The OpenServo

Discussions regarding building a walking robot at home. Most of the robots participating at Robo-One competitions are custom fabricated.
41 postsPage 2 of 31, 2, 3
41 postsPage 2 of 31, 2, 3

Post by DerekZahn » Fri Dec 22, 2006 5:27 pm

Post by DerekZahn
Fri Dec 22, 2006 5:27 pm

I think this effort is really great! But I don't quite understand how you can get 19 DOFf for $100. That's $5 per DOF and I don't see how you can get a servo and build an OpenServo board for it for a total of $5. Care to fill us in?
I think this effort is really great! But I don't quite understand how you can get 19 DOFf for $100. That's $5 per DOF and I don't see how you can get a servo and build an OpenServo board for it for a total of $5. Care to fill us in?
DerekZahn offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by RobotJay » Fri Dec 22, 2006 6:09 pm

Post by RobotJay
Fri Dec 22, 2006 6:09 pm

Automation makes things much cheaper. Asian automation makes things EVEN cheaper.

$1.78 per DOF for servo hardware, not in standard hobby servo casing.
+
$1.05 per DOF electronics.
+
All components purchased in bulk (in excess of 1000 units each.)
+
Cheap Asian Labor
----------------------------------------------------------------------------
sub-$100 biped

You can save a lot of money by using weaker motors and by using the frame itself to hold the motor parts. By not using hobby servos as actuators, you can make the design smaller to allow weaker motors with slower speed gearboxes to get the job done.
Automation makes things much cheaper. Asian automation makes things EVEN cheaper.

$1.78 per DOF for servo hardware, not in standard hobby servo casing.
+
$1.05 per DOF electronics.
+
All components purchased in bulk (in excess of 1000 units each.)
+
Cheap Asian Labor
----------------------------------------------------------------------------
sub-$100 biped

You can save a lot of money by using weaker motors and by using the frame itself to hold the motor parts. By not using hobby servos as actuators, you can make the design smaller to allow weaker motors with slower speed gearboxes to get the job done.
RobotJay offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 25
Joined: Thu Nov 30, 2006 1:00 am

Post by DerekZahn » Fri Dec 22, 2006 6:20 pm

Post by DerekZahn
Fri Dec 22, 2006 6:20 pm

Wow, that's very impressive! Good luck with this project!
Wow, that's very impressive! Good luck with this project!
DerekZahn offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by RobotJay » Fri Dec 22, 2006 6:52 pm

Post by RobotJay
Fri Dec 22, 2006 6:52 pm

Also, a lot of the cost to make a servo comes from the price of the motor. Most digital high-end servos use coreless motors which are around 15 times more expensive than regular ferrite cored motors. Because they have lower rotary inertia, coreless motors have the ability to switch directions very rapidly, which is very necessary if you are trying to steer an R/C plane out of a tail spin. But in the case of bipedal robotics, the speed loss is mostly un-noticeable. Any small noticeable difference is easily justified by the lower cost.
Also, a lot of the cost to make a servo comes from the price of the motor. Most digital high-end servos use coreless motors which are around 15 times more expensive than regular ferrite cored motors. Because they have lower rotary inertia, coreless motors have the ability to switch directions very rapidly, which is very necessary if you are trying to steer an R/C plane out of a tail spin. But in the case of bipedal robotics, the speed loss is mostly un-noticeable. Any small noticeable difference is easily justified by the lower cost.
RobotJay offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 25
Joined: Thu Nov 30, 2006 1:00 am

Post by Joe » Fri Dec 22, 2006 10:57 pm

Post by Joe
Fri Dec 22, 2006 10:57 pm

These are neat points. When I first looked at the OpenServo project, I was initially excited, and then very quickly disheartened, because it seemed to me that it was addressing the wrong problem. The main problems with standard servos (in my view) are:

1. The form factor is all wrong for use as a robot joint. For example, there is an output shaft on only one side; it should have a through-shaft instead. For another example, the cables are not pluggable at the unit, so when you need to swap out a servo, you have to reroute cables.

