Технический форум по робототехнике.
tsrodger » 25 мар 2010, 01:41
Пытаюсь портировать ORFA 0.8 на Arduino Mega (MK Atmega1280), пока добился только ответа на запрос о версии

, во всех других случая получаю ответы вида ERROR 0*... но не суть (с этим я разберусь), вопрос в другом.
Есть секция в драйвере портов на примере платформы OR_AVR_M128_DS (если я правильно понял atmega128):
- Код: Выделить всё • Развернуть
GATE_NUM_PORTS 4
Почему 4?

blindman » 25 мар 2010, 02:47
Потому что их 4. A,B,E,F - только в этих портах есть выводы, которыми можно рулить непосредственно. Остальные зарезервированы (уарт, I2C) или не подключены.
blindman » 25 мар 2010, 03:01
Обрати внимание на GATE_PORT_MASK_* - там единицы в тех разрядах, которые зарезервированы и не могут управляться драйвером портов (но возможно они используются другими драйверами)
tsrodger » 25 мар 2010, 22:09
Спасибо за ответ, теперь понятно... но к этмоу времени у меня накопилась еще пара вопросов :
1) как правильно добавить варианты выбора платформы в resolve.mk (он не понимает else if (во всяком случае у меня eclipse его не подсвечивает)). Пока сделал в таком духе, но не уверен что это правильно
- Код: Выделить всё • Развернуть
ifeq ($(PLATFORM),OR_AVR_M32_D)
MLLD = m32
else
MLLD = m128
endif
ifeq ($(PLATFORM),OR_AVR_M1280_AR)
MLLD = m1280
endif
2) правильно ли я понял, что UID это адрес устройства?
=DeaD= » 25 мар 2010, 22:11
UID = Уникальный идентификатор драйвера.
tsrodger » 25 мар 2010, 22:46
Может я не совсем корректно выразился... Просто в примерах инициализации в качестве адреса указывается L20, а это похоже на UIN OR-AVR-M32-D

=DeaD= » 25 мар 2010, 23:33
Нееее, вместо L20 может быть что угодно, например, L90, просто потом надо было бы везде писать не S20 и S21, а S90 и S91.
Я выпадаю на неделю, так что не теряйте, буду поздно вечером в следующую пятницу

Отпуск

tsrodger » 25 мар 2010, 23:54
Удачного отдыха! Большое спасибо за помощь, только что удалось получить управление Motor Shield на Arduino Mega

=DeaD= » 26 мар 2010, 00:00
Ну ждём тогда от вас подключение всех функций и выкладывание исходников (может даже напрямую в репо, только пароль получите у Vooon'а и протестируйте всё)
Вот унифицируем всё под ORFA и можно будет замутить мега-софт на ПК, который будет рулить всем подряд - ардуинами (под обычную ардуину мы тоже адаптируем ORFA - в порядке проекта OR-duino), модулями OR, миниботом.
PS: Спасибо! А вам удачи в дальнейшем подключении!
Vooon » 26 мар 2010, 00:24
Не помню точно, но можно посмотреть в документации по системе make (resolve.mk тот же Makefile).
Думаю правильней так:
- Код: Выделить всё • Развернуть
ifeq ($(PLATFORM),OR_AVR_M32_D)
MLLD = m32
else
ifeq ($(PLATFORM),OR_AVR_M1280_AR)
MLLD = m1280
else
MLLD = m128
endif
endif
Ну а профайл я бы назвал не OR_AVR_M1280_AR а ARDUINO_MEGA

tsrodger » 26 мар 2010, 18:24
спасибо, поправил...
YanaArtis » 23 июн 2010, 08:57
tsrodger писал(а):Удачного отдыха! Большое спасибо за помощь, только что удалось получить управление Motor Shield на Arduino Mega

Вы могли бы поделиться опытом - как подключать Motor Shield и управлять им? Купила 4-колесное шасси для робота на Seeedstudio, механическую часть собрала, а вот как собрать электрическую и при этом ничего не пожечь по неопытности... Моторы на каждой стороне робота подключила последовательно, то есть когда подаю напряжение на провода левой или правой моторной пары, оба двигателя начинают вращаться. Не могу разобраться, куда подключать провода питания моторных пар. Понятно, что скорее всего к M1 и M2, но там еще и разъем GND (как я понимаю, это "минус" питания).
У робота аккумуляторная батарея из 5 полуторавольтовых аккумуляторов AA. Можно ли как-то организовать с ее помощью не только питание двигателей, о и питание Ардуино?