roboforum.ru

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

BTbot.bluetooth controlled.

BTbot.bluetooth controlled.

ToniPizecato » 07 дек 2007, 00:28

Доброго времени суток, господа. Предлагаю вашему вниманию ворклог моего проекта "BTbot", основной целью которого является установка блютус канала связи мобильного робота с центром управления :)
Началось все с этой темы http://www.roboforum.ru/viewtopic.php?f=40&t=3230&start=0.

Чтобы не листать по станицам, расскажу, что на данный момент уже имеется:
- программное обеспечение, написанное на java языке для платформы j2me, которую поддерживают последние модели телефонов. ПО с source кодами в аттаче(1).
- недопаянная плата с блютус модулем BT20 от компании RainSun модификации Slave. в аттаче(2).

Поскольку основной целью является коммуникация, то я не особо задумывался о механической части. Проходя мимо киоска, увидел китайскую машинку и вспомнил, что здесь уже MegaBIZON делал платформу на ее основе http://www.roboforum.ru/viewtopic.php?f=16&t=2214. То есть на двух.
Купив ее, первым делом снял корпус и закопал на кладбище радиационных отходов. Воняет жутко. Оставил только колеса с мотор-редукторами, которые проветривались на балконе еще день. Склеил их линейкой :oops: . На фото (3) только шасси с кишками.
Позже привел все к более пристойному виду (4).
Далее, перепаял контакты с прямых на уголковые. Так удобнее. Чтобы все было по-взрослому, поставил лампочку, которая сигнализирует, что питание подано(5).
В качестве управления использую LPT кабель. Написал программу (6), которая управляет платформой (помимо экранного управления можно управлять кнопками w,a,s,d. удобно. управляешь неглядя).

Дальнейшие действия - подключить недоробота к компьютеру через rs232 и написать ему цикл работы; допаять наконец плату с БТ модулем и протестировать ее; подключить платформу к компьютеру по блютус каналу; написать программу для управления по блютусу на компьютере и по телефону применительно к модулю.

Маленькое видео в завершении сказанного (7). оно громкое, по-моему, и нечеткое. фотоаппарат отказывается прилично записывать видео и звук.

Идеи, пожелания, замечания приветствуются.
Вложения
BTbot.rar
Видео. сделайте тише (7)
(487.76 КиБ) Скачиваний: 192
1.GIF
LPT ПО. можно и по клавишам на клавиатуре. удобно (6)
1.GIF (7.89 КиБ) Просмотров: 13145
CIMG6612.jpg
уголки удобнее (5)
CIMG6589.jpg
Пристойный вид (4)
CIMG6578.jpg
Кислотная игрушка (3)
CIMG6549.jpg
Плата с модулем RainSun BT20 Slave (2)
BTbot.rar
ПО с исходниками (1)
(15.97 КиБ) Скачиваний: 184

Re: BTbot.bluetooth controlled.

Master » 07 дек 2007, 18:24

ох класно приду домой почитаю давно хотел. Тока тему наверное нада в коммуникации.

Re: BTbot.bluetooth controlled.

ToniPizecato » 09 дек 2007, 03:49

сделал плату. мк запрограммировал на отправку полученного. подключил ее к ком порту компьютера. написал свою программу для pc. посылаю чары на мк - приходят иероглифы. но, замкнув rx tx макса232, программа на pc работает отлично. будем разбираться..
Вложения
CIMG6621.jpg
спереди.
CIMG6618.jpg
сзади.

Re: BTbot.bluetooth controlled.

rig » 09 дек 2007, 11:27

купи ножницы по металлу наши отечественные черные, плату ровненько подрежешь в легкую, будет симпотично смотреться.
по вопросу я ответил в соседней теме надо скорости смотреть. лучше обмен сначала на макетке проверить, а когда руку набьешь то в готовый проект модули вставлять.

Re: BTbot.bluetooth controlled.

avr123.nm.ru » 09 дек 2007, 15:39

ToniPizecato писал(а):на данный момент уже имеется:
- программное обеспечение, написанное на java языке для платформы j2me, которую поддерживают последние модели телефонов. ПО с source кодами в аттаче(1).
- недопаянная плата с блютус модулем BT20 от компании RainSun модификации Slave. в аттаче(2).


Поздравляю ! Молодец ! Особенно если это так и будет оставаться общедоступно.

Re: BTbot.bluetooth controlled.

ToniPizecato » 09 дек 2007, 15:47

rig писал(а):купи ножницы по металлу наши отечественные черные, плату ровненько подрежешь в легкую, будет симпотично смотреться.
по вопросу я ответил в соседней теме надо скорости смотреть. лучше обмен сначала на макетке проверить, а когда руку набьешь то в готовый проект модули вставлять.