2. The expensive and difficult part isn't the electronics (or so it seems to me) but the rest of the hardware. You need a good motor and a good gear train, all in a rugged yet compact and lightweight housing. If any of the motor, gears, or housing are junk, then the whole servo is junk regardless of the electronics. And it's much harder to build your own motor than it is to build your own circuit board.

What I was hoping, when I first heard about OpenServo, was that they were developing completely new servos, including hardware. Something like my cheap servo alternative idea, perhaps.

But maybe I gave up too soon, and replacing the electronics of existing servos was just the first step. If you can produce a servo with the quality of a $120 Hitec (or $45 Robotis) servo for only $5, the world will beat a path to your door!

Good luck,
— Joe
These are neat points. When I first looked at the OpenServo project, I was initially excited, and then very quickly disheartened, because it seemed to me that it was addressing the wrong problem. The main problems with standard servos (in my view) are:

1. The form factor is all wrong for use as a robot joint. For example, there is an output shaft on only one side; it should have a through-shaft instead. For another example, the cables are not pluggable at the unit, so when you need to swap out a servo, you have to reroute cables.

2. The expensive and difficult part isn't the electronics (or so it seems to me) but the rest of the hardware. You need a good motor and a good gear train, all in a rugged yet compact and lightweight housing. If any of the motor, gears, or housing are junk, then the whole servo is junk regardless of the electronics. And it's much harder to build your own motor than it is to build your own circuit board.

What I was hoping, when I first heard about OpenServo, was that they were developing completely new servos, including hardware. Something like my cheap servo alternative idea, perhaps.

But maybe I gave up too soon, and replacing the electronics of existing servos was just the first step. If you can produce a servo with the quality of a $120 Hitec (or $45 Robotis) servo for only $5, the world will beat a path to your door!

Good luck,
— Joe
Joe offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 204
Joined: Tue Sep 05, 2006 1:00 am

Post by ginge » Sun Jan 07, 2007 12:07 am

Post by ginge
Sun Jan 07, 2007 12:07 am

Hi all, I have just found this thread, and as a developer of the OpenServo project, thought I would chip in.

Joe: The short term goal of the OpenServo project is to develop replacement internal hardware for an existing analogue servo. It is a relatively new project which RobotJay recently joined, fabricated some of the boards we designed and kindly spread the word. We are greatly in debt to RobotJay.

Once we have implemented all features that people need, we will in due course be looking at the mechanical hardware. We have (behind the scenes) discussed creating a new site and domain for the purpose of fabricating servo hardware, the problem we have is the lack of any agreement on what servo should be created. It seems everyone wants a different thing!

I personally am looking forward to the mechanical hardware phase, but it won't be anytime soon.

I am sorry you were disappointed with the project, short of providing the moon on a stick, I think we are progressing nicely with the features.

limor: The 2x4 connector is optional. You can use 1x4 connector that will allow you to take the daisy with only 4 wires. As RobotJay said, 4 are only used once for bootstrapping. The picture that RobotJay supplied was using only 4 wires, although they were paired together to allow greater current capacity. so no, 8 are not needed. You are correct that there is no concensus. I don't use the servos in bipeds of hexapods, so I have a different wiring scheme. It all depends on your particular project. We put no particular focus on any end user application, our goal is to improve those crapola servos to something that is actually useful.

Cheers,

Barry
Hi all, I have just found this thread, and as a developer of the OpenServo project, thought I would chip in.

Joe: The short term goal of the OpenServo project is to develop replacement internal hardware for an existing analogue servo. It is a relatively new project which RobotJay recently joined, fabricated some of the boards we designed and kindly spread the word. We are greatly in debt to RobotJay.

Once we have implemented all features that people need, we will in due course be looking at the mechanical hardware. We have (behind the scenes) discussed creating a new site and domain for the purpose of fabricating servo hardware, the problem we have is the lack of any agreement on what servo should be created. It seems everyone wants a different thing!

