-
Notifications
You must be signed in to change notification settings - Fork 5
Rail
- Hardware Information
- How to connect Stepper motor, Driver, and Raspberry Pi
- Calculate step size
- Making Rail
- How to control stepper motor
- What we did and what to do
| Type | Version |
|---|---|
| Stepper Motor | Nema 17(Torque: 1.68Nm) |
| Driver | TB6600 |
| Arduino | Arduino Uno |
| Rail Length | 120 cm |
| Type | Info |
|---|---|
| Model | 17HS4401G-PG518(Nema17) |
| Ratio | 11:57 |
| Recommended Voltage | 12-24V |
| Rated current | 1.6A |
| Step Angle(W/O Gearbox) | 1.8° |
| Holding Torque | 42Ncm |
| Type | Info |
|---|---|
| Model | TB6600 |
| Recommended Voltage | 9V-42V |
| Input current | 0~5.0A |
| Power | 160W |
| Output current | 0.5A-4.0A |
| Subdivision | 1/1, 1/2, 1/4, 1/8, 1/16, 1/32 |
For this motor,
| Color | Type |
|---|---|
| Red | B- |
| Blue | B+ |
| Green | A- |
| Black | A+ |
In my case, I use external power. So I connect (+) to VCC, and (-) to GND. It is DC, so BE CAREFUL to distinguish (+) and (-).
Step Angle = Motor Step Angle / Micro Step
Arduino will burn if voltage is 24V, So use a different power than the motor driver. In my case, I use adapter(5V) for Arduino.(exclusive)
-
PLS+=CLK+ -
PLS-=CLK- -
DIR+=CW+ -
DIR-=CW- -
ENA+=EN+ -
ENA-=EN-
| Type | Value |
|---|---|
| Stepper Motor | · deg/step = 1.8º · steps/rev = 360/1.8 = 200 (resolution) |
| Micro Stepping | · pulse/step = 4 · pulse/rev = 800 |
| Rotary Table | · gear reduction = 11:57 · deg/rev = 360/(57/11)=69.4737 |
- Steps per deg = 200 X 4 / 69.4737 = 11.515152
- 1 cycle = 200 X 4 X (57 / 11) = 4,145.45454545
| Type | Value |
|---|---|
| Stepper Motor | · deg/step = 1.8º · steps/rev = 360/1.8 = 200 |
| Micro Stepping | · pulse/step = 4 · pulse/rev = 800 |
| Gear Reduction | · Multiplier = 57 / 11 |
| Lead Screw | · Lead = 5 |
- Steps per inch = 200 X 4 X (57 / 11) * 5 = 20,727.272727
First, you have to print these three connector for combine all the component
connector for motor, BK12 and profileconnector for opposite side of the motor(BF12) and profileconnector for bearing, ball screw, and profile
This is how these connector looks like.
connector for motor, BK12 and profile
connector for opposite side of the motor(BF12) and profile
connector for bearing, ball screw, and profile
This is explanation that how to connect connector and profile.
Print radar_antenna_half1.stl, radar_antenna_half2.stl, radar_board_half1.stl, radar_board_half2.stl in here using 3D printer, connect radar_antenna_half1+radar_antenna_half2, and radar_board_half1+radar_board_half2 using soldering iron.
Final result is like this.
- Connect
connector for motor, BK12 and profileto profile and fasten to the profile with screws - Connect motor and BK12 to
connector for motor, BK12 and profile - Connect coupler to the stepper motor
- Connect ball nut to ball screw
- Connect
connector for bearing, ball screw, and profileto ball nut using screws - Connect
connector for bearing, ball screw, and profileand four bearings using screws - Make four bearings goes to profile home well, and connect end of the ball screw to the coupler of the motor side
- Connect
connector for opposite side of the motor(BF12) and profileto profile and connect BF12 to connector and other side of the ball screw
If you connect these connector to profile, it looks like this.
Using this code and Arduino IDE, you can control stepper motor.
(It need to be editted this code to import with ROS)
- Making rail
- Control with arduino(moves 40 inches in 70 seconds)
- Control stepper motor faster
- Connect with ROS using Raspberry pi(Raspberry Pi + Arduino)