28023 Parallax Inc, 28023 Datasheet - Page 5
![CONTROLLER 16SERVO MOTOR CONTROL](/photos/9/30/93020/mfg_28023_sml.jpg)
28023
Manufacturer Part Number
28023
Description
CONTROLLER 16SERVO MOTOR CONTROL
Manufacturer
Parallax Inc
Datasheet
1.28023.pdf
(9 pages)
Specifications of 28023
Lead Free Status
Contains lead
Main Purpose
Power Management, Motor Control
Embedded
Yes, MCU, 8-Bit
Utilized Ic / Part
BASIC Stamp® or Javelin Modules
Primary Attributes
Servo Controller
Secondary Attributes
16 channels
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
28023PAR
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
28023
Manufacturer:
TOSHIBA
Quantity:
285
Part Number:
28023
Manufacturer:
TRITECH
Quantity:
20 000
Company:
Part Number:
280232
Manufacturer:
TE/AMP
Quantity:
30 000
Company:
Part Number:
280232-0
Manufacturer:
TE
Quantity:
42 107
Company:
Part Number:
280232-0
Manufacturer:
TE
Quantity:
35 000
baudrate back to 2400, you must either reset the controller or send it a SBR, $0 command at 38K4
baudrate. Once the baud rate has been changed, it would be wise to “ping” the servo controller from
time to time. If either the BASIC Stamp or the PSC reset without the other resetting, they could be left in
the state of different baud rates. When “pinging” the PSC with an VER? command, the BASIC Stamp’s
SERIN function should employ its timeout feature. At this timeout label, you can them attempt to VER?
the PSC at the other baudrate. Once identified, the baudrate can again be set, and the program can
resume.
Position Command – Set the Position of a Servo Channel
Syntax: “!SC” C R pw.LOWBYTE, pw.HIGHBYTE, $0D
Reply: none
To control a servo, you must write a position command to the PSC. Each position command is comprised
of a header, three parameters: C, R, and PW, and a command terminator.
The Header: “!SC” is the header. The header signifies to all devices on the same wire that this is a
command for a Servo Controller.
The C parameter is a binary number 0-31 corresponding to the servo channel number.
channel number should be 0-15 with no jumper present on the PSC, or 16-31 with the jumper present.
With a jumper present on the PSC, servo channel 0 become channel 16, channel 1 becomes 17, etc.
The R parameter is a binary number 0 – 63 that controls the ramp function for each channel. If the ramp
parameter is set to 0, ramping is disabled and the pulse width will be set to the P parameter sent
immediately. Ramp values of 1-63 correspond to speeds from ¾ of a second up to 60 seconds for a full
500uSec to 2.50 mSec excursion for standard servos. This correlation is rather linear though no equation
presently exists.
The P parameter is a 16-bit Word that corresponds to the desired servo position. The range, (250-1250),
corresponds to 0 to 180 degrees of servo rotation with each step equaling 2 uSec.
The command terminator, $0D, (CR), must not be omitted.
The following code snippet demonstrates the Position Command by ramping a servo channel 11 from 0 to
255 at ramp rate 7.
'{$PBASIC 2.5}
ch
pw
ra
Sdat
baud
DO
LOOP
Note: Not all servos are exactly alike. If your servos appear to
strain when commanded to position 250, you should increase the
Parallax, Inc. • Parallax Servo Controller – Rev B ver2.4 (#28023) • 1/2005
ra = 7
ch = 11
pw = 1250
SEROUT Sdat, Baud+$8000,["!SC", ch, ra, pw.LOWBYTE, pw.HIGHBYTE, CR]
PAUSE 1000
pw = 250
SEROUT Sdat, Baud+$8000,["!SC", ch, ra, pw.LOWBYTE, pw.HIGHBYTE, CR]
PAUSE 1000
VAR Byte
VAR Word
VAR Byte
CON 15
CON 396
The servo
5