I personally am looking forward to the mechanical hardware phase, but it won't be anytime soon.

I am sorry you were disappointed with the project, short of providing the moon on a stick, I think we are progressing nicely with the features.

limor: The 2x4 connector is optional. You can use 1x4 connector that will allow you to take the daisy with only 4 wires. As RobotJay said, 4 are only used once for bootstrapping. The picture that RobotJay supplied was using only 4 wires, although they were paired together to allow greater current capacity. so no, 8 are not needed. You are correct that there is no concensus. I don't use the servos in bipeds of hexapods, so I have a different wiring scheme. It all depends on your particular project. We put no particular focus on any end user application, our goal is to improve those crapola servos to something that is actually useful.

Cheers,

Barry
http://www.headfuzz.co.uk
Robotics and Electronics hacks.
ginge offline
Newbie
Newbie
User avatar
Posts: 6
Joined: Sat Jan 06, 2007 1:00 am

Post by billyzelsnack » Sun Jan 14, 2007 5:27 am

Post by billyzelsnack
Sun Jan 14, 2007 5:27 am

You can get the TowerPro MG995 (11.2KG) servo here at a 1 unit price of $8.

https://www.unitedhobbies.com/UNITEDHOB ... dProduct=2

I have ordered from them in the past and shipping cost is pretty reasonable.

btw. If you're in the market to buy knock-off deans connectors.. This is the place to do it.
You can get the TowerPro MG995 (11.2KG) servo here at a 1 unit price of $8.

https://www.unitedhobbies.com/UNITEDHOB ... dProduct=2

I have ordered from them in the past and shipping cost is pretty reasonable.

btw. If you're in the market to buy knock-off deans connectors.. This is the place to do it.
billyzelsnack offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 618
Joined: Sat Dec 30, 2006 1:00 am

Post by limor » Sun Jan 14, 2007 4:21 pm

Post by limor
Sun Jan 14, 2007 4:21 pm

limor: The 2x4 connector is optional. You can use 1x4 connector that will allow you to take the daisy with only 4 wires. As RobotJay said, 4 are only used once for bootstrapping. The picture that RobotJay supplied was using only 4 wires, although they were paired together to allow greater current capacity. so no, 8 are not needed. You are correct that there is no concensus. I don't use the servos in bipeds of hexapods, so I have a different wiring scheme. It all depends on your particular project. We put no particular focus on any end user application, our goal is to improve those crapola servos to something that is actually useful.


I was taken back a bit by this 4-wire requirement as it doesn't really put OpenServo in the path of least resistance. Making use of the existing 3 wires that come with every servo would be on my top-10 priority list. It would mean, no dremelling and no extra parts to purchase (ok, you would still need a female Hitec/Futaba connector attached to every servo to enable daisy-chain).
limor: The 2x4 connector is optional. You can use 1x4 connector that will allow you to take the daisy with only 4 wires. As RobotJay said, 4 are only used once for bootstrapping. The picture that RobotJay supplied was using only 4 wires, although they were paired together to allow greater current capacity. so no, 8 are not needed. You are correct that there is no concensus. I don't use the servos in bipeds of hexapods, so I have a different wiring scheme. It all depends on your particular project. We put no particular focus on any end user application, our goal is to improve those crapola servos to something that is actually useful.


I was taken back a bit by this 4-wire requirement as it doesn't really put OpenServo in the path of least resistance. Making use of the existing 3 wires that come with every servo would be on my top-10 priority list. It would mean, no dremelling and no extra parts to purchase (ok, you would still need a female Hitec/Futaba connector attached to every servo to enable daisy-chain).
limor offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by smile_nik » Mon Jan 15, 2007 8:30 am

Post by smile_nik
Mon Jan 15, 2007 8:30 am

Hi All

I see a lot of post mention Bioloid servos at price 45$. Where you get these prices? I found Bioloid servos around 60$
Hi All

