This week, my targets are the followings:
This week is about adding automation to the machine designed two weeks ago
Topics covered (course) Video recording (course) Video recording (recitation) Students and Labs My filesTo make a machine, multiple slills are required and there are dependencies between team members. My contribution is on the SW level. In order to help other team members to go ahead with their deliverables, I designed my code so it could run on a commercial board (an Arduino)
Here is how my test bench looks like:
UPDATED: sometimes group project are moving slower than expected. Since I designed the SW part, I wanted to test it as much as I could while others were dealing with electronics and mechanics. I made a prototype (of the Y axis) with a stepper motor and an off the shelf drive. Here is the video
Even with a well documented code, there are always questions... and bugs. I made myself available to team members to help them to progress without any issue on the firmware part
The code is available here and is fully documented inline
The main parts are:
ATMEGA328P Pin ID | Symbolic name | PCB label | Usage |
---|---|---|---|
19 = ADC6 | A6 | U$8 | Left button |
22 = ADC7 | A7 | U$9 | Right button |
23 = PC0 | A0 | U$10 | Near button |
24 = PC1 | A1 | U$11 | Far button |
25 = PC2 | A2 | U$12 | Up button |
26 = PC3 | A3 | U$13 | Down button |
27 = PC4 | A4 | U$14 | Open claw button |
28 = PC5 | A5 | U$15 | Close button |
32 = PD2 | (digital)2 | U$16 | All limit switches connected in parrallel |
2 = PD4 | (digital)4 | Enable X axis stepper motor | |
10 = PD6_PWM | (digital)6 | Step for X axis stepper motor | |
11 = PD7 | (digital)7 | Set direction for X axis stepper motor | |
12 = PB0 | (digital)8 | Enable Y axis stepper motor | |
13 = PB1_PWM | (digital)9 | Step for Y axis stepper motor | |
14 = PB2_PWM | (digital)10 | Set direction for Y axis stepper motor | |
1 = PD3_PWM | (digital)3 | U$4 | Step for Z axis servo |
9 = PD5_PWM | (digital)5 | U$18 | Step for claw servo |
To deploy the firmware on the final board..
Things you may need to know
Here are a few things we should have done differently