This manual describes, in detail, each software command used to manipulate the SimplIQ
line of digital servo drives. It is an integral part of the
includes:
The Harmonica, Cello and Bassoon Installation Guides, which provides full
instructions for installing a drive
The Composer User Manual, which includes explanations of all the software tools that
are a part of Elmo’s Composer software environment
SimplIQ documentation set, which
1-1
The
The following diagram illustrates the hierarchy of
SimplIQ Software Manual, which describes the comprehensive software used with
Commands for SimplIQ drives may be specified from the following sources:
User program A program loaded to the servo drive via one of the
communication options. After program execution begins, the
program is managed by the drive.
RS-232 Serial, point-to-point, short-range communication. Although this
method is rather slow, RS-232 is very easy to use and
requirements are minimal: a standard PC with serial port and
ASCII terminal software.
SimplIQ Command Reference Manual Introduction
MAN-SIMCR (Ver. 4.5)
CANopen Serial, multi-drop, medium speed and medium-range
communication. This type of communication requires specialpurpose host hardware and software.
1-2
This manual describes the
SimplIQ commands that can be specified from each of these
sources. Most of the commands are equally available for all three sources. Certain
commands, however, are limited in scope according to type of program or
communication.
All the commands are available to CAN communication in text form through the OS
service, objects 0x1023 and 0x1024. In addition, the numerical set/get commands are
available to CAN users in short PDO form, called the “binary interpreter.” The binary
and the OS SCAN interpreters are described fully in the CANopen Implementation Guide.
CANopen may also be used to manipulate the drive using the object dictionary (OD)
method, which is the native CAN method. This manual does not cover OD manipulations
with CANopen; refer to the “Object Dictionary” section of the CANopen Implementation Guide for full explanations.
The
SimplIQ drive responds to many privileged commands — such as those used by the
Composer setup wizard — that are not documented in this manual.
1.2 Scope
This manual includes the complete list of commands used by SimplIQ servo drives. It
specifies how to use each command, along with added remarks and examples.
The commands are presented in two ways:
A task-related listing
Alphabetically
In the task-related reference, the commands are sorted into groups of related commands.
Each group is presented in a table listing the commands with basic descriptions. The
alphabetical command listing provides a detailed explanation of each command, with
examples and references to the
SimplIQ Software Manual when necessary.
This Command Reference Manual does not cover the following topics:
User program keywords, used for writing user programs. These, as well as other
issues of developing, running and debugging user programs, are covered in the
SimplIQ Software Manual.
Interpreter functions and operators. The
arithmetic expressions and supports many arithmetic, trigonometric and logical
operators. The syntax for interpreter commands is explained in the “Interpreter
Language” chapter of the
This chapter summarizes the Metronome commands according to the following
functional groups:
MotionMotion parameters, type and status. Begin/stop motion.
I/OSet outputs and report inputs.
Status Report Metronome status.
FeedbackSupport the multi-featured feedback interfaces.
ConfigurationServo drive and motor types, and limitations.
CommunicationCommunication type and parameters.
ControlfiltersDigital, torque, speed and position filters.
ProtectionsFailure and protection definitions.
DatarecordingRecording of internal Metronome variables for analysis.
2-1
User programs Application programming
General Miscellaneous commands.
Commands associated with more than one group are listed more than once.
This chapter lists all the commands in alphabetical order, along with detailed definitions
and examples of each command.
The description of each command includes the following items:
Purpose: The operation or task of the command
Attributes: The characteristics of the command
Type: One of the following:
A command: An instruction to do something. For example, the BG (Begin Motion)
command starts a new motion profile.
A parameter: A data item that may be used later. For example, the AC
(Acceleration) parameter is required for calculating subsequent motions.
A status report: Get a value, such as the motor speed, a digital input or the reason
for the last motor failure.
The parameters and certain commands have numerical values, as follows:
Integer: A 32-bit long integer
Real: A 32-bit floating point number (IEEE style)
String: A set of printable ASCII characters
Integer variables may have the following attributes:
Bit field: The integer should be understood not as a number but rather as a
combination of binary fields. For example, the IP (Digital Input) command reads
many On/Off switches to the same integer, allocating one bit for each.
Option: A selector that may accept one of several options. For example, the motor
direction may be set to forward or reverse, symbolized by the numbers 0 and 1
respectively.
Source:Defines the “agents” that may use the command, as follows:
RS-232 communication
CANopen communication
User program
The command access rights are not equal for all sources. For example,
CANopen binary interpreter cannot use the string commands listed in
this manual. Another example is the LS (List Program) command that,
of course, cannot be performed from within a program.
Restrictions:The use of certain commands is illegal in certain contexts. The reasons
for this may be:
Safety: For example, it is not safe to change the direction of the feedback while the
motor is running.
Relevance: For example, a torque command cannot be specified in speed control
mode (UM=2); in speed mode, the drive automatically sets the torque.
Consistency: A parameter may be inconsistent with the specification of other
parameters. For example, in point-to-point mode, the position absolute value (PA)
may be no higher than the maximum allowed position reference (VH[3]).
Product grade: Elmo drives come in Standard and Advanced grade (model). When
no product grade restriction is cited, the command is relevant for both grades.
Default values:Default value and storage type.
Volatile variables are reset to their defaults with each power on. Nonvolatile variables can be stored using the SV command. Stored nonvolatile values are read from storage upon power on and can be reset
to their defaults using the RS command.
3-2
Range:Range definition: For example, the position command may be
specified in the range [-1,073,741,824…-1,073,741,823]
Unit mode (UM): Defines the function of the drive. The unit modes are:
UM=1 Torque control
UM=2 Speed control
UM=3 Micro-stepping
UM=4 Dual-feedback position control
UM=5 Single-feedback position control
Activation: Specifies when the entered parameter value should be used.
Activation may be:
Immediate As soon as the command is processed
Triggered By another command
For example, the AC (acceleration) parameter should only affect the
next motion, triggered by the BG command.
Examples:Simple examples of the command usage. All examples are given in
RS-232 syntax.
See also: Related commands
Reference chapter Chapter or section that contains relevant details pertinent to the
in the SimplIQ command.
Purpose:
Defines the maximum acceleration in counts/second2. This parameter is used in speed
mode (UM=2) and position control modes (UM=3, 4, 5) in PTP (PA, PR) and jogging (JV)
reference modes.
The AC parameter does not affect the present motion. It is used for planning the next
motion, which is initiated by a BG command.
Note: If AC is smaller than SD, the maximum possible acceleration will be limited
to SD and the value of AC will be ineffective.
Attributes: Type: Parameters, Integer
Source: Program, RS-232, CANopen
Restrictions: None
Default values: 20,000,000 (RS), Non-volatile
Range: Acceleration range
Unit modes: UM=2, 3, 4, 5
Activation: BG for RM=0, MO=1 for RM=1
3-6
Typical applications:
1. Define acceleration limits for the motion (UM=2)
2. Plan a profiled motion (UM=3, 4, 5)
See also:
DC, SP, SV, PA, PR, BG
Reference chapter in the SimplIQ Software Manual:
Chapter 12, “The Position Reference Generator”
Purpose:
Sets the gains for preconditioning analog signals, when RM = 1:
AG[1] sets the gain of analog input #1 when used as a torque command (UM=1, 3).
AG[2] sets the gain of analog input #1 when used as a speed command (UM=2).
When RM = 0, the AG[N] parameters are ignored.
The meaning of the analog gains depends on the unit mode, as shown in the following
table.
Value Description Units
3-7
UM=1, 3 One volt at the analog reference input
Ampere/volt
command controls the motor phase current
of AG[1] amperes.
UM=2 One volt at the analog reference input
Count/second/volt
command controls a speed of AG[2]
counts/second.
Table 3-2: Analog Gains - Analog Input #1
Notes:
AG[1]defines motor phase amperes and not RMS amperes.
In stepper mode (UM=3), the two external inputs play different roles: The analog
input voltage sets the motor power while the follow pulse/direction or quadrature
input determines the position.
The polarity of the analog reference signal may be reversed by setting the sign of
AN[1] reports the analog input #1 value after offset correction (AS[1]), in volts.
AN[2] reports the analog input #2 value after offset correction (AS[2]) in volts.
AN[3] reports the measured current in the motor A phase, in amperes.
AN[4] reports the measured current in the motor B phase, in amperes.
AN[5] reports the measured current in the motor C phase, in amperes.
AN[6] reports the line voltage value, in volts.
AN[7] reports the duty cycle value of the PWM signal after offset correction in
fractional units
Attributes: Type: Status report, Real
Source: Program, RS-232, CANopen
Restrictions: None
Unit modes: All
3-8
Typical applications:
1. Reading external sensors that provides +/- 10V
2. Reading analog or PWM references for either velocity or current
3. Reading phase currents and line voltage
Note:
Analog input #1 serves as reference input for analog torque or analog
velocity command while in auxiliary reference mode (RM=1).
AN[7] is available after the first MO=1.
Each of Elmo’s
SimplIQ drives support a different number of analog inputs.
For specific details consult the drive’s Installation Guide.
Purpose:
Compensates for offsets of the analog signals, which may be caused by the limited
precision of the
At times, the signals at the A/D converter may be offset: that is, the A/D reading may be
non-zero when a zero reading is desired. This offset may disturb normal operation. An
offset reference or feedback signal may cause a motor to “crawl” when a complete stop is
desired.
The analog offset subtracts from the analog input as follows:
Corrected signal = A/D reading – Analog offset
AS[1] - Analog input offset command for analog input #1, in volts
AS[2] - Analog input offset command for analog input #2, in volts
Purpose:
Immediately starts the next programmed motion.
In software speed mode (UM=2), BG activates the latest JV, and also the new smooth
factor (SF), acceleration (AC) and deceleration (DC).
In stepper or position mode (UM=3, 4 or 5), BG starts the latest position mode
programmed: a point-to-point motion (PA), a jogging motion (JV) or any type of
tabulated motion (PVT or PT).
Each motion mode starts with its entire set of parameters. For example, starting a pointto-point motion activates the present of acceleration (AC), deceleration (DC), smooth
factor (SF) and speed (SP).
The BG command may be used to modify the parameters of the present mode, and not
only to program new modes. For example, a BG command in point-to-point mode
modifies the active AC parameters (and all other active motion parameters) with its last
programmed value.
3-10
A “hardware BG” can be accepted via one of the digital inputs (refer to the IL[N]
command).
Purpose:
Uploads the values recorded by the recorder to a host. The BH command is designed to
optimize data transfer from the drive to the host, assuming that the host has the
computing power to analyze the drive message.
Attributes: Type: Command, Integer, Bit-field
Source: RS-232
Restrictions: RR=0 (valid recorder data is ready),
Not while executing a previously-requested
BH=n command
Purpose:
Defines the timing of the brake system in the motor when at least one of the digital
outputs has been defined by the OL[N] command as a brake. For safety reasons, a brake-
active output releases the brake so that the brake is activated when the drive is not powered on.
The brake output is always defined as active low.
When the brake is released at motor start (MO=1), the drive allows the brake time to
disengage before motion begins. During this time, the drive keeps the motor in its
starting position. When the motor is turned off (MO=0), the drive first commands the
brake to engage. Then, for a time, it keeps the motor in place while the brake actually
engages.
BP[1] - Defines the delay for engaging the brake after the motor is disabled (msec)
BP[2] - Defines the delay for disabling the motor after the brake is engaged (msec)
Notes:
3-12
If the motor is disabled by an emergency in real time, the brake is activated at the
instant the motor is disabled. The motor freewheels until the brake is fully
engaged.
Response time to interpreter commands (from the user program or
communication) is extended during motor disable (MO=0) and enable (MO=1) in
BP[1] and BP[2] milliseconds respectively.
Automatic phasing (commutation search with no digital Hall sensor or other
absolute position sensor) is not recommended for a system that requires brake
activation.
Purpose:
Starts motion at the defined time. This command is designed to start the simultaneous
motion of several axes. It is similar to the BG command with the following difference: BG
starts motion immediately whereas BT begins at the defined time.
Syntax:
BT=N
where N is the absolute time in microseconds
Purpose:
Defines motor and commutation parameters. The CA[N] array includes the parameters of
the initial motor setup. The CA parameters need to be clearly defined in order to ensure
that the motor rotates at all, and so that the feedback direction is correct.
The CA[] array is typically programmed by the Elmo Composer during system configuration
(by the wizard). It is not recommended to modify these parameters manually.
Setting of any of the following parameters causes the commutation sequence to be
searched again in systems with no digital halls.
The parameters in the following tables define the location and polarity of the Hall sensors
and encoder.
Command Description
CA[1] Digital Hall sensor A polarity (1 for active high, 0 for active low).
3-15
CA[2] Digital Hall sensor B polarity (1 for active high, 0 for active low).
CA[3] Digital Hall sensor C polarity (1 for active high, 0 for active low).
CA[4] Actual Hall sensor connector to Hall A connector pin:
1 for A, 2 for B and 3 for C.
CA[5] Actual Hall sensor connector to Hall B connector pin:
1 for A, 2 for B and 3 for C.
CA[6] Actual Hall sensor connector to Hall C connector pin:
1 for A, 2 for B and 3 for C.
CA[7] Offset of digital Hall sensors. This parameter compensates for Hall sensor
location inaccuracies.
Table 3-3: CA Vector - Digital Hall Sensor Parameters
The parameters in the table that follow are required for Analog Encoder, Resolver or
Analog Halls signal scaling:
Command Description
CA[8] Absolute Coarse/Fine Encoder (fine mode) or Absolute analog encoder
feedback offset – the value of the position sensor readout at the electrical
zero of the motor.
CA[9] Relative phase of the Analog Encoder sinusoidal signals (or Analog Halls or
Absolute Coarse/Fine Encoder(fine mode)), in 65,536 units per cycle. In
most systems, CA[9] will fall in the range of [-2048…2048].
CA[10] Resolver or Analog Halls offset – the value of the analog sensor readout at
the electrical zero of the motor
CA[11] Offset for the A (sine) channel of the Analog Encoder, Resolver, Analog Halls
or Absolute Coarse/Fine Encoder(fine mode). The offset is given in ADC units
in the range of [-4500…4500].
CA[12] Offset for the B (cosine) channel of the Analog Encoder, Resolver, Analog
Halls or Absolute Coarse/Fine Encoder(fine mode). The offset is given in ADC
units in the range of [-4500…4500].
CA[13] Relative gain of the A (sine) channel of the Analog Encoder, Resolver,
Analog Halls or Absolute Coarse/Fine Encoder(fine mode) with respect to the B
(cosine) channel in the range of [20000…40000].
CA[37] Relative phase of the Absolute Coarse/FineEncoder(coarse mode) in 65,536
units per cycle
CA[38] Offset for the A (sine) channel of the Absolute Coarse/Fine Encoder (coarse
mode). The offset is given in ADC units in the range of [-4500…4500].
CA[39] Offset for the B (cosine) channel of the Absolute Coarse/Fine Encoder (coarse
mode). The offset is given in ADC units in the range of [-4500…4500].
CA[40]
Relative gain of the A (sine) channel of the Absolute Coarse/Fine Encoder (coarse mode) with respect to the B (cosine) channel in the range of
[20000…40000]. Default value 32768.
CA[29]
Configure the number of the electrical cycles per revolution (ECR) in
range [1:5].
CA[29]
.
CA[30]
The number of the ECR is 2
Absolute offset in the position counts between the Coarse and Fine
position Zero readout. Range [0… 65536].
3-16
Table 3-4: - CA - Analog Feedback Scaling
CA[15] See Table 2-7.
Command Description
CA[16] Feedback direction:
0: Use feedback reading as is
1: Invert the direction of the feedback reading
Changing CA[16] does not affect the present position count. Direction
changes only when counting future feedback pulses.
CA[17] Commutation sensor:
0…4 reserved for compatibility.
8 : Digital halls sensor commutation is aided by an external feedback. In
this case, the commutation angle is corrected each digital halls
transition.
CA[18] Feedback bits (“counts”) per revolution, after resolution is multiplied by 4,
in the range [6…530,000,000].
- For Standard Incremental Encoders or Absolute encoders with
Sin/Cosine signals with 1000 lines, CA[18] is 4000.
If the motor is linear, CA[18] reflects the electrical cycle. For example, if
the encoder has 1000 lines/m (4000 counts/m) and the distance between
pole sets is 0.1 m, then CA[18] is 400. In this example, CA[18] could be set
as any multiple of 400, such as CA[18]=800 or CA[18]=1200.
- For systems with Halls only, CA[18] is calculated as CA[19] * 6.
- For Analog Encoders, the resolution is multiplied by 2
CA[31]
. For example,
if the analog encoder has 2000 lines and CA[31] is 8, then CA[18] will be
512,000.
- For Resolver feedback CA[18] is calculated as 2
16 - CA[34]
* Resolver pole
pair. For example, if the Resolver resolution is 10 bits and has 1pole pair
then CA[34]=16-10=6, and CA[18]= 2
16-6
=1024.
3-17
- For Tachometer feedback the resolution is statically set to 65,536.
Table 3-5: CA Vector - Feedback Setup Parameters
The parameters in the tables that follow are required for commutation setup.
Command Description
CA[19] Number of motor pole pairs [1…50].
The number of feedback counts per electrical revolution is CA[18]/CA[19].
For good commutation, the number of feedback counts per electrical
rotation should be at least 36. Practically, there is no high limit to the
number of encoder lines per pole pairs. It is a long integer number that the
drive ultimately modulates to 1024.
CA[20] Digital Hall sensors present:
0: No digital Hall sensors are connected. If the commutation angle is not
yet known, then at motor on, a commutation search will be made. No
digital Hall input consistency checks will be made.
1: Digital Hall sensors are connected. Upon motor on, commutation will
be performed according to the digital Hall sensors. Continuous
encoder-based commutation will begin when the first Hall edge is
identified. The drive performs commutation checks by continuously
comparing the encoder-derived commutation angle with the Hall
sensor recorded status.
CA[21] Position sensor present:
0: Ignore the position sensor inputs. Commutation will be based on the
digital Hall sensors only.
1: The position sensor will be used for commutation.
0: Reserved.
1: Main feedback entry used as input from a Resolver
2: Main feedback entry used as input for the quadrature incremental
encoder signals.
3: Main feedback entry used as input for analog sine\cosine signal.
4: Main feedback entry used as input for Tachometer signal (Maximum
Tachometer signal is ±20V)
5: Main feedback entry used as input for Tachometer signal (Maximum
Tachometer signal is ±50V)
6: Main feedback entry used as input for digital halls signals
7: Reserved
8: Main feedback entry used as input for Potentiometer feedback
9: Main feedback entry used as input for Analog Halls feedback
10: Main feedback entry used as input for Absolute Coarse/Fine Encoder
type
11: Main feedback entry used as input for analog sine/cosine signal and
absolute position value over several serial protocol formats
CA[25] Motor direction:
3-18
0: Reverse phase driving so that the motor direction with positive torque
command is reversed.
1: Keep the original motor direction, as connected by user.
CA[28] DC motor:
0: Standard brushless motor.
1: DC motor — do not perform commutation. Current will flow
continuously from the A motor connector pin of the servo drive to the
B terminal. The C terminal conducts no current.
Table 3-6: CA Vector - Commutation Setup Parameters
Command Description
CA[15] Signal frequency for “No Hall” commutation search process. This signal is
derived from the sampling time, according to the following:
Time = 128 * TS * 2
CA[15]
* 1e-6. The frequency is 1/Time Hz.
CA[24] The minimum motor movement to perform result analysis, in counts.
When this variable is too low, the commutation search process might fail
(MF=0x10,000).
CA[26] Starting torque for motor-on commutation search process in percentages.
Starting torque = (CA[26]/100))*CL[1]
Table 3-7: CA Vector - Automatic Commutation Search Parameters, no Hall Sensors
CA[27] Maximum acceptable number of iterations for auto-phasing process.
If the process fails due to overload (motion amplitude is less than CA[24]),
the auto-phasing may be repeated CA[27] times, with the current being
doubled at every iteration. If the peak current (PL[1]) is reached at any
attempt, the auto-phasing process will stop even if CA[27] allows more
iterations.
Table 3-8: CA Vector - Auto-phasing Parameters
Command Description
CA[23] Counts per meter (any positive integer):
0: Rotary motor
1: Counts per meter in a linear motor
This parameter is not used directly by the drive but is rather stored there
for the convenience of the host.
3-19
Table 3-9: CA Vector - Miscellaneous Parameters
CA[31] Resolution for one cycle of the analog signal.
Analog encoder cycles at one revolution x 2
CA[31]
counts/rev.
CA[31] is in the range [2..12].
Changing CA[31] resets the position counter.
For linear motors the resolution is per meter.
Table 3-10: - CA - Resolution of the Analog Encoder
The following parameters are required for Resolver, Analog Halls or Potentiometer
operation:
CA[32] Time delay between reference output and the sampling of the signals:
Delay = TS/2 - CA[32] / 40 in [us]. This value is used to produce the
reference signal to the Resolver.
CA[33] Resolver or Analog Halls filter frequency in [Hz], must correspond to
CA[34] Configure resolver, analog halls or Absolute Coarse/Fine Encoder bits in the
range of 10..16. The resolver / analog halls readout resolution is 2
16-CA[34]
bits per resolver or analog halls cycle. For example, if CA[34]=4 the
feedback reads 4096 bits per cycle. If the feedback has one pole pair,
this will also be the bit count per mechanical revolution. If the feedback
has 2 pole pairs, there will be 8092 counts/mechanical revolution and
so on.
Potentiometer feedback type:
Configure scale factor for analog (potentiometer) signal reading. Scale
is needed to reduce position ripple.
The potentiometer measured signal is arithmetically right shifted by
the value contained in CA[34] setting.
This means that the actual max value is:
CA[18]/2^CA[34].
CA[34] is in range [0…6]. Default value is zero.
Table 3-11: - CA - Resolver Parameters
3-20
The following parameters are required for Tachometer operation:
CA[35] The value of the Tachometer offset in counts/sec.
CA[36] The value of the Tachometer gain (from the Tachometer’s data sheet) in
Purpose:
Serves as the last stage of the user program downloading process, verifying a
downloaded user program and marking it “ready for use.”
The CC=N command specifies the program checksum. If this value coincides with the
actual program checksum, the “Program ready” internal flag is set on. Otherwise, an
error is returned. The CC query returns 0 if no active program is present, and 1 if the
“Program ready” internal flag is set on.
Attributes: Type: Parameter, Integer
Source: RS-232, CANopen
Restrictions: MO=0, Program not running
Range: [0…2
Unit modes: All
Activation: Immediate
32
]
3-21
The execution of a CC=N command may take a significant amount of time,
approximately 1 second.
Reference chapter in the SimplIQ Software Manual:
Chapter 6, “Program Development and Execution”
Purpose:
Returns the status of the CPU and the database. Call CD if:
The SR report indicates a CPU exception.
The MF report indicates a CPU exception.
An attempt to start the motor returns a “Bad database” error code.
The CD report returns a string similar to the following:
Null Address=0
Failure Address=0
Called Handler=none
Database Status:
Database OK
Sub Processor Status:
0
3-22
where:
“Null Address” is the code address at which a CPU exception occurred. A “0”
indicates a normal condition.
“Failure Address” is the code address at which a stack overflow has occurred. A “0”
indicates a normal condition.
“Called Handler” is the type of CPU exception that occurred. A “none” indicates a
normal condition.
“Database Status” indicates if the recent database check at MO=1 — at power up or
during a save (SV) — revealed a consistent database. “Database OK” indicates the
normal condition.
“Sub Processor Status” indication is relevant only for SimplIQ models supporting an
absolute position sensor (“A” drive type). It indicates if the inquire for position
(single-turn and multi-turn position values) at power up or during another process
causes a communication loss between the two processors or between the drive and
the position sensor. In both cases, the absolute position readout will fail to update.
“-1” - indicates that Absolute encoder setting parameters (AB[] command) were
not initialized by the Composer or drive is in the reset condition
“0” - indicates that the initialization process was passed successfully
“1” - indicates a communication failure during the initialization process. Verify
the hardware connection of the absolute feedback type.
“2” – indicates a time-out response caused most likely by the sub-processor
running in the boot mode.
“3” – absolute sensor type isn't supported by the firmware
“6” – indicates that an absolute position inquire was performed before an
initialization process
“7” – indicates a communication failure between the processors during an
CL[N] - Current Continuous Limitations and
Motor Stuck Protection Parameters
Purpose:
Defines the continuous loading of the drive.
CL[1] defines the maximum allowed continuous motor phase current, in amperes.
This parameter is used to protect the motor from over-current, and the load from
excessive torques. The motor current (torque) command is normally limited to its
peak limit, as defined by PL[1]. After a short period of torque demands higher than
CL[1] (as defined by the PL[2] parameter and equations in the
Manual), the torque command limit is decreased to CL[1]. The torque command
remains limited to CL[1] until the average torque demand falls below 90% of CL[1]
for a few seconds. CL[1] has no effect if CL[1] > PL[1].
CL[2] and CL[3] define how the motor stuck protection is handled. A stuck motor is a
motor that does not respond to the applied current command, due to failure of the
motor, the drive system or the motion sensor.
CL[2] defines the tested torque level as a percentage of continuous current limit CL[1].
CL[3] states the absolute threshold main sensor speed under which the motor is
considered not moving. If the motor is stuck, motion fault MF=2,097,152 (0x200,000) is
set.
If CL[2] < 2, the motor stuck protection is not applied.
For other values of CL[2], the motor is disabled and MF is set to 0x200000 if the motor
current command level exceeds a selected level for more than 3 seconds, without the
result of a significant motor speed, as defined by CL[3].
Index range: [1…3]
Unit modes: All
Activation: Immediate
Example:
If CL[2]=50 and CL[3]=500, the drive will abort (reset to MO=0) with motion fault (MF)
0x200000 if the torque level is kept at at least 50% of the continuous current, while the
absolute value of the shaft speed does not exceed 500 counts/sec for a continuous
3 seconds.
Purpose:
Clears the entire user area in the serial flash memory. The CP instruction must be used
before any attempt to write a new program to the drive.
Attributes: Type: Command, No value
Source: RS-232, CANopen
Restrictions: MO=0, Program isn’t running
Unit modes: All
Activation: Immediate
Notes:
CP command execution may take a significant amount of time.
Writing to the same flash location without setting CP will cause a write failure and
Purpose:
Defines the maximum deceleration in counts/seconds
profiled speed control mode (UM=2, PM=1) and in position point-to-point (PA, PR) and
jogging (JV) motions (UM=3, UM=4 and UM=5). The DC parameter does not affect the
present motion. It is used to plan the next motion, initiated by a BG command.
Attributes: Type: Parameter, Integer
Source: Program, RS-232, CANopen
Restrictions: None
Default values: 20,000,000 (RS), Non-volatile
Range: Deceleration range
Unit modes: UM=2, 3, 4, 5
Activation: BG for RM=0, MO=1 for RM=1
See also:
AC, SP, PA, PR, BG
2
. This parameter is used in
3-27
Reference chapter the SimplIQ Software Manual:
Chapter 12, ”The Position Reference Generator”
Purpose:
Returns the status of the CAN controller as a string in hexadecimal form without a “0x”
prefix. DD is valid only for drives that support CAN controllers.
Call DD if you:
Suspect that the CAN controller is in Bus Off (no communication) mode
Suspect that there are many error frames on the CAN bus
Wish to monitor the CAN controller error activities
The DD command reflects object 0x2082 (refer to the Elmo CANopen Implementation
Guide for more information).
DD value reports:
CAN receiver flag, indicating the following states:
3-28
Overrun
Bus off
Transmitter error
Receiver error
Transmitter warning
Receiver warning
CAN receive error counter, reflecting the status of the MSCAN receive error counter
CAN transmit error counter, reflecting the status of the MSCAN receive error counter
Network status, which may be one of the following values:
1: Disconnected
2: Connected
3: Preparing
4: Stopped
5: Operational
127: Pre-operational
All data is received from the hardware.
Attributes: Type: Status report, String
Overloaded: No
Source: RS-232, CANopen
Restrictions: None
Unit modes: All
Purpose:
Downloads a new firmware version. These commands are designed as part of a sequence
that is normally performed and controlled by the Composer program, which reads the
firmware update file provided by Elmo, and performs a sequence of actions that includes
the DF/DS command.
Notes:
After new firmware is downloaded, the drive reboots. All data stored in
temporary variables in the RAM is lost.
Loading new firmware does not normally affect the non-volatile application
variables in the data flash memory. Downloading a major software revision may,
however, destroy the non-volatile data. The Composer program will warn you of
risks of non-volatile data losses.
The DS command is used for downloading the new firmware version for the
SimplIQ drive’s sub-processor.
3-29
Attributes: Type: Command
Source: RS-232 only
Restrictions: MO=0, Program not running
Unit modes: All
Activation: Immediate
Downloads data to the serial flash memory of the drive. The DL command is used
primarily to download compiled user programs to the drive.
The format of a DL command is:
DL##[hex binary data][esc]checksum]
Notes:
The DL command is normally activated and used by the Composer software. The
command should not be used manually.
The start memory address for downloading is defined by the LP[1] command.
Each data payload is terminated by the 16-bit checksum for the send message.
The DL command automatically clears the Program Ready internal flag.
The DL command takes time to execute because it needs to burn and verify.
3-30
Attributes: Type: Command, String
Source: RS-232
Restrictions: MO=0, Program not running
Unit modes: All
Activation: Immediate
See also:
LS, CC, LP[N]
Reference chapter in the SimplIQ Software Manual: Chapter 6,”Program Development and Execution”
Purpose:
Reports the reference commands to the position, speed and current controllers of the
drive. DV[N] reports the final value of the controller references, as synthesized by all
their sources: software reference generators, external reference inputs and external
control loops.
For UM=1, DV[1] reports the torque command. DV[2] and DV[3] report zero.
For UM=2, DV[2] reports the speed command. DV[1] reports the torque command
derived by the speed controller. The speed command may differ from the desired
speed as specified by the JV command and the analog input, because the filters and
the profiler “smooth the edges” before transferring the desired speed as a speed
command to the speed controller. DV[3] returns zero.
The speed command reported by DV[2] is generated by the sum of an external
analog reference and a software reference. This sum is further processed for
acceleration and speed limiting as well as the switch response. DV[4] and DV[5]
retrieve the external and software components of DV[2].
3-31
For UM=3, 4, 5, DV[1] reports the torque command derived by the speed controller,
DV[3] reports the command to the position controller and DV[2] reports the speed
command, which is the rate of change of DV[3]. The position command may differ
from the desired position as specified by software commands and by superimposed
analog input, because the stop manager may affect the position command to the
controller.
The position command reported by DV[3] is generated by the sum of an external
follower reference and a software reference. This sum is further processed for
acceleration speed limits, as well as the switch response. DV[6] and DV[7] retrieve
the external and the software components of DV[3].
In summary:
DV[1] reports the current command value.
DV[2] reports the velocity command value.
DV[3] reports the position command value.
DV[4] reports the external speed command (0 for RM=0).
DV[5] reports the software speed command.
DV[6] reports the external position command (0 for RM=0).
DV[7] reports the software position command.
When the motor is disabled (MO=0), DV[N] returns zero.
Attributes: Type: Status report, Real
Source: Program, RS-232, CANopen
Restrictions: None
Index range: [1…7]
Unit modes: All
Purpose:
Reports the processing status of the last accepted command that returned an error.
Notes:
When the processing of a command fails, the error code is returned immediately
with a question mark in the response to that command. The error code returned
with the command response is binary, so it may not be easily seen. The EC
command returns a printable (ASCII) value of the error code.
The EC command cannot be used reliably from the Composer Smart Terminal
because the Composer generates continuous communication with the servo drive.
The returned EC value probably reflects the status of the latest Composer
command, not the status of the last Smart Terminal command.
The following table lists the error codes reflected by the EC command.
3-32
Error
Code Error String / Description
2 Bad command.
The interpreter has not understood the
command.
Example / Remedy
XF=2; is an error because there is
no XF command.
MC=2; is an error because the
MC cannot be changed by the
interpreter.
3 Bad index.
Attempt to access a vectored variable out
of its boundaries.
DV[6] is an error because the
index range is 1 - 3.
Observe the index range for the
used command.
5 Has no interpreter meaning.
An unrecognized character has been found
where a command was expected.
A*=3 is an error because a
command mnemonic consisting
of two alphabetic characters was
expected.
6 Program is not running. This command requires a
running program.
7 Mode cannot be started - bad initialization
data.
This error is returned when
preset values of a function are
wrong. For example, there may
be a conflict between the first
index in the PVT table (PV) and
the available write pointer
(MP[6]) when PVT motion
begins.
11 Cannot write to flash memory.
An error interfacing the serial flash has
occurred.
Purpose:
Filters encoder signal in order to improve its noise immunity. Because the logic of the
quadrature decoder must sense transitions, the inputs are first run through a glitch filter.
This filter has a digital delay line that samples four time points on the signal and verifies
that a majority of the samples are at a new state before outputting the new state to the
internal logic. The sample rate of this delay line is programmable, to adapt to a variety of
signal bandwidths.
When an analog encoder is used, the basic signal, before interpolation, is filtered using
the same method.
EF[N] sets the sample rate of the corresponding digital glitch filter: EF[1] for the main
encoder and EF[2] for the auxiliary encoder. A counter increases or decreases to the value
of EF[N]. When the count reaches the specified value, the counter is reset and the filter
takes a new sample of the raw A, B, Index and Home input signals. If EF[N] is zero the
digital filter is bypassed.
3-45
If EF[N] is large, the encoder reading noise immunity will be better, but true fast
transitions (occurring by fast speed) may be dismissed as false. A number that is too
small may cause the counting of noise pulses.
A good value for the required delay of the encoder filter is ¼ of the minimum time
expected between transitions.
Example:
Suppose that the maximum speed of a motor is 10,000 rpm and that the motor is
equipped with an encoder with 1000 lines (4000 counts/rev with resolution
multiplication). The expected minimum encoder transition time is:
60 sec/min
= 1.5 μsec
4000 cpr * 10,000 rpm
The encoder pulse time is calculated as
sec5.1
sec375
n=
: Because of the CPU clock
4
frequency, the minimum required encoder signal stable time should be set to 400 nsec
(i.e. EF[ ] = 3)
The minimum required encoder signal stable time should be set to about:
1.5 μsec
4
≈ 375 nsec
The ranges of encoder frequency filtering are as follows:
Purpose:
Determines the behavior of ECAM (Electronic CAM) motions. With ECAM, the position
reference to the drive is not directly proportional to the summed external inputs, but is
rather a function of them. The ECAM parameters apply only to position modes (UM=3
and 5) and when the position reference is derived from the auxiliary encoder input
(RM=1, FR[3]=non-zero).
Parameter Description
EM[1] Asserts whether the ECAM function is active:
0: Direct eternal follower referencing
1: Active linear ECAM
2: Active cyclical ECAM
Set EM[1] to enter a change in the EM[2], EM[3], EM[4], EM[5] and
EM[7] parameters.
EM[2] Last valid index of the ECAM table.
Maximum value is 1024.
3-47
EM[3] Starting position: the value of the input to the ECAM function for
which the output of the ECAM function will be ET[EM[5]] (ET of
EM[5]).
EM[4] Auxiliary input (ΔPY) distance between consecutive points in the
ECAM table ET[N].
EM[5] First valid index of the ECAM table.
EM[6] Index for the next head pointer when using CAN for fast ECAM table
loading.
EM[7] Last segment shortening. Used to generate an ECAM table with an
input range that is not an integer multiple of EM[4].
EM[8] Read-only report of position in the ECAM table. When ECAM motion is
not active, EM[8] reports 0.
Table 3-14: ECAM Parameters
Notes:
When EM[1]=1 or EM[1]=2, the active ECAM table entries — ET[EM[5]] . . .
ET[EM[2]] — cannot be changed. Other members of the ET[N] array may be
changed.
Parameter EM[6] takes effect immediately.
Parameters EM[2], EM[3], EM[4], EM[5] and EM[7] are activated only when EM[1]
is set. In this manner, the next work segment can be programmed while the
present work segment is executing.
Setting EM[1] to 1 or 2 will fail if EM[2] is less or equal to EM[5], or if EM[4] is less
or equal to EM[7].
Changing the last segment with EM[7] may cause a reference jump.
Purpose:
Sets or resets the communication echo mode, which is used for communication checks.
EO=1 enables echo mode
EO=0 disables it.
With RS-232 communication, the EO command sends an immediate echo character for
every terminal character. The echo transmission is deferred to the command response
string.
Attributes: Type: Parameter, Integer
Source: RS-232
Restrictions: None
Default value: 1, Volatile
Range: [0, 1]
Unit modes: All
Activation: Immediate
Note: Once the EO setting has been changed with a Terminal Program to EO=0, no
Range: [0…20,000,000]
Index range: [2, 3]
Unit modes: UM=2 for ER[2], UM=4, 5 for ER[3]
Activation: Immediate
3-50
The ER[3] value is restricted to modulo settings. The values ranges are:
For UM=5: [0..(XM[2]-XM[1])/4-1]
For UM=4: [0..(YM[2]-YM[1])/4-1]
In case of failure, an error is set during the next motor enabling (MO=1).
Typical applications:
Decrease ER[N] as much as possible in order to use it as a protection mechanism in case
of control failure, as when the feedback signal is lost.
See also:
MF, MO, SR
Reference chapter in the SimplIQ Software Manual:
Chapter 14, ”Limits, Protections, Faults and Diagnosis”
Purpose:
In the ECAM process, the position reference is set to a tabulated function, called the
ECAM function, of the external inputs. The ET[N] vector stores the tabulated values of
the ECAM function.
Attributes: Type: Parameter, Integer
Source: Program, RS-232, CANopen
Restrictions: None (see Notes below)
Default values: 0 (RS), Non-volatile
Range: [(–2
Index range: [1…1024]
Unit modes: UM=3, 4, 5
Activation: Immediate
Notes:
30
+1)…(230 –1)]
3-51
When the motor is enabled (MO=1) and the ECAM table is running (EM[1]=1),
you may manipulate entries that are not in an active part of the table. This
provides an on-the-fly programming of the next motion. Refer to the EM[N]
command for active table descriptions.
With CAN communication, you may program the ECAM table with a fast Auto-
increment mode.
When the ECAM table is not used, ET[N] can be used as a general-purpose
non-volatile memory.
See also:
EM[N], UM, RM
Reference chapter in the SimplIQ Software Manual:
Chapter 12, ”The Position Reference Generator”
Purpose:
Defines how much of the position reference derivative is fed as a reference to the speed
controller.
For most UM=5 applications, FF[2]=1.
For most UM=4 applications, FF[2] is the number of counts traveled by the main
(speed) feedback, while the position (auxiliary) feedback travels one count.
The FF[1] parameter defines the factor with which the second derivative of the position
reference is injected to the torque controller as a direct torque command.
Range: [0.0…32000.00]
Index range: [1, 2]
Unit modes: UM=4, 5
Activation: Immediate
3-52
Examples:
Suppose that a gear motor with a reduction ratio of 5 drives a load. The motor has an
encoder with 1000 lines. The motor speed is used for the inner feedback loop. The load
position, measured by an encoder with 2000 lines, is used as feedback for the outer loop.
To prevent a steady-state error at constant speed, set:
]2[=
=FF.
51000
5.2
2000
See also:
UM
Reference chapter in the SimplIQ Software Manual:
Chapter 11, ”Unit Modes”
FR[1] defines the follower ratio for current (UM=1).
FR[2] defines the follower ratio for velocity (UM=2).
FR[3] defines the follower ratio for position (UM=3, 5).
When UM=1, the auxiliary reference is composed of the analog input and external PWM
signals. The FR[1] parameter scales the ratio between the Duty Cycle of the PWM signal
and the reference to the current loop (UM=1, RM=1). FR[1] may be changed on-the-fly at
any time.
When UM=2, the auxiliary reference is composed of the analog input and the auxiliary
feedback readout or external PWM signal.
FR[2] can be used as a follower ratio of the master motor’s quadrature encoder or as a
follower ratio of the PWM Duty.
3-53
When UM=3 or UM=5, the auxiliary reference is composed of the auxiliary feedback
readout. The FR[3] parameter scales the ratio between the auxiliary feedback position
and the reference to the position loop (UM=3, 4, 5, RM=1, EM[1]=0), or the input to the
ECAM table (UM=3, 4, 5, RM=1, EM[1]=1, 2). FR[3] may be changed on-the-fly at any
time. For EM[1]=0 (follower) and EM[1]=2 (cyclical ECAM), changing FR[3] does not
imply an abrupt change to the external position controller reference. For EM[1]=1 (linear
ECAM), changing FR[3] does imply an abrupt change in the external position controller
reference. FR[3] can be modified while the motor is enabled if the software reference is
not active (MS<1). In such cases the software position reference is corrected to avoid a
possible motor jump.
SimplIQ drives are scheduled according to the controller and the command states. This
may be necessary due to either the difference between the low-speed behavior and the
high-speed behavior of the plant or because the inertia changes with position
dependence. The process of assessing the situation and varying the controller parameters
online accordingly is called “gain scheduling.”
The following table lists the gain scheduling parameters. Unused indices are reserved for
compatibility with older drives.
Parameter Description Values
3-54
GS[0] No encoder count over which speed
0…500
loop is opened
GS[1] Minimum speed command for speed
and dual gain scheduling (counts/sec)
GS[2] Use scheduled gains:
0…16*62*256 internal speed units
(1 speed unit = counts/Ts/2^16)
0, 64
0: No
64: Yes
GS[4] Upward gain of gain scheduling filter 0…32,767
GS[5] Downward gain of gain scheduling
0…32,767
filter
GS[9] NL factor for position controller 0…60,000,000
GS[10] Position error coefficient for position
0…1,200
gain scheduling to raise gains
31
GS[14] Maximum speed error for which KP[N]
0…2
-1
is cleared in speed controller if no
encounter count exceeds GS[0]
GS[15] Gain scheduling step:
0…3
0: 256
1: 128
N: 256/2
N
Table 3-15: Gain Scheduling Parameters
The GS[N] array is normally programmed by the Composer IDE. Manipulate it
Purpose:
Sets the parameters of the main homing and capture process, by which the drive sets a
trap for a user-defined event. When the event occurs, the
Modify a position counter (homing)
Log the exact position of the event (capture)
Flag a digital output (flag)
An event is a change in a digital input signal. The polarity of the change is defined by the
IL[N] command. Values in HM[3] are duplicated for compatibility reasons.
HM[N] (Index) Value Description
SimplIQ can:
3-57
1
Activation mode
2
Absolute value
3
Event definition
0 Disarm homing process. HM[1] is automatically reset to 0
when homing is complete.
1 Arm homing process. The sequence is activated according
to the last HM[2] to HM[6] values. HM[7] and HM[8] are
cleared.
Value to load, according to method of HM[5]. Absolute
value is limited to position counter range.
0 Immediate: Trigger is the receipt of HM[1]=1.
1/2 Event according to Main Home switch (capture).
HM[2]: According to PX command
HM[3]: [0…24 ] (see the first note, above)
HM[4]: [0…2]
HM[5]: [0…2]
HM[6]: According to OP command
HM[7 - 8]:Read only, according to PX, PY
Index range: [1…8]
Unit modes: All
Activation: Immediate
Purpose:
Stops the execution of the user program and the automatic routines. The HP command
freezes the status of the program and does not reset it. A later XC command will resume
the program from the instruction at which the program was halted. Pending interrupts
will remain pending.
An HP command issued when no program is running does nothing and sets no error
code.
Attributes: Type: Command, No value
Source: RS-232, CANopen
Restrictions: None
Unit modes: All
Activation: Immediate
The HP command, together with a later XC command, may be used if a
communicated command sequence must be executed consecutively, without
program interference.
Purpose:
Sets or resets the hexadecimal mode for reporting integer parameter values.
With HX=0, integers are reported as decimal numbers.
With HX=1, integers are reported as hexadecimal numbers.
HX does not affect floating-point reports.
The HX parameter allows easy reading of the digital inputs (IP), servo drive status (SR),
motor faults (MF), recorder settings (RC) and other variables that have the bit-field
attribute.
The HX parameter is not required for setting values. The commands BH=1024 and
BH=0x400 are equivalent, as 0x400 equals its decimal equivalent 1024.
Attributes: Type: Parameter, Integer
Source: RS-232
Restrictions: None
Default value: 0, Volatile
Range: [0, 1]
Unit modes: All
Activation: Immediate
Purpose:
Sets the parameters of the auxiliary homing and capture process, by which the
sets a trap for a user-defined event. When the event occurs, the drive can:
Modify the auxiliary position counter (homing)
Log the exact position of the event (capture)
Flag a digital output (flag)
An event is a change in a digital input signal. The polarity of the change is defined by the
IL[N] command. Values in HY[3] are duplicated for compatibility reasons.
HY[N] (Index) Value Description
SimplIQ
3-62
1
Activation mode
2
Absolute value
3
Event definition
0 Disarm homing process. HY[1] is automatically reset to 0
when homing is complete.
1 Arm homing process. The sequence is activated according
to the last HY[2] to HY 6] values. HY[7] and HY[8] are
cleared.
Value to load, according to method of HY[5]. Absolute
value is limited to position counter range.
0 Immediate: Trigger is the receipt of HY[1]=1.
1/2 Event according to Auxiliary Home switch (capture).
3 High transition of Index pulse (capture).
4 Low transition of Index pulse (capture).
5/6 Event according to defined FLS switch.
7/8 Event according to defined RLS switch.
9/10 Event according to defined DIN1 switch.
11/12 Event according to defined DIN2 switch.
13/14 Event according to defined DIN3 switch.
15/16 Event according to defined DIN4 switch.
17/18 Event according to defined DIN5 switch.
19/20 Event according to defined DIN6 switch.
21/22 Event according to defined DIN7switch.
23/24 Event according to defined DIN8 switch.
25/26 Event according to defined DIN9 switch.
27/28 Event according to defined DIN10 switch.
4
After-event
behavior. Defined
as the time in
which HY[1]
decreases to 0.
0 In UM=2, 3, 4, 5: stop immediately, using SD deceleration
Purpose:
Provides read access to digital input bits.
IB[N] reports the status of the corresponding input bits, according to the definition in IP.
If IB[N] is “1”, the corresponding Nth bit in IP is logically active.
Use the IB[N] command to reference general purpose inputs, limit switches and other
indications (such as Stop, Begin or Enable) individually.
IB[N] may be more convenient than IP for program decisions and branching. However, it
is not appropriate for the synchronized reading of several input bits. If a synchronized
reading of several digital inputs is desired, use the IP command.
Refer to the IP command for more details about the role of each bit.
Attributes: Type: Status report, Integer
Source: Program, RS-232, CANopen
Restrictions: None
Index range: [0…31]
Unit modes: All
3-65
IB[N] reports according to the polarity programmed for the relevant digital input
Purpose:
Gets the active (IQ) and the reactive (ID) components of the motor current, in amperes.
A brushless motor carries alternating currents in its phases. The alternating currents in
the motor phases create a rotating magnetic field, which can be projected in two
directions. The first magnetic field component is aligned with the magnetic direction of
the rotor; it produces no mechanical torque. The other magnetic field component is
perpendicular to the magnetic direction of the rotor and produces all the mechanical
torque.
IQ[Amp] is the component of the motor phase current that creates effective torque. The
current controller attempts to make IQ equal to the current command. ID is the
component of the motor phase current that does not create torque. The current controller
tries to null ID.
When the motor is off (MO=0), IQ and ID are not calculated and return zero.
3-66
Attributes: Type: Status report, Real
Source: Program, RS-232, CANopen
Restrictions: None
Unit modes: All
See also:
AN[N], MC, PL[N], CL[N]
Reference chapter in the SimplIQ Software Manual:
Chapter 10, ”The Current Controller”
Purpose:
Filters the drive digital inputs in order to overcome switch bounding. IF[N] defines a
time period in milliseconds. Input pulses of shorter duration than IF[N] are rejected.
Pulses longer than IF[N] in milliseconds are sensed.
Each index entry [1 - 10] refers to a digital input [1 - 10] respectively. The input filtering is
accomplished by the software. For this reason, in order to ensure that an input pulse is
sensed, its length must be IF[N]+2*TS, where TS is the sampling time.
Example:
If the speed sampling time is 210 microseconds and IF[1]=1, the minimum stable time
for an input change to be sensed is 1050 microseconds (210*5). A pulse must be at least
1 millisecond+2*210 microseconds =1.42 millisecond long in order to ensure that it is
captured by the digital input.
Attributes: Type: Parameter, Float
Source: Program, RS-232, CANopen
Restrictions: None
Default values: 0 (RS), Non-volatile
Range: [0…1000] msec
Index range: [1…10] … refer to the first note
Unit modes: All
Activation: Immediate
3-67
Notes:
Elmo drives supports a different number of digital inputs. Accordingly, the index
range may differ between drives. Please consult the drive’s Installation Guide for
information about its digital inputs.
If input 5 or 6 is used as Home input, the corresponding parameter — IF[5] or
IF[6]— does not apply. Parameter EF[1] or EF[2] is used instead.
The IF[N] commands can also be applied in simulation mode.
Purpose:
Defines the logic level and functional behavior of the digital inputs. The drive has several
non-committed digital inputs. Each of these inputs can be programmed to a specific
function and logic level. In addition, the IL[N] function enables the simulation of a digital
input. This option is convenient for testing and debugging user programs.
A digital input serves only one dedicated function, which can be reflected in the
following commands/features:
User program auto routine (#@AUTO_##)
Homing procedure (HM[N], HY[N])
IP command
IB[N] command
Notes:
3-68
The response to a digital input is made only according to the definition of IL[N].
For example, if digital input #2 is defined by IL[2] as RLS (Reverse Limit switch),
changes in the connector pin of digital input #1 will not be reflected in IB[1]
commands. IB[1] will read continuously zero. In this case, IB[11] will reflect this
input status.
When a digital input is activated, the relevant bit in IP/IB[N] is set. Refer to the IP
and IB[N] commands for more details.
Inputs 5 and 6 also serve as high-speed home/capture inputs, used independently
by the HM[N] and HY[N] commands. The logic level for the home inputs is also
defined by the IL[N] command.
If inputs 5 or 6 are used as home inputs, the corresponding parameters IF[5] and
IF[6] do not apply. The parameters EF[1] and EF[2] are used instead.
The following table summarizes the functions that may be attached to each digital input
pin. The function details are given in the next table. The prefix “Hard” indicates that the
function applies to the stop manager, not to the motion reference generator. The term
“Soft” indicates that the function applies to the motion reference generator. The term
“Hard and Soft” indicates that the function applies both to the stop manager and to the
position reference generator.
Function 0: Inhibit (freewheel)
Servo is off (MO=0). The motor is not under control. No current is applied through the
motor phases. If the motor was previously running, it will continue to coast on its own
inertia. The motor fault code (see the MF command) is 0x10. If the unit mode is UM=1
(torque control) or UM=2 (velocity control) and an external command is active (RM=1), a
motor restart will be attempted when the switch is “not active.” This attempt is made
within a few (no less than 10) milliseconds. In addition, when restarting the motor the
#@AUTO_ENA automatic routine can be activated.
Function 1: Hard stop immediately under control
The function behavior depends on the unit mode:
UM Action
Torque (UM=1) Set torque command to zero.
Speed (UM=2) Set speed command to zero immediately at the deceleration of
the SD parameter.
3-71
Position (UM=3, 4, 5) Slow down to complete stop using the deceleration of the SD
parameter.
Table 3-20: UM Values for Hard Stop
Function 2: Input is ignored
This serves no function in the system and always reads zero in the IP/IB[N] indications.
Function 3: General purpose (GPI)
No special function. Serves as an uncommitted input. The input may be used in the user
program and homing sequences as simple digital input. In addition, general purpose
inputs can activate ##AUTO_DIN automatic routines in the user program.
Function 4: Hard-reverse limit switch
The function activates the ##AUTO_RLS routine in the user program. In addition, it has
the following unit mode dependent actions:
UM Action
Torque (UM=1) Allow only positive torque commands. Negative torque
demands yield zero motor current.
Speed (UM=2) Allow only positive speed command (external or internal). If, at
the time of switch sensing, the speed command was negative,
the speed command will converge to zero using the stop
deceleration (SD).
Position (UM=3, 4, 5) Allow only positive position command increments (external
and internal). If, at the time of switch sensing, the speed was
negative, the position command will decelerate to complete
stop using the deceleration of the SD parameter.
Function 5: Hard-forward limit switch
The function activates the ##AUTO_FLS routine in the user program. In addition, it has
the following unit mode dependent actions.
UM Action
Torque (UM=1) Allow only negative torque commands. Positive torque
demands yield zero motor current.
Speed (UM=2) Allow only negative speed command (internal or external). If,
at the time of switch sensing, the total speed command was
positive, the speed command will converge to zero using the
stop deceleration (SD).
Position (UM=3, 4, 5) Allow only negative position command increments (external
and internal). If, at the time of switch sensing, the speed was
positive, the position command will decelerate to a complete
stop using the deceleration of the SD parameter.
3-72
Table 3-22: UM Values for Hard Forward
Function 6: Begin
The function behaves like a software BG command, activating the ##AUTO_BG routine
in the user program. In addition, it has the following unit mode dependent actions:
UM Action
Torque (UM=1) Nothing.
Speed (UM=2) Set software speed command to JV.
Position (UM=3, 4, 5) Set software position command to the activated motion mode
(PA, JV, PT, PV).
Table 3-23: UM Values for Begin
Function 7: Software Stop
The function behaves like a software ST command, activating the ##AUTO_ST routine in
the user program. In addition, it has the following unit mode dependent actions:
UM Action
Torque (UM=1) Nothing.
Speed (UM=2) Reduce the software speed command to zero, using the
deceleration SD.
Position (UM=3, 4, 5) Set software position command to complete stop, using the
Function 8: Main Home switch
This function activates the ##AUTO_HM routine in the user program. When the function
is selected, digital input connector pin #5 serves as the Home/Capture switch for the
feedback defined as main. Only IL[5] can be programmed to this function. Refer to the
HM[N] command for more information.
Function 9: Auxiliary Home switch
This function activates the ##AUTO_HY routine in the user program. When the function
is selected, digital input connector pin #6 serves as the Home/Capture switch for the
feedback defined as auxiliary. Only IL[6] can be programmed to this function. Refer to
the HY[N] command for more information.
Function 10: Hard and Soft stop
The function activates the ##AUTO_ST routine in the user program. It stops the motor
under control, stopping the response to external reference and applying the software ST
command simultaneously. This function actually activates function 1 and function 7
simultaneously.
3-73
UM Action
Torque (UM=1) Set the torque command to zero.
Speed (UM=2) Reduce the software speed command to zero, using the stop
deceleration SD. Reduce the controller speed command to zero,
using the deceleration SD.
Position (UM=3, 4, 5) Set the software position command to a complete stop, using
the stop deceleration SD. Bring the controller reference
command to a complete stop, using the deceleration SD.
Table 3-25: UM Values for Hard and Soft Stop
Function 11: Abort motion
The behavior is similar to the Inhibit function with the exception that the “Abort” input
release will not start the motor automatically. After the Abort is activated, MO=1 must be
set either by communication or by the internal User Program.
The function activates the #@AUTO_ER routine, if it exists, in the user program.
Notes:
Make sure that the drive you use has the actual digital input that is programmed.
Failing to do so will not
generate an error. Not all drives have the same digital
input entries. Nevertheless no error indication would be given in case a “none
existing” digital input is programmed. For example the
Harmonicadrive has 6
physical digital inputs. An attempt to set IL[10]=8 would not generate an error but
the RLS function would be programmed to the drive
Use the Inhibit freewheel function with care. When the drive is shut, the motor
applies no torque. Turning off a drive might leave the motor spinning until it
stops by friction. In some situations, this may be dangerous.
When a switch is released, the attached function terminates. Functions 2, 3 and 4
(Full Stop, RLS and FLS) do not change the drive reference command. When the
switch is released, the reference command (speed or position) is recovered. In
order to ensure that reference recoveries do not generate discontinuities, the SD,
VL[2] and VH[2] limits are used.
IP and IB[N] can be used to detect a logically active switch of all defined functions,
Purpose:
Reports an active or non-active state of a digital input. A digital input is considered to be
active when the associated function is logically active. The functionality and logic levels
are defined in the IL[N] command.
IP logic is always positive. When the digital input is active, the relevant IP bit is set.
The report is a bit-field, defined in the following table:
Each type of Elmo drive supports a different number of digital inputs. Please
consult the drive’s Installation Guide for more information about its inputs.
For compatibility reason inputs 7-10 do not have an indication for the “General
Purpose” function and cannot be used for user program AUTO routine as well.
Bits 22-25 will still be set regardless to the above.
The logical state of digital input pins 1 to 10 — as indicated in bits 16 to 25 — is
reflected in the logic level required in the relevant IL[1] to [10], respectively. IB[N]
may be more convenient than IP for user program decisions and branching.
However, it is not recommended for the synchronized reading of several input
bits. If such a reading is needed, use the IP command.
Attributes: Type: Status report, Integer
Source: Program, RS-232, CANopen
Restrictions: None
Unit modes: All
Purpose:
Sets the motor speed. In speed control mode (UM=2), the JV parameter specifies the
software speed command. In un-profiled mode (PM=0), the speed command is set to JV
immediately. In profiled mode (PM=1), the speed command is gradually changed to JV,
according to the AC, DC and SF parameters.
In the position control modes (UM=4, 5), the JV setting defines a constant speed software
command. The value of JV defines the speed of the motion.
The parameters AC, DC and SF determine the acceleration limits for reaching final speed.
In position-jogging mode (JV), and if the position feedback sensor is set to modulo
counting (refer to XM[N] and YM[N]), a position-controlled motor can rotate forever. The
position reading will jump each modulo count according to the last modulo setting, but
the speed will remain steady.
Notes:
3-77
Jog mode is recommended for homing procedures, because it does not require
information about starting position or destination.
In position mode (UM=4, 5), a jogging command is under position control. The JV
parameter determines the rate at which the position command changes.
In stepper mode (UM=3), JV determines the rate at which the electric angle
command changes.
In position control mode (UM=3, 4, 5), JV not only sets the speed of motion but it
also states that the next motion will be a constant speed jog.
For all relevant modes (UM=2, 4, 5), the value of JV must be set between VL[2] and
VH[2]. Setting JV out of this range will invoke an “Out of limit” error code.
Purpose:
Specifies the parameters of the gain scheduled speed or position controller. The KG[N]
parameters apply only if the controller gains are scheduled (GS[2]=64).
The following table details the use of the KV[N] parameters array:
Index KG[N] Value Length
0 Reserved 1
[1…63] KI for inner loop 63
[64…126] KP for inner loop 63
[127…189] KP for outer loop 63
[190…252] GSIndexTable table 63
[253…315] Parameter 1 for scheduled advanced filter 63
[316…378] Parameter 2 for scheduled advanced filter 63
3-78
[379…441] Parameter 3 for scheduled advanced filter 63
[442…504] Parameter 4 for scheduled advanced filter 63
Table 3-27: KG[N] Gain Scheduled Controller Parameters
KI[1], KP[1] defines the PI current control filter.
KI[2], KP[2] defines the PI velocity control filter.
KP[3] defines the gain of the position controller.
The parameters KP[2], KI[2] and KP[3] apply only if the controller gains are fixed (gain
scheduling is not used: GS[2]=0).
Purpose:
Halts program execution and stops the motor. The KL command stops the execution of
the user program threads and automatic routines. It also issues the MO=0 motor disable
command. KL freezes the status of the program and does not reset it. A later XC
command will resume the program from the instruction at which the program was
halted. Pending interrupts will remain pending.
A KL command issued when no program is running does nothing, and sets no error
code.
Attributes: Type: Command, No value
Source: RS-232, CANopen
Restrictions: None
Unit modes: All
Activation: Immediate
3-80
If the motor is on when KL is used, using XC to continue the program may fail,
because the interrupted program expects the motor to be on, and it may use
commands that are restricted to the MO=1 state.
Purpose:
Specifies the parameters of the following filters:
Filter Parameters Maximum Order
Speed controller high-order filter KV[0]…KV[47]
Position controller high-order filter KV[48]…KV[75]
Analog position sensor filter KV[76]…KV[87] Order 4 (2 blocks)
Analog reference to speed controller KV[88]…KV[99] Order 4 (2 blocks)
Table 3-28: KV[N] Filter Partitions
The KV[0] parameter defines whether or not the speed controller high-order filter is used:
If KV[0]=0, the high-order filter is not used.
If KV[0]=100, the high-order filter is defined by the rest of the KV[N] parameters.
3-81
Similarly, KV[48]=0 deactivates the position controller high-order filter, KV[76]=0
deactivates the analog position sensor filter, and KV[88]=0 deactivates the filtering of the
analog reference to the speed controller.
The KV[N] array specifies almost arbitrary linear filters. To learn how the KV[N]
parameters specify a filter and to see a programming example, refer to the “Filters”
chapter of the
SimplIQ Software Manual.
Attributes: Type: Parameter, Integer
Source: Program, RS-232, CANopen
Restrictions: MO=0
Default values: RS=0
Range: Previous text
Index range: [0…99]
Activation: MO=1
Purpose:
Reports the status of the current limiting process. You may select two different current
limit specifications: The peak limit PL[1] specifies how much current can be applied to
the motor for short time periods (PL[2]) and the continuous limit CL[1] specifies how
much current can be applied to the motor continuously.
LC returns values according to the following table:
Value Description
0 The motor current is limited to the limit PL[1], or the motor is off.
1 The motor current is limited to the continuous limit CL[1].
Table 3-29: LC Return Values
Attributes: Type: Status report, Integer
Scope: Program, RS-232, CANopen
Restrictions: None
Unit modes: All
Purpose:
Loads all non-volatile variables from the flash memory to the RAM and resets all volatile
variables to their default values.
Before accepting the loaded parameters, LD tests them as follows:
The variables written in the flash memory can be read. The variables cannot be read if
the flash memory is brand new and no parameters have ever been saved in it, or after
a major firmware update.
The variables in the flash memory are all in their permitted range. This test should
not fail, as the legality of all variables is tested prior to saving.
If any of these tests fail, the contents of the flash are ignored and all non-volatile variables
are set to their factory default (RS) states.
Certain exceptional variables are not reset by the LD command. The communication
(PP[N]) parameters are retrieved from the flash memory, but are not set into action. The
parameter PP[1] retains its old values in order to ensure communication continuity. The
newly-loaded RS-232 communication parameters may be activated by PP[1]=1, and the
new CAN parameters are activated by a “Communication Reset” NMT message.
3-83
The LD command may take a few milliseconds to perform, because it completely
recalculates the drive database. At this time, the communication routines are
disabled. If an LD command is executed by an RS-232 command, a CAN message
may be lost in the meanwhile, and vice versa.
Attributes: Type: Command, No value
Source: RS-232, CANopen
Restrictions: MO=0, Program not running
Unit modes: All
Activation: Immediate
If an LD command fails, CD will report the reason for the failure by adding the
string “Couldn’t load from serial flash” followed by the reason for the failure.
The Save() function used within a User Program does not check the integrity of the
The parameters LL[2] and HL[2] define the limits of the allowed motor speed. If the
motor speed exceeds HL[2] or is lower than LL[2], the drive is automatically disabled
and the “Speed High Limit” fault (MF=0x20,000) is activated Speed limits are
restricted by the TS value according to the following:
For analog encoder, resolver, tachometer, potentiometer and digital halls: SpeedLimit = minimum between 80,000,000 and 8e9/TS.
For quadrature encoder:
SpeedLimit = minimum between 20,000,000 and 8e9/TS.
Position limits
LL[3] and HL[3] define the allowed motor position range for UM=3, 4 and 5. If the
motor position is smaller than LL[3] or larger than HL[3], the motor is automatically
disabled and the “Position High Limit” fault (MF=0x400000) is activated. In order to
re-enable the motor, modify the current position (PX) within the ranges of HL[3] and
LL[3].
3-84
Attributes: Type: Parameter, Integer
Source: Program, RS-232, CANopen
Restrictions: MO=0 and
For LL[2] and HL[2]: HL[2]>LL[2]
For LL[3] and HL[3]: HL[3] >LL[3]
Default values: LL[2]=-1,000,000
HL[2]=1,000,000
LL[3]=-15,000,000,000
HL[3]=15,000,000,000
(RS), Non-volatile
Range: LL[2]: Velocity range
HL[2]: Velocity range
-2
-2
31
<LL[3] <231 – 1
31
<HL[3] <231 – 1
Index range: [2, 3]
Unit modes: HL[2], LL[2]: UM=2, 3, 4, 5
HL[3], LL[3]: UM=3, 4, 5
Activation: Immediate
Note: The position counter is subject to a modulo count; refer to position counter
range.
See also:
VL[N], VH[N], MF, SR, MO, XM[N]
Reference chapter in The
SimplIQSoftware Manual:
Chapter 14, ”Limits, Protections, Faults and Diagnosis”
Purpose:
Sets the properties of the serial flash data upload and download by the next LS and DL
commands.
LP[1] sets the start byte address of the next LS transmission, or the byte address for
starting the storage of the next DL transmission.
LP[2] sets the size — in bytes — to be transmitted at the next LS.
LP[3] returns the start byte address of the user program (read only).
LP[4] returns the size of the user program storage (read only).
Attributes: Type: Parameter, Integer
Scope: RS-232, CANopen
Restrictions: None
Default values: LP[1] and LP[2] set to 0 on power on
Range: LP[1]: [0…262,144]
LP[2]: [0…247]
Index range: [1…4]
Unit modes: All
Activation: Immediate
Purpose:
Uploads data from the serial flash to the host, according to the parameters of LP[N]. The
most common use of LS is to retrieve the user program and to retrieve the personality
(firmware partition) data of the drive.
LS begins to send data from the byte address of LP[1] in the serial flash memory. The
length of the transmitted data is LP[2] bytes.
The format of the LS message is:
[data payload][esc][checksum]
where:
The data payload is in the hex-binary format.
esc is the 0x1b (27 decimal) character.
The checksum is calculated for 16 bits in 2’s complements.
3-86
Use the LS command with care because it is not entirely “safe”: while the program
listing uploads to the communication lines, no program instructions are executed,
and no communicated commands are interpreted.
Attributes: Type: Command, No value
Source: RS-232
Restrictions: None
Unit modes: All
Activation: Immediate
See also:
CC, DL, LP[N]
Reference chapter in the
SimplIQSoftware Manual:
Chapter 6, “Program Development and Execution”
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.