roboforum.ru

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

 

Мастер Кит серия BM93xx BASIC PIC

Обсуждение и примеры готовых и самосборных компонент для построения роботов.

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение =DeaD= » 08 мар 2010, 12:04

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

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 08 мар 2010, 13:34

Давненько я не брал в руки шашечки. :D
Захват нужно будет оптимизировать под шашки, чтоб чапаевцы не получились. Или электромагнит к клешне прикрутить? А в шашки металлическую полоску. Будем думать.
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение Myp » 08 мар 2010, 17:18

резинку пористую приклеить
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 15929
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 27 апр 2010, 00:59

Была сделана доработка драйвера для BM9307, BM9308, управляющего 16 сервомашинками. Теперь можно регулировать скорость движения ротора сервоприводов.
Скорость регулируется записью в ячейку с адресом 12h значений от 0 до FFh. 0 = задержки нет.
Угол поворота сервоприводов задается как и раньше записью чисел от 0 до FF в ячейки с 0 по 15 –ю.
Можно записывать угол поворота в одну ячейку например так:
I2C#10H,(0)=80H это среднее положение для вала 0-й сервы.
Или сразу в несколько:
I2C#10H,(1)=39H,0,95H,60H,9FH ; одновременно задаем угол поворота для серв с 1-ой по 5-ю

Получилось гораздо плавнее. Теперь можно замедлить до эстонского сборочного конвейера.



В бейсике эти движения записаны так:
(в клешне 6 серв: 0-я это захват, 5-я это поворотная платформа.
http://www.masterkit.ru/forum/viewtopic.php?p=29680#29680
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение =DeaD= » 27 апр 2010, 06:52

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

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение Zeus » 27 апр 2010, 11:31

зачет за PIC-и :)
+1
«Сон разума рождает чудовищ»
Аватара пользователя
Zeus
 
Сообщения: 857
Зарегистрирован: 28 июл 2009, 10:02
Откуда: Самара
ФИО: Павел Сергеевич

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение vadinator » 27 апр 2010, 14:46

topdevice, бравушки :good: удачи вам в ваших делах!!!
Роботы, уже среди нас...
Прошу прощения за аватар, никак схему динамической индикации не могу настроить :)
Аватара пользователя
vadinator
 
Сообщения: 979
Зарегистрирован: 19 янв 2010, 14:51
Откуда: Петрозаводск
прог. языки: C, FBD, Wiring-Processimg,,,LD, SFC, ST...
ФИО: Вадим

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 27 апр 2010, 15:13

Спасибо.
Кстати в этом разделе есть закрепленная тема : "SERVO - управление по i2c через ATmega8 "
Так вот BM9307 или BM9308 с драйвером, есть чистой воды преобразователь I2C --> 16 сервоприводов. :D
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение =DeaD= » 27 апр 2010, 15:25

Разъемы только не сервовые у них вроде...

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

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 27 апр 2010, 18:00

Ладно, сделаем. А где можно почитать про SSC-32?
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение =DeaD= » 27 апр 2010, 18:14

Вот тут ссылка на документацию и некоторые уже выявленные недокументированные особенности:
viewtopic.php?f=73&t=7010
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24053
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: Pascal / C++ / PHP / 1C
ФИО: Антон Ботов

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 13 май 2010, 21:22

=DeaD= писал(а):Еще следующий вам этап - разные скорости предельные для разных серв и одновременный финиш всеми сервами с рассчетом нужной скорости :) это я сейчас адаптирую наш контроллер под систему команд SSC-32 - скорее всего самый распространенный сервоконтроллер.

Готово.
Драйвер настраивает BM9307 в режим управления 8-ю сервомашинками. Управляющие входы машинок подключаем к портуВ к контактам 1,3,5,7,9,11,13,15 на разъеме Х2. Минус к четным. Плюс к отдельному проводу +5В (на модуле нет).
Поддерживаемый диапазон : 2100 мс – 900 мс. Шаг – 256 ступенек = 4,69 мкс. Т.к. управляется одним байтом, лучше не сделать.
Частота следования импульсов – 50 Гц.

В ячейках 0x00 – 0x07 управляющие байты для 8 машинок.
Управляющий байт -> импульс:
Минимум: 0x00 -> 900мс
Середина: 0x80 -> 1500мс
Максимум: 0xFF -> 2100мс

В ячейках 0x20 – 0x27 - восемь задержек для каждого канала, они же в EEPROM с адреса 0x12
Минимум: 0x00
Максимум: 0xFF

В ячейке 0x12 теперь лежит не задержка , а команда СТОП – если записать 0xFF – то все замрет.

Из бейсика управляем машинками так:

I2C#10h,(20)=0: I2C#10h,(0)=0 ; первая машинка быстро встала на минимум
Или
I2C#10h,(22)=0FFh: I2C#10h,(2)=0FFh ; третья машинка очень медленно встала на максимум

hex здесь

Если не нравится Бейсик, попробуйте с OR-AVR-M32-D. Я так понимаю, у него есть канал I2C.
hex в модуль BM9307/08 можно затолкать без BM9300. Программатором.

=DeaD= писал(а):Разъемы только не сервовые у них вроде...

Сервовые разъемы можно поставить на BM9309
И тот же драйвер.
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 15 май 2010, 10:09

Здесь (20 I2C#10H,(22h)=5,64h) быстрый 3-й моторчик и медленный 4-й.
Получается так:
http://www.youtube.com/watch?v=ykMKMIojxMQ (почемуто встройка ютубовская иногда не работает :( )



new
;10 I2C#10H,(0)=42h,3Fh,32h,0CFh,78h,4Eh; начальное положение
;11 time=0: do: while time < 6
20 I2C#10H,(22h)=5,64h
30 I2C#10H,(2)=60H,40H
35 time=0: do: while time < 1.5
40 I2C#10H,(2)=60H
45 time=0: do: while time < 1.5
50 I2C#10H,(2)=10H
55 time=0: do: while time < 1.5
60 I2C#10H,(2)=60H
65 time=0: do: while time < 1.5
70 I2C#10H,(2)=0
75 time=0: do: while time < 1.5
80 I2C#10H,(2)=60h
85 time=0: do: while time < 1.5
90 I2C#10H,(2)=0
95 time=0: do: while time < 1.5
100 I2C#10H,(2)=60h
110 time=0: do: while time < 1.5
120 I2C#10H,(2)=0
130 time=0: do: while time < 1.5
145 I2C#10H,(2)=46h
;150 goto 10
1140 end
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение =DeaD= » 15 май 2010, 10:20

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

Re: Мастер Кит серия BM93xx BASIC PIC

Сообщение topdevice » 15 май 2010, 10:52

Не придумаю, как показать.
В ячейке 0x12 теперь лежит не общая задержка, а команда СТОП – если записать 0xFF – то все замрет.
I2C#10H,(12)=0FFh.
А вычислять, когда нужно остановить, это уже на уровне Бейсика.
Последний раз редактировалось blindman 15 май 2010, 11:30, всего редактировалось 1 раз.
Причина: Излишнее цитирование!!! В следующий раз выпишу предупреждение
3d от Мастер Кит http://smartrap.ru/
Аватара пользователя
topdevice
 
Сообщения: 23
Зарегистрирован: 07 янв 2010, 11:48
Откуда: Москва

Пред.След.

Вернуться в Готовые модули

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

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

Mail.ru counter