ох спасибо за совет с ножницами. а то я замучался вытачивать напильником контур платы!
вот тут нашел похожую проблему. viewtopic.php?f=2&t=3326 . попробую снизить скорость и поменять кварц на 12 мгц.
avr123.nm.ru писал(а):Поздравляю ! Молодец ! Особенно если это так и будет оставаться общедоступно.

спасибо! обязательно. я не жадный. будет интересно, если кто-то еще сделает.
как установлю контакт с телефоном - напишу софт для компьютера. на нем все-таки проще отлаживать.

Re: BTbot.bluetooth controlled.

Vooon » 09 дек 2007, 20:05

при 12 МГц допустимые скорости: 200, 300, 600, 1200 (2х: 600, 1200, 2400)

советую использовать кварц 14,7456 МГц тогда можно практически любую скорость выставить.

здесь готовая табличка: viewtopic.php?p=40885&f=10#p40885

моя библиотека для работы с USART'ом
svn://roboforum.ru/Vooon/public/usart
usart.tar.gz
(4.87 КиБ) Скачиваний: 119


написана под avr-g++ (WinAVR)

Re: BTbot.bluetooth controlled.

ToniPizecato » 10 дек 2007, 23:42

решил проблему: поставил 1МГц внутреннего генератора при бадрейте 300. пишет замечательно.

возникли новые: мк пишет нормально в порт ( putsf("hi"); printf("hi"); putchar('a'); ) , но не распознает пришедшую информацию ( putchar(getchar()); delay_ms(800); ). Не подскажете как еще можно опрашивать uart?

и попутно вопрос: какая микросхема драйвера для двигателя поддерживает логической напряжение от 3.3В ? может L293D?

Re: BTbot.bluetooth controlled.

avr123.nm.ru » 11 дек 2007, 10:43

ToniPizecato писал(а):как еще можно опрашивать uart ?


по прерыванию по окончании приема символа. Зри задачу 5 курса.

Re: BTbot.bluetooth controlled.

Strijar » 12 дек 2007, 18:32

Vooon писал(а):советую использовать кварц 14,7456 МГц тогда можно практически любую скорость выставить.

18.432 - тогда гарантировано любую с 0% ошибок ;)

Re: BTbot.bluetooth controlled.

Vooon » 12 дек 2007, 18:39

однако мало мк которые допускают такую скорость по ДШ :)

Re: BTbot.bluetooth controlled.

ToniPizecato » 14 дек 2007, 22:17

пока разбираюсь с юартом, ради интереса подключил питание блютус модуля. заработал сервер. нашел его на телефоне. но при попытке просмотра сервисов, вышло окошко с предложением ввести пароль.
какой пароль... что-то про пароль я ничего не помню. может заводской 1234.
----------------------------
нашел. 0000.

другая проблема - на нем нет сервисов. будем решать.
--------------------
чуть погодя нашел с компьютера сам модуль и его сервис (последовательный порт SPP).

вот, кстати, ответ техподдержки компании эфо из форума http://electronix.ru/forum/lofiversion/index.php/t24362.html:

Задал следующие вопросы техподдержке EFO , а именно Владу Федорову
Здравствуйте.
Интересует bluetooth модуль BT-20 от RAINSUN, а именно:
ХР> 1)Цена(розн,опт);
ХР> 2)Есть ли возможность ипользовать данный модуль в
ХР> одиночку, а не парой (master-slave);
ХР> 3)Возможно ли соединение с bluetooth мобильного телефона.
ХР> 4)Реализован или нет профиль SPP.
ХР> 4)Есть ли модули со скоростью RS-232 9600 и 19200 кбит/c.

И получил вот такой ответ, честно не ожидал.

