I'm with cupcakehat, I don't know a lot about the dynamixles but I do alot of them have 4 wires. Are you using 2 ports? One for the regular servo functions and a 2nd for the internal feedback info? Does it support the daisy chaining as well?
Anyway, Awesome work DJ. I know it's still a bit away but I can't wait to get my V4/Revolution stuff.
The dynamixal has 3 wires, power gnd and signal. The signal wire is half duplex bidirectional. The protocol is rs485. The ezb simulates the protocol on pin D18. The new ARC has servo selection ports for AX00 to AX50
You can continue to use standard servos with the dynamixal as well.
No, the v3 is maxed to its current potential. Literally there are no free CPU cycles left after processing commands and bit banging 20 servo/PWM positions
OMG, OMG, this is fantastic news! This is literally BIG news. Large robot ideas are flowing. Thanks again for the continued hard work and continued dedication.
Awesome Dj! You implementation this faster than I imagined. Khudos. Running 50 Robotis Dynamixel servos from D18 digital pin is awesome and leaves all those other pins open for the fun stuff.
Will there be tutorials on how to read the feedback from them? I imagine you'd control them with the ARC controls but, from the scripting side of it, would that use serial commands?
Amazingly fast response to implement the Dynamixel 's protocol into the EZ-B V4 flagship! Standing "O" for DJ and team. At 37$ in bulk and the high torque ratings etc.... this motor is a game changer for larger bots.....now if Dynamixel can downsize the package , even smaller bots can be happy! .....its getting exciting!
Edit They will all be controlled by the D5 pin. Only one signal pin is needed as they Dynamixels are chain-able.
But as you surmised, the power supply will quickly become the limiting factor.
One thing to note is that although Dynamixels can operate at a lower voltage (>6V) they do suffer from communication errors if the voltage is not in the 9 to 12VDC range. At least this is what we found for the AX-12A Dynamixels. I believe that most roboticists use an 11.1V LiPo to power them.
To expand on the other questions you posted to the new thread.
Yes you are likely going to exceed the fuse protection on the ez-b using 24 dynamixels. It's probably a good idea to breakout the power lines and run them back to the battery with their own fuse protection.
I'd say since you have 24 servos it'd probably be ok to breakout the power wires for 4 sets of 6 Dynamixel servos and run them back to the battery (with fuse protection of course).
Thanks Jeremie. I can easily get a higher voltage power supply.
You seem to know about dynamixels. Are they worth the expense? I need around 40 kg.cm to lift (tilt) and rotate (pan) each shoulder alone in my life size, six foot tall humanoid, but I don't need this much power in the neck, elbows, wrists, etc. Also, I want them to hold their position without requiring power.
I'm currently using Power HD 1235MG servos which can manage 40 kg.cm at 7.5v, but they are really loud, and they do not have failsafe holding brakes in them, so they overheat when there is no pulse as they try to maintain their position, then the arms come crashing down as soon as the power is cut. This also means the arms punch you in the face as soon as you turn the power back on. This can easily break your nose or kill a child.
I therefore need sensible servos that have holding brakes, or strong enough gearing to withstand gravity.
My i00600 Torxis servos have 115 kg.cm of torque, and these would probably jack up a car, but when combined as a tilt pan system they are the combined size of a large human head. No good for wrists, elbows, shoulders or anything human. But they do not rotate at all unless there is a pulse and power going to them. They are rock solid when there is no power or no pulse. This is vital.
The other problem of course is that all of these servos are rectangular, which makes me consider these servos but I don't know how to rig them to the ezb v4:
I called Trossen Robotics to ask about dynamixel servos and found out that they are manufactured by Robotis. Anyway, they told me that dynamixels do not hold their position, and do not plug into microcontrollers using PWM. This last part seemed like misinformation but I don't doubt they they will jitterheat or crash like all the other hobby servos Ive ever tested.
I wish someone would tell me how to achieve these essential tasks easily.
Does anyone know why car windows hold their position so well? Stepper motors don't have internal brakes, do they?
Zxen, Trossen Robotics has provided incorrect information regarding EZ-Robot product specifications. I believe they are unaware that the EZ-B v4 can control more than one type of servo. The EZ-B v4 controls Dynamixel v1/v2 and PWM servos simultaneously.
I do not know what Trossen Robotics meant by "They do not hold their position". All Dynamixel servos (or all servos for that matter) hold their position, which is what servos are meant to do. Whether PWM or serial communication, the servo is instructed to move into a position and that position until instructed to do otherwise.
As Jeremie had mentioned, ensure your robot has correct power source and Dynamixel is a great choice for high precision.
No prob, well I don't have much experience with six foot tall Humanoids lol but I can probably help with your decision making process a bit.
I don't feel that your Robot would benefit from Dynamixels in particular unless you are looking for a specific range of motion (greater than 180 degrees) and you want an extremely stream-lined wiring system with a single signal wire. Otherwise, you'll likely get much more for your money going with Large hobby servos. The Dynamixels that are more suited for large robots are quite expensive.
Budget is what usually constrains most of us on projects like these. I believe in the inMoov project uses large hobby servos attached to worm gears (and Boris even added springs) to hold appendages in position even after power down.
I don't believe that using Dynamixels (without modification) would allow for this type of feature, you would likely see the same result of the arms falling down after power is removed.
Electronic brakes are a great idea in concept but I believe they are very power hungry and would draw all kinds of power when activated. Not ideal if you want to move to a battery operated system one day.
A number of people in the ezrobot community (@Richard R, @bhouston, @D.cochran, @Aerius, @rentaprinta, and I'm likely forgetting many others) have a ton of life size Humanoid building experience so I think I'll have to defer to them to share their experiences with you.
@Jeremie has a point... look at the inMoov project to see how to do a life size humanoid... Especially @rentaprinta's and Bob Houston... I think they have the benchmark of inMoov's
Clearly I haven't installed any holding brakes on the servos. After I filmed this, I tested the holding, and a Hitec 645MG in the elbow caught fire. I switched off the microcontroller and the arm crashed down towards the centre of the Earth. After I replaced it, my friend wanted to see, so I turned it back on and it smashed him in the face.
I have finally figured out how to rig a spring against an electromagnet that activates when there is a pulse to any given servo, so this will eventually result in perfectly amateur holding brakes (another shipment of copper wire reels is on it's way), but I just hoped that there was a servo like the Torxis i00600 that was a lot smaller and simply didn't move without being powered.
I was told that car windows use stepper motors, so even now, after watching many videos of their operation, I keep wondering if all stepper motors are like that: able to hold their position against my arm pressing down hard when I drive. The semi-circular toothed mechanism pressing against the stepper cog doesn't seem like it would do anything to lock it, so either steppers are all internally self locking, there are extra gears inside car window steppers to create a lot of resistance, or there is a holding brake on all car power window motors.
I would definitely like to see any examples of full scale humanoids people have built, especially how they have solved the holding problem. If its worm drives, then I'd be keen to see the dancing speed and hear the volume of the motors together.
To answer your question from the other duplicate thread which has been deleted, you can connect 99 Dynamixels to the EZ-B v4 + 22 PWM Servos.
The power providing through the EZ-B v4 will be limited. However, the number of servos for your custom application will determine how many servos based on current load. The EZ-B v4 datasheet defines the current capacity.
By their nature (internal magnetic cogs, held in place by electromagnetic coils) Stepper motors do not have any holding power without applied power, unless they are geared. In my experience, true geared stepper motors are rare usually you see steppers with a worm gear drive attached. The major problem with steppers, when it comes to robotics, is that they don't have any positional feedback built-in like servos do. You have to add your own in the form of a potentiometer, break-beam encoder, or a limit switch.
Window motors from vehicles are usually DC gear motors, but standards may have changed over the years. I'd like to see if newer vehicles have geared steppers installed instead.
Thanks for the current load reference, DJ, but I never risk my microcontrollers by running the servo power through them. I always use at least a 46 amp power supply and only use the microcontoller power for the pulse lines.
Jeremie, thanks for letting me know that the stepper motors in car windows contain hidden worm drives. That's what Richard R said but I didn't believe him. Sorry Richard. It makes sense, though. They're extremely slow and they sound like worm drives.
I want my robot to be able to dance and do karate at least as well as a human (I'm going to attach him to a wall, floor or ceiling so he won't be doing any running or back flips except on the spot), so there's no way I'll be using worm drives.
Dynamixel series linking seems like nothing more than a neat wiring solution as far as I can see, but they do include position memory wiring in 40 kg.cm+ servos. Even so, they are annoyingly rectangular with an off-centre shaft like every other hobby servo, so I still need to design and manufacture robust housing to correct this major design setback. And the price of dynamixels is higher than some round flange, center-shaft industrial level servos, so I would need to weigh it up. Hopefully I won't need to weigh up anything because after literally thousands of hours of searching the ENTIRE internet (it seems), there will be an existing product that just makes sense.
@Zxen, I'm using both a car window motor and a windshield wiper motor in my robot arm. The both are simple DC motors (not stepper motors), have worm gears and and are nearly silent. They can be found in many torque strengths and speeds. Most are great for holding position with no power (I did however find one once that did not). Visit the Robot Marketplace for a wide choice of motors.
The Robot Marketplace
As mentioned you'll have to find a way to attach a pot or encoder for feedback to get speed and position control and a motor controller like a Sabertooth with a Kangaroo X2 attached.
Here's a video I made of the Car Window worm gear motor running my arm carriage system:
Here's another video where I used a windshield Wiper worm gear motor used for the elbow of my arm:
@DJ Sures do you sleep? Thanks for the update.
:) J
cool
DJ, how did you have that connected? I can see the dynamixel cable is connected to a standard cable.
Also, I think this is really great, thanks for doing this.
I'm with cupcakehat, I don't know a lot about the dynamixles but I do alot of them have 4 wires. Are you using 2 ports? One for the regular servo functions and a 2nd for the internal feedback info? Does it support the daisy chaining as well?
Anyway, Awesome work DJ. I know it's still a bit away but I can't wait to get my V4/Revolution stuff.
the diagram off the pin is to find on robotis.
The dynamixal has 3 wires, power gnd and signal. The signal wire is half duplex bidirectional. The protocol is rs485. The ezb simulates the protocol on pin D18. The new ARC has servo selection ports for AX00 to AX50
You can continue to use standard servos with the dynamixal as well.
Thanks for the info DJ. Will this ever find it's way to the V3?
No, the v3 is maxed to its current potential. Literally there are no free CPU cycles left after processing commands and bit banging 20 servo/PWM positions
That's understandable. I've had tons of fun with the V3 since I got it. Thanks for all of the answers.
OMG, OMG, this is fantastic news! This is literally BIG news. Large robot ideas are flowing. Thanks again for the continued hard work and continued dedication.
Looking at the line of servos they make will there be support for all their servos, or just the AX-12?
Edit: I see there are two types, the TTL version and the RS485.
Awesome Dj! You implementation this faster than I imagined. Khudos. Running 50 Robotis Dynamixel servos from D18 digital pin is awesome and leaves all those other pins open for the fun stuff.
Will there be tutorials on how to read the feedback from them? I imagine you'd control them with the ARC controls but, from the scripting side of it, would that use serial commands?
Amazingly fast response to implement the Dynamixel 's protocol into the EZ-B V4 flagship! Standing "O" for DJ and team. At 37$ in bulk and the high torque ratings etc.... this motor is a game changer for larger bots.....now if Dynamixel can downsize the package , even smaller bots can be happy! .....its getting exciting!
How many dynamixels can it operate simultaneously?
PS I'm willing to send power from my 7.5v 46a power supply, which I'm sure will be necessary for my 24 DOF robot.
Hello @Zxen
ARC can control up to 99 Dynamixel servos.
Edit They will all be controlled by the D5 pin. Only one signal pin is needed as they Dynamixels are chain-able.
But as you surmised, the power supply will quickly become the limiting factor.
One thing to note is that although Dynamixels can operate at a lower voltage (>6V) they do suffer from communication errors if the voltage is not in the 9 to 12VDC range. At least this is what we found for the AX-12A Dynamixels. I believe that most roboticists use an 11.1V LiPo to power them.
To expand on the other questions you posted to the new thread.
Yes you are likely going to exceed the fuse protection on the ez-b using 24 dynamixels. It's probably a good idea to breakout the power lines and run them back to the battery with their own fuse protection.
I'd say since you have 24 servos it'd probably be ok to breakout the power wires for 4 sets of 6 Dynamixel servos and run them back to the battery (with fuse protection of course).
I thought this was removed in one of the latest updates , and only supported via a plug in?
Thanks Jeremie. I can easily get a higher voltage power supply.
You seem to know about dynamixels. Are they worth the expense? I need around 40 kg.cm to lift (tilt) and rotate (pan) each shoulder alone in my life size, six foot tall humanoid, but I don't need this much power in the neck, elbows, wrists, etc. Also, I want them to hold their position without requiring power.
I'm currently using Power HD 1235MG servos which can manage 40 kg.cm at 7.5v, but they are really loud, and they do not have failsafe holding brakes in them, so they overheat when there is no pulse as they try to maintain their position, then the arms come crashing down as soon as the power is cut. This also means the arms punch you in the face as soon as you turn the power back on. This can easily break your nose or kill a child.
I therefore need sensible servos that have holding brakes, or strong enough gearing to withstand gravity.
My i00600 Torxis servos have 115 kg.cm of torque, and these would probably jack up a car, but when combined as a tilt pan system they are the combined size of a large human head. No good for wrists, elbows, shoulders or anything human. But they do not rotate at all unless there is a pulse and power going to them. They are rock solid when there is no power or no pulse. This is vital.
The other problem of course is that all of these servos are rectangular, which makes me consider these servos but I don't know how to rig them to the ezb v4:
http://www.americanmotiontech.com/Products/ProductDetail.aspx?category=5&model=DCM50207D-1000
Then I could buy a failsafe brake for each servo like this one: http://www.alibaba.com/product-detail/dc-motor-electric-brake_1544631364.html?spm=a2700.7724838.8.29.zAXTzP&s=p
I hate to have to go to all this trouble to do what is absolutely essential in any robot. But nobody makes things properly.
What do you think? Would dynamixel adhere to most of these conditions?
I called Trossen Robotics to ask about dynamixel servos and found out that they are manufactured by Robotis. Anyway, they told me that dynamixels do not hold their position, and do not plug into microcontrollers using PWM. This last part seemed like misinformation but I don't doubt they they will jitterheat or crash like all the other hobby servos Ive ever tested.
I wish someone would tell me how to achieve these essential tasks easily.
Does anyone know why car windows hold their position so well? Stepper motors don't have internal brakes, do they?
I know why car windows hold their position.... Google worm gear....
Zxen, Trossen Robotics has provided incorrect information regarding EZ-Robot product specifications. I believe they are unaware that the EZ-B v4 can control more than one type of servo. The EZ-B v4 controls Dynamixel v1/v2 and PWM servos simultaneously.
I do not know what Trossen Robotics meant by "They do not hold their position". All Dynamixel servos (or all servos for that matter) hold their position, which is what servos are meant to do. Whether PWM or serial communication, the servo is instructed to move into a position and that position until instructed to do otherwise.
As Jeremie had mentioned, ensure your robot has correct power source and Dynamixel is a great choice for high precision.
No prob, well I don't have much experience with six foot tall Humanoids lol but I can probably help with your decision making process a bit.
I don't feel that your Robot would benefit from Dynamixels in particular unless you are looking for a specific range of motion (greater than 180 degrees) and you want an extremely stream-lined wiring system with a single signal wire. Otherwise, you'll likely get much more for your money going with Large hobby servos. The Dynamixels that are more suited for large robots are quite expensive.
Budget is what usually constrains most of us on projects like these. I believe in the inMoov project uses large hobby servos attached to worm gears (and Boris even added springs) to hold appendages in position even after power down.
I don't believe that using Dynamixels (without modification) would allow for this type of feature, you would likely see the same result of the arms falling down after power is removed.
Electronic brakes are a great idea in concept but I believe they are very power hungry and would draw all kinds of power when activated. Not ideal if you want to move to a battery operated system one day.
A number of people in the ezrobot community (@Richard R, @bhouston, @D.cochran, @Aerius, @rentaprinta, and I'm likely forgetting many others) have a ton of life size Humanoid building experience so I think I'll have to defer to them to share their experiences with you.
@Jeremie has a point... look at the inMoov project to see how to do a life size humanoid... Especially @rentaprinta's and Bob Houston... I think they have the benchmark of inMoov's
I have seen inmoov, which is impressive. But I prefer my shoulders to be more basic like this: https://www.youtube.com/watch?v=aUPDsbbNUjM
Clearly I haven't installed any holding brakes on the servos. After I filmed this, I tested the holding, and a Hitec 645MG in the elbow caught fire. I switched off the microcontroller and the arm crashed down towards the centre of the Earth. After I replaced it, my friend wanted to see, so I turned it back on and it smashed him in the face.
I have finally figured out how to rig a spring against an electromagnet that activates when there is a pulse to any given servo, so this will eventually result in perfectly amateur holding brakes (another shipment of copper wire reels is on it's way), but I just hoped that there was a servo like the Torxis i00600 that was a lot smaller and simply didn't move without being powered.
I was told that car windows use stepper motors, so even now, after watching many videos of their operation, I keep wondering if all stepper motors are like that: able to hold their position against my arm pressing down hard when I drive. The semi-circular toothed mechanism pressing against the stepper cog doesn't seem like it would do anything to lock it, so either steppers are all internally self locking, there are extra gears inside car window steppers to create a lot of resistance, or there is a holding brake on all car power window motors.
I would definitely like to see any examples of full scale humanoids people have built, especially how they have solved the holding problem. If its worm drives, then I'd be keen to see the dancing speed and hear the volume of the motors together.
To answer your question from the other duplicate thread which has been deleted, you can connect 99 Dynamixels to the EZ-B v4 + 22 PWM Servos.
The power providing through the EZ-B v4 will be limited. However, the number of servos for your custom application will determine how many servos based on current load. The EZ-B v4 datasheet defines the current capacity.
By their nature (internal magnetic cogs, held in place by electromagnetic coils) Stepper motors do not have any holding power without applied power, unless they are geared. In my experience, true geared stepper motors are rare usually you see steppers with a worm gear drive attached. The major problem with steppers, when it comes to robotics, is that they don't have any positional feedback built-in like servos do. You have to add your own in the form of a potentiometer, break-beam encoder, or a limit switch.
Window motors from vehicles are usually DC gear motors, but standards may have changed over the years. I'd like to see if newer vehicles have geared steppers installed instead.
Thanks for the current load reference, DJ, but I never risk my microcontrollers by running the servo power through them. I always use at least a 46 amp power supply and only use the microcontoller power for the pulse lines.
Here is a link I found to how industrial servo holding brakes are set up, but I still need to find smaller and cheaper ones: http://www.applied-motion.com/news/2012/07/did-you-know-holding-brakes-step-motors
Jeremie, thanks for letting me know that the stepper motors in car windows contain hidden worm drives. That's what Richard R said but I didn't believe him. Sorry Richard. It makes sense, though. They're extremely slow and they sound like worm drives.
I want my robot to be able to dance and do karate at least as well as a human (I'm going to attach him to a wall, floor or ceiling so he won't be doing any running or back flips except on the spot), so there's no way I'll be using worm drives.
Dynamixel series linking seems like nothing more than a neat wiring solution as far as I can see, but they do include position memory wiring in 40 kg.cm+ servos. Even so, they are annoyingly rectangular with an off-centre shaft like every other hobby servo, so I still need to design and manufacture robust housing to correct this major design setback. And the price of dynamixels is higher than some round flange, center-shaft industrial level servos, so I would need to weigh it up. Hopefully I won't need to weigh up anything because after literally thousands of hours of searching the ENTIRE internet (it seems), there will be an existing product that just makes sense.
@Zxen, I'm using both a car window motor and a windshield wiper motor in my robot arm. The both are simple DC motors (not stepper motors), have worm gears and and are nearly silent. They can be found in many torque strengths and speeds. Most are great for holding position with no power (I did however find one once that did not). Visit the Robot Marketplace for a wide choice of motors. The Robot Marketplace
As mentioned you'll have to find a way to attach a pot or encoder for feedback to get speed and position control and a motor controller like a Sabertooth with a Kangaroo X2 attached.
Here's a video I made of the Car Window worm gear motor running my arm carriage system:
Here's another video where I used a windshield Wiper worm gear motor used for the elbow of my arm: