Professional Documents
Culture Documents
Operating Instructin SPS Step 7 en
Operating Instructin SPS Step 7 en
>pDRIVE< MX basic
>pDRIVE< MX plus
>pDRIVE< MX plus-hydro
>pDRIVE< MX multi-basic
>pDRIVE< MX multi-plus
>pDRIVE< MX top
>pDRIVE< MX top-hydro
Safety Instructions
The following symbols should assist you in handling the instructions:
Advice, tip!
The requirements for successful commissioning are correct selection of the unit, proper projection and mounting. If you have any further
questions, please contact the supplier or call the manufacturer of the unit directly.
Capacitor Discharge!
Before performing any work on or in the unit, disconnect from the mains and wait at least 5 minutes until the D.C. link capacitors have
been fully discharged, to make sure that the device is no longer live.
Automatic Restart!
With certain parameter settings it may happen that the frequency inverter starts up automatically when the mains supply returns after a
power failure. Make sure that no persons and no other equipment is in danger.
Terms of delivery:
Our deliveries and services are based on the ”General Terms of Delivery of the Austrian Electrical Industries” in the latest edition.
Regulations:
It is the user’s responsibility to ensure that the instrument and its component parts are used in compliance with applicable regulations. It is
not permitted to use these instruments in residential areas without special measures to suppress radio frequency interference.
Topic Page
Brief description 2
Detailed description 3
Internal used blocks 3
Display of the block in the Step 7 FUP-Editor 3
Input parameters 4
Output parameters 4
Structure of telegram 5
Scaling of analog values (reference and actual values) 5
Description of digital values (control and status bits) 6
Example 10
Hardware configuration 10
FUP editor 11
Object block OB1 12
Function block FB100 14
This manual covers the connection of >pDRIVE< MX frequency inverters with profibus option PBO1
and a PLC type Simatic by means of Step 7 function block. Detailled information about the Profibus DP
is provided in the Manual Option Profibus PBO1.
Please inform your supplier or insurance company in the case of damage or incomplete delivery. The
manufacturer shall not accept responsibility for damage caused during shipment or unpacking.
Profibus protocol: the telegram structures PPO3 and PPO4 are used
(Parameter Process data Object)
PPO 1
PPO 2
PPO 3
PPO 4
"DB_pDRIVE_MX"
"pDRIVE_MX_d"
... EN Act value1 ...
... Start_address Act_value2 ...
... PPO_type Act_value3 ...
... Ref_value1 Act_value4 ...
... Ref_value2 Act_value5 ...
... Ref_value3 Not_ReadySwitchOn ...
... Ref_value4 ReadySwitchOn ...
... Ref_value5 ReadyToRun ...
... Start_Stop Run ...
... Pulse_release Fault ...
... Quick_Stop LockSwitchOn ...
... Release_Operation Alarm ...
... Reset f_eq_fref ...
... Bit_11_STW f_gr_flevel ...
... Bit_12_STW DeviceState ...
... Bit_13_STW Bit_11_ZSW ...
... Bit_14_STW Bit_12_ZSW ...
... Bit_15_STW Bit_13_ZSW ...
Bit_14_ZSW ...
Bit_15_ZSW ...
ENO ...
Output parameters
Control word
Steuerwort Ref. value 1 1
Hauptsollwert Ref. value 2 2
Hilfssollwert Ref. value 3 3
Hilfssollwert Ref. value 4 4
Hilfssollwert Ref. value 5 5
Hilfssollwert
Status word
Zustandswort Act. value 1 1
Hauptistwert Act. value 22
Hilfsistwert Act. value 33
Hilfsistwert Act. value 44
Hilfsistwert Act. value 55
Hilfsistwert
At the inputs and outputs the values are in a range of ±200 % according to the following table.
That complies with a range of 7FFF…8000 hex at the inverter side.
% Hexadecimal Decimal
199.9939 7FFF 32767
100.0000 4000 16384
0.0061 0001 1
0.0000 0000 0
-0.0061 FFFF -1
-100.0000 C000 -16384
-200.0000 8000 -32768
The limits (7FFF and 8000) are checked internal in the block and so they cannot be exceeded.
Start Stop
Pulse release
&
Quick stop
STW
OFF 1
Fault (ZSW Bit 3) Bit 0
internal
Bit 1 STW: The external command Pulse release sets bit 1 / STW directly to 1.
For operation of the frequency inverter bit 1 must be always 1 (switch-on condition).
Setting to zero (also only for a short time) causes an immediately run-out of the motor. The
device state changes to "Lock switching on". Before starting again the basic state has to be
applied. OFF1=0; OFF2=1, OFF3=1; Control OK.
Thus, starting during active ON-command (Bit 0=1) is not possible!
Inverting this command has to be discussed!
STW
Pulse release OFF 2
Bit 1
internal
Bit 2 STW: The external command Quick stop sets bit 2 / STW directly to 1.
For operation of the frequency inverter bit 2 must be always 1 (switch-on condition).
Setting to zero causes an immediately deceleration without deceleration ramp. If speed zero is
reached, the drive changes to device state "Pulse release". Before starting again the basic state
has to be applied. OFF1=0, OFF2=1, OFF3=1; Control OK.
Thus, starting during active ON-command (Bit 0=1) is not possible!
STW
Quick stop OFF 3
Bit 2
internal
STW
Release
Release operation operation
Bit 3
internal
Bit 4 STW: The command "Ramp output enable", which is defined according to the Profidrive profile, is
typically not used and therefore internally set to 1 always.
STW
1 Ramp output
Bit 4 enable
internal
Bit 5 STW: The command "Ramp integrator enable", which is defined according to the Profidrive profile, is
typically not used and therefore internally set to 1 always.
STW
Ramp integrator
1
Bit 5 enable
internal
Bit 6 STW: The command "Release reference value", which is defined according to the Profidrive profile, is
typically not used and therefore internally set to 1 always.
STW
1 Release
Bit 6 ref. value
internal
STW
Reset Reset
Bit 7
internal
Bit 8 STW: The command "Jog 1 start", which is defined according to the Profidrive profile, is typically not
used and therefore internally set to 0 always.
STW
0 Jog 1 start
Bit 8
internal
Bit 9 STW: The command "Jog 2 start", which is defined according to the Profidrive profile, is not
supported by the >pDRIVE< MX and therefore internally set to 0 always.
STW
0 ----
Bit 9
internal
Bit 10 STW: The command "Control OK", which is defined according to the Profidrive profile, is compulsory
for the communication with the bus subscibers in the PZD area and therefore internally set to 1
always.
STW
1 Control OK
Bit 10
internal
Bit 11…15 STW: According to the Profidrive profile this 5 bits are not defined and thus they are "free for use"
in the >pDRIVE< MX. For adjustment possibilities see Profibus instructions for option
PBO1.
STW
Bit 11 IN … Bit 15 IN Bit 11…15
Bit 11…15
internal
>pDRIVE< MX – Online-Manual SPS – 8 074 184.00/00 – Page 8
Status Word ZSW
Bit 0…10 ZSW: Corresponding to the states of status word bits 0...10, which are described below, the
respective operating states are generated and issued separately or as a word.
Bit ZSW
Operating state No.
10 9 8 7 6 5 4 3 2 1 0
Not ready to switch on x 1 x x 0 x x 0 0 0 0 0
Ready to switch on x 1 x x 0 x x 0 0 0 1 1
Ready to run x 1 x x 0 x x 0 0 1 1 3
Run x 1 x x 0 x 1 0 1 1 1 7
Fault x 1 x x 0 x x 1 0 0 0 20
Lock switching on x 1 x x 1 x x 0 0 0 0 19
Alarm x x x 1 x x x x x x x −
f(n) = f(n)ref x x 1 x x x x x x x x −
f(n) < f(n)level 1 x x x x x x x x x x −
ZSW
1= Not_ReadySwitchOn
1= ReadySwitchOn
Bit 0 1= ReadyToRun
Bit 1
Bit 2 1= Run
Bit 3
Bit 4 1= Fault
Bit 5 interpretation
Bit 6 1= LockSwitchOn
Bit 7
Bit 8 1= Alarm
Bit 9
Bit 10 1= f_eq_fref
1= f_gr_flevel
Bit 11…15 ZSW: According to the Profidrive profile this 5 bits are not defined and thus they are "free for
use" in the >pDRIVE< MX. For selection of possible messages see Profibus instructions
for option PBO1.
ZSW
Bit 11…15 Bit_11_OUT … Bit_15_OUT
Bit 11-15
Hardware configuration
Step 2:
Step 3:
Exemplary linking of a running block in the Step7 FUP editor (corresponding to the hardware configuration
above).
Network: 1 Plant On
"ReadySwitchOn"
"ReadyToRun" >=1 "Plant_On" "Start_Stop"
"Run"
& =
"DB_pDRIVE_MX"
"pDRIVE_MX_e"
EN Act_value1 "Act_value1"
W#16#200 Start_address Act_value2 "Act_value2"
"PPO_type" PPO_type Act_value3 "Act_value3"
"Ref_value1" Ref_value1 Act_value4 "Act_value4"
" Ref_value2" Ref_value2 Act_value5 "Act_value5"
" Ref_value3" Ref_value3 Not_ReadySwitchOn "Not_ReadySwitchOn"
" Ref_value4" Ref_value4 ReadySwitchOn "ReadySwitchOn"
" Ref_value5" Ref_value5 ReadyToRun "ReadyToRun"
"Start_Stop" Start_Stop Run "Run"
"Pulse_release" Pulse_release Fault "Fault"
"Quick_Stop" Quick_Stop LockSwitchOn "LockSwitchOn"
"Release_Operation" Release_Operation Alarm "Alarm"
"Reset" Reset f_eq_fsoll "f_eq_fsoll"
"Bit_11_STW" Bit_11_STW f_gr_flevel "f_gr_flevel"
"Bit_12_STW" Bit_12_STW DeviceState "DeviceState"
"Bit_13_STW" Bit_13_STW Bit_11_ZSW "Bit_11_ZSW"
"Bit_14_STW" Bit_14_STW Bit_12_ZSW "Bit_12_ZSW"
"Bit_15_STW" Bit_15_STW Bit_13_ZSW "Bit_13_ZSW"
Bit_14_ZSW "Bit_14_ZSW"
Bit_15_ZSW "Bit_15_ZSW"
ENO
"ReadySwitchOn"
"ReadyToRun" >=1 "Plant_Ready"
"Run"
=
SET
S #High
R #Low
PPO3
& JMPN
#PPO_type
"DPRD DAT"
RET_VAL #RET_VAL_DPRD_DAT_4
EN RECORD #FURD_DAT_4
#Start_address LADDR ENO
// Reference value 1
// Check of reference value 1 (upper limit)
U(
L #Ref_value1
L 1.999939e+002
>R
)
SPBNB S141
L 1.999939e+002
T #Ref_1_Checked
// Check of reference value 1 (lower limit)
S141: U(
L #Ref_value1
L -2.000000e+002
<R
)
SPBNB S142
L -2.000000e+002
T #Ref_1_Checked
// Take over reference value 1
S142: U(
L #Ref_value1
L 1.999939e+002
<=R
)
U(
L #Ref_value1
L -2.000000e+002
>=R
)
SPBNB S143
L #Ref_value1
T #Ref_1_Checked
// Multiply by 163.84 because reference value is available in %
S143: L #Ref_1_Checked
L 1.638400e+002
*R
RND //Conversion from Real to DINT
T #FUWR_DAT_4.PZD2 //Conversion from DINT to INT and output
>pDRIVE< MX – Online-Manual SPS – 8 074 184.00/00 – Page 19
// Reference value 2
// Check of reference value 2 (upper limit)
U(
L #Ref_value2
L 1.999939e+002
>R
)
SPBNB S241
L 1.999939e+002
T #Ref_2_Checked
// Check of reference value 2 (lower limit)
S241: U(
L #Ref_value2
L -2.000000e+002
<R
)
SPBNB S242
L -2.000000e+002
T #Ref_2_Checked
// Take over reference value 2
S242: U(
L #Ref_value2
L 1.999939e+002
<=R
)
U(
L #Ref_value2
L -2.000000e+002
>=R
)
SPBNB S243
L #Ref_value2
T #Ref_2_Checked
// Multiply by 163.84 because reference value is available in %
S243: L #Ref_2_Checked
L 1.638400e+002
*R
RND //Conversion from Real to DINT
T #FUWR_DAT_4.PZD3 //Conversion from DINT to INT and output
// Reference value 3
// Check of reference value 3 (upper limit)
U(
L #Ref_value3
L 1.999939e+002
>R
)
SPBNB S341
L 1.999939e+002
T #Ref_3_Checked
// Check of reference value 3 (lower limit)
S341: U(
L #Ref_value3
L -2.000000e+002
<R
)
SPBNB S342
L -2.000000e+002
T #Ref_3_Checked
#Pulse_release
#Quick_Stop &
#FURD_DAT_4.PZD1.Bit_3 #FUWR_DAT_4.PZD1.Bit_0
#Start_Stop =
#FUWR_DAT_4.PZD1.Bit_1
#Pulse release & =
#FUWR_DAT_4.PZD1.Bit_2
#Quick Stop & =
#FUWR_DAT_4.PZD1.Bit_3
#Release Operation & =
#FUWR_DAT_4.PZD1.Bit_4
#High & =
#FUWR_DAT_4.PZD1.Bit_5
=
#FUWR_DAT_4.PZD1.Bit_6
=
#FUWR_DAT_4.PZD1.Bit_7
#Reset & =
#FUWR_DAT_4.PZD1.Bit_8
#Low & =
#FUWR_DAT_4.PZD1.Bit_9
=
#FUWR_DAT_4.PZD1.Bit_10
#High & =
#FUWR_DAT_4.PZD1.Bit_11
#Bit 11 STW #
#FUWR_DAT_4.PZD1.Bit_12
#Bit 12 STW #
#FUWR_DAT_4.PZD1.Bit_13
#Bit 13 STW # >=1
#FUWR_DAT_4.PZD1.Bit_14
#Bit 14 STW #
#FUWR_DAT_4.PZD1.Bit_15 #Internal_Flag
#Bit 15 STW # =
#FURD_DAT_4.PZD1.Bit_0
#FURD_DAT_4.PZD1.Bit_1
#FURD_DAT_4.PZD1.Bit_2
&
#FURD_DAT_4.PZD1.Bit_3
#FURD_DAT_4.PZD1.Bit_6 #Not_ReadySwitchOn
#FURD_DAT_4.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
0 IN ENO
#FURD_DAT_4.PZD1.Bit_0
#FURD_DAT_4.PZD1.Bit_1
#FURD_DAT_4.PZD1.Bit_2
&
#FURD_DAT_4.PZD1.Bit_3
#FURD_DAT_4.PZD1.Bit_6 #ReadySwitchOn
#FURD_DAT_4.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
1 IN ENO
#FURD_DAT_4.PZD1.Bit_0
#FURD_DAT_4.PZD1.Bit_1
#FURD_DAT_4.PZD1.Bit_2
&
#FURD_DAT_4.PZD1.Bit_3
#FURD_DAT_4.PZD1.Bit_6 #ReadyToRun
#FURD_DAT_4.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
3 IN ENO
#FURD_DAT_4.PZD1.Bit_0
#FURD_DAT_4.PZD1.Bit_1
#FURD_DAT_4.PZD1.Bit_2
#FURD_DAT_4.PZD1.Bit_3 &
#FURD_DAT_4.PZD1.Bit_4
#FURD_DAT_4.PZD1.Bit_6 #Run
#FURD_DAT_4.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
7 IN ENO
#FURD_DAT_4.PZD1.Bit_0
#FURD_DAT_4.PZD1.Bit_1
#FURD_DAT_4.PZD1.Bit_2
&
#FURD_DAT_4.PZD1.Bit_3
#FURD_DAT_4.PZD1.Bit_6 #Fault
#FURD_DAT_4.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
20 IN ENO
#FURD_DAT_4.PZD1.Bit_0
#FURD_DAT_4.PZD1.Bit_1
#FURD_DAT_4.PZD1.Bit_2
&
#FURD_DAT_4.PZD1.Bit_3
#FURD_DAT_4.PZD1.Bit_6 #LockSwitchOn
#FURD_DAT_4.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
19 IN ENO
#Alarm
#FURD DAT 4.PZD1.Bit 7 & =
#f_eq_fref
#FURD DAT 4.PZD1.Bit 8 & =
#f_gr_flevel
#FURD DAT 4.PZD1.Bit 10 & =
#Bit_11_ZSW
#FURD DAT 4.PZD1.Bit 11 #
#Bit_12_ZSW
#FURD DAT 4.PZD1.Bit 12 #
#Bit_13_ZSW
#FURD DAT 4.PZD1.Bit 13 # >=1
#Bit_14_ZSW
#FURD DAT 4.PZD1.Bit 14 #
#Bit_15_ZSW #Internal_Flag
#FURD DAT 4.PZD1.Bit 15 # =
// Actual value 1
L #FURD_DAT_4.PZD2
ITD
DTR
L 1.638400e+002
/R
T #Act_value1
// Actual value 2
L #FURD_DAT_4.PZD3
ITD
DTR
L 1.638400e+002
/R
T #Act_value2
// Actual value 3
L #FURD_DAT_4.PZD4
ITD
DTR
L 1.638400e+002
/R
T #Act_value3
// Actual value 4
L #FURD_DAT_4.PZD5
ITD
DTR
L 1.638400e+002
/R
T #Act_value4
// Actual value 5
L #FURD_DAT_4.PZD6
ITD
DTR
L 1.638400e+002
/R
T #Act_value5
"DPWR_DAT"
EN
#Start_address LADDR RET_VAL #RET_VAL_DPWR_DAT_4
#FUWR_DAT_4 RECORD ENO
END
#PPO type & JMP
// Reference value 1
// Check of reference value 1 (upper limit)
U(
L #Ref_value1
L 1.999939e+002
>R
)
SPBNB S131
L 1.999939e+002
T #Ref_1_Checked
#Pulse release
#Quick_Stop &
#FURD_DAT_3.PZD1.Bit_3 #FUWR_DAT_3.PZD1.Bit_0
#Start_Stop =
#FUWR_DAT_3.PZD1.Bit_1
#Pulse release & =
#FUWR_DAT_3.PZD1.Bit_2
#Quick Stop & =
#FUWR_DAT_3.PZD1.Bit_3
#Release Operation & =
#FUWR_DAT_3.PZD1.Bit_4
#High & =
#FUWR_DAT_3.PZD1.Bit_5
=
#FUWR_DAT_3.PZD1.Bit_6
=
#FUWR_DAT_3.PZD1.Bit_7
#Reset & =
#FUWR_DAT_3.PZD1.Bit_8
#Low & =
#FUWR_DAT_3.PZD1.Bit_9
=
#FUWR_DAT_3.PZD1.Bit_10
#High & =
#FUWR_DAT_3.PZD1.Bit_11
#Bit 11 STW #
#FUWR_DAT_3.PZD1.Bit_12
#Bit 12 STW #
#FUWR_DAT_3.PZD1.Bit_13
#Bit 13 STW # >=1
#FUWR_DAT_3.PZD1.Bit_14
#Bit 14 STW #
#FUWR_DAT_3.PZD1.Bit_15 #Internal_Flag
#Bit 15 STW # =
#FURD_DAT_3.PZD1.Bit_0
#FURD_DAT_3.PZD1.Bit_1
#FURD_DAT_3.PZD1.Bit_2
&
#FURD_DAT_3.PZD1.Bit_3
#FURD_DAT_3.PZD1.Bit_6 #Not_ReadySwitchOn
#FURD_DAT_3.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
0 IN ENO
#FURD_DAT_3.PZD1.Bit_0
#FURD_DAT_3.PZD1.Bit_1
#FURD_DAT_3.PZD1.Bit_2
&
#FURD_DAT_3.PZD1.Bit_3
#FURD_DAT_3.PZD1.Bit_6 #ReadySwitchOn
#FURD_DAT_3.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
1 IN ENO
#FURD_DAT_3.PZD1.Bit_0
#FURD_DAT_3.PZD1.Bit_1
#FURD_DAT_3.PZD1.Bit_2
&
#FURD_DAT_3.PZD1.Bit_3
#FURD_DAT_3.PZD1.Bit_6 #ReadyToRun
#FURD_DAT_3.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
3 IN ENO
#FURD_DAT_3.PZD1.Bit_0
#FURD_DAT_3.PZD1.Bit_1
#FURD_DAT_3.PZD1.Bit_2
#FURD_DAT_3.PZD1.Bit_3 &
#FURD_DAT_3.PZD1.Bit_4
#FURD_DAT_3.PZD1.Bit_6 #Run
#FURD_DAT_3.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
7 IN ENO
#FURD_DAT_3.PZD1.Bit_0
#FURD_DAT_3.PZD1.Bit_1
#FURD_DAT_3.PZD1.Bit_2
&
#FURD_DAT_3.PZD1.Bit_3
#FURD_DAT_3.PZD1.Bit_6 #Fault
#FURD_DAT_3.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
20 IN ENO
#FURD_DAT_3.PZD1.Bit_0
#FURD_DAT_3.PZD1.Bit_1
#FURD_DAT_3.PZD1.Bit_2
&
#FURD_DAT_3.PZD1.Bit_3
#FURD_DAT_3.PZD1.Bit_6 #LockSwitchOn
#FURD_DAT_3.PZD1.Bit_9 =
MOVE #DeviceState
EN OUT
19 IN ENO
#Alarm
#FURD DAT 3.PZD1.Bit 7 & =
#f_eq_fref
#FURD DAT 3.PZD1.Bit 8 & =
#f_gr_flevel
#FURD DAT 3.PZD1.Bit 10 & =
#Bit_11_ZSW
#FURD DAT 3.PZD1.Bit 11 #
#Bit_12_ZSW
#FURD DAT 3.PZD1.Bit 12 #
#Bit_13_ZSW
#FURD DAT 3.PZD1.Bit 13 # >=1
#Bit_14_ZSW
#FURD DAT 3.PZD1.Bit 14 #
#Bit_15_ZSW #Internal_Flag
#FURD DAT 3.PZD1.Bit 15 # =
Network: 50 End
End of block
END: NOP 0
www.pdrive.com
The right to make technical changes is reserved.