Switching on servo only when moving

Hi All,

I am developing an installation powered by a battery and I am using servo's (2 now, 4 in a later stage) to open and close doors/hatches. I have worked my way there from the first servo examples on the arduino site and all works fine, but there are two things that bother me:

1) when the servo moves to its end position, it stays there but remains moving back and forth ever so slightly. It's not even really noticable in the movement, but there is a little sound and a tiny bit of movement. 2) That means that there is still power applied to the servo, while the servo itself does not move, or shouldn't :-)

Is it possible to "switch on" power to a servo, then move it to its next position, then "switch off"? The hatch it is moving is very light and will easily be held in place passively by the servo once it is in its position. I am using a very small, low power hobby servo.

I tried using the method: attach, move, detach from the servo library. But, everytime I use attach, the servo seems to first jump to a "zero" or "default" position, which is not what I want. I want the thing to move from closed (position 90) to open (position 180) and back in a smooth fashion, then switch off to reduce power usage. But I can't figure it out.

Any tips?

You appear to have already identified the show-stopping issues.

I would use a DC gear motor rather than a servo for an application as you describe. Note that you can "downgrade" a servo to be a simple gear-motor by disabling the feedback pot. Or by bypassing all the active circuit completely and connect/control the motor directly. Note that you will need some separate indication of position (so you know when the hatch is open and when it is closed.)

Hm, I thoughy/hoped that I had missed something with the servo's, but indeed it may be better/easier to use dc motors instead. Maybe use a worm gear or gearbox to convert the rotating motion into vertical lineair motion...

back to the drawing board, but thanks for the insight!

What is the power source for the servo and what pins are you using for the servo control? If you code contains any delays that might affect servo operation. Does the servo have any slight movement at any other positions?