Робот-танк. Развитие идеи

Потихоньку воплощаю свой проект   Робот-танк. Постановка задачи

Бом лист такой:

  1. Шасси. Ссылка на али

39

 

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

2. Драйвер для двух моторов — шилд для Arduino Uno. Ссылка на али

40

Недорогой и работает.

3. В качестве платы управления выбрана Arduino Uno

4. Для ручного управления выбран беспроводной джойстик для Sony Playstation 2 с али. Ссылка на али

41

Для джойстика есть библиотека для Arduino IDE.

5. Raspberry Pi 3b+ в качестве сервера. На малине установлен Node Red, который пока дублирует управление джойстика, общаясь с Uno по UART.

Чуть позже скину скетч и флоу для Node Red

WhatsApp-Video-2020-01-30-at-21.00.36

 

WhatsApp-Video-2020-01-30-at-20.50.07

Приём данных с датчика LoRa Sensor BME

Наконец-то получил в руки «пироженку», датчик температуры, влажности и давления LoraSensor BME. Сайт проекта http://lorasensor.site/

Датчик передает данные в виде строки с JSON по LoRa на 434Мгц (возможны и другие частоты). Принимать данные можно при помощи любого устройства LoRa, так как любое устройство LoRa является трансивером, т.е. приемопередатчиком. В моем случае таким устройством стала Arduino подобная плата с Ali на базе проца Atmega32u4 и трансивера 433 МГц LoRA RA02 от AI-Thinker. Плата без проблем прошивается из Arduino IDE, предварительно нужно установить библиотеку https://github.com/BSFrance/BSFrance-avr для платы и добавить ее описание.2-433-LoRa32u4-Ra02-LoRa-WiFi.jpg_960x960

Далее необходимо выбрать скетч LoRaReceiverCallback.ino и модифицировать под свои нужды. Мне необходимо было изменить частоту на 434Е6, распиновку выбрать для платы 433 V1.2 и вместо хардварного Serial применять софтовый при помощи библиотеки SoftwareSerial. Данные передаются на пины 10 и 11 и далее на плату NodeMCU (ESP8266) на пины RX и TX. В ESP используется прошивка ESPEASY Mega с плагином Serial2Net. Плата поднивает сервер последовательного порта и транслирует данные на выбранный TCP порт ESP.

https://www.letscontrolit.com/wiki/index.php/Ser2Net

Затем я подключаюсь к выбранному порту ESP при помощи своего нетбука в установленным Node Red.

Ниже ссылка на флоу, где данные забираются из TCP, преобразуются в JSON объект, затем разбираются по метрикам и транслируются в MQTT и Dashboard.

https://pastebin.com/zpeQH59b