I see a lot of post mention Bioloid servos at price 45$. Where you get these prices? I found Bioloid servos around 60$
smile_nik offline
Robot Builder
Robot Builder
User avatar
Posts: 13
Joined: Sun Jan 07, 2007 1:00 am

Post by billyzelsnack » Tue Jan 16, 2007 4:29 am

Post by billyzelsnack
Tue Jan 16, 2007 4:29 am

billyzelsnack offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 618
Joined: Sat Dec 30, 2006 1:00 am

Post by Robo1 » Tue Jan 16, 2007 1:22 pm

Post by Robo1
Tue Jan 16, 2007 1:22 pm

I will post here as some people from the open servo site have answered before.

will the board work with kondo HV servos these run at 12V so not standard. will the board work with different components. really like what you people are up to.

bren
I will post here as some people from the open servo site have answered before.

will the board work with kondo HV servos these run at 12V so not standard. will the board work with different components. really like what you people are up to.

bren
Robo1 offline
Savvy Roboteer
Savvy Roboteer
Posts: 501
Joined: Fri Jun 30, 2006 1:00 am
Location: UK - Bristol

Post by RobotJay » Tue Jan 16, 2007 4:36 pm

Post by RobotJay
Tue Jan 16, 2007 4:36 pm

Bren,

I just recently received an ICS servo from Limor, and I will attempt an install of the OpenServo PCB. As far as I can tell, +12v will be no problem. As long as the motor does not draw more than 3A at stall, it won't burn out the MOSFETs. All the other components are run from a 5v regulator, which can handle voltages up to 20v.

Not only can the OpenServo PCB be used to replace standard servo PCBs, but it can also be used to create your own servos. All it takes is a gearhead motor, a 4.7k Ohm linear-type potentiometer, and an OpenServo PCB. If, for some reason, you needed to be allowed a higher current draw, you can just drop in a different (probably slightly more expensive) MOSFET, and you could drive a motor with a lot more power.

To discuss Limor's concern over the necessary 4-wires: It is entirely possible to use only 3 wires. In fact, I am almost certain that we can even use the same PCB, we just would need to write new firmware for it. I think we might even be able to do something like this: if the servo doesn't receive an I2C command after 3 seconds, then it'll go into standard PWM mode, and only accept PWM position commands. Ultimately, I want the OpenServo to be an all-around replacement for other more expensive digital servos. If someone just needs a cheap digi, they can use these. If someone needs more precise control of their servos, they can use these. It's being worked on.

The biggest problem with the OpenServo is that none of us are getting paid to work on it. All of the people involved have day jobs, and only work on the OpenServo in their leisure time, so progress is slow. But the more people we have involved, the faster new features will be added.

The OpenServo has 2 main advantages over other digital servos:
1) Current sensing resistor on-board. When the servo begins to move a load, it draws a certain amount of current. The larger the load, the more current the servo will draw. If you biped is walking, and the foot encounters an obstacle, then there will be a current "spike" from the involved servos. You could simply write code for "If a servo's current spikes, stop motion and return to the pose where there was no current spike." ALSO, knowing how much current your servo is using will allow you to know precisely how much battery power you are using.
2) Open architecture. Students and hobbyists can learn about closed-loop motion control without having to worry about copyright infringement, resin covering important parts, etc.

Anyways, the OpenServo project is, and will always be, a work in progress. Anyone can take what they need from it. That's the beauty of Open Information Sharing.
Bren,

I just recently received an ICS servo from Limor, and I will attempt an install of the OpenServo PCB. As far as I can tell, +12v will be no problem. As long as the motor does not draw more than 3A at stall, it won't burn out the MOSFETs. All the other components are run from a 5v regulator, which can handle voltages up to 20v.

Not only can the OpenServo PCB be used to replace standard servo PCBs, but it can also be used to create your own servos. All it takes is a gearhead motor, a 4.7k Ohm linear-type potentiometer, and an OpenServo PCB. If, for some reason, you needed to be allowed a higher current draw, you can just drop in a different (probably slightly more expensive) MOSFET, and you could drive a motor with a lot more power.

