Introduction: Mario Kart Robot
This project was made by students of the ITESM campus Chihuahua with the purpose of participating in a competition called maker fest 2016.
Below we are going to show you how to make this robot.
Step 1: Step 1: Materials and Other Things
4 Gear Motor
2 Servo motor
1 Arduino Uno
Bluetooth module HC-05
1 Rechargeable battery (power bank) Adata PT100
Arduino Motor Shield
Bluetooth module HC-05
module is an easy to use Bluetooth SPP (Serial Port Protocol) module, designed for transparent wireless serial connection setup.
Bluetooth module HC-05 can operate as either a slave device or a master device. When we use it how a slave it can only accept connections, as a master it initiates the connection.
- Typical -80dBm RF transmit power.
- Low Power 1.8V Operation 1.8 to 3.6V I/O.
- PIO control.
- UART interface with programmable baud rate.
- Default Baud rate: 38400, Data bits:8, Stop bit:1, Parity: No parity, Data control: has. Supported baud rate: 9600,19200,38400,57600,115200,230400,460800.
- PIO10 and PIO11 can be connected to red and blue led separately. When master and slave are paired, red and blue led blinks 1time/2s in interval, while disconnected only blue led blinks 2times/s.
Arduino is an open-source electronics platform. All Arduino boards are based around the ATMEGA AVR series microcontrollers from ATMEL which feature both analog and digital pins.
Arduino Uno is the most popular of the Arduino microcontrollers, their characteristics are;
- Microcontroller ATmega168 or 328.
- Operating voltage 5V.
- Input voltage (limits) 6-20V.
- Digital I/O pins 14 of which 6 provide PWM output.
- Analog input pins 6.
- DC current per I/O pin 40 mAmp.
- DC current for 3.3V pin 50 mAmp.
- Flash memory 16 KB or 32 KB.
On one side of the board there are 14 digital input/output pins as well as ground pin and a reference pin which acts as voltage reference for the analog pins. Pin zero double as serial input, and pin 1 doubles for serial output. On the other side of the board have 6 analog pins, as well as a voltage input pin, two ground pins and reset pin.
Servo motor is a type of motors whose output shaft can be moved to a specific angular position by sending it a coded signal. The servo motor will maintain the position of the shaft as long as you keep applying the coded signal. When you change the coded signal, the angular position of the shaft will change.
A servo motor is actually and assembly of four things: a normal DC motor, a gear reduction unit, a position-sensing device (usually a potentiometer) and a control circuit.
Step 2: Step 2: Design
AutoCAD software was used for the design of the car, the design was free, the only restriction was that the dimensions of the car didn’t exceed the 30 cm of length, width and depth, this includes the weapon. The dimensions of the chassis were of 21.3x12.8 cm and two were made, one normal and the other with small squares teeth in order to form a box. The weapon was designed with an “L” shape and two needles with different angles were attached to stab balloons, two weapons were made: one in front of the car and other rear. In total there were seven parts and they were cut using a laser cutter, the material cut was MDF. In the pictures present the developed parts with their dimensions in AutoCAD.
Step 3: Step 3: Connections
were pretty straight forward, just connecting the inputs and outputs from the arduino motor shield and power supplies.
We can see from the arduino motor shield board that it is capable to support until 4 motors and 2 servomotors. In the terminal blocks we have for labels for M1 and M2 and so on, in the jumpers outputs we have the Servo1 and Servo2 label, so the servomotors were connected directly to these jumpers.
In every label for M1 and others were connected each DC gearbox motor. In the figure 1 shows
the arduino motor shield board with its labels.
For the power supplies they
are divided in two parts, the power supply for the motors, and the power supply for the arduino. In Arduino’s case it was connected a 9 volts battery to the Vin input voltage or also through the jack. This was reached by using a square battery connector.
Finally for the motors power supply, the power bank was connected via an usb cable into the arduino motor shield board right in the terminal block identified by the label “power”.
The Bluetooth module has only four pins for connection, which are ground, positive voltage and two of them for the serial communication, receive data and transmit data. The ground and voltage pins were connected to arduino, for the serial communication, the receive data pin from the module was connected to pin number 1 of arduino and transmit data to pin number 0 of arduino board.
Step 4: Step 4:Programing
For the control of motor and servos we used the Arduino programming platform which is based on the processing environment and the writing-based programming language.
The total outputs of the program were 6 which corresponded 4 for each of the DC motors and 2 for the servos that made the function of weapons for the competition.
I have attached code.
For the development of the application was used the page MIT App Inventor 2 in which the user interface was created to control the cart via Bluetooth.