Week-13
Output Devices
Assignment
1. Make a new board in Eagle design and add an output device and program it.
2. Add an output device to a micro controller board you've designed and program it to do something.
I Decided to work with servo motor for do this exercise.
I wanted to learn and understand arduino programming through C/C++ language.
So I designed a pcb with the attiny 44 and then see the rotation of the servo motors
Now its turn to design the board in Eagle design and start working with it.
Steps involved are :
1. Design the board with the required components
2. Milling the board
2. Soldering the components
3. Programming of the board through Arduino
One of the reason to use servo motor is for my final project I am making a 6 axis robotic arm, which has many servo motors in itself which will run simultaneously on either of the axis. So my this week task is to take two servo motors and rotate them on opposite axis i.e one moving in clock wise and another in the anti clock wise.
1. Design the board with the required components:
First step is to get all the componts and put it on the board. The components are available from fab.lbr
Select all the components from the library and place it in the board.
Start making the connections in the schematic board first and you can see in parallel that the schematic is being connected.
Once the connections are done in the schematic now its turn to make the wires in the board layout.
Making the connections in the left side doesn't change the right hand side schematic board.
Finally the board is ready to create a png which will be used for milling.
For more details on eagle please refer to Week -4
2. Milling of the board:
First the circuit traces are cut with 1/64 bit
Once the circuit is milled now the board in cut with 1/32 bit
Final milled board
3. Soldering all the components on he board:
Add an output device to a micro controller board you've designed and program it to do something
I am using a Servo motor for the output devices.
For my final project I am making a 6 axis robotic arm, which has many servo motors in itself which will run simultaneously on either of the axis. So my this week task is to take two servo motors and rotate them on opposite axis i.e one moving in clock wise and another in the anti clock wise.
The circuit of the board is downloaded from the Fab academy archive and also the milling files are downloaded from the archive
I selected Servo motor for do this exercise.
I wanted to use arduino programming through C/C++ language. As it will be helpful for me for my final project.
Now its turn to mill the board and start working with it.
Steps involved are :
1. Milling the board
2. Soldering the components
3. Programming of the board through Arduino
For the brief description of the process refer to week- 4 and week- 8
STEP_01
Milling the board
STEP_02
Soldering the components
The most important part was I didn't found the 20 Mz Crystal so I replaced the crystal with the 3(10 uF) capacitors.
This component is replaced with the capacitors
This capacitor is not used in the board that i made
STEP_03
Programming of the board through Arduino
The first step is to connect the arduino uno and make it as a programmer.
Once the basic code is uploaded so far there is no issue in the program. Now take the board that we have made and connect the board to the arduino.
Note I am using Old style wiring so the code given in fab archive will have different pin numbers.
Connection rules: See the circuit diagram of the board and identify the pins that we have to connect with the arduino.
Colour code for the connection of six pins from the board
GND- ORANGE
MOSI - RED
V - WHITE
RST - YELLOW
SCK - GREEN
MISO - BLACK
Now this 6 pins are connected to the Arduino board.
PIN_MOSI to 11
PIN_MISO to 12
PIN_SCK to 13
PIN_RST to 10
GND to ground of arduino
V to 5v of arduino
Once the connections are done the board would look like:
Once the connections are done now both the sevo motors are connected to the circuit with the help of a bread board.
Here most important point was the connection of the board to the arduino and uploading the code given. Once the code is uploaded in the IC t44 through arduino. Link for the code.
After the code is upload now remove the 6 pin and connect the servo motors.
Now the IC t44 has all the data and the code within it. It has the programmed code that will move both the servo simultaneously.
Once the connection is done this time I need to increase the voltage. the 5 V supply of the arduino doesn't work for moving 2 servo motors.
So I connected 9V battery to the bread board and given the power to the servo motors from the bread board.
Final Working of the servo motors:
RGB LED with a Button
Button_Blinking_RED_Light
Button_Blinking_Yellow_Red_Green