Hercules: The Motion Controlled Android Robot using Arduino
Description: The motion games on the Nokia 5800 sparked an interest in creating a real-world version of a racing car controlled by tilting a phone. The motion-controlled robot, named Hercules due to its high torque and speed, is operated via Bluetooth using an Android phone. This approach allows for flexibility in controller choice, as any Android device can be utilized, significantly reducing project costs by eliminating the need to build a dedicated controller. Hercules was designed for the 2012 IIT Techfest in Mumbai, aiming to navigate an obstacle track. The circuit follows a modular design, facilitating maintenance and troubleshooting. If a component fails during operation, the affected module can be swiftly replaced. The assembly process involves cutting the PCB into specific dimensions, soldering header pins to ensure secure connections, and preparing an enclosure for the Arduino Uno to allow for easy programming access. The enclosure features strategically placed holes for wire management and permanent mounting of the Arduino.
The Hercules robot employs a sophisticated modular circuit design that enhances its functionality and maintainability. The circuit is divided into several modules, each serving a specific purpose, such as power management, motor control, and sensor integration. This modularity allows for quick identification and replacement of faulty components, minimizing downtime during competitions or testing.
The construction process begins with the careful cutting of the printed circuit board (PCB) into four distinct segments. Two segments measure eight holes in length and three holes in breadth, while the other two measure six holes in length and three holes in breadth. This precise cutting ensures that the assembled PCB maintains a compact and organized layout, which is crucial for effective circuitry.
Following the PCB preparation, header pins are soldered onto the board. Each pin is connected with wires approximately four inches in length, allowing for flexibility in the arrangement and connection of components. This design choice also distributes mechanical stress evenly across the pins, preventing disconnections during operation.
The enclosure for the Arduino Uno is designed with functionality in mind. The USB port is positioned to protrude from the enclosure, enabling easy access for programming without needing to disassemble the robot. The enclosure is drilled with multiple holes to facilitate the passage of wires from the PCB, ensuring that all connections are neatly organized and accessible.
To secure the Arduino in place, small screws and nuts are used, attaching it to the base of the enclosure. This permanent mounting is critical for maintaining stability during operation, particularly in competitive environments where vibrations and impacts are common.
Overall, the Hercules robot exemplifies innovative design principles in electronics, combining modularity, accessibility, and cost-effectiveness to create a competitive motion-controlled robot. The integration of an Android phone as a controller not only simplifies the user interface but also democratizes access to robotics by allowing various devices to be used interchangeably.I was intrigued while playing the motion games on Nokia 5800. I was thrilled, how I could control the racing car by only tilting the phone. I used to drea m of making this same car in the real world. Hercules is the name given to my motion controlled robot because of its immense torque and speed. The robot is controlled by an android phone through bluetooth. The advantage of using an android phone to control the robot, is that I can use any android phone to control it and am not confined to using only one controller for the robot. The use of an android phone as a controller, significantly reduces the cost of the project, since money is not spent in building a controller for the robot.
The Hercules was built for the 2012 Indian Institute of Technology, Mumbai`s IIT Techfest ( Asia`s largest tech festival ). The objective was to build a motion controlled robot that could race around an obstacle track. The principle of divide and rule can be applied in every aspect of our life. This simple principle is also applied to this circuit. The circuit is divided into different boxes. This modular design makes it easy to maintain and troubleshoot the circuit. If some component burns off during the competition or when it is being run, then the corresponding module can be replaced quickly.
1. Cut the PCB using a hacksaw into 4 parts as follows: a) 2 nos. of PCB each having eight holes in length and three holes in breadth and b) 2 nos. of PCB each having six holes in length and three holes in breadth; which after assembling should look like the first picture. 3. Solder wires (approx 4 inches in length) to each of the header pins. Refer to picture 4. Now you are done with the header pins array for the arduino. By using this technique, the header pins do not come off easily from the Arduino as the force is distributed equally between the pins.
4. To prepare the project enclosure(box) for the Arduino Uno; first, temporarily place the Arduino Uno in the box. Place it in such a way that the USB port end touches the breadth of the box at one end and you can mark the part which you must cut/drill (as the USB port should stick out of breadth of the enclosure).
This will help us program the Arduino board even after it is installed in the robot. After cutting/drilling the enclosure, again temporarily place the Arduino Uno in the enclosure, and apply some force making sure that the USB port sticks out of the enclosure. With the Arduino Uno in this position, you will now have to mark and drill sixteen small holes on the upper end of the enclosure`s length so that the wires coming out of the PCB circuit will pass through this enclosure (ready to be attached to some other circuit); and diagonally opposite, mark and drill twelve small holes on the lower end of the enclosure`s length so that the wires coming out of this PCB circuit will pass through the enclosure (ready to be attached to some other circuit).
Note how these well planned holes help the header pin wires to come out neatly from the project enclosure box. Drill four small holes on the base of the box as per the four holes already there on the Arduino Uno so that with the help of small screws and nuts, you can permanently hold the Arduino in place.
5. Finally place the Arduino in the box and fasten it with the small screws and nut to the base of the project enclosure. Fit the header arrays on the arduino pins and drive the wires of the header pinsarray through the holes made in the enclosure box.
An Arduino is used to measure the rotational speed of a basic computer fan. This project was part of a series of YouTube videos created during a Master's program in Computer Science, specifically focusing on an embedded systems programming course...
One of the students has created a robot that utilizes two stepper motors and a simple IR sensor. The robot, which is depicted in the accompanying image, has some issues such as a lack of battery support and misalignment of...
For an upcoming project, a pneumatic ram with a closed-loop control system was required to achieve precise positioning. Due to budget constraints, an off-the-shelf solution was not feasible, prompting the assembly of a custom system using an Arduino, a couple...
Based on a manual PCR machine constructed a few weeks ago, the Light Bulb PCR machine utilizes a light bulb and an old computer fan as its heating and cooling elements. Instead of the switches shown previously, the unit is...
An Arduino powered by 2 or 4 rechargeable NiMH AA batteries is being developed. The choice of using two batteries is based on the intention to boost the voltage to meet the requirements. The main challenge is ensuring that the...
After reading an article on the Todbot blog, a purchase was made for several Wii Nunchucks from eBay. The exact amount paid is not recalled, but it was significant.
The Wii Nunchuck is a motion-sensing input device that connects to the...
Constructing a robot, or rather a vehicle, that uses two motors. Reference materials regarding the schematics for the circuit design have been obtained, but the current schematics utilize smaller motors that draw less power and operate with a lower power...
This example demonstrates how to utilize SPI communication to read data from an SCP1000 Barometric Pressure sensor and subsequently transmit that data to the web using an Arduino and Ethernet Shield combination as a simple web server. By employing the...
When controlling motors with a microcontroller, the snubber is quite important. This configuration is not commonly seen, as the snubber is typically placed across the motor itself. The general concept is that charge builds up on the motor coil, and...
We use cookies to enhance your experience, analyze traffic, and (if you allow) serve personalized ads.
By clicking Accept All, you agree to our use of cookies.
Learn more