Controlling Radio Arduino Car Via Web Screen

2,925

18

8

About: Former software engineer. Beginner of Arduino.

This is my first Arduino prototyping. I would like to create a moving object which can be controlled via radio. The car consists of Tamiya Kits and XBee.

The web page for controlling the car is written with Node.js and Socket.IO.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: System Architecture, Components and Software Libraries.

The System architecture of the design is drawn above. I have installed Node.js, node-serialport(a Node.js library) and Socket.IO on my MacBookPro. Node.js controls XBee connection. Socket.IO controls Web screen.

These are the components and software libraries for this project.

  • *Arduino Uno x 1
  • *XBee Schield (sparkfun) x 1
  • *XBee Explorer USB(sparkfun) x 1
  • *XBee (Series 1) x 2

  • *Motor Driver TA7267BP x 2
  • *Capacitor 0.1uF x 2, 33uF x 2
  • *Tamiya Double GearBox
  • *Tamiya Universal Plate
  • *Tamiya Off-road Tire Set.
  • *Tamiya Ball caster

  • *Battery Box (for motor power)
  • *Mobile Battery (for Arduino power)

  • *Node.js (for XBee control and Web Server)
  • *node-serialport (a library of Node.js to handling serial connection)
  • *Socket.IO (for Web Screen Control)

Step 2: Breadboard Wiring Diagram.

This is the wiring diagram of the prototype. You can find the details of TA7267BP on the other websites too. It is a very simple wiring.

Step 3: Programming and Troubleshooting.

The source code of this prototyping is uploaded on GitHub.

https://github.com/mikilabo/arduino_remote_car

These are some difficulties which I encountered during this project.

XBee Setting via Mac: I found many articles about XBee setting for Windows OS, but only a few articles for Mac OS. Finally, I found XCTU for Mac. It is very useful XBee setting tool for Mac OS user.

Arduino Memory leak: I made a memory leak bug in my Arduino Programming. Initially, the program worked perfectly, but after few minutes, the arduino didn’t work well. At first, the programming source appeared to be ok. So, it took some time to resolve this issue.

Web Design: I can write programming code, but I am not good in at web design coding. Therefore, I decided to outsource html coding using oDesk. I hired Bangladeshi through oDesk. The cost of outsourcing was $6.67. It was quite a simple html coding, but it was good enough for me. The below picture is the specification sheet which I uploaded to oDesk.

Pin pointing: When you are making a prototype using Arduino, Web Programming and Server Programming, there are many possibilities which can cause bugs. In my case, the car suddenly stopped by the disconnection of jumper wire. However, it caused no problem in my programming and Arduino wiring at a glance. But still, it took hours to solve this issue.

Step 4: Conclusion.

Enjoy!

Be the First to Share

    Recommendations

    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    8 Discussions

    None
    maerikaanne

    4 years ago on Introduction

    when im searching for the motor driver i cant find the exact one, with the 14 pins. what other device or item can i used for this? thank you :)

    2 replies
    None
    DanielR21

    4 years ago on Introduction

    Question:

    What is the voltage for the 33uf capacitor? It's not listed- and we're collecting our materials for this. Thanks!

    1 reply
    None
    mikilaboDanielR21

    Reply 4 years ago on Introduction

    Hi, thanks for your comment.

    The voltage for the capacitor is about 6V. The capacitor is connected to the battery via motor driver TA7267BP.

    Please check the datasheet of TA7267BP.


    None
    ibenkos

    5 years ago

    Smart idea! Thanks for shearig :)