roboforum.ru

Технический форум по робототехнике.

Домашний дроид

Шестерни и колёса, тяги и тросики... Каркасы, скелеты ...

Re: Шасси для домашнего дроида

Сообщение yak-40 » 22 янв 2011, 12:58

На каждом диске по одной оптопаре. Направление не определяю, незачем :pardon:
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение =DeaD= » 22 янв 2011, 13:07

оптопара глючить может после остановки в промежуточном состоянии. Триггер Шмидта хотя-бы на выходе с энкодера стоит, что бы это ликвидировать? Кстати, вообще испытания энкодера были?

Добавлено спустя 28 секунд:
У меня на RealRobot'е просто одиночные энкодеры не самый хороший результат давали.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Шасси для домашнего дроида

Сообщение yak-40 » 22 янв 2011, 13:17

Триггеры Шмидта на входе поставил. На ходу пока не испытывал, только посмотрел сигнал осцилографом. Хорошнький такой меандр получил без дребезга и мусора. :) На днях прогу буду пробовать, по результатам отпишусь.
Мне главное не только скорости колёс уравнять, но и обртную связь хотелось бы организовать. Типа - больше нагрузка, сильнее ШИМ открывается.
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение Vooon » 22 янв 2011, 13:47

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

Re: Шасси для домашнего дроида

Сообщение yak-40 » 22 янв 2011, 16:59

Лучше то оно конечно лучше :) Но намного сложнее конструкция и юстировка. А если исходить из принципа разумной достаточности, то получается что вторая оптопара мне не нужна.
Ну вообщем буду пробовать с одной. Будет плохо работать, тогда может быть и до второй дело дойдёт :)
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение yak-40 » 26 янв 2011, 18:44

Организовал таки обратную связь на энкодерах.
Без обратной связи на малых значениях ШИМ колесо легко рукой можно было остановить.
Теперь хрен остановишь :D
Да и ездить шасси стало строго по прямой :good:
Видео без ОС:

Обратная связь в действии:
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение Vovan » 26 янв 2011, 20:54

2yak-40: отлично! :good:
Если не трудно, принцип примененной ОС, в двух словах, как тут говорят на "псевдокоде" :wink:
ЗЫ: я вообще-то ее представляю, но ни разу не делал, чисто ШИМом прямой добивался, не более.
Даже если это будет лишняя информация, это лучше чем ее отсутствие :wink:
_________
Sincerely,
Vovan
Аватара пользователя
Vovan
 
Сообщения: 3340
Зарегистрирован: 05 окт 2005, 12:03
Откуда: Литва
прог. языки: asm

Re: Шасси для домашнего дроида

Сообщение yak-40 » 26 янв 2011, 21:15

Ну вообщем принцип то прост :)
Как я уже говорил, мне нужна только одна скорость, это упрощает дело.
Сначала подобрал значение ШИМ для нужной скорости, затем замерил осцилографом длительность импульсов с энкодеров.
Теперь, собственно алгоритм: по внешнему прерыванию запускаю таймер, если импульс оказался длиннее расчётного, "приоткрываю" ШИМ. Причём чем длиннее импульс, тем больше значение ШИМ-а. Всё.
Расчёты не делал, всё методом тыка :)
Таким образом можно подобрать ОС и для других скоростей, если делать ступенчатое регулирование. Плавное - сложнее...
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение =DeaD= » 26 янв 2011, 21:21

Сейчас сколько кликов на оборот? И сколько оборотов в секунду?
По идее можно ШИМ=НужнаяСкорость*К1+(НужнаяСкорость-РеальнаяСкорость)*K2

Добавлено спустя 2 минуты 16 секунд:
Это без интегральной части :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Шасси для домашнего дроида

Сообщение yak-40 » 26 янв 2011, 21:37

=DeaD= писал(а):Сейчас сколько кликов на оборот? И сколько оборотов в секунду?

36 имп/об.
Около 0,7 об/сек.
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение yak-40 » 27 янв 2011, 21:11

Если использовать энкодеры в качестве датчиков пройденного пути, то можно довольно точно провести бота из пункта А в пункт В.
Во всяком случае пройти из одной комнаты в другую думаю будет реально.
Для примера дал задание боту отойти от базы на 0.5м(в качестве базы - книга), пройти квадрат примерно 1х1метр, и вернуться на базу.
Бот справился на удивление точно:
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Шасси для домашнего дроида

Сообщение Vovan » 27 янв 2011, 21:34

Отлично! :good:
Это доказывает возможность точного движения используя энкодеры по заранее заданному маршруту или по карте, не имея доп. средств навигации и при условии достаточно хорошего сцепления и ровной поверхности - т.е. по квартире :)
ЗЫ: Помню в СССР выпускалась такая игрушка (гусеничное шасси), прямо на ней можно было с помощью расположенной в ее кузове клавиатуры задавать маршрут движения пошагово, правда на ней не было энкодеров. Хотя сама идея ИМХО очень не плоха и вполне бы ее тоже можно иметь ввиду, особенно на негусеничном шасси
_________
Sincerely,
Vovan
Аватара пользователя
Vovan
 
Сообщения: 3340
Зарегистрирован: 05 окт 2005, 12:03
Откуда: Литва
прог. языки: asm

Re: Шасси для домашнего дроида

Сообщение Radist » 27 янв 2011, 22:22

Это идеальный случай. Стоит привнести в систему элемент случайности - и робот уже не будет знать где он. Например, на него набежал ребенок и малость повернул.

ЗЫ. Классный дроид :good:
Аватара пользователя
Radist
 
Сообщения: 2253
Зарегистрирован: 01 июл 2009, 08:59
Откуда: Екатеринбург
прог. языки: асемблер AVR

Re: Шасси для домашнего дроида

Сообщение =DeaD= » 27 янв 2011, 22:27

В целом очень хорошо! :good:

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

Re: Шасси для домашнего дроида

Сообщение yak-40 » 27 янв 2011, 22:38

Radist писал(а):Это идеальный случай

Согласен! Но если ещё и навигацию какую нибудь, да маяки замутить...
=DeaD= писал(а):Какие дальнейшие планы?

Расти вверх будет :D
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Пред.След.

Вернуться в Механика

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

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