Bluetooth ru

Aus www.wiki.ardumower.de
Wechseln zu: Navigation, Suche


Bluetooth и удаленное управление


Описание

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".

Шаги настройки модуля и подключение смартфонов

  1. Режим программирования: Переведите Bluetooth-модуль в режим программирования:
    1. для HC05: Connect KEY pin to 3.3V after powering on the module
    2. для HC06/linvor: Не спаривайте модуль с телефоном или компьютером (светодиод должен мигать)
    3. для FBT06/MBTV4: Надо припаять вывод PIO11 к выводу VCC (PIN 12), на котором должно быть +3.3 вольта.
  2. Скорость порта: Blueooth-модуль и Arduino Mega должны использовать одну и ту же символьную скорость (19200). Символьная скорость модуля может быть изменена через консоль Ardumower.
    1. Подключите Ardumower Mega board к компьютеру через USB
    2. Войдите в монитор последовательного порта в Arduino IDE (CTRL+M)
    3. Выберите скорость 19200 (увидите логи, которые шлет Ardumower)
    4. Нажмите 'd' чтобы войти в меню Ardumower
    5. Настройте Blueooth-модуль.
  3. Перезапуск: После удачного завершения операции программирования снимите джампер с JP2 KEY (HC05) и перезапустите систему.
  4. Сопряжение: Blueooth-модуль должен быть сопряжен с Андроид-устройством (стандартно, через настройки-Blueooth-Сопряжение-Найти устройства). В подавляющем большинстве пароль 1234.
  5. Приложения в смартфоне: Запускайте на смартфоне 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'.

Логирование

Смотрите этот раздел

Видео

  1. Демонстрация меню v0.8.8
  2. Демонстрация меню в полевых условиях v0.8.8
  3. Видеоинструкция