Jump to content
 

No-stall servo point motor (servo hack)


AndyID
 Share

Recommended Posts

MOD: Please merge with an existing topic if appropriate.

 

Here is yet another servo point-motor hack. As you can tell from the pix, I'm not kidding when I say "hack"! I would not go as far as calling it as a prototype - it's more a "proof of concept". I have a version that uses 3D printed parts and a much smaller micro-switch rather than the finely crafted plywood and gigantic micro-switch you see here. The "production" version has the micro-switch mounted alongside the servo body rather than at right angles to it, and the actuator bears on the underside of the cam, but it's a lot easier to see what is going on with this version.

 

post-25691-0-75821100-1425956135.jpg

 

post-25691-0-01879900-1425956159.jpg

 

"But, how does it work?" I hear you ask - or more likely you don't.

 

This is how you connect it.

 

post-25691-0-30869400-1425956196.gif

 

It's very similar to a light that's controlled by two switches. When you flip the panel switch, the motor starts and keeps going until the cam flips the micro-switch. When that happens, as both motor connections are now at the same potential (either 0 volts or plus volts), the motor stops. When you flip the switch the other way, the motor reverses until the micro-switch flips in the other direction at the other end of the cam rotation.

 

The micro-switch does not immediately flip when the cam starts to rotate because its actuator arm is pressing against a segment of the cam that has constant radius and positions the actuator at its mid-point. This works because of the hysteresis produced by the over-center "snap switch" inside the micro-switch. The actuator always has to move beyond the mid-point of its travel before it will snap into the other state.

 

The advantage of this method is that there is no current draw at all when the motor reaches the end points, and it is completely immune to electrical interference. Also, no momentary switches are required, so the panel switch position indicates the point setting.

 

It works best on 1.5 volts. To make it easy to set up, I cut the end stops off the final gear in the servo, but that is not essential. For automation, a relay or electronic buffer could be used instead of the panel switch.

Edited by AndyID
  • Like 1
Link to post
Share on other sites

Andy

 

Please correct me if I misunderstand, but have you removed (of at least disconnected) the PCB from the servo, and are you simply switching the motor using the local microswitch as a limit switch to avoid stalling?

 

If so, it's an elegant (if, forgive me, unsophisticated) solution.

 

Thanks

Simon

Link to post
Share on other sites

Hi Simon,

 

You have it right. The electronic bits are discarded. The bits of the servo that are retained are the motor and the gear train. The lack of sophistication is, I think, a major advantage! (Please see my blog for more info. on servos) The only tricky bit is positioning the microswitch actuator relative to the cam, but that can be done either by bending the actuator arm slightly, or adjusting the mounting of the microswitch.

 

I'll try to post some photos of the "production" version next week, after I take care of my tax return. I also have some ideas about how to construct a much simpler version that many people would be able to construct quite easily, but that still needs a bit of testing and explaining.

 

Best

Andy

Link to post
Share on other sites

Hi Gordon,

 

The throw is determined by the "length" of the constant radius bit of the cam. To increase the throw, you increase the angle between the low and high bits of the cam.

 

A bit more explanation: The cam has three "levels". At the low point (smallest radius) the "normally closed" contact must be connected to the common terminal. At the high point (greatest radius) the "normally open" contact must be connected to the common terminal. When the actuator is pressing against the "middle level" (a constant radius section of the cam that can be as long or short as you like) thanks to the hysteresis, the microswitch contacts remain in whatever state they were in before the motor started turning the cam.

 

If I'm not explaining this very well, let me know and I'll post some drawings or something. I'd like this to be well understood because I think lots of people would be able to build inexpensive and very reliable point motors based on this principle.

 

Andy

Link to post
Share on other sites

Hi Gordon,

 

The throw is determined by the "length" of the constant radius bit of the cam. To increase the throw, you increase the angle between the low and high bits of the cam.

 

A bit more explanation: The cam has three "levels". At the low point (smallest radius) the "normally closed" contact must be connected to the common terminal. At the high point (greatest radius) the "normally open" contact must be connected to the common terminal. When the actuator is pressing against the "middle level" (a constant radius section of the cam that can be as long or short as you like) thanks to the hysteresis, the microswitch contacts remain in whatever state they were in before the motor started turning the cam.

 

If I'm not explaining this very well, let me know and I'll post some drawings or something. I'd like this to be well understood because I think lots of people would be able to build inexpensive and very reliable point motors based on this principle.

 

Andy

 

I see what you're saying.

