roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 13:23

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 19 апр 2010, 13:54 
Не в сети
Аватара пользователя

Зарегистрирован: 03 июн 2007, 22:32
Сообщения: 603
Откуда: Москва
ФИО: Руслан
передние ролики надо делать поворотными.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 19 апр 2010, 16:12 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Это конечно не плохо бы сделать :) но мне сначала нужно разобраться с другой проблемой — ведущие колеса очень мало нагружены, основной вес приходится на ролики. Из-за этого порой робот едет прямо когда крутит только одно колесо.
Думаю добавить два рычага назад и навесить на них грузики.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 19 апр 2010, 16:24 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
попробуй вместо роликов поставить шарик? :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 19 апр 2010, 21:20 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Приделал назад площадку и положил на нее кучу старых магнитов (не нашел куда делись балансировочные грузики).
И практически уравновесил передок. Вес груза 100-150 г (мелких весов нет).

Добавлено спустя 11 секунд:
А вот и первый результат! :)

С таким кодом на трассе 1-34 получилось проехать за 16,64 секунды (по ручному секундомеру).
АКБ к тому моменту был уже прилично посажен.

Код:
#include <ORMotor.h>
#include <ORBWSens.h>

ORBWSens bws((unsigned char[])
  {3, 4, 5, 6, 7, 14, 15, 16, 17, 18}, 10,
  4000,
  2 /* LED-on pin */);

ORMotor LeftMotor(ORDUINO_MOTOR_B);
ORMotor RightMotor(ORDUINO_MOTOR_A);

const int calSpd = 40;
const int calSteps = 40;

void setup()
{
  Serial.begin(115200);
  LeftMotor.speed(-calSpd);
  RightMotor.speed(calSpd);
  for (int i=0; i < calSteps; i++)
  {
    bws.calibrate();
  }
  LeftMotor.speed(calSpd);
  RightMotor.speed(-calSpd);
  for (int i=0; i < calSteps; i++)
  {
    bws.calibrate();
  }
  LeftMotor.speed(-calSpd);
  RightMotor.speed(calSpd);
  delay(700);
  LeftMotor.speed(0);
  RightMotor.speed(0);
}

unsigned int val[10];

const int fs = 50,
          ms = 30,
          ls = 10;

void loop()
{
  int mlSpd = ls, mrSpd = ls;
  int line = bws.readLine(val);
  int error = line - 4500;

  if (error > -1000 && error < +1000) {
    // line at center
    mlSpd = fs;
    mrSpd = fs;
  } else if (error > +1000 && error < +2000) {
    // right
    mlSpd = fs;
    mrSpd = ms;
  } else if (error > +2000 && error < +3000) {
    // right
    mlSpd = fs;
    mrSpd = ls;
  } else if (error > +3000) {
    // right
    mlSpd = ms;
    mrSpd = 0;
  } else if (error < -1000 && error > -2000) {
    // left
    mlSpd = ms;
    mrSpd = fs;
  } else if (error < -2000 && error > -3000) {
    // left
    mlSpd = ls;
    mrSpd = fs;
  } else if (error < -3000) {
    // left
    mlSpd = 0;
    mrSpd = ms;
  }
 
  LeftMotor.speed(mlSpd);
  RightMotor.speed(mrSpd);
 
#if 0
  Serial.print("LINE: ");
  Serial.print(line);
  Serial.print(" E: ");
  Serial.print(error);
  Serial.print(" L: ");
  Serial.print(mlSpd);
  Serial.print(" R: ");
  Serial.println(mrSpd);
#endif

  delay(10);
}


Добавлено спустя 3 минуты 56 секунд:
Правда калибровку лучше делать вручную.
Пока так и не вышло нормально полностью автоматическую калибровку сделать (в смысле чтобы робот сам повертел датчиком по линии).

Добавлено спустя 2 часа 36 минут 28 секунд:
Калибровку добил, теперь вроде работает :)


_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 23 апр 2010, 02:31 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Собрал модифицированный дистрибутив Arduino IDE 0018
с патчами и библиотеками из http://hg.vehq.ru/orduino/
и драйвером для CP2102 (по началу я и забыл, что на винде нужно ставить драйвера...).

http://media.vehq.ru/openrobotics/binar ... 18.win.zip (88 MiB, MD5: a4aba75634d858adc4987acf22b2ecc7)

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 23 апр 2010, 07:30 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
А как сам лайнтрейсер? Уже достойные результаты показывает или пока нет? :oops:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 23 апр 2010, 07:41 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Пока нет, ну выжал 12 секунд, все не выходит подобрать константы для регулятора чтоб хотя бы на 80-и попугаях ехать.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 23 апр 2010, 11:22 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
в матлабе был вроде тулбокс для настройки коэффициентов ПИД


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 24 апр 2010, 11:08 
Не в сети
Аватара пользователя

Зарегистрирован: 08 фев 2009, 10:13
Сообщения: 700
Откуда: Воротынск
прог. языки: C,C++,C#,Java
ФИО: Дмитрий
в матлабе есть, точнее в симулинк, там даже графический мастер настройки есть.
Вот только в версии 6,5 как-то он не адекватно работает. :(

_________________
Язык Ада - официально был признан министерством обороны США для создания ПО военной техники


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 22 янв 2011, 02:57 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Начал строить вторую версию.

На фотке ЦНС :)


Вложения:
PICT0019.JPG
PICT0019.JPG [ 702.64 КиБ | Просмотров: 1808 ]

_________________
Linux user | Firefox user
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 25 янв 2011, 10:14 
Не в сети

Зарегистрирован: 08 дек 2010, 19:27
Сообщения: 141
Откуда: Новосибирск
прог. языки: C и PHP
ФИО: Павел
Новое шасси?) А ЦНС та же?)

_________________
Мой блог о роботах http://robo-world.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот linetracer ks-line
СообщениеДобавлено: 25 янв 2011, 15:24 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 09 фев 2006, 15:36
Сообщения: 3339
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков
Нет, ЦНС новая.
Здесь уже серийная версия OR-duino (была бета) и другая линейка (бета I2C линейки).

Шасси пока нет. Хотел сделать из фенольных машинок.
Так их нету! Объехал четыре детских мира.

_________________
Linux user | Firefox user


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO