Технический форум по робототехнике.
chernogorsky » 19 июл 2009, 22:18
Вроде разобрался (нужно было внимательно читать инструкцию и переводить програматор в режим UART).
Появились вопросы по ORFA
С двигателем все вроде нормально (спс -=Dead=-), но с сервами, пока не очень
Собственно вопросы:
1. работает ли прошивка по ссылке (контроллер 32D) с сервами
2. как считается побайтовая маска для назначения серво портов.
например на команду S40 10 FF FF P двигатели сходят с ума

чуть не добили второй макет
3. подключил серву ко 2 и 3 портам,
Команды
L40
S40 10 0C 00 P
S40 11 02 04B0 P
S40 11 03 04B0 P
Контроллер отвечает спасибо, но сервами не крутит

П.С. а можно ли малой кровью (например вольтметром) определить что сигнал на сервы пошел ?
4. Порты номеруются согласно инструкции к контроллеру (подряд с 0ля)
Vooon » 19 июл 2009, 22:59
Я не уверен что готовая прошивка правильно работает.
Предпочтительней самому пересобрать из последней ревизии.
Маска проста, 1=серво включено, но на сколько помню порядок бит не правильный: сначала младший, потом старший.
/* Нужно бы это еще попилить. А также доделать выкидывание порта D и хандлера, если это возможно... */
Порты A0 — 0, D4 — 15 (но порт D заблокирован, когда используются моторы)
=DeaD= » 19 июл 2009, 23:10
1-2-3. Буду смотреть завтра вечером, сегодня у нас уже второй час ночи.
4. Вроде да, всё так, но от серв я отключал вроде порт D, вечером гляну - может как-то просочилась старая версия в прошивку.
Digit » 20 июл 2009, 01:00
а может поддержку пользователей от разработки отделить? или это типа тестирование и баг-репорты и тут нужны?
=DeaD= » 20 июл 2009, 07:38
Да вроде пока особой нужды нету, активная фаза разработки вроде закончилась, сейчас дебуггинг пошел.
Vooon » 20 июл 2009, 15:21
Хехе, дебуггинг и шлифуггинг

=DeaD= » 21 июл 2009, 18:04
chernogorsky писал(а):2. как считается побайтовая маска для назначения серво портов.
например на команду S40 10 FF FF P двигатели сходят с ума

чуть не добили второй макет
А вы какую прошивку залили ORFA, скачанную свежую с вики? На какой частоте уарта работаете? Только что проверил частоту 9600 - всё нормально, ничего по этой команде с ума не сходит, 115200 - тоже.
chernogorsky писал(а):3. подключил серву ко 2 и 3 портам,
Команды
L40
S40 10 0C 00 P
S40 11 02 04B0 P
S40 11 03 04B0 P
Контроллер отвечает спасибо, но сервами не крутит

Странно, а серва находится под управлением при этом? То есть покрутить ею даёт?
Попробуйте:
S40 11 02 04B0 P
S40 11 02 06B0 P
Подключаться при этом надо сервой к порту PORT A2, белый провод к крайнему контакту GPIO уходящему на чип-резистор.
chernogorsky писал(а):П.С. а можно ли малой кровью (например вольтметром) определить что сигнал на сервы пошел ?
Вообще S40 10 FF FF P должно слабо зажигать светодиоды рядом с GPIO-портами.
Vooon » 22 июл 2009, 07:04
Немного подкрутил serialgate.
Теперь есть опции SG_STRICT (не игнорирует пробел, нет комментариев, перевод строки считается только по '\n'), SG_DISABLE_STR (отключает маскированный ввод ascii), SG_DISABLE_REGIO (выключает команды R и W).
Также начал переводить ввод на прерывания, код пока очень сырой, включается SG_ENABLE_IRQ.
Прерывание используется только на прием.
Ввод нужно перевести на прерывания чтобы уйти от блокировки главного цикла (а это тормозит и второстепенные задачи).
=DeaD= » 22 июл 2009, 07:56
Надо будет еще чего-то придумать с ёмкостными датчиками, у меня всё забывается этим заняться

таймеры у нас вроде уже все разобранные?
Добавлено спустя 2 минуты 39 секунд:На OR-AVR-M32-D:
1. Timer1 - Motor PWM;
2. Timer2 - ServoGPIO;
На OR-AVR-M128-S:
1. Timer1,3 - Servo4017;
blindman » 22 июл 2009, 11:43
Таймер 2 можно использовать для отсчета времени
=DeaD= » 22 июл 2009, 11:44
Может таймер0? таймер2 у меня под ServoGPIO-драйвер...
или пофиг что разные таймеры будут на разных устройствах?
chernogorsky » 22 июл 2009, 13:29
По отладке. Сервы заработали на собранной прошивки со страницы орфа.
Для скаченной из WIKI не работают.
P.S. мдя. еще минус две сервы (спалил, сломал)

Хочется спросить бывалых, потери это нормально ?

ALHIMIK » 22 июл 2009, 13:47

чем спалили серву ?
=DeaD= » 22 июл 2009, 14:13
chernogorsky писал(а):Для скаченной из WIKI не работают.
Так какая у вас частота УАРТа? 115200 ведь?
Вы же через BT-модуль работаете, а не через OR-PROG-USB, в части связи с ПК?
Контроллер - OR-AVR-M32-D ?
chernogorsky писал(а):P.S. мдя. еще минус две сервы (спалил, сломал)

Хочется спросить бывалых, потери это нормально ?

Не нормально, скажите как вам это удалось? Что за сервы, при каких обстоятельствах сжигаете? Какое напряжение питания, какие при этом конструкции прикручены к выходным валам сервы?
chernogorsky » 23 июл 2009, 12:18
2Dead
115200
Как через БТ, так и через прогусб, контроллер m32-d
Сейчас допаял модельку. удобнее пользоваться. проверю еще раз на виковской (сейчас залита последняя, работает).
P.S.
Спалил - как не знаю ... я уникум в плане спалить (окромя компьютерного)

Сервы обычные. напряжение 4,8/6v. одну спалил - неверно подключил шнурки. вторую - крутил вправо влево (через уарт). потом она сказал Вжжжжж, и усе. нагрузках на валах не было.