Hi, my name is David and I’m a rising senior at Loyola High School. My starter Project was the MintyBoost and my main project was the RC Robot Tank (links in the project headers). I’m from Arizona and I moved to New Jersey three years ago when I started high school. My hobbies include playing video games, watching TV, cooking, baking, and going for walks.
During the past few weeks at BlueStamp, I have learned more about engineering and robotics than I have in my entire life. It has been an amazing experience that further prepared me for my path to becoming an engineer. Before BlueStamp I had only completed a few small project for my school’s science club. These projects ranged from making a solar powered phone charger to creating a map in the Source Engine. After BlueStamp I have gain more experience in both programming and building robots. BlueStamp helped me further explore my passion and for that I am grateful.
Description: This project is a Bluetooth controlled RC Robot Tank with a laser turret and an outer case. The tank chassis is made out of a kit I ordered from amazon. The outer shell is made from depron foam and electrical tape. To control the robot I used an Arduino Uno, a motor shield, and an HC_06 Bluetooth dongle.
Schematic final (Fritzing File)
Schematic final (PDF)
Bluetooth Control Code (Arduino)
App Code (MIT AppInventor)
For my modifications, I added a laser turret, made a case for the tank, and made an app to control my robot with Bluetooth. To make my robot Bluetooth controlled I used an HC_06 Bluetooth module and rewrote my code. Controlling an Arduino with Bluetooth is a very different than controlling it with because Bluetooth uses numbers as commands instead of buttons. So to control my motors I would set a certain action to a number value. Then I build an app on MIT app inventor that had buttons to correspond to the correct number values. When the button is pressed the number would be sent and my robot would move. To control the servo for the laser turret I matched the servo’s position to a slider’s position on the app. When the slider moved the servo would follow its movement allowing for very precise control. These modifications took some time to do, but I had a lot of fun while doing them.
I attaching the PS2 dongle to the Arduino. With the help of an online guide, I was able to attach the PS2 dongle without to much trouble. I had to solder on some jumper wires for each pin and connect them the corresponding Arduino pins. I also downloaded Bill Porter’s PS2 library in order to get the PS2 controller to respond to the Arduino. I ran into a couple of problems at this part. At first, I could not get the PS2 controller to respond to the Arduino. I solved this by rearranging the pins into the right order. Then I had trouble controlling the motors with the controller. After searching online for some time I found a code that with a few modifications would work with my software. After rewriting and modifying parts of it I managed to get fully working code to control my robot. That was the end of my main project and the beginning of my modifications. For future modifications, I will work on building a laser turret for my project and I will eventually make an outer shell for it.
Code used for this milestone:
To began my project I started to build the chassis of the tank. The tank chassis was part of a set that I ordered that came with the threads, motors, gearbox, and part of the body. I began my assembly with the gear box that was connected to the motors. The gearbox had four different variations that would change the rpm and torque ratios. I calculated the torque I would need to carry the weight of the Arduino, the motor shield, and battery pack. After I finished the gear box I mounted it to the body of the tank. Then I attached the mounts for the wheels and the wheels themselves. I attached the threads and tested my motors with a basic battery pack. It worked like a charm and I went on to programming the Arduino. I had to learn how to program an Arduino so I watched several videos online and listened to a very informative lecture given by my head instructor. After I had learned enough I attached my motor shield to the Arduino. To do this I had to solder on headers to the motor shield and then push the headers into the corresponding pins of the Arduino. Attached wires to my motors and plugged them into the motor terminals. When I began programming I ran into some trouble because I could get my motors to respond the Arduino’s commands. I learned that this problem was caused by an issue with a library I had downloaded. Once I download the right motor shield library I was able to control my motors with ease.
Code used for this milestone:
The Mintyboost phone charge functions around the boost converter which amplifies and converts voltage by rapidly creating and destroying magnetic fields within the power inductor. A switch located within the boost converter chip (LT1302) located in the center of the circuit board changes the flow of electricity in the circuit. Located below the boost converter is the C5 resistor. This resistor improves the booster converters compatibility with higher currents. When the switch is closed power is stored in the power inductor (L1), located on the left side to the boost converter, which creates a magnetic field and high-frequency square waves are produced. The power inductor resists the flow the current, but when the switch has opened the power directed through the entire circuit creating a back electromagnetic field with opposite polarity to the previous electric field allowing the current to flow. As a result, two voltages are produced, the supply voltage and the voltage from the back electromagnetic field. Together they produce a voltage greater than the initial supply voltage that flows through the Schottky diode (D1), located on the right side of the converter chip, which prevents current from flowing back into the inductor. The current is stored in a capacitor (C1) that leads to the USB port. As power is drained from the circuit by the phone a high-frequency signal is given to turn the switch within the boost converter chip. However, the electromagnetic fields that are produced create feedback due to their radiation with nearby components. To help provide stability two electrolytic capacitors (C3,C4), located on the top left and lower right corners of the circuit board, smooth the flow of current throughout the board and filter out low-frequency waves. Also, a ceramic capacitor (C2), located behind the power inductor, help filter out high-frequency waves to stabilize the current. There are four other resistors (R1-R4) that limit the voltage to certain parts of the USB connector to prevent the charger from overloading the phone being charged. All the parts working together help increase the 3 volts produced by the two AA batteries to 5 volts. The charge must be able to produce 5 volts in order to charge a phone. The most challenging part of this project was soldering the wires. The circuit board was really small and I have really big hands so working with it was a little awkward. My favorite part of this project was the sense of accomplishment I got after finishing the project and seeing all my hard work pay off.