Ничего не найдено :(
    В гостях у Самоделкина! » Темы » Советы » Bluetooth пульт из джойстика Sega

    Bluetooth пульт из джойстика Sega

    Bluetooth пульт из джойстика Sega

    Я продолжаю заниматься моделированием и постройкой роботов. Я уже писал инструкцию по созданию пульта для управления моделями и роботами. Пульт создан на основе старого джойстика от Sega. У данного джойстика есть четыре стрелки и 8 кнопок, достаточно для управления машинкой или небольшим роботом. Управление осуществлялось посредством ИК светодиода. Сегодня я напишу инструкцию по модернизации данного пульта, а именно переоборудование его в Bluetooth пульт. В зависимости от используемого Bluetooth модуля пульт или сам будет подключаться к заранее запрограммированному устройству или можно будет подключаться к пульту. Я опишу оба варианта. Нам понадобится:

    - Джойстик от приставки Sega
    - Arduino Pro Mini 3.3v 8MHz
    - USB-TTL
    - 2 Ni-Mn аккумулятора 1.2v 1000mA
    - Bluetooth модуль HC-05 или HC-06
    - Красный светодиод
    - Синий светодиод
    - Резистора 2x75Om, 2x5Om, 1x2Om
    - Коннектор PLSх5 «мама»
    - Термоклей
    - Провода
    - Отсек для батареек 4xAAA
    - Разноцветные провода
    - Паяльник, припой, канифоль
    - Прямые руки

    Шаг 1 Выбор Bluetooth модуля
    Для связи необходимо два модуля. Один мы вставим в пульт, а второй будем подключать к машинке или роботу. Существует огромное количество Bluetooth модулей. Они различаются функциями и поддерживаемыми протоколами связи. Примерный список модулей, которые встречаются:
    - HC-03, HC-04(HC-04-M, HC-04-S) на чипе BC417143 ;
    - HC-05, HC-06(HC-06-M, HC-06-S) на чипе BC417143;
    - HC-05-D, HC-06-D;
    - HC-07 – модуль с чипом CSR 41C6;
    - HC-08 – модуль с ультранизким энергопотреблением и протоколом Bluetooth 4.0;
    - HC-09 – самый новый модуль, предназначенный для замены HC-06 и HC-07.

    Я остановился на двух модулях HC-05 и HC-06, так как они оптимальны в соотношении цена\функционал. Они поддерживают протокол связи – Bluetooth Specification v2.0+EDR. Радиус действия – до 10 метров (уровень мощности 2). Совместимы со всеми Bluetooth-адаптерами, которые поддерживают SPP. Объем flash-памяти (для хранения прошивки и настроек) – 8 Мбит. Работают на частоте радиосигнала – 2.40 .. 2.48 ГГц. Хост-интерфейс – USB 1.1/2.0 или UART. Они обладаю небольшим энергопотреблением – ток в течение связи составляет 30-40 мА. Среднее значение тока около 25 мА. После установки связи потребляемый ток 8 мА. Эти модули легко найти, они являются самыми распространёнными. Модули очень похожи, а основное отличие между ними в том, что HC-05 может работать как в режиме ведущего (master), так и в режиме ведомого (slave). HC-06 может являться только ведомым устройством. Проше говоря, HC-06 не может сам обнаружить парное устройство и наладить с ним связь, он может лишь подчиниться ведущему. Модули продаются в виде двух спаянных вместе плат. Меньшая из них — заводской модуль. Большая — специальная макетная платка для DIY. Так выглядит меньшая плата с чипом BC417:


    А так сами DIY модули HC-05 и HC-06:


    Вы можете приобрести модуль без макетной платы. Он стоит немного дешевле, но тогда придется ставить стабилизатор напряжения 3.3 V для модуля. Также расстояние между контактами маленькое и придется помучится, припаивая к модулю провода.
    Для установки связи между пультом и роботом или машинкой необходимо настроить два Bluetooth модуля на друг друга. В данном случаем модуль HC-05 мы настроим так, чтобы он находил и подключался к HC-06.

    Шаг 2 Настройка HC-06.
    Вначале необходимо подключить HC-06 к компьютеру. Сделать это можно подключив модуль через USB-UART переходник. В данном случае подключение, следующее:
    Bluetooth – USB-UART
    TX – RX
    RX – TX
    VCC - +5
    GND – GND

    Если под руками нет USB-UART можно записать в любую Arduino плату следующий скетч:
    bluetooth_send_at.rar [857 b] (скачиваний: 144)


    Подключить по следующей схеме:
    Bluetooth – Arduino
    TX – pin 2
    RX – pin 3
    VCC - +5
    GND - GND

    Затем открываем любую терминальную программу, выбираем com-порт к которому подключен HC-06, скорость по умолчанию 9600, NL и CR не нужен. Если с HC-06 не установлено Bluetooth соединение, модуль находится в режиме ввода AT команд. Если модуль не отзывается попробуйте перегрузить его, отключив плюсовой провод и подключив его снова. И вводим следующие команды:

    «AT» - без кавычек, должен прийти ответ «OK».
    «AT+ADDR» - этой командой мы узнаем уникальный адрес HC-06, следует записать этот адрес
    «AT+BAUD7» - устанавливаем скорость 57600
    «AT+RESET» - перегружаем модуль

    Следующие команды не обязательно вводить, но на всякий случай лучше их знать:
    «AT+NAME<имя>» - смена имени устройства, имя вводится латинским буквами, без скобок.
    «AT+ORGL» - возвращение модуля к заводским настройка
    На этом настройка HC-06 закончена.

    Шаг 3 настройка HC-05.
    Подключаем модуль аналогично HC-06. Далее открываем любую терминальную программу, выбираем com-порт на котором висит USB-UART или Arduino, по заводским настройка скорость связи 9600, но я встречал и со скоростью 38400, если вы не меняли ее выбираейте 9600, не получиться соединиться меняем на 38400. Также стоит включить параметры NL и CR. Для перевода в режим ввода AT команд нужно нажать кнопку на плате HC-05, после этого вводим следующее:

    «AT» - вводится без кавычек должен прийти ответ «OK». Если пришел продолжаем вводить команды дальше.
    «AT+ROLE=1» - этой командой мы устанавливаем роль модуля цифрой:
    0 - ведомый, 1 - ведущий, 2 - ведомый в цикле*. Должен прийти ответ «+ROLE:1\r\n» или «OK»
    «AT+CMODE=0» - модуль в роли ведущего подключается только к тому Bluetooth устройству, адрес которого указан командой «AT+BIND».
    «AT+BIND:1234,56,123456» - для установки соединения с вашим HC-06 нужно вписать сюда его адрес. После ввода всех команд модуль находится в роли ведущего (ROLE=1) и установлен режим подключения к фиксированному адресу (CMODE=0), он будет подключаться только к тому Bluetooth устройству, адрес которого указан данной командой. Части адреса вводятся: при установке - через запятую, а при ответе - через двоеточие. Придет ответа: «+BIND:1234:56:789ABC \r\n» или «OK»
    «AT+UART=57600,0,0» - устанавливаем скорость 57600 бит/сек, стоп бит представлен цифрой: 0 - один, проверка представлена цифрой: 0 - без проверки

    Если вы запутались в настройках модуля или он перестал работать правильно попробуйте следующую команду:
    «AT+ORGL» - Модуль сбрасывает следующие настройки CLASS=0, IAC=9e8b33, ROLE=0, CMODE=0, UART=38400,0,0, PSWD=1234, NAME=hc01.com.

    А затем заново проведите настройку нужных вам параметров.
    Таким образом мы создали устойчивую связь между HC-05 и HC-06. При включении модулей HC-05 будет устанавливать соединение с HC-06. По личному опыту могу сказать, лучше вначале включать HC-05, а затем HC-06. Если соединение пропало перегружать нужно оба модуля.

    Шаг 4 Подготовка пульта.
    Данный шаг подробно описан в предыдущей инструкции по адресу:

    https://usamodelkina.ru/8626-ik-pult-iz-dzhoystika-ot-sega.html

    Необходимо выполнить шаги с 1 по 4. Припаивать ИК диод необязательно, хотя и мешать он не будет.

    Шаг 5 Подключение Bluetooth модуля.
    Я советую в пульт установить HC-06. Так как для изменения настроек модуля нужно будет только залить соответствующий скетч в Arduino Pro Mini. В случае с HC-05 придется разбирать пульт, чтобы нажать на кнопку перевода в режим AT команд. Соединяем все по следующей схеме

    Джойстик – Arduino
    Стрелка вверх - pin 2
    Стрелка вниз – pin 4
    Стрелка влево - pin 5
    Стрелка вправо - pin 6
    Кнопка A - pin 8
    Кнопка B - pin 10
    Кнопка C - pin 7
    Кнопка X - pin 12
    Кнопка Y - pin 11
    Кнопка Z - pin 9
    Кнопка Start - pin 14 (A0)
    Кнопка Reset - RST
    Общий - GND
    Bluetooth – Arduino
    TX – pin 16 (A2)
    RX – pin 17 (A3)
    VCC - + 5
    GND – GND

    HC-05 подключаем к ваше машинке или роботу которым собираетесь управлять. Варианты подключения и скетчи вы найдете в других моих инструкциях. При написании скетча робота надо установить скорость соединения 57600, и использовать в скетче библиотеку SoftwareSerial.

    Шаг 6 Подготовка среды и прошивка.
    Для написания и редактирования скетча лучше всего использовать Arduino IDE. Версия Arduino IDE должна быть не ниже чем 1.8. Скачиваем Arduino IDE с официального сайта:

    https://www.arduino.cc/en/Main/Software

    Затем необходимо добавить в Arduino IDE библиотеку. В скетче используется одна библиотека SoftwareSerial.h (для связи с Bluetooth модулем):
    softwareserial.rar [9.29 Kb] (скачиваний: 122)


    Потребуется скачать и установить ее. Установить библиотеку можно распаковав архив и переместив распакованные файлы в папку «libraries», находящуюся в папке с установленной Arduino IDE. Или можно воспользоваться встроенным средством добавления библиотек - не распаковывая скачанный архив, выбрать в среде Arduino IDE меню Скетч – Подключить библиотеку. В верху выпадающего списка выбрать пункт «Добавить .Zip библиотеку». И указать место расположения скачанного архива. После установки библиотеки нужно перезагрузить Arduino IDE.
    Прошивается наш пульт также, как и предыдущая версия пульта, через коннектор подключенный к USB-TTL, зарядка тоже через него. При заливке скетча необходимо нажать Reset.
    pult_bluetooth.rar [982 b] (скачиваний: 159)

    Самый надежный КЛИН

    Sugru-своими руками

    Добавить комментарий

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Последние комментарии

    Все комментарии