Розничная цена на модули ВТ-20 - $19,03 на 100 шт. - $18,38 на
500 шт. - $13.
Один и тот же модуль ВТ-20, в зависимости от того, как он
изначально сконфигурирован, имеет разные артикулы - BT-20xxx-CSx-11x
(сконфигурирован как Slave) и BT-20xxx-CМx-11x (сконфигурирован как
Master) Выбор модуля зависит от той задачи, которую Вам нужно решить.
Если требуется установить беспроводное соединение между двумя
устройствами, то требуется пара Master-Slave.
Для того, чтобы пара модулей (Master/Slave) начали работать друг
с другом, надо просто подать на них питание и обеспечить импульс
сброса (Reset) в момент включения. Никакого программного обеспечения и
конфигурации в общем случае не требуется! После этого они без вашего участия
устанавливают парное соединение, и все, что Вы подадите на вход UART
одного модуля появится на выходе другого, и наоборот. Специальный вход
(один из GPIO) нужен только для очистки регистра для возможности
установления связи с другим "напарником". Таким образом Вы получаете
"прозрачный" канал UART <-> UART.
В качестве Master может также выступать любой модуль Bluetooth, который
способен работать как Master (например, встроенный в РС или КПК, или USB
dongle, или моб. телефон) и поддерживающий Профиль последовательного порта.
Тогда процедура следующая:
- включаете BT-20xxx-CSx-11x (Slave) (при этом в окрУге не должно быть аналогичных
включенных свободных модулей, сконфигурированных как Master, иначе они
соединятся без вашего участия)
- включаете dongle (например, BT007i), предварительно запустив
программную оболочку, идущую в комплекте; запускаете поиск Bluetooth
устройств, через несколько секунд увидите имена всех устройств в
окрУге. Ищете устройство с именем EFO Wireless, определяете поддерживаемые
профили (Refresh service), на появившийся запрос введите PIN (0000),
установите парное соединение и , наконец, Connect. После этого
устройства будут связаны друг с другом (при этом адаптер будет
работать на какой-то виртуальный СОМ-порт; при этом в оболочке можно
выбрать режим, при котором каждое последующее открытие этого виртуального порта будет
вызывать автоматическое соединение адаптера со Slave-модулем(BT-20xxx-CSx-11x).
Модули поставляются изначально сконфигурированными для такой работы, и
не требуют в дальнейшем какого либо управления или настройки, причем
эта конфигурация жесткая - Master или Slave, скорость обмена 115200
(может быть задана любой при изначальной прошивке), PIN код 0000
(также может быть задан при прошивке), имя устройства EFO Wireless.
С точки зрения аппаратной подключение выглядит просто - подаете
питание 3,3 В на соответствующий вывод, подключаете к соответствующему
выводу антенну, подключаете 4(!) линии UART и обеспечиваете в момент
включения формирование импульса сброса на Reset длительностью не менее
5 мсек.
Антенна и выход модуля соединяются микрополосковой линией (с волновым
сопротивлением 50 ом, рассчитать ее параметры можно с помощью
соответствующей утилиты), при этом для небольших расстояний можно
использовать chip-антенну, а при бОльших полосковая линия должна
заканчиваться ВЧ-разъемом, к которому подключается внешний диполь
(можно DAW-002-3.5, разъем SAC0093TGG или SAC0073TGG).
Изменять прошивку и устанавливать некоторые параметры (в том числе и
скорость UART) можно по
SPI-интерфейсу модуля с использованием соответствующей оболочки,
работающей под Windows и эмулирующей SPI на LPT порт. При подключении
модулей к компьютеру необходимо обеспечивать согласование уровней
сигналов с использованием соответствующих аппаратных решений.
Таким образом, для организации канала вам потребуется:
- Один (Slave) или два (Master и Slave) модуля ВТ-20
- + одна или две chip-антенны соответственно (например WLAN025)
или один (два) разъема SAC0093TGG (или SAC0073TGG) + антенны
DAW-002-3.5 (большая) или 17010.10 (поменьше, но в данный момент
отсутствует на складе)
Кроме этого, могут понадобиться элементы для формирования импульса
сброса и согласования уровней для подключения к компьютеру.
Вложения
CIMG6633.jpg
Аккумулятор+мк+БТ; мобильный телефон.

Re: BTbot.bluetooth controlled.

ToniPizecato » 16 дек 2007, 22:19

редактировал ПО для телефона. теперь без поиска сервиса. иначе не коннектится.

кстати, а как подключить все 4 вывода с BT-20 к мк? я понимаю как это сделать только rx, tx.
Вложения
BTbot.rar
(317.48 КиБ) Скачиваний: 142

Re: BTbot.bluetooth controlled.

Myp » 16 дек 2007, 23:24

а тебе остальные 2 и не нужны совсем
в аппаратном USART они не реализованы

Re: BTbot.bluetooth controlled.

ToniPizecato » 17 дек 2007, 00:00

Myp писал(а):а тебе остальные 2 и не нужны совсем
в аппаратном USART они не реализованы

а. ясно.

сейчас я подключаюсь к модулю через телефон. модуль реагирует на коннект (раньше лампочка моргала, щас горит не переставая). на видео понятно. отправляю данные - принимает (другая лампочка моргает). но соединил rx, tx модуля - обратно не отправляет ничего. опять копать.
Вложения
blincking.rar
(789.74 КиБ) Скачиваний: 162


Rambler\'s Top100 Mail.ru counter