A while back I started to create a sensor unit for my husband's Atlantic Challenger remote control model boat. The objective was to monitor the RPM of the motors, the temperature, battery consumption and current draw on the batteries.
The current project only has RPM and Temperature, but I will soon be adding the rest of the sensors. I kept the scope of the project as little as possible in order to first test and make sure that it all works as expected.
- 2x Adafruit Feather 32u4 + LoRa 868mhz
- 2x Line Follower Module - TCRT5000
- 2x 18B20 Digital Temp Sensor
- 1x LiPo 1200mAh 3.7V Battery
The RPM and temperature sensor unit is developed in such a way that the sensor values can be read over a long distance. The initial project was done using a WiFi chip that resulted in the device losing connectivity when the boat is out on the water.
This current sensor unit is using a 900mhz "Long Range (LoRa)" packet radio that can send the values from the sensors over a distance of up to 20Km. This enables the user to keep an eye on the boat’s performance from the shore line.
The RPM values are read using a Line Follower Module which consists of an IR transmitter and Receiver that can pick up the presence of a dark object passing before it. On the motor shaft a small arm has been attached that passes by the sensor every rotation. Using this the RPM can be calculated by counting the number of rotations a minute.
The values read from the different sensors are then transmitted using the LoRa radio. On the receiving end another LoRa radio receives the sensor information and then just writes it out to Serial. This enables any device with a USB port to read the values and display it. In this case a C# windows application is used, but this can easily be a mobile application, linux application or even a TV.
All the code have been made available on GitHub should anyone be interested to see how it all comunicates: