BIAS Command
BIAS Command
BIAS - Command
Software
Manual
10-06-05-E-V0304.doc
Further descriptions,
that relate to this document:
Further descriptions, that relate to this document:
UL: 07-01-08-02
Product manual 631
UL: 07-01-05-06
Product manual 635
UL: 07-02-08-03
Product manual 637
UL: 07-02-09-01
Product manual 637+
UL: 07-02-10-01
Product manual 637f
CD -ROM:
EASYRIDER® Windows - Software
SSD Drives has registered in part trademark protection and legal protection of designs.
The handing over of the descriptions may not be construed as the transfer of any rights.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Safety precautions
We assume that, as an expert, you are familiar with the relevant safety regulations,
especially in accordance with VDE 0100, VDE 0113,VDE 0160, EN 50178, the accident
prevention regulations of the employers liability insurance company and the DIN
regulations and that you are able to use and apply them.
As well, relevant European Directives must be observed.
Depending on the kind of application, additional regulations e.g. UL, DIN are subject to be
observed.
If our products are operated in connection with components from other manufacturers,
their operating instructions are also subject to be observed strictly.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
With the softwareversion 5.10 you have the possibility in the drives of the 630 series to program in the
additional command groups 10 - 12 mathematical operations. i.e. to calculate online the synchronous
profiles.
For further information see motion control manual (UL:10.6.7)
With these commands you will be able to program the required machine process in chains of steps
The size of a program is limited to a maximum of 1500 BIAS commands
The designing of the programs occurs with EASYRIDER software at the PC and can be transmitted into the
servo drive via serial communication.
If you create the BIAS program with the EASYRIDER shell, jump labels, comments and a unit for the
position presettings are provided.
A further possibility is programming or transmitting and controlling the BIAS program via a field bus
respectively.The nesseccary command coding is listed in the command instruction.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Alternatively, move commands are started when the start identifier is set before the move command, via the
BIAS command ”Start axis”.
The following blocks will be processed after a successful start.
If the command, ”Wait for “position reached”” follows a move command, block processing will only be
continued after the target position is reached.
Drive type Trajectory cycle
631/635/637 1,899ms
637+/637f 0,844ms
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programlisting
* ***********************************************************************
* !!! Attention !!!
* The program leads to automatic movements of the axis!
PROG_START:
0 Actual position 1 = 0 INCR
* ***********************************************************************
* Definition of the movement profile for the 1st positioning
1 Acceleration = 5000 rpm/s
* Definition of the acceleration ramp a+
2 Speed = 100 rpm
* Definition of the maximum speed v
3 Deceleration = 2500 rpm/s
* Definition of the deceleration ramp a-
4 Position = 16384 INCR
* Definition of the 1st target position in increments
* ***********************************************************************
5 Start axis
* Give start permission (set start mark)
6 Move position, axis no.= 0, target = 0
* start 1st positioning as absolute positioning
* ***********************************************************************
7 Wait for “position reached”
* interrupt BIAS-execution until reaching the target position
8 Wait time 1000 ms
* waiting time (t1) of 1000 ms
* ***********************************************************************
* Definition of the movement profile for the 2nd positioning
9 Position = 0 INCR
* Definition of the 2nd target position, the definitions for the acceleration ramp, the maximum speed
* and/or the deceleration ramp are not changed, so they retain their values and validity
* ***********************************************************************
10 Start axis
* Give start permission (set start mark)
11 Move position, axis no.= 0, target = 0
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programlisting
* *********************************************************************
* !!! Attention !!!
* The program leads to automatic movements of the axis!
* ***********************************************************************
PROG_START:
* Starting point of the BIAS-Program after every activation of the power stage
* ***********************************************************************
* Definition of the movement profile for the 1st positioning
0 Acceleration = 5000 rpm/s
* Definition of the acceleration ramp a+
1 Deceleration = 2500 rpm/s
* Definition of the deceleration ramp a-
START_POS:
2 Speed = 1000 rpm
* Definition of the maximum speed v1
3 Position = 100000 INCR
*…..Definition of the 1st target position in increments (high resolver resolution ca. 6.1 motor revolutions)
4 Start axis
* Give start permission (set start mark)
5 Move incremental, axis no.= 0, target = 0
* start 1st positioning as relative positioning
* ***********************************************************************
6 Wait for position reached
* interrupt BIAS-execution until reaching the target position
7 Wait time 1000 ms
* waiting time (t1) of 1000 ms
* ***********************************************************************
* Definition of the movement profile for the 2nd positioning
8 Position = 32700 INCR
* Definition of the 2nd target position (high resolver resolution circa 2 motor revolutions)
9 Speed = 250 rpm
* Definition of the maximum speed v2
10 Start axis
* Give start permission (set start mark)
11 Move incremental, axis no.= 0, target = 0
* start 2nd positioning as relative positioning
12 Wait for “position reached”
* interrupt BIAS-execution until reaching the target position
* ***********************************************************************
13 Jump START_POS
* Continue BIAS-execution at the label ”START_POS”
* ************************************************************************
________________________________________________________________________________________________________________________________________________________________________________________________________________________
1 = reference sensor
P1 = reference position
P2 = target position 1
P3 = target position 2
Programlisting
* *********************************************************************
* !!! Attention !!!
* The program leads to automatic movements of the axis!
* Required inputs for the unit " mm" at BIAS-program definitions
* Unit (Drive):
* cog count output drive = 100; cog count input drive = 100 (gear factor 1:1)
* high resolver resolution =Y (16384 increments / motor revolution)
* distance per output turn = 1.25 (gradient of the spindle)
* displayed text for unit = mm
* ***********************************************************************
PROG_START:
* Definition of the movement profile for the reference run
0 Acceleration = 2000 rpm/s
1 Deceleration = 2000 rpm/s
2 Start axis
3 Move datum, mode = 11, v = 100 rpm, s = 0 mm
4 Wait for position reached
* ***********************************************************************
Pos_Loop:
* Definition of the movement profile for the 1st positioning P2
5 Acceleration = 25000 rpm/s
6 Deceleration = 15000 rpm/s
7 Move position; v = 2500 rpm, s = 25 mm
* start permission is given via the low-high slope X10.11
8 Wait for “position reached”
* 1st positioning ended
* ***********************************************************************
* Definition of the movement profile for the 2nd positioning P3
9 Acceleration = 5000 rpm/s
10 Deceleration = 5000 rpm/s
11 Move position; v = 1500 rpm, s = 125 mm
12 Wait for “position reached”
* 2nd positioning ended
13 Jump Pos_Loop
* ***********************************************************************
________________________________________________________________________________________________________________________________________________________________________________________________________________________
1 = reference sensor
P1 = reference position
P2 = target position 1
P3 = target position 2
Programlisting
* *********************************************************************
* !!! Attention !!!
* The program leads to automatic movements of the axis!
* Required inputs for the unit " mm" at BIAS-program definitions
* Unit (Drive):
* cog count output drive = 100; cog count input drive = 100 (gear factor 1:1)
* high resolver resolution =Y (16384 increments / motor revolution)
* distance per output turn = 1.25 (gradient of the spindle)
* displayed text for unit = mm
* ***********************************************************************
PROG_START:
* Definition of the movement profile for the reference run
0 Acceleration = 2000 rpm/s
1 Deceleration = 2000 rpm/s
2 Start axis
3 Move datum, mode = 11, v = 100 rpm, s = 0 mm
4 Wait for position reached
* ***********************************************************************
Pos_Loop:
* Definition of the movement profile for the 1st positioning P2
5 Acceleration = 25000 rpm/s
6 Deceleration = 15000 rpm/s
7 Move position; v = 2500 rpm, s = 25 mm
* start permission is given via the low-high slope X10.11
8 Wait for “position reached”
* 1st positioning ended
* ***********************************************************************
* Definition of the movement profile for the 2nd positioning P3
9 Acceleration = 5000 rpm/s
10 Deceleration = 5000 rpm/s
11 Move position; v = 1500 rpm, s = 125 mm
12 Wait for “position reached”
* 2nd positioning ended
13 Jump Pos_Loop
* ***********************************************************************
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programmlisting
* *********************************************************************
* !!! Attention !!!
* necessary I/O-configurations (BIAS-program definition configuration)
* input X10.11 function 3 (BIAS-input 11)
* Configure X40-connector with function 1 (incremental input)
* X40-resolution depending the external encoder (8192 increments / revolution)
* *********************************************************************
PROG_START:
0 If 11 == 0 then jump PROG_START
1 Position = 0 INCR
* Additional synchron function ”format check” deactivated
1 Start axis
2 Move synchron, gear factor = 0.5
∆s1 ∆s2 s2 4096
= =
* Requirement: ∆t ∆t ; s1 = 8192; s2= 4096; gear factor = s1 8192 = 0,5
MOVE:
3 If input 11 == 1 then jump MOVE
4 Stop axis, mode = 1 a- = 5000 rpm /s
5 End of program, mode 0
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programmlisting
* *********************************************************************
* !!! Attention !!!
* necessary I/O-configurations (BIAS-program definition configuration)
* input X10.8 function 3 (BIAS-input 8)
* Configure X40-connector with function 1 (incremental input)
* X40-resolution depending the external encoder (8192 increments / revolution)
* *********************************************************************
PROG_START:
0 If 11 == 0 then jump PROG_START
1 Position = 0 INCR
* Additional synchron function ”format check” deactivated
2 Start axis
3 Move synchron, gear factor = 0.5
∆s1 ∆s2 s2 4096
= =
* Requirement: ∆t ∆t ; s1 = 8192; s2= 4096; gear factor = s1 8192 = 0,5
MOVE:
4 If input 8 == 1 then jump MOVE
5 Stop axis, mode = 1 a- = 5000 rpm /s
6 end of program, mode 0
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programmlisting
* *********************************************************************
* !!! Attention !!!
* necessary I/O-configurations (BIAS-program definition configuration)
* input X10.11 function 3 (BIAS-input 11)
* Configure X40-connector with function 1 (incremental input)
* X40-resolution depending the external encoder (8192 increments / revolution)
* *********************************************************************
ProgStart:
0 Act. posit. 1 = 0 INKR
1 Act. posit. 2 = 0 INKR
2 Mode 8 = 1
3 Sub-program Para_Sync
4 Load parameter set 1 = [variable [23 ]] *PointerVa10*
5 If input 11 == 0 then jump ProgStart
6 Start axis
7 Move synchron; axis no. = 1 , target =1 , reference =1
FAHRE:
8 If input 11 == 1 then jump FAHRE
9 Stop axis; mode = 1 ; axis no. = 1
10 Mode 8 = 0
11 End of program, mode = 0
* *
* Parameter set of type 1 for Synchronism *
* *
* *********************************************************************
Para_Sync:
12 [Variable 10 ] = 0 *Start angle*
13 [Variable 11 ] = 0 *Delay Time *
* *********************************************************************
∆s1 ∆s2 s2 4096
= =
* Requirement: ∆t ∆t ; s1 = 8192; s2= 4096; gear factor = s1 8192 = 0,5
* *********************************************************************
* Gear ratio = 0,5 *
* At an external encoder resolution of 4096 Incr *
* *********************************************************************
14 [Variable 12 ] = 4096 *GearNumerat*
15 [Variable 13 ] = 8192 *KopDenomina*
* *********************************************************************
16 [Variable 14 ] = 10000 *MoveAcc *
17 [Variable 15 ] = 10000 *MoveCont *
18 [Variable 16 ] = 10000 *MoceDec *
19 [Variable 17 ] = 10000 *MoveWait *
20 [Variable 18 ] = 0 *CAM_Start_o*
21 [Variable 19 ] = 0 *Cam_Nr *
22 [Variable 20 ] = 10000 *ScalNumerat*
23 [Variable 21 ] = 10000 *ScalDenomin*
24 [Variable 23 ] = 10 *PointerVa10*
25 Flag 0 = 0 *Start_Angle*
26 Flag 1 = 0 *Start_Direc*
27 Flag 2 = 0 *Gear_Trig_o*
28 Flag 3 = 0 *Backstop *
29 Flag 4 = 0 *Clutch_on *
30 Flag 5 = 0 *Ramp_Direct*
31 Flag 6 = 0 *Ramp_Up *
32 Flag 7 = 0 *Ramp_Down *
33 Flag 8 = 0 *Ramp_Wait *
34 Flag 9 = 0 *Move_Linked*
35 Flag 10 = 0 *Merge_Linke*
36 Flag 11 = 0 *Caming_on *
37 Flag 12 = 0 *Stop_Cam *
38 Flag 13 = 0 *Cam_Backsto*
39 Flag 14 = 0 *Res1 *
40 Flag 15 = 0 *Res2 *
41 [Variable 22 ] = flag 0 , number = 16 *Bits , Start_Angle*
42 End of sub-program
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programmlisting
* *********************************************************************
PROG_START:
0 If 11 == 0 then jump PROG_START
1 Gear factor = 1
2 Start axis
3 Move CAM-profile 0
* *********************************************************************
* necessary inputs for cam profile calculation, profile 0
* Necessary inputs for the cam profile calculation, profile 0
* synchr. profile punch =6
* incremental correction =N
* master distance per cycle = 100 mm
* slave distance per cycle = 250 mm
* number of supporting points = 128
* synchronous distance = 25 mm
* *********************************************************************
MOVE:
4 If input 11 == 1 then jump MOVE
5 Stop axis, mode = 1 a- = 5000 rpm /s
6 End of program, mode 0
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programmlisting
* *********************************************************************
PROG_START:
0 If 8 == 0 then jump PROG_START
1 Gear factor = 1
2 Start axis
3 Move CAM-profile 0
* *********************************************************************
* necessary inputs for cam profile calculation, profile 0
* Necessary inputs for the cam profile calculation, profile 0
* synchr. profile punch =6
* incremental correction =N
* master distance per cycle = 100 mm
* slave distance per cycle = 250 mm
* number of supporting points = 128
* synchronous distance = 25 mm
* *********************************************************************
MOVE:
4 If input 8 == 1 then jump MOVE
5 Stop axis, mode = 1 a- = 5000 rpm /s
6 End of program, mode 0
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Programmlisting
* *********************************************************************
* !!! Attention !!!
* necessary I/O-configurations (BIAS-program definition configuration)
* input X10.11 function 3 (BIAS-input 11)
* Configure X40-connector with function 1 (incremental input)
* X40-resolution depending the external encoder (8192 increments / revolution)
* *********************************************************************
ProgStart:
0 Act. posit. 1 = 0 INKR
1 Act. posit. 2 = 0 INKR
2 Mode 8 = 1
3 Sub-program Para_Sync
4 Load parameter set 1 = [variable [23 ]] *PointerVa10*
5 If input 11 == 0 then jump ProgStart
6 Start axis
7 Move synchron; axis no. = 1 , target =1 , reference =1
FAHRE:
8 If input 11 == 1 then jump FAHRE
9 Stop axis; mode = 1 ; axis no. = 1
10 Mode 8 = 0
11 End of program, mode = 0
* *
* Parameter set of type 1 for CAM profile 0 *
* *
* *********************************************************************
Para_Sync:
12 [Variable 10 ] = 0 *Start angle*
13 [Variable 11 ] = 0 *Delay Time *
* *********************************************************************
* Gear ratio = 0,5 *
* At an external encoder resolution of 4096 Incr *
* *********************************************************************
14 [Variable 12 ] = 4096 *GearNumerat*
15 [Variable 13 ] = 4096 *KopDenomina*
16 [Variable 14 ] = 10000 *MoveAcc *
17 [Variable 15 ] = 10000 *MoveCont *
18 [Variable 16 ] = 10000 *MoceDec *
19 [Variable 17 ] = 10000 *MoveWait *
20 [Variable 18 ] = 0 *CAM_Start_o*
21 [Variable 19 ] = 0 *Cam_Nr *
22 [Variable 20 ] = 10000 *ScalNumerat*
23 [Variable 21 ] = 10000 *ScalDenomin*
24 [Variable 23 ] = 10 *PointerVa10*
25 Flag 0 = 0 *Start_Angle*
26 Flag 1 = 0 *Start_Direc*
27 Flag 2 = 0 *Gear_Trig_o*
28 Flag 3 = 0 *Backstop *
29 Flag 4 = 0 *Clutch_on *
30 Flag 5 = 0 *Ramp_Direct*
31 Flag 6 = 0 *Ramp_Up *
32 Flag 7 = 0 *Ramp_Down *
33 Flag 8 = 0 *Ramp_Wait *
34 Flag 9 = 0 *Move_Linked*
35 Flag 10 = 0 *Merge_Linke*
36 Flag 11 = 1 *Caming_on *
37 Flag 12 = 0 *Stop_Cam *
38 Flag 13 = 0 *Cam_Backsto*
39 Flag 14 = 0 *Res1 *
40 Flag 15 = 0 *Res2 *
41 [Variable 22 ] = flag 0 , number = 16 *Bits , Start_Angle*
42 End of sub-program
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Position = const. [Variable X] = position BIAS-execution pointer [Variable X] =flag Y Profile value = [variable X] Save table PLC-program
This command is only This command is only This command is only This command is only This command is only This command is only This command is only permitted in
permitted in the BIAS- task permitted in the BIAS, PLC permitted in the PLC and permitted in the BIAS and permitted in the MATH-Task permitted in the MATH-Task the BIAS and MATH-Task
and MATH-Task MATH-Task PLC -Task
0 1 2 3 4 5 6 7 8 9 A B
[D_Variable X] =
Move position + Position = [Variable X] = [Variable X] = Mathematic Table
0 Move position Position = const. NOP Flag X = const. If input X ? const. [D_Variable Y]+
parameter [variable X] position const. program [[variable X]] = const.
[D_Variable Z]
Move
Move Table [D_Variable X] =
incremental Speed = [Variable X] = If [variable X] ? Profile initialization
1 incremental Speed = const. End of program If flag X ? const. If output X ? const. [[variable X]] = [D_Variable Y] -
position + [variable X] speed const. = const.
position [Y_Variable Z] [D_Variable Z]
parameter
[Variable X] = [D_Variable X] =
Move datum + Acceleration = [Variable X] = Flag X = Profile cycle length [X_Variable Y]= Table
2 Move datum Acceleration = const. Sub- program Output X = const. [variable Y] + [D_Variable Y] *
parameter [Variable X] acceleration flag Y = [variable X] [[variable Z]]
const. [D_Variable Z]
Move infinite [Variable X] = [D_Variable X] =
Move infinite Deceleration = [Variable X] = Flag X = Output X = [Variable X] = [ W_Variable X] =
3 positive + Deceleration = const. End of Sub-program [variable Y] – [D_Variable Y] /
positive [variable X] deceleration input Y flag Y profile value [ Y_Variable Z]
parameter const. [D_Variable Z]
Move infinite
Move infinite Gear factor = [Variable X] = Flag X = [Variable X] = Profile value = [ X_ Variable Y] = If [D_Variable X] ?
4 negative + Gear factor = const. PLC-program _____________
negative [Variable X] gear factor output Y [variable Y] * const. [variable X] const. [D_Variable Y]
parameter
Move Move synchron "Position reached" “Position reached“ [Variable X] = Flag X = [Variable X] = [Variable [X]] = [D_Variable X] =
5 Jump const. _____________ _____________
synchron + parameter window = const. window =[variable X] block number flag Y & flag Z [variable Y] / const. const. SIN {[D_Variable Y]}
Move analogue
Move CAM Remaining position = Remaining position = [Variable X] = Flag X = [Variable X] = [Variable [X]] = [D_Variable X] =
6 value + Jump [variable X] _____________ _____________
profile const. [variable X] actual position Y flag Y | flag Z flag Y [variable Y] COS {[D_Variable Y]}
integrator
[Variable X] =
Synchronous Move speed + Ramp filter = const., Maximal current = [Variable X] = BIAS-Execution Flag X = [Variable [X]] = [D_Variable X] =
7 _____________ [variable Y].bit Z Save table
settings 1 integrator [variable X] [variable X] analogue input Y pointer = const. flag Y ^ flag Z [variable Y] SQRT {[D_Variable Y]}
number
[Variable X] =
Synchronous Actual position X = Actual position X = [Variable X] = Wait for Flag X = IBT- mask number = [Variable X] =
8 _____________ _____________ [variable Y] ? _____________
settings 2 const. [variable Y] latch position Y ”position reached” ! flag Y const. [variable Y]
[variable Z]
[Variable X] =
Move PID; If actual position X Analogue output X = [Variable X] = IBT- notification If [variable X] ?
9 _____________ Wait time = const. Flag X = status Y _____________ [variable Y] ? _____________
speed ? const. [variable Y] actual speed Y number = const. [variable Y]
const.
[Variable X]=
Move PID; Cycle length = If actual position X [Variable X] = Wait time = CAN Command =
A PID scaling If status X ? const. [variable Y] + _____________ _____________ _____________
torque const. ? [variable Y] latch status Y [variable X] [variable X]
[variable Z]
Set point [Variable X] = [Variable X]=
Cycle length = Sensor window = Sensor window = BIAS-execution
B [axis no.] = position Y; Modus X = const. IBT- data transfer [variable Y] - ______________ ____________ _____________
[variable X] const. [variable X] pointer = [variable X]
const. axis no. [variable Z]
Set point Load parameter [Variable X]=
Sensor position = Sensor position = [Variable X] = Jump [var.[X]]; length Flag X = CAN2 Command =
C [axis no.] = set X = [variable Y] * _____________ _____________ _____________
const. [variable X] value Y = const.; from [variable Y] [variable X]
[variable X ] [variable[Y]] [variable Z]
Sensor Sensor [Variable X] = [Variable X]=
[Variable X]. bit[Y] =
D Move relative _____________ adjustment 1 = adjustment 1 = axis status, Execute X commands _____________ [variable Y] / _____________ _____________ _____________
const.
const. [variable X] axis no. Y [variable Z]
Sensor Sensor
If [var. X]. bit Y == [Teachvariable X] =
E Start axis _____________ adjustment 2 = adjustment 2 = _____________ _____________ _____________ _____________ _____________ _____________
const. then jump [variable Y]
const. [variable X]
Stop axis Axis state, axis no.
[Variable X] =
F Stop axis + Update parameter PID parameter _____________ Virtual program X, bit Y = const., _____________ _____________ _____________ _____________
[teachvariable Y]
parameter [flag Z]
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Variable = Parameter
[Variable X] = analogue input Y 47 ; ; ;
[Variable X] = axis status, axis no. Y 4D ; ; ;
[Variable X] = acceleration 42 ; ; ;
[Variable X] =actual speed Y 49 ; ; ;
[Variable X] = speed 41 ; ; ;
[Variable X] = actual position Y 46 ; ; ;
[Variable X] = gear factor 44 ; ; ;
[Variable X] = latch position Y 48 ; ; ;
[Variable X] = latch state Y 4A ; ; ;
[Variable X] = position Y 4B ; ; ;
[Variable X] = set number 45 ; ; ;
[Variable X] = deceleration 43 ; ; ;
[Variable X] = position 40 ; ; ;
[Variable X] = value Y 4C ; ; ;
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
When switching on of the controller, these parameters are pre-loaded with the
settings from EASYRIDER menue “Start-up position controller”.
When using the Multi-Axis-Function with the controller type 637f the parameters
must be pre-loaded over the command “Load parameterset 0 = [variable[X]]“.
Example: Result:
0 Position = 1000 INCR The axis moves 1000 increments on the absolute
1 Start axis position. BIAS processing is continued with the set 4
2 Move position; axis no. = 0 , target = 0 after the position reached.
3 Wait for "position reached"
4....
Note:
• Before the start a valid starting identification is waited for:
a.) preceding the command "Start axis"
b.) Low-High impulse of the Start input X10.11 (X10.9 with the 631)
o 635/ 637/ 637+/ 637f
When using the start input X10.11 the function 0 for the input X10.11 (Start input) is to be
selected in the "input configuration".
o 631
When using the start input X10.9 the function 3 for the input X10.9 (Start input) is to be
selected in the configuration.
• The momentary set position can be determined with the BIAS command [Variable X] = position 1.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
00 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
To the generation of move curve always apply the last adjusted parameters for:
Position, Acceleration, Speed, Deceleration, Ramp filter
When switching on of the controller, these parameters are pre-loaded with the
settings from EASYRIDER menue “Start-up position controller”.
When using the Multi-Axis-Function with the controller type 637f the parameters
must be pre-loaded over the command "Load parameter set 0 = [Variable[X]]".
Example: Result:
0 Position = 1000 INCR The axis moves 1000 increments.
1 Start Axis BIAS processing is continued with the set 4 after
2 Move incremental position; axis no. = 0, target = 0 the position reached command.
3 Wait for "position reached"
4....
Note:
• Before the start a valid starting identification is waited for:
a.) preceding the command "Start axis"
b.) Low-High impulse of the Start input X10.11 (X10.9 with the 631)
o 635/ 637/ 637+/ 637f
When using the start input X10.11 the function 0 for the input X10.11 (Start input) is to be
selected in the configuration.
631 o
When using the start input X10.9 the function 3 for the input X10.9 (Start input) is to be
selected in the configuration.
• The target position can be determined with the BIAS command [Variable X] = position 2 .
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
01 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
After switching the drive on these parameters are initialized with the values
of the tuning position loop menu.
Example: Result:
0 Position = 4000 INKR The axis moves in the positive direction to the Low-High
1 Start axis slope of the reference sensor and then the zero point of
2 Move datum, mode 16 the encoder.
3 Wait for "position reached"
4 ....
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input
X10.9 in the configuration.
• 631
When using the reference sensor for one of the inputs (X10.8, X10.9 or X10.10) the function 1
(reference sensor) has to be selected in the configuration.
Mode = 24, the reference bit (and the output initialized) are set immediately.
Mode =192, the value of the specified variable is used as encoder zero point shift.
Attention: With this mode the axis do not start. The offset is calculated only after a new
Move datum command with the mode encoder zero point.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
02 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
The setpoint calculation always uses the last defined parameters of:
"Position", Acceleration, Speed, Deceleration, Ramp filter
After switching the drive on these parameters are initialized with the values
of the tuning position loop menu.
At using the multi axis functions by the drive 637f the parameters must
loaded with the command “Load parameter set 0 = [variable [X]]“.
Example: Result:
0 Speed = 1000 rpm The axis moves 1s in positive direction.
1 Start axis
2 Move infinite positive, axis no. = 0, target = 0
3 Wait time 1000 ms
4 Stop axis; mode 1
5 ....
Note:
• The command "Start axis" before the move command
b.) low-high impulse of the start input X10.11 (X10.9 on 631)
o 635/ 637/ 637+/ 637f
When using the start input X10.11 the function 0 (start input) has to be selected in the
configuration
o 631
When using the start input X10.9 the function 3 (start input) has to be selected in the
configuration.
• Speed changes can be carried out during the run with the command "Update parameter".
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
03 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
• Before the start a valid starting identification is waited for:
a.) preceding the command "Start axis"
b.) Low-High impulse of the Start input X10.11 (X10.9 with the 631)
o 635/ 637/ 637+/ 637f
When using the start input X10.11 the function 0 for the input X10.11 (Start input) is to be
selected in the "input configuration".
o 631
When using the start input X10.9 the function 3 for the input X10.9 (Start input) is to be
selected in the configuration.
• Speed changes can be carried out during the run with the command "Update parameter".
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
04 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Attention:
It is not permitted to select the setpoint
of the specified axis as reference.
At using the multi-axis functions at the drive 637f the parameter must load with the
command “Load parameterset X = [variable[Y]]“.
• The gear ratio can change with the command "Gear factor =" during a synchronous move command
• The command "Cycle lenth =" placed before the move command defines the length of the format.
Code D1 D2 D3 D4 D5 D6 D7
05 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Further information about the synchronous profile function of the 630 Series
Note:
• Before starting a valid start command has to be encountered by either:
• The command "Start axis" before the move command
low-high impulse of the start input X10.11 (X10.9 on 631)
a. 635/ 637/637+/637f:
When using the start input X10.11 the function 0 (start input) has to be selected in the
configuration.
b. 631
When using the start input X10.9 the function 3 (start input) has to be selected in the
configuration.
• The command "Gear factor =" placed before the move command defines a scaling of the master
cycle length (resulting master cycle length = calculated master cycle length * Gear factor)
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
06 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Synchronous settings 1.; mode=0; offset=[var.0]; start offset=[var.0]
Note:
• The following functions are possible with the parameter mode:
1. No function
Code D1 D2 D3 D4 D5 D6 D7
07 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Mode = 1 Value = 0..500 Phase shift on slave axis offset, adjust speed as % of the actual
synchron speed
Mode = 2 Value = 0..65535 Phase shift on slave axis offset, adjust speed in increments per sampling
cycle
Note:
• If no mode is set or the values are zero, the default offset adjust speed is offset/256, that
means in 512 msec the new offset will be adjusted.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Mode = 9 Value = 0 At the end of the synchron profile the actual defined profile is
only 637f continoused.
Value = 1 The synchronism is finished at the end of the synchron profile.
Mode = 10 Value = 1 With this mode it is possible to save all parameters and values of the
only 637f synchronous move during a stop or deactive state.
At a restart the synchronism is activated with the stored parameters.
During a stop or deactive state the incomming increments of the master
are ignored.
Value = 0 Disables mode 10, stored synchronous parameters are ignored.
Mode = 11 Value = 1 The overwriting of the master cycle length is not allowed, if an absolute
only or relative move command is called during a synchron move
631/635/637 (The command “Position = “ overwrites the cycle lenght.)
Mode = 12 Value = 0 The scale out function is switched off.
only 637f
Value = 1 The scale out function is enabled.
The scaling factor can adjusted during the sychronism.
Variable 250 = numerator
Variable 251 = denominator
Mode = 13 Value = 0 The reverse rotation of the master over a format change is not checked.
only 637f
Value = 1 The reverse rotation to the format change is checked or is permitted.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
08 X Y Z(low) Z(high) 00 00 00
Parameters: D1 = Linear: 0, 1
D2 = Mode: 0-255
D3, D4 = Value: 0 - 65535
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Ergebnis:
PROG_START:
0 [Variable 0 ] = 200 * P-Gain 200/4096=0.048
1 [Variable 1 ] = 100 * Integration-Time 100*1.89 msec=189 msec
2 [Variable 2 ] = 3 * Derivative Time 3*1,89msec=5,67mSec
3 [Variable 3 ] = 0 * Filtertimeconstant
4 [Variable 4 ] = 500 * PID Output limit high
5 [Variable 5 ] = -1000 * PID Output limit low
6 PID parameter ; start=[variable 0 ] * load PID Parameters
7 [Variable 6 ] = 2500 * Scaling Setpoint numerator
8 [Variable 7 ] = 2500 * Scaling Setpoint denominator
9 [Variable 8 ] = -2500 * Scaling actual value numerator
10 [Variable 9 ] = 2500 * Scaling actual value denominator
11 [Variable 10 ] = 18000 * Scaling PID Output numerator
12 [Variable 11 ] = 100 * Scaling PID Output denominator
13 PID scaling; start=[variable 6 ] * Overtake Scalings
* Start execution PID , output = speed setpoint
14 Start axis
15 Move PID; speed; set value= 4 , act. value=0, mode=7 * Setpoint =Variable 254 =0, Actual value
Loop: =ana.in.1,PID enable,I enable, Feed Forward
16 Jump Loop on.
Note:
• Before starting a valid start command has to be encountered by either:
a.) the command "Start axis" before the move command, or
o 631
When using the start input X10.9 the function 3 (start input) has to be selected in the
configuration.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Setpoint X Explanation:
0 Analogue input 1 (± 10V = ± 2047)
1 Analogue input 2 (± 10V = ± 2047)
2 Actual speed 1 intern
3 631/635/637 637+/637f
Act. speed 2 Act. speed 2
(increments /1,899 ms) (increments /0,844 ms)
4 BIAS-variable 254
Actual Explanation
value Y
0 Analogue input 1 (± 10V = ± 2047)
1 Analogue input 2 (± 10V = ± 2047)
2 Actual speed 1 intern
3 631/635/637 637+/637f
Act. speed 2 Act. speed 2
(increments /1,899 ms) (increments /0,844 ms)
4 BIAS-variable 255
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
PROG_START:
0 [Variable 0 ] = 200 * P-Gain 200/4096=0.048
1 [Variable 1 ] = 100 * Integration-Time 100*1.89 msec=189 msec
2 [Variable 2 ] = 3 * Derivative Time 3*1,89msec=5,67mSec
3 [Variable 3 ] = 0 * Filtertimeconstant
4 [Variable 4 ] = 500 * PID Output limit high
5 [Variable 5 ] = -1000 * PID Output limit low
6 PID parameter ; start=[variable 0 ] * load PID Parameters
7 [Variable 6 ] = 2500 * Scaling Setpoint numerator
8 [Variable 7 ] = 2500 * Scaling Setpoint denominator
9 [Variable 8 ] = -2500 * Scaling actual value numerator
10 [Variable 9 ] = 2500 * Scaling actual value denominator
11 [Variable 10 ] = 18000 * Scaling PID Output numerator
12 [Variable 11 ] = 100 * Scaling PID Output denominator
13 PID scaling; start=[variable 6 ] * Overtake Scalings
* Start execution PID, output = speed setpoint
14 Start axis
15 Move PID; torque; setpoint=4, act. value=0, mode=7 * Setpoint =Variable 254 =0, Actual value
Loop: =ana.in.1, PID enable, I enable, Feed Forward on.
16 Jump Loop
Note:
• Before starting a valid start command has to be encountered by either:
a.) the command "Start axis" before the move command, or
o 631
When using the start input X10.9 the function 3 (start input) has to be selected in the
configuration.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Setpoint X Explanation
0 Analogue input 1 (± 10V = ± 2047)
1 Analogue input 2 (± 10V = ± 2047)
2 Actual speed 1 intern
3 631/635/637 637+/637f
Act. speed 2 Act. speed 2
(increments /1,899 ms) (increments /0,844 ms)
4 BIAS variable 254
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Set position [axis no.1] = 10000 INCR The set position of the axis 1 is loaded on 10000
increments.
Note:
• This command is available with the 637f starting from the firmware V8.19
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
0B X Y(low) Y(high 00 00
)
Parameters: D1 = Axis 1 - 3
D2-D5 = Constant +/- 231
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 [Variable 0] = 10000 The set position of the axis 1 is loaded on 10000
1 Set position [axis no.1] = [variable 0] increments.
Note:
• This command is available with the 637f starting from the firmware V8.19
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
0C X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result
0 [Variable 10 ] = 100000 Starting from the momentary set position the axis
1 [Variable 11 ] = 1000 moves on with the speed 1000 for 100000 increments.
2 [Variable 12 ] = 4000
3 [Variable 13 ] = 4000
4 [Variable 0 ] = 10
5 Load parameter set 0 = [variable [0]]
6 Start axis
7 Move relative; axis no. = 1 , target = 1
Note:
• This command is available with the 637f starting from the firmware V8.19
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
0D X Y 00 00 00 00 00
Parameters: D1 = Axis number: 1-3
D2 = Target: 1...15
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Start axis" places the start mark for the following move
command. With this command a move command can be executed without Load example
external start condition. Every move command resets the start mark.
Example: Result:
0 Start Axis The first move command "Move incremental position" is
1 Move incremental position executed immediately.
2 Wait for "position reached" After reaching the target position (block 2) the second move
3 Move incremental position command waits for a Low-High impulse of the start input X 10.11
4 .... (X 10.9 with the 631).
Note:
• The command "Start axis" replaces the Low-High impulse of the start input X10.11 (X10.9 with the 631)
as a valid start mark.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
0E 00 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Start axis The move command "move infinite positive" is stopped after 1
1 Move infinite positive second with the defined deceleration ramp of 10000 rpm/s.
2 Wait time 1000 ms
3 Deceleration = 10000 rpm/s
4 Stop Axis, Mode 1
5 Wait for "position reached"
Note:
• If the axis is to be stopped over a certain deceleration ramp, the use of the command "Stop axis +
parameter" is recommended.
• After the command “Stop axis” it is recommended to insert the command Wait for “Pos. reached“
into BIAS processing.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
0F X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
• 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input X10.9 in
the configuration.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
10 X(low) X(high) Y(low) Y(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Start axis The axis moves 1000 increments from the
1 Move incemental position; v= 100 rpm, s= 1000 INCR current position at a speed of 100 rpm.
2 Wait for "position reached" The BIAS processing is continued with block
3.... 3 after reaching the position reaching the
position.
Note:
• Before starting a valid start mark has to occur:
a.) low-high impulse of the start input X10.11 (X10.9 at 631) or
b.) the command "Start axis" before the move command
o 635/ 637/637+/637f
When using the start input X10.11 the function 0 (start input) has to be selected for the input
X10.11 in the configuration.
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input
X10.9 in the configuration.
Code D1 D2 D3 D4 D5 D6 D7
11 X(low) X(high) Y(low) Y(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
The setpoint calculation always uses the last defined parameters of:
Acceleration, Deceleration, Ramp filter
After power on these parameters are initialized with the values of the
tuning position loop menu.
Example: Result:
0 Start axis The axis moves in the positive direction to the
1 Move datum, mode 16, v= 100rpm, s=4000 Inkr Low-High slope of the reference sensor and the
2 Wait for "position reached" encoder zero position.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input
X10.9 in the configuration.
• 631
When using the reference sensor for one of the inputs (X10.8, X10.9 or X10.10) the function 1
(reference sensor) has to be selected in the configuration.
• 637f
When the drive 637f is mounted by the option board C28 the input X120.4 can configurated as
reference sensor. The reference sensor input configuration at the X10.24 clamp has no function.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
12 X Y(low) Y(high) Z(low) Z(high)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input
X10.9 in the configuration.
• 631/ 635/ 637 The maximum permissible speed depends on the resolver resolution configuration.
With a high resolver resolution only 4000 rpm is allowed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
13 X(low) X(high) Y(low) Y(high) Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input
X10.9 in the configuration.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
14 X(low) X(high) Y(low) Y(high) Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Cycle length = 0 INCR After the Low-High slope of the start input the axis moves
1 Move synchron; gear factor = 1.0 synchronously (per master increment = gear factor * increments),
2 If input 11 == 1 then jump 2 until deactivation of the start input.
3 Stop axis ; mode 1
4 ...
Note:
• Before starting a valid start mark has to occur:
a. the command "Start axis" before the move command
optional : sensor; mode=128
b. low-high impulse of the start input X10.11 (X10.9 at 631)
• 631
When using the start input X10.9 the function 3 (start input) has to be selected for the
input X10.9 in the configuration.
• The function X40 has to be selected as incremental input in the counter configuration.
• Changing the gear ratio is possible during the synchronous run with the command “Gear factor =“.
• The command "Cycle lenth =" placed before the move command defines the length of the format.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
15 X(low ) X(low) X(high) X(VZ) 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Move infinite with analog value; integrator = 10000 rpm/s The axis moves according to the analog
1 If input X == 1 then 1 setpoint value (as operating mode
2 Stop axis; mode 1 "speed control"), as long as input X is
active.
The maximum possible speed change
is limited to 10000 rpm/s.
Note:
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the
input X10.9 in the configuration
• The command “Ramp filter =“ must deactivat before thhis move move command.
• The parameter acceleration and decelleration haven’t influence to the ramps.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
16 X(low ) X(high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Start axis The axis moves according to
1 Move speed ,speed =1000 rpm , integrat.= 10000 rpm/s the set speed of 1000 rpm (as
2 If input X == 1 then jump 1 operating mode "speed
3 Stop axis; mode 1 control") as long as the start
input X is active.
During the process, speed
changes are limited to a
maximum of 10000 rpm/s.
Note:
o 631
When using the start input X10.9 the function 3 (start input) has to be selected for the input
X10.9 in the configuration.
• The command “Ramp filter =“ must deactivat before thhis move move command.
• The parameter acceleration and decelleration haven’t influence to the ramps
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
17 X(low ) X(high) Y(low) Y(high) 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
1A X(low ) X(high) 00 00 00
Example: Result:
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
1B X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
Note:
• The function “Synchronous run” receives their control paramter before the start from the variables,
which are indicated in the parameter set and in the state “Active” from the axis state.
• Acceleration and deceleration are transferred to 5min-1/s.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
0: Start angle Defines switch-on point of the synchronous movement . Unit: Increments
of the selected refererence for the synchronous movement.
1: Delay time comp., The phase shift between master and slave, resulting from the scanning,
Sync. mechanical delay and electrical switching times, is compensated by
addition of a speed-proportional offset to the reference of the
synchronous move. The input is made in %. 100% corresponds to the
accurate compensation of the delay caused by the scanning in the
controller (844uSec) .
2: Gear factor numerator Gear factor numerator: 32bit signed Integer value.
3: Gear factor Gear factor denominator: 31bit unsigned Integer value.
denominator
4: Move_Linked_ACC Distance in increments during ramp-up of the slave; distance = input/2
5: Move_Linked_CONT Distance in increments during synchronous movement of the slave
6: Move_Linked_DEC Distance in increments during ramp-down of the slave; distance = input/2
7: Move_Linked_WAIT Distance in increments during waiting.
It is only used by MOVE_LINKED = 0.
8: CAM_Startoffset Shift of the start point of the CAM profile toward the master axis. The
start takes place on the slave axis incrementally.
9: CAM No. Indicates which CAM profile comes to execution. General altogether
2048 profile supporting points are momentarily possible to be stored in
the controller. Which can be distributed then on 2-16 different profiles.
10: Scaling numerator This parameter defines numerator of the output scaling.
11: Scaling denominator This parameter defines denominator of the output scaling.
12: Sync. settings Bit code for synchronous run options
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
1C X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Start axis The move command "move infinite positive" is stopped
1 Move inifinite positive after 1 seconds with the specified deceleration ramp of
2 Wait time 1000 ms 10000 rpm/s.
3 Stop axis, mode 1 a-= 10000 rpm/s
4 Wait for "position reached"
Note:
• After the command “Stop axis + parameter“ the use of the command “Wait for "Position reached"“ is
recommended.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
1F X Y(low) Y(high 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Position = 10000 INKR The axis moves 10000 increments on a Low-High slope
1 Start axis of the start input.
2 Move incremental position
3 Wait for "position reached
4 Jump 1
Note:
• When using commands with direct position specification, the command will be overwritten.
• When using calculated units, changes in the position entered can occur since these positions always
have to be rounded to an integral number of increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
20 X(low) X(high) 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Speed = 1000 rpm The axis moves 10000 increments from the current
1 Position = 10000 INKR actual position at 1000 rpm.
2 Start axis
3 Move incremental position
4 Wait for "position reached
5 Jump 5
Note:
• When using commands with direct speed specification, the command will be overwritten.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
21 X(low) X(high) 00 00 00 00 00
Parameters: D1,D2 = speed 1….12000 [rpm]
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Acceleration = 5000 rpm/s The axis moves 10000 increments from the current
1 Speed = 1000 actual position at 1000 rpm and an acceleration of
2 Position = 10000 INKR 10000 rpm/s.
3 Start axis
4 Move incremental position
5 Wait for "position reached"
6 Jump 6
Note:
• When using commands with direct acceleration specification, the command will be overwritten.
• The parameter acceleration is used by the change of speed from 0 rpm to a defined speed or by
change of speed with the same sign.
o The parameter acceleration is used by an active move command if the speed is decreased
(without different sign).
o The variation of the speed over 0 rpm, the parameter deceleration is used to 0 rpm and the
parameter acceleration is used to the defined new speed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
22 X(low) X(high) 00 00 00 00 00
Parameters: D1,D2 = Acceleration: 1….64000 [5*rpm/s]
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
• When using commands with direct deceleration specification, the command will be overwritten.
• The parameter deceleration is used by the change of speed to 0 rpm
o The parameter acceleration is used by an active move command if the speed is decreased
(without different sign).
o The variation of the speed over 0 rpm, the parameter deceleration is used to 0 rpm and the
parameter acceleration is used to the defined new speed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
23 X(low) X(high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example:631 Result:
0 Gear factor = 1.0 The axis moves synchronously until the start input 9
1 Move synchron drops. With this, 1 increments are traversed per 1
2 If input 9 == 1 then jump 2 increments (master increments) counted on the X40-
3 Stop axis; mode 1 input.
Note:
• The parameter "gear factor" must be defined before the command "move synchron".
• Changes of the gear factor during the synchronous run will be activated immediately
(without the command "Update parameter").
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
24 X(low ) X(low) X(high) X(VZ) 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 "Position reached" window = 400 The BIAS execution is continued with line 5 as soon as
1 Position = 10000 incr the ramp generation of the move command is ended
2 Start axis and the actual position of the axis is located in the range
3 Move position of 9600 to 10400 increments.
4 Wait for "position reached"
5 …..
See also: Parameter ”Position reached” window
Note:
1. 635/637/637+/637f:
If output X10.12 is configured with the function 0 (position reached), it will reflect the "position
reached" window (output = 1 = actual position within the "position reached" window).
2. 631:
If output X10.6 is configured with the function 0 (position reached), it will reflect the "position
reached” window (output = 1 = actual position within the ”position reached” window).
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
25 X(low) X(high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example:
0 Actual position 1 = 0 INCR
1 Position = 10000 INCR
2 Sensor; mode= 10 on= 6000 Incr off= 8000 Incr
3 Remaining position = 3000
4 Move position
5 Wait for "position reached"
6 Jump 6
Result:
1 Sensor window on
2 Sensor window off
3 Sensor position
4 Target position
5 Sensor position + Target
position
6 Sensor window
7 New target position
• When using calculated units, changes in the position entered can occur since these positions always
have to be rounded to an integral number of increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
26 X(low) X(high) 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
637f: X: 0 - 8 or 255
Y: variable 0 - 255
permitted variable
content 0 - 8
Example: Result:
Note:
• At the move commands
“Move PID, speed“
“ Move PID, torque“
“ Move analogue value“
“ Move speed“
the ramp filter must loaded with 0.
• The value 0 switches the ramp filter off.
• 637f: If the value X is 255, the ramp filter is loaded by the content of the specified variable.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
27 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Act posit. 1 = 0 INCR The internal position is set to 0.
1 Position = 10000 INCR After the drive will move to the absolute position
2 Speed = 1000 rpm of 10000 increments.
3 Acceleration = 2000 rpm/s
4 Deceleration = 2000 rpm/s
5 Start axis
6 Move position; axis no. = 0 , target = 0
Note:
• The actual position used for position control should only be changed at standstill, since this
corresponds to a stop command without ramp.
• When using calculated units, changes in the position entered can occur since these
positions always have to be rounded to an integral number of increments
• 637f:
This command has no effects in the mode “Multi axis“. The specified actual position is not
changed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
28 X Y(low) Y(high) 00 00
Parameters: D1 = 1 / 2
D2…D5 = Absolute position ±231 Increments
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Code D1 D2 D3 D4 D5 D6 D7
2A X ? Y Z(low) Z(high) 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Z: 224 Increments
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
Latch input 1:
635/637/637+/637f input X10.4 configured for function 0,
631 input X10.9 configured for function 5.
The latch status can be queried with the command "Variable [X] = latch status 1“.
The latch position can be queried with the command "Variable [X] = latch position 1“
Latch input 2:
635/637/637+/637f input X10.25 configured for function 0,
631 input X10.10 configured for function 5.
The monitoring of maximum correction length is activated.
• With synchronous applications the window values are specified relative to the beginning of the cycle.
If the value 0 is specified for the parameter sensor window off, the sensor window will not be turned off.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
2B X Y(low) Y(high) Z(low) Z(high)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Sensor position = const." defines the starting position in which
the sensor is expected.
The sensor position is required for the evaluation of the maximum correction in
synchronous move.
Drive type: Parameters Permissible inputs: ; BIAS program
: ; PLC program
All ± 231 Mathematics
const.
Example: Result:
Note:
• This command is only to be used in connection with the
commands “Sensor window , mode 1“, “Sensor adjustment 1“ and “Sensor adjustment 2”.
Code D1 D2 D3 D4 D5 D6 D7
2C X(low) X(high 00 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
Note:
• This command is only to be used in connection with the
commands “Sensor window , mode 1“, “"Sensor position"and “Sensor adjustment 2”.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
2D X (low) X (high) Y 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Sensor adjustment 2 = cost." defines the time within which the
position correction is to be carried out.
Example: Result:
Note:
• This command is only to be used in connection with the commands "Sensor window, mode 1",
"Sensor position" and "Sensor adjustment 1".
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
2E X (low) X (high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Update parameter" allows the parameters: position, speed,
acceleration, deceleration, and window to be updated during a move command in
progress.
During a synchronous run in progress this command has no effect.
Example: Result:
0 Position = 100000 Inkr. The axis moves at a speed of 100 rpm to the
1 Speed = 100 rpm position of 10000 incrementsthen at a speed of
2 Start axis 1000 rpm to the position of 100000 increments.
3 Move position
4 Speed = 1000 rpm
5 If actual pos. 1 < 10000 Incr then jump 5
6 Update parameter
7 Wait for ”position reached”
Note:
Code D1 D2 D3 D4 D5 D6 D7
2F 00 00 00 00 00 00 00
Parameters:
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Position = [variable X]" defines the setpoint position for the
move commands from the contents of the variable X.
The defined position is in effect until the next position command.
Example: Result:
0 [Variable 0] = 10000 The axis moves 10000 increments from the current
1 Position = [variable 0] actual position.
2 Start Axis
3 Move in incremental position
4 Wait for "position reached"
5 Jump 2
Note:
• When using move commands with direct position specification, the command will be overwritten.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
30 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Speed = [variable X]" defines the maximum speed for the
move commands from the contents of the specified variable X.
The defined speed remains in effect until the next speed command.
Example: Result:
0 [Variable 0] = 1000 The axis moves 10000 increments further relatively from
1 Speed = [variable 0] the current actual position at 1000 rpm.
2 Position = 10000 incr
3 Start axis
4 Move incremental position
5 Wait for "position reached"
6 Jump 3
Note:
• When using move commands with direct speed specification, the command will be overwritten.
• The content of the variable is interpreted as a speed specification in rpm.
• 631/635/637
The maximum permissible speed depends on the configured resolver resolution.
With a high resolver resolution only 4000 rpm is allowed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
31 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Acceleration = [variable X]" defines the acceleration ramps
for the move commands from the contents of the specified variable X.
The defined acceleration remains in effect until the next acceleration
command.
Explanation: Result:
0 [Variable 0] = 1000 The axis moves 10000 increments further relatively from
1 Acceleration = [variable 0] the current actual position at 1000 rpm and an
2 Speed = 1000 acceleration of 10000 rpm/s..
3 Position = 10000 INCR
4 Start axiss
5 Move incremental position
6 Wait for "position reached"
7 Jump 4
Note:
• When using move commands with direct acceleration specification, the command will be
overwritten.
• The parameter acceleration is used by the change of speed from 0 rpm to a defined speed or by
change of speed with the same sign.
o The parameter acceleration is used by an active move command if the speed is decreased
(without different sign).
o The variation of the speed over 0 rpm, the parameter deceleration is used to 0 rpm and the
parameter acceleration is used to the defined new speed.
With minimum acceleration to 4000rpm With maximum acceleration to 4000rpm
Exp.: Exp.:
a = 5 rpm/s a = 32000 rpm/s
4000rpm 4000rpm
==> t= = 800s ==> t= = 0,0125s = 12,5ms
rpm rpm
5 320000
s s
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
32 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Deceleration = [variable X]" defines the deceleration ramps
for the move commands from the contents of the specified variable X.
The defined deceleration remains in effect until the next deceleration
command.
Example: Result:
0 [Variable 0] = 2000 The axis moves 10000 increments further relatively from
1 Deceleration = [variable 0] the current actual position at 1000 rpm with an
2 Acceleration = 5000 rpm/s acceleration rate of 5000 rpm/s and a deceleration rate
3 Speed = 1000 of 2000 rpm/s.
4 Position = 10000 INCR
5 Start axis
6 Move incremental position
7 Wait for "position reached"
8 Jump 4
Note:
• When using move commands with direct deceleration specification, the command will be
overwritten.
o The parameter acceleration is used by an active move command if the speed is decreased
(without different sign).
o The variation of the speed over 0 rpm, the parameter deceleration is used to 0 rpm and the
parameter acceleration is used to the defined new speed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
33 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Gear factor = [variable X]" defines the gear factor for the
move command "Move synchron" from the contents of the specified variable.
It is the ratio between master and slave (the axis following the master) during
a synchronous run.
With the command “Synchron adjustment 2“ with mode 8 is possible to
select the resolution of the gear factor (value 0, 1 or 2).
Drive type: Parameters: Permissible inputs ; BIAS program
All X: 0...255 PLC program
Mathematics
permitted variable content see:
Synchron adjustment 2
Note:
• The parameter "gear factor" must be defined before the command "move synchron".
• Changes of the gear factor during the synchronous run will be activated immediately (without the
command"Update parameter").
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
34 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 [Variable 0 ] = 400 The BIAS execution is continued as soon as the ramp
1 Pos. window = [variable 0 ] generation of the move command is ended and the
2 Position = 10000 incr actual position of the axis is located in the range of 9600
3 Start axis to 10400 increments
4 Move position
5 Wait for "position reached"
Note:
• 635/637/637+/ 637f
If output X10.12 is configured with the function 0 (position reached), it will reflect the "position
reached” window(output = 1 = actual position within the ”position reached” window).
• 631
If output X10.6 is configured with the function 0 (position reached), it will reflect the "position
reached” window
(output = 1 = actual position within the ”position reached” window).
• The variable content is interpreted as a window specification in increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
35 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Remaining position = [variable X]" defines the variable where
the remaining position is stored, which is added together with the latch value
measured, when positioning with a sensor.
The defined remaining position remains in effect until the next remaining
position command.
Example:
0 Actual position 1 = 0 INCR
1 Position = 10000 INCR
2 Sensor; mode= 10 on= 6000 Incr off= 8000 Incr
3 [Variable 0] = 3000
4 Remaining position = [variable 0]
5 Move position
6 Wait for "position reached"
7 Jump 0
Result:
1 Sensor window on
2 Sensor window off
3 Sensor position
4 Target position
5 Sensor position +
remaining position
6 Sensor window
7 New target position
Code D1 D2 D3 D4 D5 D6 D7
36 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 [Variable 10] = 10 The position of 10000 increments is moved to.
1 [Variable 11] = 100 In the range of 0 to 7500 increments the
2 Position = 10000 INCR maximum current is limited to 10 A rms.
3 Maximum current = [variable 11], mode = 0 In the range of 7500 increments to 10000
4 Start axis increments the maximum current is limited to 1
5 Move position A rms.
6 If actual position 1 < 7500 INCR then jump 6
7 Maximum current = [variable 10], mode = 0
8 Wait for "position reached"
9 Jump 3
Note:
The specified maximum current is only taken into account if there are no other smaller limitations to the
maximum current. Possibilities are:
a. The external current limitation with analog input 2 is active (not 631 !).
Code D1 D2 D3 D4 D5 D6 D7
37 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 [Variable 0 ] = 0 The internal position is set to 0 increments.
1 Actual position 1 = [variable 0] After the drive will move to the absolute position
2 Position = 10000 INCR of 10000 increments.
3 Speed = 1000 rpm
4 Acceleration = 2000 rpm/s
5 Deceleration = 2000 rpm/s
6 Start axis
7 Move position; axis no. = 0 , target = 0
Note:
• The actual position used for position control should only be changed at standstill, since this
corresponds to a stop command without ramp.
• This command has no effects in the mode “Multi axis“. The specified actual position is not
changed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
38 X Y 00 00 00 00 00
Parameters: D1 = Mode 1/ 2
D2 = Variable number: 0...255
________________________________________________________________________________________________________________________________________________________________________________________________________________________
637+/637f: X = 1 MP1
-512…+511
corresponding to: -10…+10V
X = 2 MP2 -128…+127
corresponding to: -10…+10V
Example: 635/ 637: Result:
0 [Variable 0] = -64 An analog voltage of -10V is sent out on the
1 Analog output 1 = [Variable 0] MP 1 (X10.17).
Note:
• In order to be able to use the analog output function 1 (BIAS) it must be selected in the
configuration for the respective analog output.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
39 X Y 00 00 00 00 00
Parameters: D1 = MP 1/ 2
D2 = Variable number: 0...255
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command ”PID scaling” defines the variable area for the scaling
parameters of the PID-controller.
The variable area starts with the specified variable and has a length of 6
variables.
Example : Result:
0 [Variable 5] = 1250 The command PID scaling scales the set point
1 [Variable 6] = 1000 value with a factor of 1.25, the actual value with
2 [Variable 7] = 900 0.9 and the PID output (adjustment value) with
3 [Variable 8] = 1000 0.5.
4 [Variable 9] = 500
5 [Variable 10] = 1000
6 PID scaling; start = [variable 5]
Note:
X1 = X ⋅
[variable n]
[variable n + 1]
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
3A X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
Latch input 1:
635/637/637+/637f input X10.4 configured for function 0,
631 input X10.9 configured for function 5.
The latch status can be queried with the command "Variable [X] = latch status 1“.
The latch position can be queried with the command "Variable [X] = latch position 1“
Latch input 2:
635/637/637+/637f input X10.25 configured for function 0,
631 input X10.10 configured for function 5.
The monitoring of maximum correction length is activated.
• With synchronous applications the window values are specified relative to the beginning of the cycle.
• If the value 0 is specified for the parameter sensor window off, the sensor window will not be turned off.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
3B X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Sensor position = [variable X]" defines the starting position in
which the sensor is expected.
The sensor position is required for the evaluation of the maximum correction
in synchronous move.
Drive type Parameters Permissible inputs: ; BIAS program
: ; PLC program
All: 0…255 Mathematics
X: Mode
Example: Result:
Note:
Code D1 D2 D3 D4 D5 D6 D7
3C X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
Note:
• This command is only to be used in connection with the commands "Sensor window, mode 1 =
[variable X]"; "Sensor position = [variable X]" and "Sensor adjustment 2 = [variable X]".
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
3D X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Sensor adjustment 2 = [Variable X]" defines the time within
which the position correction is to be carried out.
Example: Result:
Note:
• This command is only to be used in connection with the commands "Sensor window, mode 1 =
[variable X]"; "Sensor position = [variable X]" and "Sensor adjustment 1 = [variable X]"
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
3E X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command ”PID parameter” defines the variable area for the parameters of the PID-
controller.
The variable area starts with the specified variable and has a length of 6 variables.
Example: Result:
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
3F X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = position" loads the current position into the
specified variable X.
Example: Result:
0 [Variable 0 ] = position The actual set point is increased by 1000 increments and is
1 [Variable 0] = [variable 0] + 1000 activated.
2 Position = [variable 0]
3 Update parameter
Note:
• The position is a value in increments
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
40 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = speed" loads the current speed into the
specified variable X.
Example: Result:
0 [Variable 0] = speed The actual current speed is increased by 100rpm and is
1 [Variable 0] = [variable 0] + 100 activated.
2 Speed = [variable 0]
3 Update parameter
Note:
• The setpoint speed is a value in rpm.
Code D1 D2 D3 D4 D5 D6 D7
41 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = acceleration" loads the current acceleration
into the specified variable X.
Example: Result:
0 [Variable 0] = accleration The current defined acceleration is increased by 500 rpm/s
1 [Variable 0] = [variable 0] + 100 and activated.
2 Acceleration = [variable 0]
3 Update parameter
Note:
• The acceleration is a value in 5 rpm/s.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
42 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = deceleration" loads the current deceleration
into the specified variable X.
Example: Result:
0 [Variable 0] = deceleration The current defined deceleration is increased by 600 rpm/s
1 [Variable 0] = [variable 0] + 120 and activated.
2 Deceleration = [variable 0]
3 Update parameter
Note:
• The deceleration is a value in 5 rpm/s.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
43 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = gear factor" loads the current gear factor into
the specified variable X.
Note:
• The content of the variable is defined in the commands "Gear factor = [variable X]" and
"Gear factor =" und "Synchronous settings 2"
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
44 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = block number" loads the current block number
of the BIAS process into the specified variable X.
Example: Result:
0 ... The block number 2 is stored in variable 1.
1 ...
2 [Variable 1] = block number
3 ...
Note:
• This command allows storing of the program steps.
• see also: command "BIAS execution pointer = [variable X]".
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
45 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = actual position Y" loads the value of the defined
actual position Y into the specified variable X.
Note:
• The position is a value in increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
46 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = analog input Y" loads the value of the defined
analog input Y into the specified variable.
Example: Result:
0 [Variable 0] = analog input 2 The axis moves corresponding to the analog
1 [Variable 0] = [variable 0] / 2 voltage on analog input 2.
2 [Variable 0] = [variable 0]* -1 With the setpoint speed as follows:
3 [Variable 1] = [variable 0] + 2048 [ Variable 0] Vana log
4 Speed = [variable 1] v = 2048 − ⋅
4095 (10 V )
5 Update parameter
6 Jump 0
Note:
• The value range of the analog input 1 is 2047Digits (±11 Bit; ±10V)
The 637f use only 12bit (real 14Bit)!
• The value range of the analog input 2 is ± 4095 Digits.
(Real only ±9 Bit; ±10V)
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
47 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = latch position Y" loads the value of the defined
latch position Y into the specified variable X.
Example: Result:
0 [Variable 0] = latch status 1 The actual position at the latch pulse is stored in
1 If [variable 0] <= 0 then jump 0 the variable 1
2 [Variable 1] = latch position 1
Note:
• This command can used in connection with the command "Sensor window; mode X" zu
benutzen.
• The latch position is only current, if a value > 0 is returned with the command “[Variable X]=
latch status Y“
• The latch position is a value in increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
48 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X ] = actual speed Y" loads the value of the defined
speed Y into the specified variable X.
Note:
• The speed is a value in rpm and is marked with a plus or minus sign.
• For speed 2 the correct increment resolution of the external encoder must be specified in
"Commissioning", "Counter", "X40 resolution.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
49 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = latch status Y" loads the status of the defined
latch input Y into the specified variable X.
Status:
0 Latch not yet appeared
-1 No latch appeared within the sensor window
1 Latch executed (mode 10)
2 Latch executed (mode 11)
12 Latch executed (mode 12)
64 Latch executed (mode 64)
65 Latch executed (mode 65)
Example: Result:
0 [Variable 0] = latch status 1 The actual position at the latch pulse is stored in
1 If [variable 0] <= 0 then jump 0 the variable 1.
2 [Variable 1] = latch position 1
Note:
• This command can used in connection with the command "Sensor window; mode X" zu
benutzen.
• The latch position is a value in increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
4A X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
1. The position is a value in increments.
2. The actual setpoint position represents the position course during a positioning.
It gives, therefore, the respective setpoint position at a certain point in time.
3. The internal target position specifies the target of a positioning as an absolute value.
4. The braking distance specifies the necessary path for the braking ramp in increments.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
4B X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = value Y" loads the defined value in the
specified variable X.
Value = 0:
loads the actual current with sign in 1/10 Amps in the selected variable.
Example: Result::
The command is executed with a drive 635-05 (5 The variable 2 is loaded with the actual current
Amps nominal current) with sign in 1/10 Amps.
The drive is producing -1 amp of current; the
Variable 2 = value 0 variable 2 has the content -10.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 1:
loads the actual current without sign in 1/10 Amps in the selected variable
Example: Result:
The command is executed with a drive 635-05 (5 The variable 2 is loaded with the actual current
Amps nominal current). without sign in 1/10 Amps.
The drive is producing -1 amp of current; the
0 Variable 2 = value 1 variable 2 has the content 10
Value = 2:
loads the following 4-byte status information in the selected variable.
Example: Result:
0 Variable 2 = value 2 The variable 2 is loaded with the actual status
information.
Byte 0
In- output status 631 Input status low byte: 635/637 637+/637f
Byte 3
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 10:
loads the actual timer value in the selected variable
637+/ 637f
Der The internal timer value is increased every 0,844 ms by 1.
With this function it is possible to define free running timers in the BIAS - processing
Value = 11:
loads the actual permitted maximum current in 1/10 Amps in the selected variable.
Note: The maximum current can be influenced with the following functions:
a. The external current limitation with analog input 2 is active (not 631 !).
d. The maximum current defined with the BIAS-command "Maximum current = variable“
Example: Result:
The command is executed with a drive 635-05 (5 The variable 2 is loaded with the actual valid
Amps nominal current) and in "commissioning motor" maximum current in 1/10 Amps.
the maximum current is limited to 50 %.
The variable 2 has the content 25.
0 Variable 2 = value 11
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 12:
loads the actual permitted maximum current with the internal notation in the selected variable
Note: The maximum current can be influenced with the following functions:
a. The external current limitation with analog input 2 is active (not 631 !).
d. The maximum current defined with the BIAS-command “Maximal current = [variable X]“.
Note: 631 The maximum current of the drive: 100% has the internal value 6060.
635/637/637+/637f: The maximum current of the drive: 100% has the internal value 12123.
Example: Result:
The command is executed with a drive 635-05 (5 The variable 2 is loaded with the actual valid
Amps nominal current) and in "commissioning motor" maximum current with the internal notation.The
the maximum current is limited to 50 %. variable 2 has the content 6060.
0 Variable 2 = value 12
Value = 13:
loads the actual measured current with the internal notation in the selected variable..
Note: 631: The maximum current of the drive: 100% has the internal value 6060.
635/637/637+/637f: The maximum current of the drive: 100% has the internal value 12123.
Example: Result:
The command is executed with a drive 635-05 (5 The variable 2 is loaded with amount of the
Amps nominal current). actual measured current with the internal
notation. The drive is producing 5 amps of
0 Variable 2 = value 13 current; the variable 2 has the content 6060.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 14:
loads the actual DC-Bus voltage in the selected variable.
Example: Result:
The DC-Bus voltage is 322 V The variable 2 is loaded with the value of the
DC-Bus voltage.
0 Variable 2 = value 14 The variable 2 has the content of 322.
Value = 15:
loads the actual mask number of the IBT in the selected variable.
Note:
This command is only valid when you use an IBT with CAN-Bus. With this information it is
possible to decide the change of the display mask with the BIAS-command "IBT-Mask number".
Example: Result:
The display of the IBT shows the main mask (4). The variable 2 is loaded with the actual mask
number.
0 Variable 2 = value 15 The variable 2 has the content of 4.
Value = 16:
loads the maximum current of the drive in 1/10 Amps in the selected variable.
Example: Result:
The command is calculated with the drive 635-05 (5 The variable 2 is loaded with the maximum
Amps nominal currentÆ 10 Amps maximum current). current of the drive in 1/10 Amps.
The variable 2 has the content of 100.
0 Variable 2 = value 16
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 17:
Loads the actual measured synchronous speed (∆increments) in the specified variable.
Ths speed is not valid in the multi axis synchronous mode.
s
∆Incr × 60
v= min
65535Incr × sampling time position control
sampling time position control:
637+, 637f: 0,844ms
631, 635, 637: 1,899ms
Value = 18:
loads the actual node or axis number in the specified variable.
Example: Result:
The defined node number is 3. The variable 2 is loaded by the value of the
node number.
0 Variable 2 = value 18 The variable 2 has the value 3.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 19:
Loads the actual input/ output status from clamp X120 in the specified variable.
Value = 20:
load the actual motor performance in the specified variable.
2
The 100% of the performance is normalized to. INo min al ⋅ 2
Example: Result:
The motor performance is 100%. The variable 2 is loaded with the value by the
The command is executed with a motor motor performance.
AC M2n0290-4-/1-3 (6 Amps nominal current) The variable 2 has the content 51.
0 Variable 2 = value 20
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Value = 21:
load the actual drive performance in the specified variable.
2
The 100% of the performance is normalized to INo min al ⋅ 2 .
Example: Result:
The drive performance is 100%. The variable 2 is loaded with the value by the
The command is executed with a drive 637f-20 (20 drive performance.
Amps nominal current) The variable 2 has the content 560.
0 Variable 2 = value 21
Value = 22:
load the actual CAN2-Bus-node monitoring state.
Example: Result:
0 Variable 2 = value 22 The variable 2 is loaded with the value by the
CAN2-Bus-node monitoring state.
The bit of the asking axis is not set to one.
value = 23:
load the rotor position at positive slope of the reference sensor at homing mode with reference sensor.
See BIAS-command “Move datum“
(from Firmware V8.20 only 637f)
Example: Result:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
4C X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = axis status, axis no. Y" loads the actual status
of the specified axis Y in the specified variable X.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
28 Stop CAM End Stops the synchronous movement at the end of cam profile
29 CAM Backstop
If the reference is turning backwards, the movement of the CAM is stopped
This function is still
at the beginning of the profile, until the reference is crossing again the
in preparation !!!
switch off point in positive direction. With this flag it is possible to carry on
CAM execution in negative direction of the reference.
30 Reserve
31 Reserve
Example: Result:
9 ... The axis status of the axis 2 is allocated the
10 [Variable 0 ] = axis status, axis no. = 2 variable 2.
11 If [variable 0 ].Bit 12 == 1 then jump Error If the flag Backstop Error is set to 1 the
12 ... program continuous at the label “Error“
otherwise the program continuous at line 12.
Error:
60 ...
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
4D X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
4 - 50 BIAS-Command “NOP“
Explanation:
The command “NOP“ serves as a line space and the following bock is
worked on.
Parameters: none ; BIAS program
; PLC program
; Mathematics
Example: Result:
0 NOP The assignment of the variable 0 is delayed for 2 cycles.
1 NOP (The NOP’s in line 0 and 1).
2 [Variable 0 ] = 1
3 Jump 3
Code D1 D2 D3 D4 D5 D6 D7
50 00 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
ProgStart: After the start the BIAS- program calles the mathematic
0 [Variable 0 ] = 0 and PLC task. Then the BIAS- program is stoped.
1 [Variable 1 ] = 0 The mathematic and the PLC task are executed cyclic
2 Mathematic program MATH (return to program start block of the calling task)
3 PLC-program PLC
4 End of program, mode = 1
PLC:
5 [Variable 0 ] = [variable 0 ] + 1
6 End of program, mode = 0
MATH:
7 [Variable 1 ] = [variable 1 ] + 1
8 End of program, mode = 0
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
51 X 00 00 00 00 00 00
Parameters: D1 = Mode 0-6
________________________________________________________________________________________________________________________________________________________________________________________________________________________
4 - 52 BIAS-Command “Sub-program“
Sub-program X
Explanation:
The command "Sub-program" sets the BIAS-execution pointer to the
specified set block-number.
At the same time the following block-number is stored as the return address
in the sub-program-stack.
The stack depth is limited to 128 sub-programs.
The return is programmed by the command “End of sub-program“.
Parameters: Permissible inputs: ; BIAS program
X: Address: 0...1499 ; PLC program
The maximum address depends on the length ; Mathematics
of the BIAS-program and corresponds to the
block-number of the last BIAS-block.
Instead of block-numbers, labels can be used.
Example: Result:
ProgStart: At first the BIAS execution calls the sub program UP_1.
0 Sub-program UP_1 The sub program UP_1 calls the sub program UP_2.
1 Springe 1 After all sub program has stopped the BIAS execution is
UP_1: continued with line 1.
2 Sub-program UP_2
3 [Variable 0 ] = 0
4 End of sub-program
UP_2:
5 [Variable 1 ] = 123
6 End of sub-program
Note:
• BIAS-, PLC- und Mathematic- programs have separated sub-program-stacks.
Code D1 D2 D3 D4 D5 D6 D7
52 X(low) X(high 00 00 00 00 00
)
Parameters: D1,D2 = Jump address: 0...1499
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The Command “End of sub-program“ loads the return address stored in the
sub program stack and concludes the subroutine.
Example: Result:
ProgStart: At first the BIAS execution calls the sub-program UP_1.
0 Sub-program UP_1 The sub-program UP_1 calls the sub-program UP_2.
1 Jump 1 After all sub-programs are finished the BIAS execution
UP_1: is continued with line 1.
2 Sub-program UP_2
3 [Variable 0 ] = 0
4 End of sub-program
UP_2:
5 [Variable 1 ] = 123
6 End of sub-program
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
53 00 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
4 - 54 BIAS-Command “PLC-program“
PLC-program X
Explanation:
The command "PLC-program" sets the PLC-execution pointer to the
specified block-number.
With this command a cyclic program can be started parallel to the BIAS-
program execution.
The specified block-number can be taken as a return address in the PLC-
program with the command "End of program".
Example: Result:
ProgStart: After the start the BIAS- program calles the mathematic
0 [Variable 0 ] = 0 and PLC task. Then the BIAS- program is stoped.
1 [Variable 1 ] = 0 The mathematic and the PLC task are executed cyclic
2 Mathematic program MATH (return to program start block of the calling task)
3 PLC-program PLC
4 End of Program, mode = 1
PLC:
5 [Variable 0 ] = [variable 0 ] + 1
6 End of Program, mode = 0
MATH:
7 [Variable 1 ] = [variable 1 ] + 1
8 End of Program, mode= 0
Note:
• Do not execute the command "PLC-program cyclically, because the PLC-processing will always
begin at the specified block-number.
• In the PLC- loop not all of the BIAS commands are allowed.
• The reaction of the PLC program to the deactivation of the output stage can be adjusted in the BIAS
program definition (parameter ”program reaction PLC program”) Thus it is possible to allow the PLC
program to allow the PLC program to continue to process also during the deactivation of the
regulator.
o Is in this mode the first command of the BIAS execution the command “PLC program” the PLC
task starts automaticaly independently of the state (deactive/active) of the drive.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
54 X(low) X(high 00 00 00 00 00
)
Parameters: D1,D2 = Jump address: 0...1499
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 If flag 0 == 0 then jump 3 If the flag 0 is not set the execution is continued in line 3
1 [Variable 0] = 5 and the variable 0 is multiplied with 100.
2 Jump 4
3 [Variable 0] = 1
4 [Variable 0] = [variable 0]* 100
5 Jump [variable 0]
Note:
1. The maximum address depends on the length of the BIAS-program and corresponds to the block-
number of the last BIAS-block.
Code D1 D2 D3 D4 D5 D6 D7
55 X(low) X(high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 If flag 0 == 0 then jump 3 If the flag 0 is set to 0 the execution is continued in line
1 [Variable 0] = 5 500 and if the flag 0 is not set to 1 the execution is
2 Jump 4 continued in line 100.
3 [Variable 0] = 1
4 [Variable 0] = [variable 0]* 100
5 Jump [variable 0]
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
56 X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 PLC-program 50 The processing of the BIAS program is
Stop_1: continued in block 10 (label Stops) as soon as
10 Stop axis, mode 1, a- = 10000 rpm/s the actual position is greater than 500000
11 Jump 11 increments or smaller than 0 increments.
...
50 If actual position > 500000 INKR then jump Stop
51 If actual position < 0 INKR then jump Stop
52 End of program
Stop:
53 BIAS-execution pointer Stop_1
54 End of program
Note:
1. The maximum address depends on the length of the BIAS-program and corresponds to the block-
number of the last BIAS-block.
Code D1 D2 D3 D4 D5 D6 D7
57 X(low) X(high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Position = 10000 INKR The BIAS execution will only continue in line 4, if moving
1 "Pos. reached" window = 1 to position ends and the actual position is between 9900
2 Move position up to 10100 increments.
3 Wait for "position reached"
4 ...
Note:
• The bit “position reached“ will set to 1 if a limit switch is active (dependent on direction)!
• The Bit ”position reached” is always set in the mode 8 (Multi axis function)
To check the target position reached signal use the command “[Variable X ] = axis status, axis no.”
in the multi axis mode.
see also:
o BIAS-command “If status == 8 then jump"
BIAS-command “Position reached window = const."
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
58 00 00 00 00 00 00 00
Parameters: -
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
The BIAS execution will continue at line 5, 1 second
1 … after reaching the position.
2 Move position
3 Wait for "position reached"
4 Wait time 1000 ms
5 ...
Note:
• Only even waiting periods are permissible. Odd waiting periods get roundet off.
• When selecting a block number via the strobe function the waiting time is deleted.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
59 X(low) X(high) 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
The BIAS execution will ccontinue at line 5, 1 second
1 [ Variable 0] = 1000 after reached the position..
2 Move position
3 Wait for "position reached"
4 Wait time [variable 0]
5 ...
Note:
• The variable content is interpreted as a time specificated in ms.
The drive types 637+ and 637f count the time in 1 ms steps
The drive types 631,635 and 637 count the time in 2 ms steps. Odd waiting periods get roundet off.
• When selecting a block number via the strobe function the waiting time is deleted
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
5A X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 [Variable 0] = 10 The processing of the BIAS program is
1 PLC-program 50 continued in line 10 (lable Stop_1) if the actual
… position is greater than 500000 or less than 0
Stop_1: increments.
10 Stop axis, mode 1, a- = 10000 rpm/s
11 Jump 11
...
50 If actual position > 500000 INCR then jump Stop
51 If actual position < 0 INCR then jump Stop
52 End of program
Stop:
53 BIAS-execution pointer = [variable 0 ]
54 End of program
Note:
1. The maximum address depends on the length of the BIAS-program and corresponds to the block-
number of the last BIAS-block.
Code D1 D2 D3 D4 D5 D6 D7
5B X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
The first command at the jump target is executed in the same cycle.
Example: Result:
10 Jump [var.[64 ]]; length=6; from JUMP If the line 10 is executed the programm will be
JUMP: continue dependent on the content of the specified
11 Jump STANDSTILL variable 64 with the next command at the jump
12 Jump MOVE_ABS target.
13 Jump MOVE_REL
14 Jump MOVE_HOME The content of the variable 64 is 1, then the
15 Jump MOVE_INF program continues at the label MOVE_ABS with
16 Jump STOP_AXIS executing the command “Start axis”.
STANDSTILL:
17 Jump 10
MOVE_ABS:
18 Starts axis
19 Move position
……..
Note:
Code D1 D2 D3 D4 D5 D6 D7
5C X Y Z(low) Z(high) 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Wait time 1000 ms After the delay time of 1 second the positioning is
1 Execute 6 commands started in the next cycle immediately. The commands 2
2 Position = 10000 INCR to 7 are executed in one cycle.
3 Speed = 1000 rpm
4 Acceleration = 5000 rpm/s
5 Deceleration = 5000 rpm/s
6 Start axis
7 Move position; axis no. = 0 , target = 0
8 Wait for "pos. reached"
9 NOP
Note:
• This command is available with the 637f as of firmware V8.19
• The command is ignored if this command is in the block of the commands which are executed in one
cycle..
In this case the next command is executed.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
5D X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command “Virtual program“ is implemented only for test purposes and
not for use!
Example: Result:
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
5F W X Y Z 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Flag 255 = 1 The flag 255 is set to 0.
Note:
• After power on all flags are cleared.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
60 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Reslut:
0 If flag 0 == 1 then jump 3 If the flag 0 is set to 1, output 12 will be set to 1. (Output 12
1 Output12 = 0 must be configured as a BIAS output).
2 Jump 4
3 Output12 = 1
4 Jump 4
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
61 X ? Const. Y(low) Y(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Flag 0 = flag 1 The state of the flag 1 is copied into the flag 0.
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
62 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
631: Y: 7, 8, 9, 10
Pin no. at X10-clamp
Example: Result:
0 Flag 0 = input 2 The flag 0 reflects the state of the input X10.2.
Note:
Code D1 D2 D3 D4 D5 D6 D7
63 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
631: Y: 5, 6
Pin no. at X10-clamp
X: 109, 110
Pin no. at COM2 Sub-D-female
I/O-Option board
RP-EA5 (Slot B)
X: 209-210, 217-224
Pin no. at X200 Sub-D-female
I/O-Option board
RP-EAE (Slot C)
637f X: 125 – 128
2 x CAN + 4 outputs Pin no. at X120 clamp
and 4 inputs
RP-2C8 (Slot B):
Example: Result:
0 Flag 0 = output 12 The flag 0 reflects the state of the output X10.12.
Note:
Command coding
Code D1 D2 D3 D4 D5 D6 D7
64 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note :
Operation table:
X = Y & Z
0 = 0 & 0
0 = 0 & 1
0 = 1 & 0
1 = 1 & 1
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
65 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Flag 0 = 0 Flag 2 = 1
1 Flag 1 = 1
2 Flag 2 = flag 1 | flag 0
Note:
Opteration
table:
X = Y | Z
0 = 0 | 0
1 = 0 | 1
1 = 1 | 0
1 = 1 | 1
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
66 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Flag 0 = 0 Flag 2 = 0
1 Flag 1 = 1
2 Flag 2 = flag 1 ^ flag 0
Note:
Operation table:
X = Y ^ Z
0 = 0 ^ 0
1 = 0 ^ 1
1 = 1 ^ 0
0 = 1 ^ 1
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
67 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Flag 0 = 0 The flag 1 ist set to 1
1 Flag 1 = ! flag 0
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
68 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
• The status 2 (format check synchronous move) is set only on one BIAS-cycle.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
69 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
Note:
• The Bit 8 ”target position reached” is always set in the mode 8 (Multi axis function)
To check the target position reached signal use the command “[Variable X ] = axis status, axis no.”
in the multi axis mode.
• The status 2 (format check synchronous move) is set only on one BIAS-cycle.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
6A X ? Const Y(low) Y(high) 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Mode =const.“ loads the specified mode with the constant
value.
Parameters Permissible inputs: ; BIAS program
X: 0...255 ; PLC program
Const.: 231 ; Mathematics
Example: Result:
0 Modus 8 = 1 The multi axis mode is activated. The variables
1 [Variable 10 ] = 200000 define the parameter set for a positioning.
2 [Variable 11 ] = 1000 The axis moves on the position 200000 increments
3 [Variable 12 ] = 2000 and after the axis reached this position the line 11 is
4 [Variable 13 ] = 2000 executed.
5 [Variable 14 ] = 10
6 Load parameter set 0 = [variable [14 ]]
7 Start axis
8 Move position; Axis no. = 1 , target = 1
9 [Variable 0 ] = Axis status, Axis no. = 1
10 If [variable 0 ].Bit 0 == 0 then jump 9
11 ...
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
6B X Y (low) Y (high) 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Flag X = Bit 0
Example: Result:
The 4 lowest bits of the variable 0 are copied in Flag 0 = 1
the flags 0 to 3. Flag 1 = 1
Flag 2 = 1
0 Variable 0 = 15 Flag 3 = 1
1 Flag 0 = variable 0, number 4
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
6C X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
0 Flag 10 = 1 The bit 15 of the variable 0 is cleared and
1 [Variable 0 ].bit 15 = 0 ,[flag 0 ] the bit 1 of the variable 1 is set (by the flag 10= 1).
2 [Variable 1 ].bit 1 = 255 ,[flag 10 ]
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
6D X Y Const. Z 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
?: == equal to
!= not equal to
Z: 0…1499
Address: The maximum permissible jump address
corresponds to the length of the BIAS program.
As an alternative to the line numbers labels
(jump labels) can be used.
Example: Result:
LOOP: The program is executed at line 1 if the bit 3
0 If [variable 10 ].bit 3 == 0 then jump LOOP of the variable 10 is set to 1.
1….
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
6E X Y ? Z(low) Z(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
If in the constant the value 255 is registered, the content of the flag Z is
copied in the bit of the axis state.
This command is used in context with the multi axis function
Z: 0…255
Parameters Y:
5 Trigger Gearbox Ext Trigger for update the gearbox parameters. The flag is
set to 1 by the gearbox function block of the synchronous
movement and can be reset by BIAS.
6 Trigger Clutch Ext Trigger for manual update parameter (The flag must set
to 1 or set to 0 by BIAS)
e.g. synchronisation of switching parameters with other
drives or PLC’s
7 Trigger CAM Ext Trigger for manual update parameter (The flag must set
to 1 or set to 0 by BIAS)
e.g. synchronisation of switching parameters with other
drives or PLC’s
26 Merge Move Linked Start a new profile, by a positive slope of the flag ” Merge
Move Linked” the new formats are took over and the flag
“Merge Move Linked” is cleared after the restart.
28 Stop CAM End Stops the synchronous movement at the end of cam
profile
All not listed flags are not allowed or not able to change
.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
35 ... The flag “Ramp down“and “Ramp Wait“
36 [Variable 1 ] = axis status, axis no. = 1 are set and the flag “Trigger clutch Ext“ is
37 If [variable 1 ].bit 6 == 0 the jump SYNC_SSI1 cleared if the bit 6 of the axis status is set
38 Axis state, axis no 1 , bit 23 = 1 , [flag 0 ] to 1.
39 Axis state, axis no 1 , bit 24 = 1 , [flag 0 ]
40 Axis state, axis no 1 , bit 6 = 0 , [flag 0 ]
41 ..
SYNC_SSI1:
Note:
• This command is available with the 637f as of firmware V8.19
• The function “synchronous move“ gets their parameters from the variable of the specified parameter
set before start and after the parameters are defined in the axis state.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
6F X Y Const. Z 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
X: 201-208, 211-216
Pin no. at X200 Sub-D-female
I/O-Option board
RP-EAE (Slot C)
X: 91, 93
2 Inputs Pin no. at X290 clamp
RP-SBT 91: Activation Drive
(Slot C) 93. Safe standstill
? == equal to
!= not equal to
const. 0/1
Y: 0…1499
Address: The maximum permissible jump
address corresponds to the
length of the BIAS program.
As an alternative to the line
numbers labels (jump labels) can
be used.
Example: Result:
0 If input 2 == 1 then jump 3 If input 2 is set, the output 12 is set to 1. (Output
1 Output 12 = 0 12 has to be configured as BIAS-output.)
2 Jump 4
3 Output 12 = 1
4 Jump 4
________________________________________________________________________________________________________________________________________________________________________________________________________________________
• The maximum address depends on the length of the BIAS-program and corresponds to the block-
number of the last BIAS-block.
Instead of block-numbers, labels can be used.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
70 X ? Const. Y(low) Y(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
X: 109, 110
Pin no. at COM2 Sub-D-female
I/O-Option board
RP-EA5 (Slot B)
X: 209-210, 217-224
Pin no. at X200 Sub-D-female
I/O-Option board
RP-EAE (Slot C)
? == equal to
!= not equal to
Const. 0/1
Y: 0…1499
Address: The maximum permissible jump
address corresponds to the
length of the BIAS program.
As an alternative to the line
numbers labels (jump labels) can
be used.
Example: Result:
0 If output 12 == 1 then jump 3 If output 12 is set, the flag 1 is set to 1.
1 Flag 1 = 0
2 Jump 4
3 Flag 1 = 1
4 Jump 4
Note:
• The output number corresponds to the pin number on the X10 or X200 connection.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
71 X ? const. Y(low) Y(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
X: 109, 110
Pin no. at COM2 Sub-D-female
I/O-Option board
RP-EA5 (Slot B)
Example: Result:
0 If input 2 == 1 then jump3 Ist If input 2 is set, the output 12 is set to 1.
1 Output 12 = 0 (Output 12 has to be configured as BIAS-output.)
2 Jump 4
3 Output 12 = 1
4 Jump 4
Note:
• The command is only valid with outputs defined as BIAS-outputs (function 2) in the
configuration.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
72 X Const. 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
631: X: 5, 6
Pin no. at X10-clamp
X: 109, 110
Pin no. at COM2 Sub-D-
I/O-Option board female
RP-EA5 (Slot B)
X: 209, 210, 217-227
Pin no. at X200 Sub-D-female
I/O-Option board
RP-EAE (Slot C)
637f: X: 121 – 124
2 x CAN + 4 outputs and Pin no. at X120 clamp
4 inputs
RP-2C8 (Slot B):
Example: Result:
0 Flag 0 = input 2 The state of the input 2 is assigned to the output 12.
1 Output 12 = flag 0 (Output 12 has to be configured as BIAS-output.)
Note:
• The command is only valid with outputs defined as BIAS-outputs (function 2) in the
configuration.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
73 X Y 00 00 00 00 00
Parameters:
D1 = Output pin number: (see explanation)
D2 = Flag number: 0...255
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "IBT mask number = " activates the selected screen mask of
the IBT and the status of the function key LED's of the IBT.
Y: 0..255
Example: Result:
0 Variable 0 = 0 The main mask 4 on the IBT display is
1 IBT-Mask number = 4, LED- status = [variable 0] activated. All the LED's are switched
off.
Note:
Key On flash
F1 32768 16384
F2 8192 4096
F3 2048 1024
F4 512 256
F5 128 64
F6 32 16
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
78 X(low) X(high Y 00 00 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "IBT notification number = " activates the notification of the
specified message in the serial message buffer of the IBT and the status of
the function key LED's of the IBT.
Example: Result:
0 Variable 0 = 48 The notification mask 10 on the IBT
1 IBT- notification number = 10, LED-status = [variable display is activated. The LED of the
0] function key 6 flashes. All the other
LED's are switched off.
Note:
• The specified mask must be known to the IBT.
Kex on flash
F1 32768 16384
F2 8192 4096
F3 2048 1024
F4 512 256
F5 128 64
F6 32 16
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
79 X(low) X(high Y 00 00 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
• The coding of the data length is available with the 637f as of firmware V8.19
• The coding of the data length is available with the 631/ 635/ 637 as of firmware V6.19
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
7A X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Example: Result:
Note:
• The IBT must know the recipe number and the dataset number.
Command code:
Code D1 D2 D3 D4 D5 D6 D7
7B X Y Z 00 00 00 00
Parameters:
D1 = Mode: 0/1
D2 = Recipe number: 0...250
D3 = Dataset: 0...250
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
• This command is available with the 637f as of firmware V8.19
• The user of this command has to take note of the bus load in combination with fixed CAN2
telegrams
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
7C X 00 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = " assigns the value of the constant to the
variable X.
Y: Const. ± 231
Example: Result:
0 [Variable 0] = 100000 The content of the variable 1 is 100000.
Note:
1. After switching the drive on all variables have the content 0.
2. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
80 X Y(low) Y(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0…1499
Address: The maximum permissible jump address
corresponds to the length of the BIAS
program.
As an alternative to the line numbers labels
(jump labels) can be used.
Example: Result:
0 Start axis The output 20 is set if the actual speed is greater
1 Move position or equal than 500 rpm and lower than 2500 rpm.
2 Output 20 = 0
3 [Variable 0] = actual speed 1
4 If [variable 0] < 500 then jump 3
5 Output 20 = 1
LOOP:
6 [Variable 0] = actual speed 1
7 If [variable 0] < 500 then jump 2
8 If [variable 0] < 2500 then jump LOOP
9 Jump 2
Note:
1. The maximum permissible jump address corresponds to the length of the BIAS program.
4. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
5. The comparison of both values is carried out by a subtraction of the constant factor from the
contents of the variable.
The conditional jump depends on the sign of the result.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] + const." adds the content of the
variable Y to the constant and stores the sum in the variable X.
Y: 0...255
Const.: ± 231
Example: Result:
0 If input 11 == 0 then jump 4 If the input 11 is active, the axis moves 15000
1 [Variable 0] = position increments further..
2 [Variable 0] = [variable 0] + 15000
3 Position = [variable 0]
4 Start axis
5 Move position
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
82 X Y Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] - const." subtracts the constant
from the content of the variable Y and stores the difference in the variable X..
Y: 0...255
Const.: ± 231
Example: Result:
0 If input 11 == 0 then jump 4 If the input 11 is active, the axis moves 15000
1 [Variable 0] = position fewer increments.
2 [Variable 0] = [variable 0] - 15000
3 Position = [variable 0]
4 Start axis
5 Move position
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
83 X Y Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] * const." multiplies the content of
the variable Y with the constant and stores the result in the variable X.
Y: 0...255
Const.: ± 231
Example: Result::
0 If input 11 == 0 then jump 4 If the input 11 is active, the axis moves 5 times
1 [Variable 0] = position the position.
2 [Variable 0] = [variable 0] * 5
3 Position = [variable 0]
4 Start axis
5 Move position
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
84 X Y Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] / const." divides the content of the
variable Y with the constant and stores the integer result in the variable X.
Y: 0...255
Const.: ± 231
Example: Result:
0 If input 11 == 0 then jump 4 If the input 11 is active, the axis moves 1/5 the
1 [Variable 0] = position position..
2 [Variable 0] = [variable 0] / 5
3 Position = [variable 0]
4 Start axis
5 Move position
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
85 X Y Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = flag Y, number = Z" copy the status of the
desired Z flags starting with flag Y bit wise to the content of the variable
X.(flag Y = bit 0).
Z: 1 - 32
Example: Result
0 [Flag 0 ] = 0 The value 5 (Flag 0 = 1 + Flag 2 = 4) is loaded
1 [Flag 1 ] = 1 into variable 10.
2 [Flag 2 ] = 0
3 [Flag 3 ] = 1
4 [Variable 10] = flag 0 , number = 3
Note:
1. After switching the drive on all flags have the content 0.
2. The flag contents will be displayed cyclically in the "diagnosis", "BIAS" page.
3. Before the vaue is allocated the target variable is deleted,viz the not used bits are set to 0.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
86 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command “[Variable X] = [variable Y].bit Z, number = W." allocates the
variable X on the bit position 0 to (number -1) bit wise with the value of the bit
Z from the variable Y to Y+(number-1)
Z: 0 - 31
W: 1 - 32
Example: Result:
0 [Variable 0 ] = 1 The variable 8 is loaded on the bit position 0 – 7
1 [Variable 1 ] = 3 bit wise with the value of the bit 0 from the
2 [Variable 2 ] = 1 variables 0 – 7.
3 [Variable 3 ] = 3
4 [Variable 4 ] = 1 Variable 8 = 255d ; 0FFh, ...0011111111b
5 [Variable 5 ] = 3
6 [Variable 6 ] = 1 The variable 9 is loaded with the value of the bit 1
7 [Variable 7 ] = 3 .
8 [Variable 8 ] = [Variable 0 ].Bit 0 , number = 8 Variable 9 = 204d ; 0CCh, ..0010101010b
9 [Variable 9 ] = [Variable 0 ].Bit 1 , number = 8
Note:
• This command is available with the 631, 635, 637 as of firmware V8.19
• The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
• Before the vaue is allocated the target variable is deleted,viz the not used bits are set to
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
87 X Y Z W 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0…255
Example: Result:
0 [Variable 0] = position The parameter position is multiplied by 1.2.
1 [Variable 1] = [variable 0]
2 [Variable 0] = [variable 0] / 5
3 [Variable 0] = [variable 0] + [variable 1]
4 Position = [variable 0]
Note:
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
88 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0…255
Z: 0…1499
Address: The maximum permissible jump address
corresponds to the length of the BIAS
program.
As an alternative to the line numbers, labels
(jump labels) can be used.
Example: Result:
0 Start axis The output 20 is set if the actual speed
1 Move position is greater or equal than 500 rpm and
2 [Variable 1] = 500 lower than 2500 rpm.
3 [Variable 2] = 2500
4 Output 20 = 0
5 [Variable 0] = actual speed 1
6 If [variable 0] < [variable 1] then jump 5
7 Ausgang 20 = 1
LOOP:
8 [Variable 0] = actual speed 1
9 If [variable 0] < [variable 1] then jump 4
10 If [Variable 0] < [Variable 2] then jump LOOP
11 Jump 2
The maximum permissible jump address corresponds to the length of the BIAS program.
1. As an alternative to the line numbers, labels (jump labels) can be used.
2. After switching the drive on all variables have the content 0.
3. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Command coding:
D2 D3 D4 D5 D6 D7
Code D1
? Y Z(low Z(high 00 00
89 X
) )
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] + [variable Z]" adds the content of
the variable Z to the variable Y and stores the sum in the variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 If input 11 == 0 then jump 5 If the input 11 is active, the axis moves 15000
1 [Variable 1] = 15000 increments further.
2 [Variable 2] = position
3 [Variable 0] = [variable 0] + [variable 1]
4 Position = [Variable 0]
5 Start axis
7 Move position
Note:
1. After switching the drive all variables have the content 0.
2. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
8A X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0…255
Z: 0…255
Example: Result:
0 If input 11 == 0 then jump 5 If the input 11 is active, the axis moves 15000
1 [Variable 1] = 15000 fewer increments.
2 [Variable 0] = position
3 [Variable 0] = [variable 0] - [variable 1]
4 Position = [variable 0]
5 Start axis
6 Move position
Note:
2. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
8B X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] * [variable Z]" multiplies the content
of the variable Y with the content of the variable Z and stores the result in the
variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 If Input 11 == 0 then jump 5 If the input 11 is active, the axis moves 5 times
1 [Variable 1] = 5 the position.
2 [Variable 2] = position
3 [Variable 0] = [variable 0] * [variable 1]
4 Weg = [variable 0]
5 Start axis
7 Move position
Note:
4. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
8C X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable Y] / [variable Z]" divides the content of
the variable Y with the content of the variable Z and stores the integer result in
the variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 If input 1 == 0 then jump 5 If the input 11 is active, the axis moves 1/5 the
1 [Variable 1] = 5 position.
2 [Variable 2] = position
3 [Variable 0] = [variable 0] / [variable 1]
4 Position = [variable 0]
5 Start axis
7 Move position
Note:
1. The result of the division has no remainder.
2. After switching the drive on all variables have the content 0.
3. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
8D X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0…255
Example: Result:
0 [Variable 0] = actual position 1 The current actual position 1 is stored
1 [Teachvariable 1] = [variable 0] permanently in the teach variable 1.
It can for example be used later as a target
position.
Note:
• During the execution of this command the BIAS processing is stopped for approx. 10 ms.
• Because of the limitation of save cycles from the EEPROM this command must not executed
cyclically (appr. 100.000 save cycles)
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
8E X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [teachvariable Y]" assigns the content of the
permanently stored variable Y (teach variable) to the variable X.
Y: 0…15
Example: Result:
0 [Variable 0] = [teachvariable 1] The content of the teach variable 1 is loaded as
1 Position = [variable 0] setpoint position.
Note:
• After switching the drive on the contents of all teach variables are automatically preloaded.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
8F X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Mathematics program" starts the execution of a third
task.This task will be executed in the time that isn't used for the interrupt
execution.The execution time of the math-program is not determined.
Example: Result:
0 End of program, mode = 3 The executed Mathematics program is terminated
1 Mathematics program Math and then the new program at the label Math
started.
Note:
• In the BIAS-program definitions (Parameters“ Program reaction to drive deactivation/ activation) can
set the reaktion of the mathematic task at deactivation of the drive. So the mathematic task can
continue to work after the deactivation of the drive.
• In this mode the command „Mathematic program“ is executed at the first or second line (if the PLC
program is on line 1), if the drive is not enabled.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
90 X(low) X(high 00 00 00 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 1...1024
Supporting points
Z: 0...2047
Start address
Example: Result:
ProgStart: The profile is initialized with 128
0 Profile init.;profilnr.=0 ,supp. point =128, start address =0 supporting points and it starts adress 0
Note:
The values can load with the command “Profile value, profile X , value Y = [variable Z ]”, too.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
91 X Y(low) Y(high Z(low) Z(high) 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0...255
Z: 0...255
Example: Result:
ProgStart: The profil 0 is initialized with a
0 [Variable 10 ] = 100000 master cycle length of
1 [Variable 11 ] = 80000 100000 increments and a
2 Profile cycle length; profile no.= 0 ,master=[var. 10] ,slave=[var. 11 ] slave cylce length of 80000
increments.
Note:
The values can load with the command “Profile value, profile X , value Y = [variable Z ]”, too.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
92 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X]=profile value, profile Y value Z" sloads the desired
paramerter Z of the cam profile Y in the variable X.
Y: 0…15
Profile number
Example: Result:
ProgStart: The parameters are loaded in the variables 0 – 3.
0 [Variable 0 ] = profile value, profile 0 , value 0
1 [Variable 1 ] = profile value, profile 0 , value 1
2 [Variable 2 ] = profile value, profile 0 , value 2
3 [Variable 3 ] = profile value, profile 0 , value 3
Note :
With this command you can check imported profile for valid valuation.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
93 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Profile value, profile X, value Y=[variable X]" stores the
content of the variable Z in the desired value Y of the cam profile X.
Z: 0…255
Example: Result:
ProgStart: The profile 0 has 128 supporting points.
0 [Variable 10 ] = 128
1 Profile value, profile 0 , value 0 = [variable 10 ]
2 NOP
Note:
Code D1 D2 D3 D4 D5 D6 D7
94 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Save table" starts the saving of the entire profile table.
For the execution of this command it is necessary to interrupt the PLC-
program execution.
It means the execution time of this command is larger than the 2ms default
value.
Example: Result:
0 If Flag 1 == 0 then jump NotSave If the flag 1 is set, the table will save. Beside the
1 End of program 4 the drive is deactivated, the table save and the
2 Save table drive is activated again..
3 End of program 5
4 Flag 1 = 0
NotSave:
Note:
• The execution of this command is possible only in the deactivated status of the servo drive.
• I.e. for the execution mode of the PLC program the value 2 "go on execution on deactivation"
must be configured.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
97 00 00 00 00 00 00 00
Parameters:
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Table([var. X]) = const." loads the constant value into the
profile memory address specified by the variable X.
Y: const. ± 231
Example: Result:
ProgStart: The value 1000 is loaded into the profile memory
0 [Variable 10 ] = 0 address 0.
1 Table([variable 10 ])= 1000
2 NOP
Note:
• The command “Save table“ is able to save values of the table permanent.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A0 X Y(low) Y(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "Table([variable X]) = [Y variable Z]" loads the contents of the
Y type variable Z into the profile memory address specified by the variable X.
Z: 0…255
Example: Result:
ProgStart: The value is loaded into the profile memory
0 [Variable 0 ] = 1000 address 0.
1 [Variable 10 ] = 0
2 Table([variable 10 ])= [L variable 0 ]
3 NOP
Note:
1. The command “Save table“ is able to save the values of the table permanent.
2. A type conversion to type Long Integer will be executed before assigning a type variable.
Code D1 D2 D3 D4 D5 D6 D7
A1 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[X variable Y] = table([variable Z])" loads the contents of the
profile memory address specified by the variable Z into the X type variable Y.
Y: 0-255
Z: 0-255
Permitted variable content
0…4095
Example: Result:
ProgStart: The value of the profile memory address 10 is
0 [Variable 10 ] = 0 loaded into the long integer variable 5.
1 [L variable 5 ] = table([variable 10 ])
2 NOP
Note:
4. The command “Save table“ is able to save the values of the table permanent.
5. A type conversion to type Long Integer will be executed before assigning a type variable.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A2 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[W variable X] = [Y variable Z]" loads the contents of the Y
type variable Z into the W type variable X.
X: 0-255
Y: L = Long integer
Type selection F = Float
D = Double float
Z: 0-255
Example: Result:
0 [D_variable 0 ] = 0 The double variable 2 is loaded into
1 [D_variable 1 ] = 0.250000000 the long integer variable 1.
2 If [D_variable 1 ] -< [D_variable 0 ] then jump error
3 [D_variable 2 ] = SQRT([D_variable 1 ])
4 [L_variable 1 ] = [D_variable 2 ]
...
error:
50 ...
Note:
7. A type conversion to type Long Integer will be executed before assigning a type variable.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A3 W X Y Z 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[X variable Y] = const." loads the constant value into the X
type variable Y.
Y: 0-255
Const. ± 231
Example: Result:
0 [D_variable 0 ] = 0 If the content of the type variable 1
1 [D_variable 1 ] = 0.250000000 isn’t negative, the square root is
2 If [D_variable 1 ] -< [D_variable 0 ] the jump Error calculated and the result is stored
3 [D_variable 1 ] = SQRT([D_variable 1 ]) back into the type variable 1.
4 ... If the content of the type variable is
Error: negative, the BIAS execution
50 ... pointer is set at the label Error (line
50).
Note:
1. It is possible to use a constant floating point value for the assignment of a float or double float
variable.
2. 3 different type variables are available to you.
All type variables are stored in different memory areas.
The long integer variables 0...255 corresponds to the BIAS-variables 0...255.
The float variables 0...255 corresponds to the 4-byte IEEE format.
The double float variables 0...255 corresponds to the 8-byte IEEE format.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A4 X Y Z(low) Z(high) 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable [X]] = const " assigns the constant value to the
variable addressed by the content of the variable X.
Const. ± 231
Example: Result:
0 [Variable 0] = 10 The variable 10 is loaded with the value 10000.
1 [Variable [0]] = 10000
Note :
2. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A5 X Y(low) Y(high 00 00
)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable [X]] = [variable Y]" assigns the content of variable Y
to the variable addressed by the content of the variable X.
Y 0…255
Example: Result:
0 [Variable 0] = 10 The content of the variable 10 is 100000.
1 [Variable 1] = 100000
2 [Variable [0]] = [variable 1]
Note:
2. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A6 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[Variable X] = [variable [Y]]" assigns the content of variable
addressed by the content of the variable Y to the variable X.
Y: 0…255
permitted variable content
0…255
Example: Result:
0 [Variable 0] = 10 The content of the variable 1 is 100000.
1 [Variable 10] = 100000
2 [Variable 1] = [variable [0]]
Note:
2. The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A7 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command “[Variable X] = [variable Y ] ? [variable Z]“ allocates the
result from the logical operation between the selected variables Y and Z into
the variable X.
Z: 0…255
Example: Result:
0 [Variable 0] = 1 The variable 0 is shifted 15 Bit to left. The content
1 [Variable 1] = 15 of the variable 2 is 65536.
2 [Variable 2] = [variable 0] << [variable 1]
Note :
• The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A8 X Y ? Z 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The Command “[Variable X] = [variable Y ] ? const.” allocates the result
from the logical operation between the selected variable Y and the constant
into the variable X.
Const.: ± 231
Example: Result:
0 [Variable 0] = 0x0000 00FF The variable 0 is combined logic OR with the
1 [Variable 1] = [variable 0] | 0x0000 FF00 constant and the result is saved into the variable 1.
The content of the variable 1 is 65535.
Note:
• The variable contents will be displayed cyclically in the "diagnosis", "BIAS" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
A9 X Y ? Z (low) Z(high)
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = [D_var.Y] + [D_var.Z]" adds the contents of the
double variable Z to the contents of the double variable Y and stores the sum
into the double variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 [D_variable 0 ] = 1.250000000 The double variable 0 and 1 are added and
1 [D_variable 1 ] = 0.250000000 the sum is stored in the double- variable 2.
2 [D_Variable 2 ] = [D_variable 0 ] + [D_variable 1 ]
Note:
1. After switching on all variables have the content 0.
2. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B0 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = [D_var.Y] - [D_var.Z]" subtracts the contents of
the double variable Z from the contents of the double variable Y and stores
the difference into the double variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 [D_variable 0 ] = 1.250000000 The contents of the double variable 1 is
1 [D_variable 1 ] = 0.250000000 subtracted from the contents of the double
2 [D_variable 2 ] = [D_variable 0 ] - [D_variable 1 ] variable 0. The difference is stored in the
double variable 2
Note:
3. After switching on all variables have the content 0.
4. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B1 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = [D_var.Y] * [D_var.Z]" multiplies the contents of
the double variable Z with the contents of the double variable Y and stores
the product into the double variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 [D_variable 0 ] = 1.250000000 The content of the double variable 0 and 1 are
1 [D_variable 1 ] = 0.250000000 multiplied and the product is stored into the
2 [D_variable 2 ] = [D_variable 0 ] * [D_variable 1 ] double variable 2.
Note:
6. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B2 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = [D_var.Y] / [D_var.Z]" divides the contents of the
double variable Z by the contents of the double variable Y and stores the
quotient into the double variable X.
Y: 0…255
Z: 0…255
Example: Result:
0 [D_variable 0 ] = 1.250000000 The content of the double variable 1 is divided
1 [D_variable 1 ] = 0.250000000 by the content of the double variable 0 and
2 [D_variable 2 ] = [D_variable 0 ] / [D_variable 1 ] the quotient is stored into the double variable
2.
Note:
8. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B3 X Y Z 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Y: 0…255
Z: 0…1499
address: The maximum permissible jump address
corresponds to the length of the BIAS
program.
As an alternative to the line numbers labels
(jump labels) can be used.
Example: Result:
0 [D_variable 0 ] = 0 If the double variable 1 is not
1 [D_variable 1 ] = 0.250000000 negative, the program calculates
2 If [D_variable 1 ] -< [D_variable 0 ] then jump error the square root of the double-
3 [D_variable 1 ] = SQRT([D_variable 1 ]) variable 1 and stores the result
4 ... back.
error: If the double variable 1 is negative
50 ... the execution continue at the label
“error”
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Note:
5. The maximum permissible jump address corresponds to the length of the BIAS program.
8. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
9. The comparison of both, values is carried out by a subtraction of the variable Y from the variable X.
The conditional jump depends on the sign of the result.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B4 X ? Y Z(low) Z(high) 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = SIN([D_var.Y])" calculates the sinus of the
double-variable Y and stores the result in the double-variable X.
Y: 0…255
Example: Result:
0 [D variable 0 ] = 30 The example calculates the sinus of 30°.
1 [D variable 1 ] = 180 At first the radiant is calculated and stored in the
2 [D variable 2 ] = 3.141592741 double variable 3.
3 [D_variable 3 ] = [D_variable 0 ] * [D_variable 2 ] After this the sinus value is calculated and the
4 [D_variable 3 ] = [D_variable 3 ] / [D_variable 1 ] result is stored in the double variable 0.
5 [D_variable 0 ] = SIN([D_variable 3 ])
Note:
10. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B5 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = COS([D_var.Y])" calculates the cosinus of the
double variable Y and stores the result in the double-variable X.
Y: 0…255
Example: Result:
0 [D_variable 0 ] = 30 The example calculates the cosinus of 30°.
1 [D_variable 1 ] = 180 At first the radiant is calculated and stored in the
2 [D_variable 2 ] = 3.141592741 double variable 3.
3 [D_variable 3 ] = [D_variable 0 ] * [D_variable 2 ] After this the cosinus value is calculated and the
4 [D_variable 3 ] = [D_variable 3 ] / [D_variable 1 ] result is stored in the double variable 0.
5 [D_variable 0 ] = COS([D_variable 3 ])
Note:
11. After switching on all variables have the content 0.
12. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Commands coding:
Code D1 D2 D3 D4 D5 D6 D7
B6 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Explanation:
The command "[D_var. X] = SQRT([D_var.Y])" calculates the square root of
the double-variable Y and stores the result in the double-variable X.
Y: 0…255
Example: Result:
0 [D_variable 0 ] = 0 If the double-variable 1 is not
1 [D_variable 1 ] = 0.250000000 negativ then the square root is
2 If [D_variable 1 ] -< [D_variable 0 ] then jump Error calculated and the result is stored in
3 [D_variable 1 ] = SQRT([D_variable 1 ]) the double variable 1.
4 ... If the double variable is negative
Error: the BIAS execution pointer is set to
50 ... the line “Error”.
Note:
13. After switching on all variables have the content 0.
14. The double variable contents will be displayed cyclically in the "diagnosis", "Mathematics" page.
Command coding:
Code D1 D2 D3 D4 D5 D6 D7
B7 X Y 00 00 00 00 00
________________________________________________________________________________________________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________________________________________________________________________________________________
Ägypten · Argentinien · Bangladesch · Brasilien · Chile · Costa Rica · Ecuador · Griechenland · Indonesien · Island · Israel
Kolumbien · Kuwait · Litauen · Malaysia · Marokko · Mexico · Neuseeland · Nigeria · Peru · Philippinen · Portugal
Österreich · Saudi Arabien · Singapur · Slowenien · Sri Lanka · Süd Afrika · Taiwan · Thailand · Tschechien
Türkei · Ungarn · Vereinigte Arabische Emirate · Vietnam · Zypern