Беспроводной обмен данными через Bluetooth между контроллерами ROBO TX
В этой статья я расскажу о том, как организовать односторонний беспроводной обмен данными между двумя контроллерами ROBO TX, которые выпускает компания FISCHERTECHNIK. Для демонстрации мы соберем мобильную тележку, которой будем управлять через Bluetooth с помощью пульта управления.
Назначаем номера позывных RCN
Коммуникационные модули Bluetooth, встроенные в контроллеры ROBO TX, позволяют передавать информацию между блоками управления по радиоканалу без использования проводов. Чтобы контроллеры могли различать друг друга в сети Bluetooth, каждому из них назначается свой уникальный позывной номер RCN в диапазоне от 1 до 8. В нашем примере у пульта управления будет номер – «1», а у тележки – «2».
Позывные назначаются контроллерам вручную через пункт меню «Bluetooth» в среде разработки ROBO Pro. Ниже я приведу последовательность действий для назначения позывных.
Важный момент! Во время назначения позывных все контроллеры должны быть включены и один из них должен быть подключен к компьютеру через USB или Bluetooth. В этом примере через USB подключен контроллер пульта управления.
- Подать питание на оба контроллера. Прикладные программы в контроллерах должны быть остановлены.
- Подключить контроллер пульта управления к компьютеру через USB.
- Запустить ROBO Pro и выбрать пункт меню «Bluetooth»
- В открывшемся окне нажать кнопку «Сканировать». Сканирование контроллеров в сети Bluetooth выполняется через контроллер, подключенный в данный момент к вашему компьютеру. Через минуту или быстрее сканирование завершится и в списке устройств отобразятся включенные контроллеры.
- В каждой строке списка будет указан текущий номер позывного, имя контроллера и его адрес в сети Bluetooth. Выглядит это примерно так:
«RCN 1: ROBO TX-444(00.13.7b.48.61.85, COM4)»
RCN 1 – это и есть номер позывного. - Чтобы изменить номер позывного следует использовать кнопки «Вверх» и «Вниз». При перемещении контроллера в списке его позывной меняется автоматически.
- Выбираем для контроллера пульта управления (у меня это ROBO TX-394) RCN 1, а для контроллера тележки (ROBO TX-444) RCN 2.
- Нажимаем кнопку «ОК».
Теперь, когда контроллерам назначены позывные, можно приступать к разработке программ.
Управляющие программы
Создадим две отдельные программы. Одна будет выполняться на контроллере, который установлен в пульте управления, а вторая в контроллере на борту мобильной тележки.
Названия программ:
- Для пульта управления: master.rpp
- Для тележки: slave.rpp
master.rpp
Алгоритм состоит из одного бесконечного цикла, в котором выполняется проверка состояния кнопок и передача данных. При нажатии на кнопку I1 устройству с RCN=2 передается значение «1», а при нажатии на I2 – значение «2». Когда не нажата ни одна кнопка, передается значение «0».
slave.rpp
Тут тоже все просто. В бесконечном цикле проверяем, есть ли новые данные, адресованные нашему контроллеру? Если нет, то проверяем еще раз. Если есть, то последовательно сравниваем полученное значение с константами 1 и 2 и затем соответствующим образом управляем моторами. Если получено значение=«1», то включаем M1. Если «2», то включаем M2. Ну а если что-то другое, то тогда оба мотора выключаем.
Результат
Теперь можно загрузить программы в контроллеры. Сначала грузим master.rpp т.к. контроллер пульта управления уже подключен к компьютеру. Затем подключаем контроллер тележки и загружаем slave.rpp. Запускаем наши программы на тележке и пульте управления и проверяем. Вот, что у нас получилось:
Где в меню RoboPro команды используемые в программах?
Команды для работы с радиообменом через Bluetooth находятся в группе «Отправить, принять». И еще у вас должен быть установлен «Уровень сложности» среды разработки = 5.
Команда с текстом Rob Основная — где лежит?
Эту команду можно игнорировать
А эти команды доступны в контроллере txt? У меня при попытке загрузить программу в txt контроллер появляется сообщение, что общение не реализовано. Как тогда организовать радиообмен?
Максим, здравствуйте!
Спасибо за вопрос.
В этой статье пример дан для контроллера TX. Сейчас мы попробуем разобраться с контроллером TXT и тогда напишем ответ.
Здравствуйте! помогите разобраться. Первый раз работаю в программе Robo Pro Light, собрали конструктор , написали программу на ВТ контролер не подключен. Как это исправить помогите, пожалуйста, очень нужно.
Здравствуйте!
Какая версия ROBO Pro Light у вас? Какой конструктор используете? Есть артикул конструктора?