Mechanical Design (part 1 of 2)
- Design a machine that includes mechanism + actuation + automation
- Build the mechanical parts and operate it manually.
- Document the group project
- Document your individual contribution.
Preparation and task dividing
- at the beginning we started with searching for old projects to collect and generate ideas for the machine that we will work on. me and my colleague shaden divided the tasks between us, and because we are almost 500 Km away from each other we have to work individually on our tasks and then meet online to discuss our progress , and because i have a lab access she will handle the design of the machine, and i will handle the mechanical assembly and automation.
- after we choose the design and plan for the machine shaden started to work on the design, and I started to look for the material that we need
using cr10 parts
i didn’t find the lead screw that should be attached to the stepper motor and to save time the our local instructors advised us to use one of their CR10 3d printers body and take from it what we need from it, so i got the 3d printer and started to understand the movement and how parts where attached together
Dissemble CR10 3D printer
then i started to de assemble the 3d printer and to understand more about the assembly
taking the measurement
after de assembling the 3D printer i took the measurement of all parts we need and holes in the beam, and then make it in list to send it to my colleague to finalize the design
Wood shaft and cardboard
according to my colleague design we also need a cardboard and wood shaft to build our machine structure, the cardboard was easy to find but the wood shaft is the one took a full day of searching around local shops to find it, and finally i found it in Saco, so i measure it and sent the dimension to my colleague.
The Design is ready
at this point a receive the design files from my colleague, the files included a 2D design for the structure and gripper for be laser cut, 3D design of joints to be 3d printed
Slice the 3D design and Print it
i used Ultimaker Cura for slicing the design and prepare it to be printed, then printed it using ultimaker +2 3D printer
i used Inkscape to prepare the design, what’s makes it the perfect choice that it is a free and open-source vector graphics editor, that enables you to create and edit vectors such as illustrations, diagrams, line arts, charts, logos, icons, and even complex paintings. It is versatile, easy to use and a serious alternative to premium tools like Adobe Illustrator.
prepare the design for Laser Cutter
started to prepare the design to be cut, first resize the document according to the plate size of the machine,
then select all blue line, the red lined will be for etching and blue lines to be cut, next i will change the stroke of the blue lines i will make it 0.025 mm to be cut, make sure to use mm as this according to my epilog setting, and then save the file as pdf
next is to prepare the setting for the laser cut and upload the file to the machine, i am using epilog 40 watts, i changed the properties of the file to put the setting for the material i am using, i found the setting for the cardboard already saved, the setting as
- for Raster setting ( Speed 100% , Power 58% )
- for vector cut setting ( Speed 60% , Power 50% , frequency 500 Hz)
It failed again and again
i Started cutting with the setting above, but the laser didnt cut the cardboard properly, at first i thought maybe its becouse of the focus, i changed the focus of the lense and repeat with same setting without a success,
i changed the setting from card board to wood with 3 mm also didn’t go well, it finish the etching but fails with the vector cut ,
i kept changing the setting ( power, speed ,frequency ) to find the best setting to cut the card board, and when i decreases the speed it burn the cardboard or it not cut well
Its not my day
after repeating this process over and over without any success and the time is getting late i decided to give up and try again tomorrow,
Coming back hard
it took three days to be able to go back to the lab to continue the work, the lab was taken by other group they have some event going on, any way i am back now and have only 18 hour before the meeting with nail to demonstrate our work so i have to get it done even if that’s mean to continue working till the meeting.
cutting the structure
last time i hade trouble finding the exact setting to have the cut correctly, this time i spend only 30 min to get the setting that i will use my strategy on, the strategy is to find setting that cut at least half of the card board and then repeat the cut 2 -3 times till it cut it correctly, yes it take time but this is better than cutting what left with scissors,
So after 5 hours of continues cut i have finally cut all parts of the structure
Start the assembly
now after all parts had been cut its time to do the assembly, the first step is to organize the parts and understand how each part should be connected.
then glue the parts that should be connected together
Its not an easy job
well i thought it will be an easy job but it turn that its not, the assembly process took all night stand,
once i reach to the moment that i need to include the 3d parts the wood shaft with the structure i found that the dimeter was not correct, and its already late at night so no ways to stop here i had to just figure out a way to continue the work.
Attaching shaft and stepper motor
for the wood shaft I just increased the dimeter in the cardboard by cutting it with a scissor, for motor shaft my first try was making acrylic part that fix it with the structure, but it didn’t go well then I found a piece that was used in a 3d printer and make use of it.
moving it mechanically
finally I got every thing fixed and the first axis was done and I can move it with my hand
Changing the structure
After failing to do it right becouse the type of card board we had ,My colleague Shaden Almutlaq and I decided to rebuild the structure using more solid materials, and since we have the Metal frame for CR10
Design and Assembly by Shaden For our second design, we used the X and Y frames from the disassembled CR10 printer used previously. After looking through other Machine Design projects, I found that most projects disassembled different machine parts to build the structure, and focused on designing the parts needed for the toolhead. I originally wanted to experiment with building the structure from scratch using the cardboard stages, but dropped the stages because of the difficulty of working with cardboard at the quality we were able to find.
Below is what will be used from the CR10 printer (2 stepper motors + z and y frames - the top shaft is a sample I cut to double check the placement of the screws).
The base, tray, tray support, tray separators, and top shaft (extra, incase we need it for stability) will be designed based on the frame specs.
The tray, support, and separators will have the same design with the only adjustment being to the base size. The CR10 frames are much smaller so we reduced the base size as well (220x300mm). The most important part of the base was ensuring the bolt holes are at the exact same place as the z+y frames and the top shaft. As for the tray, I extended the front to be parallel with the base, this is because the gripper is not centered on the tray, if I left it as it was previously the gripper will not be over the tray (see assembly below).
for more information about the design and assembly go to Shade website
Stepper Motor ( bj42d22-23v01 )
the stepper motor that we used is the one came with Creality CR10 is Stepper motor bj42d22-23v01
- Step angle: 1.8 degrees
- Steps: 200
- Nominal Voltage: 4.83V
- Current Rating: 1.5A
- Rated speed: 1-1000rpm
- Rated speed: 1-1000rpm
- Rated torque: 0.4NM
- Ambient Temperature: -20 - 50℃
- Length: 40mm
will use Arduino Uno and Arduino IDE for controlling the steppers
And to Drive this motor we needed a Stepper motor Driver so we used SparkFun EasyDrive
Upper Board Pins
They function as follows:
- Coil A+ - H-Bridge 2 Output A. Half of connection point for bi-polar stepper motor coil A.
- Coil A- - H-Bridge 2 Output B. Half of connection point for bi-polar stepper motor coil A.
- Coil B+ - H-Bridge 1 Output A. Half of connection point for bi-polar stepper motor coil B.
- Coil B- - H-Bridge 1 Output B. Half of connection point for bi-polar stepper motor coil B.
- PFD - Voltage input that selects output current decay mode. If PFD > 0.6Vcc, slow decay mode is activated. If PFD < 0.21Vcc, fast decay mode is activated. Mixed decay occurs at 0.21Vcc< PFD < 0.6Vcc.
- RST - Logic Input. When set LOW, all STEP commands are ignored and all FET functionality is turned off. Must be pulled HIGH to enable STEP control.
- ENABLE -Logic Input. Enables the FET functionality within the motor driver. If set to HIGH, the FETs will be disabled, and the IC will not drive the motor. If set to LOW, all FETs will be enabled, allowing motor control.
- MS2 -Logic Input. See truth table below for HIGH/LOW functionality.
- GND - Ground. M+ - Power Supply. 6-30V, 2A supply.
Upper Board Pins
- GND - Ground.
- 5V -Output. This pin can be used to power external circuitry. 70mA max is required for Easy Driver functionality.
- SLP - Logic Input. When pulled LOW, outputs are disabled and power consumption is minimized.
- MS1 - Logic Input. See truth table below for HIGH/LOW functionality.
- GND - Ground.
- STEP -Logic Input. Any transition on this pin from LOW to HIGH will trigger the motor to step forward one step. Direction and size of step is controlled by DIR and MSx pin settings. This will either be 0-5V or 0-3.3V, based on the logic selection.
- DIR -Logic Input. This pin determines the direction of motor rotation. Changes in state from HIGH to LOW or LOW to HIGH only take effect on the next rising edge of the STEP command. This will either be 0-5V or 0-3.3V, based on the logic selection.
Micro step Select Resolution Truth Table
power supply 12V
i used power supply 12v to power up the Arduino and the stepper drive, and connected it to the power source
Then i soldered the pins on Easy drive, connected the stepper motors , and connected every to the power
now every thing is connected its time to programm it
what’s good about the easy drive that it has getting started program on the hookup guide its a good way to start testing the motors.
You can download getting started with easy drive from here
- so starting with this program i tested the motors ,
- i found that one of them was shaking and not moving, when this happen its mean that you flipped the polarity of the coils and you need to change it to the right way
Testing X axis
Testing Y axis
After i tested the motors and make sure that they are working its time to add my touch to it , i took the same example and modified it
- the first modification i made is to reduce the number of steps from 1000 to 100 , and measured from the starting point how many steps i need to reach to each location
for X axis
for Y axis
- then i saved that location for each , and i added a code that read from the serial monitor in arduino that if the it read b its mean go to the blue location, of it Y go to Yellow location.
- then i add the servo library to the code to control the servo motor to get the right angle , for catching and for releasing. and added it to the program
- Now every thig is ok i added a massage in the serial monitor that ask for user input to decide witch lego color you want to pic
Here is the software