Examples | Shop
 


Servo Expansion Module with OOPic and DS-SCX8S
(or DS-SCX16S)
 

Using the OOPic’s I2C bus the Servo Expansion Module (DS-SXM16S), in conjunction with the DS-SCX16S IC, allows you to control the speed and position of up to 16 servomotors. Alternatively up to 8 servos can be controlled in this way using a DS-SCX8S IC thus leaving the other 8 servo connectors on the DS-SXM16S for either direct servo control by the OOPic or as digital or analogue sensor inputs.
The following code is a test programme that could be easily adapted for a users specific application.

 
' Example : DS-SCX8S-0 or DS-SCX16S-0 enable, speed and position test routine
'
' Set all 8 or 16 servos to position 1 then after 'Delay' set to position 2 then after 'Delay'
' repeat.
'
' Created : 3/7/02 Revision : 1.00 Written by : Designer Systems
'
Dim Servo As New oi2c
Sub Main () ' Setup DS-SCX8S-0 or DS-SCX16S I2C address and protocol
Servo.Node = &h70 '&hE0 shifted right 1 bit
Servo.Width = cv8bit 'Set 8bit data read/write
Servo.Mode = cv10bit 'Set 10bit addressing mode
Servo.NoInc = cvFalse 'Setup auto register increment
Const Speed = &h90 'Servo enable + speed
Const Delay = 200 'Position to position delay
do
Servo.Location = &h00 'Point to Servo 1 position (R0)
Servo.Value = &h30 'Set Servo 1 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 2 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 3 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 4 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 5 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 6 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 7 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 8 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 9 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 10 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 11 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 12 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 13 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 14 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 15 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &h30 'Set Servo 16 position value
Servo.Value = Speed 'Enable servo with no reverse
oopic.delay = Delay
Servo.Location = &h00 'Point to Servo 1 position (R0)
Servo.Value = &hce 'Set Servo 1 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 2 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 3 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 4 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 5 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 6 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 7 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 8 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 9 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 10 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 11 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 12 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 13 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 14 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 15 position value
Servo.Value = Speed 'Enable servo with no reverse
Servo.Value = &hce 'Set Servo 16 position value
Servo.Value = Speed 'Enable servo with no reverse
oopic.delay = Delay
loop
End Sub


Examples | Shop