Сервоконтроллер и будет мастер-контроллером в данном случае, хотя архитектура ORFA будет позволять собирать прошивку каждого контроллера как мастер-контроллера (с uart-шлюзом) и как подчиненного по шине i2c.
Т.е. на пауке сможет быть этот сервоконтроллер + блютуз-модуль.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Здорово! у меня тут как раз одна нога паука почти собрана - а управлять нечем. Записывайте в очередь - опыта в программирование микроконтроллеров мало, зато в остальном много Если есть задачи в десктопном программирование - тоже готов подключиться
Если нужно, можно открыть меркуриал-репозиторий. Физически vehq.ru находится на этом же сервере, но на моем доменном имени, репозитории управляются из админки блога.
ТЗ: Написать библиотеку для работы с шлюз-контроллерами ORFA. Необходимо написать модуль для автоматического формирования запросов, получения ответов, модуль интроспекции. Должен поддерживаться мультистарт запрос/ответ.
Конечный автомат парсинга входных данных можно взять из Reader.run
demoontz писал(а):И у меня одна нога собрана!!! %)))))
Капитаны-Флинты
2Vooon: Софт на стороне ПК надо тоже четко структурировать (что и как должно быть устроено) и только потом начинать портировать, а то будет кашица та еще.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Встал перед выбором : либо разрешение 1,085069444 мкс, либо 0,135633681 мкс.Мои оценки времени выполнения прерываний оказались слишком оптимистичными. При разрешении 1,085069444 мкс прерывание занимает ок. 75 тактов. При разрешении 0,135633681 мкс интервал 20мс не укладывается в 16 бит, и время обработки прерываний увеличивается (порядка 110 тактов).
Вопрос : какое разрешение делаем?
Добавлено спустя 8 минут 2 секунды: А, вот мысля вроде есть. Обновлять длительность импульсов чаще чем раз в 20мс не имеет смысла. Поэтому можно все вычисления, которые происходят в каждом прерывании, делать сразу, раз в 20мс - тогда в прерывании тупо выводим данные из таблицы, и перемещаем указатель. Должно получиться намного быстрее
Проект [[Open Robotics]] - универсальные модули для построения роботов Модули Open Robotics можно приобрести в магазине shop.roboforum.ru Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!
Вот код. Практически все есть что надо для написания драйвера.
Остановился на разрешении 1 мкс.
Думаю, надо кварц ставить на 8 МГц - иначе проблематично задавать длину импульса в микросекундах - приходится выполнять вычисления с плавающей запятой. Можно конечно и в целых числах сделать, но выигрыш все равно небольшой будет. А ошибку скорости уарта в 3.5% на 115200 я думаю мы можем себе позволить.
Проект [[Open Robotics]] - универсальные модули для построения роботов Модули Open Robotics можно приобрести в магазине shop.roboforum.ru Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!
Проект [[Open Robotics]] - универсальные модули для построения роботов Модули Open Robotics можно приобрести в магазине shop.roboforum.ru Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!
Проект [[Open Robotics]] - универсальные модули для построения роботов Модули Open Robotics можно приобрести в магазине shop.roboforum.ru Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!
Добавлено спустя 14 минут 21 секунду: Сегодня вечером буду пытать контроллер серв, может чего получится. А то пока понял, как .hex-файлы получать из WinAVR - выходные кончились и то даже не проверил пока этот способ.
А еще заказал с http://www.hobbycity.com 20 штук hxt-900 (может сделаю шестинога версии "лайт"), 10 ремкомплектов к ним шестереночных и 4 одинарных драйвера двигателей с сервовходом (R/C Bruashed Motor Speed Controller) для коллекторников по 5 баксов за штуку - посмотрим, будут ли работать на 20А от свинцовых аккумов, если будут - не надо будет плату мощного ДД лепить.
Проект [[Open Robotics]] - Универсальные модули для построения роботов