To discuss Limor's concern over the necessary 4-wires: It is entirely possible to use only 3 wires. In fact, I am almost certain that we can even use the same PCB, we just would need to write new firmware for it. I think we might even be able to do something like this: if the servo doesn't receive an I2C command after 3 seconds, then it'll go into standard PWM mode, and only accept PWM position commands. Ultimately, I want the OpenServo to be an all-around replacement for other more expensive digital servos. If someone just needs a cheap digi, they can use these. If someone needs more precise control of their servos, they can use these. It's being worked on.

The biggest problem with the OpenServo is that none of us are getting paid to work on it. All of the people involved have day jobs, and only work on the OpenServo in their leisure time, so progress is slow. But the more people we have involved, the faster new features will be added.

The OpenServo has 2 main advantages over other digital servos:
1) Current sensing resistor on-board. When the servo begins to move a load, it draws a certain amount of current. The larger the load, the more current the servo will draw. If you biped is walking, and the foot encounters an obstacle, then there will be a current "spike" from the involved servos. You could simply write code for "If a servo's current spikes, stop motion and return to the pose where there was no current spike." ALSO, knowing how much current your servo is using will allow you to know precisely how much battery power you are using.
2) Open architecture. Students and hobbyists can learn about closed-loop motion control without having to worry about copyright infringement, resin covering important parts, etc.

Anyways, the OpenServo project is, and will always be, a work in progress. Anyone can take what they need from it. That's the beauty of Open Information Sharing.
RobotJay offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 25
Joined: Thu Nov 30, 2006 1:00 am

Post by DerekZahn » Tue Jan 16, 2007 4:57 pm

Post by DerekZahn
Tue Jan 16, 2007 4:57 pm

A couple of other uses for the current sensing:

* To help determine "natural" poses by trying to minimize current use.
* Controller software can look for extended periods of high current use and issue a warning to help avoid servo overheating.

I decided to add some current monitoring to Bing in order to get some of these advantages (pretty soon I'll start wondering why I didn't just replace the Hitec boards with OpenServo boards!)

For higher current, would it be possible to substitue the IRF7389 for the 7309?
A couple of other uses for the current sensing:

* To help determine "natural" poses by trying to minimize current use.
* Controller software can look for extended periods of high current use and issue a warning to help avoid servo overheating.

I decided to add some current monitoring to Bing in order to get some of these advantages (pretty soon I'll start wondering why I didn't just replace the Hitec boards with OpenServo boards!)

For higher current, would it be possible to substitue the IRF7389 for the 7309?
DerekZahn offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by RobotJay » Tue Jan 16, 2007 5:08 pm

Post by RobotJay
Tue Jan 16, 2007 5:08 pm

The IRF7389 would be a drop-in replacement for the 7309. The price though, is 4 times as much (through DigiKey, at least).

And yes. There are a TON of uses for the current sense ability. I am certain that eventually it will become standard on most digital servos.
The IRF7389 would be a drop-in replacement for the 7309. The price though, is 4 times as much (through DigiKey, at least).

And yes. There are a TON of uses for the current sense ability. I am certain that eventually it will become standard on most digital servos.
RobotJay offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 25
Joined: Thu Nov 30, 2006 1:00 am

Post by DerekZahn » Tue Jan 16, 2007 5:15 pm

Post by DerekZahn
Tue Jan 16, 2007 5:15 pm

Yeah, in quantity 10 they are 2.65 instead of 0.85 (US$), but 3A stall isn't enough for high-performance servos. Nice to know there's an alternative that could be dropped in for high-end servos though, even if it adds $3.60 per board.
Yeah, in quantity 10 they are 2.65 instead of 0.85 (US$), but 3A stall isn't enough for high-performance servos. Nice to know there's an alternative that could be dropped in for high-end servos though, even if it adds $3.60 per board.
DerekZahn offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

PreviousNext
PreviousNext
41 postsPage 2 of 31, 2, 3
41 postsPage 2 of 31, 2, 3
cron