Home

SILVERMAX COMMANDS

image

Contents

1. Input Code Input Source Description 1 External T O 1 e T O 2 3 G T O 3 4 T O 4 5 e T O 5 6 T O 6 T 7 VO 7 8 e Current Index Sensor 9 ck Internal Index Sensor 10 6 External Index Sensor 11 Internal Status Moving Error Status 12 e Holding Error Status 13 Trajectory Generator Active 14 ec Delay Counter Active Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type wait on bit Program 204 lt Input Code gt 1to 14 edge WBE Class D OxCC lt Input 0 falling High to Low 3 Words Transition gt 1 rising Low to High Example QuickControl Example sla ita ag goes from Low to High Edit WBE Wait On Bit Edge x Select which condition to wait on 16 204 1 1 CR E iti Cancel SilverMax Response Condition fio 1 x Description ACK only Response Example Low FALSE High TRUE 10 CR GlverMax Command Reference Page 144 Program Flow Commands WAIT ON BIT STATE WBS Description During program execution the Wait on Bit State command causes SilverMax to Wait until an input condition is true This is a very fast input check that done every servo cycle 120microseconds Placing this command in a program will cause the program to wait on the current line until the input condition is met There is no wait limit therefore this can put SilverMax into an endless wait state The I
2. GlverMax Command Reference Page 208 Command Summary Tables SilverMax Description Response Data Register Commands NV Non Volatile memory lt Data Register 10 to 40 ACK only Adds the included data gt into the selected 32 bit Data Register Parameter Range Hex Command Command Command Name Code Hex Parameters ADD TO 248 REGISTER 0x9A ATR Class D 4 Words lt lt Data to Add 2 147 483 648 to gt gt 2 147 483 647 0 to eS Fe Et 2 se REGISTER 197 lt Number of 1to4 ACK only Loads data to an array of LOAD OxCS5 Registers gt Data Registers from the MULTIPLE selected Non Volatile RLM Class D 4 Words Memory address The Checksum value is checked to insure good data lt Starting Data 10t040 Data 10 to 40 Register gt lt NV Memory 0t03839 Memory 0 to 3839 Address gt 0 to OxXOEFF REGISTER 199 ACK REGISTER 19 lt Data 10to40 ACKonly Loadsdatatothe Loads data to the LOAD OxC7 Register gt selected Data Register NON VOLATILE RLN Class D lt NV Memory 0 to 3839 from the selected Non Address gt 0 to OxOEFF Volatile Memory address The Checksum value is checked to ee es ew ee _ f 2 TP BOE aA C5 3 Words REGISTER 196 STORE 0xC4 MULTIPLE RSM Class D Non Volatile Memory address A Checksum is also stored for the array of data 4 Words lt Starting Data 10t040 Da
3. Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Start Immediate NONE NONE Download Class B SDL Example QuickControl Example Put SilverMax into the program Immediate Host Command Only download mode 16 9 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 142 Program Flow Commands Store Program SPR Description The Store Program command stores a program into Non volatile Memory onboard the SilverMax unit The currently loaded program will be stored at the address number indicated in the address parameter of the command A program must be downloaded in the Program Buffer before the Store Program is used The program download mode is terminated by this command The length of the program in words and a Checksum are written to the indicated memory address followed by the program The length is used by the Load Program or Load amp Run Program command to know the size of the program to load from Non volatile Memory Because the length is written to the first address location add 1 word to overall length for keeping track of memory usage The Checksum is used by the Load Program or Load amp Run Program command to determine the data integrity This prevents corrupted or partially overlapping programs from attempting execution This command leaves a background routine running until the programming of the non volatile mem
4. bit 13 set Program completed of the Polling Status Word is set To reset bit 13 the Clear Status Word must be set to 0x2000 This will cause bit 13 to be re set 0 All other bits in the Polling Status Word will be left unchanged if the corresponding clear bit is not set New occurrences since the last poll will NOT be cleared the Status word is double buffered Command Info Command Command Command Command Parameter Name Type Code Hex Parameters Range Hex Clear Poll Immediate 1 lt Clear Status 0 to 65535 CPL Class A 0x1 Word gt 0 to OxXFFFF Example QuickControl Example Clear only Bit 13 set in the Polling Immediate Host Mode Command Only Status Word Decimal 8192 0x2000 in Hexadecimal 16 1 8192 CR Clear all the bits set in the Polling Status Word 16 1 65535 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 17 Status Commands The Poll command has two types of responses an Acknowledge which indicates that there is no status to send and a data packet which contains the Polling Status Word in ASCII Hexadecimal format The Polling Status Word is sent in 4 hexadecimal characters 0 F The first character is the upper nibble and contains bits 15 12 The second character contains bits 11 8 The third character contains bit 7 4 The final character is the lower nibble and contains bits 3 0 Each bit represents a curr
5. RLN 3 Words Example QuickControl Example Load data register 12 with data from NV memory address 1000 1 6 199 12 1000 CR Select the Register Cancel User Input Source Data 12 7 Deserinti ption SilverMax Response Non Yolatile Memory Location ACK only foo j Response Example 10 CR GlverMax Command Reference Page 167 Data Register Commands Read Register RRG Description The Read Register command reads back data from a selected 32 Bit Data Register using the Serial Interface Since it is an Immediate Type this command can be used at any time even during program execution Any Data Register can be read back using this command including registers 0 through 40 amp 200 through 211 Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Read Immediate lt Data Register gt 0 to 40 amp 200 to 211 Register Class A RRG Example QuickControl Example Read back the motor s current Immediate Host Command Only position 16 12 1 CR SilverMax Response Data Register data Response Example Example Read Register command that requests the Current Position from SilverMax 16 which is 10 in Hexadecimal the last 8 digits represent the 32 bits of position data The current position 329 379 in decimal 10 000C 0005 06A3 CR The return data breaks down as follows Indicates
6. Command Code Hex Parameter Range Hex lt I O Bit Enable gt 1 to 14 QuickControl Example 202 OxCA 3 Words Edit PRI Program Return On Input x Select which condition to Retum on Condition Cancel 10 1 bd Description State Low FALSE High TRUE Page 140 Program Flow Commands Run Program RUN Description Executes the program that has been previously loaded into the Program Buffer This command will clear the download mode set the program pointer to 0 and start the program The Program Buffer can be filled using the Start Download command from the Host controller see Start Download below It can also be filled using the Load Program command that will move a program from the non volatile memory into the Program Buffer see Load Program above Any Command or Program remaining in the Program Buffer can be executed over again using this command A Stop command will stop the program but not clear the buffer Note that an immediate mode change velocity will overwrite the start of the buffer When in Host Mode Program Type commands sent to the SilverMax will remain in the buffer until another Program Type command is sent or a Program is loaded The Run Program command can be used to repeat the previous Program Type command Sending this command while a Program or Command is executing will give a SilverMax NAK Busy response Programs that contain errors
7. Driver KDD 1 Word Example QuickControl Example Disable the Motor Driver electronics Edit Command x when Kill Motor Conditions are met Command Name 16 183 CR INIT KDD Kil Disable Drivers Description Test SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 55 Initialization Commands See Also KILL DISABLE DRIVER KILL ENABLE DRIVER KED KDD ENABLE MULTI TASK EMT Description Causes SilverMax to leave the motor drivers enabled when a Kill Motor Condition is met Normally the motor driver is disabled with a Kill Motor Condition this command can be used to leave the driver enabled if continuing operation is required In order for this command to function SilverMax must be set up for Multi Tasking operation See Enable Multi Task Without Multi Tasking the driver will be disabled when a Kill Motor Condition occurs This command is very useful for times when a controlled shutdown of the motor is needed For example if there is a need to slowly ramp down the speed of the motor a Velocity Mode Program Type command can be used in the Kill Recovery program to decelerate to zero speed with the given deceleration Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program Kill Enable Class D Driver KED 1 Word Example QuickControl Example Leave the SilverMax motor driver Edi
8. JRE 5 Words 2 147 483 647 0 to OXFFFFFFFF lt Program Buffer 0to199 Buffer 0 to 199 Location gt Example QuickControl Example Jump to Program Buffer location 10 if Register 32 contains 1200 16 137 32 1200 10 CR Select from existing labels or enter a new one Cancel i N EXT X Description SilverMax Response ia Register ACK only User 32 Response Example Data eooo haoo inch Hex Acceleration 10 CR C Long Velocity C ULong C Time Position clea ee GlverMax Command Reference Page 134 Load Program LPR Description Program Flow Commands The Load Program transfers a program from the non volatile memory to the Program Buffer The number of words to be transferred is read from the location given in the NV Memory Address parameter This count is automatically stored in the first word along with a checksum when the program is written into non volatile memory The content in the first NV Memory Address of the program is the Length in words of the program size and the Checksum of the program The first command is read from the address following the Length amp Checksum word with subsequent words transferred up to the size indicated in the Length During the load process the data is used to calculate a Checksum value When the load is complete the calculated Checksum is compared to the stored Checksum If the Checksums do not agree Bit 14 in the Polling Status
9. JUMP ON 250 lt IOS 0 to 65535 Allows looping and INPUTS AND ed OxFA Condition other conditional JAN Enable gt branching inside a Class E 4 Words lt IOS 0 to 65535 Program based on the Condition AND ed condition of the State gt T O State Word IOS lt Program 0 to 199 Buffer Location gt GlverMax Command Reference Page 203 Command Summary Tables Command Name Command Command Parameter SilverMax Description Code Parameters Range Response Hex Hex JUMP ON 238 lt IOS 0 to 65535 ACK only Allows looping and INPUTS OxEE Condition other conditional NAND ed Enable gt branching inside a JNA 4 Words lt IOS 0 to 65535 Program based on the Class E Condition NAND ed condition of State gt the I O State Word lt Program IOS Buffer Location gt JUMP ON 239 lt IOS INPUTS OxEF Condition other conditional OR ed Enable gt branching inside a JOR 4 Words lt IOS 0 to 65535 Program based on the 0 to 65535 ACK only Allows looping and Class E Condition OR ed condition of the State gt T O State Word IOS lt Program Buffer Location gt 162 lt Condition OxA2 Enable gt lt Condition 4 Words State gt 0 to 199 0 to 32767 Jumps within a Program 0 to Ox7FFF If the condition 0 to 32767 parameters are set to 0 to Ox7FFF zero an unconditional lt Command 0 to 199 jump will occur Bu
10. Move Relative initiates a distance move relative to the current Target Position Relative Distances are based on the Incremental Encoder resident in SilverMax The move profile uses Acceleration and Velocity as the constraints Relative Distance is an encoder count value that the motor will move from its current position Providing a positive value will cause the motor to move in a positive count direction Giving a negative value will cause the motor to move in negative count direction The polarity of the distance number always determines the direction that the motor will spin This is not true for the Absolute Position commands which will move the motor in the required direction to go to the requested Position The Distance units are in Encoder Counts For a SilverMax with an encoder that provides 4000 counts per revolution one revolution of the motor is 4000 counts To scale a move to revolutions multiply the revolutions value by 4000 Velocity based moves use an Acceleration and Velocity parameter to accomplish the motion profile If the Velocity value needed to make the move exceeds the maximum permissible limit the move will not be executed and an error code will be set in the Polling Status Word The Polling Status Word bit 14 Foreground Command Error will be set Foreground command errors are generated when a command cannot be executed due to parameters that are out of range If the Acceleration value exceeds the maximum permissible valu
11. causes the counter to begin the count down to zero When the count has expired the Wait Delay exits and allows the program to continue See Delay command above for more details The Delay counter may also be written with any of the Register manipulation commands either from the Serial Interface or from the program This command is useful when a timer needs to be set before a series of other commands are executed with a wait at the end This allows a program or sub routine to execute with precise timing Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type WAIT DELAY Immediate WDL Class D Example Cause program to wait until Delay Count is expired 16 141 CR SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference QuickControl Example Edit Command x Command Name FLO W WDL Wait Delay Description Cancel Page 146 I O Commands I O Commands GlverMax Command Reference Page 147 I O Commands ANALOG CONTINUOUS READ ACR Description The Analog Continuous Read does continuous read of a selected Analog Channel into a User Data Register Readings are taken every servo cycle 120 usec and transferred into the selected Data Register A number of different Analog channels are available with this command There are four analog inputs that can be used to input data into the SilverMax Analog
12. 0 to 65535 0 to OXFFFF lt Stop State gt 0 to 65535 SlverMax Command Reference 0 to OxFFFF Page 200 Command Name REGISTER MOVE RELATIVE VELOCITY BASED RRV Class D Command Code Hex 161 OxA1 9 Words Command Parameters lt lt Data Register gt gt Command Summary Tables Parameter Range Hex 10 to 40 lt lt Acceleration gt gt 1 to 1 073 741 823 1 to 0x3FFFFFFF lt lt Velocity gt gt 0 to 2 147 483 647 0 to OX7FFFFFF lt Stop Enable gt 0 to 65535 0 to OXFFFF lt Stop State gt 0 to 65535 0 to OXFFFF SilverMax Description Response Initiates a relative distance move using Acceleration amp Velocity parameters A Data Register is used for the Distance parameter EXTENDED REGISTER MOVE ABSOLUTE TIME BASED XAT Class D 236 0xEC 4 Words lt lt Starting Data Register gt gt 10 to 40 lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF ACK only Performs an absolute position move using move parameters contained in the indicated User Data Registers This command works like the basic Move Absolute Time Based MAT command in all other ways EXTENDED REGISTER MOVE ABSOLUTE VELOCITY BASED XAV Class D 234 OxEA 4 Words lt lt Starting Data Register gt
13. CR GlverMax Command Reference Page 104 Motion amp Profile Move Commands ea eon Description After a Pre Calculate Move command has been successfully executed the pre calculated move is in a ready state The GO command initiates the move which will begin immediately within 120 usec If the pre calculation was bad parameters out of range or a second Motion command precedes the GO a Program Error will result and the motor will be shut down It is not required for the GO command to immediately follow the Motion command Other commands that do not affect the Motion intermediate values can be executed before the GO A second Motion command or the Velocity Mode command before the GO will cause a Program Error Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex 1 Word Example QuickControl Example Perform the Calculation Task on oy Conna x following Motion command Command Name 16 231 CR MOVE PCG Pre Calculated Go SilverMax Response So Test Cancel ACK only Response Example 40 CR GlverMax Command Reference Page 105 Motion amp Profile Move Commands PRE CALCULATE MOVE PCM Description The Pre Calculate Move command causes SilverMax to perform just the Calculation task on a Motion command The Motion command to be precalculated must immediately follow the Pre Calculate Move command or no action is taken When this command ha
14. CR Cancel e Reaister Accumulator 10 Description SilverMax Response my r Data Format ACK only Hex C Acceleration Data 1500 mec C Long Velocity Response Example m C ULong Time Position 10 CR l GlverMax Command Reference Page 164 Data Register Commands REGISTER LOAD MULTIPLE RLM Description Loads an array of data from the selected Non Volatile Memory address to an array of Data Registers A Checksum value is verified to insure good data During the load process the data is used to calculate a Checksum value When the load is complete the calculated Checksum is compared to the stored Checksum If the Checksums do not agree bits 14 amp 12 in the Polling Status Word are set 1 to indicate a register load failure Data is loaded from Non Volatile Memory sequentially It is put into the Data Registers also sequentially starting with the selected register The Number of Registers must be the same as the Length of data stored If the parameters are incorrect or out of range bits 14 amp 12 of the Polling Status Word are set Care should be taken to keep track of data stored into NV Memory to avoid Data Register loading problems and to avoid overwriting of programs or other data stored in the NV memory In addition to two words for each register stored a word containing the count and checksum information and a word of 0 are prepended to the register data The zero preven
15. Class D 1 Words GlverMax Command Reference Page 207 CONFIGURE 188 lt I O Line gt 1 to7 Configures the Selected T O CIO OxBC 1 O bit for Input or Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Hex Parameters Range Response Hex MODULO SET 189 lt Count gt 1 to 256 ACK only Sets up a Modulo output MDS OxBD pete of the internal encoder Class D on I O 6 amp 7 See 4 Words lt Encoder 0 Internal 1 O Configuration 1 External Chart External is a hardware counter that is lt Output 0 A B Quad very accurate but limited Format gt 1 Pulse Up Dn to 256 2 Pulse amp Dir MODULO 191 lt Trigger 0 Disable until ACK only Enables the Modulo TRIGGER OxBF Mode gt I O 1 is High output to be triggered by MDT 1 Enable an external input on I O 2 Words 2 Gate modulo 1 Trigger can be used Class D using I O 1 as a One Shot if desired POSITION 245 lt Starting User 0 Disable Usage ACK only Causes I O 1 to toggle COMPARE OxBF Data Register gt 10 to 40 its state when the motor PCP position is equal to or Class D 2 Words greater than absolute value the Position value contained in the first of two User Data Registers SET OUTPUT 205 lt I O Line gt ACK only Sets the selected I O line BIT SOB OxCD to a High logic 1 Class D condition Output 5 2 Words volts
16. Commands GlverMax Command Reference Page 176 CLEAR MAX ERROR CME Description Misc Commands The Maximum Error absolute value of the Position Error is updated and latched each servo cycle The value is limited to a single word saturating at 32767 Ox7FFF as a maximum value This command allows the Maximum Error value to be reset to zero so that the Maximum Error for a new motion profile may be determined The Maximum Error value is stored in a Dedicated Data Register and may be read using the Read Register command Command Info Command Command Name Type Clear Max Program Error Class D CME Example Clear the Maximum Error value 16 147 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Command Parameter Range Code Hex Parameters Hex QuickControl Example Edit Command Ed Command Name MISC CME Clear Max Error Description Test Cancel Page 177 Misc Commands CLEAR INTERNAL STATUS CIS Description The Internal Status Word is used to indicate different conditions or states in SilverMax Several of the conditions are latched and therefore are persistent even after the condition has changed The Clear Internal Status command is used to clear the latched conditions in the Internal Status Word This command should be used after a Kill Motor condition has occurred before normal operation can be restored
17. Position Input Mode uses a set of Data Registers and processing to allow sophisticated manipulation of the input data This allows the input signal to be calibrated to give the desired position control see Input Mode Usage for more details on using this mode Before putting SilverMax into the Position Input Mode Data Registers 12 18 must be initialized with the appropriate data to allow proper operation If using an Analog input for the data source the Analog channel to be used must be set up for continuous reading before issuing the mode command see Analog Continuous Read command Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Position Input Program 216 lt Filter constant gt 0 to 32767 Mode Class D OxD8 0 to Ox7FFF Pim Actually Target 4 Words lt Stop Enable gt 0to65535 oes mist Po KOTO OXFFFF lt Stop State gt 01065535 1or0 0 to OxFFFF Example Edit PIM Position Input Mode x Position Input mode using a 117 Hz filter 30000 32768 e 17 270120uS 16 216 30000 0 0 CR Input Data Filter __ Cancel l Te Hz Description SilverMax Response H _ Exit Conditions ACK only Response Example 10 CR QuickControl Example SlverMax Command Reference Page 79 Mode Commands REGISTERED STEP amp DIRECTION RSD oo ee oN ost DIRECTION SSD Description This command works the same as the
18. Profile Move commands make up the set of commands that use the SilverMax Trajectory Generator to perform simple or complex motions GlverMax Command Reference Page 89 Motion amp Profile Move Commands See Also SSCURVE FACTOR Motion amp Profile Move Commands SCF for all motion profile Motion amp Profile Move commands make up the set of commands that use the SilverMax Trajectory Generator to perform simple or complex motions Motion commands provide a basic Acceleration Velocity Deceleration Trapezoidal shaped move that goes a given Relative Distance or to a defined Absolute Position Once initiated these moves cannot be altered dynamically They may however be exited via the Stop command or the Change Velocity Program and the Profiled Move Exit command if multitasking is enabled Motion commands come in three flavors 1 Standard where all parameters are sent with the command 2 Registered where the Distance or Position parameters are located in a User Data Register 3 Extended Registered where all of the move parameters except for the Stop Conditions are located in User Data Registers Within each flavor there is a matrix of commands that vary the parameter types A Absolute or Relative The move runs to a given Absolute Position or a Relative Distance B Velocity or Time The motion profile uses Acceleration and Velocity or Acceleration Time and Total Time for the speed parameters Motion commands c
19. The increment sets how much current will be added each servo cycle 120usec The ramp up time is calculated by taking the final value divided by the increment times 120usec Example 20000 5 4000 4000 0 00012 480 milliseconds Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Torque Ramp Program lt final value gt 0 to 32767 Class D lt increment gt 1 to 32767 Example QuickControl Example Set open loop current to 20000 Edit TRU Torque Ramp Up x 100 in 4000 servo cycles 480 milliseconds Cancel Maximum a Final Torque 100 E Description 16 222 20000 5 CR SilverMax Response lt 1 Defaut Increment per C Units ACK only 120 uSec m Normal C Native Response Example 10 CR GlverMax Command Reference Page 75 Mode Commands Mode Commands Mode Commands put SilverMax into required and special modes of operation Some modes give SilverMax the ability to input analog or Step and Direction signals for motion control SlverMax Command Reference Page 76 Mode Commands GO CLOSED LOOP GCL Description Puts SilverMax into Closed Loop operation This is typically only done one time during initialization This command is used to put SilverMax into Closed Loop mode if the unit has been placed into Open Loop Mode This command sets the phase relationship between the motor rotor and the encoder for closed loop operat
20. This command is particularly useful for resetting the Holding Error and Moving Error bits so new errors can be detected The Internal Status Word is copied into a Dedicated Data Register and can be read by a Host controller using the Read Register Command See Data Register Commands for more details Command Info Command Type Program Class D Command Name Clear Internal Status CIS Example Clear the Internal Status Word 16 163 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Command Parameters Parameter Range Hex 163 OxA3 1 Word QuickControl Example Edit Command x Command Name MISC CIS Clear Internal Status Description Test Cancel Page 178 Misc Commands CHECK INTERNAL STATUS CKS Description This command checks the conditions of the Internal Status Word in the same manner as does the Jump command If the condition enabled is true bit 6 of the Polling Status is set to 1 A zero in the Condition Enable parameter unconditionally sets bit 6 of the Polling Status Word This command may be used to convey information from a program executing back to the host processor that is polling the SilverMax The Internal Status Word is copied into a Dedicated Data Register and can be read directly by a Host controller using the Read Register Command See Data Register Commands for more details Command
21. amp total move time as parameters Time Values are in ticks A tick is equal to 120usec MOVE RELATIVE VELOCITY BASED MRV Class D 135 lt lt Distance gt gt 0x87 9 Words 2 147 483 648 to 2 147 483 647 0 to OxFFFFFFFF lt lt Acceleration gt gt 1 to 1 073 741 823 1 to 0Ox3FFFFFFF lt lt Velocity gt gt 0 to 2 147 483 647 0 to Ox7FFFFFF lt Stop Enable gt 0 to 65535 0 to OXFFFF lt Stop State gt 0 to 65535 0 to OxFFFF ACK only Initiates a relative distance move using Acceleration amp Velocity parameters PRE CALCULAT ED GO PCG Class D 231 NONE 0xE7 1 Word NONE After a PRE CALCULATE MOVE command has been successfully executed the GO command initiates the move which will begin immediately within 120 usec PRE CALCULAT ED MOVE PCM Class D 232 OxE8 1 Word ACK only Causes SilverMax to perform the Calculation task on a Motion command The move does not begin until a GO is sent PROFILE MOVE CONTINUO US PMC Class D 240 lt Stop Enable gt OxF0 3 Words 0 to 65535 1 to 14 0 to OxFFFF lt Stop State gt SlverMax Command Reference 0 to 65535 lor 0 to OxFFFF Page 198 ACK only Puts SilverMax into a move that does not end unless explicitly commanded Du
22. if the Kill Enable Driver command has been issued Without Multi Tasking the motor driver is always disabled regardless of the Enable Driver state Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Progam J25 NOE NOE Enable Class D Multi Tasking 1 Word EMT Example QuickControl Example Enable Multi Tasking operation Edit Command x 16 225 CR Command Name INIT EMT Enable Multi Tasking Description Cancel SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 49 Initialization Commands KMC Description Error Limits sets the Moving Error limits the Holding Error limits and the Delay to Hold time following a motion before the motor uses the holding torque limit setting and the holding error limits At the completion of a motion the Trajectory Generator has completed the move calculation the Delay to Holding counter will begin counting down When the count reaches zero one count per 120 microseconds the motor changes to Hold Mode The Moving Error limit is always checked while the Holding Error limit is only checked while in the Hold Mode The Delay to Holding also controls when the SilverMax will switch from the Moving torque limits to the Holding torque limits Lower closed holding torques may be used to reduce heating in the case of a stall or jam Reduced open holding torque
23. is halted and the new velocity is set into the motor Also stops a Program from executing NOTE if the acceleration is negative the accumulated error is removed and the absolute value of the acceleration is used Puts SilverMax in a Velocity mode constant velocity move If in a program execution stops NOTE the sign of the velocity sets the direction the acceleration is unsigned positive Code Command Command Summary Tables Parameter Range Command Name Hex Command Parameters Hex SilverMax Description Response Motion amp Profile Move Commands HARD STOP MOVE HSM Class D 229 0xE5 1 Word This command provides a way while in Multi Tasking operation to execute a Hard Stop of any move or mode from within a program INTERP MOVE START IMS Class D 253 OXFD 1 Words ACK only This command uses Register 17 18 and 19 as well as 20 24 from the profiled move command Register 17 holds a pointer to the first of 4 values A parameter value of 0 enables the 4 deep interpolated move queue A is written to the upper half of register 17 when the data it points to have been used If taking data from the queue then the unit will wait for the initial data before execution Register 18 is used internally to hold the remaining time and register 19 holds the default deceleration to stop with if the next data is
24. or a Done bit may not simultaneously be employed as bit I O Attempting to will generate a Sequence Error and shut down the program See Using SilverMax I O in the SilverMax User Manual for more information on I O usage and conflicts Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Clear Output Program 206 lt I O Line gt Bit Class D OxCE COB 2 Words Example QuickControl Example Spon epee aa 16 206 1 CR Select which output to clear rs l Cancel g Opa Description ACK only Output 2 C Output 6 SilverMax Response C Output 3 C Output 7 Response Example C Output 4 CESS 10 CR SlverMax Command Reference Page 153 I O Commands DISABLE ENCODER MONITOR DEM Description Turns off the Enable Encode Monitor mode If the Enable Encode Monitor mode was set this command will take it out of the monitor mode and return the Digital I O to normal operation See Enable Encode Monitor below for more details Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Disable Program 171 Encoder Class D OxAB Monitor DEM 1 Word Example QuickControl Example Turn off monitoring of the Internal n Encoder Edit Command E Command x Command Name 16 171GR I0 DEM Disable Encoder Monitor S
25. the motor will again be shutdown and the Kill Motor Recovery routine will be called again The presence of an over voltage trip indicates the need for a power clamp module to dissipate the power generated during high decelerations braking operations NOTE The Kill Enable Driver command does not allow the motor driver to stay enabled when an Over Voltage Trip occurs This condition always disables the motor driver The motor driver is disabled when this condition occurs and must be re enabled using the Enable Motor Driver command or by re writing the Motor Constants The factory default is set at 53 volts A power supply voltage that exceeds 52 volts may cause the motor to shutdown at power up Unregulated power supplies with excessive voltage ripple can cause an over voltage trip even though an average reading meter may report the voltage as within specification The over voltage trip may also activate when doing rapid decelerations with large inertias or using the SilverMax as a clutch without using a Clamp Module between the SilverMax and the power supply Note the over voltage and low voltage thresholds are dependent upon the CAL ADC command having been executed to retrieve the ADC calibration factor from a factory non volatile memory location Command Info Command Name Command Type Command Command Parameter Range Code Hex Parameters Hex Over Voltage Trip Program 213 lt Voltage gt 1 to 53 OVT Class D 0xD5 1 to
26. 0 to 65535 1 or0 0 to OxFFFF Example QuickControl Example End the current Profile move when Edit PMO Profile Move Override at Position Stop if Input 1 is high 1 The following registers store the paramters f for this move Make sure they have been 2 initialized before executing Cancel 16 249 1 1 CR a Sil M R User Register 20 Position Description liveriviax Response User Register 21 Acceleration P User Register 22 Velocity Advanced User Register 23 Deceleration ACK only User Register 24 Offset Test Stop Response Example 10 CR SlverMax Command Reference Page 109 Motion amp Profile Move Commands Description The Profile Move command works identical to the Profile Move Continuous except that when the Position is achieved the move ends stops and goes into position holding mode All of the parameters including the position can be changed while the move is executing Once the move has ended changing the parameters will have no effect Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Profile Move Program lt Stop Enable gt 0 to 65535 PMV Class D 1 to 14 OO OxFFFF 3 Words lt Stop State gt 0 to 65535 1 or0 0 to OxFFFF Example QuickControl Example Sane a eae if Input 1 is high 1 The following registers store the paramters 16 241 11 CR
27. 219 ANTI HUNT MODE Program E Series Rev 329 427 AHD 230 ANTI HUNT DELAY _ Program E Series Rev 321 BRT 174 BAUD RATE Set Baud Rate Program CTC 148 CONTROL CONSTANTS Control Constants Program DDB 171 DISABLE DONE BIT _ _ Program E Series DIF 252 DIGITAL INPUT FILTER _ Program E Series Rev 322 GlverMax Command Reference Page 216 DIR DLC DMD DMT EDH EDL EMD EMT ERL FLC GOC IDT KDD KMC KMR LVT MCT MTT OLP OVT PAC PLR PRO SCF SEE SIF SLC SSL TQL TRU SlverMax Command Reference 184 243 228 226 251 187 221 225 151 169 287 155 183 182 167 181 212 168 214 152 213 172 208 185 195 192 186 244 221 149 222 Command Name Cross Reference DIRECTION DUAL LOOP CONTROL DISABLE MOTOR DRIVER DISABLE MULTI TASKING ENABLE DONE HIGH ENABLE DONE LOW ENABLE MOTOR DRIVER ENABLE MULTI TASKING ERROR LIMITS FILTER CONSTANTS GRAVITY OFFSET CONSTANT IDENTITY KILL DISABLE DRIVERS KILL ENABLE DRIVERS KILL MOTOR CONDITIONS KILL MOTOR RECOVERY LOW VOLTAGE TRIP MOTOR CONSTANTS MAXIMUM TEMPERATURE TRIP OPEN LOOP PHASE OVER VOLTAGE TRIP PHASE ADVANCE CONSTANTS POWER LOW RECOVERY PROTOCOL S CURVE FACTOR SELECT EXTERNAL ENCODER SERIAL INTERFACE SINGLE LOOP CONTROL Kill Motor Mask Kil
28. 3 Yes Bit10 Halt command was Bit 2 Yes Positive Calculation result sent Yes Bit 9 Holding error Bit 1 Yes Zero Calculation result Yes Bit 8 Moving error Bit 0 Yes Index sensor found GlverMax Command Reference Page 21 Status Commands Read Program Buffer RPB Description Reads the Data that is currently contained in the Program Buffer The specified number of Words is read from the Program Buffer starting with the given address Up to 8 words can be read at one time This limit is due to the size restriction of the Serial Communications Buffer To read the entire contents of the Program Buffer multiple reads are required For details on SilverMax memory management see the User Manual section Programming SilverMax NOTE When reading command codes from Program Buffer the MSB will be stripped off For example if an MRV command is read from the Program Buffer it will be read as a 0x07 instead of a 0x87 Command Info Command Name Command Name Command Command Parameter Code Hex Parameters Range Hex Read Program Class A oe in words 1toOx08 0 to 0x00C7 Example QuickControl Example Read the first 7 words from Program Buffer Immediate Host Mode Command Only 16 6 7 0 CR SilverMax Response Buffer Data Length of Words Response Example 10 0006 0007 0000 9C40 0002 7524 2000 0058 CR GlverMax Command Reference Page 22 Status Commands Revision RVN Descripti
29. 7 864 seconds in time 65534 ticks To convert Total Time and Acceleration Time to seconds multiply by 0 00012 The Stop Enable and Stop State words determine which digital inputs and or index signal are used to cause the motion to end before reaching the set Position See Using Inputs to Stop a Motion in the SilverMax User Manual GlverMax Command Reference Page 101 Motion amp Profile Move Commands Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Move Program 177 lt lt Position gt gt 2 147 483 648 to Relative Class D 0xB1 2 147 483 647 Time Based 0 to OxFFFFFFFF lt lt lt lt Acceleration 0to65534 0 to 65534 Time gt gt 0 to OxFFFE MRT 9 Words lt lt Total Time gt gt 2 to 2 147 483 647 2 147 483 647 0x02 to OFFERE O lt lt Stop Enable gt 0to65535 Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax 4000 counts from its current position Do the move in 1 second with a 0 1 second acceleration Distance _ Cancel 16 177 4000 833 8333 0 0 CR ee a SilverMax Response Advanced Ramp Time ACK only foo mSec I Stop Total Time E Response Example Tad msee 10 CR GlverMax Command Reference Page 102 Motion amp Profile Move Commands MOVE RELATIVE VELOCITY BASED MRV Description
30. ACK only Initiates an absolute MOVE OxB2 Register gt gt position move using ABSOLUTE acceleration time amp total TIME 9 Words Acceleration 0 to 65534 ove Hine AS BASED Time gt 0 to OxFFFE parameters A Data RAT lt lt Total Time gt gt 2 to Register is used for the Class D 2 147 483 647 Position parameter 0x02 to 0x7FFFFFFF lt Stop Enable gt 0 to 65535 Time Values are in 0 to OxFFFF ticks A tick is equal to lt Stop State gt 0 to 65535 120usec 0 to OxFFFF REGISTER 160 lt lt Data 10 to 40 ACK only Initiates an absolute MOVE OxA0 Register gt gt position move using ABSOLUTE Acceleration amp Velocity VELOCITY 9 Words Acceleration gt gt a sai gos parameters A Data BASED d fe goes Register is used for the RAV 0x3FFFFFFF Position parameter Class D lt lt Velocity gt gt 0 to 2 147 483 647 0 to 0x7FFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF REGISTER 179 lt lt Data 10 to 40 ACK only Initiates a relative MOVE 0xB3 Register gt gt distance move using RELATIVE acceleration time amp total TIME 9 Words move time as BASED parameters A Data RRT Register is used for the Distance parameter Class D Time Values are in lt lt Acceleration 0 to 65534 an sequal Time gt gt 0 to OXFFFE lt lt Total Time gt gt 2 to 2 147 483 647 0x02 to Ox7FFFFFFF lt Stop Enable gt
31. ACKonly Sets the Anti Hunt Anti Hunt error gt Open gt Closed lt Into Anti Hunt error gt Closed gt Open 0 to 35 0 to 0x23 lt Count in Ticks gt 1 Tick 120usec lt Mode gt 0 Anti Hunt only when stopped 1 Anti Hunt stopped or moving lt Speed gt SlverMax Command Reference 0 to 21845 0 to 0x5555 35 to 35 0 to 0x35 amp OxFFFF to OxFFDD 0 to 65535 0 to OxFFFF Otol 0 to 0x1 3 300 1200 24 2400 48 4800 96 9600 192 19200 288 28800 384 38400 576 57600 1000 100000 1152 115200 2304 230400 Page 185 ACK only ACK only ACK only ACK only ACK only This command sets a time delay for waiting to send an ACK or data after a command has been received 120usec per count Non 0 in RS 232 Serial mode enables RS 232 Multi drop Sets the Anti Hunt transfer constants Typical values for these would be 10 and 4 decimal Making both zero disables the anti hunt mode The Anti Hunt Delay sets up a time delay from when a motion is complete to when the Anti Hunt is allowed Anti Hunt Mode allows Anti Hunt to be active even while in motion as well as while at rest rather than only active at rest Sets the serial communications baud rate Defaults to 57600 if not set Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Parameters Range Response Hex Hex CALIBRATE 211
32. Direction mode with a step multiplier ane of 1 16 180 1024 CR eT SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Page 82 Mode Commands TORQUE INPUT MODE TIM Description Puts the SilverMax into a Torque control mode Uses the contents of Data Registers 12 18 for torque control processing while the motor is moving In this mode data from an Analog Input or the Serial Interface can be used to control the torque of the motor while moving A filter parameter is use to filter the incoming data See Filter Parameters at the beginning of this manual for details in converting Hz to native SilverMax values This is the same type of low pass filter as used in the Velocity Estimator filters in the PVIA loop The Torque Input Mode may be exited using digital inputs Digital inputs are used in the same manner as the Motion Profile Commands See Using Inputs to Stop Motions in the SilverMax User Manual As with other motions the Torque Input Mode may also be exited via the Stop command or the Change Velocity Program and the Profiled Move Exit command if multitasking is enabled Torque Input Mode uses a set of Data Registers and processing to allow sophisticated manipulation of the input data This allows the input signal to be calibrated to give the desired torque control See Input Mode Usage for more details on using this mode Before putting SilverMax
33. Feedback gt 0 to Ox7FFF lt Acceleration 0 to 32767 Feedback gt 0 to Ox7FFF Enables SilverMax Multi Tasking operation which allows Motion while executing a program Sets error moving and holding error limits for status and motor shut down purposes Sets the delay time after a movement until the motor uses hold currents and hold error limits Also used for placing SilverMax into Drag fee ee de E O e _t Sets the Velocity and Acceleration Feedback filter constants See SilverMax Servo Tuning for more information Establishes a value that compensates for the effects of gravity on the load which the motor is driving Changes the identity of the SilverMax NOTE Group Identifier is a broadcast address giving no ACK Identifier is the unit address If the Group Identifier is zero it is ignored Command Name KILL DISABL E DRIVE R KDD Class D gt ofS KILL ENABL E DRIVE R KED Class D gt y KILL MOTOR CONDITION S KMC Class D Factory Default is Kill on Over Temperature __ SYSS RS KILL MOTOR RECOVERY KMR Class D Factory Default is do nothing SC OXOEFF LOW VOLTAGE TRIP LVT Class D Factory Default is 0 Don t Check SlverMax Command Reference Command Code Hex 183 0XB7 1 Word 182 0xB6 1 Word 167 0xA7 3 Words 181 0xB5 2
34. Immediate type command This method requires that a Host controller be connected to the Serial Interface during initialization Another method is to use data that has been previously stored in the Non volatile memory Using the Register Load Multiple command all of the Data Registers may be initialized at one time The Register Load from Non Volatile can also be used but it requires each register to be loaded one at a time If the register load method is used the data must be stored in Non Volatile Memory ahead of time using either the Register Store Multiple or the Register Store to Non Volatile commands The Write Register Program command may also be used to initialize these registers within a program The following is a description of the Data Registers used and their functions Data Data Range Data Data Register Function Register Source 12 2 147 483 648 to SilverMax Input Source Data Data can be placed here by 2 147 483 647 or User Analog or Data Register commands 13 2 147 483 648 to User Input Offset 2 147 483 647 14 0 to 32767 User Input Dead band 15 0 to 32767 User Maximum Scale Limit 16 2 147 483 648 to User Maximum Output Scale 2 147 483 647 17 2 147 483 648 to User or Output Offset 2 147 483 647 SilverMax 18 0 to User Output Rate of Change Limit 2 147 483 647 GlverMax Command Reference Page 85 Mode Commands The following diagram shows the Data Operations and da
35. Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Check Program 164 lt Condition Enable gt 0 to 65535 Internal Class D OxA4 0 to OxFFFF Status CKS 3 Words lt Condition State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Check for a Last Calculation Was EEE x Positive and report to Host using Polling Status Word Select which conditions to check Fress the buttons to Ok change state or here for i Cancel 16 164 4 4 CR naehep _Coreal SilverMax Res ponse Index Found Disable Moving Error From Error Limit Disable Last Calculation Was Zero Disable Holding Error From Error Limit Disable ACK on ly Last Calculation Was Positive Halt Command Was Sent Disable Res ponse Exam p le Last Calculation Was Negative Disable Input Found On Last Move Disable 0 1 Disable Wait Delay Count Exhausted Disable 40 CR jee jw 70 2 Disable Over Voltage Disable 0 3 Disable Low Voltage Disable Over Temperature Disable SlverMax Command Reference Page 179 Misc Commands TARGET TO POSITION TTP Description This command copies the current Position value into the Target register This is useful for removing errors when an obstruction is encountered without losing track of position This allows the next motion to move and ramp as expected rather than having to unwind the accumulated error This is useful for homing against a har
36. Parameters Hex Hex Program 151 lt Moving limit gt 32768 to 32767 Error Limits Class D 0x97 0 to OxXFFFF ERE lt Holding limi g limit gt 32768 to 32767 lt Delay to Holding gt 0 to 65535 1 tick 120usec 0 to FFFF SlverMax Command Reference Page 50 Initialization Commands QuickControl Example Example Edit ERL Error Limits x Allow 500 counts of error while moving and 100 counts of error when holding position Allow 120 7 Cancel milliseconds before going into Hold Mavis Ener Link a mode with its tighter error limit 500 counts J Dereon Holding Error Limit I Drag Mode 16 151 500 100 1000 CR mm c SilverMax Response Delay to Holding Normal Native jo nsec ACK only a Response Example 40 CR GlverMax Command Reference Page 51 FILTER CONSTANTS FLC Description Initialization Commands Filter Constants selects the cutoff frequency for the velocity and acceleration filters See Filter Parameters in the beginning of this manual for details on converting the filter values from Hz to native SilverMax units The filter cutoff frequencies affect the motor tuning See Tuning SilverMax in the SilverMax User Manual for more details on using this command Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program Filter Class D Constants FLC 4 Word
37. REGISTER MOVE RELA ME BASED Motion amp Profile Move Commands See Also Write Register amp Description CALCULATION commands The Extended Register Move Relative performs a relative distance move using move parameters contained in the indicated User Data Registers This command works like the basic Move Relative Time Based MRT command in all other ways The move parameters are retrieved from the User Data Registers in the following order If Starting Data Register N N Distance N 1 Acceleration Time N 2 Total Time The move parameters must be written into the User Data Registers prior to executing the move command The range of the move parameters stored in the User Data Registers must be the same as those used in the basic Move Relative Time Based MRT command The Write Register commands can be used to write the move parameters into the Data Registers The Write Register commands do not type check the parameters when written therefore errors may occur at time of execution Changing the move parameters during an actual move will have no affect on the move in progress The Extended Register Move Relative is useful when the move parameters need to be calculated internally or if the command is being executed in a program and the move parameters need to be dynamically updated through the Serial Interface Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Ext
38. RLN RSM RSN WRI WRP 141 207 193 188 206 171 170 190 189 191 245 205 248 197 199 196 198 154 Command Name Cross Reference PROGRAM RETURNON INPUT PROGRAM RETURN _ gt RUN PROGRAM Run Block START DOWNLOAD Send To Buffer STORE PROGRAM Store Block WAIT ON BIT EDGE 7 _ WAIT ON BIT STATE 7 _ WAIT DELAY Wait Delay I O Commands ANALOG CONTINUOUS READ ANALOG READ INPUT CONFIGURE I O DEFAULT IS ALL I O SET FOR INPUT CILJEVAIR OUOMPIRIUNE IRIE Pere DISABLE ENCODER Hide Encoder MONITOR ENABLE ENCODER View Encoder MONITOR MODULO CLEAR _so IMKOIDIUILIO SITE see MODULO TRIGGER _ POSITION COMPARE SET OUTPUT BIT wren Data Register Commands ADDHOREGONERS et REGISTER LOAD _ MULTIPLE REGISTER LOAD FROM s _ NON VOLATILE READ REGISTER Read Symbolic REGISTER STORE MULTIPLE REGISTER STORETO 7 _ NON VOLATILE WRITE REGISTER Write Symbolic IMMEDIATE MODE WRITE REGISTER Store Symbolic PROGRAM MODE Miscellaneous Function Commands GlverMax Command Reference Page 220 Program Program Immediate Immediate Immed
39. Reason Queue Full 10 0019 0006 CR The NAK indicates that the data was rejected This should commonly happen if the Host is keeping ahead of the SilverMax unit It means that the queue has been kept full and to send the data again Periodic polling should also be done to see that the move has not improperly ended due to the Host falling behind the consumption rate of the SilverMax and data not being available when needed GlverMax Command Reference Page 96 Motion amp Profile Move Commands MOVE ABSOLUTE TIME BASED MAT Description Move Absolute initiates a move to an Absolute position Absolute positions are based on the Incremental Encoder resident in SilverMax The move profile uses Time as the constraint for the Acceleration period and for the total move Absolute position is retained in SilverMax in a dedicated Data Register If needed the Absolute position can be reset to 0 using the ZERO TARGET amp POSITION command or offset to by the CALC command to make a latched location such as an index to be the 0 location without moving to it Moves to an absolute position first calculate the Distance and Direction required to make a move The move is then executed using the calculated Distance and Direction This function eliminates the need to pre calculate the move within the Host or inside of a user program The Position Value Units is in Encoder Counts For a SilverMax with an encoder that provides 4000 counts pe
40. Scaled Step and Direction command below except that the scaling value is found in a User Data Register specified in the parameter The scaling value should be stored in the User Data Register prior to executing this command but it may be modified at any time after the Step and Direction mode is initiated All commands able to modify Data Register contents can be used to set the scaling value This includes the Calculation command which can be used to dynamically adjust the scaling value when in Multi Tasking operation Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Registered Program 223 lt User Data 10 to 40 Step amp Class D OxDF Register gt Ox0A to 0x28 Direction RSD 2 Words Example QuickControl Example Put SilverMax into a Set amp Direction Edit RSD Registered Step amp Direction x mode using User Data Register 11 for the scaling value 16 223 11 CR Register Cancel User 11 E Description SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Page 80 Mode Commands SCALED STEP amp DIRECTION SSD ENCODER SEE Description The Scaled Step and Direction command causes the system to exit the Hold mode of operation and follow a counter as a Target Position The Target Position and Target Velocity are controlled by the Step and Direction Input These are TTL Level and should
41. SilverMax Command Upper Word Lower Word Carriage Return return data Address Received of Data of Data ASCII code OD 10 000C 0005 O6A3 CR GlverMax Command Reference Page 168 Data Register Commands REGISTER STORE MULTIPLE RSM Description Stores data from an array of Data Registers to the selected NV Memory address A Checksum value is calculated from the array and stored with the array Data from the selected Data Registers is stored sequentially to NV Memory Data is also copied from the Data Registers sequentially The Length of the array and a Checksum are combined and written to the first NV Memory Address followed by a 0 then the array of data The length is used by the Register Load Multiple command to know the size of the array to load from Non volatile Memory The Checksum is used by the Register Load Multiple command to determine the data integrity This prevents the loading of bad data that could cause erratic operation The 0 prevents an array of data from being executed as a program Memory Map in Words Length N Checksum Upper Byte Lower Byte 0 Register X Upper Word Register X Lower Word Register X 1 Upper Word Register X 2 Lower Word Register X N 1 Upper Word Register X N 1 Lower Word This command writes 2 Words of data for each Data Register a Word for the Length Checksum and a Word for a 0 placed between the Length Check
42. SilverMax Response Description ACK only Test Cancel Response Example 10 CR GlverMax Command Reference Page 94 Motion amp Profile Move Commands See Also Profiled Move PMV Interpolated Move INTERPOLATED MOVE WRITE QUEUE IMW Start GMS Interpolated Move Clear IMC Description This Command writes data to the Interpolated Move Queue through the Serial Interface This queue is a software FIFO First in first out buffer capable of holding data for up to four interpolated motion segments the data for each segment consisting of four long words 32 bits each of data If the data is able to fit within the queue it is accepted and the communication is acknowledged If the queue is full the request is answered with a NAK Full response This NAK is to be expected it just indicates that the host is successfully keeping the queue filled The same data should be sent again until it is positively Acknowledged The four long words of data associated with each Interpolated Move segment are 1 Time ticks 0 to 2 147 483 647 indicating the number to 120 microseconds time slices the segment is to last A 0 indicates it is the last segment of the move 2 Position 2 147 483 648 to 2 147 483 647 Unless the segment is intended to come to a halt at a given location this should be full scale positive if the final velocity of the segment is positive or full scale negative if the final velocity of the segment i
43. The Write Register commands can be used to write the move parameters into the Data Registers The Write Register commands do not type check the parameters when written therefore errors may occur at time of execution Changing the move parameters during an actual move will have no affect on the move in progress See Scaling in the beginning of the manual for details on scaling the parameters to engineering units The Extended Register Move Absolute is useful when the move parameters need to be calculated internally or if the command is being executed in a program and the move parameters need to be dynamically updated through the Serial Interface Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Extended Register Program lt lt Starting Data 10 to 40 Move Class D Register gt gt Absolute lt Stop Enable gt 0 to 65535 Velocity Based 4 Words 0 to OxFFFF XAV lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Edit XA V Extended Register Move Absolute Velocity Based x Move SilverMax using parameters i MC Select the first of 3 consecutive registers from User Data Registers 25 27 that hold the the data for this command d 16 234 2500 CR Starting Register Description SilverMax Response L Advanced ACK only Test Response Example Stop 10 CR GlverMax Command Reference Page 117 EXTENDED
44. Using Inputs to Stop a Motion in the SilverMax User Manual GlverMax Command Reference Page 97 Motion amp Profile Move Commands MOVE ABSOLUTE TIME BASED MAT Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Move Program 176 lt lt Position gt gt 2 147 483 648 to Absolute Class D OxBO 2 147 483 647 Time Based 0 to OxFFFFFFFF lt lt lt lt Acceleration 0to65534 0 to 65534 Time gt gt 0 to OxFFFE Mat 9 Words lt lt Total Time gt gt 2 to 2 147 483 647 2 147 483 647 0x02 to sf OrFFFFFFF O lt lt Stop Enable gt 0to65535 Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax to position 200 in Edit MAT Move Absolute Time Based Ea 1 0 seconds with a 0 1 second acceleration Cancel 16 176 200 83 8333 0 0 CR Absolute Location ee SilverMax Response paul Ramp Time foo ACK only 100 msee ee Is Stop Response Example Total Time E jood msec j 10 CR SlverMax Command Reference Page 98 Motion amp Profile Move Commands MOVE ABSOLUTE VELOCITY BASED MAV Description Move Absolute initiates a move to an Absolute position Absolute positions are based on the Incremental Encoder resident in SilverMax The move profile uses Acceleration and Velocity as the constraints Absolute position is retained in Silver
45. Word is set 1 to indicate a Program load failure This command only transfers the Program into the Program Buffer it does not cause execution to begin Once loaded into the Program Buffer a Run Program command must be issued to begin program execution The program will remain in the buffer until removed by the Clear Buffer command or over loaded by another Load Program command Command Info Example Command Command Command Command Code Name Type Hex Parameter Range Parameters Hex lt NV Memory 0 to 3839 Address gt 0 to OxOEFF lt Count gt 0 use count stored at The Count is first address location typically set to O 1 to 199 read the literal word count Load Immediate 14 Program Class B 0x0E LPR QuickControl Example Load the program stored at NV Immediate Host Mode Command Only Memory Address 110 16 14 110 0 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 135 Program Flow Commands LOAD AND RUN PROGRAM LRP Description The Load and Run Program transfers a program from the non volatile memory to the Program Buffer and once loaded the program is executed This command combines the function of the Load Program and the Run Program together in one command The Load and Run Program is designed to be placed inside of programs to enable branching off to other programs stored in NV memory The content
46. Words 212 0xD4 2 Words Command Summary Tables Parameter Range Hex Command Parameters NONE NONE ACK only NONE NONE ACK only lt Condition Enable gt 0 to 32767 ACK only 0 to Ox7FFF lt Condition State gt 01032767 State gt 0 to 32767 0 to Ox7FFF ACK only 0 Do Nothing 1 Jump to memory address 0 1 to 3839 NV Memory address 1 to OxOEFF 0 Don t Check 10 to 48 1 to 0x30 Page 190 SilverMax Description Response Disables the motor driver and shorts the windings together when a KILL MOTOR CONDITION is met Causes SilverMax to leave the motor drivers enabled when a KILL MOTOR CONDITION is met Sets the conditions in the Internal Status Word that will disable the motor Does a complete shut down of motor drivers Sets up what happens after a Kill Motor Condition Can do nothing re initialize the motor or jump to a user Program Used in conjunction with the Power Loss Recovery command this command sets the input voltage that will trigger a Low Voltage status Command Summary Tables Command Command Command SilverMax Description Name Code Parameters Response Hex 0 to OxX7FFF 0 to Ox7FFF 0 to Ox7FFF 0 to Ox7FFF 0 to Ox7FFF 0 to Ox7FFF 0 to Ox7FFF 0 to Ox7FFF 0 Don t Check Parameter Range Hex MOTOR 168 CONSTANTS 0xA8 MCT Class D Sets the motor constants These are motor type an
47. each non queued data transfer at the start of each segment See notes above Example QuickContol Example Start Interpolated Move 16 253 CR Command Name MOVE IMS Interpolated Move Start SilverMax Response Descrioti Cox Description ACK only Test Cancel Response Example 10 CR SlverMax Command Reference Page 93 Motion amp Profile Move Commands SeeAlso Profiled Move PMV Interpolated INTERPOLATED MOVE QUEUE CLEAR IMQ Move Start M5 Interpolated Move Write AMW Description This Command clears any data that may have been left in the Interpolated Move Queue This queue is a software FIFO First in first out buffer capable of holding data for up to four interpolated motion segments the data for each segment consisting of four long words 32 bits each of data If the data is able to fit within the queue it is accepted and the communication is acknowledged If the queue is full the request is answered with a NAK Full response This just indicates that the host is successfully keeping the queue filled The same data should be sent again until it is positively Acknowledged Command Info Command Name Command Command Command Parameter Range Type Code Parameters Hex Hex Interpolated Program Move Queue Class D Clear IMQ 1 Word Example QuickContol Example Stop the SilverMax immediately 16 254 CR Command Name MOVE IMO Interpolated Move Queue Clear
48. fINIT SLE Single Loop Control Description OK SilverMax Response Test Cancel ACK only Response Example 10 CR GlverMax Command Reference Page 71 Initialization Commands SO FT STOP LIMITS SSL See Also WRITE REGISTER PROGRAM TYPE WRP amp Write Register Immediate type WRI Description Sets position limits for End of Travel control Two Data Registers are used to store the end limits End of travel positions must be stored in the specified Registers using a Write Register command The Data Register selection sets aside two registers in succession Any motion affecting the Target is limited so as to keep the target more than the first register value and less than the second register value If the target is beyond a limit only motion in the direction toward the limit is allowed The motion exceeding a given limit is hard stopped at the point that the limit is encountered no ramping occurs Internally the motion calculations continue but their effect is not directed to the Target value The Data Registers can be set with limit values ranging from 2 147 483 647 to 2 147 483 647 This is the full positional range of the SilverMax The limits consider the position as Linear rather than Cyclic If the position attempts to wrap around going past the full range values the Soft Stop Limits will prevent this movement The First Data Register is used for the Lower Limit which is checked when th
49. gt 10 to 40 lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Performs an absolute position move using move parameters contained in the indicated User Data Registers This command works like the basic Move Absolute Velocity Based MAV command in all other ways EXTENDED REGISTER MOVE RELATIVE TIME BASED XRT Class D 178 0xB2 9 Words lt lt Starting Data Register gt gt 10 to 40 lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt SlverMax Command Reference 0 to 65535 0 to OxFFFF Page 201 ACK only Performs a relative distance move using move parameters contained in the indicated User Data Registers This command works like the basic Move Relative Time Based MRT command in all other ways Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Parameters Range Response Hex Hex EXTENDED 178 lt lt Starting Data 10 to 40 ACK only Performs a relative REGISTER OxB2 Register gt gt distance move using MOVE move parameters RELATIVE 9 Words contained in the VELOCITY indicated User Data BASED Registers This XRV command works like the Class D Move Relative Velocity Based MRV command in all other ways lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0
50. in the first NV Memory Address of the program is the Length in words of the program size and the Checksum of the program The first command is read from the address following the Length amp Checksum word with subsequent words transferred up to the size indicated in the Length During the load process the data is used to calculate a Checksum value When the load is complete the calculated Checksum is compared to the stored Checksum If the Checksums do not agree Bit 14 in the Polling Status Word is set 1 to indicate a program load failure This may occur if data and or programs overlap their usage in non volatile memory After a load is complete and no errors were encountered a Run Program will be initiated starting the program and dropping SilverMax into the Program Mode Programs that contain errors will shut down the motor and exit execution when an error is encountered Bit 12 Program errors of the Polling Status Word will be set indicating program execution error The program will remain in the buffer until removed by the Clear Buffer command or over loaded by another Load Program command Command Info Command Command Parameter Command Name Command Type Code Hex Parameters Range Hex Load And Run Program lt NV Memory 0 to 3839 Program Class D Address gt 0 to OxOEFF LRP 2 Words Example QuickControl Example Load and Run the Program stored at NV Memory Address 150 T 16 156
51. inputs are designed to accept 0 to 5 Volts For inputs that require 5 volt or 10 volt operation external offsetting and scaling is required The internal Analog to Digital Converter ADC is a 10 bit version which yields approximately 0 005 volts per ADC count SilverMax filters 5 millisecond the inputs and scales them up to a 15 bit value 32 counts 0 005 volts but the resolution remains the same Note that the maximum reading corresponds to 32 1023 32736 Analog inputs can be used in a single ended or differential manner With differential usage two analog inputs are used at one time Such as Channels 5 amp 6 This method reduces common mode noise same noise on both inputs from the input source The difference of the two channels is used thus the output range is 32736 Other types of data can be collected using the Analog Continuous Read The Input Power Supply voltage and Internal Temperature can both be read into a Data Register This information can be used for program conditional control or for direct read out to a Host controller Selecting Analog Channel 0 disables the Analog Continuous Read See Using Analog Inputs in the SilverMax User Manual for more information Command Info Command Command Parameter Range Command Command Code Parameters Name Type Hex Analog Program 207 lt Analog 0 Continuous Class D OxCF Channel gt 1 Read ACR 2 Analog 2 3 Words 3 Ana
52. into the Torque Input Mode Data Registers 12 18 must be initialized with the appropriate data to allow proper operation If using an Analog input for the data source the Analog channel to be used must be set up for continuous reading before issuing the mode command See Analog Continuous Read command Command Info Command Name Command Type Command Command Parameter Range Hex Code Hex Parameters Torque Input Program lt Filter 0 to 32767 Mode Class D constant gt 0 to Ox7FFF TIM r lt OExit 0t065535 4 Words Enable gt 1 to 7 0t0o0xFFFF O lt I 0 Exit 0 to 65535 State gt 1 or O 0 to OxFFFF Example QuickControl Example Torque Input mode using a 515 Hz filter F 30000 32768 e etm Input Data Filter Cancel SilverMax Response 515 Hz Description ACK only J Ce Exit Conditions Response Example 10 CR 16 216 2222 1 1 CR SlverMax Command Reference Page 83 Mode Commands VELOCITY INPUT MODE VIM Description Puts the SilverMax into a Velocity control mode Uses the contents of Data Registers 12 18 for velocity control processing In this mode data from an Analog Input or the Serial Interface can be used to control the velocity of the motor A filter parameter is use to filter the incoming data See Filter Parameters at the beginning of this manual for details in converting Hz to native SilverMax values This is the same type of low pass f
53. is found in a User Data Register This works the same as Step and Direction but allows scaling of the input step count 1024 is a scaling factor of 1 Puts the SilverMax into a Velocity control mode Uses the contents of the specified Data register for the velocity value Sending any other mode or motion command exits this mode Command Command Name Code Hex Velocity Mode Immediate Type VMI Class A lt lt Acceleration gt gt Warning this will cause SilverMax to go into a velocity Mode 1 lt lt Velocity gt gt lt Stop Enable gt lt Stop State gt 0 to 65 535 0 to OXFFFF VELOCITY lt lt Acceleration gt gt MODE PROGRAM TYPE VMP Class D 159 Ox9F 7 Words lt lt Velocity gt gt Command Parameters Command Summary Tables SilverMax Description Response Parameter Range Hex 1 to 1 073 741 823 1 to Ox3FFFFFFF 2 147 483 647to 2 147 483 647 0 to OxFFFFFFF 0x80000000 to 0x7FFFFFFF 0 to 65 535 0 to OxFFFF 1 to 1 073 741 823 1 to Ox3FFFFFFF 2 147 483 647to 2 147 483 647 0 to OXFFFFFFF 0x80000000 to 0Ox7FFFFFFF SlverMax Command Reference lt Stop Enable gt 0 to 65 535 0 to OxFFFF lt Stop State gt 0 to 65 535 0 to OxFFFF Page 195 ACK only Sets the motor to the indicated velocity using the given acceleration If the motor is stopped in a step dir or is doing a move the present motion
54. maximum error allowed to enter the Anti Hunt mode Neither of these parameters should be larger than 30 counts for normal operation Setting the second parameter to a negative number will cause a slightly different operation when going from No Anti Hunt into Anti Hunt Closed gt Open Normally SilverMax will not go into Anti Hunt until the error is within the limit and the Closed Loop holding current is less than the Open Loop holding current When the error parameter is negative the Holding currents are not checked If the TORQUE LIMITS Open Hold and Open Moving parameters have been set to zero then the parameters in this command set the limits of a conventional dead band Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program lt Out of Anti 0 to 35 Anti Hunt Class D Hunt error gt 0 to 0x23 Constants Open gt Closed AHC 3 Words lt Into Anti Hunt 35 to 35 error gt 0 to 0x35 amp OxFFFF Closed gt Open to OxFFDD Example QuickControl Example ree eae counts of target Go out of Anti Hunt when 10 counts away Anti Hunt disabled when both parameters 0 m Open to Closed Cancel 16 150 10 4 CR Amount of error required to go out of Ease Anti Hunt Description SilverMax Response fio counts a Se IV Holding ACK on ly Currents Closed to Open Amount of error required to go into Response Example Anti
55. move parameters the Current Position and Current Velocity and adjusting what is required to hit the Absolute Position This means that SilverMax can even go from a Velocity Mode into a Profile Move without needing to stop first Multi Tasking operation is required Remember that the move calculations are being done continually Therefore the parameters can be changed at any time and affect the motion in process The Acceleration and Deceleration parameters should typically be no greater than a ratio of 100 1 of each other one value is no greater than 100 times the other for numerical stability For higher ratios user must verify proper operation GlverMax Command Reference Page 107 Motion amp Profile Move Commands The Position parameter can act as a Relative Distance value by using the ADD TO REGISTER command to increase or decrease the Position value See ADD TO REGISTER for more details The Offset parameter is used to extend a move by the Offset Distance after a Stop Condition is encountered In cases where a move needs to continue a prescribed distance past the point where a sensor triggers a stop this parameter can be used to precisely control that offset distance to be moved Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Profile Move Program 240 lt Stop Enable gt 0 to 65535 Continuous Class D OxFO 1 to 14 PMC 0 to OxFFFF 3 Words lt Stop State
56. not present when needed INTERP MOVE QUEUE CLEAR IMQ Class D 254 OxFE 1 Word SlverMax Command Reference ACK only Page 196 This command clears out the interpolated move queue leaving all 4 entries empty See IMS and IMW for additional information Command Name INTERP MOVE WRITE QUEUE AMW immediate mode Command Code Hex 25 lt lt Time ticks gt gt 0x19 4 long Command Parameters Command Summary Tables Parameter Range Hex 0 to ACK if 2 147 483 647 accepted 0x0 to NAK 0x7FFFFFFF FULL if parameter s lt lt position gt gt 2 147 483 648 to no queue 2 147 483 647 was full 0 to 0xFFFFFFFF lt lt acceleration gt gt 1 to 2 147 483 647 0x1 to 0Ox7FFFFFFF lt lt velocity gt gt 0 to 2 147 483 647 0x0 to Ox7FFFFFFF SilverMax Description Response Write the 4 longword values to the Interpolated Move circular Queue if there is room If the queue is full then it will NAK FULL See IMS and IMQ for additional information MOVE ABSOLUTE TIME BASED MAT Class D 176 lt lt Position gt gt 0xB0 9 Words 2 147 483 648 to 2 147 483 647 0 to OxFFFFFFFF ACK only lt lt Acceleration Time gt gt 0 to 65534 0 to OxFFFE lt lt Total Time gt gt 2 to 2 147 483 647 0x02 to 0Ox7FFFFFFF lt Stop Enable gt 0 t
57. prevent multiple triggering The Low Voltage Recovery parameter is checked to see if a recovery routine has been configured If none has been configured value 0 then the motion and the program are immediately stopped If a recovery routine has been configured via the Power Low Recovery command and multitasking has been enabled then the active motion is allowed to continue and the recovery routine is loaded and run If the multitasking is not enabled then the motion is ended and then the recovery routine is loaded and run This command allows the user to shut down the motor properly when power is lost The current position of the motor for example could be stored to non volatile memory for pseudo absolute encoder functionality Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program 212 lt Voltage gt 0 Don t Check Low Class D 0xD4 10 to 48 Voltage Trip Ox0A to 0x30 2 Words LVT Example QuickControl Example Set Motor to shut down at 10 volts 16 212 10 CR f SilverMax Response Low Voltage Trip Cancel fi 0 volts Description ee ACK only Response Example 40 CR SlverMax Command Reference Page 60 Initialization Commands MOTOR CONSTANTS MCT Description This command initializes the driver stage to produce appropriate drive signals to the motor dependant on both the motor type and the supply voltage These c
58. protocol for 120 milliseconds Also during this time the Baud Rate is set to 57600 and the Serial Interface is RS 485 and then RS 232 This power up procedure allows a Host Controller to get access to the SilverMax without knowing what protocol Baud Rate or serial hardware is selected in the Initialization Program A Halt command can be sent repeatedly during power up When SilverMax recognizes the command it will Halt and remain in the mode it was in at the point the Halt command was received From this point the SilverMax is now in a known state and can be initialized to the desired settings Note The unit will usually recognize RS 232 levels even when in RS 485 mode although it can not properly respond If operating in RS 232 mode explicitly command the motor to this mode if the power on routine has been stopped via a Halt command Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Protocol Program lt Selection gt 0 9 Bit PRO Class D 1 8 Bit Default 2 Words Example QuickControl Example Select the 8 Bit ASCII Protocol Edit PRO Protocol x 16 185 1 CR Seos eoseed Cancel Description SilverMax Response p Protocol C 9 Bit Binary B Bit ASCII ACK only L Response Example 10 CR GlverMax Command Reference Page 67 Initialization Commands Description Using this command the shape of motion
59. the move parameters into the Calculation task and wait until the calculation is done to check for errors before turning it over to the Trajectory Generator The next command in the Command Buffer may not proceed until the pre move calculation has completed 1 5 milliseconds If the next command is a Motion command and the previous motion command is still active a Busy state will occur that will cause a Wait for the prior motion to complete before starting This acts to buffer the second motion command and will cause the program to hold until the second motion command has completed its Calculation Task No error is generated NOTE Step and Direction Mode Velocity Mode Input Mode or a Profile Move is NOT terminated by a Motion command when in Multi Tasking operation These other modes or operations must be explicitly terminated or completed before a move is initiated Velocity Mode command This command does not check the Busy status when executed It just jumps in and takes over from wherever a motion is executing The Step and Direction Mode Input Modes or a Profile Move can be taken over by the Velocity Mode Velocity Mode can be used to decelerate from any of these operations to a stop using a given deceleration Profiled Move Override This command does not check the Busy status when executed It starts up with the existing position and velocity and continues from there applying the new parameters It can be use
60. word Most recent Error value lower word Once filtered Velocity upper word Twice filtered Velocity lower word Integrator value Loop State upper word Motor Torque lower word OO NIDII AIIN O WA 200 R W Current External Encoder Position 201 R W Last External Encoder Index Position 202 Reserved 203 Reserved 204 R Trajectory Acceleration 205 R Trajectory Velocity 206 R W_ Closed loop Hold torque upper word Closed loop Run torque lower word 207 R W_ Open loop Hold torque upper word Open loop Run Torque lower word 208 R W_ Moving error Limit upper word Stopped error Limit lower word 209 R Sense Mask Default Direction 210 R Size of command buffer upper word Start of command buffer lower word 211 R W _ Kill Motor trigger bits upper word trigger state lower word R Read Only R W Read and Write R W Read and Write Write using CALCULATION Offset Target Position command NOTE Care must be taken when writing to the R W Data Registers they can affect the operation of the motor GlverMax Command Reference Page 162 Data Register Commands User or Dedicated Data Registers Read Write These registers are by default User Data Registers that can be used by all commands that work with or on User Data Registers However when SilverMax is put into one of the Input Modes registers 12 to 18 are dedicat
61. 0 7 GlverMax Command Reference Page 157 I O Commands MODULO TRIGGER MDT Description The Modulo Trigger allows digital I O 1 to act as a gating or triggering signal Trigger mode 0 disables modulo output until I O 1 goes from logic Low 0 to High 1 Mode 1 enables modulo output for continuous operation Mode 2 will gate the modulo output whenever VO 1 is high 1 Mode 0 is edge triggered and can be used to as a one shot trigger Mode 2 is used as a one shot reset for mode 0 Mode 0 is set up by first going into mode 2 If I O 1 is low this will disable modulo output which resets the one shot Mode 0 can now be set and will wait until I O 1 goes from Low to High before enabling modulo output Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Modulo Program Trigger Class D MDT lt Trigger Mode gt 0 Disable until I O 1 is High 1 Enable 2 Words 2 Gate modulo using O 1 Example QuickControl Example a ineduoeiieut 16 191 1 CR j Modulo Output Trigger Mode _Lancel_ C Disable Modulo Output Until 1 0 1 is HIGH _Deseiition SilverMax Response ACK only Gate Modulo Output Using 1 0 1 Response Example 40 CR SlverMax Command Reference Page 158 I O Commands POSITION COMPARE PCP Description Causes I O 1 to toggle its state when the motor position i
62. 0 as below except 9 is Register gt not used with this command ANALOG 193 lt Analog 1 Analog 1 This does a single read READ INPUT OxC1 Channel gt 2 Analog 2 of an Analog channel ARI 3 Analog 3 Analog channels 1 2 3 Class D 3 Words 4 Analog 4 or 4 are the standard 5 Analog 1 and inputs Using a 5 for Analog 2 the channel uses amp 2 in 6 Analog 3 and differential mode a 6 Analog 4 uses 3 amp 4 in differential 7 V non mode 7 reads back the calibrated V input voltage non 8 Temperature calibrated 9 reads the ADC counts input voltage scale factor 9 V scale into a Data Register 8 factor reads back the Temperature value non Register gt calibrated Output If setting for Output the logic level Class D lt Setting gt 1 Input Default is all 3 Words 0 Clear Low VO set for input 1 Set High can also be set CLEAR 206 lt I O Line gt l to7 Clears the selected I O OUTPUT BIT 0xCE bit to a Low logic 0 COB condition Output 0 Class D 2 Words volts DISABLE 171 NONE NONE ACK only Changes digital inputs ENCODER 0xAB 1 2 3 back to inputs MONITOR DEM 1 Word Class D This is Default ENABLE 170 NONE ACK only Changes digital inputs ENCODER OxAA 1 2 3 to Encoder Outputs MONITOR A B I EEM 1 Word Class D MODULO 190 NONE ACK only Clears Modulo usage of CLEAR MDC OxBE VO 6 amp 7
63. 0x35 Example QuickControl Example ei e al voltage exceeds 51 volts Eun CYT Over onege Tip E 16 212 51 CR Over Voltage Trip Cancel E volts Description SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 64 Initialization Commands PHASE ADVANCE CONSTANTS PAC Description Sets the motor phase advance constants These are motor type and power supply voltage dependent to optimize motor torque at high speed Factory set for optimal performance The parameters for this command must be obtained from the factory Normally these are set using the Initialize SilverMax tool in the QuickControl software See Initialization in the SilverMax User Manual for more information on SilverMax motor initialization Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program lt P_adv gt 0 to 15 Phase Class D 0 to OxOF Advance lt P2 adv gt 0 to 600 Constants pera 0 to 00258 PAC 0 to 0x25 Example QuickControl Example Phase advance for a 23 5 SilverMax 16 172 5 160 37 CR p Current Voltage 46 Update Cancel SilverMax Response me pocota oc ooo oa 3 QuickControl will read motor ACK only Te from SilverMax Select t Response Example C Manual OREA 10 CR ee Edit Native SilverM Edit ee ease GlverMax Command Reference Page 65 Initializa
64. 150 CR r Select Program To Load and Run Cancel a Description if Select From List of Programs ACK only SilverMax Response Enter Absolute Address Response Example cS 40 CR SlverMax Command Reference Page 136 Program Flow Commands PROGRAM CALL PCL Description The Program Call command works the same as the Jump command except the next command location is stored for a Program Return This works similar to a GOSUB in the programming language BASIC When this command is executed the Program Buffer location of the next command is stored in an internal register When a Program Return command is executed the program will Jump back to the location that was stored Only one Program Call can be executed at one time no nested routines If a second Program Call is executed before a Program Return the program will error Stop execution and Bit 12 in the Polling Status Word will be set See the Jump command above for details on using this command Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Program Call Program 201 lt Program Buffer 0 to 199 PCL Class D OxC9 Location gt lt Condition 0 to 65535 Eons 0 to OxFFFF lt Condition 0 to 65535 State gt 0 to OxFFFF Example QuickControl Example oie pene digital input 1 is High 1 16 201 50 16 16 CR We Cancel SilverMax Response Select from existing labe
65. 3 7 10 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference I O Commands QuickControl Example Edit ARI Analog Read Input Cancel Channel v Main Buss Voltage z Description Register Accumulator 10 Page 151 I O Commands CONFIGURE I O CIO Description Configures the selected digital I O bit for Input or Output When setting as an Output the logic level state is also set Each I O bit is individually set using this command the power up default is all I O bits are inputs This prevents I O conflicts Care must be taken when configuring I O If the I O inputs 4 5 6 or 7 are being used as Analog Inputs 1 2 3 or 4 setting these I O bits to output mode will override Analog input SilverMax I O are TTL compatible input and output The outputs can source 8 milliamps and sink 8 milliamps When using digital I O in a system where they may be connected to other controllers or PLCs it is recommended that Optical isolators be used I O connected directly to switches or sensors may not require isolation according to user system grounding design A 5 Volt power supply output is available on SilverMax to power sensing devices This output can supply 100 milliamps maximum This output should never be driven Outputs that are in use for a Modulo output View encoder or a Done bit may not simultaneously be employed as bit I O Attempting to will generate a Seq
66. 535_ Absolute 4 Words lt Stop Enable gt o n Time Based 0 to 0x XAT lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax using parameters Edit XAT Extended Register Move Absolute Time Based Ea from User Data Registers 20 22 Select the first of 3 consecutive registers that hold the the data for this command 16 236 20 0 0 CR Cancel SilverMax Response Starting Register Description User Profile Move Pos 20 Advanced ACK only Test Response Example Stop Ee m pe e men 10 CR GlverMax Command Reference Page 116 Motion amp Profile Move Commands EXTENDED REGISTER MOVE ABSOLUTE VELOCITY BASED XAV See Also Write Register amp CALCULATION commands Description The Extended Register Move Absolute performs an absolute position move using move parameters contained in the indicated User Data Registers This command works like the basic Move Absolute Velocity Based MAV command in all other ways The move parameters are retrieved from the User Data Registers in the following order If Starting Data Register N N Position N 1 Acceleration N 2 Velocity The move parameters must be written into the User Data Registers prior to executing the move command The range of the move parameters stored in the User Data Registers must be the same as those used in the basic Move Absolute Velocity Based MAV command
67. 7 30000 1 1 CR Input Data Filter Cancel SilverMax Response 17 Hz Description Exit Conditions ACK only Response Example 10 CR GlverMax Command Reference Page 84 Mode Commands INPUT MODE USAGE IMU Input mode is designed to use Data Registers for processing Position Velocity or Torque information for the given modes This allows SilverMax to input data from an Analog Input or the Serial Interface for operating in the selected modes The Data Registers are used to perform processing on the input data so that the output will give the desired results If for example the input is an analog data source from a Joystick the processing can serve to calibrate the Joystick for the desired motion on the SilverMax This can be done for almost any kind of data source including data which is sent through the Serial Interface All Input mode commands use the same dedicated Data Registers for data storage and manipulation When SilverMax is placed into one of the input modes Velocity Position or Torque 7 data registers starting at 12 are automatically assigned for use in the data processing The appropriate Data Registers must be initialized before the input modes will work properly though they may be dynamically changed while the mode is operating This may be done in two different ways The Data Registers may be initialized using the Serial Interface by sending data directly to the registers using the Write Register
68. 88 Velocity Parameters 11 voltage 64 W WAIT DELAY WDL 146 WAIT ON BIT EDGE WBE 144 WAIT ON BIT STATE WBS 145 WRITE CMD LONG WORD WCL 174 WRITE CMD WORD WCW 175 Write Register Immediate Type WRI 172 WRITE REGISTER PROGRAM TYPE WRP 173 X XOR 122 Y Year 23 Z ZERO TARGET amp POSITION ZTP 182 ZERO TARGET ZTG 181
69. 9 Load High Word Loads the high word of the selected register upper 16 bits with sign extend into register 10 10 Load Low Word ae the low word of the selected register lower 16 bits with sign extend into register Bitwise AND the selected register with register 10 with the result in placed in register 11 AND 10 12 OR Bitwise OR the selected register with register 10 with the result in placed in register 10 Bitwise Exclusive OR the selected register with register 10 with the result placed in 13 XOR register 10 14 DIV Divide absolute value low word of Register 10 by the absolute value of low word of selected Data Register Result is placed Register 10 Unsigned multiply of register 10 low word and low word of selected register Result is 15 UMULT placed in Register 10 Signed multiply of Register 10 low word of and low word of selected register Result is 16 MULT placed in Register 10 17 PACK Replace the upper word of Register 10 with the low word of the selected register 18 LOAD INDIRECT Loads Register 10 with the contents of the Register addressed by the data within the Selected Register selected register is a pointer to the data location 19 SAVE INDIRECT Saves Register 10 contents to the Register addressed by the data within the Selected Register selected register is a pointer to the data save location 20 SAVE HIGH Saves the Low word of Register 10 to the High word of the selected register Used to wri
70. ACK only Enables I O line 1 to DONE 0xBB output a signal Low LOW 0 when the 1 Word SilverMax is done EDL moving with no position Class D error NOT DEFAULT PS 227 ACK only Enables the SilverMax 0xE3 motor driver The driver is by default enabled 1 Word Page 188 SlverMax Command Reference Command Code Hex Command Name ENABL E 1 Word MULTI TASKIN G EMT Class D ERROR 151 LIMITS 0x97 ERL Class D 225 OxE1 4 Words Factory Default 0 0 100 FILTER CONSTANTS FLC Class D 169 0xA9 4 Words Factory Defaults depend on motor type 237 GRAVI OxED TY OFFSE T CONST ANT GOC Class D IDENTITY IDT Class D 2 Words 155 0x9B 2 Words Factory Default 16 Command Parameters lt Delay to Holding gt lt Gravity Offset gt lt Group Unit Identity gt Group Upper Byte Unit Lower Byte SlverMax Command Reference Command Summary Tables SilverMax Description Response Parameter Range Hex 0 to 65535 0 to FFFF 32767 to 32767 0 to Ox7FFF 257 to 65278 0x0101 to OxFEFE Page 189 NONE NONE ACK only O OOF O OOO ACK only ACK only ACK only lt FILTER 169 lt Velocity 0t032767 ACKonly Sets the Velocity and 1 0 to 32767 ACK only Feedback gt 0 to 0x7FFF lt Velocity 2 0 to 32767
71. ACK only Last Calculation Was Positive Disable Halt Command Was Sent Disable Last Calculation Was Negative Disable Input Found On Last Move Disable 10 1 i Wait Delay Count Exhausted Disable Response Example 10 CR 02 Disable Over Voltage Disable VO 3 Disable Low Voltage Disable Over Temperature Disable SlverMax Command Reference Page 139 Program Flow Commands PROGRAM RETURN ON INPUT PRI Description The Program Return on Input command is used as a complement to the Program Call on Input command When a Program Call has been executed the buffer location of the next program command is stored in an internal register When a Program Return is executed a Jump will occur to the stored program location If a Program Return on Input is executed without a previous program called the program will error Stop execution and set Bit 12 in the Polling Status Word Program Return on Input can be set up to conditionally execute using the Digital Inputs This works identical to the Program Call on Input and Jump on Input commands Placing a 0 in both parameters will cause an unconditional return Command Info Command Type Command Name Program Return On Input PRI Program Class D Example Return from Call if the Input 1 is Low 0 16 202 7 0 CR SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Command Parameters
72. ALCULATE MOVE PCM 106 PRE CALCULATED GO PCG 105 PROFILE MOVE PMV 110 PROFILE MOVE CONTINUOUS PMC 107 PROFILE MOVE EXIT PMX 111 PROFILE MOVE OVERRIDE PMO 109 SlverMax Command Reference Page 224 P Program 136 Program Buffer 13 Program Buffer Size 23 PROGRAM CALL PCL 137 PROGRAM CALL ON INPUT PCD 138 Program Conditional amp Flow Commands 203 Program Flow Commands 120 PROGRAM RETURN PRT 139 PROGRAM RETURN ON INPUT PRI 140 Program Type Commands 13 Proportional 37 PROTOCOL PRO 67 R Read I O States RIO 20 Read Internal Status Word RIS 21 Read Program Buffer RPB 22 Read Register RRG 168 recovery 59 Register 172 173 REGISTER LOAD MULTIPLE RLM 165 REGISTER LOAD NON VOLATILE RLN 167 REGISTER MOVE ABSOLUTE TIME BASED RAT 112 REGISTER MOVE ABSOLUTE VELOCITY BASED RAV 113 REGISTER MOVE RELATIVE TIME BASED RRT 114 REGISTER MOVE RELATIVE VELOCITY BASED RRV 115 REGISTER STORE MULTIPLE RSM 169 REGISTER STORE NON VOLATILE RSN 171 REGISTERED STEP amp DIRECTION RSD 80 Relative Distances 101 103 Restart RST 26 Return 137 139 140 Revision RVN 23 Reset 26 RS 232 70 RS 485 70 Run Program RUN 141 S Save 122 SAVE HIGH 122 SAVE INDIRECT 122 SAVE LOW 122 SCALED STEP amp DIRECTION SSD 81 S Scaled Step and Direction 80 Scaling 11 S CURVE FACTOR SCF 68 SELECT EXTERNAL ENCO
73. All motion commands use the current setting Can be re set prior to a motion 2 Words used by the Pulse and Direction commands If an external encoder is not being used the inputs lt Encoder Style gt 0 A BQuad Style gt 0 A B Quad 1 Pulse Up Dn 2 Pulse amp Dir 3 Use I O 2 amp 0 T O 6 3 Use I O 2 KA ee S S A SERIAL INTERFACE SIF Class D Factory Default is 1 rr 2 RS SINGLE LOOP CONTR OL SLC Class D 244 OxF4 1 Words SERIAL 186 lt Selectinn 0 RS232 ACKonly Allows the user to select SlverMax Command Reference 3 0 RS232 1 RS485 Page 192 lt Index State gt 0 Falling ACK only Selects the desired input DO Rsg conditions for an lt Index Source gt 1 0 6 external encoder 4 Words z a ae 0 External encoders can be ACK only ACK only are ignored Allows the user to select the serial hardware interface RS 485 is default Configures SilverMax to run in the standard Single Loop control mode All SilverMax encoder information is derived from the Internal Encoder The Target value is set to the internal encoder position to prevent jumping when changing modes Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Parameters Range Response Hex Hex SOFT STOP 221 lt Data Register gt 0 Not Used ACK only Sets positio
74. Code Hex Parameters Hex Single Immediate 18 NONE NONE Step Exit Class C 0x12 SSE Example QuickControl Example 16 18 CR SilverMax Response s ACK only Response Example Standard SilverMax Acknowledge 40 CR GlverMax Command Reference Page 27 Override Commands Single Step Program SSP Description Puts SilverMax into a program single step mode and executes the first command in the program or executes the next line in a program if already in single step mode This command is used to step through a program that has been downloaded into the Program Buffer Issuing this command will cause the next Program Type command to execute then stop and wait for the next Single Step Program command If a program has previously been loaded into the Program Buffer either by using the Load Program command or by downloading from the Host the Run Program must first be issued before the Single Step Program has effect A Single Step Program command can be issued before a program is loaded This puts SilverMax into the Single Step mode that will wait until a program is loaded and then pause When a Load and Run Program command is used the first command of the program will not be executed This is because the Load and Run Program command is a Program Type and acts like the first command in the program Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Single St
75. Command Info Command Command Parameter Range Command Command Parameters Hex Name Type End Program Program 128 NONE NONE Class D 0x80 1 Word Example QuickControl Example As part of a program end program Edit Command x execution Command Name 16 128 CR FLOW END End Program SilverMax Response Description Cancel ACK only Response Example 40 CR GlverMax Command Reference Page 126 Program Flow Commands JUMP ON INPUTS AND ed JAN Description The Jump On Inputs AND ed command allows looping and other conditional branching inside a program based on the condition of the I O State Word IOS The IOS Condition Enable selects which inputs will be used in the AND ed evaluation The IOS Condition State allows the user to specify the states High 1 or Low 0 of the selected inputs that will cause a TRUE condition for each of the inputs Setting both parameters to zero forces an unconditional jump to the specified Program Buffer location The condition TRUE evaluation is done by AND ing the enabled inputs together If all the enabled inputs are TRUE a jump will occur Table Showing the Bit definitions for the I O State Word IOS Bit IOS bit 15 8 definitions Bit IOS bit 7 0 definitions Bit15 1 0 7 Bit 7 Over Temperature O True Bit14 1 0 6 Bit 6 1 0 3 Bit13 1 0 5 Bit 5 1 O 2 Bit12 1 0 4 Bi
76. D VELOCITY INPUT MODE VIM Class D SlverMax Command Reference Command Parameters Mode Commands Hex Hex 142 Ox8E 1 Word 143 Ox8F 1 Word NONE NONE ACK only 216 lt Filter constant gt 0 to 32767 0xD8 0 to 0x7FFF Sa lt I O Exit Enable gt 0 to 65535 4 Words 1 to 7 0 to OXFFFF 0 to 65535 Lor0 0 to OXFFFF lt I O Exit State gt 223 10 to 40 Ox0A to 0x28 lt User Data Register gt ACK REGISTERE 223 lt User Data Register gt 10to40 ACK only This command works the OxDF 2 Words 180 OxB4 1 to 32767 1 to Ox7FFF lt Scale Factor gt ACK only 1024 is a multiplier of 1 lt Filter constant gt 0 to 32767 0 to 0x7FFF lt I O Exit Enable gt 0 to 65535 1 to 14 0 to OXFFFF 0 to 65535 Lor0 0 to OXFFFF 2 Words 217 0xD9 ACK only 4 Words lt I O Exit State gt Page 194 SilverMax Description Response Go into closed loop operation Typically only done one time during initialization Note that both the position and the target are set to zero 0 Go into open loop operation This is the default start up state Puts the SilverMax into a Position control mode Uses the contents of the specified Data register for the position value Sending any other mode or motion command exits this mode This command works the same as the Scaled Step and Direction command except that the scaling value
77. D 122 NTI HUNT CONSTANTS AHC 32 NTI HUNT DELAY AHD 33 ti hunt mode 32 NTI HUNT MODE AHM 34 B BAUD RATE BRT 35 Bits per second 35 C CALCULATION CLC 121 CALIBRATE ANALOG INPUT FROM NV CAI 36 Call 137 138 139 CHECK INTERNAL STATUS CKS 179 Class A Commands 14 Class B Commands 14 Class C Commands 14 Class D Commands 14 2r e gt SlverMax Command Reference Index C Class E Commands 14 Class F Commands 14 Clear 122 CLEAR INTERNAL STATUS CIS 178 CLEAR MAX ERROR CME 177 CLEAR OUTPUT BIT COB 153 Clear Poll CPL 17 Clear Program CLP 124 Clockwise 40 Closed Loop 77 Closed Loop Holding 73 Closed Loop Moving 73 clutch 50 Command Classifications 14 Command Numbers 10 Command Parameters 10 Command Structure 10 Command Types 13 CONFIGURE I O CIO 152 CONTROL CONSTANTS CTC 37 Copy 122 counter 125 counter clockwise 40 D Data Register Commands 161 162 209 Day 23 Decrement 122 Delay 146 DELAY DLY 125 DIGITAL INPUT FILTER DIF 39 DIRECTION DIR 40 DISABLE DONE BIT DDB 38 DISABLE DRIVER 55 DISABLE ENCODER MONITOR DEM 154 DISABLE MOTOR DRIVER DMD 43 DISABLE MULTI TASKING DMT 44 DIV 122 Done 45 46 download 142 Drag 50 DUAL LOOP CONTROL DLC 41 Page 222 E ENABLE DONE HIGH EDH 45 ENABLE DONE LOW EDL 46 ENAB
78. D REGISTER MOVE ABSOLUTE VELOCITY BASED XAV cccccccesscteeeenees 117 EXTENDED REGISTER MOVE RELATIVE TIME BASED XR1 0 0 cccccccesceese tens eeeneeenenees 118 EXTENDED REGISTER MOVE RELATIVE VELOCITY BASED XRV 0 cccccctetsseeeeeeenees 119 PROGRAM FLOW COMMANDG 2 2 e ecceceeeeeeeeeceaeceeeeeeesecaaaaaeaeeeeeeesecaaaeaeeeseseseccaaaeseeeeeeesecscnnaaeeeeeess 120 CALCULATION CLC riasin sssiicecuta dda gia anaia dana das yaa aie ia Janaaatiadganetz das yea dubs Ledqnasiseeiastasnems 121 SlverMax Command Reference Page ili CLEAR PROGRAM CEP 2 ei thea Neen a Rane dined ideas aes 124 DELAY DIY esis soci treed ids tite a acd att ean ee tate ha OEE iat aiid res 125 END PROGRAM END veces tiie bots cee dae edited aa OAAS dee aes 126 JUMP ON INPUTS AND ED JAN cccccccececeeteeneeeeeeeeeeeeeeeeaaeeeeeeaaeeeseeaaeeeeeeeaaeeeeeeaaeeeseenieeeeseaas 127 JUMP ON INPUTS NAND ED JNA uucccccccecccceeeeeteeeeeenneeeeeenaeeeeesaeeeeeesaaeeeeesaaeeeeseaeeeessiaeeeeenenaes 128 JUMP ON INPUTS OR ED JOR ocine a a a a a a Ea 129 JOMPI IMP daa nae hte a ened Baa AaS 130 JUMP ONGINPUT SOV iriri ROEA ecdiagdasdecenaanea eas devia EO haat eee eg aie 132 JUMP ON REGISTER EQUAL SRE rriar EE NO AEAEE ERO ETE RO 134 LOAD PROGRAM EPR orr en erar R bet RER ana he eins dec E A E EOE ARO TEREE 135 LOAD AND RUN PROGRAM LRP prcrerosoririorn arina i E O R 136 PROGRAM CAL Lo PGL Tarirea T R bec E A EAO E aes 137 PROG
79. DER SEE 69 Serial Communications Buffer Size 23 SERIAL INTERFACE SIF 70 servo 37 Set amp Direction 80 SET OUTPUT BIT SOB 160 SHIFT LEFT 122 SHIFT RIGHT 122 SHIFT RIGHT SIGN EXTENDED 122 SilverMax Command Name Cross Reference Table 216 SilverMax Command Set Numeric TLA List 212 SilverMax Command Set Overview 6 SilverMax Commands Detailed Description 16 SilverMax Response 10 SINGLE LOOP CONTROL SLC 71 Single Step Exit SSE 27 Single Step Program SSP 28 SOFT STOP LIMITS SSL 72 Shuts down 25 Status 21 Stops 25 Start Download SDL 142 Status Commands 16 183 Status Word 57 Step amp Dir 69 Step amp Direction 81 Step and Direction 81 Step Up amp Step Down 81 Step Up Dn 69 Stop 29 Stop STP 29 Store Program SPR 143 Subtract 122 Subtract Target Position 122 Summary of SilverMax Commands 183 T TARGET TO POSITION TTP 180 temperature 62 TIME BASED 97 SlverMax Command Reference Page 225 T Time Parameters 12 TORQUE INPUT MODE TIM 83 TORQUE LIMITS TQL 73 TORQUE RAMP UP TRU 75 Total Time 98 102 112 114 tuning 37 U UMULT 122 Unit ID 54 V Velocity 100 104 113 115 Velocity 1 Feedback 37 Velocity 2 Feedback 37 Velocity 1 Feedback 52 Velocity 2 Feedback 52 Velocity Feedfoward 37 VELOCITY INPUT MODE VIM 84 Velocity Mode Immediate Type VMI 87 VELOCITY MODE PROGRAM TYPE VMP
80. Default is 0 relates to positive or normal negative numbers By default a positive number moves the motor Clockwise This may only be set while the motor is in the open loop mode 243 NONE ACK only Configures SilverMax to DUAL OxF3 run in a Dual Loop control mode In Dual LOOP 1 Word Loop control the CONTR SilverMax servos its position based on an OL External Encoder DLC signal The target value is set to the present external encoder value to Class prevent jumping of the D motor when changing modes Note the control parameters may need configuring when changing from single to dual or dual to single loop control GlverMax Command Reference Page 187 Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Parameters Range Response Hex Hex 228 NONE NONE ACK only Disables the motor DISABL OxE4 driver and shorts the windings together The E 1 Word SilverMax will be unable MOTO to move when R attempting any motion command DRIVE R DMD Cas D Ef 226 NONE NONE ACK only Disables SilverMax DISABL 0xE2 Multi Tasking operation E 1 Word MULTI TASK DMT Class D ENABLE 251 NONE NONE ACK only Enables I O line 1 to DONE 0xBB output a signal High HIGH 1 when the 1 Word SilverMax is done EDH moving with no position Class D cit t NOT DEFAULT ff C RS ENABLE 187 NONE NONE
81. Description The Extended Register Move Absolute performs an absolute position move using move parameters contained in the indicated User Data Registers This command works like the basic Move Absolute Time Based MAT command in all other ways The move parameters are retrieved from the User Data Registers in the following order If Starting Data Register N N Position N 1 Acceleration Time N 2 Total Time The move parameters must be written into the User Data Registers prior to executing the move command The range of the move parameters stored in the User Data Registers must be the same as those used in the basic Move Absolute Time Based MAT command The Write Register commands can be used to write the move parameters into the Data Registers The Write Register commands do not type check the parameters when written therefore errors may occur at time of execution Changing the move parameters during an actual move will have no affect on the move in progress The Extended Register Move Absolute is useful when the move parameters need to be calculated internally or if the command is being executed in a program and the move parameters need to be dynamically updated through the Serial Interface Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Extended Program lt lt Starting Data 10 to 40 Register Class D Register gt gt Move lt Stob Enable gt 0 to65
82. E BASED MRV 135 MOVE RELATIVE VELOCITY BASED PCG 232 PRE CALCULATED GO PCM 231 PRE CALCULATE MOVE PMC 240 PROFILE MOVE CONTINUOUS PMO 249 PROFILE MOVE OVERRIDE PMV 241 PROFILE MOVE PMX 242 PROFILE MOVE EXIT SlverMax Command Reference Location Acceleration Time Total Time Location Acceleration Velocity Distance Acceleration Time Total Time Distance Acceleration Velocity Page 218 Program Program Program Program Program Program Program Immediate Program Program Program Program Immediate Program Program Program Program Program Program Program Program Program Program Command Name Cross Reference E Series E Series Rev 321 2 Filter added Rev 428 329 E Series E Series E Series Rev 321 E Series Rev 424 329 E Series Rev 424 329 E Series Rev 424 329 E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series Rev 321 RAT RAV XAT XAV XRT XRV CLC CLP DLY END JAN JNA JMP JOI JOR JRE LPR LRP PCI PCL 178 160 179 161 236 234 295 233 215 140 128 250 238 162 162 239 137 156 201 201 Command Name Cross Reference REGISTER MOVE Symbolic Location Program ABSOLUTE TIME BASED Acceleration Time Total Time REGISTER MOVE Symbolic Location Program ABSOLUTE VELOCITY Acceleration Velocity BASED REGIST
83. ER MOVE Symbolic Distance Program RELATIVE TIME BASED Acceleration Time Total Time REGISTER MOVE Symbolic Distance Program RELATIVE VELOCITY Acceleration Velocity BASED EXTENDED REGISTER _ Program E Series Rev MOVE ABSOLUTE TIME 321 BASED EXTENDED REGISTER _ Program E Series Rev MOVE ABSOLUTE 321 VELOCITY BASED EXTENDED REGISTER _ Program E Series Rev MOVE RELATIVE TIME 321 BASED EXTENDED REGISTER Program E Series Rev MOVE RELATIVE 321 VELOCITY BASED Program Flow Commands CALCULATION Calculate Destination Program CLEAR PROGRAM Clear Buffer Immediate DELAY Set Delay Program END PROGRAM Go Anti Hunt Program JUMP ON INPUTS ANDED Program E Series Rev 322 JUMP ON INPUTS s Program E Series Rev NANDED 321 JUMP Jump In Block Program JUMP ON INPUT 2 wrw Program E Series JUMP ON INPUTS ORED _ Program E Series Rev 321 JUMP ON REG EQUAL Program E Series Rev 329 426 LOAD PROGRAM Load Block Immediate LOAD AND RUN Load and Run Block Program PROGRAM PROGRAM CALLON _ Program E Series INPUT PROGRAM CALL ss r Program E Series GlverMax Command Reference Page 219 PRI PRT RUN SDL SPR WBE WBS WDL ACR ARI CIO COB DEM EEM MDC MDS MDT PCP SOB ATR RLM
84. Example Seip Stee Nia Ilse Rees toy the serial interface 16 186 0 CR a Ooo Serial Interface esi a RS 232 rently being SilverMax Response z edby _Descripton Wate verax ACK only Response Example 10 CR SlverMax Command Reference Page 70 Initialization Commands SINGLE LOOP CONTROL SLC S Rr oor CONTRO DLC Description Configures SilverMax to run in the standard Single Loop control mode All SilverMax encoder information for commutation position velocity and acceleration control is derived from the Internal Encoder If a motion is running the motor Trajectory Generator must be shut down prior to executing this command or a sequence error will result When entering Single loop control SilverMax sets the current Target to the Current position Internal Position from the Internal Encoder By default SilverMax starts up in Single Loop Control mode See the Dual Control Loop command for cases where External Encoder position control is required Switching between Single Loop and Dual Loop modes usually requires changing the control loop tuning See notes on Dual Loop Control Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program Single Loop Class D Control SLC 1 Words Example QuickControl Example Configure SilverMax for Single Loop Control Command Name 16 244 CR
85. GURE I O 152 190 MODULO CLEAR 156 N ies ies 192 SELECT EXTERNAL ENCODER 69 SlverMax Command Reference Page 213 Command Set Numeric List Program Type Commands 195 SCF S CURVE FACTOR 68 197 RLM REGISTER LOAD MULTIPLE 165 199 RLN REGISTER LOAD FROM NON VOLATILE 167 201 PCI PROGRAM CALL ON INPUT 138 202 PRI PROGRAM RETURN ON INPUT 140 205 SOB SET OUTPUT BIT 160 207 ACR ANALOG CONTINUOUS READ 148 CALIBRATE ANALOG INPUT FROM NON VOLATILE 213 OVT OVER VOLTAGE TRIP 64 215 CLC CALCULATION 121 217 S lt VELOCITY INPUT MODE 84 219 z z ANTI HUNT MODE 34 222 amp TORQUE RAMP UP 75 225 EMT ENABLE MULTI TASKING 48 227 ENABLE MOTOR DRIVER 47 229 jam n z HARD STOP MOVE 91 231 x Q z PRE CALCULATE MOVE 106 EXTENDED REGISTER MOVE RELATIVE 233 VELOCITY BASED 2 119 EXTENDED REGISTER MOVE RELATIVE da ZRI TIME BASED 118 SlverMax Command Reference Page 214 Command Set Numeric List EXTENDED REGISTER MOVE ABSOLUTE TIME BASED JUMP ON INPUTS NAND ed PROFILE MOVE CONTINUOUS PROFILE MOVE EXIT SINGLE LOOP CONTROL ADD TO REGISTER JUMP ON INPUTS ANDED DIGITAL INPUT FILTER INTERPOLATED MODE QUEUE CLEAR SlverMax Command Reference Page 215 Command Name Cross Reference SILVERMAX COMMAND NAME CROSS REFERENCE TABLE The SilverMax command set has been revised through extensive re naming and the addition of a
86. Hunt 4 counts 40 CR GlverMax Command Reference Page 32 Initialization Commands ANTI HUNT MODE AHM Description The Anti Hunt mode allows SilverMax to move from closed loop operation to open loop operation in order to eliminate servo dithering The Anti Hunt Constants determine when based on position this will occur The Anti Hunt Delay sets up a time delay from when a motion is complete to when the Anti Hunt is allowed This is useful for allowing a system time to settle prior to going into Anti Hunt By default the delay is set to 0 Settling time is a system parameter which must be analyzed under real working conditions Using the SilverMax Tuning tool in QuickControl allows viewing of motion profiles for analyzing settling times This command is ignored when the Anti Hunt Mode has been set to 1 Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program lt Count in Ticks gt 0 to 65535 Anti Hunt Class D 1 Tick 120usec 0 to OxXFFFF Delay AHD 2 Words Example QuickControl Example Allow Anti Hunt 10 milliseconds Edit AHD Anti Hunt Delay x after a motion is completed Delay before moving into Anti Hunt 16 230 83 CR mode Cancel SilverMax Response E mSec Description ACK only ee m Units Normal Response Example C Naive 10 CR SlverMax Command Reference Page 33 Initial
87. Index Sensor 10 External Index Sensor 11 Internal Moving Error Status 12 e Holding Error Status 13 s Trajectory Generator Active 14 c Delay Counter Active Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Program 162 JUMP Enable Code 1 to 14 Class E OxA2 Input State O Low Low lt Program Buffer 0to199 Buffer 0 to 199 Location gt GlverMax Command Reference Page 132 Example Jump to Program Buffer location 10 if digital input 5 is High 1 16 162 5 1 10 CR SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Program Flow Commands QuickControl Example Edit JOI Jump On Input x Cancel Select from existing labels or enter a new one CHECK2 z Description Select conditions for Jump On Input Conditions Page 133 Program Flow Commands JUMP ON REGISTER EQUAL JRE Description The Jump On Register Equal command allows looping and other conditional branching inside a program based on the comparison of the contents of the given register with the value of the compare parameter Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Jump On Program 137 lt Register gt 0 to 40 200 to 211 Register Class E 0x89 Equal lt lt Value gt gt 2 147 483 648t0o 2 147 483 648 to
88. LE DRIVER 56 ENABLE ENCODER MONITOR EEM 155 ENABLE MOTOR DRIVER EMD 47 ENABLE MULTI TASKING EMT 48 Encode Monitor 154 encoder 69 Encoder Monitor 155 END PROGRAM END 126 Error 177 ERROR LIMITS ERL 50 Examples 15 EXTENDED REGISTER MOVE ABSOLUTE TIME BASED XAT 116 EXTENDED REGISTER MOVE ABSOLUTE VELOCITY BASED XAV 117 EXTENDED REGISTER MOVE RELATIVE TIME BASED XRT 118 EXTENDED REGISTER MOVE RELATIVE VELOCITY BASED XRV 119 external encoder 69 External Encoder 41 F filter 39 FILTER CONSTANTS FLC 52 Filter Parameters 11 G Global Identifier 54 GO CLOSED LOOP GCL 77 GO OPEN LOOP GOL 78 GRAVITY OFFSET CONSTANTS GOC 53 Group ID 54 Group Identifier 54 H Halt HLT 25 HARD STOP MOVE HSM 91 Hard stop 25 Hold 29 Hold Mode 50 I O Commands 147 207 IDENTITY IDT 54 SlverMax Command Reference Page 223 Immediate Type Commands Increment 122 INDIRECT ADDRESSING 165 167 169 Initialization Commands 30 185 Input 152 input filter 39 INPUT MODE USAGE IMU 85 Integrator 37 Internal Status Word 57 178 179 INTERPOLATED MOVE QUEUE CLEAR IMQ 94 INTERPOLATED MOVE START IMS 92 INTERPOLATED MOVE WRITE QUEUE IMW 95 J JUMP JMP 130 JUMP ON INPUT JOD 132 JUMP ON INPUTS AND ed JAN 127 JUMP ON INPUTS NAND ed JNA 128 JUMP ON INPUTS OR ed JOR 129 JUMP ON REGISTER EQUAL JRE 134 K K
89. Max in a dedicated Data Register If needed the Absolute position can be reset to 0 using the ZERO TARGET amp POSITION command Moves to an absolute position first calculate the Distance and Direction required to make a move The move is then executed using the calculated Distance and Direction This function eliminates the need to pre calculate the move from a Host or in a user program Velocity based moves use an Acceleration and Velocity parameter to accomplish the motion profile If the Velocity value needed to make the move exceeds the maximum permissible limit the move will not be executed and an error code will be set in the Polling Status Word The Polling Status Word bit 14 Foreground Command Error will be set Foreground command errors are generated when a command cannot be executed due to parameters that are out of range If the Acceleration value exceeds the maximum permissible value the Acceleration is limited to the maximum Acceleration parameter can be no greater than 1 2 the Velocity parameter The Stop Enable and Stop State words determine which digital inputs and or index signal are used to cause the motion to end before reaching the set Position See Using Inputs to Stop a Motion in the SilverMax User Manual SlverMax Command Reference Page 99 Motion amp Profile Move Commands MOVE ABSOLUTE VELOCITY BASED MAV Command Info Command Command Command Command Parameter Range Name Type Code Parameters He
90. Max will produce a NAK Busy response Immediate Type commands do not use the Program Buffer They are executed as soon as they are received Immediate Type commands can only be used via the serial communications interface they cannot be used within a Program that is downloaded to SilverMax for Program execution A Host controller may use Immediate Type Commands to set up control or maintain status of a SilverMax Program Buffer Program Type Commands are executed out of the Program Buffer When a command is received through the serial communications it is placed into the Program Buffer prior to execution Because the buffer can store more than one unexecuted command at a time SilverMax is able to execute commands sequentially in the form of a Program Executing a Program allows for very accurate timing of complex motions A Program that has been stored in the Non Volatile Memory must be loaded into the Program Buffer before it can be executed Program Type Commands Program Type Commands can be executed either from the serial communications interface or from non volatile memory Program Type Commands as the name implies can be part of a Program When these commands are sent they are first loaded into the Program Buffer and then executed This requires that the buffer not be in use at the time the command is sent For example they cannot be executed while the Load Program or Store Program commands are active If a Program Type Command
91. Melers vies esis Fades lee satel te E eet tise eee slash E gi et ed 12 Command Type Siraman acetsysessceevacsesecteesscctveeaescttesssctssisseses sie sectteesseditesssecerasstergeatsetcisds 13 IMMEDIATE TYPE COMMANDS mirtino austin nate vestadeteett dag eres ied denna acest o Senta ea dents iaaea 13 PROGRAM BUFFER tects li wieeteacceier asia Sect tess e ea Doran a a iea e a e aeai 13 PROGRAM TYPE COMMANDS arstin seca feds siae ferla eceveetacle doris 1 rep Seat edema el lane ded ascent acie ets 13 COMMAND CLASSIFICATIONS yus ninien iendea g peat ast devas iaeacieg ta coast tte eet gtd Mae estar deen adidas 14 EX INpPleS wesc seceded A cece ds ce tiweres Sth eae cava eansee2ben cent es euacutnaneeeveutesceetecnetecesesneuctubiuseneveravsctesteesserseoueces 15 SilverMax Commands Detailed Description cccccecceeeeeeeeeceeeeeeeneeeeneeeeeeeeeeneeeseeaeeeeeeeeneees 16 STATUS COMMANDS be ccs tic seat a ced ae ce Lapin tate a bet tte ges eaves tain pep aa coda a ester sera 16 Clear Pol GPE aves eo ee ea a ae ee alee ee aerar aS 17 Poll POE 228 ax iat ahead atte eae ee as aan de ees fad dae de te 19 Read l O States RIO i sesetiigcer el ee a ees ee a es ee es eS 20 Read Internal Status Word RIS srrssssrsiiirriuossassid linierne dania a adere a n i e ea 21 Read Program Buffer RPB neierasti ena aiae iia e enana AN S AAA EA i aai 22 FROVISION TRVN ois ea dive ch T E O ca see E E OE E the ATENO ERA 23 OVERRIDE C OMMAN D S a a a cua ia aa
92. NLOAD RUN PROGRAM WRITE REGISTER IMMEDIATE TYPE READ REGISTER STORE PROGRAM LOAD PROGRAM VELOCITY MODE IMMEDIATE TYPE SINGLE STEP PROGRAM SINGLE STEP EXIT READ INTERNAL STATUS WORD READ I O STATES INTERPOLATED MODE WRITE QUEUE Program Type Commands END PROGRAM MOVE ABSOLUTE VELOCITY BASED MOVE RELATIVE VELOCITY BASED JUMP ON REGISTER EQUAL WRITE COMMAND LONG WORD WRITE COMMAND WORD DELAY WAIT DELAY GO CLOSED LOOP GO OPEN LOOP ZERO TARGET ZERO TARGET AND POSITION SET TARGET TO POSITION CLEAR MAX ERROR CONTROL CONSTANTS Page 212 Reference Page 19 17 25 29 26 23 22 124 142 141 172 168 143 135 87 28 27 21 20 95 126 99 103 134 174 175 125 146 77 78 181 182 180 177 37 Command Set Numeric List 149 TQL TORQUE LIMITS 73 151 ERL ERROR LIMITS 50 154 WRP WRITE REGISTER PROGRAM TYPE 173 LRP LOAD AND RUN PROGRAM 136 Nn an D Oo RAV REGISTER MOVE ABSOLUTE VELOCITY BASED 113 JUMP 130 R a a N CIS CLEAR INTERNAL STATUS 178 lon Ww CALCULATION 121 EN Nn Q w Q D oo z Q 4 MOTOR CONSTANTS 61 z z z ENABLE ENCODER MONITOR 155 171 DEM DISABLE ENCODER MONITOR 154 173 ADL ACK DELAY 31 176 MAT MOVE ABSOLUTE TIME BASED 97 178 RAT REGISTER MOVE ABSOLUTE TIME BASED 112 180 SSD SCALED STEP AND DIRECTION 81 182 KED KILL ENABLE DRIVER 56 184 DIR DIRECTION 40 186 SIF SERIAL INTERFACE 70 188 CIO CONFI
93. O bit condition is State triggered if the condition is true when the command is encountered no waiting will occur Input Code Input Source Description 1 External T O 1 e T O 2 3 G T O 3 4 T O 4 5 e T O 5 6 T O 6 T 7 VO 7 8 e Current Index Sensor 9 ck Internal Index Sensor 10 6 External Index Sensor 11 Internal Status Moving Error Status 12 e Holding Error Status 13 Trajectory Generator Active 14 ec Delay Counter Active Command Info Command Command Parameter Command Name Command Type Code Hex Parameters Range Hex Wait On Bit State Program 194 lt input Code gt 1 to 14 WBS Class D OxC2 lt Input State gt 0 Low Example QuickControl Example oe program to wait until I O 1 is Edit WBS Wait On Bit State x Select which condition to wait on 16 194 1 0 CR le iti Cancel SilverMax Response Condition 1 0 1 z Description ACK only State a Response Example 2 Low FALSE 10 CR High TRUE GlverMax Command Reference Page 145 WAIT DELAY WDL Description Program Flow Commands The Wait Delay command waits until the Delay Counter has decremented all the way to zero Once it has reached zero this command is exited and the next command in the Program Buffer is executed The Delay Counter is initialized using the Delay command with a negative value parameter This
94. PM sec 10000 64 4245 1 RPM sec 644245 To calculate Acceleration in RPS sec multiply the RPS sec value by 3865 47 Example 166 7 RPS sec 166 3865 47 1 RPM sec 644373 Almost the same as above GlverMax Command Reference Page 11 Time Parameters The Native SilverMax unit for time is a Tick which is one clock cycle at 8K Hz or 120 microseconds To convert Ticks to seconds multiply by 0 00012 There are 8333 Ticks in one second GlverMax Command Reference Page 12 COMMAND TYPES The SilverMax command structure is divided into two major classifications Immediate Type Commands and Program Type Commands The Immediate Type Commands may only be executed via the serial link while Program Type Commands may be executed via the serial link or from the non volatile memory Program Type Commands are temporarily stored in the Program Buffer prior to execution Before executing a Program the Program Buffer is filled with the given Program from either the serial communications or the non volatile memory Immediate Type Commands Immediate Type Commands typically give an immediate result or return data when executed Most of these commands can be executed at any time even during SilverMax operation Some Immediate Type Commands cannot be executed simultaneous to Program Buffer operations These commands and the conditions for execution are noted in the command description If command execution is attempted when not appropriate Silver
95. RAM CALL ON INPUT PCI oriee irera RORE O EEO E 138 PROGRAM RETURN PRD arera EAE T ROERE EA A E O EEA 139 PROGRAM RETURN ON INPUT PRI 0c cccccccceeeeeeeeeeeeeeeeeeeeeeaaeeeeeeeaaeeesesaaeeeeeeaeeeeeenaeeeeseaaaes 140 RON PROGRAM RUN ices erora EEO E ERE EO TRET O E 141 START DOWNE OAD SDE ieor nra ERO EOR O T ETE T cian a 142 STORE FROGRAM SPR sizzsevcesnctesiesen cn Er EAO EEEE 143 WAIT ON BIT EDGE WBE e iirinn AA E AEE AA EE EAER d 144 WAIT ON BIT STATE WBS 00 ceeeccccccsesececesnneeeeeenneeeeeeaeeeeeeeaaeeeeesaaeeeseeaaeeeeesaeeesesaeeeessnieeeeeeeaaes 145 WAIT DELAY WDE niren area aa oi aig ea a an ania naan ian ie 146 VO COMMANDS icc since fue dbendinne esdi deh clitde dead PLE A EEE del daedeevHlnes EAA a T 147 ANALOG CONTINUOUS READ ACR ecccccctcccecettteeeeetnneeeeetnaeeeeetaeeeeesaaeeeeetaeeeeeetiaeeeersnaeeeeees 148 ANALOG READ INPUT ARI iers iestrriirnsr estraina Enaura EE EEA ENAR EN aa 150 CONFIGURE VO CIO apraiar AEAEE AREER EA AENEAS EAREN A EEEE Aa 152 CLEAR OUTPUT BIT COB ieren e en aeren AAEE EESE ASE EEEE AEE EET E 153 DISABLE ENCODER MONITOR DEM c ccccccccceceeeesceeeteeeeeeteneeeeeteeeeeeeteceeaeeeeeeeaeeteeeaeeeeennaees 154 ENABLE ENCODER MONITOR EEM cccccccceceeeeeeeeeteeeeeeeteneeeeeseeeeeeeseeeaaeeeteeaaeeeteeaeeetenaaees 155 MODULO CLEAR MDC eeeccccceccscceteeeeeeeteneeeeeeseneeeeesaaaeeeceaeaeeeseaaaeeeseaaeeeseeaaeeesenaaeeeteeaeeetenaeegs 156 MODULO SET MDS visscc cci
96. S AHC Description This command sets the torque limits for the different operating modes of the SilverMax unit The unit may be in either Open Loop or Closed Loop mode and in either Moving or Holding position The four parameters supplied set the limits on the output torque for all four combinations Closed Loop Holding Closed Loop Moving Open Loop Holding and Open Loop Moving The motor goes into Moving mode whenever the target velocity is non zero The unit will continue to use the Moving torque limits until Delay to Holding time ticks 120uS each see Error Limits command after the last non zero target velocity This allows a higher Moving torque limit to persist up to seven seconds after the last motion or motion step of the Step and Direction command Following this period which power up defaults to zero the Holding torque levels are used The Open Loop Holding value is used by the Anti Hunt mode for the current level that will be used to prevent hunting This is only used when the ANTI HUNT CONSTANTS are set to a value greater than 0 17 and 23 frame motors have a 100 torque level corresponding to 20 000 while the various 34 frame motors may have different full scale values The QuickControl Torque Limits command tool automatically scales percentage values to numeric values for all motor types Peak torques above 100 are permitted but at a reduced duty cycle and duration The setting for the Closed Loop parameters establi
97. Single ACK only Exits the single step mode Step Exit Halt Stop Motor Kill SSE Power Low will also cause Class F the exit of single step mode Single Step ACK only Puts SilverMax into a Program program single step mode or SSP executes next line a program Class F if already in single step eae ws A re prem el ee eee It ee Si 8 Stop STP lt lt deceleration gt gt 1 Stop ACK Stop STP 3 J lt lt deceleration gt gt 1 Stop ACKonly Doesastop of the current Does a stop of the current Type A Immediate motion block or 0 Stop using previous Acceleration or 1 to 536 870 911 1 to 0x1 FFFFFFF GlverMax Command Reference Page 184 Command Code Command Summary Tables SilverMax Description Response Parameter Range Command Name ACK DELAY ADL Class D Factory default 0 for RS 232 15 for RS 485 ANTI HUNT CONSTANTS AHC Class D Factory Default 0 0 ANTI HUNT DELAY AHD Class D ANTI HUNT MODE AHM Class D Factory Default 0 BAUD RATE BRT Class D Factory Default 576 These numbers work for E series only Hex 173 OxAD 2 Words 150 0x96 3 Words 230 0xE6 2 Words 219 OxDB 2 Words 174 OxAE 2 Words Command Parameters Hex Initialization Commands lt Out TANTI HUNT 150 lt OutofAnti Hunt 0to35
98. SiverVax Command Reference Revision 3 23 May 2001 SilverMax and QuickControl are trademarks of QuickSilver Controls Inc The SilverMax embedded software SilverMax electronic circuit board designs and the embedded logic in the contained CPLDs as well as this SilverMax Command Reference are Copyright 1996 2000 by QuickSilver Controls Inc SilverMax is covered under US Patent 5 977 737 Table of Contents SilverMax Command Set Overview ccccceseesseeceeeeeeeeeeeeeeeaneeseeeeeeeesseaeeeseeesnaeeseseaeeeseeeeesensenanes 6 Command StHUCtUre sno osiececeeacsasacisesersnnahs sseaccontensesnadscnacens nddhnsavauceresivandaharvoctsentcnsssesavacdeccntenensecnedere 10 COMMAND NUMBERS e a a a phan a oot teas dee duet att eee a teatanal aad 10 COMMAND PARAMETERS x testcsc oceeecdste tate adit cx a vadia din tea dea oe ae datum Md uaa cap aAa 10 DILVERMAX RESPONSE no tiesiestiotescnie eatin Acute ideale din 2 ote a r it aed dana att cae edad 10 SOCAN G aa a ed veccitssscetvccaneditesssucesussecaitessseatssesssccetecseaaitecsseetiershscitesssucetyscuetsgsseccitsessecueys 11 Filter Parameters crest ais ies ts ds ecto at atl ste eats latest ee 2h Nie ices Satie aaa ty 11 Position Parameters itisistecces a a r Bais eh sont es adi dle ea eal gts dl dl wd 11 Velocity PAreMele rs sra ied ote cite hatin tape heheh gts Gad E dts oat ein ea a ols eG eed ate 11 Acceleration Parameters aspe aE nite cia ee a eee ae 11 THMO LP ArA
99. Type Code Parameters Hex a GO 9 S a Program Class D 1 Word Example QuickControl Example Enable the SilverMax motor driver 16 227 CR Edit Command x Command Name INIT EMD Enable Motor Driver Description SilverMax Response Test BA ACK only Response Example 10 CR GlverMax Command Reference Page 47 Initialization Commands ENABLE MULTI TASKING EMT Description Enables SilverMax Multi Tasking operation which allows Motion while executing a program By default SilverMax does not continue internal program execution when performing a motion command or while executing in a Velocity Mode Step and Direction Mode or Input Mode Enable Multi Tasking causes SilverMax to continue program execution after a motion command or mode has been started Multi Tasking is useful for conditions where the SilverMax is acting as a Master controller and must initiate other tasks while performing motions An example of this is performing I O operations for controlling other machine functions SilverMax will be able to Set or Clear the I O lines at any time Many other things can be done including modifying motion profiles on the fly when executing a Profile Move command or the Register Step and Direction command Multi Tasking rules of engagement when enabled Time and Velocity based motion commands Absolute or Relative Direct or Register based These commands start by loading
100. UMP ON INPUTS OR ed JOR Description The Jump On Inputs OR ed command allows looping and other conditional branching inside a program based on the condition of the I O State Word IOS The IOS Condition Enable selects which inputs will be used in the OR ed evaluation The IOS Condition State allows the user to specify the states High 1 or Low 0 of the selected inputs that will cause a TRUE condition for each of the inputs Setting both parameters to zero forces an unconditional jump to the specified Program Buffer location The condition TRUE evaluation is done by OR ing the enabled inputs together If any of the enabled inputs are TRUE a jump will occur Table Showing the Bit definitions for the I O State Word IOS Bit IOS bit 15 8 definitions Bit IOS bit 7 0 definitions Bit15 1 0 7 Bit 7 Over Temperature 0 True Bit14 1 0 6 Bit 6 1 0 3 Bit13 1 0 5 Bit 5 VO 2 Bit12 1 0 4 Bit 4 1 O 1 Bit11 reserved Bit 3 Trajectory Generator Active Bit10 Delay Counter Active Bit 2 External Index Bit 9 Holding Error Bit 1 Internal Index Bit 8 Moving Error Bit 0 INDEX Multiplexed Command Info Command Command Parameter Command Name Command Type Code Hex Parameters Range Hex Jump On Inputs Program lt IOS Condition O to 65535 Or Ed Class E Enable gt JOR lt IOS Condition 0 to 65535 words Siaa nn 01009895 lt Pr
101. Zero Target Program ZTG Class D Example Sets the Target to zero 0 does not clear the position error 16 144 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Command Parameter Range Parameters Hex 144 0x90 1 Word QuickControl Example Edit Command x Command Name MISC ZTG Zero Target Description Test Cancel Page 181 Misc Commands ZERO TARGET amp POSITION ZTP Description This command zeros the Target register and the Position register This command zeros out both registers and removes any Position Error that may exist This is useful for homing routines to denote the current location as Zero so that all other locations can be defined as an offset from Zero This command removes any Windup that may exist from a previous motion Command Info Command Command Name Type Zero Target amp Program Position Class D ZTP Example Sets the Target amp Position to zero 0 16 145 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Command Parameter Range Parameters Hex 145 0x91 1 Word QuickControl Example Edit Command x Command Name MISC ZT P Zero Target and Position Description Test Cancel Page 182 Command Summary Tables Command Command Command Parameter SilverMax Des
102. a stream were to become interrupted This command takes succeeding sets of 4 data values and copies them within a single normal control cycle into the associated registers used by the profiled move command It then waits the designated number of cycles 120 microseconds each before loading the next set of data At the same time a Profiled Move operation is running in the background using the given data Each set of data represents a timed slice of the total motion consisting of a constant acceleration period ramping to the new velocity followed by a constant velocity period until the next set of data is loaded If the given destination is reachable in the time slice given the other parameters the target position will come to rest there until the next set of data is loaded that requires the motion to begin again Complex moves involving multiple axis may be generated that may run from either internal Non volatile memory or from the Serial interface These two distinct modes of operation are selected by the value of the data in Register 17 A non zero value indicates the address of the first of the four registers that will hold the data Once this command is executed the contents of the first of these registers will be copied to Register 18 to be used as a time countdown The continuing operation of this command will decrement Register 18 each cycle No external modification of Register 18 should be made while this mode is active The second re
103. an use Linear or S Curve acceleration Profile Move commands perform very complex profile shapes by allowing the move parameters to be changed dynamically Move parameters can be changed by an external Host controller or by an internal program if multitasking is enabled Profile moves also provide separate Acceleration and Deceleration parameters and a Distance Offset when Stop Conditions are met Profile Move commands come in three flavors 1 Standard where the command ends when the Distance or Position is reached 2 Continuous where the command runs continuously until stopped either by the Stop Conditions or explicitly 3 Override where the command will take over any active move in progress and continue it according to the parameters established for the Profile move without first stopping the motion After it has begun its operation it becomes a Standard Profile move All Profile Move commands use User Data Registers for parameter storage Profile Move commands use ONLY Linear acceleration and deceleration Special Note All Velocity and Time based motion commands have a limit of 143 16 hours of total time the ramp times are limited to 7 86 seconds To go beyond these limits the Profile Move commands must be used SlverMax Command Reference Page 90 Motion amp Profile Move Commands HARD STOP MOVE HSM Description This command provides a way while in Multi Tasking operation to execute a Hard Stop of any move or mode f
104. and before setting the Low Voltage Trip or Over Voltage Trip commands Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Calibrate Program lt NV Memory Factory Default Analog Input Class D Address gt Calibration From Nv 65524 OxFFF4 CAI 2 Words Example QuickControl Example Calibrates the Power Supply analog channel and sets the maximum Command Name veel shutdown voltage ji NIT CAI Calibrate Analog Input from Non olati 16 211 65524 CR Description ox Test Cancel SilverMax Response L Data Label ACK only 1 EEPROM Location Response Example 40 CR SlverMax Command Reference Page 36 Initialization Commands CONTROL CONSTANTS CTC re See Also FILTER CONSTANTS FLC Description This command sets the various servo loop gain control constants These are used in tuning the motor Gain term List Velocity 1 Feedback Single filtered velocity feedback term Velocity 2 Feedback Double filtered velocity feedback term Velocity Feedfoward Velocity feedforward term Acceleration Feedback Acceleration estimator feedback term Acceleration Feedforward Acceleration feedforward term Proportional Position error feedback term Integrator Integration of the error feedback term summed with the three velocity terms See Tuning SilverMax in the SilverMax User Manual for more details Command Info Command Co
105. asking has been enabled 208 provides an alternate way to set the error limits from the Serial Interface or from within a program These may be altered while a motion is in progress if multitasking has been enabled 211 May be used to determine which bit in which state triggered an Kill Motor operation These registers are written internally whenever the Kill Motor operation is triggered They may be overwritten to zero to make conditional testing of a triggering event easier GlverMax Command Reference Page 163 Data Register Commands ADD TO REGISTER ATR Description The Add to Register command adds the included data into the selected 32 bit Data Register This command is similar to the Write Register commands except it is designed to add to the existing value instead of overwriting it The data parameter is signed so that a negative value can be added which works as subtraction for decrementing This command is very useful when using Data Registers for counters by allowing an increment or decrement of greater than 1 Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Add To Program 248 lt Data Register gt 10 to 40 Register Class D Ox9A ATR oe lt lt Data to Add gt gt 2 147 483 648 to 7 vards 2 147 483 647 0 to OxFFFFFFFF Example QuickControl Example Add the number 1 5 SEC to data register 10 16 248 10 12500
106. ata included it is used to put SilverMax into download mode Note CAN ONLY BE USED AFTER Clear Buffer Store Program SPR Class C 0 to 3839 0 to OxOEFF lt NV Memory Address gt ACK only Writes the loaded program into non volatile memory Cannot execute while SilverMax is running WAIT ON BIT EDGE WBE Class D lt Input Code gt 1 to 14 0 falling 1 rising lt Input 3 Words Transition gt Same as Wait on Bit State except SilverMax is looking for an Edge transition WAIT ON BIT STATE WBS Class D 194 lt Input Code gt 1to14 0xC2 lt Input State gt 0 Low 1 High 3 Words During Program execution causes SilverMax to Wait until an input condition is true This is a very fast input check WAIT DELAY WDL Class D SlverMax Command Reference 141 ACK only Ox8D 1 Word Page 206 Waits until delay has counted down Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Hex Parameters Range Response Hex 0 Commands ANALOG 207 lt Analog Same as Analog This does continuous CONTINUOUS OxCF Channel gt Read Input read of an Analog READ ACR command below channel Readings are Class D 3 Words except 9 not taken every servo cycle used and 120 usec Analog 0 Disable channels are used same lt Data 10 to 4
107. ated to external encoder counts rather than internal encoder units The feedforward acceleration and velocity terms are relative to full speed in external encoder units while the feedback terms are relative to the internal encoder units thus the feedback terms may need to be different from the feedfoward terms in order to minimize following error If the external encoder has three times the resolution of the internal encoder then the feedback terms need to be three times as large as the feedforward terms to balance their gains Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program 243 NONE NONE Dual Loop Class D OxF3 Control DLC 1 Word GlverMax Command Reference Page 41 Example Configure SilverMax for Dual Loop Control 16 243 CR SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Initialization Commands QuickControl Example Edit Command Ea Command Name INIT DLC Dual Loop Control Description Test Cancel Page 42 Initialization Commands DISABLE MOTOR DRIVER DMD EMD Description Disables the motor driver and shorts the windings together The SilverMax will be unable to move when attempting any motion command This is a software disable that can be overcome by the Enable Motor Driver command or by setting the Motor Constants Command Info Command Command Command Command Paramete
108. be optically isolated from any other grounds in the system The local 5v supply provided by the SilverMax unit through the connector may be used to power the local side of the optical coupler The Step and Direction inputs can be configured to accept one of three different types of signals Inputs can be A amp B Quadrature Step amp Direction or Step Up amp Step Down The type of input is configured using the Select External Encoder command Step inputs can accept a minimum pulse width of 400 nanoseconds See Step amp Direction Input in the SilverMax User Manual for more information on digital inputs Scale Factor The maximum positive value of 32767 is approximately 32 encoder counts per Step clock 32767 1024 the minimum value is 1 encoder count of motion for 1024 Step pulses A value of 1024 gives a 1 to 1 factor 1 Step equals 1 Count A negative value for the scaling factor reverses the state of the Direction Input this is so that no external logic is required to invert the Direction input The Step and Direction inputs drive a counter which is sampled every 120uS The counts detected are scaled and summed to any remaining fractional count left from the prior period with the whole count being applied to the Target Position value The fractional remainder is saved for the following period Counts in excess of the maximum 31 32 counts per sample period are accumulated for use in the following sample period to handle sample per
109. bits per second 57600 is the default baud at power up Other baud rates can be set using Speed values from the table below Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Baud Rate Program 3 300 baud BRT Class D 12 ea 24 2400 2 Words 48 4800 96 9600 192 19200 288 28800 384 38400 576 57600 1000 100000 1152 115200 2304 230400 Example i 8 Bit ASCII Protocol QuickControl Example Set the baud rate for 57 6K This works with most PLCs 7 j This command will change the SilverMax s baud rate but not the PC s 16 174 576 CR Cancel SilverMax Response BaudRate 576k gt _Deseiton Description Data Format m Mode Hex Normal Baud Rate Divisor fp Native ACK only NONE Response Example 40 CR NOTE The baud rate changes immediately so if different than the current baud rate the Acknowledge may not be intelligible GlverMax Command Reference Page 35 Initialization Commands CALIBRATE ANALOG INPUT FROM NV CAI Description This command loads the Analog Channel Calibration Factor and the Maximum over voltage shutdown voltage from Non Volatile Memory This data for each unit is determined and stored in a factory calibration procedure The calibration data is stored as a long word into location 65524 The CAI command must be executed before the motor parameters are loaded
110. caling in the beginning of the manual for details on scaling the parameters to engineering units The following table shows the list of the parameters and their associated Data Register Data Description Data Range Comment Register 2 147 483 648 20 Position to This is an Absolute destination value 2 147 483 647 21 Re celeration 2 to Sets the acceleration rate that is used when increasing 1 073 741 823 the move speed 22 Velocity se 483 647 The maximum speed that is allowed during a move 23 Deceleration 2 to Sets the deceleration rate that is used when decreasing 1 073 741 823 the move speed 24 Offset aa A distance value to move that is added to the current 2 147 483 647 position when a Stop Condition is encountered Data Registers must be pre loaded with the move parameters prior to issuing the Profile Move Continuous command Profiles Moves begin immediately after executing the command within 120 usec The motor is accelerated using the Acceleration parameter until the maximum Velocity is reached Deceleration begins when the distance of the move is such that the Absolute Position is achieved at the same time the motor has decelerated to 0 velocity Depending on the parameters the maximum velocity may never be reached Triangle Move During a Profile Move SilverMax is constantly recalculating its intermediate move values every 120 usec This is done by taking the given
111. cates when the motor is idle and within the set Error Limits When the motor is idle Hold mode the Done indicator will be High 1 During the execution of a motion profile command the Done indicator will go Low 0 indicating the motor is moving It will then go high at the end of the motion If the motor position during the move or when holding exceeds the error limits the bit will go low or remain Low even when a motion completes PLCs or Host Controllers can use the Done indication for monitoring SilverMax motions to check for completion When in Step amp Direction mode and no multi tasking program is running the Done only indicates position errors Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program Enable Class D Done High EDH 1 Word Example QuickControl Example Enable usage of the Done Edit Command x indication by setting I O line 1 High Command Name 16 251 CR INIT EDH Enable Done High Description Cancel SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 45 Initialization Commands ENABLE DONE LOW EDL See Also DISABLE DONE BIT DDB ENABLE DONE HIGH EDH Description Enables a Done indication on the motor I O Line 1 The Done indicates when the motor is idle and within the set Error Limits When the motor is idle Hold mode
112. ck into Single Loop Control Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program Class D 1 Word Example QuickControl Example Put SilverMax into open loop mode Edit Command x 16 143 CR Command Name MODE GOL Go Open Loop SilverMax Response Description ACK only Test Cancel Response Example 10 CR SlverMax Command Reference Page 78 Mode Commands POSITION INPUT MODE PIM Description Puts the SilverMax into a Position control mode Uses the contents of Data Registers 12 18 for position control processing The Position Input Mode may be exited via I O by configuring the I O Exit State and enable As with other motions the Position Input Mode may also be exited via the Stop command the Change Velocity Program and the Profiled Move Exit command In this mode data from an Analog Input or the Serial Interface can be used to control the position of the motor A filter parameter is used to filter the incoming data See Filter Parameters at the beginning of this manual for details in converting Hz to native SilverMax values The QuickControl tool allows this parameter to be set by frequency This is the same type of low pass filter as used in the Velocity Estimator filters in the PVIA loop Digital inputs are used in the same manner as the Motion Profile Commands See Using Inputs to Stop Motions in the SilverMax User Manual
113. coh den a cents ce a aaa aAa Ea a aea AESI 24 lait HET airas aai e a a a aaa ella aetna en ele tae Tee ae 25 Restan RST zs e e aI E E E AE teat E T E E EA 26 Single SEP EXN SSE eor r rE OEA T EEE A RETE ET AER 27 SINGIE Step Program SSP eurs raraos a AE EEE EAE EI EEA EAT eset ead 28 SLOP CN A ARTEA E ts Fanta E E A A ae E E AA E ET 29 INITIALIZATION COMMANDS 2 22 0cecceceeeeeeeeeceaeceeeeeeeeeceaeaaeceeeeeeeseceacaeceeeeeseseccasaeeeeeeeseseccussaeeeeeeeseteees 30 ACK DELAY ADEs wai e e totes cousins eaecaa atten texaastecednn daa bePahes a E assent aide aes 31 ANTI HUNT CONSTANTS AHO rereana a E a E ASE 32 ANT AUN T DEA Y AA D a a r a a a aa a a a E A OE eee Ean 33 ANTI HUNT MODE AHM s i eeen aaeeea arai aneta a apaa AREE Er EEan eE 34 BAUD RATE BRT oeenn eaae ise aa aaae E Eara a del Dedede eee 35 CALIBRATE ANALOG INPUT FROM NV CAI ccccccceeeeeeneeeeeeeeeeeetecneeaeceeeeetetecnnsaeeeseertettees 36 CONTROL CONSTANTS CTC ccccccceeceecececeeeeeecneeaeeeeeeeeesecacaeeeeeeesesecseaaeaeeeeeessessenieaneeseettess 37 DISABLE DONE BIT DDB aeaea aeaa Ee oaar aTe A EENAA AE AAE aTa a eE Ana Rae 38 DIGITAL INPUT FILTER DIP eer sonnets x eaea karara aae RENEE A Ee TEE a eT aE ar 39 DIRECTION DIR e T iin vei hol aaRS ea fae eee a dese 40 DUAL LOOP CONTROL DLO e aa a ea eara a aaa Taa NEET Arara AATE EEA 41 DISABLE MOTOR DRIVER DMD cccccceeeceeceeeeeeteeeeseeaeeeseeesecsenaeaeceeeeeeseseesisaeeeseeet
114. count SilverMax filters 5 millisecond the inputs and scales them up to a 15 bit value 32 counts 0 005 volts but the resolution remains the same Note that the maximum reading corresponds to 32 1023 32736 Analog inputs can be used in a single ended or differential manner With differential usage two analog inputs are used at one time Such as Channels 5 amp 6 This method reduces common mode noise same noise on both inputs from the input source The difference of the two channels is used thus the output range is 32736 Other types of data can be collected using the Analog Continuous Read The Input Power Supply voltage and Internal Temperature can both be read into a Data Register This information can be used for program conditional control or for direct read out to a Host controller See Using Analog Inputs in the SilverMax User Manual for more information Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Analog Read Program 193 lt Analog 1 Analog 1 Input ARI Class D OxC1 Channel gt 2 Analog 2 3 Analog 3 3 Words 4 Analog 4 5 Analog 1 and Analog 2 6 Analog 3 and Analog 4 7 V non calibrated 8 Temperature ADC counts 9 V scale factor lt Data Register gt 10 to 40 SlverMax Command Reference Page 150 ANALOG READ INPUT ARI Example Read into data register 10 the V input voltage 16 19
115. cription Name Code Parameters Range Response Hex Hex SUMMARY OF SILVERMAX COMMANDS Status Commands Clear Poll 1 lt Status Word gt 0 to 65535 ACK only Clear out the indicated bits in CPL 0x1 0 to OXFFFF the Polling Status Word Type A Poll POL 0 NONE NONE Return the Polling Status Type A 0x0 Word if any new status or No i condition has occurred Command otherwise it sends an ACK Read I O 21 NONE NONE 2 Bytes Read the current states of the States 0x15 1 O bits Also reads other bit RIO information Type A Read Internal 20 NONE NONE Read the Internal Status Status Word 0x14 Word RIS Type A Read 6 lt Length gt 1 to 8 lt Length gt Read the number of words Program 0x6 1 to 0x08 lt Data gt indicated by the Length from Buffer RPB aaa lt Buffer Address gt 0 to 199 oe ype 0 to 0x00C7 i Revision 5 NONE NONE 8 Bytes of Returns the revision date of RVN 0x05 Return Data this code and the buffer Type A sizes GlverMax Command Reference Page 183 Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Parameters Range Response Hex Hex Override Commands Halt HLT 2 NONE NONE ACK only Immediately stops the Type A 0x2 motion block in progress Disables the motor Restart RST NONE NONE No response Jump to location zero and Type A EN No ACK restart the processor No response is given
116. d power supply voltage dependent Constants are set up by the Factory Manually editing these constants may cause improper operation or failure of the motor 9 Words Factory Defaults depend on motor type and voltage This command settings are normally done using QuickControl Windows software Contract factory for more details MAXIMUM 214 TEMPERAT URE TRIP MTT Class D Factory Default is 0 Don t Check OPEN LOOP PHASE OLP Class D OVER VOLTAGE TRIP OVT Class D Factory Default is 52 Volts PHASE ADV CONSTANTS PAC Class D Factory Defaults depend on motor type and voltage 0xD6 2 Words 152 0x98 2 Words 172 0xAC 4 Words lt Temperature gt lt Angle in Counts gt lt Voltage gt 0 to 0x0258 lt P limit gt 0 to 37 0 to 0x25 SlverMax Command Reference 1 to 70 1 to 0x46 7 to 79 0 to Ox004F amp OxFFF9 to FFFF 1 to 53 1 to 0x35 0 to 15 0 to Ox0F Page 191 ACK only ACK only ACK only Sets the temperature at which SilverMax will shut down the motor This is used to prevent over heating of the motor Value is entered in integer units Example 70 for 70 degrees Celsius Sets the open loop phase angle If negative angle is in half steps Angle must be lt 4 Full steps NOTE Only use in open loop mode Sets the voltage at which SilverMax will caus
117. d whenever the driver is enabled to protect the drivers from over voltage An over voltage condition will always disable the drivers regardless of the of Kill Enable Drivers state What Happens when the Kill Motor is tripped Bit 3 of the Status Word is set to indicate a shutdown If no Kill Motor Recovery routine has been designated by using the Kill Motor Recovery command then the motor drivers are disabled and any running program and moves are terminated If a Kill Motor Recovery routine has been designated the drivers will be disabled and the active motion terminated unless both Kill Enable Driver and Enable Multitasking are active The designated recovery routine will be loaded and executed Note Setting both the Kill Enable Driver and Enable Multitasking modes allows the recovery routine to shutdown the active motion by use of a Velocity Mode command or a Profile Move End with a zero velocity and a user acceleration All recovery routines should Set Target to Position before re enabling the motor drivers to prevent a sudden movement of the motor This movement occurs when the re enabled control loop attempts to remove all of the position error that has accumulated since the driver became disabled Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program 167 lt Condition 0 to 65535 Kill Motor Class D OxA7 Enable gt 0 to OXFFFF Conditions KMC 3 Words lt Co
118. d Reference Page 120 Program Flow Commands Description The Calculation command provides basic math logic and other function using Data Registers The command uses two parameters Operation and Data Register to perform all of its defined operations Several of the operations have two Operands to perform the calculation When two Operands are required Data Register 10 is used as one of the operands while the selected Data Register is used for the second operand Typically Data Register 10 is used as the destination for a two operand operation For single Operand operations the selected Data Register is used as the source and or destination Data Register 10 is typically used as an accumulator but may also be the Selected Data Register All Data Registers are 32 bit in size Depending on their usage they take on a signed or unsigned character When used for Position or Distance data they are used in a signed fashion When used as a Counter they may be unsigned The Multiply and Divide math operations use only the lower 16 bits of the Data Registers therefore only 16 bit math can be done on the operands This limit is due to the 32 bit Data Register being the only location for storage of the result 16 bit X 16 bit 32 bit number When performing math functions the Read Only Data Registers 0 to 9 can be used as the selected Data Register Data cannot be Saved or Written to these Registers due to their Read Only nature User Data Reg
119. d stop where error is intentionally introduced and for removing error before enabling the motor drivers after they have been disabled The Target value is updated by the Trajectory Generator the Step amp Direction mode or one of the Input Modes The SilverMax servo loop uses the Target value as the input position parameter If the motor is unable to achieve the Target position windup will occur This command removes the windup error Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Set Target To Program 146 Position Class D 0x92 TTP 1 Word Example QuickControl Example ee position Command Name 16 146 CR MISC TTP Target to Position Description Test Cancel SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Page 180 ZERO TARGET ZTG Description Misc Commands This command zeros the Target register Before doing this the current Position Error Target Position is copied into the Position Register This is useful for homing routines to denote the current location as Zero so that all other locations can be defined as an offset from Zero This command does not remove any windup whatever Position Error exists before this command will remain To zero the Target and clear the Position Error use the Zero Target amp Position command Command Info Command Command Name Type
120. d to take over any existing motion Profiled Move Exit This command does not check the Busy status It uses the Profiled Deceleration parameter to bring any current motion to a stop Target Offset command This command may be used to offset the current value of the Trajectory Generator hopefully a little at a time even while other motions or modes are running When in Multi Tasking this could facilitate a skew forward or skew back while in the Step and Direction Mode This command only affects the Target and thus does not affect open loop operation Step and Direction commands These commands can only be over written by another Step and Direction command Velocity Mode command Hard Stop Move command Profiled Move Override command or Profiled Move Exit command After the commands have executed done in one time slice the program moves to the next command in the Command Buffer When Multi Tasking is disabled program execution halts at these commands until a stop condition occurs NOTE The Registered Step and Direction command has another benefit in that the scaling value stored in a User Data Register may be dynamically modified with continuing program GlverMax Command Reference Page 48 Initialization Commands statements to implement ramp up ramp down and synchronization functions See Registered Step and Direction command for more information Continued on next page Input Mode commands The mode parameters contained
121. designated three letter acronym TLA for each command name The following cross reference table associates the previous command names QuickControl software version 2 8 amp earlier to the revised names QuickControl software version 3 0 amp later The table also lists the NEW commands recognized by E series motors ONLY The commands listed in ALL CAPS are Program Commands formerly designated as Block Commands They retain all previous attributes for storage in the SilverMax non volatile memory Three Command Command Names Previous Command Execution SilverMax Letter Numbers By category Names Type Model Acronym prior to E series Status Commands CPL 1 Clear Poll Clear Poll Immediate POL 0 Poll Poll Immediate RIO 2il Read I O States Immediate E Series RIS 20 Read Internal Status Word Immediate E Series RPB 6 Read Program Buffer Read RAM Immediate RVN 5 Revision Revision Immediate WPB 7 Write Program Buffer Write RAM Immediate RAM Override Commands HLT 2 Halt Halt Immediate RST 4 Restart Restart Immediate SSE 18 Single Step Exit Immediate E Series SSP 17 Single Step Program _ Immediate E Series STI 3 Stop Immediate Mode Stop Immediate Initialization Commands ADL 173 ACK DELAY Ack Delay Program AHC 150 ANTI HUNT Anti Hunt Constants Program CONSTANTS AHM
122. dicated User Data Register This command works like the basic Move Relative Velocity Based MRV command in all other ways The Register Move Relative is useful when the position value needs to be calculated internally or if the command is being executed in a Program and the Position value needs to be dynamically updated through the Serial Interface See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Register Program 161 lt lt Data Register gt gt 0 to 40 Move Class D OxA1 Relative lt lt Acceleration gt gt 1 to 1 073 741 823 Velocity 9 Words 1 to Ox3FFFFFFF Based RRV lt lt Velocity gt gt 0 to 2 147 483 647 0 to Ox7FFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxXFFFF Example QuickControl Example Move SilverMax to position indicated by Edit RRV Register Move Relative Velocity Based User Data Register 26 Stop 16 161 26 10000 53687100 0 0 CR Data Register aa User 26 gt liverMax RESPONSE Acceleration Advanced ACK only fe 78 ore a IT Response Example 10 CR GlverMax Command Reference Page 115 Motion amp Profile Move Commands EXTENDED REGISTER MOVE ABSOLUTE TIME BASED XAT See Also Write Register amp CALCULATION commands
123. e Time Based MRV Move Relative Velocity Based PCG Pre Calculated Go PCM _ Pre Calculate Move PMC Profile Move Continuous PMO Profile Move Override PMV Profile Move PMX Profile Move Exit RAT Register Move Absolute Time Based RAV Register Move Absolute Velocity Based RRT Register Move Relative Time Based RRV Register Move Relative Velocity Based XAT Extended Register Move Absolute Time Based XAV Extended Register Move Absolute Velocity Based XRT Extended Register Move Relative Time Based XRV Extended Register Move Relative Velocity Based Page 7 Program Flow Commands are at the heart of SilverMax stand alone operation Complex programs can be created that provide a total motion control solution without need for an external host controller Programs can use I O Analog inputs or the serial link for conditional operation In many cases this ability eliminates the need for a PLC in the system TLA 1 0 Commands ACR ARI CIO COB DEM Analog Continuous Read Analog Read Input Configure I O Clear Output Bit Disable Encoder Monitor TLA CLC CLP DLY END JAN JNA JOR JMP JOI JRE LPR LRP PCL PCI PRT PRI RUN SDL SPR WBE WBS WDL Program Flow Commands Calculation Clear Program Delay End Program Jump on Inputs And ed Jump on Inputs NAND ed Jump on Inputs Or ed Jump Jump on Input Jump Register Equal Load Program Load and Run Program Program Call Program Call on Input P
124. e the Acceleration is limited to the maximum See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Acceleration parameter can be no greater than 2 the Velocity parameter This pertains to raw SilverMax units only not scaled parameters in QuickControl The Stop Enable and Stop State words determine which digital inputs and or index signal are used to cause the motion to end before reaching the set Position See Using Inputs to Stop a Motion in the SilverMax User Manual SlverMax Command Reference Page 103 Motion amp Profile Move Commands MOVE RELATIVE VELOCITY BASED MRV Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Move Program lt lt Distance gt gt 2 147 483 648 to Relative Class D 2 147 483 647 Velocity 0 to OxFFFFFFFF Based 9 Words lt lt lt lt Acceleration 1 to 1 073 741 623 to 1 073 741 oe lt lt lt lt Velocity gt gt 0 to 2 147 483 647 gt gt 0 to 2 147 483 647 0 to Ox7FFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax 4000 counts from its current position 16 135 4000 10000 53687100 0 O CR ae Cancel SilverMax Response F000 counts p _Deserintion Advanced ACK onl Acceleration y 4000 cps s Is Response Example PN w 10
125. e a Kill Motor Mainly used to prevent over voltage during deceleration Value is entered in integer units Example 48 for 48 volts The Kill Motor routine is called if this occurs Sets the motor phase constants These are motor type and power supply dependent to optimize motor torque at high speed Factory set for optimal performance Command Summary Tables SilverMax Description Response ACK only Command Command Command Parameter Name Code Parameters Range Hex Hex POWER 208 LOW 0xD0 RECOVERY PLR Class D Factory Default is do nothing PROTOCOL PRT Class D Factory Default is 1 8 Bit S CURVE 195 FACTOR 0xC3 SCF Class D Factory Default 0 Trapezoida S Ft reset prior toa motion SELECT 192 EXTERNAL 0xC3 ENCODER SEE Class D Factory Default is 0 Falling lt Process gt 0 Do Nothing 1 Restart 1 to 3839 NV Memory address 1 to OxOEFF If the input voltage drops below a set value See Low Voltage Trip a user program can be called that can perform a power loss exit routine 2 words Allows the user to select the desired communications protocol 8 Bit ASCII is default lt Selection gt ACK only lt Curve Shape gt 0 Trapezoidal 1 to 32766 S Shape 32767 Full S ACK only Using this command the shape of the acceleration can be set from linear to full S curve
126. e distance of the move is negative The Second Data Register is used for the Upper Limit which is checked when the distance is positive The Absolute commands always calculate a Distance value before the move begins so even though the absolute value may be positive it may dictate a negative distance If the Lower Limit is set more positive than the Upper Limit this will create a Dead Zone If the motor s position is in the Dead Zone it will not be able to move No error checking is done on the Data Register values to prevent this condition If the limits are set so that the Target is outside of the permitted range only motions toward the permitted range are effective Drag mode may allow the Target to be forced outside the permitted range if manually moved Again only motions that move toward or within the permitted range will have effect Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Soft Stop Limits Program lt Data Register gt 0 Not Used SSL Class D 10 to 39 First of two 2 Words Example QuickControl Example SilverMax uses Data Registers 39 amp 40 for end a travel position limits 16 221 39 CR Register Cancel a Description SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 72 Initialization Commands TORQUE LIMITS TQL See Also ERROR LIMITS ERL amp ANTI HUNT CONSTANT
127. e good data The loading process is the same as used by the Register Load Multiple with only one register being loaded The data selected must be stored using the Register Load Non Volatile or the Register Load Multiple using 1 for the Number of Registers The Number of Registers must be the same as the Length of data stored If the parameters are incorrect or out of range bits 14 amp 12 of the Polling Status Word are set Care should be taken to keep track of data stored into NV Memory to avoid Data Register loading problems Two additional memory locations are stored for each block of numbers stored the first word holds a count and checksum value the second holds a zero to indicate data block rather than program block Additionally each register stored requires 2 words of storage INDIRECT ADDRESSING The Non Volatile Memory may be indirectly addressed by putting the wanted address into Register 10 and then using a NV Memory Address of zero The zero address triggers the indirect addressing mode as location 0 is reserved as the start of the initialization program This may be used to recall a long series of numbers from NV memory via a loop operation Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Register Program 199 lt Data 10 to 40 amp 200 to 211 Load Class D OxC7 Register gt Non Volatile lt NV Memory 0 to 3839 Address gt 0 to OxOEFF
128. e the unit to do a Hard reset of the processor and logic circuits This causes the processor to jump to memory address zero as if the power were just cycled on If this command does not function then the SilverMax unit will require a full power down and up to reset the processor All configurations and settings are returned to power up defaults Non Volatile memory is not affected Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Immediate 4 NONE NONE Stop STP Class A 0x4 Example QuickControl Example Reset the SilverMax processor This Immediate Host Mode Command Only is done immediately with no response to the command 16 4 CR SilverMax Response No Response Response Example THERE IS NO RESPONSE DUE TO THE RESETTING OF THE PROCESSOR GlverMax Command Reference Page 26 Override Commands Single Step Exit SSE Description This command causes the SilverMax to Exit the single step program execution mode When SilverMax has been placed into single step mode using the Single Step Program command this command takes SilverMax out of the single step mode and restores normal execution If the program is not at its end it will continue to execute until the end is reached The Halt Stop Kill Motor Power Low will also exit the single step mode and halt the program execution Command Info Command Command Command Command Parameter Range Name Type
129. eccneitls dene dee eniiede dedi EAEAN AEEA AA EENAA TEE dali 157 MODULO TRIGGER MD Fhein er e ANA A E AE AO 158 POSI HON COMPARE PCR tesoriere nee eE E EAEE 159 SET OUTPUT BIT SOB eienen A R EAA E N 160 DATA REGISTER GOMMANDS si sriecien iraa e OEE E OEE A E EEA EEE 162 ADD FO REGISTER ATR ee e EAE TAE AEE AA AA E AE 164 REGISTER LOAD MULTIPLE RLM Tecer itni pene aar E AE 165 REGISTER LOAD NON VOLATILE RLN eietsscininn inatia 167 READ REGISTER RRG a opnaa E AA ARTE E A etiam AE EEES 168 REGISTER STORE MULTIPLE RSM r mret sise taero A ENa 169 REGISTER STORE NON VOLATILE RSW cccccccsecceeceteeeeeeeeeeeeeeeeeeeaeeeeeseaeeeeeeeaaeeeeeeaaeeeteeaaees 171 WRITE REGISTER IMMEDIATE TYPE WRI hueteritgresti ionene nnn na EAA E ET 172 WRITE REGISTER PROGRAM TYPE WRP c cccccccssececeesteeteeeneeeeeeeaaeeeeeeaaeeeseeaaeeeseeaaeeeeeeaas 173 WRITE CMD LONG WORD WOL ai aisiara iae daat Daada Aaa Raa EAA aA Aaaa da ASAS AAE A aa ENAA AGTE 174 WRITE CMD WORD WCW io daai toeris ai diaa Katia an ENAN GAARAN ARAPA a ANEAN A AARRE SATANS EA AAA EAAS 175 MISC COMMANDS ae esaeen bess ccs TE RAA AAAA E RT ATE EEA AERA A evens EA 176 CLEAR MAX ERROR CME meteeta insdan iiie raea AERA AA ARARA AAE AAAA NERA aA ARAA EREA E AAAA ARRE 177 CLEAR INTERNAL STATUS CIS haerra aroda anin iaaii atoia atiak AADA AAAA Aaa AE ASAA ARREA 178 CHECK INTERNAL STATUS CKS perras raosan taeae aiiai iA A EnA APREA E EAA ERGa 179 TARGET FTOPOSHION TIP iiicz
130. ed to the Input Mode functions When Profile Move commands are used registers 20 to 24 are dedicated to the move parameters Register 10 is used by the Calculation command as an accumulator but can be user defined Reg Description Description when Commands that use Dedicated Dedicated 10 User data Accumulator CALCULATION 11 User data 12 User data Input Source Data INPUT MODE 13 User data Input Offset INPUT MODE 14 User data Input Dead band INPUT MODE 15 User data Maximum Scale Limit INPUT MODE 16 User data Maximum Output Scale INPUT MODE 17 User data Output Offset INPUT MODE 18 User data Output Rate of Change Limit INPUT MODE 19 User data 20 User data Absolute Position PROFILE MOVE 21 User data Acceleration PROFILE MOVE 22 User data Velocity PROFILE MOVE 23 User data Deceleration PROFILE MOVE 24 User data Offset PROFILE MOVE 25 40 User data Input Mode includes Position Input Mode Velocity Input Mode Torque Input Mode Profile Move includes Profile Move Profile Move Continuous Profile Move Override Profile Move Exit Data Registers Detailed Descriptions These registers can be used by all commands that are able to operate on or with User Data Registers 25 to 40 User data 206 207 provide an alternate way to set the motor torque from the Serial Interface or from within a program These may be altered while a motion is in progress if multit
131. egister commands can be used to write the move parameters into the Data Registers The Write Register commands do not type check the parameters when written therefore errors may occur at time of execution Changing the move parameters during an actual move will have no affect on the move in progress See Scaling in the beginning of the manual for details on scaling the parameters to engineering units The Extended Register Move Relative is useful when the move parameters need to be calculated internally or if the command is being executed in a program and the move parameters need to be dynamically updated through the Serial Interface Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Extended Register Program lt lt Starting Data 10 to 40 Move Class D Register gt gt Relative lt Stop Enable gt 0 to 65535 Velocity Based 9 Words 0 to OxFFFF XRV J lt Stop State gt 0 to 65535 0 to OxXFFFF Example QuickControl Example Select the first of 3 consecutive registers Move SilverMax using parameters from User Data Registers 20 22 that hold the the data for this command ou Cancel a6 i OR Starting Register Description SilverMax Response User Profile Move Pos 20 Advanced ACK only a Response Example stop 10 CR GlverMax Command Reference Page 119 Program Flow Commands Program Flow Commands GlverMax Comman
132. en be written to a User Data Register using either Write Register Immediate Type using serial interface Calculation or Write Register Program Type from within a program Next when it is desired to move the motor to that position the Register Move Absolute Velocity Based command could be used with the number of the User Data Register to which the data was stored Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Write Immediate lt Data Register gt 10 to 40 Register Class A Ox0A to 0x28 Immediate Type WRI lt lt Data gt gt 0 to 4 294 967 295 0 to OxFFFFFFFF or 2 147 483 648 to 2 147 483 647 Example QuickControl Example Write the number 8000 to data Immediate Host Command Only register 12 See pages 11 12 for details 16 11 12 8000 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 172 Data Register Commands WRITE REGISTER PROGRAM TYPE WRP Description The Write Register command writes the included data into the selected 32 bit Data Register This command is similar to Write Register Immediate Type except it is designed to be embedded in a program and cannot be use through the Serial Interface while a command or program is being executed The Data Register can be used for parameter data by commands such as Register Move Absolute Velocity Based or Calculation Thi
133. en teene scene eet nestenee cease teaeetenaeeseaees 99 MOVE RELATIVE TIME BASED MRT 22 ccccccescsene cence teen eeceenee cee ee tans steaae sees eteaaeeneneeteaes 101 MOVE RELATIVE VELOCITY BASED MRV ccccccccccetsetneectenee tenes eta neseeenee teas eteaaeeteneeeeaes 103 PRE CALCULATED GO POG cccccssszssssecitcctasssecagseecdertees seecssiececteanettteessisdentenerecensssatecrenes iinis 105 PRE CALCULATE MOVE PCM ccccccceecce tens ceeee cece arenai aeiia cane etaae sense seaeeteaaesseneeeeeees 106 PROFILE MOVE CONTINUOUS PMOC 00 ccccccccccee eects tenet eta neeeenae crease cane stenaeseeeesaeeteaeeneees 107 PROFILE MOVE OVERRIDE PMO cccccceecstenee cece setae seen ne ceenee ceases tans steneeeteaeegeaaesneneeeeeees 109 PROFILE MOVE PMV reisisid inida aeina saidas tea lattes datetibea E aA A EEA ae Aa aAa aaa 110 PROFILE MOVE EXIE PMX uloti eataa a a eagair gaaei niidi iiia aia a iaiia anid 111 REGISTER MOVE ABSOLUTE TIME BASED RAT sesssssssesssssnnnsnnsrrnsrrnnrrnnrrnnrnnnrrnnrnnnnn 112 REGISTER MOVE ABSOLUTE VELOCITY BASED RAV sesssesseennnnennnennnnnnnnrnnrrnnrrnnnnnnnne 113 REGISTER MOVE RELATIVE TIME BASED RRT sessessnessnesnneennsnnsrnnsrrnnrrnnrnnernnnrnnnrnnnn 114 REGISTER MOVE RELATIVE VELOCITY BASED RRV 0 0 cccccceesse tees cteneeteneeeeaeeteeeeeaees 115 EXTENDED REGISTER MOVE ABSOLUTE TIME BASED XAT c cccccccttscceessetenesteneeeeenees 116 EXTENDE
134. ended Register Program lt lt Starting Data 10 to 40 Move Class D Register gt gt Relative lt Stop Enable gt 0 to 65535 Time Based 9 Words 0 to OxFFFF XRT lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax using parameters Edit XRT Extended Register Move Relative Time Based x from User Data Registers 30 32 Select the first of 3 consecutive registers 16 2343000 CR that hold the the data for this command Cancel SilverMax Response Starting Register Description Advanced ACK only Test Response Example 10 CR Stop ttet GlverMax Command Reference Page 118 Motion amp Profile Move Commands EXTENDED REGISTER MOVE RELATIVE VELOCITY BASED XRV Description The Extended Register Move Relative performs a relative distance move using move parameters contained in the indicated User Data Registers This command works like the Move Relative Velocity Based MRV command in all other ways The move parameters are retrieved from the User Data Registers in the following order If Starting Data Register N N Distance N 1 Acceleration N 2 Velocity The move parameters must be written into the User Data Registers prior to executing the move command The range of the move parameters stored in the User Data Registers must be the same as those used in the basic Move Relative Velocity Based MRV command The Write R
135. ent or past condition of the SilverMax device that was polled If a bit is set 1 this indicates the condition has occurred Using the Clear Poll command individual bits can be cleared 0 Example 8 Bit ASCII Protocol 10 0000 2000 CR NOTE For more information on the SilverMax 8 Bit ASCII protocol see the SilverMax User Manual Table Showing Data going from a Hexadecimal word to a Binary word Hexadecimal Word 2000 mows Ee o e o pre e E E a2 2 ee eis coce EA Wa ee 2 eo BinaryWord PO To 4 fo fo fof oto ojo foto jolo fol Table with definitions of Status bits Returned Character 1 character Foreground Command Done Foreground Command Error Command or Program complete 2 character Move terminated with sensor found Low Over Voltage Position Error Stopped Motion Error Moving 3 character Too long of message 4 character GlverMax Command Reference Page 18 Status Commands Poll POL Description This command is used to determine the condition of a SilverMax unit A Poll command can be executed at any time including while SilverMax is in motion Executing this command will cause the addressed SilverMax unit to return either an ACK if no bits of the status are set or the Polling Status Word The Polling Status Word contains information about the current state of the SilverMax See Polling Status Word Section in the SilverMax User Manual The Poll command can be used w
136. ep Immediate 17 NONE NONE Program Class C 0x11 SSP Example QuickControl Example Put SilverMax into Single Step Immediate Host Mode Command Only Program mode or Step the program 16 17 CR SilverMax Response ACK only Response Example Standard SilverMax Acknowledge 10 CR GlverMax Command Reference Page 28 Override Commands Stop STP Description The Stop command exits the executing program or motion and goes into Hold If a motion is running the Deceleration parameter sets the deceleration as follows If 0 it uses the executing command s acceleration value for deceleration If this value is positive it uses the given deceleration value If the deceleration parameter is negative the unit does an immediate stop directly to Hold The Target value is set to the present position If the unit is not executing a motion any Program type command executing is terminated and the unit returns to idle When the Stop command is sent the Program Buffer is over written similar to a Clear Buffer The Program Buffer must be loaded again Load Program or Load and Run Program for Program execution Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Immediate lt lt Deceleration gt gt 1 Stop Immediate Stop STP Class A Oa or 0 Stop using previous Acceleration or 1 to 536 870 911 1 to 0x1FFFFFFF Example QuickControl E
137. equence This command stops the execution of all commands programs and motions When executed it will stop any command or program in process Unless the Kill Recovery Routine has been designated and the Kill Enable Driver has been enabled the motor driver will be disabled This removes the drive to the motor and allows the motor shaft to spin freely After this the KILL MOTOR RECOVERY routine is called which allows the user to choose the recovery method Running either the ENABLE MOTOR DRIVER command or re initializing the MOTOR CONSTANTS for earlier revisions will put the motor back into position holding mode Before doing this the SET TARGET TO POSITION command should be issued to avoid sudden extreme movement of the motor Bit 10 of the Internal Status Word is set to indicate that a Halt command was sent This is useful for determining the cause of the motor shut down when using an internal Kill Recovery Program Command Info Command Command Command Command Parameter Name Type Code Parameters Range Hex Hex Halt HLT Immediate 2 NONE NONE Class A 0x2 Example QuickControl Example Halt any Command Program or Immediate Host Mode Command Only Motion in process 16 2 CR SilverMax Response ACK only Response Example Standard SilverMax Acknowledge 40 CR GlverMax Command Reference Page 25 Override Commands Restart RST Description The Restart command is provided to caus
138. erMax Command Reference Page 38 Initialization Commands DIGITAL INPUT FILTER DIF Description Sets up a filter time constant for any of the seven digital inputs A 0 in the I O line parameter causes all of the input filter constants to be changed at the same time Selecting 1 2 3 4 5 6 or 7 for the I O line changes only the selected line The Filter constant is in Ticks 120 usec tick Setting the filter constant affects how long a digital state must be held for the SilverMax to see the given state NOTE At power up all filters are set to 0 Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program lt I O Line gt 0 All Lines Digital Input Class D 1to7 Filter DIF 0 to 0x7 3 Words lt Filter 0 to 32767 Constant gt 0 to Ox7FFF Example QuickControl Example Filter Input 1 so that it must be either low or high for as least 117 96 milliseconds before the low or high state is accepted aa ance 170 Line izo Line 1 x Description i Filter Constant Units Ne Spa Normal fi 17 96 mSec Native 16 252 1 983 CR ACK only Response Example 40 CR SlverMax Command Reference Page 39 Initialization Commands DIRECTION DIR Description Establishes at initialization the direction the motor will turn by using a positive or negative number Normally the SilverMax will turn Clockwise when v
139. esveceneduwweeedancecawad wae A A saweebedsneuauedaceusussweduntdiewsbeduewlsysahecaseedat 222 SlverMax Command Reference Page v SILVERMAX COMMAND SET OVERVIEW Status Commands are used to retrieve information from SilverMax These commands can all be used while SilverMax is executing a motion TLA Override Commands HLT Halt RST Restart SSE Single Step Exit SSP Single Step Program STP Stop Initialization Commands setup the SilverMax operating characteristics Typically these commands are placed in the Initialization program but may also be used during normal operation TLA Initialization Commands ADL ACK Delay AHC Anti Hunt Constants AHD Anti Hunt Delay AHM Anti Hunt Mode BRT Baud Rate CAI Calibrate Analog Inputs from NV CTC Control Constants DDB Disable Done Bit DIF Digital Input Filter DIR Direction DLC Dual Loop Control DMD Disable Motor Driver DMT Disable Multi Task EDH Enable Done High EDL Enable Done Low EMD Enable Motor Driver EMT Enable Multi Task SlverMax Command Reference TLA Three Letter Acronym TLA Status Commands CPL Clear Poll POL Poll RIO Read I O States RIS Read Internal Status Word RPB Read Program Buffer RVN Revision Override Commands can Halt Restart or Stop the SilverMax at any time These override any current operation for greater control of the motor Program execution can also be controlled ERL Error Limits FLC Filter Constants GOC Gravity Off
140. eteeninaseees 43 DISABLE MULTI TASKING DMT i cccceccececceeceeeeeeeeeeaeeeceseeesecaaaeaeeeeseceseesedicaeeeseeeteteenieaneess 44 ENABLE DONE HIGH EDH niire fen ese ieoaiue ara aaea ea aa dag AEA EE EE EEEa E ei 45 ENABLE DONE LOW EDL ir rine sieved eaa aaar eet need e AAAA ar Eo tdee esi teed Te EEE TAFEA 46 ENABLE MOTOR DRIVER EMD e a a a r a a aara aar ae a 47 ENABEE MULTI TASKING EMT irasos erano aaa aA 48 ERROR LIMITS FERE a aa aa a a ra a r ea aaae a a aa A 50 FILTER CONSTANTS FEO e a a ae aaa Eaa a e E aO aaae 52 GRAVITY OFFSET CONSTANTS GOC reenen a aaa E Ae a E AEN 53 IDENTITY DT r aaa n e aaa aa e iae araen anaana 54 SlverMax Command Reference Page ii KILL DISABLE DRIVER KDD JE rea e aaa aa raa aaa Aaa TARE E a E a E a a aa ari 55 KICLENABLE DRIVER KED ivi sesccccteectne ts n nea aaa ei aa aaa ad a a ia 56 KILL MOTOR CONDITIONS KMC ssssesseensesrnesrnesrnssrnnsrrnerrnesrnnsrnnsrnnsrnnsrrnsrnnnrnnnrnnnrnnnrnnnrnnnnne 57 KILL MOTOR RECOVERY KMR aiei reiii inesi inian iiei rii a a aa a eiaa ea i a 59 LOW VOLTAGE TRIP EVT yi peterent iii eiia oaie dah ANa E RE TRE A 60 MOTOR CONSTANTS MG T ieiree tiiir riai iia a a a E A 61 MAXIMUM TEMPERATURE TRIP MTT ooneeneeneenneennnennnesrnesrnnsrrnsrrnsrnnsrnnsrrnnrnnnnrnnsrnnsrnnnrnnnn 62 OPEN LOOP PHASE OLP cesaret exe coe ansavs deeds sth airinn aei eana ered alasdbadeedecdeeaedaamesdeedexzaneedaxa dats 63 OVER VOLTAGE TRIP OVT seiccsus sedis cecae
141. ew identifier Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program lt Group Unit 257 to 65278 Identity Class D Identity gt 0x0101 to OxFEFE IDT Group Upper Byte 2 Words Unit Lower Byte Example QuickControl Example To Calculate number Multiply the Group Identity times 256 then add the Unit Identity Select the Unit ID and Group ID to which the SilverMax will respond Group 10 Unit 16 Cancel Unit ID 116 Unique address for this SilverMax Description Identity 10 256 16 2576 Change Min Max in el Group Identity of 10 Unit Identity of esate rou entity O UNI entity 0 16 Group ID fio All SilverMax on the network will accept commands addressed to their Group ID 16 155 2576 CR SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 54 Initialization Commands KILL DISABLE DRIVER KDD Description Disables the motor driver shorting across the windings passive braking when a Kill Motor Condition is met If the SilverMax is moving it will stop immediately in a rapid manner The motor will be unable to move until re enabled using the Enable Motor Driver command This is the default setting for the motor Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program Kill Disable Class D
142. exited via the Stop command or the Change Velocity Program and the Profiled Move Exit command if multitasking is enabled See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hax Velocity Immediate lt lt Acceleration 1 to 1 073 741 823 Mode Class A gt gt or Immediate 1 to 1 073 741 823 een lt lt Velocity gt gt 2 147 483 647 to 2 147 483 647 lt Stop Enable gt 0 to 65 535 0 to OxFFFF lt Stop State gt 0 to 65 535 0 to OxFFFF Example QuickControl Example Put SilverMax into velocity mode Immediate Host Mode Command Only running at 200 RPM See pages 11 12 for details 16 15 200000 107374200 0 0 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 87 Mode Commands VELOCITY MODE PROGRAM TYPE VMP Description Accelerates the motor to the indicated velocity using the given acceleration This command may be run from within a program When this command is executed in a program the motion will continue until the velocity reaches zero Issuing the command with a non zero velocity and stop on I O enabled will allow the motor to run at velocity until the selected stop configuration is met the velocity then ramps down to zero and the motion ends This command can also be used through the
143. ffer 0 to 0xC7 Address gt GlverMax Command Reference Page 204 Code Hex Command Command Parameters Command Summary Tables Parameter Range Hex SilverMax Description Response JUMP ON INPUT 162 lt I O Code gt 1 to 14 ACK only During Program JOD OxA2 execution uses an input Class E lt I O State gt 0 Low to conditionally Jump 4 Words 1 High to another program line lt Command 0 to 199 Uses the JUMP Buffer command with negative Location gt numbers JUMP ON 137 lt Register gt 0 to 40 200 to ACK only During Program REGISTER 0x89 211 execution it compares EQUAL lt lt Value gt gt 2 147 483 648 the contents of the given JRE 5 Words to register with the supplied Class E 2 147 483 647 Value and jumps to the 0 to selected buffer location OxFFFFFFFF if they are equal lt Command 0 to 199 Buffer Location gt Load Program 14 lt NV Memory 0 to 3839 ACK only Reads a program from LPR Ox0E Address gt 0 to OxOEFF non volatile memory and Class B Cats aes cont a it into command The Count is i typically set to 0 oo ERA Use Read RAM to read 1 to 199 read data from Command the literal word putren count LOAD amp RUN 156 lt NV Memory 0 to 3839 ACK only Loads a stored Program PROGRAM 0x9C Address gt 0 to OxOEFF from Non volatile LRP
144. for this move Make sure they have been initialized before executing Cancel SilverMax Response ser Regeln 20 Pain Description User Register 21 Acceleration ae User Register 22 Velocity ACK on ly User Register 23 Deceleration User Register 24 Offset Test Response Example dill Stop 10 CR GlverMax Command Reference Page 110 Motion amp Profile Move Commands PROFILE MOVE EXIT PMX CONTINUOUS PMC Description Exits the current Profile Move allowing the move to stop using the Deceleration parameter stored in Data Register 23 This command will work to stop any Motion Profile Move or Mode The deceleration begins immediately and the profile destination will not be reached Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Profile Move Program Exit PMX Class D 1 Word Example QuickControl Example pice cali a 16 242 CR Command Name MOVE PMX Profile Move Exit SilverMax Response Eer ACK only Test Cancel Response Example 10 CR GlverMax Command Reference Page 111 Motion amp Profile Move Commands REGISTER MOVE ABSOLUTE TIME BASED RAT Description The Register Move Absolute performs an absolute move using a position value contained in the indicated User Data Register This command works like the basic Move Absolute Time Based MAT command in all other ways The Register Move Absolute is useful
145. gest count that can be set is 21845 this will give a delay of 2 6214 seconds When sending this command the delay takes effect before the Acknowledge is sent Command Info Command Command Name Type Program Ack Delay Class D ADL Example Delay ACK for 2 5 milliseconds 16 173 20 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Command Parameter Range Code Parameters Hex Hex lt Count in Ticks gt 0 to 21845 1 Tick 120usec 0 to 0x5555 QuickControl Example Edit ADL ACK Delay x ACK Delay is the amount of time OK the SilverMax will wait before responding to a command Cancel Normal Values depending on Serial Interface SIF O ticks RS232 20 ticks RS485 Description Select the Auto option to allow Automatically QuickControl to automatically set Set ADL ADL depending on the SIF depending on recommended the current SIF Dey FE see UH f Normal C Native Seer Page 31 Initialization Commands ANTI HUNT CONSTANTS AHC ANTI HUNT DELAY AHD Description Anti Hunt Constants set the thresholds used to determine if the position is sufficiently close to the target to allow the motor to go into and to stay in Anti hunt mode The first parameter is the maximum error in counts allowed in the Anti Hunt mode before the unit will revert to normal closed loop operation The second parameter is the
146. gister address If the current movement segment ends while the upper half of Register 17 is non zero then the deceleration data in Register 19 is used to decelerate the motion to a stop An error flag is set in bit 12 of the Status word to indicate a timeout in the data stream The motion is stopped but the program continues in operation The final motion segment of a move is denoted by setting the segment time counter the data in the first word of the four data words to zero The final four words of segment information are copied into the respective profiled move operation registers and the move continues as a profiled move This move may also be driven from the Serial Interface The first method is to initialize the registers as was explained above but using the serial interface to write the registers and monitor Register 17 to determine when the next data needs to be supplied The preferred method is to use the Interpolated Move Queue Clear and Interpolated Move Write commands In this mode the Interpolated Move Clear a program mode command is used to clear our any existing data from the a four deep by four long word software FIFO specifically provided for this use Next Register 17 is set to zero 0 to indicate data will be drawn from the circular queue Register 19 should be initialized with an GlverMax Command Reference Page 92 Motion amp Profile Move Commands appropriate deceleration value to use to stop the motion in the ca
147. gister in this bank of four contains the target position for this time segment If the segment is intended to end with the velocity non zero then this value should be full scale negative if the final velocity is to be negative or full scale positive if the final velocity is to be positive If the final velocity of this segment is zero then the position should be the desired stopping position This value is automatically copied to Register 20 for use by the profiled move operation The third register in this bank of four contains the acceleration or deceleration magnitude positive values only for this segment of the move It is copied to Register 21 and 23 for use by the profiled move operation The fourth register in this bank of four contains the speed absolute value of the velocity for this segment of the move It is automatically copied to Register 22 for use by the profiled move operation After the four values have been copied The upper word of Register 17 is set to 1 to indicate the data has been transferred and is now stale If updating from internal memory a multitasking program should be looping until this register has been modified Next it needs to either point to the next set of data Register 34 for example if the data representing the next segment has already been loaded or it needs to load the data representing the next segment of the move into the same set of Registers then re write Register 17 with the starting Re
148. gt 0 to 65535 1 or0 0 to OxFFFF Example QuickControl Example Put SilverMax into a continuous Edit PMC Profile Move Continuous x Profile move Stop if Input 1 is high Stop 1 The following registers store the paramters T 7 i for this move Make sure they have been a i initialized before executing Cancel 16 240 1 1 CR em User Register 20 Position _Deseription SilverMax Response User Register21 Acceleration User Register22 Velocity Advanced User Register 23 Deceleration ACK only User Register 24 Offset Test Response Example 40 CR SlverMax Command Reference Page 108 Motion amp Profile Move Commands PROFILE MOVE OVERRIDE PMO See Also PROFILE MOVE CONTINUOUS PMC Description The Profile Move Override command allows a Profile Move Continuous to end when the Position is achieved Normally the Move Continuous will not end until explicitly stopped by a Stop Condition or another command The Override provides a graceful way to end the move so that the entire motion is completed with the motor stopping at the defined position PMO will also override all other motions including Step and Direction if multitasking is enabled Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Profile Move Program lt Stop Enable gt 0 to 65535 Override Class D 1 to 14 PMO 0 to OxFFFF 3 Words lt Stop State gt
149. he motor while it is executing a command or a program Command Parameters e Parameters that are 32 Bit Signed can range in value from 2147483648 to 2147483647 Unsigned can range in value from 0 to 4294967295 e Parameters that are 16 Bit Signed can range in value from 32768 to 32767 Unsigned can range in value from 0 to 65535 e Parameters must always be included in the command string even if the value is 0 e Parameters that represent a Bit state are 1 for logic high 5 volts on input and O for logic low 0 volts on input e Parameters that represent a Binary Word must be converted to a number e lt parameter gt denotes 16 Bit numbers lt lt parameter gt gt denotes 32 Bit numbers SilverMax Response SilverMax will respond to a command in one of three different ways e Acknowledge ACK This is typical for most commands and is the simplest response e Negative Acknowledge NAK Something is wrong with the command or transmission e Specific Data SilverMax information or Data that is requested by the command GlverMax Command Reference Page 10 SCALING Native SilverMax units are designed to take advantage of the entire parameter range whether it is 32 bit or 16 bit Because of this converting from engineering units to Native SilverMax units requires some scaling The following sections describe scaling for the most popular command parameters Filter Parameters T
150. he filter constants are calculated as follows Fv Filter Value Native SilverMax Units F Filter in Hz Cutoff Frequency 3dB down point T Time Sample 120 microseconds Fvl Filter Value Limit 32768 Fv Fvl e F In Fv Fvl 2xT Example Position Input Mode PIM command with a 117Hz filter The native SilverMax Filter Value is 30000 30000 32768 e 1172 120uS Position Parameters The Position Value Units is in Encoder Counts For a SilverMax with an encoder that provides 4000 counts per revolution one revolution of the motor is 4000 counts To scale a move to revolutions multiply the revolutions value by 4000 Velocity Parameters The Velocity parameter is scaled internally as SilverMax velocity units SilverMax velocity units are based on the maximum velocity value 2 147 483 647 being equal to 4000 RPM This yields the number 536 871 as equal to one RPM To calculate Velocity in RPM multiply the RPM value by 536 871 Example 200 RPM 200 536 871 SVU 107374200 Acceleration Parameters The Acceleration value is scaled internally for SilverMax acceleration units SilverMax acceleration units are based on the maximum acceleration value 1 073 741 823 being equal to 2000 RPM in 1 servo cycle 0 00012 sec This yields the number 64 4245 as equal to one RPM sec Or the number 3865 47 as equal to one RPS sec To calculate Acceleration in RPM sec multiply the RPM sec value by 64 4245 Example 10000 R
151. hen checking to see if a motion has completed This is useful when a system must wait for a SilverMax to complete its operation before performing the next operation It may also be used to verify that the last motion completed without any motion or position errors when the ERROR LIMIT command has been used to set up motion error conditions The Polling Status Word bits are Set when the particular condition takes place The bits are re set using a Clear Poll command See Clear Poll command above Note Additional conditions that occur after a Poll will show up in the following Poll even if those bits have been cleared in an intervening Clear Poll command i e they cannot be cleared until they have been read the data is double buffered Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Poll Immediate 0 or NONE NONE NONE POL Class A 0x0 Example QuickControl Example Poll without command number 16 CR Immediate Host Mode Command Only Poll with command number 16 0 CR SilverMax Response ACK only or Pulling Status Word 0 to 65535 0000 to FFFF Response Example This is the SilverMax response with status Indicates Command Program Complete 10 0000 2000 CR 10 CR GlverMax Command Reference Page 19 Status Commands Read I O States RIO Description The I O State Word is available for reading back the states of misce
152. his is used to prevent internal over heating of the motor electronics The value is entered in degrees Celsius integer units Example 70 for 70 degrees Celsius The maximum temperature error condition is OR ed with the motor driver over temperature condition Either active will cause an Over Temperature status condition in the Internal Status Word The temperature can be read using the ANALOG READ INPUT command Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Maximum Program 214 lt Temperature gt 0 Don t Check Temperature Class D OxD6 Temperature in 1 to 70 Trip C 1 to 0x46 MTT 2 Words Example QuickControl Example Set Motor to give an error at 70 Edit MTT Maximum Temperature Trip x degrees C i Maximum Temperature Trip Cancel SilverMax Response Fa a ACK only sannnnannnnanm J 16 214 70 CR Response Example 10 CR GlverMax Command Reference Page 62 Initialization Commands OPEN LOOP PHASE OLP Description The Open Loop Phase is used to set initial motor phase prior to doing motor encoder alignment It is primarily used as an element in the algorithmic motor to encoder alignment routine For values between zero and seventy nine this represents the micro step position of the motor at 20 micro steps per step Negative values are used to select half step positions i e 2 sets the motor at 1 full s
153. iate Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Immediate Program Program Immediate Program E Series E Series E Series E Series E Series E Series E Series E Series E Series E Series E Series E Series Rev 321 E Series E Series Rev 321 E Series E Series E Series E Series Command Name Cross Reference CIS 163 CLEAR INTERNAL Clear Target Status Program STATUS CKS 164 CHECK INTERNAL Check Target Status Program STATUS CME 147 CLEAR MAX ERROR Clear Max Error Program TTP 146 SET TARGET TO Set Target to Position Program POSITION WCL 138 WRITE COMMAND Program E Series Rev BUFFER LONG WORD 427 329 WCW 139 WRITE COMMAND Program E Series Rev BUFFER WORD 427 329 ZTG 144 ZERO TARGET Zero Target Program ZTP 145 ZERO TARGET AND Zero Target and Position Program POSITION GlverMax Command Reference Page 221 INDEX 8 8 Bit ASCII 67 9 9 Bit Binary 67 A A amp B Quadrature 81 A B Quad 69 Absolute position 97 99 Absolute Value 122 Acceleration 100 104 113 Acceleration Feedback 37 52 Acceleration Feedforward 37 Acceleration Parameters 11 Acceleration Time 98 102 112 114 ACK 31 ACK DELAY ADL 31 Acknowledgement ACK 31 Add 122 ADD TO REGISTER ATR 164 NALOG CONTINUOUS READ ACR 148 149 NALOG READ INPUT ARI 150 151 N
154. ied within the program This command specifically is intended to modify 16 bit parameters Extreme care should be used when writing any self modifying code to prevent unwanted outcomes The QuickControl tool has support for this command which simplifies its application and enforces consistency checks However values being transferred are dynamic based on the contents of the selected register the range of the data is not verified at transfer so undesired results may be obtained if out of range parameters are assembled into the command buffer including Sequence Error shutdowns This command does allow for great flexibility by allowing any of the parameters to be made register based Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Write Cmd Program 139 lt Register gt 0 to 0x28 Long Word Class D OX8B 0 to 40 200 to 211 OxC8 to 0xD3 WCL 3 Words lt CMD Buffer 0 to 199 Location gt 0x0 to 0xC7 Example QuickControl Example oo eee contents at locations 122 with the contents of the lower word of Register 10 Register Cancel Accumulator 10 Description 16 138 10 122 CR Command to Write To SilverMax Response a N ACK only Command ARV Register Move Relative Velocity Based Parameter Data Register a Acceleration Response Example 10 CR GlverMax Command Reference Page 175 Misc Commands Misc
155. iewed from the shaft end of motor when a positive distance or velocity number is used A negative number will cause the motor to turn counter clockwise Using the Direction command this default operation can be reversed NOTE This command can only be used when SilverMax is in the Open Loop mode and should be set during the power up initialization process of SilverMax before the initial torque command Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program lt Selection gt 0 Normal CW Direction Class D 1 Reverse DIR 2 Words Example QuickControl Example Clockwise 16 184 0 CR Select default direction for all OK move commands Direction is in reference to viewing shaft end of r Cancel SilverMax Response SilverMax Description iit ACK only ir pon Direction C Counter Clockwise Response Example 40 CR GlverMax Command Reference Page 40 Initialization Commands See Also SELECT EXTERNAL ENCODER DUAL LOOP CONTROL DLC SEE SINGLE LOOP CONTROL SLC Description Configures SilverMax to run in a Dual Loop control mode In Dual Loop Control the SilverMax servos its position based on an External Encoder signal SilverMax commutation velocity and acceleration feedback information is derived from the Internal Encoder Moving and Holding error limits also use the External Encoder for the Kill Motor Condit
156. ill Motor Condition 55 56 Kill Motor Conditions 59 KILL MOTOR CONDITIONS KMC 57 58 Kill Motor Recovery 57 KILL MOTOR RECOVERY KMR 59 L LOAD AND RUN PROGRAM LRP 136 Load High Word 122 LOAD INDIRECT 122 Load Low Word 122 Load Program LPR 135 logic 121 Low Voltage Trip 66 LOW VOLTAGE TRIP LVT 60 math 121 MAXIMUM TEMPERATURE TRIP MTT 62 Misc Commands 176 211 Mode Commands 76 194 MODULO CLEAR MDC 156 MODULO SET MDS 157 MODULO TRIGGER MDT 158 Month 23 Motion amp Profile Move Commands 196 Motion amp Profile Move Commands 89 MOTION amp PROFILE MOVE COMMANDS 90 MOTOR CONSTANTS MCT 61 Move Absolute 112 113 116 117 MOVE ABSOLUTE TIME BASED MAT 98 MOVE ABSOLUTE VELOCITY BASED MAV 99 100 Move Relative 114 115 118 119 MOVE RELATIVE TIME BASED MRT 101 MOVE RELATIVE VELOCITY BASED MRV 103 104 MULT 122 Multi Tasking 44 N Native SilverMax units 11 Non volatile Memory 169 Non Volatile Memory 165 167 171 O open loop 78 OPEN LOOP PHASE OLP 63 Options Number 23 OR 122 Output 152 160 OUTPUT 153 Over Temperature 62 OVER VOLTAGE TRIP OVT 64 Override Commands 24 184 P PACK 122 PHASE ADVANCE CONSTANTS PAC 65 Poll POL 19 POSITION COMPARE PCP 159 Position Error 177 POSITION INPUT MODE PIM 79 Position Parameters 11 Power Low Recovery 60 POWER LOW RECOVERY PLR 66 PRE C
157. ilter as is used in the Velocity Estimator filters used in the PVIA loop The Velocity Input Mode can be exited using digital inputs Digital inputs are used in the same manner as the Motion Profile Commands See Using Inputs to Stop Motions in the SilverMax User Manual As with other motions the Velocity Input Mode may also be exited via the Stop command or the Change Velocity Program and the Profiled Move Exit command if multitasking is enabled Velocity Input Mode uses a set of Data Registers and processing to allow sophisticated manipulation of the input data This allows the input signal to be calibrated to give the desired velocity control See Input Mode Usage for more details on using this mode Before putting SilverMax into the Velocity Input Mode Data Registers 12 18 must be initialized with the appropriate data to allow proper operation If using an Analog input for the data source the Analog channel to be used must be set up for continuous reading before issuing the mode command see Analog Continuous Read command Command Info Command Name Command Type Command Command Parameter Range Code Hex Parameters Hex Velocity Input Program lt Filter 0 to 32767 Class D constant gt 0 to Ox7FFF Fe7O0 Exit 0to65535 4 Words Enable gt 1 to 7 0t00xFFFF FeO Exit 0to65535 State gt 1 or 0 0 to OxFFFF Example QuickControl Example eo ee 30000 32768 e 117 2x 120uS 16 21
158. ilverMax Response Description Test ACK only Response Example 10 CR GlverMax Command Reference Page 154 I O Commands ENABLE ENCODER MONITOR EEM Description The Enable Encoder Monitor command is used to output the SilverMax Internal Encoder signals to the Digital I O It causes a buffered copy of the raw encoder signals to be output to three digital lines for external viewing The Encoder A signal is output to I O line 1 the Encoder B signal to I O bit line 2 and the Encoder Index signal is output to I O line 3 These signals have the same output specifications as the generic digital outputs I O lines 1 2 and 3 are not available in Bit Output mode either set or clear while the encoder outputs are enabled Similarly the Encoder outputs may not be enables while any of the three I O lines are in output mode Either of these conflicts will cause a Sequence error and will terminate the program See Using SilverMax I O in the SilverMax User Manual for more information on I O usage and conflicts To exit this mode use the DISABLE ENCODER MONITOR command For using the Encoder output for controlling or sending signals to other external devices see the Modulo commands below These commands are designed to be more flexible in outputting encoder signals Command Info Command Type Program Class D Command Name Enable Encoder Monitor EEM Example Turn on monitoring of the Internal E
159. in User Data Registers 12 18 may be dynamically modified using the Write Register commands in continuing program statements while operating in the any of the Input Modes Profile Move commands These commands can only be over written by a Profile Move Override command the Profile Move Exit command or by the Velocity Mode They operate using User Data Registers for the motion parameters The Data Registers can be updated at any time from a Host controller using the serial interface This can be done regardless of the Multi Tasking state If however an internal program is used to modify the Data Registers Multi Tasking must be enabled After a Profile Move command is executed continuing program statements may be used to dynamically modify the Data Registers See Profile Move commands for more information on usage Program End command If multitasking is enabled and this command is encountered the executing program exits and the Program Complete status bit is set in the Polling Status Word If there is an active motion command it will continue execution until complete delayed until motions or modes have completed if not set for Multi Tasking operation when this motion or mode completes status bit 15 foreground complete in the Polling Status Word is set Halt command Runs the Kill Recovery command after setting the Halt bit in the Internal Status Word The current motion or mode is terminated The motor driver will remain enabled
160. iod to sample period variations The excess sample counts should not be allowed to exceed 1024 counts to prevent loss of counts The counter is also double low pass filtered to generate an estimate of the Target Velocity for the Velocity Feedforward term The filter time constants used are the same as is used for the Velocity 1 and Velociy 2 Filters in the feedback loop All of the filter time constants in the system are set by the Filter Constants command The system switches to Moving Torque and Error Limits checking upon the first Step pulse being received and remains with these settings until the Hold Delay time has passed since the last Step pulse has been received and since the Target Velocity filter has been allowed to decay to zero Once these time limits have elapsed the system reverts to Holding Torque limits and Holding Error limits As with other moves the Scaled Step and Direction move may be exited via the Stop command or by the Change Velocity Program and the Profiled Move Exit command if multitasking is enabled Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Scaled Step Program 180 lt Scale 1 to 32767 amp Direction Class D OxB4 Factor gt 1 to Ox7FFF SSD 2 Words 1024 is a multiplier of 1 GlverMax Command Reference Page 81 Mode Commands Example QuickControl Example Put SilverMax into a Step amp Edit SSD Scaled Step amp Direction
161. ion See SilverMax Initialization in the SilverMax User Manual for more information The motor will not go into Closed Loop mode if the motor is moving as indicated by an encoder count of greater than 1 during a 100 milliseconds period The motor must be stationary when going into Closed Loop mode to prevent improper phase alignment of the motor rotor to the encoder Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Go Closed Program 142 NONE NONE Loop Class D Ox8E GCL 1 Word Example QuickControl Example Put SilverMax into closed loop mode Edit Command x 16 142 CR Command Name MODE GCL Go Closed Loop Description Cancel SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 77 Mode Commands GO OPEN LOOP GOL Description Puts SilverMax into open loop operation This is the default motor power up mode This command is used during motor initialization to aid in aligning the motor rotor to the encoder See SilverMax Initialization in the SilverMax User Manual for more information The command can also be used to force the motor into Open Loop mode where it can be operated in a Stepping Motor drive mode This is not recommended for normal operation as the motor performance is severely degraded If the motor is in Dual Loop Control operation when this command is encountered it is forced ba
162. ions The Anti Hunt mode uses the Position Error derived from the External Encoder to establish when to move in and out of Anti Hunt mode The ANTI HUNT CONSTANTS Closed gt Open parameter should be set to 1 so that an error of 0 will allow entry into Anti Hunt When position control of the driven device is needed this command along with an External Encoder connected to the device will enable direct position control of the device When using a linear slider a linear encoder can be used for the External Encoder signal When entering dual loop control SilverMax sets the current Target to the Current position External Position to prevent a sudden motion SilverMax must be in Closed Loop Mode for this command to take effect By default SilverMax starts up in Single Loop Control mode The Dual Loop Control command can be placed within a User Program to place the motor properly into Dual Loop Control Use of a single loop move prior to entering dual loop move may be used to verify that the external encoder is connected and operational The External Encoder settings should be initialized prior to using this command or unpredictable results may occur Use the Select External Encoder command to set up the external encoder usage NOTE The Control Constants typically need to be configured differently for single loop operation than for dual loop operation The Velocity and Acceleration parameters for motions become rel
163. is sent while the motor is active a NAK Busy response is returned Program Type Commands can also be downloaded to the Program Buffer without being executed Once a Program has been assembled it can either be executed immediately or it can be written to the Non Volatile Memory Programs can also be loaded from the Non Volatile Memory and executed In fact the SilverMax factory initialization is a Program which starts at location 0 in the Non Volatile Memory and is automatically executed at the application of power GlverMax Command Reference Page 13 Command Classifications The SilverMax command set has been broken into the following classifications Each class of command has a set of rules that define how or when a command can be used NOTE executed for this section means to Send a command real time from a Host controller to SilverMax using the serial communications interface Class A Commands These are serial communications interface only They may not be contained within a Program and their execution does not incidentally affect the Program Buffer contents They may be executed at any time Class B Commands These are serial communications interface only They may not be contained within a Program but their execution affects the Program Buffer They may be executed only while the motor is idle No Motion or Program is running Multi Tasking allows these commands to be executed at any time providing the c
164. isters 10 to 40 can be used for any purpose as they are designed for both Read and Write operations See Data Register Commands for more information Calculations affect the conditions of the Internal Status Word Depending on the result of an operation one of three different conditions will occur See Internal Status Word in the SilverMax User Manual for more details NOTE This command has 2 command numbers 215 uses separate words for Operation and Data Register 165 uses 1 single word for both Upper Byte holds Operation and lower Byte holds Data Register GlverMax Command Reference Page 121 Program Flow Commands Calculation Code Table CODE OPERATION DESCRIPTION 0 Clear Clears out the indicated register 1 Add Adds the selected register to register 10 with the result remaining in register 10 2 Subtract Subtracts the selected register from register 10 with the result remaining in register 10 3 Copy Copies the selected register to register 10 4 Increment Increments the selected register 5 Decrement Decrements the selected register 6 Absolute Value Takes the absolute value of the selected register saves it back into selected register 7 Subtract Target Subtracts the selected register from both the Target and Position registers This allows Position for doing modulo calculations 8 Save Copies Register 10 to the selected Register
165. it 9 Holding error Bit 1 Zero Calculation result X Bit 8 Moving error Bit 0 Index sensor found Condition Enable Word Place a 1 in bit that is to be used i io o el7 e s 43 2 7 o Bit Values For reference 8 4 2 1 la 4 2 7i1e 4 2 7ia 4 2 2 BinaryWord fo fo fo jo of o js fats ojo tfofojolo Nibbles 2 A o Hexadecimal Word 0390 Hexadecimal 0x0390 912 in decimal Over Temperature is enabled Condition State Word Place a 1 in bit that is to be used a ea We ea e ea Bit Values For reference 8 4 2 1 le 4 2 7i 8 4 2 rie 4 2 7 BinaryWord tof ofo jo ofol sito fofojatolo o o Nibbles o O o Hexadecimal Word 0310 Hexadecimal 0x0310 784 in decimal SlverMax Command Reference Page 58 Initialization Commands KILL MOTOR RECOVERY KMR Description The Kill Motor Recovery sets up options for recovery from a motor shut down The Kill Motor Conditions establishes conditions that will cause the motor to shut down Using the Kill Motor Recovery the motor can perform a standard or user defined process for re initializing the motor User Programs can be executed that have been previously stored in the motor non volatile memory See Kill Motor Conditions for more detail Three Options available 0 This default state indicates that no recovery program has been designated The SilverMax drops out of any motion or program that is currently executi
166. ization Commands ANTI HUNT MODE AHM See Also ANTI HUNT CONSTANTS AHC ANTI HUNT DELAY AHD Description The default mode of Anti Hunt automatically switches from open loop to closed loop as soon as a motion begins and then remains in closed loop for Anti Hunt Delay time counts after the position error is less than the closed to open parameter Anti Hunt mode with Mode 1 bypasses the in motion check allowing the motor to remain in open loop even while moving as long as the error is sufficiently low A value of Mode 0 switches the Anti Hunt function back to its default mode of operation Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program Anti Hunt Class D 0 only when Mode AHM stopped Default 2 Words 1 moving or stopped QuickControl Example Example Allow Anti Hunt Made only while stopped 16 219 0 CR 5 Cancel SilverMax Response nti Hunt Mode enabled j only when stopped Description 2 default _Desciption ACK only C when moving or stopped Response Example 40 CR GlverMax Command Reference Page 34 Initialization Commands BAUD RATE BRT Description If a Baud Rate different than the default rate is required such as with a PLC limited to 9600 baud the Baud Rate command can be used to change the baud rate to a range of other values The baud rate is limited to a maximum value of 230400
167. l Motor Recovery Phase Advance constants SOFT STOP LIMITS TORQUE LIMITS TORQUE RAMP UP Page 217 Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program Program E Series E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series Rev 322 E Series Rev 322 E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series Rev 321 E Series E Series E Series E Series E Series E Series E Series E Series E Series Rev 321 E Series E Series Mode Commands Go Closed Loop Go Open Loop Scaled Step amp Direction Change Velocity Slew Acceleration Velocity Motion amp Profile Move Commands GCL 142 GO CLOSED LOOP GOP 143 GO OPEN LOOP PIM 216 POSITION INPUT MODE ACTUALLY TARGET INPUT RSD 223 REGISTERED STEP amp DIRECTION SSD 180 SCALED STEP AND DIRECTION TIM 218 TORQUE INPUT MODE VIM 217 VELOCITY INPUT MODE VMI 15 VELOCITY MODE IMMEDIATE MODE VMP 159 VELOCITY MODE PROGRAM MODE HSM 229 HARD STOP MOVE IMQ 253 INTERPOLATED MOVE QUEUE CLEAR IMS 254 INTERPOLATED MOVE START IMW 25 INTERPOLATED MOVE WRITE TO QUEUE MAT 176 MOVE ABSOLUTE TIME BASED MAV 134 MOVE ABSOLUTE VELOCITY BASED MRT 177 MOVE RELATIVE TIM
168. l is on SilverMax Response al ete d 1 0 6 ACK only iag Edge 1 0 2 Response Example aes AB Quadrature on Step and Direction on 10 CR TVotdand tS 1 0 Hd and 5 c Step Up Step Down g Step and Direction on onl O 4 and 5 1 0 2 and 3 SlverMax Command Reference Page 69 Initialization Commands SERIAL INTERFACE SIF Description Allows the user to select between RS 232 and RS 485 serial communications hardware interface RS 485 is default This command is usually used at power up as part of the initialization program Care should be taken when using this command as communications may be lost if the Host Controller is not compatible with the new hardware setting At power up and before the Initialization Program is executed the SilverMax Serial Interface is set to RS 485 A controller using an RS 232 interface will be able to send commands to the motor but will not be able to receive a response RS 232 can transmit to RS 485 but cannot receive from RS 485 The Serial Interface can be set to the proper setting using this command no matter which is used by the Host Controller See SilverMax User Manual for more information on using RS 232 or RS 485 on SilverMax Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Serial Program 186 lt Selection gt 0 RS232 Interface Class D OxBA 1 RS485 Default SIF 2 Words Example QuickControl
169. llaneous I O conditions This word may need to be read if more information on the motor status is required For example The upper I O lines 4 to 7 may need to be read by a Host This word is dynamic and may change every servo cycle 120 usec Command Info Command Command Command Command Parameter Name Type Code Hex Parameters Range Hex Read I O Immediate 21 NONE NONE States RIO Class A 0x15 Example QuickControl Example Read back the I O State Word Immediate Host Mode Command Only 16 21 CR SilverMax Response I O State Code 2 Bytes Response Example Indicates lines 4 5 6 amp 7 are High and lines 1 2 amp 3 are also High 10 0015 FOFO CR Table Showing the Bit definitions for the I O State Word IOS Nibbles Bit IOS bit 15 8 Nibbles Bit IOS bit 0 7 definitions definitions Bit15 1 0 7 Bit 7 Over Temperature 0 True F Bit14 I O 6 F Bit 6 1 0 3 Bit 13 I O 5 Bit 5 I O 2 Bit 12 I O 4 Bit 4 O 1 Bit11 reserved Bit 3 Trajectory Generator Active 0 Bit10 Delay Counter Active 0 Bit 2 External Index Bit 9 Holding Error Bit 1 Internal Index Bit 8 Moving Error Bit 0 INDEX Multiplexed GlverMax Command Reference Page 20 Status Commands Read Internal Status Word RIS Description The Internal Status Word is used i
170. log 3 4 Analog 4 5 Analog 1 and Analog 2 6 Analog 3 and Analog 4 7 V non calibrated 8 Temperature ADC counts lt Data Register gt 10 to 40 GlverMax Command Reference Page 148 I O Commands ANALOG CONTINUOUS READ ACR Example Configure Analog input 4 to do a continuous read to Data Register 26 16 207 4 26 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference QuickControl Example Edit ACR Analog Continuous Read x Continuously read analog input into selected register NOTE Only the last ACR is active x at any given time ER Channel Analog Channel 4 x Description Register Page 149 I O Commands ANALOG READ INPUT ARI Description The Analog Read Input does a single read of a selected Analog Channel into a User Data Register A reading is taken only once and transferred into the selected Data Register A number of Analog channels are available as above with the continuous read and include an extra channel 9 for reading in a scaling factor for the Input Voltage There are four analog inputs that can be used to input data into the SilverMax Analog inputs are designed to accept 0 to 5 Volts For inputs that require 5 volt or 10 volt operation external offsetting and scaling is required The internal Analog to Digital Converter ADC is a 10 bit version which yields approximately 0 005 volts per ADC
171. ls or enter a new one Heko Description ACK only Response Example Select conditions for Program Call Conditions 10 CR GlverMax Command Reference Page 137 Program Flow Commands PROGRAM CALL ON INPUT PCI Description The Program Call on Input command works the same as the Jump on Input command except the next command location is stored for a program return This works similar to a GOSUB in the programming language BASIC When this command is executed the Program Buffer location of the next command is stored in an internal register When a Program Return command is executed the program will Jump back to the location that was stored Only one Program Call on Input can be executed at one time no nested routines If a second Program Call on Input is executed before a Program Return the program will error Stop execution and Bit 12 in the Polling Status Word will be set See the Jump on Input command above for details on using this command Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Program Call Program 201 lt Program Buffer 0 to 199 On Input Class D OxC9 Location gt PCI O Bi 1 TO 4 Words I O Bit Enable gt 1 TO 14 Example QuickControl Example Call Program Buffer location 50 if digital input 2 is High 1 16 201 50 2 1 CR ce Select from existing labels or enter a new one SilverMax Response exo Description ACK o
172. lso be used by the Calculation command as data variables for more complex calculations such as shortest paths for rotary motions The Input Modes use data registers for Offset and Scaling factors The first 10 data registers are dedicated read only The next 15 registers are optionally dedicated or user defined they are Read Write registers The last 16 registers are for User Defined Data usage they are also Read Write registers The data registers are detailed below Dedicated Data Registers Typically Read Only These registers are dedicated to the functions listed They are updated internally every servo cycle 120 microseconds and are available for reading by a Host controller using the Read Register command Exceptions to the Read Only status are Data Registers 0 and 1 Target amp Position and Data Registers 2 and 4 Last Index Position amp Last Input Position By using the Calculation command the contents of Data Register 0 and 1 can be modified Data Register 2 and 4 can be directly modified using the Write Register commands Reg Type Description R W Current Target value Requested Position R W_ Current Position Actual Position R W_ Last Index Position Position of last detected index pulse R Internal Status Word upper word Current Process State lower word R W_ Last Input Position Position when last input was found R W_ Delay counter value Ticks left on the DELAY counter Max Error value upper
173. lt NV Memory Factory Default ACK only Sets the Analog Channel ANALOG OxD3 Address gt Calibration Calibration Factor and INPUT 65524 OxFFF4 the Maximum over FROM NV 2 Words voltage shutdown CAD voltage The appropriate Class D data is stored as a long word into location 65524 as a Factory Calibration GlverMax Command Reference Page 186 Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Parameters Range Response Hex Hex CONTROL 148 lt Velocity 1 0 to 32767 ACK only Sets the Servo Control CONSTANTS 0x94 Feedback Gain gt 0 to Ox7FFF Constants CTC lt Velocity 2 0 to 32767 Using Factory defaults Class D 8 Words Feedback Gain gt 0 to Ox7FFF will nominally work with spare from Factory Feedfoward Gain gt 0 to 0x7FFF 1 1 to 1 5 with a low Defaults compliance coupling motor type See SilverMax Servo lt Acceleration 0 to 32767 Tuning in the Feedfoward Gain gt 0 to 0x7FFF SilverMax User lt Proportional Gain gt 0 to 32767 Manual for more 0 to Ox7FFF information lt Integrator Gain gt 0 to 32767 0 to Ox7FFF DISABLE 171 NONE NONE ACK only Clears Done usage of DONE BIT OxAB T O Line 1 DDB Class D 1 Word THIS IS DEFAULT DIRECTION 184 lt Selection gt 0 Normal CW ACK only This command allows DIR OxB8 1 Reverse selection of the motor Class D direction at power up Factory 2 Words Direction is set as it
174. mand ParameterRange Command Command Parameters Hex Name Type Set Output Program 205 lt I O Line gt 1to7 Bit Class D OxCD SOB 2 Words Example QuickControl Example SilverMax Response eee state Select which output to set Tepe i FF Cancel C Output 5 Description C Output 2 C Output 6 16 205 1 CR Peay C Output 3 C Output 7 Response Example C Output 4 10 CR SlverMax Command Reference Page 160 Data Register Commands Data Register Commands A number of 32 bit Data Registers have been allocated for special purposes Data Registers are used as data storage locations that may be used and modified by a Host controller or by SilverMax internal functions They provide data storage for the distance and position parameters for Register motion profile commands They can also be used by the Calculation command as data variables for more complex calculations such as shortest paths for rotary motions The Input Modes use data registers for Offset and Scaling factors GlverMax Command Reference Page 161 Data Register Commands Data Register Commands A number of 32 bit Data Registers have been allocated for special purposes Data Registers are used as data storage locations that may be used and modified by a Host controller or by SilverMax internal functions They provide data storage for the distance and position parameters for Register motion profile commands They can a
175. mber always determines the direction that the motor will spin This is not true for the Absolute Position commands which will move the motor in the required direction to go to the requested Position The Distance units are in Encoder Counts For a SilverMax with an encoder that provides 4000 counts per revolution one revolution of the motor is 4000 counts To scale a move to revolutions multiply the revolutions value by 4000 Time based moves will attempt to make the desired move within the times given The Acceleration and Velocity are calculated to accommodate the time requirements If the Acceleration or Velocity values needed to make the move exceed the maximum permissible limit the move will not be executed and an error code will be set in the Polling Status Word The Polling Status Word bit 14 Foreground Command Error will be set Foreground command errors are generated when a command cannot be executed due to parameters that are out of range The Total Time is a time value in ticks Ticks are based on the time of a servo cycle which defines each tick as 120 microseconds long The Acceleration Time is also represented by ticks This time value defines the time needed to accelerate up to the calculated velocity The Total Time and Distance must be consistent with the maximum velocity constraints of the motor 4000 RPM to prevent the generation of an error Acceleration Time can be no greater than 1 2 the Total Time value and not greater than
176. memory and jumps to it Class D 2 Words PROGRAM 201 lt Program 0 to 199 Works the same as the CALL PCL OxC9 Buffer SilverMax Jump in Class D Location gt Program command 4 Words lt Condition 0 to 32767 except the next program Enable gt 0 to Ox7FFF line is stored for a Return This works the lt Condition 0 to 32767 similar to a GOSUB in State gt 0 to 0x7FFF Basic the programming language PROGRAM 201 lt Program 0 to 199 Works the same as the CALL ON INPUT OxC9 Buffer PROGRAM CALL PCD Location gt using the digital inputs Class D 4 Words lt I O Enable gt 1 to 14 lt I O State gt Oor 1 PROGRAM 202 lt Condition 0 to 32767 Returns program RETURN PRT OxCA Enable gt 0 to OXFFFF execution to the place Class E where a Program Call 3 Words lt Condition 0 to 32767 command was executed State gt 0 to OXFFFF SlverMax Command Reference Page 205 PROGRAM RETURN ON INPUT PRI Class E Command Summary Tables Command Command Parameter Code Parameters Range Hex Hex 202 lt I O Enable gt OxCA 3 Words lt I O State gt SilverMax Description Response Works the same as the PROGRAM RETURN using the digital inputs Run Program RUN Class C NONE ACK only Runs the loaded program Only valid if motor is not running and a program is loaded Start Download SDL Class B ACK only Normal use has no d
177. mmand Command Command Parameter Range Name Type Code Hex Parameters Hex Control Program lt Velocity 1 0 to 32767 Constants Class D Feedback Gain gt 0 to OxX7FFF rene lt Velocity 2 0 to 32767 8 Words Feedback Gain gt 0 to OxX7FFF lt Velocity 0 to 32767 Feedfoward Gain gt 0 to Ox7FFF lt Acceleration 0 to 32767 Feedback Gain gt 0 to Ox7FFF lt Acceleration 0 to 32767 Feedfoward Gain gt 0 to Ox7FFF lt Proportional 0 to 32767 Gain gt 0 to Ox7FFF lt Integrator Gain gt 0 to 32767 0 to Ox7FFF Example QuickControl Example 16 148 0 10 10 10 10 200 1000 CR p Control Constants Carcel SilverMax Response Kk Em Era Description Kv fo ACK only Kv2 fio Test Kvff fia ites Response Example Ka fio mis Kaff Boo ivermM ax 10 CR Ki i000 GlverMax Command Reference Page 37 Initialization Commands ENABLE DONE LOW EDL Description Disables the Done bit I O 1 on the motor The Done bit indicates when the motor is running or idle See Enable Done Bit for more details Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program Disable Class D Done Bit DDB 1 Word Example QuickControl Example Disable usage of the Done bit 16 171 CR SilverMax Response Command Name INIT DDB Disable Done Bit ACK only Description Test Response Example 10 CR Slv
178. mmand Command Name Type Register Program Data Register Commands Command Command Parameter Range Code Parameters Hex Hex 196 lt Number of 1 to 10 OxC4 Registers gt Store Class D Multiple RSM lt Starting Data 0 to 40 amp 200 to 211 Words pegee lt NV Memory 0 to 3839 Address gt 0 to OxOEFF Example QuickControl Example Store 5 data registers starting at 20 to NV memory starting at address 2500 16 196 5 20 2500 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Select the Register Cancel User Profile Move Pos 20 7 a Description Nonolatile Memory Location ef Number of Registers Page 170 Data Register Commands REGISTER STORE NON VOLATILE RSN Description Stores data from a Data Register to the selected Non Volatile Memory address A Checksum value is calculated from the data and stored with the data The storing process is the same as used by the Register Store Multiple with only one register being stored The data selected may be loaded using the Register Load Non Volatile or the Register Load Multiple using 1 for the Number of Registers This command writes 2 Words of data for the Data Register a Word for the Length Checksum and a Word for a 0 placed between the Length Checksum and the data array Storing one Data Register takes up 4 Words of NV Memory See command Register St
179. n Loop 0 to 32767 Holding gt 0 to Ox7FFF lt Open Loop 0 to 32767 Moving gt 0 to Ox7FFF GlverMax Command Reference Page 73 Initialization Commands Torque parameter range changes depending on motor type Use the following table to determine the range for your SilverMax SilverMax P N 100 Torque Max Torque Any 17 or 23 20000 34N 1 20000 34H 1 16383 34H 2 16383 34H 3 14745 34H 4 10619 34HC 2 20000 Example Set torque to Closed Loop Holding 75 Closed Loop Moving 100 Closed Loop Holding 50 Closed Loop Moving Max 16 149 15000 20000 10000 30000 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 74 30000 30000 24575 24575 14745 22117 30000 QuickControl Example Edit TQL Torque Limits x OK Cancel Maximum cme Closed Loop Holding 75 on Description P Closed Loop Moving 100 J m Open Loop Holding feo Li Anti Hunt Torque Units A Normal Open Loop Moving max Vv C Native Initialization Commands TORQUE RAMP UP TRU Description Ramps up the torque limit values by the increment given up to the final value This is used mainly during motor initialization Only Ramps up Open Loop Torque Limits This command slowly brings up the Open Loop motor current to avoid a harsh or sudden movement during motor power up This is done just prior to the algorithmic alignment of the motor rotor to the encoder
180. n SilverMax to keep track of different conditions that are present in the motor This word may need to be read if more information on the motor status is required For example Over and Under Voltage conditions can be checked when for some reason the motor shuts down during operation This gives the system greater knowledge about the reasons for a shut down The Internal Status Word can be cleared using the Clear Internal Status command Command Info Command Name Command Type Command Command Parameter Code Hex Parameters Range Hex Read Internal Immediate 20 NONE NONE Status Word RIS Class A 0x14 Example QuickControl Example Read back the Internal Status Immediate Host Mode Command Only Word 16 20 CR SilverMax Response State Code 2 Bytes Response Example Indicates Input 1 2 3 High Last Calculation was Zero and Index Sensor was found 10 0014 00F3 CR Table Showing the Bit definitions for the Internal Status Word ISW Nibbles Latched Bit ISW bit 15 8 Nibbles Bit Latched ISW bit 0 7 definitions definitions 0 Bit15 reserved Bit 7 Yes Over temperature PF O True Yes Bit14 Low voltage Bit 6 No 1 0 3 Yes Bit13 Over voltage Bit 5 No 1 O 2 No Bit12 Wait Delay exhausted Bit 4 No V O 1 0 Yes Bit11 Input found on last Bit 3 Yes Negative Calculation result move
181. n limits for LIMITS OxDD 10 to 39 End of Travel control SSL First of two Two Data Registers are Class D 2 Words used to store the end limits Data must be stored in Registers using a Write Register TORQUE 149 lt Closed Loop 0 to 32767 ACK only Sets the open loop and LIMITS 0x95 Holding gt 0 to Ox7FFF closed loop motor torque TQL limits For most motors Class D 5 Words A value of 20000 counts 100 torque 30000 Factory lt Open Loop 0 to 32767 counts 150 torque Defaults Holding gt 0 to Ox7FFF 150 torque can only be depend on lt Open Loop 0 to 32767 used for short bursts motor type Moving gt 0 to Ox7FFF See the SilverMax motor specification for the pew _ _ ff __ 5 00 tie value TORQUE 222 ACK only Ramps up the torque RAMP UP OxDE limit values by the TRU lt increment gt 1to32767 increment given up to Class D 3 Words the final value This is used mainly during motor initialization Only Ramps up Open Loop Torque Limits SilverMax Command Reference Page 193 Command Summary Tables Parameter Range Command Code Command Name NONE NONE ACK only i GO CLOSED LOOP GCL Class D GO OPEN LOOP GOP ClassD fe R POSITION INPUT MODE PIM Class D Actually Target input REGISTERE D STEP amp DIRECTION RSD Class D SCALED STEP amp DIRECTION SSD Class
182. n ly Select conditions for Program Call On Input Conditions Response Example 10 CR SlverMax Command Reference Page 138 Program Flow Commands PROGRAM RETURN PRT Description The Program Return command is used as a complement to the Program Call command When a Program Call has been executed the buffer location of the next program command is stored in an internal register When a Program Return is executed a jump will occur to the stored program location If a Program Return is executed without a previous program called the program will error Stop execution and set Bit 12 in the Polling Status Word Program Return can be set up to conditionally execute using the Internal Status Word This works identical to the Program Call and Jump commands Placing a 0 in both parameters will cause an unconditional return Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Program Program 202 lt Condition 0 to 65535 Return Class D OxCA Enable gt 0 to OxFFFF PRT lt Condition 0 to 65535 Example QuickControl Example a nee is High Select which conditions to retum on Select nothing for an Press the buttons to OK unconditional return change state or here for more help Cancel 16 202 16 16 CR Index Found Disable Moving Error From Error Limit Disable SilverMax Response Last Calculation Was Zero Disable Holding Error From Error Limit Disable
183. ncoder 16 170 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Parameters Command Code Hex Parameter Range Hex 170 OxAA NONE NONE 1 Word QuickControl Example Edit Command Ed Command Name I0 EEM Enable Encoder Monitor Description Cancel Page 155 MODULO CLEAR MDC Description I O Commands The Modulo Clear takes SilverMax out of modulo output mode and frees up Digital I O bits 6 amp 7 for normal usage Command Info Command Command Name Type Modulo Clear Program MDC Class D Example Turn off modulo output 16 190 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Command Command Parameter Range Code Hex Parameters Hex 190 OxBE 1 Words QuickControl Example Edit Command x Command Name I0 MDC Modulo Clear Description Test Cancel Page 156 I O Commands MODULO SET MDS Description The Modulo Set command is used to enable select the source divisor and format of the Modulo Outputs These outputs make use Digital I O bits 6 amp 7 See I O Configuration Chart and require that these bits to be configured as Inputs before issuing this command Either the Internal or an External encoder may be selected as the source for modulo output This allows the modulo counter to be used with external sou
184. ndition 0 to 65535 State gt 0 to OxFFFF Continued on next page GlverMax Command Reference Page 57 Initialization Commands KILL MOTOR CONDITIONS KMC Example QuickControl Example Shut down motor for a Moving or Edit KMC Kill Motor Conditions Holding Error Over Tem peratu re Select which conditions will Kill the motor Press the buttons to OK or Input 1 HIGH change state or here for more help _ Cancel 1 6 1 67 91 2 784 CR Index Found Disable Moving Error From Error Limit TRUE t Last Calculation Was Zero Disable Holding Error From Error Limit TRUE SilverMax Response Dimi _ Lomwe Last Calculation Was Positive Disable Halt Command Was Sent Disable ACK on ly Last Calculation Was Negative Disable Input Found On Last Move Disable 140 1 HIGH Wait Delay Count Exhausted Disable Response Exam ple 0 2 Disable Over Yolage Disable 40 CR 170 3 Disable Low Voltage Disable Over Temperature i Table Showing the Bit definitions for the Internal Status Word ISW Bit ISW bit 15 8 definitions Bit ISW bit 0 7 definitions Bit 15 Reserved X Bit 7 Over temperature O True Bit 14 Low voltage Bit 6 1 0 3 Bit 13 Over voltage Bit 5 VO 2 Bit 12 Wait Delay exhausted X Bit 4 V O 1 Bit 11 Input found on last move Bit 3 Negative Calculation result Bit 10 Halt command was sent Bit 2 Positive Calculation result X B
185. ng and goes into an idle state The drivers are disabled At this point SilverMax will sit with no current to the motor waiting for host intervention using the Serial Interface 1 Normal operation 1 is a special parameter value indicating to run the default power up initialization from location 0 HHHH Normal operation The routine located at is loaded and executed See Kill Motor Mask for actions taken before the loading of the Kill Motor Recovery routine Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program lt process gt 0 Do Nothing Kill Motor Class D 1 Jump to NV Recovery Memory address 0 KMR 2 Words 1 to 3839 NV Memory address Example QuickControl Example After motor shut down Jump to Edit KMR Kill Motor Recovery x Program at 150 OK 16 181 150 CR p Select Program To Load and Run ema SilverMax Response g Select From List of Programs _Descipion ESTOP Recovery C Enter Absolute Address ACK only Response Example 10 CR SlverMax Command Reference Page 59 Initialization Commands abiak PLR Description Used in conjunction with the Power Low Recovery command this command sets the input voltage that will trigger a Low Voltage status Bit 14 in the Internal Status Word When a Low Voltage Trip occurs the low voltage trip value is overwritten to zero to
186. nge of state Command Info Command Command Parameter Range Command Name Command Type Code Hex Parameters Hex Position Compare Program lt Starting User 0 Disable Usage PCP Class D Data Register gt 10 to 40 2 Words Example QuickControl Example Enable he tior Compar usha Data Register 28 for the Position compare value and 29 for the ok Modulo value Register Cancel 16 245 28 CR Description SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Page 159 I O Commands SET OUTPUT BIT SOB Description Sets the selected Digital I O bit to a logic High 1 condition Output 5 volts If the I O was configured as an input this will reconfigure the bit as an output and set it to logic High 1 SilverMax I O are TTL compatible input and output The outputs can source 5 milliamps and sink 8 milliamps When using digital I O in a system where they may be connected to other controllers or PLCs it is recommended that Optical isolators be used I O connected directly to switches or sensors may not require isolation Outputs that are in use for a Modulo output View encoder or a Done bit may not simultaneously be employed as bit I O Attempting to will generate a Sequence Error and shut down the program See Using SilverMax I O in the SilverMax User Manual for more information on I O usage and conflicts Command Info Command Com
187. nneenneenneennesrnesrnesrnnsrnnnrrnnrnnsrnnsrnnsrnnsrnnnrrnnrnnnnne 80 SCALED STEP amp DIRECTION SSD nsesseesneennenneennsennnsnrnnrnnnrnnnrnnnnrrnnrnnnrnnnnnnnrnnnrnnnrrnnrnnnrrnne 81 TORQUE INPUT MODE MM iirin i E ANT Ee 83 VELOCITY INPUT MODE VIM iremen ii e 84 INPUT MODE USAGE IMU 0 cccccceeccceee cee ee ete iir i kie i eeh 85 VELOCITY MODE IMMEDIATE TYPE VMI 0 csccccccccesce tenes ce enee cece eet ne seta ae seenee sense eeeaaeseeneetegs 87 VELOCITY MODE PROGRAM TYPE VMP 0 csccctccceesse tenes ete ee seen ee tens ee ea ae seenee snes eeenaeeneneetegs 88 MOTION amp RROFIEE MOVE COMMANDS iiias nenat eenean aeaa cites uceaceavacidecedan dices eaea eaaa eaii 89 MO TION amp PROFILE MOVE COMMANDS 2i ccceiesccestacseceutat az eanadclocts a aaa aaa tia aaa aaa ea aaa 90 HARD STOP MOVE HSM ssec ccecossteoseseescecevsassstsssveccsenies stessavsczerenesaetesnsbsg2veebesstasensseceyearesttescaaed 91 INTERPOLATED MOVE START IMS 0 cccccteesccceseceeee tenes tenes ceenee cae eeea nae seeneeseaeeeeaaesneeeeeaets 92 INTERPOLATED MOVE QUEUE CLEAR IMQ cccccccssccssetscrsecssetscniecescetectesesseecnsseseenesnieenees 94 INTERPOLATED MOVE WRITE QUEUE IMW ccccccecessteneeceenee cone ee tans seeneeseeeeeseaeetenaeeeeeees 95 MOVE ABSOLUTE TIME BASED MAT 00 0 0 cccccescesse tees ete eeceenee cee ee tans stenaeseeeesenaeeseneeseaes 97 MOVE ABSOLUTE VELOCITY BASED MAV ccccccecese t
188. nse Example 10 CR SlverMax Command Reference Page 68 Initialization Commands SELECT EXTERNAL ENCODER SEE DIRECTION SSD Description Selects the desired input format for an external encoder or step direction input External encoders can be used by the Step and Direction commands as well as the Dual Loop mode If an external encoder is not being used the inputs are ignored The count since cleared or powered up is available in the register 200 External Encoder A sensing of the designated index source causes the external encoder counter contents to be copied to register 201 external encoder index SEE does not tri state the selected inputs If an I O is already set LOW or HIGH it will remain that way after the SEE command Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program lt Index State gt 0 Falling Default Select Class D 1 Rising External lt Index 0 WV O 6 Default V 0 6 Default lt Encoder 0 A BQuad Style gt 1 Step Up Dn 2 Step amp Dir 3 Use I O 2 amp 3 Default Example QuickControl Example Set up the External encoder inputs for Falling edge Index on input 6 and Step amp Dir on 2 amp 3 d ok f Index Source Cancel Index Stae 1 6192003 CR Select how the Select which 1 0 Description Encoder s Index is channel the Encoder s A tri d
189. nts of the selected register the range of the data is not verified at transfer so undesired results may be obtained if out of range parameters are assembled into the command buffer including Sequence Error shutdowns This command does allow for great flexibility by allowing any of the parameters to be made register based Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Write Cmd Program 138 lt Register gt 0 to 0x28 Long Word Class D OX8A 0 to 40 200 to 211 0xC8 to 0xD3 WCL 3 Words lt CMD Buffer 0 to 199 Location gt 0x0 to O0xC7 Example QuickControl Example Overwrites the Command Buffer Edit WCL Write Command Buffer Longword x contents at locations 122 and 123 with the contents of Register 10 Ok 16 138 10 122 CR os Cancel Accumulator 10 ann Command to Write Toa ACK only SilverMax Response Label Res ponse Exam ple Command RRV Register Move Relative Velocity Based 10 CR Parameter GlverMax Command Reference Page 174 Data Register Commands WRITE CMD WORD WCW Description This command allows program space starting at the selected command buffer location to be overwritten with the lower word 16 bit data in the selected register This allows for self modification of the command parameters within the command buffer to all any of the command parameters to be dynamically modif
190. o forces an unconditional jump to the specified Program Buffer location The condition TRUE evaluation is done by NAND ing the enabled inputs together If all the enabled inputs are TRUE a jump will NOT occur This means that a jump will always occur when any of the conditions are FALSE Table Showing the Bit definitions for the I O State Word IOS Bit IOS bit 15 8 definitions Bit IOS bit 7 0 definitions Bit15 1 0 7 Bit 7 Over Temperature 0 True Bit14 1 0 6 Bit 6 1 0 3 Bit13 1 0 5 Bit 5 VO 2 Bit12 1 0 4 Bit 4 1 O 1 Bit11 reserved Bit 3 Trajectory Generator Active Bit10 Delay Counter Active Bit 2 External Index Bit 9 Holding Error Bit 1 Internal Index Bit 8 Moving Error Bit 0 INDEX Multiplexed Command Info Command Command Parameter Command Name Command Type Code Hex Parameters Range Hex Jump On Inputs Program 238 lt IOS Condition O to 65535 And Ed Class E OxEE Enable gt JNA lt IOS Condition 0 to 65535 lt Program Buffer 0 to 199 Location gt Example QuickControl Example Bott jump to rogram Buter Ae ii lt 1 6 238 61 440 61 440 1 0 CR Select from existing labels or enter a new one ma UA Description Select conditions for Jump On NAND 1 0 State SilverMax Response ACK only Conditions Response Example 10 CR GlverMax Command Reference Page 128 Program Flow Commands J
191. o 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Initiates an absolute position move using acceleration time amp total move time as parameters Time Values are in ticks A tick is equal to 120usec MOVE ABSOLUTE VELOCITY BASED MAV Class D 134 lt lt Position gt gt 0x86 9 Words 2 147 483 648 to 2 147 483 647 0 to OxFFFFFFFF ACK only lt lt Acceleration gt gt 1 to 1 073 741 823 1 to Ox3FFFFFFF lt lt Velocity gt gt 0 to 2 147 483 647 0 to Ox7FFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt SlverMax Command Reference 0 to 65535 0 to OxFFFF Page 197 Initiates an absolute position move using Acceleration amp Velocity parameters Command Name MOVE RELATIVE TIME BASED MRT Class D Command Command Code Parameters Hex 177 lt lt Position gt gt 0xB1 9 Words Command Summary Tables SilverMax Description Response Parameter Range Hex 2 147 483 648 to 2 147 483 647 0 to OxFFFFFFFF lt lt Acceleration Time gt gt 0 to 65534 0 to OxFFFE lt lt Total Time gt gt 2 to 2 147 483 647 0x02 to 0Ox7FFFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxXFFFF Initiates a relative distance move using acceleration time
192. ogram Buffer 0 to 199 Location gt Example QuickControl Example Jump to Program Buffer location 0 if input 1 or 2 or 3 is High 1 16 162 112 112 0 CR ae Select from existing labels or enter a new one __ Cancel i nace SilverMax Response a escription ACK only Select conditions for Jump On OR 1 0 State Response Example 10 CR GlverMax Command Reference Page 129 Program Flow Commands JUMP JMP Description The Jump command allows looping and other conditional branching inside a program based on the condition of the Internal Status Word The Condition Enable word selects which bits in the Internal Status Word will be evaluated A 1 in the bit position enables looking at that bit The Condition State word allows the user to specify the state High 1 or Low 0 of the selected bits that will cause the jump to occur Setting the Condition Enable word to zero forces an unconditional jump to the specified Program Buffer location A match on any of the selected bits caused the jump to occur The conditions available in the Internal Status Word are as follows Internal Status Word Bit 0 Index Found Bit 1 Last Calculation was zero Bit 2 Last Calculation was Positive Bit 3 Last Calculation was Negative Bit 4 Input 1 Bit 5 Input 2 Bit 6 Input 3 Bit 7 Over temperature if bit is low Bit 8 Motion Error From Error Limit Bit 9 Position Error From Error Limi
193. ommand Reference Hex Misc Commands NONE NONE ACK only lt Condition 0 to 65535 State gt 0 to OXFFFF NONE NONE ACK only NONE NONE ACK only NONE NONE ACK only lt Condition 0 to 65535 ACK only Enable gt 0 to OXFFFF Page 211 Zero out the Maximum Error Data Register value Clear the Internal Status Word of any condition bits that are set NONE NONE ACK only Check the Internal Status Word bits If conditions are met set bit 6 of the Polling Status Word 0 in parameters always sets bit 6 Target register to current motor position Zeros the target location offset the position the amount require to zero target Zero out both the target and the position register Command Number Sor raanuntrwWwNH OS NO N N RRR Re Re eS Ae oon Nn WN 128 134 135 137 138 139 140 141 142 143 144 145 146 147 148 SlverMax Command Reference Command Set Numeric List SILVERMAX COMMAND SET NUMERIC TLA LIST Some commands share the same command number This occurs when a SilverMax command accepts alternate parameters or has multiple uses POL CPL HLT STP RST RVN RPB CLP SDL RUN WRI RRG SPR LPR VMI SSP SSE RIS RIO IMW END MAV MRV WCL WCW DLY WDL GCL GOP ZTG ZTP TTP CME CTC Three Letter Acronym TLA Command Name Immediate Type Commands POLL CLEAR POLL HALT STOP RESTART REVISION READ PROGRAM BUFFER CLEAR PROGRAM START DOW
194. ommands wrap up some of those nice but un are groupable commands Most useful the Zero Target and Position commands that let the system set or clear its current position Page 9 COMMAND STRUCTURE SilverMax commands are setup with a simple structure that combines a command number with a set of parameters Commands may have from 0 to 8 parameters depending on the command itself If a command has a set of parameters the parameters must be sent with the command even if they are not used The following is an example of the ASCII string of a motion command using the QuickSilver 8 Bit ASCII protocol Address aaa Input MRV Enable 16 135 200000 161060 536871000 This string breaks down into a command as follows Parameter Parameter Parameter Parameter Parameter 1 2 3 4 5 135 200000 161060 536871000 0 0 Command Number Commands are organized into Command Numbers and Parameters Each SilverMax command has a defined set of parameters Each parameter is separated by a single space character In some cases commands may not have any parameters Command Numbers e Command numbers range from 0 to 255 e Commands with numbers less than 64 are Host level Immediate Type only commands See Command Types below for more details e Command numbers 64 or greater are commands that can be contained in a program e Commands with numbers 64 or greater will generate a Busy NAK code if sent to t
195. on This command returns the revision date of this code and the buffer sizes The code revision date and buffer sizes of a SilverMax can be read back so that future upgrades can be dealt with through a software interface This enables dynamic changes in SilverMax usage when different versions are used Command Info Command Command Command Command Parameter Name Type Code Parameters Range Hex Hex Revision Immediate 5 NONE NONE RVN Class A 0x05 Example QuickControl Example Read the revision code from Immediate Host Mode Command Only SilverMax 16 5 CR SilverMax Response Revision Code 8 Bytes Response Example SilverMax Revision code 10 0005 1116 1998 0108 0A34 CR The following Revision information is available Data Type Data Format Example Shown above A Month 1 Byte 11 November B Day 1 Byte 146 16 day C Year 2 Bytes 1998 The year 1998 D Options Number 2 Bytes 0108 Code rev 108 E Serial Communications Buffer Size 1 Byte OA 10 Words F Program Buffer Size 1 Byte 34 52 Words GlverMax Command Reference Page 23 Override Commands Override Commands GlverMax Command Reference Page 24 Override Commands Halt HLT Description This command immediately shuts down any motion in progress hard stop disables the single step mode and then causes the motor to load and run the Kill Recovery s
196. onditions are appropriate For example the Start Download command should not be executed when a Program is running or when already in Download mode Class C Commands These are serial communications interface only They may not be contained within a Program but their execution affects the Program Buffer They may be executed only while the motor is idle No Motion or Program is running The Program Buffer must also be loaded prior to execution Multi Tasking Allows these commands to be executed when a Motion is running but not when a Program is running Class D Commands These commands can be executed from the serial communications interface or as part of a Program Their execution from the Host affects the Program Buffer They may only be executed when the motor is idle They are then stored to the buffer when in download Program Download mode All of these commands have a command code of 64 hex 0x40 or higher Multi Tasking Allows these commands can be executed when a Motion is running but not when a Program is running Most commands will execute immediately while the Motion or Profile Move commands will be buffered until the current Motion is complete Class E Commands These commands are executed as part of a Program They may be executed from the serial communications interface but should only be used within a Program or the motor operation may not be what is expected They rely on wha
197. onstants are factory supplied for the selected motor at the requested power supply voltage When writing these parameters to the motor it causes the motor driver to be Enabled This will over ride a disabled driver condition whether it was commanded by a Disable Motor Driver or initiated by a kill Motor Condition The parameters for this command must be obtained from the factory Normally these are set using the Initialize SilverMax tool in the QuickControl software where the desired voltage can be selected from a menu See Initialization in the SilverMax User Manual for more information on SilverMax motor initialization Command Info Command Command Command Command Parameter Range Name Type Code R Hex Hex Control Program lt MC1 gt 0 to 32767 0 to Ox7FFF Constants Class D oTe ee 0 to 32767 0 to TEER Example QuickControl Example Set up a 23 5 for 24 volt operation 16 168 1631 14843 31816 2057 1758 2329 32767 8213 CR Curent Voltage Update z Cancel Motor Voltage Mode SilverMax Response QuickControl will read motor voltage from SilverMax ACK only Response Example Pn Select a motor input voltage 10 CR Edit Native C Native SilverMax Edit Parameters SlverMax Command Reference Page 61 Initialization Commands MAXIMUM TEMPERATURE TRIP MTT Description Sets the temperature at which SilverMax will shut down the motor T
198. or X Bit 1 Zero Calculation result Bit 8 Moving error Bit 0 Index sensor found Table Showing Data going from a Binary word to a Hexadecimal word Place a 1 in bit that is to be used eS ae ES ee SE eS Fee ci reference ee i ee eee aa a Se SE 2 Hexadecimal Word 0002 Hexadecimal 0x0002 2 in decimal The Condition Enable and the Condition States just happen to have the same bits set therefore the number 2 will work for both GlverMax Command Reference Page 131 Program Flow Commands JUMP ON INPUT JOI Description The Jump On Input command allows looping and other conditional branching inside a program based on the condition of an External Digital Input or an Internal Input This command is actually the same number as the Jump command however by using a negative number for the first parameter the usage of the command changes The Jump Enable Code selects which input will be evaluated The Input State allows the user to specify the state High 1 or Low 0 of the selected input that will cause the jump to occur Setting both parameters to zero forces an unconditional jump to the specified Program Buffer location JUMP Enable Input Source Description Code 0 Do an unconditional Jump 1 External T O 1 2 es VO 2 3 6 VO 3 4 e VO 4 5 e T O 5 6 Gi T O 6 7 cc VO 7 8 e Current Index Sensor 9 cc Internal
199. ore Multiple RSM for more details Command Info Command Command Parameter Command Name Command Type Code Hex Parameters Range Hex Register Store Program 0 to 40 amp 200 Non Volatile Class D Register gt to 211 lt NV Memory 0 to 3839 Address gt 0 to OxOEFF Example QuickControl Example Edit RSN Register Store Non olatile RSN 3 Words Store data register 1 to NV memory address 1612 Select the Register Cancel 1 6 198 1 1612 CR Actual Position 1 E Descripti ption SilverMax Res ponse Non Volatile Memory Location pa ACK only Response Example 10 CR GlverMax Command Reference Page 171 Data Register Commands Write Register Immediate Type WRI Description The Write Register command writes the included data into the selected 32 bit Data Register Using the Serial Interface this command can be used at any time even during program execution The Data Register can be used for parameter data by commands such as Register Move Absolute Velocity Based or Calculation This command is very useful for dynamically modifying SilverMax operation using a Host interface For example to move to a machine dependent alignment position the following steps would be used First the output shaft would be positioned to the desired location and the numeric position would be determined by executing a Read Register from Data Register 1 Current Position This value would th
200. ory has completed Once completed Bit 15 in the Polling Status Word is set Bit 14 is set if the command attempts to write beyond the allowed memory space Execution time of this command varies depending on the number of words written It is recommended that the Poll command be used to check Bit 15 of the Polling Status Word for completion Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Store Immediate lt NV Memory O to 3839 Program Class C Address gt 0 to OxOEFF SPR Example QuickControl Example Store the currently loaded program Immediate Host Command Only into NV memory at address 1000 16 13 1000 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 143 Program Flow Commands WAIT ON BIT EDGE WBE Description During program execution the Wait on Bit Edge command causes SilverMax to Wait until an input condition is true This is a very fast input check that is done every servo cycle 120microseconds Placing this command in a program will cause the program to wait on the current line until the input condition is met There is no wait limit therefore this can put SilverMax into an endless wait state The I O bit condition is Edge triggered The input must transition from High to Low for the Falling and Low to High for the Rising condition to be true
201. ounter Bit in the Internal Status Word stays low If the host were to shutdown or lose communications the counter would reach zero causing a Kill Motor operation running a recovery routine if one were enabled A Tick Count equals 120 microseconds in time To convert to seconds multiply the Tick Count by 0 00012 A one second delay rounded off is 8333 Tick Counts Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program 140 lt lt Tick Count gt gt 2 147 483 647 to Class D Ox8C 2 147 483 647 0x8000001 to 3 Words Ox7FFFFFFF Example QuickControl Example Cause SilverMax to delay program Edit DLY Delay x execution by 1 2 seconds OK 16 140 10000 CR oa Cancel SilverMax Response Delay 1200 mSec ae ACK only J col ES I Counter Response Example Only 40 CR GlverMax Command Reference Page 125 Program Flow Commands END PROGRAM END Description SilverMax programs typically end when the last line of the program is completed If the program needs to end based on a Conditional Jump the End Program command can be inserted in the program at the desired point When this command is executed the currently running program will stop executing and the motor will be placed in a Host Mode Programs can also be stopped by issuing any of the Override Commands This command does nothing if sent to the motor when it is in Host Mode
202. profile acceleration can be set from Linear to full S curve All motion profile commands use the current setting This command can be set at any time except for during a motion allowing each motion profile to be tailored for the best shape S Curves are not available in the Step amp Direction Profiled Move Input Mode or the Velocity modes S Curve factor will affect the Acceleration Time in all the Velocity Based and Time Based motion profile commands When using a Full S Curve factor 32767 the Acceleration value will need to be multiplied by two to get the same acceleration time Acceleration in the motion profile command is a maximum value S Curves require a higher maximum acceleration in the middle of the curve than a linear acceleration In time based moves the Acceleration time and motion time will be honored but the peak motor acceleration will be increased as the S Curve factor is increased See SilverMax User Manual for more information on S Curve usage in Motion Profiles Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameter Hex s Program 0 Trapezoidal Class D 1 to 32766 S Shape 32767 Full S 2 Words Default 0 Example QuickControl Example Use some S Curve on next Motion Edit SCF S Curve Factor x Profile Curve Factor hone i i0813 ans nee SilverMax Response Description ACK only 16 195 10813 CR Respo
203. r Range Name Type Code Parameters Hex a GO gt 9 a Program Disable Class D Motor Driver 1 Word DMD QuickControl Example Example i Edit Command x Disable the Motor Driver electronics Command Name 16 228 CR INIT DMD Disable Motor Driver Description Test Cancel i SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 43 Initialization Commands DISABLE MULTI TASKING DMT EMT Description Disables SilverMax Multi Tasking operation SilverMax executes Programs in a sequential manner by executing each command until completion before moving to the next See Enable Multi Tasking for more information on Multi Tasking operation If a motion is active the next program line will not be executed until the motion has completed Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex PT ex Program Disable Class D Multi Tasking 1 Word DMT QuickControl Example Edit Command x Command Name 16 226 CR INIT DMT Disable Multi Tasking Description Test Cancel Example Disable the Multi Tasking operation SilverMax Response il ACK only Response Example 10 CR GlverMax Command Reference Page 44 Initialization Commands ae ENABLE DONE LOW EDL Description Enables a Done indication on the motor I O Line 1 The Done indi
204. r revolution one revolution of the motor equals 4000 counts To scale a move to revolutions multiply the revolutions value by 4000 Time based moves make the desired move within the times given The Acceleration and Velocity are calculated to accommodate the time requirements If the Acceleration or Velocity values needed to make the move exceed the maximum permissible limit or the ramp times exceed 65534 ticks 120uS each the move will not be executed and an error code will be set in the Polling Status Word The Polling Status Word bit 14 Foreground Command Error will be set Foreground command errors are generated when a command cannot be executed due to parameters that are out of range The Total Time is a time value in ticks Ticks are based on update rate of the servo cycle which is 120 microseconds long The Acceleration Time is also represented by ticks This time value defines the time needed to accelerate up to the calculated velocity The Total Time and Distance must be consistent with the maximum velocity constraints of the motor 4000 RPM to prevent the generation of an error Acceleration Time can be no greater the 1 2 the Total Time value and not greater than 7 864 seconds in time 65534 ticks To convert Total Time and Acceleration Time to seconds multiply by 0 00012 The Stop Enable and Stop State words determine which digital inputs and or index signal are used to cause the motion to end before reaching the set Position See
205. rces The output can be configured in three different ways 1 A B quadrature which is the normal output mode for an encoder 2 Step up amp Step Down which gives a square wave output on I O bit 6 when the encoder is counting positive or on I O bit 7 when the encoder is counting negative and 3 Step and Direction which gives a square wave output on I O bit 6 and a Direction output on I O bit 7 The Count sets up a divider that is the Modulo Count In Step output modes the square wave rate equals the encoder rate divided by the count To exit this mode use the Modulo Clear command See Using SilverMax I O in the SilverMax User Manual for more information on modulo usage Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Modulo Set Program 189 lt Count gt 1 to 256 External MDS Class D OxBD lt Encoder 0 Internal Wor lt Output 0 A B Quad Format gt 1 Step Up Dn 2 Step amp Dir Example QuickControl Example Diae internal encoder gonnit by 20 and output in A B Quadrate format 161 R 6 189 50 0 c r Modulo Count T Encoder Source emca Divide the encoder by this ti SilverMax Response count before outputting Intemal _ Description 23 fo lel External ACK only ae Response Example ingen A B Quadrature on Step I O 6 10 CR 170 6 and 7 C Direction 1701 71 c Step Up I O 6 Step Down 1
206. ring the move any move parameter can be updated either by a Host or by an internal Program Command Name PROFILE MOVE OVERRIDE PMO Class D Command Code Hex 249 OxF9 3 Words Command Parameters lt Stop Enable gt Command Summary Tables SilverMax Description Response Parameter Range Hex 0 to 65535 1 to 14 0 to OXFFFF lt Stop State gt 0 to 65535 lor0 0 to OxFFFF ACK only Allows a PROFILE MOVE CONTINOUS to end when the Position is achieved PROFILE MOVE PMV Class D 241 OxF1 3 Words lt Stop Enable gt 0 to 65535 1 to 14 0 to OxFFFF lt Stop State gt 0 to 65535 lor0 0 to OxFFFF ACK only Works identical to the PROFILE MOVE CONTINOUS except that when the Position is achieved the move ends Stops and goes into position holding mode PROFILE MOVE EXIT PMX Class D 242 OxF2 1 Word SlverMax Command Reference NONE Page 199 ACK only Exits the current Profile Move allowing the move to stop using the Deceleration parameter stored in Data Register 23 Command Code Command Summary Tables SilverMax Description Response Parameter Range Command Name Hex Command Parameters Hex REGISTER 178 lt lt Data 10 to 40
207. rogram Return Program Return on Input Run Program Start Download Store Program Wait on Bit Edge Wait on Bit State Wait Delay I O Commands provide SilverMax PLC like qualities with 7 fully programmable I O lines Special I O modes provide Electronic Gearing and other external control capability EEM MDC MDS MDT PCP SOB Enable Encoder Monitor Modulo Clear Modulo Set Modulo Trigger Position Compare Set Output Bit SlverMax Command Reference Analog commands set up analog data input into SilverMax Analog data can then be used by other commands and modes for analog operations Page 8 Data Register Commands allow data management inside the SilverMax Data can be stored into and loaded from Non volatile memory to save calibration offset or other data values Several SilverMax commands can use Data Registers as parameters TLA Miscellaneous Function Commands CME Clear Max Error CIS Clear Internal Status CKS Check Internal Status TTP Set Target to Position ZTG Zero Target ZTP Zero Target and Position SlverMax Command Reference TLA ATR RLM RLN RRG RSM RSN WCL WCW WRI WRP Data Register Commands Add to Register Register Load Multiple Register Load from Non Volatile Read Register Register Store Multiple Register Store to Non Volatile Write Command Buffer Longword Write Command Buffer Word Write Register Immediate Type Write Register Program Type Miscellaneous Function C
208. rom within a program A Hard Stop immediately halts the Trajectory Generator Motion Commands or stops the current Mode Step amp Direction in either case the motor will come to an abrupt stop In many situations this may cause the motor to overshoot the stop position and oscillate until settled More controlled stops can be accomplished by using the Velocity Mode which allows a user selectable deceleration to 0 velocity stopped The Profile Move End command may similarly be used to halt an existing motion with a controlled deceleration Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Hard Stop Program Move Class D HSM 1 Word Example QuickControl Example Sete erence near 16 229 CR Command Name MOVE HSM Hard Stop Move Description Test Cancel SilverMax Response ACK only i Response Example 10 CR GlverMax Command Reference Page 91 Motion amp Profile Move Commands See Also Profiled Move PMV Interpolated Move Queue INTERPOLATED MOVE START IMS Clear IMQ Interpolated Move Write IMW Description This command provides a means generating an arbitrary motion from either nonvolatile Memory or from a host via the Serial Interface Before issuing this command Register 17 should be written to point to the source of the profile data while Register 19 should contain a deceleration value to use if the dat
209. s Example Set filters to roll of at 469 413 and 117 Hz 23000 32768 e 469 x 120u8 24000 32768 e 8 30000 32768 e 117 2 20us 16 169 23000 24000 30000 CR SilverMax Response ACK only Response Example 40 CR SlverMax Command Reference Control Constants Fvl 469 Hz Fv2 1413 Hz lt Velocity 1 0 to 32767 Feedback gt 0 to Ox7FFF lt lt Velociy2 0to32767 2 0 to 32767 Feedback gt 0 to OX7FFF lt Acceleration 0 to 32767 Feedback gt 0 to OX7FFF QuickControl Example Edit FLC Filter Constants x Cancel Description Test M Units Normal C Native Use Default For SilverMax Initialization Commands GRAVITY OFFSET CONSTANTS GOC Description Establishes a value that compensates for the effects of gravity on the load that the motor is driving This servo control parameter is designed to neutralize the effect of gravity on mechanisms that operate in other than horizontal orientation It enables the servo control to operate consistently in both directions of motor rotation by creating a Torque offset that counters the torque required to hold the load in position The offset value is in torque units the same as the Torque Limits command If for example it requires 4 of the motor s torque capability to hold the load in position the value may be set to approximately 1 4 of the 100 torque value If the full torque value were 20000 the 1 4 value
210. s been successfully executed the pre calculated move will be in a ready state waiting for the Pre Calculated Go command Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Pre Calculated Program Class D 1 Word Example QuickControl Example Start the pre calculated move Command Name 16 232 CR MOVE PCM Pre Calculate Move SilverMax Response Description Test Cancel ACK only Response Example 10 CR SlverMax Command Reference Page 106 Motion amp Profile Move Commands PROFILE MOVE CONTINUOUS PMC Description The Profile Move commands are distinct from the Motion commands in that the move parameters can be modified while the motion is in progress A change in a move parameter updates the move immediately and can alter the move profile real time The Profile Move Continuous puts SilverMax into a move that does not end unless explicitly commanded During the move any move parameter can be updated either by a Host controller using the serial interface or by an internal program Multi Tasking operation is required With this feature any motion profile shape can be accomplished by changing the appropriate parameter at the desired time Five parameters are associated with this command Each of the parameters is dedicated to a specified User Data Register Modifying the contents of the Data Register modifies the parameter See S
211. s command allows 32 Bit Data to be stored in a program and used by SilverMax for a variety of purposes including the Register motion profile commands Command Info Command Type Program Class D Command Name Write Register Program Type WRP Command Code Hex 154 lt Data Register gt Ox9A Command Parameters Parameter Range Hex 10 to 40 4 Words 0 to OxFFFFFFFF Example QuickControl Example a 16 154 10 1 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference Register Accumulator 10 Description r Data Format C Hex Acceleration Data fi Long Velocity a ULong C Time Position Page 173 Data Register Commands WRITE CMD LONG WORD WCL Description This command allows program space starting at the selected command buffer location to be overwritten with the 32 bit data in the selected register This allows for self modification of the command parameters within the command buffer to all any of the command parameters to be dynamically modified within the program This command specifically is intended to modify 32 bit parameters Extreme care should be used when writing any self modifying code to prevent unwanted outcomes The QuickControl tool has support for this command which simplifies its application and enforces consistency checks However values being transferred are dynamic based on the conte
212. s equal to or greater than absolute value the Position value contained in the first of two User Data Registers The I O 1 state will toggle again when the motor position is greater than the Modulo second Data Register of the Position value On a compare if I O 1 is a logic Low 0 it will be set to a High 1 If T O 1 is a logic High 1 it will be set to a Low 0 I O 1 must be set to Output mode using the Set Output Bit Clear Output Bit or the Configure I O commands The First Data Register Position The Second Data Register Modulo The first Data Register contains the Position value that starts the compare process and executes the first toggle The second Data Register contains the Modulo value used for creating a continuous toggle of the output After the first position compare the Modulo value is added to the Position value to set up for the next compare This will continue until the Position Compare is disabled Setting values to 0 or the motion completes If the Modulo value is 0 only a single compare takes place Position Compare can be done in both positive and negative position moves The Modulo is added as an absolute value to the Position This command is accomplished using a software compare updated every 120 usec and therefore may have a small delay of 120 microseconds from a compare to the actual I O 1 cha
213. s may be used to reduce heating when in anti hunt mode Error conditions are set in both the Internal Status Word and in the Polling Status Word if the error limits are exceeded The Polling Status Word error condition can alert the Host controller to the condition if the unit is being polled The conditions in the Internal Status Word may be used to halt the motor in the case of a motion error See the Kill Motor command for more information on halting a motor A special Drag mode may be implemented by setting the error limits to negative values The absolute value of the limit is used to generate the status conditions while the Target is not allowed to get farther than the respective error limit from the motor position This can be used to set up a clutch mode where the output shaft can be dragged around to a desired position and the system will then maintain that position This is useful for some mechanical alignment procedures as well as for implementing drag clutch operations Combining the Drag mode with the Profiled Move commands allows obstructions or other torque limited operation to recover while maintaining the requested velocity when the obstruction is removed The Profiled Moves will continue to the requested position even if the drag mode is engaged The Kill Motor Conditions should not be enabled if using this mode The motor will shut down Command Info Command Command Command Command Parameter Range Name Type Code
214. s to be negative 3 Acceleration 1 to 2 147 483 647 indicates the acceleration or deceleration to be used in reaching the requested velocity or position 4 Velocity 0 to 2 147 483 647 indicating the desired ending velocity magnitude speed of the segment or maximum velocity to use if coming to a stop within this segment Will only be reached if it is consistent with the starting velocity the acceleration and the segment time See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Name Command Command Command Parameter Range Type Code Hex Parameters Hex Interpolated Immediate lt lt Time gt gt 0 to Move Write Class A 2 147 483 647 Queue 0 to Ox7FFFFFFF lt lt lt lt Position gt gt 2 147 483 648 to__ gt gt 2 147 483 648 to 2 147 483 647 Oto OXFFFFFFFF to OxFFFFFFFF lt lt lt lt Acceleration 1 to 2 147 483 647 1 to 2 147 483 647 0x01 to sl orerererry O lt lt lt lt Velociy gt gt Oto gt gt 0 to 2 147 483 647 0 to Ox7FFFFFFF Example QuickContol Example TIME POSITION ACCEL VELOCITY Immediate Host Mode 16 25 DATA DATA DATA DATA CR Command Only See pages 11 12 for details GlverMax Command Reference Page 95 Motion amp Profile Move Commands SilverMax Response ACK NAK FULL Response Example 10 CR Negative Acknowledge NAK Command 25 0x19
215. scccisssgecees ddect vised divas lattes AE EAO A EATA A aA a aaia 180 ZERO TARGET ZEG reiia naai A UA ANRE EAA EAA Ka Aaaa i AAAA OAAS ARETE AAA AS 181 ZERO TARGET amp POSITION ZI P aeeiiaii a ii A A A R E AASE ON AASE 182 Summary of SilverMax CommandS sssssssseunnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nnmnnn 183 SIATS COMMANDS aaae TEN E AEAEE EA A AREER EAA AEAEE EA 183 OVERRIDE COMMANDS 3 schist stecues tuleke sh AEEA AEEA AANA AEEA AEEA A AERE ERR EELA AREE ERRI EAA 184 INITIALIZATION COMMANDS Sari AEEA E KEE EAER E EEEE EEE OAE ERA 185 MODE COMMANDS ao k T Ee ETE EEE RE AAEE EEEE AE AEA E AE REE AORE RT 194 SlverMax Command Reference Page iv MOTION amp PROFILE MOVE COMMANDS 2 eccceeeeeeeeeeeeeaeeeeeee cee aaaaaeceeeeeseseccaeaeeeeeeesetsnsueeeeeeeeteees 196 PROGRAM CONDITIONAL amp FLOW COMMANDS 0ccccccceccccseeccseeeceeeeeeescsuuueueesuuueeeeeeeseeeuuaeeeesaueeeeeaasess 203 VOCOMMAND Sieten n i eochs seri ana a an a alate te Seat tot eid ee a Ente 207 DATA REGISTER GOMMANDS ee22citrsctnwcos otee aie e wtats tn deans s Sdawel Satcher tude n a a a 209 MISGGOMMANDS raae a se en eset Deen eee sata tee eh ee et ea 211 SilverMax Command Set Numeric TLA List ccccceccsssesecnssseseeneeseseeneeeenauseeeeneseseaneeseenaaeeeeas 212 SilverMax Command Name Cross Reference Table s cccscssssesecneeseseeneeeeeeesseeeeneeeseaneeeeenaeeeees 216 WINGO AEE aE AEEA ed avcewc
216. se of loss of communications The Interpolated Start Move command may then be issued The motion will not start until the first data set has been written to the software FIFO circular queue The queue may be kept full by the host via the Serial Interface The buffering makes it easier to keep one or multiple axis fed with data It also eliminates an extra register read to determine when data is required See Interpolated Move Write Queue IMW command for details The Interpolated move continues until either the Segment Time read is a zero which terminates as detailed above or until the queue is found empty when data is required which uses the deceleration data in Register 19 to bring the motion to an end setting error bits as described above Please see the Interpolated Move Application Note for more information on converting an arbitrary motion or arbitrary coordinated motions into an Interpolated Move data stream Command Info Command Name Command Command Command Parameter Range Type Code Hex Parameter Hex s Interpolated Program 253 NONE NONE Move Start Class D 0xFD IMS 1 Word Register usage Register 17 Points to Register containing Segment Data or 0 for Queued operation Register 18 Used internally to hold segment time countdown Register 19 Holds data loss deceleration value Registers 20 to 24 as defined in the Profiled Move command PMV Note Register 17 is modified following
217. serial interface however a NAK BUSY will be reported when a Program or a motion command is executing See the VELOCITY MODE IMMEDIATE TYPE command above for velocity mode using the serial interface If multitasking is enabled this command will take over any executing motion with out the completion of that motion and may be used to shutdown a motion is the new velocity is zero NOTE If the acceleration is negative the accumulated position error is removed and the absolute value of the acceleration is used See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Velocity Program 159 lt lt Acceleration 1 to 1 073 741 823 Mode Class D Ox9F gt gt or Program 1 to 1 073 741 823 Type 7 Words lt lt Velocity gt gt 2 147 483 647 to lt Stop Enable gt 0 to 65 535 0 to OxFFFF lt Stop State gt 0 to 65 535 0 to OxFFFF Example QuickControl Example Put SilverMax into velocity mode running at 200 RPM See Scaling 16 159 200000 107374200 0 0 CR a Acceleration Eee SilverMax Response 6s666 67 eps s Description Advanced ACK only Velocity Test 32000 cps Response Example Stop 10 CR SlverMax Command Reference Page 88 Motion amp Profile Move Commands Motion amp Profile Move Commands Motion amp
218. set Constant IDT Identity KDD Kill Disable Drivers KED Kill Enable Drivers KMC Kill Motor Conditions KMR Kill Motor Recovery LVT Low Voltage Trip MCT Motor Constants MTT Maximum Temperature Trip OLP Open Loop Phase OVT Over Voltage Trip PAC Phase Advance Constants PLR Power Low Recovery PRO Protocol SCF S Curve Factor SEE Select External Encoder SIF Serial Interface SLC Single Loop Control SSL Soft Stop Limits TQL Torque Limits TRU Torque Ramp Up TLA GCL GOP PIM RSD SSD TIM VIM VMI VMP Mode Commands Go Closed Loop Go Open Loop Position Input Mode Actually Target input Registered Step And Direction Scaled Step And Direction Torque Input Mode Velocity Input Mode Velocity Mode Immediate Type Velocity Mode Program Type Motion Commands give SilverMax the ability to follow a profile All motion commands will accelerate using S curve or linear ramps SilverMax has a unique ability to do motion profiles using Time for the acceleration and velocity parameters SlverMax Command Reference Mode Commands put SilverMax into required and special modes of operation Some modes give SilverMax the ability to input analog or Step and Direction signals for motion control TLA Motion Commands HSM Hard Stop Move IMS Interpolated Move Start IMQ Interpolated Move Queue Clear IMW Interpolated Move Write to Queue MAT Move Absolute Time Based MAV Move Absolute Velocity Based MRT Move Relativ
219. shes the maximum torque limit within the control loop but the motor current and thus heat will only be what is needed to generate the required torque The Open Loop parameters on the other hand will cause the respective motor current and heat regardless of load For most operations the open loop parameters should be set to 50 or less to minimize motor heating these are only used if the anti hunt mode is enabled or the Open Loop Mode is selected To determine the actual maximum torque that may be applied to the load refer to the Torque Curve Charts in found in the QuickSilver Controls Product Catalog The 100 torque applied to the load depends on the speed of operation 100 torque at stall may be 100 oz in while the 100 torque at 2000 RPM may be 50 oz in data from 23H 3 Torque Curve This applies to reading back the Torque Value from Data Register 9 The value read back must be compared to the Current Velocity of the motor and the Torque Curve to calculate the Actual Torque being required of the motor If for example the value being read back was 5000 and the motor was running at 2000 RPM the torque being required of the motor is actually 50 oz in 20000 5000 which equals 12 5 oz in Command Info Command Command Parameter Range Hex Command Command Code Hex Parameters Name Type Program 149 lt Closed Loop 0 to 32767 Class D 0x95 Holding gt 0 to Ox7FFF lt Closed Loop 0 to 32767 Por 0 to Ox7FFF lt Ope
220. sum and the data array Example Storing 7 Data Registers takes up 16 Words of NV Memory This command leaves a background routine running until the storing in the non volatile memory has completed Once completed bit 15 in the Polling Status Word is set Bit 14 is set if the command attempts to write beyond the allowed memory space Execution time of this command varies depending on the number of words written Worst case time is approximately 10mS per 32 word block or portion of a block on 32 word boundaries of memory written INDIRECT ADDRESSING The Non Volatile Memory may be indirectly addressed by putting the wanted address into Register 10 and then using a NV Memory Address of zero The zero address triggers the indirect addressing mode as location 0 is reserved as the start of the initialization program This may be used to recall a long series of numbers from NV memory via a loop operation NOTE Ifa rapidly changing data register is stored to NV Memory the data has the possibility of being inaccurate This is due to the write cycle of the SilverMax DSP The cycle performs two 16 bit writes from the 32 bit data register to NV Memory If the data in the register changes before the second 16 bit write cycle then it will be incorrect It is advisable to copy the data from the changing register to a second register and then storing the second register to NV Memory SlverMax Command Reference Page 169 Command Info Co
221. t Bit 10 Halt command was sent Bit 11 Sensor found on last move Bit 12 Wait Delay count exhausted Bit 13 Over Voltage Bit 14 Under Voltage Bit 15 Reserved Command Info Command Command Parameter Range Command Command Parameters Hex Name Type Jump JMP Program 162 lt Condition Enable gt 0 to 32767 Class E OxA2 0 to Ox7FFF lt Condition State gt 0 to 32767 bores Feel 0 to Ox7FFF lt Program Buffer 0 to 199 Location gt 0 to OxC7 GlverMax Command Reference Page 130 Program Flow Commands Example QuickControl Example JUMP to Program Buffer Location 0 if the last calculation using the Calculation command was zero Cancel Select from existing labels or enter a new one Jump to Program Buffer location 0 fxn Description last calculation was zero Select conditions for Jump 16 162 2 2 0 CR o Condis SilverMax Response ACK only Response Example 10 CR Table Showing the Bit definitions for the Internal Status Word ISW Bit ISW bit 15 8 definitions Bit ISW bit 7 0 definitions Bit15 reserved Bit 7 Over temperature O True Bit 14 Under voltage Bit 6 1 0 3 Bit 13 Over voltage Bit 5 VO 2 Bit 12 Wait Delay exhausted Bit 4 V O 1 Bit 11 Input found on last move Bit 3 Negative Calculation result Bit 10 Halt command was sent Bit 2 Positive Calculation result Bit 9 Holding err
222. t 4 1 0 1 Bit11 reserved Bit 3 Trajectory Generator Active Bit10 Delay Counter Active Bit 2 External Index Bit 9 Holding Error Bit 1 Internal Index Bit 8 Moving Error Bit 0 INDEX Multiplexed Command Info Command Command Parameter Command Name Command Type Code Parameters Range Hex Hex Jump On Inputs Program 250 lt IOS Condition 0 to 65535 And Ed Class E OxEE Enable gt JAN lt IOS Condition 0 to 65535 swords yes nnn 01068535 lt Program Buffer 0 to 199 Location gt Example Quick Control Example Jump to Program Buffer location 10 if digital inputs 4 5 6 and 7 are High 1 Cancel 1 6 250 61440 61440 10 CR Select from existing labels or enter a new one ooo gt Description SilverMax Response Select conditions for Jump On AND 1 0 State ACK only Conditions Response Example 40 CR GlverMax Command Reference Page 127 Program Flow Commands JUMP ON INPUTS NAND ed JNA Description The Jump On Inputs NAND ed command allows looping and other conditional branching inside a program based on the condition of the I O State Word IOS The IOS Condition Enable selects which inputs will be used in the NAND ed Negative AND ed evaluation The IOS Condition State allows the user to specify the states High 1 or Low 0 of the selected inputs that will cause a TRUE condition for each of the inputs Setting both parameters to zer
223. t Command x enabled Command Name 16 182 CR INIT KED Kil Enable Drivers Description Test Cancel SilverMax Response i ACK only Response Example 40 CR SlverMax Command Reference Page 56 Initialization Commands KILL MOTOR CONDITIONS KMC Description The Kill Motor Conditions allows the user to select what conditions will allow a controlled shutdown of the SilverMax unit The Condition Enable word selects which bits in the Internal Status Word will be evaluated Conditions are enabled by setting a 1 in the desired bit position of the Condition Enable binary word The Condition State word allows the user to specify the state of the selected conditions that will cause the motor to do a controlled shutdown Normal usage will include the Over Temperature state Bit 7 in order to prevent unexpected motor restarts when the case temperature has returned to allowable temperatures Some users may use the Moving Error bit to shut down the motor if the expected moving position error has been exceeded as would be caused by a jam or obstruction Digital inputs can also be used to implement a shut down from End of Travel limits if external switches are provided Additionally the Wait Delay function could be used as a watchdog timer if the wait function were not needed within the user Program writing the wait with the no delay option would keep this number from expiring to zero Note Over voltage is always enable
224. t has been previously loaded to the Program buffer for operation They can only be executed when the motor is idle They will be stored to the buffer when in download Program Download mode All of these commands have a command code of 64 hex 0x40 or higher Multi Tasking Allows these commands to be executed while a Motion is running but operation may not be what is expected as these are typically contained in a Program Class F Commands These are serial communications interface only They may not be contained within a Program but their execution affects the Program Buffer They may be executed while the motor is running or idle GlverMax Command Reference Page 14 Examples EXAMPLES All examples are given in the ASCII 8 bit protocol GlverMax Command Reference Page 15 Status Commands SILVERMAX COMMANDS DETAILED DESCRIPTION Status Commands Status commands are used to retrieve information from SilverMax These commands can all be used while SilverMax is executing a motion or a Program GlverMax Command Reference Page 16 Status Commands Clear Poll CPL Description This is a complement to the Poll command This command is used to clear the Polling Status Word bits See Polling Status Word below When a status bit is set 1 it will remain set until a Clear Poll command is sent with the same bit set in its Clear Status Word For example if a Poll command gets back a Polling Status Word of 0x2000
225. ta 10 to 40 Register gt lt NV Memory 0to3839 Memory 0 to 3839 Address gt 0 to OxOEFF lt Number of 1 to 4 ACK only Stores an array of Data Registers gt Registers to the selected REGISTER 198 STORE 0xC6 NON selected Non Volatile 0 to 3839 VOLATILE RSN Class D Read Register RRG Class A 3 Words lt NV Memory Address gt lt Data Register gt SlverMax Command Reference 0 to OxOEFF Page 209 0 to 40 Data of 4 Bytes Memory address A Checksum of the value is also stored lt Data 10 to 40 ACK REGISTER 198 lt Daa 10to40 ACKonly Stores the indicated Data Stores the indicated Data Register gt Register Value to the Reads the given Data Register See Data Registers Command Summary Tables Command Command Command Parameter SilverMax Description Name Code Hex Parameters Range Response Hex WRITE CMD 138 lt Register gt 0 to 40 200 to Moves the Long Word in LONG WORD OX8A 211 the register as pointed to WCL 0 to 0x28 by Register into the 0xC8 to 0xD3 given location in the CMD buffer Great precautions need to be exercised as both commands and parameters may be modified This allows any 32 bit command parameter to be set from a register lt CMD Buffer 0to199 Location gt 0x0 to 0xC7 WRITE CMD 139 lt Register gt 0 to 40 200 to ACK WRITECMD 139 lt Register gt 0t040 200to ACK only Moves the Word in the Moves
226. ta flow used for the Input Modes Input Mode Data Processing Diagram The Input Offset value is loaded here using a Write Register command or Data Input is loaded from NV Memory using a To LOAD REGISTER command All Reg 12 data is loaded in the same fashion Input Offset UB Data Reg 13 Dead band value causes input to be 0 when input is between Apply Dead Band Dead band value and 0 to Input data Limit Scale value is loaded here Limit Scale Bae Limit amp Scale Input data Reg 15 This now scales the data for Scale data for output by multiplying by the Output output scale value Output Offset Data Output Offset value is loaded here Reg 17 Don t let the output data change Limit Rate of faster then the Rate Limit value When in Velocity mode this acts like Acceleration When in Position mode this acts like a velocity limit Change tai Send data to selected mode GiverMax Command Reference Page 86 Data is placed here by Analog Input or direct from the Serial Interface using the Write Register Immediate Type command Input Offset is subtracted from the input value This may provide offsetting of a Joystick input A Dead Band value is loaded here Dead Band Data Reg 14 Limit amp Scale works by first limiting the input negative or positive to the Limit Scale value then scaling it by dividing
227. te to half of a combined word register 4 SAVE LOW Saves the Low word of Register 10 to the Low word of the selected register Used to write to half of a combined word register 22 SHIFT LEFT Performs a 32 bit Left Shift of the selected Register 23 SHIFT RIGHT Performs a 32 bit sign extended right shift of the selected Register Implements a signed SIGN EXTENDED divide by 2 24 SHIFT RIGHT Performs a 32 bit right shift of the selected Register Implements an unsigned divide by 2 SlverMax Command Reference Page 122 Program Flow Commands Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Calculation Program 215 lt Operation gt See Previous Table CLC Class D OxD7 3 Words 165 2 words lt operation Data Reg gt Upper Byte Operation Lower Byte Data Reg lt Data Register gt 0 to 40 200 to 211 Example QuickControl Example Peerement ACUNUN 16 215 5 10 CR Cancel S I Ive rM ax Res p onse Register Accumulator 10 Description ACK only Operation Decrement lie Reg Reg 1 7 Response Example 10 CR GlverMax Command Reference Page 123 Program Flow Commands Clear Program CLP Description The Clear Program prepares the SilverMax unit for downloading into the Program Buffer First the Program Buffer is cleared Then the buffer pointer is set to the beginning of the buffer This command is
228. tep away from a value of 0 Please see the Initialization section in the SilverMax User Manual for a more detailed description of the initialization process This command is normally used only in the initialization procedure Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Open Loop Program 152 lt Angle in 7 to 79 Phase Class D 0x98 Counts gt 0 to 0x004F amp OxFFF9 LVT to FFFF 2 Words Example QuickControl Example Set the open loop phase to 0 Edit Command x 16 152 0 CR Command Name INIT OLP Open Loop Phase SilverMax Response Description ACK only Test Cancel Response Example L Data Label 10 CR Phase Angle Count SlverMax Command Reference Page 63 Initialization Commands Description Sets the voltage at which SilverMax will cause a motor shutdown This command is mainly used to prevent over voltage from the power regenerated during deceleration The voltage value is entered in integer units example 48 for 48 volts If an over voltage condition is detected a motor shutdown is executed that shorts the motor phase windings to prevent regenerated power from flowing into the power supply input which boosts the supply voltage After motor shutdown the Kill Motor Recovery routine is called allowing a recovery program to detect and or correct the error If the motor driver is enabled while the voltage is above the trip point
229. tescanseaennceeed ex aan seein haga ets dabastansdcessertsanenevscdaeseazektedeeasehas 64 PHASE ADVANCE CONSTANTS PAC 0 cccccccccctesctene tenes eten ne ctenee sae ee tans stenae senses eaaeeteneeseaees 65 POWER LOW RECOVERY PLR ssesssacecsscessssts senenzedestoaassasenetecdeseansbacdens ani pideei ahis 66 PROTOCOL PRO eiivctictssusbived xe ccasateden eu peaa iana E iee EEEn NAE piesi E Err eE AEAT Rii saN 67 O GURVE FACTOR SCF vis tectsssscaretecedecssutacesnsenadenesera rT E EI A a AAEE AEREN deedeainabensaedeencesnadiias 68 SELECT EXTERNAL ENCODER SEE siiriicriniindininaa aariin Eaa iaiia 69 SERIAL INTERFACE SIF is sscc tise coca exten anara ieii Ana A Ea AEE Aea E i EREE iraia 70 SINGLE LOOP CONTROL SLO evcccsstecscuscssesereceecactacssunecdzeneess sdeuaseazoanedenbceagasa essneaennenteganasuien 71 SOFT STOP LIMITS SSL iiaeiai aaar ceencind ben isednekcen avid cuaseazokecdeng deeiesanaoneeaunn caved axetaies 72 TORQUE LIMITS CT QU Diiringi snipee eina eane peria idii E saad ea deeaaianaddueseanebtetang eats 73 TORQUE RAMP UP TRU soiree aria e a RA E A N TNN a 75 MODE COMMAND Sheoin aeaa eotea aana aa ea a ea a aaa a aa al aa a E i e due 76 GO CLOSED LOOP GOL irinsiirie ieii cesssansdi e aieiai ii cease tvedvas duaedenteeaysanaatvasceesete en ATER 77 GOOPEN LOOP GOL raih a iaia Aa cides again VRE sone ATAKE araa 78 POSITION INPUT MODE PIM ciriiiiis iiien ad aiti a iiae 79 REGISTERED STEP amp DIRECTION RSD snee
230. the Done indicator will be Low 0 During the execution of a motion profile command the done indicator will go High 1 indicating the motor is moving It will then go low at the end of the motion If the motor position during the move or when holding exceeds the error limits the bit will go high or remain High even when a motion completes PLCs or Host Controllers can use the Done indication for monitoring SilverMax motions to check for completion When in Step amp Direction mode and no multitasking program is running the Done only indicates position errors Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Program Enable Class D Done Low EDL 1 Word Example QuickControl Example Enable usage of the Done Edt Command x indication by setting I O line 1 Low Command Name 16 187 CR INIT EDB Enable Done Low Cancel Description SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 46 Initialization Commands ENABLE MOTOR DRIVER EMD Description Enables the SilverMax motor driver The driver is by default enabled this command is only required if the driver has been disabled using the Disable Motor Driver command or disabled by the Kill Motor operation or by an over voltage condition Command Info Command Command Command Command Parameter Range Name
231. the Input by the same Limit Scale value Output Scale Data Output Scale value is loaded here Reg 16 Adds an offset value to the data for output This can also be used as a direct data input by placing the input value into Register 17 Rate Limit Data Rate Limit is loaded here Reg 18 Data is finally sent to the selected mode Velocity Position or Torque mode Mode Commands Velocity Mode Immediate Type VMI Description Accelerates the motor from the present velocity to the indicated velocity using the given acceleration If the motor has an active move operation in progress that motion is taken over from its current velocity and motor ramps to the new velocity at the given acceleration rate Any program operating is stopped and the contents of the command buffer are modified This command is used when the velocity mode needs to be controlled from a Host controller This command can only be used through the serial interface See the Velocity Mode Program Type command below for embedding in a program NOTE If the acceleration is negative any accumulated position error is removed and the absolute value of the acceleration is then used This command is ended either by use of the Stop enable and Stop state which cause the velocity to ramp to zero at the acceleration rate or by selecting a velocity of zero when the command is issued As with other motions the Velocity Mode may also be
232. the Word in the WORD OX8B 211 low half of the register WCW 0 to 0x28 as pointed to by 0xC8 to 0xD3 Register into the given location in the CMD buffer Great precautions need to be exercised as both commands and parameters may be modified This allows any 16 bit command parameter to be set from a register Write Register lt Data eee 10 to 40 ACK Write Register 11 lt DataRegister 10to40 ACK only Writes the supplied data Writes the supplied data Immediate hae Ox0A to 0x28 to the indicated Data Type Register WRI lt lt Data gt gt 0 to Class A 4 294 967 295 0 to NOTE Can OxFFFFFFFF effect program or execution 2 147 483 648 to 2 147 483 647 WRITE 154 lt Data Register Stores data in a User REGISTER Ox9A gt Data Register Data PROGRAM Registers below 10 are TYPE 4 Words lt lt Data gt gt 0 to not available for writing WRP 4 294 967 295 Class D 0 to OxFFFFFFFF lt CMD Buffer 0to199 Location gt 0x0 to 0xC7 GlverMax Command Reference Page 210 Command Summary Tables SilverMax Description Response Parameter Range Command Command Command Name Code Hex Parameters 163 0xA3 CLEAR INTERNAL STATUS CIS Class D CHECK INTERNAL STATUS CKS Class D 1 Word 164 0xA4 3 Words SET TARGET TO POSITION TTP Class D 145 0x91 ZERO TARGET amp POSITION ZTP Class D 1 Word SlverMax C
233. tion Commands POWER LOW RECOVERY PLR Description This command designates which routine from non volatile memory to run if the power supply voltage drops below that specified by see Low Voltage Trip A value of zero indicates to shut down the motion and then to do nothing Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Power Low Program 208 lt Process gt 0 Do Nothing Recovery Class D OxDO 1 Restart PLR 1 to 3839 NV Memory 2 words address 1 to OxOEFF Example QuickControl Example If power low condition exists Load Edit PLR Power Low Recovery x and Run Program at 200 Ok 16 208 200 CR p Select Program To Load and Run __ Caneel Description SilverMax Response Select From List of Programs ESTOP Recovery C Enter Absolute Address ACK only Response Example 40 CR SlverMax Command Reference Page 66 Initialization Commands PROTOCOL PRO Description Allows the user to select the desired communications protocol Two different protocols are available the 8 Bit ASCII and the 9 Bit Binary In the power up Initialization Program one of the two protocols should be selected See SilverMax User Manual for more information on Protocols At power up and before the Initialization Program is executed SilverMax is first set to the 9 Bit Binary protocol for 120 milliseconds then switches to the 8 Bit
234. to OXFFFF GlverMax Command Reference Page 202 Command Summary Tables Command Name Command Command Parameter SilverMax Description Code Parameters Range Response Hex Hex Program Conditional amp Flow Commands NV Non Volatile memory CALCULATION 215 lt Operation gt See Command ACK only Performs a math CLC 0xD7 calculation or function using a specified Data B Register Data Register 10 is used as the first 165 argument in two argument math 2 words operations Data Register 10 is also used lt operation gt as an accumulator where High Byte the results of most calculations are placed lt Data Class D 3 Words Register gt 211 lt Data Reg gt Low Byte Calculation result affects status in the Internal Status Word The indirect load and use register 10 for the data and the data in the given register for the address Clear Program ACK only Initialize the Command CLP buffer Clear out any Class B existing program in the command buffer 140 lt lt Tick 2 147 483 647 If the value is positive Ox8C Count gt gt to 2 147 483 647 causes a program to wait 0x8000001 to until the value has 3 Words Ox7FFFFFFF counted down If the count value is negative only counts down END PROGRAM 128 NONE ACK only Puts the motor into END 0x80 position holding mode Class D Note commands in a 1 Word program following this command will NOT be executed
235. ts accidental execution of the data as a program by triggering the END command INDIRECT ADDRESSING The Non Volatile Memory may be indirectly addressed by putting the wanted address into Register 10 and then using a NV Memory Address of zero The zero address triggers the indirect addressing mode as location 0 is reserved as the start of the initialization program This may be used to recall a long series of numbers from NV memory via a loop operation Command Info Command Command Parameter Range Command Command Code Parameters Hex Name Type Hex Register Program 197 lt Number of 1 to 10 Load Multiple Class D OxC5 Registers gt RLM lt Starting Data 10 to 40 amp 200 to 211 4 Words lt NV Memory 0 to 3839 Address gt 0 to OxOEFF GlverMax Command Reference Page 165 Data Register Commands Example QuickControl Example Sequentially Load 5 data registers starting at 16 with the data from NV memory address 1000 Select the Register Cancel Maximum Output Scale 16 Description 16 197 5 16 1000 CR SilverMax Response Non Volatile Memory Location fico ACK only Response Example Number of Registers E _ 10 CR SlverMax Command Reference Page 166 Data Register Commands REGISTER LOAD NON VOLATILE RLN Description Loads data from the selected Non Volatile Memory address into the selected Data Register A Checksum value is verified to insur
236. uence Error and shut down the program See Using SilverMax I O in the SilverMax User Manual for more information on I O usage and conflicts Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Configure I O Program 188 lt I O Line gt 1to7 Class D OxBC lt Setting gt 1 Input 3 Words 0 Clear Low 1 Set High Example QuickControl Example Sor VO bites aa output Lawi 16 188 3 0 CR f 1 0 Channel _ wan Cancel SilverMax Response Com eii Description ACK only CO2 C084 C 1 0 6 Response Example peoia C Input 40 CR Output Cleared LOW Output Set HIGH GlverMax Command Reference Page 152 I O Commands CLEAR OUTPUT BIT COB Description Clears the selected Digital I O bit to a logic Low 0 condition Output 0 volts If the I O was configured as an input this will reconfigure the bit as an output and clear it to logic Low 0 SilverMax I O are TTL compatible input and output The outputs can source 8 milliamps and sink 8 milliamps The I O are voltage protected to eliminate failure from accidental over voltage When using digital I O in a system where they may be connected to other controllers or PLCs it is recommended that Optical isolators be used I O connected directly to switches or sensors may not require isolation Outputs that are in use for a Modulo output View encoder
237. used prior to a Start Download command It sets up the buffer to properly receive a program This command may also be used to end the program download initiated by a Start Download command Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex a a aa Clear Immediate NONE NONE Program Class B A CLP Example QuickControl Example Clear the SilverMax Program Buffer Immediate Host Mode Command Only 16 8 CR SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 124 Program Flow Commands DELAY DLY Description The Delay command sets a Delay Counter Register 5 with the supplied parameter The counter is decremented every servo cycle 120 microseconds If the Tick Count is positive the given value is used for the counter and a WAIT DELAY command is automatically executed If the value is negative the absolute value of the parameter is loaded into the counter and the execution continues on to the next command in the Program Buffer The Delay Counter Register 5 is Read Write for code version REV321 and higher The Delay Counter if not being used for program delays may be used in a watch dog configuration The counter would be kept refreshed by writing to Register 5 through the serial interface The Delay Counter Bit in the Kill Motor Mask would be enabled As long as the counter is not allowed to reach zero the Delay C
238. when the position value needs to be calculated internally or if the command is being executed in a program and the position value needs to be dynamically updated through the Serial Interface See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Register Program 178 lt lt Data Register gt gt 10 to 40 Move Class D OxB2 Absolute lt lt Acceleration 0 to 65534 Time Based 9 Words Time gt gt 0 to OxFFFE RAT a lt lt Total Time gt gt 2 to 2 147 483 647 0x02 to Ox7FFFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OXFFFF Example QuickControl Example Move SilverMax to position indicated by User Data Register 11 in 9500 01 mSec with a 235 92 mSec acceleration Data Register Cancel User 11 16 178 11 1965 79166 0 0 CR i Description Rampilime Advanced SilverMax Response 236 92 me ee Test ACK Total Time Stop ony 9500 01 een Ce 3 Response Example 10 CR GlverMax Command Reference Page 112 Motion amp Profile Move Commands REGISTER MOVE ABSOLUTE VELOCITY BASED RAV Description The Register Move Absolute performs an absolute move using a position value contained in the indicated User Data Register This command works like the basic Move Absolute Velocit
239. will shut down the motor and exit execution when an error is encountered Bit 12 Program Errors of the Polling Status Word will be set indicating program execution error NOTE Sending a Program Type command while in Host mode actually loads that command into the start of the command buffer with an END command inserted behind it and then that short program is run Command Info Command Command Parameter Range Command Command Code Hex Parameters Hex Name Type Run Program Immediate 10 NONE NONE RUN Class C Ox0A Example QuickControl Example Run the Program or Command that Immediate Host Command Only was previously loaded into the Program Buffer 16 10 CR SilverMax Response ACK only Response Example 40 CR GlverMax Command Reference Page 141 Program Flow Commands Start Download SDL Description This command puts SilverMax into a program download mode Program Type commands that are sent after a Start Download command are automatically appended to the Program Buffer rather than being executed Once in the Program Buffer they can be executed as a program or stored to non volatile memory The program download mode is terminated by a Store Program a Run Program or a Clear Program command Immediate Type commands sent to the SilverMax when in download mode are not appended to the buffer Depending on the command it will be immediately executed or it will cause an error Command Info
240. would be 5000 Depending on the direction of the Torque applied to the motor shaft the value can be set to a negative or positive value Command Info Command Command Command Command Parameter Range Name Type Code Hex Parameters Hex Program lt Gravity Offset gt 32767 to 32767 Gravity Class D 0 to OxX7FFF Offset Constant 2 Words GOC Example QuickControl Example Set the Gravity Offset to 35 x Torque for a QCI 23 3 motor 16 237 7000 CR SilverMax Response Cancel Gravity Offset Torque Descrinti ACK only escription Response Example Edit GOC Gravity Offset Constant Units Normal C Native 40 CR SlverMax Command Reference Page 53 Initialization Commands IDENTITY IDT Description The Identity command is used to select the Unit ID and Group ID addresses to which the SilverMax will respond The SilverMax will accept and respond to any command addressed with the Unit identifier The SilverMax will accept commands sent to either the Group Identifier or to the Global Identifier 255 but no response will be sent as multiple units cannot respond at the same instant No two units should have the same Unit identity when connected on the same network Multiple units may share a common Group identity when they are on the same network Identities need to be in the range of 1 to 254 Upon issuing this command the SilverMax will respond with the n
241. x Hex Move Program lt lt Position gt gt 2 147 483 648 to Absolute Class D 2 147 483 647 Velocity 0 to OxFFFFFFFF Based 9 Words lt lt lt lt Acceleration 110 1 073 741 823 to 1 073 741 a lt lt lt lt Velocity gt gt 0 to 2 147 483 647 gt gt 0 to 2 147 483 647 0 to Ox7FFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax to position 0 at 56000 cps Edit MAY Move Absolute Velocity Based x 16 134 20000 10000 53687100 0 0 CR Lo i Cancel SilverMax Response Absolute Location ema fo no _Descition ACK only Advanced Acceleration Eee Response Example foo E lt lt Test Stop 10 CR Velocity EEE 5sooo E SlverMax Command Reference Page 100 Motion amp Profile Move Commands MOVE RELATIVE TIME BASED MRT Description Move Relative initiates a distance move relative to the current Target Position Relative Distances are based on the Incremental Encoder resident in SilverMax The move profile uses Time as the constraint for the Acceleration period and for the total move Relative Distance is an encoder count value that the motor will move from its current position Providing a positive value will cause the motor move in a positive count direction Giving a negative value will cause the motor to move in negative count direction The polarity of the distance nu
242. xample Stop the SilverMax using the previous Immediate Host Mode Command command Acceleration parameter Only 16 3 0 CR SilverMax Response ACK only Response Example 10 CR GlverMax Command Reference Page 29 Initialization Commands Initialization Commands GlverMax Command Reference Page 30 ACK DELAY ADL Description Initialization Commands The ACK Delay sets a time delay for SilverMax to wait before sending an Acknowledgement ACK or DATA after a command has been received In some cases the host computer or PLC may not have enough time to set up for reception after having transmitted a command The ACK Delay can be used to have SilverMax wait a predetermined length of time to allow for these delays In the case where an RS 485 network in used there is often a delay when going from transmit to receive for the RS 485 driver Setting the delay allows the SilverMax to wait for the line to be free before attempting a transmission When the Serial interface is set to RS 232 a value of 0 causes SilverMax to run in standard RS 232 mode the Tx line is always driven With a number of 1 or greater SilverMax will run in RS 232 multi drop mode the Tx line is tri stated when not transmitting The delay parameter is a count that equates to the servo cycle tick One cycle tick is 120 microseconds The default value for the delay count is 4 this gives a delay of approximately 0 5 milliseconds The lar
243. y Based MAV command in all other ways The Register Move Absolute is useful when the position value needs to be calculated internally or if the command is being executed in a program and the position value needs to be dynamically updated through the Serial Interface See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Register Program 160 lt lt Data Register gt gt Move Class D OxA0 Absolute Velocity 9 Words lt lt Acceleration gt gt 1 to 1 073 741 823 lt lt Velocity gt gt 0 to 2 147 483 647 0 to Ox7FFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF Example QuickControl Example Move SilverMax to position indicated by User Data Register 11 16 160 11 10000 53687100 0 0 CR Data Register Cancel User 11 SilverMax Response ese Acceleration Rae ACK only EZ pss Tet Velocity Stop Response Example e E J 40 CR GlverMax Command Reference Page 113 Motion amp Profile Move Commands REGISTER MOVE RELATIVE TIME BASED RRT Description The Register Move Relative performs a relative move using a distance value contained in the indicated User Data Register This command works like the basic Move Relative Time Based MRT command in all other wa
244. ys The Register Move Relative is useful when the position value needs to be calculated internally or if the command is being executed in a program and the position value needs to be dynamically updated through the Serial Interface See Scaling in the beginning of the manual for details on scaling the parameters to engineering units Command Info Command Command Command Command Parameter Range Name Type Code Parameters Hex Hex Register Program Move Class D Relative Time Based RRT Example Move SilverMax to position indicated by User Data Register 11 Do the move in 8 seconds with a 0 400 second acceleration 16 179 11 3333 66664 0 0 CR SilverMax Response ACK only Response Example 10 CR SlverMax Command Reference lt lt Data Register gt gt 0 to 40 lt lt Acceleration 0 to 65534 Time gt gt 0 to OxXFFFE lt lt Total Time gt gt 2 to 2 147 483 647 0x02 to Ox7FFFFFFF lt Stop Enable gt 0 to 65535 0 to OxFFFF lt Stop State gt 0 to 65535 0 to OxFFFF QuickControl Example Edit RRT Register Move Relative Time Based x Data Register EA User 11 Description R Ti rence Advanced 400 w eee Test Total Time Stop feood mSec e Page 114 Motion amp Profile Move Commands REGISTER MOVE RELATIVE VELOCITY BASED RRV Description The Register Move Relative performs a relative move using a distance value contained in the in

Download Pdf Manuals

image

Related Search

Related Contents

RÉFLEXIONS SUR LA BIOÉTHIQUE  Instruções  C002_01 CONTATEMPO_italiano_inglese  Honeywell Dolphin 7900  CLARITY The Mental Body (Manas)    manual de utilização do receptor residencial  

Copyright © All rights reserved.
Failed to retrieve file