SGS Thomson Microelectronics GS-C200S, GS-C200 Datasheet

INTELLIGENT STEPPER MOTOR CONTROLLERS
FEATURES
Absolute and incremental positioning Up to 999,999 step permove Speed range to 10,000 steps/s Ramp lenght to 999 steps Single unregulated supply voltage Index and velocity mode Automatic and Home positioning Loops and Delay execution Conditional start and stop Status feedback to the host RS232 communication port Point to point and Multipoint protocol Closed loop operation Counter preset (GS-C200Sonly) Jump to (GS-C200S only) Jump to on-condition (GS-C200Sonly) Initialization during execution (GS-C200Sonly) Auxiliary output voltages +5V, ± 12V
GS-C200
GS-C200S
DESCRIPTION
The GS-C200 and GS-C200Sarepowerfulstepper motor control modules that interface every power sequencer/driver available on themarket.
The instruction setscompriserespectively 25 (GS­C200) and 29 (GS-C200S) different commands
ABSOLUTE MAXIMUM RATINGS
Symbol Parameter Value Unit
V
T
T
DC SupplyVoltage
s
Storage Temperature Range
stg
Operating Temperature Range
op
Humidity (non condensing)
which can be executedeither underhost control or in a stand alone environment. An on board EE­PROM is used for program saving and retrieving.
The availability of three User inputs and three programmable Useroutputs, eachof which can be tested or set under program control,assures tothe designer ahighlevelofsystempowerand flexibility.
42 V
–40to+85 °C
0to+50 °C
0to90 %
June 1994 1/31
GS-C200/ GS-C200S
ELECTRICALCHARACTERISTICS (TA= 25C and Vs=24V unlessotherwise specified)
Symbol Parameter Min Typ Max Unit
V
V
t
cpw
t
rpw
DC SupplyVoltage
s
Quiescent Supply Current
I
s
Logic Input Voltage
V
i
(TTLcompatible) Logic Output Voltage
o
(TTLcompatible) Clock Pulse Width Reset Pulse Width (Internal)
Low High
Low High
12 40 V
80 mA
2
2
0.8 5
0.8 5
5 µs
500 µs
V V
V V
MOTION CHARACTERISTICS
SPEED RANGE 10 to 10000 steps SPEED RESOLUTION 10 steps RAMP LENGHT 1 to 999 steps RAMP RESOLUTION 1 step POSITIONINGRANGE(C200)
(C200S) SINGLE MOVEMENTRANGE 1 to 999999 steps POSITIONINGRESOLUTION 1 step POSITIONINGREPEA T IBILITY +/– 0 step PROGRAM STORAGE
CAPABILITY
0 to 9999999 – 8388608 to + 8388607
119bytes
COMMUNICATION PORT CHARACTERISTICS
SIGNALLINES 3 (TxD,RxD, GND) BAUD RATERANGE 110 to 9600 FORMAT 1 Start Bit
7 Data Bit 2 Stop Bit Odd parity
STORAGECAPACITY
MINIMUM NUMBER OF COMMANDS 30 MAXIMUM NUMBER OF COMMANDS 45
2/31
Figure 1. Block Diagram
GS-C200/ GS-C200S
CONNECTION DIAGRAM AND MECHANICALDATA
Dimensions in mm.
Bottomview
3/31
GS-C200/ GS-C200S
PIN DESCRIPTION
Pin Function Description
SEL0 Protocol/addressLSB select input
1
SEL1 Protocol/addressSSB select input
2
SEL2 Protocol/addressMSB select input
3
BR0 Baud rate LSB select input
4
BR1 Baud rate SSB select input
5
BR2 Baud rate MSB select input
6
CHS Checksum enable input
7
GND Ground
8
REC Program autorecall input
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
Notes: 1– Maximum available current is 10mA
RXD RS232 received data input TXD RS232 transmitteddata output TXPD Transmitted data pull-down resistor RDY Status logic output –VSL Unregulated –12V supplyoutput (note 1) +VSL Unregulated +12V supply output (note 1) V
s
V
s GND Ground 5V 5V Auxiliary output(note 2)
5V 5V Auxiliary output(note 2) MOV Motor moving logicoutput RAMP Motor ramping logicoutput ENABLE Stop enable logic input
DIR Direction selection logic output RESET Power driver Reset logic output CLOCK Step clock logic output
HOME Home position logic input UO1 User 1 logic output EOT End of travel switch logic input UO2 User 2 logic output UI1 User 1 logic input UO3 User 3 logic output UI2 User 2 logic input UI3 User 3 logic input GND Ground
2 – Maximumavailable current is 100mA
Must be connected to pin 8
Supply voltage input Supply voltage input
Not connected
Not connected
4/31
GS-C200/ GS-C200S
The various signals that characterize the GS-C, their function and the active level are described in detail in the following:
Pin Function
1-2-3
4-5-6
7
8 9
10
11
12
13
14 15
16
17 - 18
19
20 - 21
22
23
24
25, 29
26
27
The SEL0 (pin1), SEL1 (pin2) and SEL2 (pin3)inputs are used to select the communicationprotocol and the module address. They have an internalpull-up and when unconnected they are at the 1 logic level.
The BR0 (pin4), BR1 (pin5) and BR2 (pin6)inputs are used to select the Baud rate of the communication port. They have an internal pull-up and when unconnected they are at the 1 logic level.
The CHS checksum generationconditioning input enables the user to include or exclude the checksum character from thedata exchange string. A ”zero” logic level appliedto this input disables the control and the generation of the checksumcharacter thus allowing the GS-C to be connectedto a video terminal.
This pin is the common terminal for all logic signals and for the power supply return path. The REC RecallProgram Enable input pin, when brought to ”zero”, enables the automatic recallof the
program stored inthe EEPROM and itsimmediate execution. This pin is for testingpurpose only and itmust be grounded for normaloperation. The RxD inputof the serial communication port is used by the module to receive commands from the
Host Computer. The input logic levels are compatible with the RS232 and V24 standards. The TxD output of the serial communicationport is used by the moduleto send data to the Host
Computer. The logic levels of this output are compatiblewith the RS232 and V24 standards. The TxPD Transmitted data pull-down resistorpin must always be connectedto the TxDoutput (pin 12)
when the Point-to-Point protocol is used. Whenthe Multipoint protocol is selected, this pin mustbe left open on all modules except the chainterminator unit, in orderto avoid the TxD output overload.
The RDY hardware statusoutput (opencollector) signal pin is used as the controllerstatus flag. RDY assumes a ”zero” logic level when a command or a program is in execution
–12V unregulatedoutput. A maximum of 10mAcan be sinked from this pin. +12V unregulatedoutput. A maximum of 10mA can be sinked from this pin. Module supply input. For correctoperations a supply voltage ranging from 12 to 40 Volt is required. See pin 8. 5 Voltregulated output, available either for the Sequencer-Driver logic section or for a custom interface
logic supply. The maximum current that can be sinked from this pin is 100mA. The MOV Motor moving output becomes the logic level ”one” when the GS-C is executing a movement.
This output can be used to program the phase current level when the motion is runningat a levelhigher than for the rest condition.
The RAMP Ramp in execution output is rised to the logic level ”one” when the GS-Cis executing an acceleration or a decelerationramp. Thisoutput can be used to program the phase current level when the motion is ramping at a level higherthan for the rest or slewing condition.
The ENABLE input pin allowsthe user to control the Step clock logic output to avoid the motorbeing stepped if the previous step was not correctly executed. A ”zero” logic level appliedto this pin stops the generation of the step pulses. Thisinput canbe used to stop the system when an emergency occurs,to execute the motion according to externally generated timing, or to implementa closed loop control system.
Not connected. The DIR Direction selectionoutput isused to inform the Sequencer-Driveron the directionof rotation.
The logic level ”one” determines a clockwise rotation, but of course the rotationdepends on the motor phases connectionto the Sequencer-Driver.
The RESET Power driver Reset output is brought to the ”zero” logic state for 400µs when the unit is powered-on, or when the GS-C receivesthe ”Initialize position counter” command. Thisoutput is normally used to assurethe correctstart-up of the Sequencer-Driver or any other external custom logic.
5/31
GS-C200/ GS-C200S
Pin Function
The CLOCK Step clock output is used to informthe Sequencer-Driver to perform a step. The direction
28
30
31
32
33
34
35 36 37 38
(clockwise or counterclockwise) is defined by the logic status of the DIR output. In steady conditions, the CLOCK is at the ”one” logic level, and the step is represented by a negative going pulsewith a 1.7µs duration.
The HOME Home position input allowsthe systemto find itsreference point. This input can be driven by a mechanically activated contact indicating the ”zero” position. It is normally used togetherwith the EOT End-of-travel signal.
The UO1 User output 1 is intended for user purposes. Thestatus of this output can be set and cleared under program control and it can be used forvarious functions. It is normally used for the control of externaldevices, the selectionof the Sequencer-Driveroperating mode, or the synchronization of complex movements.
The EOT End-of-travel inputallows, in combination with the HOME input, the correct mechanical initialization of the system. For this purpose it must be brought to the ”zero” logic level when the system reaches the run end position.
The U02 User output 2 is intended for user purposes. See pin 31 description. The UI1 User input is intended for user purposes. The status of this input can be readby the Host
Computer or tested duringthe program execution, and used to condition the start of a movement,the execution of a specific portion of a program (GS-C200S only), or any other similar operation.
The UO3 User output 3 is intended for user purposes. See pin 31 description. The UI2 User input 2 input is intended for user purposes. See pin 34 description. The UI3 User input 3 input is intended for user purposes. See pin 3 and pin4 description. See pin 8.
Figure 2. GS-C Timing Diagram
6/31
GS-C200/ GS-C200S
S.I.M.P.L.E. Interpreter Command and Functions (SGS-THOMSONInteractive Stepper Motor Programming Language and Executor)
Command
Ax Cx Dxxx E F f+/–xxxxxxx G+/–xxxxxxx g(+/–) g(+/–)x H(+/–) Ix jx jcy,x K Lx M P Po Px Q Rxxx Sxxx Txxx Ux Vx X Wx Z +/–xxxxxx
Byte
Length
2 2 2 – – 4 4 4 4 – 2 2 2 – 2 – – – – – 4 4 4 2 – – 2 – 4
Function
Activate the specified(x) Useroutput. Clear the specified (x) User output. Delay for the specfied number (xxx) of tenth of second. Startexecutingthe program currently stored into RAM memory. Feedback the GS-C status (i.e.Ready orBusy). Preset the position counter to the specifiedabsolute value (C200S). Go to the specified target position(C200S). Move the motor indefinitelyin the specified direction. Move the motor in the specified directionuntil the specified(x) input is brought to zero. Find Home position moving clockwise (+), or moving counterclockwise (–). Initialize the position counter (x=1), the user outputs (x=2), or both (x=3). Jump to memory location (x). Location (x)ranges between 0 and 118(C200S). Jumpto memorylocation (x) if thebinaryvalue of the user inputs matches (y) value (C200S). Kill the program inexecution. Loop for the specified(x) number of times. Transfer the RAM memory content to EEPROM. Enter the programming mode (C200). Enter the programming mode (C200S). Exit the programming mode (C200S). List to the host the program currently in RAM memory. Set the Ramp length to the specified (xxx) value. Set the start-stopspeed to the specified (xxx) value. Set the slewrate speedto the specified (xxx) value. Execute the program until the specified (x) user input isbrought to a low level. Read back the current position (x=1) or the userI/O status (x=2). Transferthe programfrom EEPROM to RAM. Wait until the specified(x) user inputis raised to a logicone level. Stop through a deceleration ramp. Move clockwise (+) or counter-clockwise (–) for the specified (xxxxxx) number of steps.
7/31
GS-C200/ GS-C200S
GS-C200 AND GS-C200SDESCRIPTION
The increasing popularity of microprocessors and theirvery lowcost,havecontributed to afast growth of stepper motors usage in a large numbers of application previously covered by more complex, bulk and expensive DC motors servo loops. The GS-C200 and the GS-C200S modules have been conceived to help the industrial designer in design­ing the stepper motor applications based on micro­processor control.
Thesemodules are programmable intelligentstep­per motor controllers that coordinate highly com­plex movements and sequential operations. This capability is performed through the integration of sophisticated hardware and an easy to learn and very functional and powerful programming lan­guage.
Thanks to this high level programming language, the power of the instruction set and the ability to condition an d cont r ol the program executi on throughtheUSERinputsandoutputs,the GS-C200 and GS-C200S drastically reduce the design time and start-up manufacturing phase of very complex systems. The GS-C200S offers an advanced and powerful instruction set that includes also the con­ditional jump which allows for more efficient pro­gram-ming. TheGS-C200,the GS-C200Sand their companion modules, the GS-D200 and the GS­D200S, can be used to drive in chopped mode of bipolar stepper motor with a 2/2.5A maximum phase current rating.
The two modules (GS-C and GS-D) are available also on a single Eurocard board named respec­tively GS-DC200, GS-DC200S and GS-DC200SS according to the variousmodules combination (see the relevant data sheet). In the following the mod­ules will be generically named GS-C. The specific module part number will be used when the feature is unique to that module.
A MOTION SYSTEMARCHITECTURE
A complete motion system controlled by a host computer is normally configuredas per fig. 3.
The GS-C logical and functional architecture is shown in fig. 1 and it includes the following basic blocks:
– Interface to the Host Computer via an RS232
communication port. – Addressand baudrate selection. – Interface to the Sequencer-Driver (in particular
but not exclusively, to the GS-D200 or GS-
D200S)via 5 outputand 3 input lines – Command Interpreter and Executor. – Program storage area – Power Supply. The above mentioned functions are performed by
the GS-Cwithout the addition of anyexternal com­ponent, and the module flexibility is further en­hanced by the use of only one unregulated supply voltage that can be the same used to supply the Sequencer-Driver (from 12V up to 40V).
Commands are sent to the module bya Host Com­puter or by a simple video terminal during the programming/debugging phase through an RS232 serial port. They are interpreted and validated by the command interpreter and executed through the Sequencer-Driver interface.
Command execution can be conditioned and con­trolled by the statusof the USER IN-OUTinterface.
Aprogram storagearea has been added to perma­nently store a program in an on-board EEPROM; this is particulary beneficial to obtain a low cost stand-alone controller that doesnot need any con­nection to an external computer or to store pro­grams f requ ent ly used in complex motion sequencies thus reducing the host computer bur­denand speeding up the systemprocessing.
Particular attention hasbeen given to the simplicity of the instruction setto allowan easydesign of the system to those designers that are notvery familiar with microprocessor software and programming.
In thefollowing a detailed description ofthe various functional blocks is given.
Figure 3. A Motion System Block Diagram
8/31
GS-C200/ GS-C200S
INTERFACE TO THE HOST COMPUTER AND DATAPROTOCOL
The interface to the Host Computer is through an RS232or V24 serial communication port.
Baud Rate Programming
The Baud rate is programmed between 110 and 9600 bit/secby using the BR0,BR1and BR2inputs according to the following table:
BR0 (p4) BR1 (p5) BR2 (p6) Baud Rate
0 0 0 9600 1 0 0 4800 0 1 0 2400 1 1 0 1200 0 0 1 600 1 0 1 300 0 1 1 150 1 1 1 110
This settingis obtained byconnecting the pins 4,5, and 6to ground (0 status) or by leaving themopen (1 status). The communication port does not use any control line but just the transmit and receive signals. The host computer must handle the data excange in the proper way.
Module Address Programming
The communication protocol can be either Point to Point or Multipoint. In the first case a single com­munication line is required for each module, while in the latter more than one module (up to seven) can share the same communication line.
The Multipoint protocol as well as the peripheral device address are selected through SEL0, SEL1 and SEL2 inputs. The Point-to-Point protocol is selectedby connecting all the SELinputs to the 5V outputpin (pin 20) or by leaving themopen.
The following table defines the protocol and the address setting:
When the multipoint connection is chosen, the ad­dress ofeach module isobtained by connecting the various SEL pin (1, 2, 3) to ground (0 status)or by leaving them open (1 status).
The basic difference between the two protocols is represented by the sytemwiring complexityandthe data throughput. The Point-to-Point offers the higher throughput data rate but it requires a con­necting cable for each unit, while the Multipoint minimizes the connecting cables but at reduced throughput rate.When thislatterprotocolis chosen, the command must always be preceeded by the address of the unit.
Data Exchange Protocol
The dialogue is always driven by the Host Com­puter which sends the string containing the com­mand or the request to be implemented. The GS-C module stores the instruction sent by the Host and then it checks if the string has been correctly re­ceived by analyzing the parity bit. It then analyzes the consistencyof the receivedinstructions by veri­fying the presence and correctness of the argu­ment, andfinally,it checkswhether therequest can be processed or not (for example, an attempt to move outside the system limits, etc.) reporting to the Host the analisysresult. If no error is detected, the GS-C replies to the Host by a ”Y” message. In case oferror, the messagewill be ”Error X” request­ing the Hostto send themessage again orto modify some parameters ofthepreviousmessageto fix the error detected by the GS-C. The actual value of X (see fig. 4 and error code table) gives the Host the information on the type of detected error. The pro­cedure implemented for the dialogue with the Host is shownon the flowchart of fig. 4.
Figure4. Controller-Host Dialogue Flowchart.
SEL2 SEL1 SEL0 Address Protocol
0 0 0 7 Multipoint 1 0 0 6 Multipoint 0 1 0 5 Multipoint 1 1 0 4 Multipoint 0 0 1 3 Multipoint 1 0 1 2 Multipoint 0 1 1 1 Multipoint 1 1 1 Point-to-Point
9/31
GS-C200/ GS-C200S
The general format of a command string is the following:
ADDRE SS CO MMAND ARGU MENT CHEC KSU M CAR.RETURN
The Address must be the firsttransmitted charac­terand it is present only ifthe Multipoint protocol is used (at least oneof SEL0, SEL1, SEL2 is different from zero).
The Command is the second character(s) of the string, inthe Multipoint protocol, but it becomes the transmission opening character when the Point-to­Pointprotocol is used (SEL0, SEL1 and SEL2 = 0).
TheArgument, ifrequired,isspecified immediately after the command and its length depends on the command type.
The Checksum character verifies the correctness of the received string; itsvalue isdetermined bythe sum of the binary values of the preceding charac­ters. Theresultiscut atthe seventhleast significant bit and ORed with exadecimal 10 (C200S/C200 from V2.2) to make the result compatible with the transmission system. The last character, the string endingcharacter, is always aCarriage Return that will be identified in thefollowing by thesymbol ().
By connecting the pin CHS (pin 7) to ground, the checksum character isnot anymore requested, and the task of guaranteeing the correctness of the message is left to the parity bit. It should be noted that by using thisdialogue mode, the data integrity confidence level is reduced. Because motion sys­tems normally operate in manufacturing premises subjected to heavy electro-magnetic noise, and because any communication problem may have catastrophic effects on the system actions, it is a good practice to use the checksumcharacter when­ever possible. Thechecksum character is normally not used (pin CHS connected to ground)when the GS-C is connected to a video-terminal, i.e. during the initial programming and debugging phase. In the following, three examples of command strings sent to a GS-C module are given.
Example 1 - MULTIPOINTPROTOCOL. The Host Computer wants to set the USER output 3 of the module #2. The command will have the following format:
2A36
Carriage return Checksum
Address
Module #2
Command
Activate
Argument
USERout 3
The checksum character 6 results from the binary sum of the character 2 (ASCII value = 32) + char­acter A (ASCII value = 41) + character 3 (ASCII value = 33) truncated at the seventh bit.
Example 2 - POINT-TO-POINTPROTOCOL. The same instructionis given bythe Hostto aPoint
to Point connected module. The command will have the following format:
A3t
The checksum character has an ASCII value t that derivesfrom the sum ofthe ASCII code A+3=41+33 = 74 in binary weighted code or t inASCIIcode.
Example 3 - POINT-TO-POINT PROTOCO L WITHOUT CHECKSUM.
For the same instruction, the command format will be:
A3 The stringconsists ofcommand and argument only. The GS-Cfeeds backinformation to the Host every
time it receives a command, therefore it has not to identify itself to the Host when answering in a Multipoint connection.
The formatof thestring answered backbythe GS-C is the following:
ANSW .CODE ARG UMENT CHECK SUM CAR.RETUR N
The first character, which always identifies the an­swer type,may assume oneof thefollowing values:
Y The command string has been correctly
received.
B The controller is Busy and cannot process
commands.
R The controller is Ready to process commands. E An error has been detected. The type of error
is specifiedby the number following the ”E”.
V A controller status (a position or an USER
input/output status) is sent back and its value is specifiedby the characters following the ”V”.
The lengthofthe Argument, presentonly for”E” and ”V” answers, can range between 1 and 7 charac­ters, and it is a function of the received command. The number following the ”E” code, i.e. the error argument, specifies the detectederror typeaccord­ing to the followingtable:
10/31
Loading...
+ 21 hidden pages