Final Project Journal
Project Ideation
Project Ideation
my project is a camera slider that moves on a single axis (X) axis, consists of 4 main parts
my project is a camera slider that moves on a single axis (X) axis, consists of 4 main parts
slider rails
camera carriage
control box
moving mechanism
- I had a lot of care about it because I usually make a lot of products and I need to document my products
- I was watching a youtube video showing a DIY camera slider so I decided to make my one
Project Construction
Project Construction
the material I have been used
the material I have been used
1- plywood
1- plywood
2- pla plastick filamaent
2- pla plastick filamaent
3- Aluminum extrude 2060
3- Aluminum extrude 2060
4- Arduino UNO
4- Arduino UNO
5-limit switch
5-limit switch
6- joystick module
6- joystick module
7- stepper motor NEMA17
7- stepper motor NEMA17
8- A4988 stepper motor driver
8- A4988 stepper motor driver
9- power adaptor 12v2a
9- power adaptor 12v2a
10- pushbuttons
10- pushbuttons
11- LCD16x2
11- LCD16x2
12- USBC breakout board
12- USBC breakout board
13- hex screw 3mm*10mm, 3mm nuts
13- hex screw 3mm*10mm, 3mm nuts
1 at first I use fusion 360 software and exported our model as DXF files and Stl files for a 3d printer
1 at first I use fusion 360 software and exported our model as DXF files and Stl files for a 3d printer
2 then I used RDworks to control co2 laser machine parameters
2 then I used RDworks to control co2 laser machine parameters
3 after this I turned our co2 laser machine on and I feed it by material (plywood), RD file
3 after this I turned our co2 laser machine on and I feed it by material (plywood), RD file
4 now we move to a 3D printer by using CURA software to slice a 3d (STL file) model
4 now we move to a 3D printer by using CURA software to slice a 3d (STL file) model
fusion 360 where i design all my files
fusion 360 where i design all my files
I started by designing a case for a NEMA 17 stepper motor
I started by designing a case for a NEMA 17 stepper motor
link down bellow
RDworks app controls co2 laser parameter
RDworks app controls co2 laser parameter
parameters
parameters
speed=20 mm/s
speed=20 mm/s
power=60
power=60
laser cutting steps
laser cutting steps
1-turn on the machine and make sure of precautions setups
1-turn on the machine and make sure of precautions setups
2-load your RD file to the machine
2-load your RD file to the machine
3- adjust focal lenth
3- adjust focal lenth
4-set origin point and hit start
4-set origin point and hit start
my files has been cut by co2 laser
my files has been cut by co2 laser
this file showing my hing construction its aa big bart of my projict
this file showing my hing construction its aa big bart of my projict
Project Electronics , Power Management
Project Electronics , Power Management
My major pice in this project is (Arduino UNO)
My major pice in this project is (Arduino UNO)
the brain of the project
the brain of the project
A4988 stepper motor driver
A4988 stepper motor driver
takes the order from Arduino and sends it to the stepper motor to move based on Arduino orders because the power of Arduino is not enough to power a motor
takes the order from Arduino and sends it to the stepper motor to move based on Arduino orders because the power of Arduino is not enough to power a motor
joystick module
joystick module
the movement controller user tactile input
the movement controller user tactile input
stepper motor NEMA 17
stepper motor NEMA 17
the muscle which moves our carriage
the muscle which moves our carriage
I decided to make this project works on 12v DC because its communally used for different projects and we can get it easily from a battery source or wall plug adaptor,
I decided to make this project works on 12v DC because its communally used for different projects and we can get it easily from a battery source or wall plug adaptor,
and why I used 2 amps m
and why I used 2 amps m
my NEMA17 consumes about 1.4 amps and Arduino needs 200MA
my NEMA17 consumes about 1.4 amps and Arduino needs 200MA
LCD 16*2
LCD 16*2
the graphical output shows the current position of the camera carriage
the graphical output shows the current position of the camera carriage
power adaptor 12v2a
power adaptor 12v2a
the power source
the power source
pushbuttons
pushbuttons
feature input tactile switch
feature input tactile switch
limit switch
limit switch
the switch who's detect the home position for the camera carriage
the switch who's detect the home position for the camera carriage
USB C breakout board
USB C breakout board
input port to control or reprograming Arduino
input port to control or reprograming Arduino
Wiring
Wiring
1* connecting my joystick XVR with pin A0, VCC with 5V, GND
1* connecting my joystick XVR with pin A0, VCC with 5V, GND
2-wiring A4988 driver with my stepper
2-wiring A4988 driver with my stepper
3- wiring pin 2 with driver DIR
3- wiring pin 2 with driver DIR
4- wiring pin 3 with driver step
4- wiring pin 3 with driver step
5-wiring my limit switch with pin 7 and the same pin with 10K ohm resistor to the ground and the other pin of my limit switch with 5V
5-wiring my limit switch with pin 7 and the same pin with 10K ohm resistor to the ground and the other pin of my limit switch with 5V
Project Programming
Project Programming
my code works on minimum features which consist of two functions
my code works on minimum features which consist of two functions
1* start position
1* start position
2*move function
2*move function
after define my pins
after define my pins
1* start position
1* start position
after powering up the camera slider (start function runs one time) for moving the stepper right in the direction of the home position limit switch
after powering up the camera slider (start function runs one time) for moving the stepper right in the direction of the home position limit switch
2*move function
2*move function
if a user used a joystick and moves it to right Arduino will read this change based on his code and if the joystick moves left it will
if a user used a joystick and moves it to right Arduino will read this change based on his code and if the joystick moves left it will
Important note
Important note
the value of 712, 312 comes from reading the analog signal comes from the Joystick module (any joystick sends variable signals from (0: 1023) so when the joystick leaver rests in the middle the value of output equals half of 1023 with a range of tolerance sure, it will be about 520
the value of 712, 312 comes from reading the analog signal comes from the Joystick module (any joystick sends variable signals from (0: 1023) so when the joystick leaver rests in the middle the value of output equals half of 1023 with a range of tolerance sure, it will be about 520
so when we move the lever to the right based on how much we moved the leaver we receive output from the joystick within range (550: 0), at the left side range will be (550:1023) of courese we have a tolerance range I will not mention it because am not sure 100% how much it.
so when we move the lever to the right based on how much we moved the leaver we receive output from the joystick within range (550: 0), at the left side range will be (550:1023) of courese we have a tolerance range I will not mention it because am not sure 100% how much it.
Project Integration & Testing
Project Integration & Testing
7- Demonstrate with text and visuals how did you integrate the project’s modules together? What are the testing results? (Include a Demo video separately, showing a proof of functionality)
7- Demonstrate with text and visuals how did you integrate the project’s modules together? What are the testing results? (Include a Demo video separately, showing a proof of functionality)
I star connecting driver with the board
I star connecting driver with the board
then conect my board to my Arduino then wiring the joystick and power potton and add power socket also and start plug a 12V adaptor and testing my system and ifaced an issue mentionit below
Sharing & Collaboration
Sharing & Collaboration
8- Did you ask for feedback? What are the ideas that others have contributed or suggested? What was someone else’s idea that you built upon? How did you help your peers? How did your peers help you?
8- Did you ask for feedback? What are the ideas that others have contributed or suggested? What was someone else’s idea that you built upon? How did you help your peers? How did your peers help you?
during assembling my circuit I was facing wiring issues so I decided to make a BCB board
during assembling my circuit I was facing wiring issues so I decided to make a BCB board
Overcoming Challenges
Overcoming Challenges
9- When you got stuck, what/who did you turn to? At what point did you have to pause to research or learn more before moving on? What are some mistakes, pitfalls, or challenges that others can avoid if they were doing this project?
9- When you got stuck, what/who did you turn to? At what point did you have to pause to research or learn more before moving on? What are some mistakes, pitfalls, or challenges that others can avoid if they were doing this project?
1*when I was programming my code I faced a problem with my code when I needed to command Arduino to set a soft limit to my motor movement on the left side to avoid crashing the end
1*when I was programming my code I faced a problem with my code when I needed to command Arduino to set a soft limit to my motor movement on the left side to avoid crashing the end
my college Osama Othman helps me a lot with my code he told me that I have to read the number of steps at the end of the pass so we typed a code at every single
step number of steps = number of steps+1
and this command will give us the total number of steps
2*when I was adding a USB type C port to my Arduino I faced a problem connecting
2*when I was adding a USB type C port to my Arduino I faced a problem connecting
the wire right but after searching a web
the wire right but after searching a web
but after searching the web I found a good video showing the right wiring
but after searching the web I found a good video showing the right wiring
Future Work
Future Work
If I had more time, I would like to add a second axis for my camera slider to swivel a camera mount
If I had more time, I would like to add a second axis for my camera slider to swivel a camera mount
Final Project Design Files
Final Project Design Files