Servo Controller Help
ajward
Posts: 1,130
Hi All...
I'm using the Prop servo controller to run my biped Wally. It works well (still working on getting him walking), but I have one problem.
When I first power up the servos they =snap= to the center position. The center position is with the 'bot standing up and ready to start walking.
Not a major problem I suppose, but (if possible) I would like to have them move slowly so standing up would be a little more a human getting up off the floor.
If I understand correctly, everything the PSC does is controlled with Spin code. I've looked at the code in the firmware package and I'm not ashamed to admit that stuff is WAY over my head. I'm not afraid to tinker with it (how else can you learn), but I have no clue where to start.
Can anyone point me in the right direction to slow the darn servos down a little?
Thanks for any advice!
Amanda
I'm using the Prop servo controller to run my biped Wally. It works well (still working on getting him walking), but I have one problem.
When I first power up the servos they =snap= to the center position. The center position is with the 'bot standing up and ready to start walking.
Not a major problem I suppose, but (if possible) I would like to have them move slowly so standing up would be a little more a human getting up off the floor.
If I understand correctly, everything the PSC does is controlled with Spin code. I've looked at the code in the firmware package and I'm not ashamed to admit that stuff is WAY over my head. I'm not afraid to tinker with it (how else can you learn), but I have no clue where to start.
Can anyone point me in the right direction to slow the darn servos down a little?
Thanks for any advice!
Amanda
Comments
Hi Amanda,
You could use the “!SCEDD” <1> <CR> command to set a default position at power up.
The default position is set by the “!SCD” <channel> <lowbyte> <highbyte> <CR> command. This is saved in the EEPROM.
The position could be the last servo position command before you power off, (if you know that position.
Another thought would be to invoke the "Servo32_Ramp_v2.spin". I wouldn't know where to put it unless you can share your complete code.
Jim
to get it to move at the speed you want. This sample program just moves the servo from one end to the other at the "RAMP" rate.
first ramping command without setting the position first and it quickly rotates to the middle before ramping. Maybe someone else will chime in on how to slowly move a servo in a unknown position to the starting position that you want?
I can always arrange the 'bot to be standing up when I power up the system, I'd like to have him slowly stand up from a pile of "parts on the floor"! :-)
Amanda