Suggestion for servo motor --> big delta robot
-
Hi to all.
We have build one quite big delta robot that can move in 1 meter radius.
Robot weight ( including all 3 arms, extruder and load, is under 2kg ).Basically, its pick and replace robot that should have one pickup per second. For this we are using NEMA23 stepper motor with 10:1 gearbox but as it turns out, this would not be the best choice. It's working , but it's lacking stability, precision and pickup time is around 1,5 sec.
So now am planning to switch to servo motors, but this time i would like to add some "plan B" into consideration. Shortly, i would like built one stable and durable system. I choose one of many demo videos ( ABB etc. ) which i admire, because from HW and SW point of view, this video represents I would say, perfection. Of course, we can not build something like that but this is something that i would like to use for reference.
Video :
https://www.youtube.com/watch?v=Q7tE_vNYzzU
Now the questions1.) According to size of the base it would look like that this is some strong servo motor, maybe with gearbox system. Can someone guess, what kind of motor is used in this setup ? Are we talking in 300 - 500W range or stronger ?
2.) I have problem with understanding servo power vs torque so if someone can elaborate on this i would be grateful. IHMO, 100W motor should be able to lift few kilos without a problem and move them from position X position Y in no time. Is this correct or do i need to implement gearbox ( regardless if the servos is stronger or not )...
What kind of servo should I choose to accomplish these speed.
Like i wrote, whole part under the base is under 2kg and optimal work time is 50 - 55 pcs / minute.Any input is more then welcome !
Arnix -
Its not clear to me that the stepper motors are the weak link here. You say it lacks stability and precision, but where are those flaws coming from? Are the arms flexing? Do the pivots have play? Is there backlash in the gearbox? The only flaw that can be directly attributed to the stepper motors is slowness.
Rotary positioning applications are extremely expensive because errors are amplified by the arm length. The quality of a rotary axis is 100% dependent on the gearbox quality, and rigid zero-backlash reducers are expensive.
You can look at scara 3d printer designs for examples, but their arm lengths are much shorter than your example video. Unless you can spend 2,000-5,000 per axis (on harmonic or planetary reducers) you will probably have to DIY some kind of high ratio belt reducer.
https://www.google.com/search?q=belt+driven+rotary+table&tbm=isch
-
I don't see if you have mentioned it, but another thing that is important for precision is having a rock solid base. Ideally your frame for the robot is bolted to a concrete floor, and your frame cannot have any flex.
Not having a solid base amplifies any gearing backlash by introducing extra movement, causing you to run at a reduced speed so that movement is stable.
And it's not too difficult to calculate what your max motor load would be, but you need to do some math with intertias. -
In your video the delta can pick only a low load. At the end of the video it can only pick up about 5% of all the parts.
If I would construct something new, I would build something like
https://www.youtube.com/watch?v=Omd90UfgGv0
A single sorter is cheaper (simpler mechanics and kinetics calculations), so one can build multiple of those, so the parallel processing can handle more sorting. -
First, I am impressed by the video! Does it show actual speed, or have you speeded it up to show the pickup rate that you hope to achieve when the machine is in production?
I guess what you want to do it to increase the movement speed without losing precision, so you can increase the pickup rate. First you need to determine what is causing precision to be lost when you increase the speed. Are the motors skipping steps? If so then you will need to use either a higher supply voltage with the existing motors, or higher current motors with the existing supply voltage, or lower gearing. The first two of those would require external stepper drivers, if you are currently driving the motors direct from the Duet. If you are already using external drivers, or you are using the Duet drivers but the M122 hiccup count increases when you increase speed, then reducing microstepping may help (if you are using external drivers then this needs to be done on the drivers, not the Duet).
Does the effector wobble too much when you increase speed? If so then you probably need to use thicker but lightweight arms (carbon fibre tube is my suggestion, if you are using something different), also shorten the arms if that can be done without compromising the reach.
I think it is a good idea to use step-servo motors in that application, because I think they would be affordable in that system and because if you did lose motor steps then expensive damage could result.
-
The industry already has a proven solution:
-
Sorry for late reply.
To better understand my situation, am sending latest videos. One is with slower and second is on top speed.
Its without up/down movement, just positioning and extruder should position itself on X0 Y0 ( at higher speed it misses cca 10 cm ).1.) https://ufile.io/u2cim ( just click, free slow download / open or save ).
2.) https://ufile.io/1t63o@691175002 and @jrjones88
I think that the problem is in the gearing and lack of encoder. The material that am using at the moment aluminum but pipe wall is 2mm and pipe diameter is 2 centimeters so there should not be any problems, IMHO. As you guys point it out, 10:1 gearbox that am using could be the main problem because it has backlash of 3 degrees which is a lot, at no load. This is the stepper motor that am using :
https://www.omc-stepperonline.com/spur-gearbox/nema-23-stepper-motor-bipolar-l76mm-w-gear-raio-101-spur-gearbox-23hs30-2804s-sg10.htmlHigh ratio belt reducer - DIY :
- i can do that, can you guys suggest some optimal ratio and motor ?
- what kind of setup would you suggest ( power supply, controller, etc. ) that can be controlled by duet ?
- We choose delta design because of application and working environment but in the future we will change the design. The video that you send is quite interesting way to solve some standard pickup routines and this is the way that we should go... always something new and creative.
@dc42
Am not sure which video did i send you :-), but video is in real time. Please look at latest video in this post.
Regarding missing steps... I noticed that the steps are missing in three cases:- when the robot reaches outer limits, when the speed is high and when i simulate pickup
- at some point and after few simulated pickups, extruder just drops down and starts to move on "floor",
so i have to press emergency stop. Maybe i didnt set up my config file correctly or there is a problem with power supply ? I have 3 external stepper motor drivers but i didnt connect them yet... Btw. I was looking at hiccup but it shows no problems.
- i second that, but this is something that we would like to do on our own.... To gain some knowledge and expertise in this part.
@ALL
At the moment i think i have two main options:
I can implement some let's say 2x stronger stepper motor with 5:1 gearbox or turn to servomotor.
Servomotor would give me "professional" working environment and stability for future designs and stepper would be cheaper solution but with lack of speed... And in end effect, price of stepper + encoder+ gearbox would be near the price of servo.Arnix
-
@arnix said in Suggestion for servo motor --> big delta robot:
As you guys point it out, 10:1 gearbox that am using could be the main problem because it has backlash of 3 degrees which is a lot, at no load.
If that is 3 degrees at the output shaft, that is indeed excessive. It would be 30 degrees at the motor shaft, which is so much that it would be impossible to correct it in firmware.
You could consider replacing the gearboxes by belt and pulley drive, and give yourself the opportunity to change the gearing ratio by changing the pulleys. The belts can be short, so belt elasticity shouldn't be much of a problem.
Regarding missing steps... I noticed that the steps are missing in three cases:
when the robot reaches outer limits, when the speed is high and when i simulate pickup
at some point and after few simulated pickups, extruder just drops down and starts to move on "floor",
so i have to press emergency stop. Maybe i didnt set up my config file correctly or there is a problem with power supply ? I have 3 external stepper motor drivers but i didnt connect them yet... Btw. I was looking at hiccup but it shows no problems.If you are missing steps, than assuming it isn't a firmware issue, your motors are running out of torque. Try reducing maximum speed first, keeping the acceleration the same, and see whether that solves it. If it does, that implies that you are running out of drive voltage for the motors. You can fix that by using external drivers running at 48V instead of the Duet running at 24V, or by reducing the gearbox ratio (for example to 5:1 if that gives you sufficient resolution), or by reducing the mass of the arms + rods + effector.
Even better is if you can use a rotary delta simulation program to work out the maximum worst-case revs/sec needed from the motors to achieve the maximum speed that you want. From that and the specification of the motor we can work out what stepper driver supply voltage you need.
I can implement some let's say 2x stronger stepper motor with 5:1 gearbox or turn to servomotor.
Servomotor would give me "professional" working environment and stability for future designs and stepper would be cheaper solution but with lack of speed... And in end effect, price of stepper + encoder+ gearbox would be near the price of servo.
If you can find a step/servo drive with integral gearbox and the encoder on the output side of the gearbox, I think that would be the best solution.
-
@arnix said in Suggestion for servo motor --> big delta robot:
Sorry for late reply.
To better understand my situation, am sending latest videos. One is with slower and second is on top speed.
Its without up/down movement, just positioning and extruder should position itself on X0 Y0 ( at higher speed it misses cca 10 cm ).1.) https://ufile.io/u2cim ( just click, free slow download / open or save ).
2.) https://ufile.io/1t63o@691175002 and @jrjones88
I think that the problem is in the gearing and lack of encoder. The material that am using at the moment aluminum but pipe wall is 2mm and pipe diameter is 2 centimeters so there should not be any problems, IMHO. As you guys point it out, 10:1 gearbox that am using could be the main problem because it has backlash of 3 degrees which is a lot, at no load. This is the stepper motor that am using :
https://www.omc-stepperonline.com/spur-gearbox/nema-23-stepper-motor-bipolar-l76mm-w-gear-raio-101-spur-gearbox-23hs30-2804s-sg10.htmlHigh ratio belt reducer - DIY :
- i can do that, can you guys suggest some optimal ratio and motor ?
- what kind of setup would you suggest ( power supply, controller, etc. ) that can be controlled by duet ?
Yes your backlash is the issue right now. For the optimal ration and motor, that is a compromise between speed and holding power. Since you have a 1.89 Nm geared to 10:1 right now and it is too slow (you said cycle time is 1.5 seconds, desired is 1 second), your gearing needs to be a smaller ratio, say 8:1 or 5:1.
A belt reduction is a good way to reduce backlash, but depends on how much room you have. If you goto a 5:1 ratio, you might need a new motor as well, since your output torque is reduced by half on your current motor.
I don't know what your budget is (is this hobby or work/school?). If it isn't hobby I would look at Oriental Motors, they have good motors (all kinds) and drives (that accept pulsed input). But you are looking at around $500-1000 per motor/drive combination.
For example, this motor is has 0.05° backlash. https://catalog.orientalmotor.com/item/az-series-absolute-encoder-stepper-motors/az-series-85-mm-absolute-encoder-stepper-motors-dc/azm98ac-hp15And once you reduce your backlash, I would still look at stiffening your frame (cross braces are easy to add in your case). Take a look here: https://youtu.be/p1Lrz0gPvOA
The frame is very beefy compared to the robot. This video also has some good views on the arms (very similar to the current Delta printers, but then again, delta pick and place robots have been around longer than delta 3d printers) -
The cl steppers recommended by jrjones88 would be suitable for this application, but if they are out of your price range you can try to 3d print a belt reducer.
Use a metal pinion with <=18 teeth along with a massive 3d printed pulley in the 140-180 tooth range. Minimize belt stretch by keeping the unsupported belt length as short as possible using rollers on the back of the belt: https://i.imgur.com/nz2bYp5.jpg
I think steppers can probably work for this application, although you could try https://www.teknic.com/products/clearpath-brushless-dc-servo-motors/clearpath-sd/sdsk-models/ maybe.
Also make sure you are correctly setting acceleration for the motors, it looks a little high on the videos you posted.
-
- am waiting for latest simulation to complete and i guess it will be ready in 2 weeks.
- there are bunch of solutions but it looks that in the end i will need to choose servomotor ( look at post under this line )
@jrjones88 and @691175002
- i have some budget for this project but $1000 per motor is way to high.
cross braces are easy to add in your case - i was thinking to add some stabilization in the center of the robot but till now i didn't find any solution
- on the other side, this should be then also added into calculation, regarding motor power
- do you have some suggestion on this ?
Belt reducer
I can do this belt pulley system by myself but i was wondering if something like this can solve the problem:
http://www.harmonicdrive.net/products/servo-mount-gearheads/harmonic-planetary/hpgp-planetary-gearbox
There are also option with zero backlash. Unfortunately i can not find any price range..Motor / drive suggestion
- According to application, and if we go with servomotor + gear system... what motor power are we talking about ? 200W or more ? At the time clearpath servo with gearbox could be optimal solution and (i guess ) under $300 per motor/drive.
Arnix
-
Harmonic reducers are perfect for this application but cost 4-5 figures an axis. Even second hand reducers off ebay cost $500-1,000 per axis.
To correctly size your servos you should determine the torque and speed that is required, then select the cheapest model that can meet those specifications.
You would basically start with arm length and estimated load then calculate that as a torque back through the gearbox to the motor.
You could try putting this motor into this calculator with 5:1 belt reduction and see what happens. I'm not familiar with the kinematics you are using, but I assume that if one arm can support 70-100% of the expected load then a robot with three arms will do fine.
I recommend picking low speed servos with high torque so that you can get away with the simplest gearbox possible. Faster servos have much higher power density but might require an accurate 10:1 or 20:1 gearbox which is much harder to build or acquire.
-
@arnix, if you choose the gearbox ratio carefully then you won't need much power at all. AFAIR you currently use Nema 23 motors driven directly by the Duet. I assume you are using 24V power. If you are running them at 2.4A peak current, then the maximum you can possibly get from them is about 60W each. That's probably more than sufficient; but you should nevertheless work out the torque and speed that you need.
-
@dc42
You are correct. At the time, am using 24V/10A power supply from Meanwell (btw. it's quality product).
Current is set to 2.1A.Torque and speed is the main thing in this application, so i have to put this in first place.
Our simulation is 90% done and at the moment, it looks like we will need at least 10 - 14Nm torque to reach this speeds and stability. Am looking at present gearbox that we use... So, if the motor has 1.9Nm holding torque + 10:1 ratio, this should give 19Nm. That should be enough but it looks like this gearbox has max permissible torque of 5Nm so i guess that this should not be good, specially for longer work.@691175002
** I recommend picking low speed servos with high torque...**
According to simulation we need 0,16 / revolutions per second to gain desired working speed.I will reply in more details tomorrow.
A. -
Can you explain in more detail exactly what issues you have when you try to run the present motor/gearbox combination at high speed?
The backlash may not be an issue at low speeds, because the weight of the arms will take it up. But at high speeds, it may be a problem when the arms are being driven down faster than gravity pulls them.
-
I will send video... Shortly, after some work , extruder looses positions for few cm and sometimes, it just drops down (specially at high speed ).. I will record 5 minutes video where you can clearly see what's going on...
A.
-
I presume the 0.16 revs/sec is at the arms, so that's 1.6 revs/sec at the motors using your existing 10:1 gearbox. If you start from step 3 at https://duet3d.dozuki.com/Wiki/Choosing_and_connecting_stepper_motors#Section_How_to_work_out_the_power_supply_voltage_you_need you can work out whether your existing stepper driver voltage (which I presume is 24V) is sufficient to maintain torque at those speeds.
-
Hi. We have completed our simulation and it looks like we will need at least 12-15Nm per motor to gain top speed ( 1 pickup per sec ) . Now, according to this, stepper motor is not the best solution so we are switching to servos. I didnt work much with servos but i guess this should be problem solver:
1.) 75VDC -- 200-450W --> 5:1 or 10:1
https://www.teknic.com/model-info/CPM-MCPV-3446P-ELN/Q1):
if i add 10:1 gearbox to this, will i be still be able to make 1 pickup per sec ?
IMHO, there should not be any problems.. It's strong motor and it can be used for future testing.
What do you think ?Q2.): If i understand this correctly, this kind of motor has everything that i need to hook up to duet.
In other words, i just need to add external 72V power supply, let's say 72V / 15A or stronger. Is this
correct ?Q3.) How can i define how much current can be drawn from servomotor. In other words, can i limit motor power consumption to lets say 10A. ?
Q4.) This one is also an option but again, all comes down to pickup speed.
https://www.teknic.com/model-info/CPM-MCPV-3432P-RLN/Arnix
-
@arnix said in Suggestion for servo motor --> big delta robot:
Hi. We have completed our simulation and it looks like we will need at least 12-15Nm per motor to gain top speed ( 1 pickup per sec ).
Is that before or after the gearbox? Remember that a 10:1 gearbox will multiply motor torque by ten times.
If you build a 5:1 belt reducer you only need 2-3Nm from the servo.
-
I am using the Teknic Clearpath servos on two CNC routers, I even had 3 on one of my 3D printers using a Duet controller. They are strong and very fast, check out their videos. Teknic also sells power supplies. Contact Teknic with your questions they are very helpful and will put in the right direction. Their servos come in various sizes with different torque and RPM combinations, you should be able to get one that doesn’t require reduction.