Welcome to Synthiam!

Program robots using technologies created from industry experts. ARC is our free-to-use robot programming software that makes features like vision recognition, navigation and artificial intelligence easy.

Get Started
Asked — Edited
Resolved Resolved by Jeremie!

Need Sugestions On How To Control A Moded Servo With Ezb For Linear Use

here is a thought that needs some pruning. I need a linear actuator that has about 10 inches of travel. 256 mm. A 15kg rc servo has enough torque but presents a control issue. I would like to get 1mm resolution. I was thinking about moding a rc servo for continuous rotation and adding a dual photo detector inputs and feed the inputs to the a/d ezb inputs. The detectors would be placed 90 degrees out of phase so the ezb could decode the quadrature and count the linear position. Now the real question. Should I use the servo feedback system somehow? Or should I do the math in the ezb and just alter the servo pwm signal somehow? All idea's are appreciated and if anyone has any scripts that might be used, please post. BTW the rc sites have no solutions that I can find, other than very expensive actuators. Thanks Neil

AI Support Bot
Related Content
This is a repost since I received no feedback.
Do you have a 3d printer?
What are you thinking DJ I have access to a 3-D printer
I think DJ means that if you want that type of precision movement maybe hacked stepper motors and control board from a 3d printer might work...

What you want to do seems like a serious custom job...
Lol, I've done a linear actuator without feedback:)

I also only had about 3 inches of travel.

A 3D printed (or threaded rod) worm gear assembly is probably a good way to go, instead of encoders you could have end stop limit switches. This is the idea that most 3D printers use on their x and y axis'.
Some interesting feedback. If I switch to a small stepper design does anyone have a suggestion for a inexpensive pwm to stepper motor controller that the ezb digital servo output would drive over a total distance of 10 inches? or is there a better way of driving a small stepper motor from ezb? I would like to avoid the Ardino series of computers as I do not have any experience, compilers or desire to have multiple computers in this project. I am going to search Sparkfun for a control board but would really like a control board suggestion.
Sometimes it's just better to pay the money and do the easy way...
I found this clamp at Princess Auto today, it seems to have a 10" worm gear that could be salvaged to create a linear actuator.

User-inserted image
good find of the clamp. Harbor Freight has all kinds of low cost clamps as well. I use a standard servo horn to shaft coupler to join a continuous rotation servo to the threaded rod. now back to thehow to control it question with ezb. Whats your thoughts Jermie? Open loop will not work for this app/ Either EZB interface, or servo feedback, or I need to go to a stepper motor with some kind of control card. tbd I prefer to limit the cost of the control cards to under 50 us dollars per linear actuator, so I view this as a learning opportunity and to share with others how to interface a linear motion to ezb. Who knows, maybe one day in the future we can have full size extending robotic arms.
You can also pull the potentiometer from you servos and locate them externally along the axis (if you have one) of your project... The 3d printed inMoov project does just that... Elbow and shoulder joints are driven ( via worm gear) by a modified Hitec HS 805BB servo. The pots are removed and attached externally to the elbow joint and shoulder joint... This allows the joint (if need be) to travel the full 180 deg the servo would usual do. However, since the pot is external and the servo modified for continuous rotation this can mean the servo will rotate several 360 deg turns to complete the 180 deg of travel of the joint....
I am closing this thread as it has not produced any usefull script solutions for quadrature decoding. I am slowly coding such a script and will post it when its done. thanks for the feedback however to all that comented.
just trying to close thread