Stan from 42 bots has developed a differential steering robot. The specialty lies in android enabled phone that controls system via Bluetooth. The exciting feature of this robot is that while you try to drive the robot into a wall using your phone remote, the robot will overwrite that command and will stop when it detects an obstacle closer than 10 cm
Further, the communication between Android and the Arduino board is basic in nature and tell the robot to move forward, reverse, stop or rotate through a custom Android app that acts as a remote control and sends commands to the Arduino. When a button is pressed on the phone, it sends a byte over the Bluetooth connection
The brain of robot is Arduino Uno compatible board and uses a JY-MCU Bluetooth module for communication with the Android phone. It is also equipped with two ultrasonic sensors on the front and on the back. Sensors are used for obstacle detection. The data on the serial port is read by Arduino sketch and the robot action is based on the command.
You will need Arduino Uno or compatible board along with JY-MCU Bluetooth Module. Further, 2 Servos modified for continuous rotation and 2 HC-SR04 ultrasonic sensors for obstacle detection is also required. Apart from Wheels (salvaged from a printer) and Acrylic base, you will also need 2 casters and Android phone. Gather 9V battery with case for the Arduino and 5 AA batteries and case for the servos and other components. Other component includes screws, zip ties and some hot glue to keep it all together and Protoboard & wires to connect the electronic components. A couple of resistors used to make a voltage divider is also needed.
Mode of connection of left servo signal is to Arduino pin D2 and right servo signal is to Arduino pin D4. In front, HC-SR04 sensor echo and trigger pin is connected to Arduino pin D6 and in back HC-SR04 sensor echo and trigger pin is connected to Arduino pin D7. Further, JY-MCU TX pin is in the Arduino pin 12 and JY-MCU RX pin is through voltage divider and to the Arduino pin 9. Now all grounds are connected together and HC-SR04 sensors and the JY-MCU are powered from regulated 5V line. The continuous rotation servos are powered from a 5 rechargeable AA battery pack
On github, you can find Arduino sketch and the App Inventor 2 project file. For exact details and understanding of key components of the application, you can visit the site 42 bots where it has been covered in earlier articles. Some of the basic steps includes Use of Android Mobile to control Arduino. Differential steering with continuous rotation servos to connect an Arduino Uno to an Android Phone via Bluetooth. Software serial library is used for Bluetooth communication and simple Android apps is with App Inventor 2.
Filed Under: Reviews