The middle cam level coincides with the switching point of the microswitch, effectively half way through the hysteresis, so in one direction it is effectively held 'off' and in the other direction it is held 'on' during that portion of the travel.

Link to post
Share on other sites

I see what you're saying.

The middle cam level coincides with the switching point of the microswitch, effectively half way through the hysteresis, so in one direction it is effectively held 'off' and in the other direction it is held 'on' during that portion of the travel.

That's a good way of explaining it. Thanks!

Link to post
Share on other sites

This is the version with 3D printed parts.

 

The throw is adjusted by sliding the eccentric that sits in grooves on the top of the cam.

 

I still need modify the thing the that looks like a tennis racquet so that I can attach a piece of piano wire to poke through the baseboard. The axis of the wire will intersect the fulcrum screw at the "handle" end.

 

I should have used a tripod to take these pics, but I can't remember where I put it!

 

post-25691-0-40715100-1426872564_thumb.jpg

post-25691-0-44122400-1426872576_thumb.jpg

post-25691-0-80236400-1426872593_thumb.jpg

post-25691-0-63999400-1426872605_thumb.jpg

post-25691-0-52926100-1426872624_thumb.jpg

  • Like 2
Link to post
Share on other sites

The thing that looks like a tennis racquet is called a banjo by engineers, for obvious reasons.

But wouldn't that imply it has a circular aperture? This thing is elongated. (Not that it really matters! Banjo works for me :) )
Link to post
Share on other sites

I'm not sure it is - a banjo is a pipe fitting in which the pipe is soldered into a hole in the "handle" (or, I suppose, "neck") and a hollow bolt goes through the hole into typically a cylinder head, or something similar, that needs an oil supply.

 

In any case, I'm much interested by the printed parts, this is an approach that would work well with "unadulterated" servos too, as it offers adjustable stroke, and a microswitch for crossing polarity.

 

Will you be selling them?

 

Best

Simon

Link to post
Share on other sites

Will you be selling them?

Hi Simon,

 

Yes it would work with a standard servos, although I thought the throw adjustment by adjusting the pulse widths was supposed to be a "feature" (don't tell anyone, but personally, I think it's just a PITA!)

 

I had thought of putting the printed bits on Ebay (without the servo) as a sort of kit, but I'm not sure about the economics. The 3D printer is not terribly fast, and, like any machine, it needs a "minder", so I might end up having to charge far too much. Mass production might also be an option, but that means starting a real business, and I feel disinclined to try that again :)

 

Then there's the shipping cost. I'm on US Pacific time.

 

Do you have a 3D printer, or do you know anyone that does? I could send you the files and you could make the bits locally.

 

The design still needs a little refining. I tried to use the screw supplied with the servo to attach the eccentric, but I'd like to see a longer screw there so I can beef-up the eccentric in that area and put a washer under the screw-head. Also, as I mentioned already, exactly how the banjo attaches to the piano-wire is a bit of a mystery, but that should not be hard to solve.

 

Best

A

Link to post
Share on other sites

Yes it would work with a standard servos, although I thought the throw adjustment by adjusting the pulse widths was supposed to be a "feature" (don't tell anyone, but personally, I think it's just a PITA!)

 

 

 

There are a number of reasons why it's useful to allow a servo it's full travel and then use mechanical means to adapt it to the required throw.

 

- Mitigating the effect of any twitch in the servo.

- Better resolution of slow speed operation by slowly changing the pulse width from one exrteme to the other.

- Simple control circuit with just two switchable pulse widths

Link to post
Share on other sites

There are a number of reasons why it's useful to allow a servo it's full travel and then use mechanical means to adapt it to the required throw.

 

- Mitigating the effect of any twitch in the servo.

- Better resolution of slow speed operation by slowly changing the pulse width from one exrteme to the other.

- Simple control circuit with just two switchable pulse widths

Yes, I completely agree. Have you tried increasing the rotation to achieve almost 180 degrees of rotation? It seems to work with the sample I have tried, but I'm not sure how consistent it will be. I'm concerned that I am pushing the servo electronics into rather non-linear response areas. It's certainly beyond the spec (such as it is!)

Link to post
Share on other sites

  • 2 years later...

BTW, don't be put-off by the fancy cam shown in the first post. You could use something as simple as a coat button with a hole drilled through the center. File a flat on the button to form a valley for the servo's actuator arm to fall into and glue a "bump" (could be the head of a pin or screw) on the edge of the button to lift the arm at the other extreme of the travel. The angle between the valley and the bump determines the amount of travel.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...