Shop OBEX P1 Docs P2 Docs Learn Events
Parallax Servo Controller #28823 Rev B question about deactivating motors not i — Parallax Forums

Parallax Servo Controller #28823 Rev B question about deactivating motors not i

robomanifestorobomanifesto Posts: 4
edited 2006-11-07 01:21 in Robotics
I am using the PSC Rev B to control 12 servo motors with a BS2P off pin #14. The code activates all the motors well in a controlled sequence.

PROBLEM: I am using a battery and voltage conditioning and have plenty of power to the servos, though I notice that irregardless of sending code to the motors or not that that when the servo controller has power and code is being sent to just one or two motors, that while the remainder of the servos are not being instructed to move, they are pulling power and holding a position of 750.

Can anyone suggest a method to deactivate power to motors (with the PSC) that I am not writing to or trying to move, so I can conserve battery power?

Comments

  • allanlane5allanlane5 Posts: 3,815
    edited 2006-06-19 02:33
    If you have any force on a servo shaft, then it will have to be refreshed to hold that position.

    If you're just using a servo as a 'modified servo' for a wheel, then I don't know how you tell
    the PSC to 'quit refreshing servo 1', for instance.
  • robomanifestorobomanifesto Posts: 4
    edited 2006-06-19 02:59
    These 180 degree servos.

    If I instruct only servo 3-6 to move for example then why do the remainder of the motors hold at center position 750 without getting code or being addressed with the PSC. It is true that if I try and move them they try and move back to center position 750.

    The servos are still drawing current while plugged in, irregardless of not having recieved any code at all and my original question stands: Can anyone suggest a method to deactivate power to motors (with the PSC) that I am not writing to or trying to move, so I can conserve battery power?

    thanks,
  • Bruce BatesBruce Bates Posts: 3,045
    edited 2006-06-19 09:24
    robomanifesto -

    If you remove power to those (ostensibly) unused servos they will no longer maintain their positive center position. Is that acceptable, or do you want them to stay in "neutral" (centered). If the latter is what you want, then the answer to your question is no, as they must consume power to maintain that positive center position.

    Regards,

    Bruce Bates

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    <!--StartFragment -->

    Post Edited (Bruce Bates) : 6/19/2006 9:42:38 AM GMT
  • robomanifestorobomanifesto Posts: 4
    edited 2006-06-19 12:56
    Thanks Bruce.

    Certainly this would work though I am looking for a software solution. Adding all those deactivating transistors would add too much hardware and code.

    I do not want them to maintain any position if they have not yet been addressed in the software. I am wanting them to just sit dead until they are addressed in the software though the PSC Rev B seems to constantly refresh a center position on the motors irregardless of being addressed to do so.

    There are times for example in this project, where I do not want to use motors at all, though having the PSC plugged in with power and no code coming from my BS2P, still consumes quite a bit of current when you add the 12 motors up.
  • Mike GreenMike Green Posts: 23,101
    edited 2006-06-19 15:50
    There really is no way you can do what you seem to want without external power switching transistors. Servo motors are designed to be powered continually and don't have built-in provisions for shutdown. Any kind of motor system (dc motor, steppers) would need some kind of power switching. DC motors and steppers control direction and speed by power switching and you'd just not power them to reduce consumption, but they require position sensing.

    One question is whether you can divide up the servos into groups and switch power to the groups rather than individually. That might save on hardware.
  • allanlane5allanlane5 Posts: 3,815
    edited 2006-06-19 18:26
    Oh, come on! Are you really saying that once you connect a servo to a PSC, that the PSC is going to position the servo somewhere, all the time?

    Isn't there an 'idle' command, to tell the PSC not to refresh a particular servo?
  • Tim-MTim-M Posts: 522
    edited 2006-06-19 18:42
    I believe both Bruce and Mike are correct, and for the reasons that they stated. It's the nature of the beast, and the way the hobby servo system has been designed.

    Tim
  • Mike GreenMike Green Posts: 23,101
    edited 2006-06-19 18:54
    There is no idle command for the PSC nor for the Scott Edwards Mini-SSC (another servo controller). If you are controlling a servo directly from a Stamp or Propellor or other programmable controller (like a PWMpal, you can set up the program to have an idle mode.
  • robomanifestorobomanifesto Posts: 4
    edited 2006-06-19 19:15
    If one is controlling a servo directly off a Basic Stamp 2 for example unless you refresh the servo it does not hold a position...or you can turn it by hand and it will not fight to return to its last programmed position...and therefore it does not pull power when code is not being sent. In this case the servo is still hooked to power and yet it is not consuming power because it is not working to hold a position.

    It would be fantastic if there were an idle command in the PSC to allow one to not have all the servos automatically refreshed constantly when they are not being used. This would be optimal for a battery operated system where conserving power is critical.

    Perhaps this is a firmware update of some sort? It appears that even when the stamp is in sleep mode that the PSC always asserts a center postion on all the motors irregardless of being coded to do so or not.
  • allanlane5allanlane5 Posts: 3,815
    edited 2006-06-20 01:19
    Sorry, dude, I tried. Apparently, the PSC does NOT have an 'idle' mode.

    However, you CAN hook 12 servo motor control signals off a BS2 -- you have 16 I/O pins, and you need to refresh the servo's every 20 to 50 mSec (or NOT refresh the servo, to get a low-power idle state) so you could do it that way.

    Another option is to use a couple of Darlington chips, and control the servo's supply lines, as other have suggested.· I would hope having the PSC send control signals to a de-powered servo wouldn't damage anything.
  • LakeSolonLakeSolon Posts: 4
    edited 2006-11-05 14:03
    This post is probably too late to help 'robomanifesto' but the pololu controllers ( http://www.pololu.com/products/pololu/#servcon ) do support the ability to disable a servo.
  • PARPAR Posts: 285
    edited 2006-11-05 19:49
    LakeSolon said...
    This post is probably too late to help 'robomanifesto' but the pololu controllers ( http://www.pololu.com/products/pololu/#servcon ) do support the ability to disable a servo.
    I may not be seeing what's there, but after briefly scanning the web page, I do not find the statement(s) which indicate the ability to disable (remove power from) a servo at that link. Can you quote the relevant statements and/or point me more specifically to them, please?

    PAR
  • LakeSolonLakeSolon Posts: 4
    edited 2006-11-07 01:21
    In the users guide (www.pololu.com/products/pololu/0390/usc01a_guide.pdf) the command to configure a servo (Command 0: Set Parameters) has a bit assigned for enabling or disabling a servo (default being off). This doesn't actually cut power to the servo, but without the constant refresh the servo itself will go idle and no longer attempt to hold position significantly reducing power consumption.
Sign In or Register to comment.