UsersManualSSC-32Ver2.0
SSC-32Ver2.0
Manualwrittenforfirmware versionSSC32-1.06XE Rangeis0.50mSto2.50mS
Lynxmotion,Inc.
POBox818
Pekin,IL61555-0818
Tel:309-382-1816(Sales)
Tel:309-382-2760(Support)
Fax:309-382-1254
E-m:sales@lynxmotion.com
E-m:tech@lynxmotion.com
Web:http://www.lynxmotion.com
Caution! Read this quick start guide completely before wiring and applying power to the board! Errors in wiring can damage the SSC-32board, Atmelor EEPROMChip, and any attached servos or peripherals.
Caution! Never reverse the power coming into the board. Make sure the black wire goes to(-)ground,and the red wire goes to (+)Vlogic,orVservo. Never connect peripherals when the board is powered on.
Caution! The on board regulator can provide 250mAtotal. This includes the microcontroller chip ,the on board LEDs, and any attached peripherals .Drawing too much current can cause the regulator to over heat.
These are the parts on your board: We will be using VS1 and VS2 for our Controller Power supply.
1- 5vdc500mA LowDropoutVReg.
VS2Terminal Applyservopowerto channels16thru31.
VS1=VS2Jmpr ConnectVS1toVS2 forsingleservobat.
VLTerminal ApplyLogicpower 6vdcthru9vdconly.
VL=VSJumper ApplyLogicpowerto 5vdcregulatorinput fromtheServobattery.
VS1Terminal ApplyServopowerto channels 0thru15.
AtmelICSocket Observepolarity.
LED Processorgood.
Baud /Inputs Select the baud rate. Utilize extrain puts.
DB9Port TrueRS232 level serial connector.
EEPROMSocket For future expansion.
TTLSerialPort For connecting to Atom,Stampetc.and DB9enable.
This terminal connects power to servo channels16thru31.Apply 4.8vdc to 7.2 vdc fornormal servos.Apply4.8vdcto6.0vdc when using micro servos. Do not exceed 7.4vdc(measureit)when using HSR-5995TG servos!
This terminal connects power to servo channels 0thru15.Apply4.8vdc to 7.2vdc fornormal servos.Apply4.8vdc to6.0vdc when using micro servos. Do not exceed 7.4vdc(measureit)when using HSR-5995TG servos!
This is where the AtmelIC chip goes.Be careful to insert it with Pin 1 in the upper right corner as pictured.Take care not to bend the pins.
These jumpers are used to connect VS1toVS2.Use this option when you
The Low Dropout regulator will provide 5vdc out with as little as5.5vdc
coming in.This is important when operating your robot from a battery.It can accept a maximum of 9vdc in.The regulator is rated for 500m A, but we are de-rating it to250m A top revent the regulator from getting too hot.
3 are powering all servos from the same battery.Use both jumpers.
Things that go Boom!
Ground row (Black) Power row (Red) ServoPulse (Yellow)
This is the Electronics Power Input.It is also referred to as the Logic Voltage, or VL.This in put is normally used with a 9vdc battery connector to provide
power to the ICs and anything connected to the 5vdc lines on the board. This in put isused to isolate the logic from the Servo Power Input.
This jumper allows powering the microcontroller and support circuitry from these rvo power supply.This requires at least 6vdc to operate correctly. If
the microcontroller resets when many servos aremoving it maybe necessary to power the microcontroller separately using the VL input .A 9vdc battery work snicely for this.
This is where you connect the servos or other out put devices.Use caution and remove power when connecting anything to the I/Obus.
This is the Processor Good LED.It will light steady when power is applied
and will remain lit until the processor has received avalid serial command.It will then go out and then blink whenever it is receiving serial data.Note,this feature may not be used on user-submitted firmware for the SSC-32.
The two BAUD inputs allow configuring the baudrate.Please see the examples below.The ABCD inputs have both static and latching support.
The inputs have internal weak (50k) pull ups that are used when a Read Digital Input command is used.Anormally open switch connected from the in put to ground will work fine.These features may not be used on user-submitted firmware for the SSC-
32.
Simply plug as traight-through M/FDB9 cable from this plug to a free 9 pin
serial port on your PC for receiving servo positioning data.Alternately a USB-to-serial adaptorwill work well.
This is an 8pin EEPROM socket.It is not used in this version of the firmware,although it will be used in future versions.
This is the TTL serial port or DB9 serial port enable.Install two jumpers as illustrated below to enable the DB9 port.Install wire connectors to utilize TTL
serial communication from a host microcontroller.
8
9
10
11
12
13
Jumpers
00
01
10
11
BaudRate
2400
9600
38.4k
115.2k
AppliesVS1toVS2.
Exampleservo connection16-31. Exampleservo connection0-15.
Black
Yellow
Red
Red
Yellow
Black
ShortingBarJumpersandConnectorsat aglance
Baudrate9600. Baudrate115.2k forPCuse. Baudrate2400.
UpdatetheAtmel
chipfirmware.
Caution!Don'tdothisif youdon'tknowwhatyou're doing.Connectingthis
jumpercanoverwritethe Atmelchip'sfirmware.
DC-01
Baudrate38.4k forBasicAtomuse.
TTLSerialcom. BotBoardside... TTLSerialcom. SSC-32side...
DB9enablefor
PCuse.
ABCDauxiliary inputs.
AppliesVStoVL.
Getting Started What is a Servo?
What is Open Source?
Before we illustrate how to use the servo controller we need to explain what a servo is, and define the control methodology.
Pulse- proportional servos are designed for use inradio-controlled (R/C) cars,boats and planes.They provide precise control for steering,throttle,rudder,etc.using a signal that is easy to transmit and receive.The signal consists of positive going pulses ranging from 0.9to2.1mS (milliseconds) long,repeated50times a second (every20mS).The servo position sits output shaft in proportion to the width of the pulse, as shown below.
In radio-control applications,a servo needs no more than a90° range of motion,since it is usually driving a crank mechanism that can't move more than90°.So when you send pulses within the manufacturer-specified range of 0.9to2.1mS,you get around 90° range of motion.
Most servos have more than 90°of mechanical range.In fact,most servos can move up to180°of rotation.However,some servos can be damaged when commanded past their mechanical limitations.The SSC-32lets you use this extra range.A position value of 500 corresponds to0.50mS pulse,and a position value of 2500 correspond sto a2.50mS pulse.A one unit change in position value produces a1uS (microsecond) change in pulse width.The positioning resolutionis0.09°/unit(180°/2000).From hereon,the term pulse width and position are the same.
Remember that some servos may not be able to move the entire180°range.Use care when testing servos.Move to the extreme left or right slowly,looking for a point when additional positioning values no longer result in additional servo out put shaft movement. When this value is found,put it as a limit in your program to prevent damaging the servo.Generally,microservos are not able to move the entire180° range.
It simply means we are distributing the source code for the boot loader and firmware. The goal is to have an affordable platform that many people will provide firmware for.It should also help many aspiring programmers learn some tricks.Any one can use the source code to write specialized firmware,providing you allow Lynxmotion,Inc.to publish it for others to enjoy.The source code can no tbe used in a commercial product. As it is,this servo controller will out perform controllers costing two to three times as much.Having several"flavors"of the firmware will make this an even better value.
HS-422 HS-422
HS-422 HS-422
HS-422 HS-422
0.9mS
1.5mS
Servo
Centered
Servo
Centered
Servo
-45°
NormalRange ExtendedRange
Servo
-90°
Servo
+45°
Servo
+90°
2.1mS
0.50mS
1.5mS
2.50mS