Bluetooth ru
Bluetooth и удаленное управление
Inhaltsverzeichnis
Описание
Ardumower может выводить данные и управляться через Bluetooth канал связи:
- через смартфон/планшет (Android-приложения)
- через USB Bluetooth-свисток (с компьютера)
Для управления с Андроид-устройств вам необходима специальная программа 'pfodApp' или альтернативная 'ArduRemote'.
Управляющее меню включает в себя:
- Текущее состояние (напряжение батареи, ток зарядки и т.д.)
- Настройки платформы
- Калибровка (вращение двигателей, гироскоп и т.д.)
- Удаленное управление (Старт/стоп, повороты, включение-выключение ножей и т.д.)
Bluetooth-модули
Для робота вам необходим Bluetooth-модуль, поддерживающий Bluetooth Serial Port Profile (SPP). SPP используется Bluetooth Service Discovery Protocol (SDP) и протоколом RFCOMM. В зависимости от требуемого расстояния можно использовать следующие устройства Bluetooth:
- Bluetooth класс 2 (расстояние до 50 метров), модули HC03/04/05/06
- Bluetooth класс 1 (расстояние до 100 метров), модуль BTM220 (требует дополнительную обвязку)
Bluetooth-модуль HC-05
Модуль HC-05 (на картинке зеленая часть) использует 3.3 вольта, поэтому нужно приобрести с уже распаянным делителем напряжения и обвязкой (основная синяя платка). Если же у вас только зеленый модуль, то для линий RX и TX нужно использовать делители напряжения на резисторах, так как показано на рисунке со схемой.
Для настройки модуля (ПИН-код для подключения, скорость порта и т.д.) необходимо подключить контакт KEY на модуле к шине питания +3.3 вольта и после операции настройки отключить (--Unlogic (Diskussion) 19:03, 19. Aug. 2015 (CEST) лично я этот метод впервые здесь увидел, я подпаивал проводок к контакту 34, примерно так).
На плате для этого выведен специальный джампер JP2 - "KEY".
Шаги настройки модуля и подключение смартфонов
- Режим программирования: Переведите Bluetooth-модуль в режим программирования:
- для HC05: Connect KEY pin to 3.3V after powering on the module
- для HC06/linvor: Не спаривайте модуль с телефоном или компьютером (светодиод должен мигать)
- для FBT06/MBTV4: Надо припаять вывод PIO11 к выводу VCC (PIN 12), на котором должно быть +3.3 вольта.
- Скорость порта: Blueooth-модуль и Arduino Mega должны использовать одну и ту же символьную скорость (19200). Символьная скорость модуля может быть изменена через консоль Ardumower.
- Подключите Ardumower Mega board к компьютеру через USB
- Войдите в монитор последовательного порта в Arduino IDE (CTRL+M)
- Выберите скорость 19200 (увидите логи, которые шлет Ardumower)
- Нажмите 'd' чтобы войти в меню Ardumower
- Настройте Blueooth-модуль.
- Перезапуск: После удачного завершения операции программирования снимите джампер с JP2 KEY (HC05) и перезапустите систему.
- Сопряжение: Blueooth-модуль должен быть сопряжен с Андроид-устройством (стандартно, через настройки-Blueooth-Сопряжение-Найти устройства). В подавляющем большинстве пароль 1234.
- Приложения в смартфоне: Запускайте на смартфоне pfodApp или ArduRemote для подключения к Ardumower.
Communication protocol
The communication protocol between robot and Android app (the 'pfodSpecification') is defined here: http://www.forward.com.au/pfod/.
All menus (menu items, sliders, buttons) are created inside the robot. The App only visualizes the created menus, and sends back a command if a menu item was clicked by the user.
Example communication:
1. App requests main menu: {.} 2. Robot sends main menu to App: {.title`1000|key1~text1|key2~text2|key3~text3} The App will visualize the main menu like this:
title [text1] [text2] [text3]
3. User clicks menu item 'text1', App sends back to robot the corresponding command: {key1}
You can log the communication to a file (folder 'pfodAppRawData' or 'ArduRemote') on your Android device. For the ArduRemote, press the 'Android menu button' on your device and choose 'Enable logging'.