PDM UserMan Us0310
PDM UserMan Us0310
PacDriveTM
System
PDM_UserMan_us
Article number: 17130061-001
Edition: 10.2003
Impressum
Imprint
© All rights reserved to ELAU AG, also in case of patent right
applications.
No part of this documentation and the related software and firm-
ware may be reproduced, rewritten, stored on a retrieval system,
Korrekturausdruck
transmitted or translated into any other language or computer lan-
guage without the express written consent of ELAU AG.
Any possible measure was taken to ensure the that this product
documentation is complete and correct. However, since hardware
and software are continuously improved, ELAU makes no repre-
sentations or warranties with respect to the contents of this product
documentation.
Trademarks
PacDrive is a registered trademark of ELAU AG.
All other trademarks mentioned are the exclusive property of their
manufacturers.
Contents
1 On this manual 9
1.1 Introduction ............................................................................................ 9
Korrekturausdruck
3 System Overview 19
3.1 Drive Concepts of Packaging Machines .............................................. 19
3.2 Structure of the PacDrive™ Automation System ................................. 21
3.3 Concept ............................................................................................... 22
3.4 Components ........................................................................................ 23
5 Programming Guidelines 95
PDM_UserMan_usIVZ.fm
Korrekturausdruck
5.2 The Structure of a Project .................................................................... 99
5.2.1 Program Organization with Tasks ........................................................ 99
5.3 ELAU Program Structure .................................................................... 109
5.3.1 ELAU Functions and Function Blocks ................................................ 112
5.3.2 Parameter Transmission .................................................................... 113
5.4 Designator Names .............................................................................. 114
5.5 Upper and Lower Case ...................................................................... 116
5.6 Valid Characters ................................................................................. 116
5.7 Create a PacDriveTM project .............................................................. 116
5.7.1 Problem Definition .............................................................................. 116
5.7.2 Hardware ............................................................................................ 118
5.7.3 Configuration ...................................................................................... 119
5.7.4 User Program ..................................................................................... 122
5.7.5 Observe & Operate ............................................................................ 128
5.7.6 Document and Save a Project ............................................................ 130
5.8 Expansion of the Example by Positioning Functions .......................... 131
5.8.1 Problem Definition .............................................................................. 131
5.8.2 Hardware ............................................................................................ 133
5.8.3 Configuration ...................................................................................... 134
5.8.4 User Program ..................................................................................... 136
5.8.5 Observe & Operate ............................................................................ 138
5.8.6 Document and Save the Project ......................................................... 142
7 Teleservice 155
7.1 Overview ............................................................................................ 155
Korrekturausdruck
8 Networks 203
8.1 Basic Concept .................................................................................... 203
8.1.1 Peer to Peer ....................................................................................... 203
8.1.2 Client-Server ...................................................................................... 204
8.2 Topologies ......................................................................................... 204
8.2.1 The Term “Topologies“ ...................................................................... 204
8.2.2 Bus ..................................................................................................... 205
8.2.3 Star .................................................................................................... 206
8.2.4 Loop ................................................................................................... 207
8.2.5 Mixed Forms ...................................................................................... 208
8.2.6 Transmission Media ........................................................................... 210
8.3 MAC Address ..................................................................................... 211
8.4 Access Methods ................................................................................ 212
8.4.1 CSMA/CD .......................................................................................... 212
8.4.2 Token Passing ................................................................................... 213
8.5 Overview of Network Operating Systems .......................................... 214
PDM_UserMan_usIVZ.fm
Korrekturausdruck
8.6.3 IP Addressing ..................................................................................... 217
8.6.4 Subnet Mask ...................................................................................... 217
8.6.5 IP Address Classes ............................................................................ 218
8.6.6 Private IP Networks ............................................................................ 218
8.6.7 IP Address Assignment ...................................................................... 219
8.6.8 Name Resolution ................................................................................ 220
8.6.9 IP Host and NetBIOS Name Resolution ............................................. 220
8.7 Coupling of Networks ......................................................................... 221
8.7.1 Additional Devices for Network Coupling ........................................... 221
8.7.2 Tools for Dealing with TCP/IP Problems ............................................ 224
12 ENI-4 247
12.1 Function of the ENI ............................................................................. 247
PDM_UserMan_usIVZ.fm
14 Glossary 259
15 APPENDIX 285
15.1 Contact .............................................................................................. 285
15.2 Further Literature ............................................................................... 286
15.3 Product Training ................................................................................ 288
15.4 Modifications ...................................................................................... 289
15.5 Index .................................................................................................. 291
15.6 Form for Error Report ........................................................................ 295
PDM_UserMan_usIVZ.fm
Korrekturausdruck
PDM_UserMan_usIVZ.fm
1 On this manual
1.1 Introduction
Korrekturausdruck
Before using ELAU components for the first time, you should
familiarize yourself with this operating manual.
In particular, observe the safety notes described in chapter 2.
Only persons who meet the criteria for "Selection and Qualification
of Staff" (see chapter 2.4) are allowed to work on ELAU
components.
One copy of this manual has to be available for staff working on the
components with access at any time.
This manual is to help you use the component safely and expertly
and to use it as directed.
Observe this manual. This will help to avoid risks, reduce repair
costs and down times and increase the lifetime and reliability of the
products.
You also need to observe the valid rules for the prevention of
accidents and for environmental protection in the country and place
where the device is used.
PDM_VerwendStd_us.FM
Korrekturausdruck
Depiction Meaning
If activities involve a residual risk, you will find a clear note in the
respective places. The note describes the risk that may occur and
preventive measures to avoid that risk.
2.1 Basics
The ELAU components are built according to the state of
technology and generally accepted safety rules. Nevertheless, their
use may cause a risk to life and limb or material damage if:
you do not use the components as directed
the universally valid local and national rules for safety and the
prevention of accidents.
PDM_SicherhMax_us_neu.fm
Risk categories
The safety notes in this manual are grouped into different risk
Korrekturausdruck
categories. The table below shows which risk and possible
consequences the symbol (pictograph) and the signal words
indicate.
PDM_SicherhMax_us_neu.fm
Use other The operating conditions at the place where the device is used
than directed must be checked on the basis of the given technical data
(performance information and ambient conditions) and observed.
The device must not be put into operation until it is guaranteed that
the useable machine or the plant in which the motor is installed
meets in its entirety EC directive 98/37/EC (machine directive).
In addition, observe the following norms, directives and regulations:
DIN EN 60204 Safety of machines:
Electrical equipment of machines.
DIN EN 292 part 1 and part 2 Safety of machines:
Basics, general design guidelines.
DIN EN 50178 Equipment of high-voltage plants with electronic
operating means.
EMC directive 89/336/EEC
PDM_SicherhMax_us_neu.fm
Korrekturausdruck
and implement them accordingly.
This manual is aimed in particular at design and application
engineers in the fields of mechanical and electrical engineering, at
programmers, service and commissioning engineers.
PDM_SicherhMax_us_neu.fm
WARNING!
Korrekturausdruck
Korrekturausdruck
DANGER!
High voltage!
Life hazard!
Observe the universally valid construction and safety rules for
working on high-voltage units.
After installation, check the fixed connection of the earth
conductor on all electric appliances according to the connection
plan.
Operation, even for short-term measuring and test purposes, is
only permitted with an earth conductor firmly connected to all
electric components.
Before accessing electrical parts with voltages exceeding 50
Volts, disconnect the unit from mains or power supply and lock it
out. After switching off, wait for at lest 5 minutes before touching
any components.
Do not touch electrical connections of the components while the
unit is on.
Before switching on the unit, cover all voltage carrying parts to
prevent accidental contact.
Provide for protection against indirect touching (EN 50178 /
1998 section 5.3.2).
DANGER!
High leak current!
Life hazard!
The leak current is greater than 3.5 mA. Therefore the units
must have a firm connection to the power grid (according to DIN
EN 50178 / 1998 - equipment of high-voltage systems).
PDM_SicherhMax_us_neu.fm
DANGER!
High voltage due to wrong connection!
Life hazard or risk of serious injury!
Only units, electric components or cables with a sufficient safe
separation of the connected power supplies according to EN
50178 / 1998 (equipment of high-voltage systems with electronic
operating means) may be connected to the signal voltage
connections of these components.
Make sure that the existing safe separation is retained
throughout the entire current circuit.
Korrekturausdruck
software errors
faulty components
operating mistakes
DANGER!
Potentially dangerous movements!
Life hazard, serious injury or material damage!
No persons are allowed within the motion range of the machine.
This is to be ensured by means of devices like protective fences,
grids, covers or photoelectric barriers.
The fences and covers must be sufficiently strong to withstand
the maximum possible motion energy.
The emergency stop switch must be located very close to the
operator. Check the operation of the emergency stop before
starting up the plant.
Secure against unintentional start by enabling the mains
contactor of the drives via an emergency off circuit or by means
of the function 'safe stop'.
Before accessing the danger zone, bring the drives to a safe
stop.
To work on the plant, power must be turned off and locked out.
3 System Overview
Korrekturausdruck
PDM_SysUebers_us.FM
page 22
TCP/IP Ethernet
3 System Overview
Industrial PC PacController
MAx-4
Concept
PacDrive
Ethernet/IP Motor Power supply
MC-4 MC-4 MC-4 MC-4 Controller PS-4 PS-4
MC-4
n xSCL055
peripheral I/Os
SM-Servomotor SM-Servomotor
ELAU AG
Korrekturausdruck
PDM_SysUebers_us.FM
3.4 Components
3.4 Components
Diagnosing tool
MAx-4 PacController
The MAx-4 PacController, a Pentium based controller hardware
with VxWorks real-time operating system, realize the PLC and
motion functions.
A PacController synchronizes, coordinates and generates the
positioning functions for a maximum of 44 drives of a food and
packaging machine.
For HMI tasks, various standard HMIs are used. Whether low-cost
clear text or IPC - no problem for the flexible MAx-4.
The highlights of the MAx-4 PacController
Pentium controller hardware
Coordinates up to 47 axis
Ethernet interface
MC-4 MotorController
Leading-edge The digital MC-4 MotorController is characterised by its compact
technology and autonomous structure suitable for wall mounting as well as its
leading-edge technology. The innovative MC-4 has the mains
supply unit, end stage and software regulator for one axis
Korrekturausdruck
integrated in a compact casing. As it communicates with the
PacController or PacPC only via fibre optical cable, it is also
suitable for a decentralized structure. It requires no user program,
comes with single- and multi-turn processing features as standard
and configures itself with the help of the electronic name plate in
the SM motor.
The highlights of the MC-4 MotorController
World-wide voltage range
Minimum size
250 % overload
few types
SM-Motor
Highly Machines with fast cycle rates require highly dynamic AC servo
dynamic servo motors. The SM motor series offers you as a user an optimum
motors motor concept for your food and packaging machines. The dynamic
brushless servo motors are furnished with high-resolution encoders
(single-turn or multi-turn) and electronic name plate. Smooth
surface and compact size meet the requirements of the target
market.
The highlights of the SM motors
Low mass moment of inertia
4-fold overload
IP 65 protection
PDM_SysUebers_us.FM
Around the end of the 1980s, a development started that made pro-
grammable logic controls (PLCs) central components of automation
technology.
The PLC systems have various advantages compared with conven-
tional relay technology: The systems can be adjusted fast in case of
process changes, they are easily extendable etc. The function and
structure of the systems are independent of the size of the PLC. A
PLC consists of hardware and software. The hardware comprises a
processor with storage components and further electronics for the
connection of input and output systems. Modular PLC systems con-
sist of various components such as component carriers with system
bus, power unit, central processing unit and application storage,
digital inputs and outputs and intelligent components for analog
data processing or drive control.
For the input and output level, a standardized voltage of 24 V has
been set. By means of the standardized voltage, a resistance that
complies with the industrial environment was achieved.
The software comprises the operating system and the application
program. The operating system manages the system resources
and the organizational functions. In addition, the operating system
ensures a controlled start after the operating voltage is switched on,
it takes charge of error management and enables the exchange of
information via communication groups. It coordinates the execution
of the application program, which maps the logic course of the con-
trol task.
PD_UserMan_IEC_us.fm
Controller
Power On
Korrekturausdruck
Delete the remanent Marker,
Counter, Times and the output
image.
Operating System
- Start / Stop Save inputs in the input image. Inputs
- etc ...
NOTE
The sequence structure described here applies in particular to sin-
gle-task systems. Since the PacDriveTM system is a multi-task
system, there are deviations.
See also „Special Features of the PacDrive TM “, page 86.
PD_UserMan_IEC_us.fm
The simple flow structure shows its advantages when data and pro-
grams are manipulated in ongoing operation. Almost all
programming environments allow for the change of all variables
during a processing cycle. Due to the set program structure, pro-
gram sequences can be loaded at run time (Online Change), since
Korrekturausdruck
there are always exact starting points at the beginning and the end
of a cycle.
When these new systems were launched, the producers had to
make their customers, who were used to contactors, acquainted
with the programming of the new systems. For that reason,
numerous but mostly short-lived attemps were made to find a pro-
gramming language that facilitates the change from the traditional
detailed wiring diagram to the PLC program. The programming lan-
guages Function Block Diagram, Ladder Diagram and Instruction
List were developed then.
At that time, however, developers failed to define a universally bin-
ding standard for programming PLC systems. In consequence,
each producer had specific characteristics in the programming lan-
guages Function Block Diagram, Ladder Diagram and Instruction
List. Therefore, company standards emerged in various geographic
regions, such as Siemens STEP 5 in Europe, Allen Bradley in the
U.S. and MITSUBISHI in the Far East.
PD_UserMan_IEC_us.fm
4.2 IEC-61131
In recent years, the complexity of the applications and thus the pro-
gramming costs grew at a superproportional rate. The producer-
specific standards did not ensure that the programs could be re-
Korrekturausdruck
used.
Due to the above reasons, the so-called IEC standard IEC 61131
was worked out at the beginning of the 1990s under the lead of the
International Electrotechnical Commission (IEC). Within the context
of this process, the new languages Structured Text (ST) and
Sequential Function Chart (SFC) were defined in addition to the
existing languages Ladder Diagram (LD), Function Block Diagram
(FBD) and Instruction List (IL). IEC 61131 sums up the require-
ments for a modern PLC system. The standard was not intended as
a rigid specification, but as a guideline for PLC programming.
Accordingly, the standard describes the significant properties of an
PLC while leaving producers enough room to use their own
implementation.
IEC-61131 tried to bring modern software engineering into the PLC
world. This was necessary due to more complex processes and
functions and the cost explosion regarding the development of
application programs.
Tested and standardized software modules which can be re-used
was regarded as a solution. However, this is made more complica-
ted due to:
direct addressing
untypisized variables,
no type check.
Configuration
Resource
Korrekturausdruck
Task
Program
call parameters
Korrekturausdruck
Integer with and without algebraic sign (ANY_INT)
No. of
Data type Description Range Initial
bits
BOOL boolean 1 [0, 1] 0
No. of
Data type Description Range Initial
bits
SINT short integer 8 [-128, ..., +127] 0
No. of
Data type Description Range Initial
bits
REAL floating-point 32 see IEC 559 0.0
Korrekturausdruck
number
No. of
Data type Description Range Initial
bits
DATE date like 0001-01-01
DWORD
No. of
Data type Description Range Initial
bits
TIME duration like 0s
DWORD
NOTE
The PacDrive™ M system does not support the LWORD, LINT and
ULINT data types.
FALSE or 0
Korrekturausdruck
tion
Example for WORD: 234, 16#ff, 2#1001_1100_0011_1111
SINT, INT, DINT, LINT, USINT, UINT, UDINT, ULINT
Decimal, hexadecimal (16#), octal (8#) or binary (2#) representa-
tion. The underscore (_) separates units.
Examples:
Decimal representation for INT: -123, +234, 0, 1_000
Hexadecimal representation for INT: 16#F1, 16#0A_1B
Binary representation for INT: 2#0001_0011_0111_1111
REAL, LREAL
Normal decimal representation with decimal point or exponential
representation.
Example: 1000.23 and 1.23e3 and 1.23E3 and 1.23E03 are inter-
preted identically.
TIME (Time duration)
TIME#, t# or T# stand at the beginning of a time/date designation.
Overflow is allowed (e.g. 25 hours).
d stands for days, h for hours, m for minutes, s for seconds and ms
for milliseconds. The underscore (_) separates units.
Example: T#2d_26h_4m_12s_123ms
DATE, TIME_OF_DAY or TOD, DATE_AND_TIME or DT
DATE# or D# stands for a date
TIME_OF_DAY# or TOD# stands for a time of day
DATE_AND_TIME# or DT# stands for time of day and date
Date: D#1998-12-07 stands for July 7, 1998
Time of day notation: TOD#12:00:00.123
Date and time: 1998-12-07-12:00:00.123
STRING
Inverted commas ‘ ‘ contain a string.
The dollar sign $ leads control characters (line feed, tabs).
Examples:
String, Control charcter: ‘This is a line feed character $L‘
Empty String:
Arrays (ARRAY)
Pointers (POINTER)
Enumeration types
Structures (STRUCT)
References
Korrekturausdruck
Pointer (POINTER)
NOTE
You should avoid using pointers, since they cannot be checked by
Korrekturausdruck
the compiler and at run time.
In most cases, the parameter transfer with VAR_IN_OUT is the bet-
ter solution.
Pointers feature a data type and an address. The data type is the
data type of the data elements to which the pointer is pointing. The
address is the address (the position) where the data element is
stored in the memory unit.
In pointers, the address of variables or function blocks is stored
during the run time of a program.
Pointer declarations have the following syntax:
<identifier>: POINTER TO <data type/function block>;
A pointer can point to any data type and function block, including
self-defined ones.
With the address operator ADR, the address of a variable or
function block is assigned to the pointer.
The dereferentiation of a pointer is effected via the content operator
"^" after the pointer identifier.
Example:
pt:POINTER TO INT;
var_int1:INT := 5;
var_int2:INT;
pt := ADR(var_int1);
var_int2:= pt^; (* var_int2 is now 5 *)
Enumeration type
An enumeration type is a self-defined data type which is made up of
a number of self-defined string constants. Those constants are cal-
led enumeration values.
The enumeration values are known throughout the entire project,
even if they were declared locally in a block. They start with the
keyword TYPE and end with END_TYPE.
Syntax:
TYPE <identifier>:(<Enum_0> ,<Enum_1>, ...,<Enum_n>);
END_TYPE
The <identifier> can take on one of the enumeration values and will
be initialized with the first one. The values are compatible to full
PD_UserMan_IEC_us.fm
numbers, i.e., they can be used to carry out operations as with INT.
Korrekturausdruck
END_TYPE
Components of structures are accessed with the following syntax:
<structure_name>.<component name>
If there is e.g. a structure named „week“, which includes a compo-
nent named „Monday“, it is accessed in the following way:
Week.Monday
References
The self-defined data type reference is used to create an alternative
name for a variable, constant or function block.
References start with the keyword TYPE and end with END_TYPE.
Syntax:
TYPE <identifier>: <assignment expression>;
END_TYPE
Example:
TYPE message:STRING[50];
END_TYPE;
Local variables
Input variables
Output variables
VAR_INPUT
VAR_OUTPUT
Variable attributes
Korrekturausdruck
or after stop
NOTE
New initial values can be assigned to derived data types.
Initialization of variables
In principle, each variable is initialized after a cold restart. Usually,
the default value is 0 or FALSE. A user-specific setting to another
value is of course possible. In the declaration, it is assigned with
the = sign.
The initialization can also be effected within derived data types
(arrays, structures). The necessary syntax is shown in the example.
Example:
VAR
a : INT := 13;
b : STRING := ‘this is a string‘;
c : REAL := 1.1;
END_VAR
PD_UserMan_IEC_us.fm
VAR
a : myStruct :=
(
state := TRUE,
inputValue := 2.5
Korrekturausdruck
);
END_VAR
VAR
a : ARRAY[1..10] OF INT :=
1, 2, 2(4), 5, 6, 7, 8, 9,10;
END_VAR
PD_UserMan_IEC_us.fm
Program
This POU type represents the “main program“. All variables of the
complete program to which physical addresses are assigned (such
as inputs and outputs of the PLC) have to be declared in this POU
or on a higher level (resource, configuration). Access to global
variables and access paths.
Function
A function describes a complex linking logic that has no „memory“,
i.e. no static variables. A special feature of a function is that it will
always return the same result if the input values are the same.
Example:
Function block
If an intelligent module with a memory is needed, the function block
(FB) with local static variables offers the necessary basis. An FB
(e.g. time or counter) can return different results even if the input
data are the same (e.g. regarding a time or counter). According to
the new norm, each instance of an FB has its own „encapsulated“
data range where the calculations are done: the instance (see
below).
In order to standardize typical PLC functionalities, the new standard
introduced standard functions and function blocks. This library is an
important basis for uniform, producer-independent programming of
PD_UserMan_IEC_us.fm
PLC systems.
Example:
The switch-on delay TON (Timer ON) is a function block (standard
FB). If the Boolean variable „1“ is created at INPUT (IN), the link
time PT (time value) is started. If the time ran out, output Q takes on
the Boolean variable „1“. At output ET (elapsed time) the present
Korrekturausdruck
actual value of the time can be read.
Functions
Functions can be coded in all IEC 61131-3 languages except SFC.
The return value is declared with the name of the function.
Example:
FUNCTION TEST: REAL
(* -> Data type of the return value is REAL *)
(* Declaration part*)
VAR_INPUT
Switch1: BOOL;
Switch2: BOOL;
END_VAR
VAR
Intermediate result: BOOL;
END_VAR
(* Instruction part*)
TEST:= Switch1 AND Switch2;
(* -> Assign return value to function *)
END_FUNCTION
NOTE
IEC 61131-3 defines standard functions, which are supported by
most implementations. These standard functions are explained in
detail in the Programming Manual -Reference-.
PD_UserMan_IEC_us.fm
Function Blocks
Function blocks are used to set input, output and internal variables.
States of an FB call are buffered from cycle to cycle. In that pro-
cess, the program code of the FB creates changes of the input,
output and internal variables.
Korrekturausdruck
Only the input and output variables can be reached from the calling
program. Calls from other FBs are allowed, from all languages into
all languages.
Example:
FUNCTION_BLOCK Counter
(* Declaration part*)
VAR_INPUT
iMode : INT; (* 0 = Reset, 1 = Count *)
END_VAR
VAR_OUTPUT
iCounter : INT; (*actual counter value*)
END_VAR
(* Instruction part*)
IF iMode = 0 THEN
iCounter:= 0; (*Reset*)
ELSEIF Mode = 1 THEN
iCounter:= iCounter + 1;
ENDIF;
END_FUNCTION_BLOCK
NOTE
IEC 61131-3 defines standard function blocks which are supported
by most implementations. These standard function blocks are
explained in detail in the Programming Manual -Reference-.
Example:
Function block A
(instance 1)
local data
Korrekturausdruck
Function block A
(instance 2)
local data
VAR
counter_1 : Counter; (* instance of FB counter *)
iActCount : INT;
END_VAR
(* Instruction part*)
Korrekturausdruck
IF bfirstCycle THEN
counter_1(Mode := 0);
(* -> Call of FB counter with reset mode *)
ELSE
counter_1(Mode := 1);
(* -> Call of FB counter with counter mode*)
END_IF
actCount := counter_1.Out;
(* -> access to output variable of counter_1*)
END_PROGRAM
PD_UserMan_IEC_us.fm
Jump
Operator Operand Comment
mark
LD 17
ST lint (* comment *)
GE 5
JMPC next
LD idword
EQ instruct.sdword
STN test
next:
PD_UserMan_IEC_us.fm
Korrekturausdruck
result of the preceding expression is TRUE.
N for JMPC, CALC, RETC: The instruction is only executed if the
result of the preceding expression is FALSE.
N for others: Negation of the operand (not of the accumulator)
In the following table all operators in IL are listed with their possible
modifiers and their corresponding meaning.
Modi-
Operator Meaning
fiers
LD N set actual result equal to operand
OR N,( bitwise OR
ADD ( addition
SUB ( subtraction
MUL ( multiplication
DIV ( division
GT ( >
GE ( >=
EQ ( =
NE ( <>
LE ( <=
LT ( <
Jump
Operator Operand Comment
mark
LD TRUE (* load TRUE into accu-
mulator *)
In IL, brackets can also be used after an operation. The value in the
brackets is then taken as operand.
For example:
LD 2
MUL 2
ADD 3
ST Erg
PD_UserMan_IEC_us.fm
Korrekturausdruck
Here the value for Erg is 10, as the operation MUL will not be eva-
luated until „)“ is reached; consequently, 5 is calculcated as
operand for MUL.
Binding
Operation Symbol
strength
Korrekturausdruck
exponentiation **
negation -
multiplication *
division /
modulo MOD
addition +
subtraction -
equality =
inequality <>
Bool OR OR weakest
The table below shows the instructions available in ST, along with
examples.
RETURN RETURN;
IF D:=B*B;
IF D<0.0 THEN
C:=A;
ELSIF D=0.0 THEN
C:=B;
ELSE
C:=D;
PD_UserMan_IEC_us.fm
END_IF;
Korrekturausdruck
BOOL1 := FALSE;
BOOL2 := FALSE;
END_CASE;
FOR J:=101;
FOR I:=1 TO 100 BY 2 DO
IF ARR[I] = 70 THEN
J:=I;
EXIT;
END_IF;
END_FOR;
WHILE J:=1;
WHILE J<= 100 AND ARR[J] <> 70 DO
J:=J+2;
END_WHILE;
REPEAT J:=-1;
REPEAT
J:=J+2;
UNTIL J= 101 OR ARR[J] = 70
END_REPEAT;
EXIT EXIT;
empty command ;
LD Var1
MUL 2
ST Var1
PD_UserMan_IEC_us.fm
LD Counter
SUB 1
ST Counter
JMP Loop
Korrekturausdruck
end:
LD Var1
ST Erg
The same loop programmed in ST would be:
WHILE Counter<>0 DO
Var1:=Var1*2;
Counter:=Counter-1;
END_WHILE
Erg:=Var1;
As can be seen, in ST, the loop can not only be programmed shor-
ter, it is also much easier to read, in particular when imagining loops
that are nested into one another in larger constructions.
The various structures are described below.
Assignment operator
On the left side of an assignment is an operand (variable, address),
to which the value of the expression on the right side is assigned
with the assignment operator :=
Example:
Var1 := Var2 * 10;
After this line is executed, Var1 has the tenfold value of Var2.
Call of function blocks in ST
A function block in ST is called by writing the name of the instance
of the function block and assigning the desired parameter values in
brackets. In the following example, a timer is called with assign-
ments for the parameters IN and PT. In a next step, the derived
variable Q is assigned to variable A.
As in IL, the calculated variable is addressed with the name of the
function block, followed by a dot and the name of the variable:
CMD_TMR(IN := %IX5, PT := 300);
A:=CMD_TMR.Q
RETURN instruction
The RETURN instruction can be used to end a function, e.g.
dependent on a condition.
PD_UserMan_IEC_us.fm
Example:
IF COUNTER > 10 THEN
RETURN;
END_IF;
IF instruction/alternative branching
Korrekturausdruck
With the IF instruction, a condition can be checked and dependent
on this condition, instructions can be executed.
Syntax:
IF <Boolean_expression1> THEN
<IF_instructions>
{ELSIF <Boolean_expression2> THEN
<ELSIF_instructions1>
.
.
ELSIF <Boolean_expression n> THEN
<ELSIF_instructions n-1>
ELSE
<ELSE_instructions>}
END_IF;
The part in curly brackets {} is optional.
If <Boolean_expression1> is TRUE, then only the <IF_instructions>
will be executed. None of the other instructions will be executed.
Otherwise, the Boolean expressions will be evaluated in line begin-
ning with <Boolean_expression2> until one of the expressions is
TRUE. Then, only the instructions after this Bool expression and
before the next ELSE or ELSIF will be evaluated.
If none of the Boolean expressions is TRUE, then only the
<ELSE_instructions> will be evaluated.
Example:
IF temp<17 THEN
heating_on := TRUE;
ELSE
heating_on := FALSE;
END_IF;
In this case, the heating will be switched on if the temperature falls
below 17 degrees centigrade, otherwise, it will remain off.
CASE instruction/multiple choice
With the CASE instruction, several conditional instructions with the
same conditional variable can be combined in one construct.
Syntax:
PD_UserMan_IEC_us.fm
CASE <Var1> OF
<value 1>:<instruction 1>
<value 2>:<instruction 2>
...
<Wert n>:<instruction n>
Korrekturausdruck
ELSE<ELSE-instruction>
END_CASE;
A CASE instruction is processed according to the following
scheme:
If the variable in <VAR1> has the value <value i>, the instruction
<instruction i> will be executed.
If <Var 1> has none of the given values, the <ELSE instruction>
will be executed.
If the same instruction has to be executed for several values of
the variable, these values can be written one after another,
separated by a comma. Thereby, the joint instruction can be
effected.
Example:
CASE INT1 OF
1, 5:BOOL1 := TRUE;
BOOL3 := FALSE;
2: BOOL2 := FALSE;
BOOL3 := TRUE;
ELSE
BOOL1 := NOT BOOL1;
BOOL2 := BOOL1 OR BOOL2;
END_CASE;
FOR loop/counting loop
With the FOR loop, repeated procedures can be programmed.
Syntax:
INT_Var :INT;
FOR <INT_Var> := <INIT_VALUE> TO <END_VALUE> {BY <step
size>} DO
<instructions>
END_FOR;
The part in curly brackets {} is optional.
The <instructions> will be carried out as long as the counter
<INT_Var> is not bigger than <END_VALUE>. This is checked
before the <instructions> are carried out, so that the <instructions>
are never carried out if <INIT_VALUE> is greater than
<END_VALUE>.
Always when <instructions> was executed, <INT_Var> is increased
by <stepsize>. The step size can have any integer value. If it is mis-
PD_UserMan_IEC_us.fm
sing, it is set to 1. Since <INT_Var> can only get bigger, the loop
must terminate.
Example:
FOR counter:=1 TO 5 BY 1 DO
Korrekturausdruck
Var1:=Var1*2;
END_FOR;
Erg:=Var1;
Assuming that variable Var1 was pre-assigned with the value 1,
then it will have the value 32 after the FOR loop.
WHILE loop/rejecting loop
The WHILE loop can be used like the FOR loop, with the exception
that the truncation condition can be any Boolean expression. That
means you set a condition which, if it is true, will result in the execu-
tion of the loop.
Syntax:
WHILE <Boolean expression> DO
<instructions>
END_WHILE;
The <instructions> are repeated as long as <Boolean expression>
is TRUE. If <Boolean expression> is FALSE in the first evaluation,
then the <instructions> will never be carried out. If <Boolean
expression> is never FALSE, then the <instructions> will be repea-
ted endlessly, which will cause a run time error.
NOTE
The programmer has to make sure that there is no endless loop by
changing the condition in the instruction part of the loop, e.g. by
counting upward or downward a counter. If there is an endless loop,
the the diagnosis Cycle time transgression will be triggered in the
PacController.
Example:
WHILE counter<>0 DO
Var1 := Var1*2;
counter := counter-1;
END_WHILE
In a way, the WHILE loop and the REPEAT loop are both more
powerful than the FOR loop, since the number of loop runs does
not have to be known before the loop is executed. In some cases,
these two loop types will be sufficient. However, if the number of
loop runs is clear, a FOR loop should be chosen, since it will not
allow an endless loop.
PD_UserMan_IEC_us.fm
REPEAT
<instructions>
UNTIL <Boolean expression>
END_REPEAT;
The <instructions> are carried out as long as <Boolean expres-
sion> is TRUE.
If <Boolean expression> is TRUE in the first evaluation, then the
<instructions> will be carried out just once. If <Boolean expression>
is never TRUE, then the <instructions> will be repeated endlessly,
which will cause a run time error.
NOTE
The programmer has to make sure that there is no endless loop by
changing the condition in the instruction part of the loop, e.g. by
counting upward or downward a counter. If there is an endless loop,
the diagnosis Cycle time transgression will be triggered in the Pac-
Controller.
Example:
REPEAT
Var1 := Var1*2;
counter := counter-1;
UNTIL
counter=0
END_REPEAT
EXIT instruction
If FOR, WHILE or REPEAT loops contain the EXIT instruction, the
innermost loop will be completed, independent of the truncation
condition.
cycle. This is not the case. For that reason, fast complex calculati-
ons cannot be executed well in SFC but only in the reserved action
modules, which in turn can be filled in any language.
Under TRUE, the transitions between action states become active
as Boolean equations. SFC allows both alternative and parallel
Korrekturausdruck
branches:
Actions in alternative branches are executed if the respective
entry transition is fulfilled. The check sequence (priority) is set
from left to right.
Actions in simultaneous branches are all started together. A
transition at the end of the simultaneous branch defines the exit
event.
Step
A block that is written in Instruction List is made up of a sequence
of steps, which are linked with one another via directed connections
(transitions).
Two kinds of steps can be distinguished.
The simplified form consists of an action and a marker, which
indicates whether the step is active. If an action is implemented
to a step, a small triangle appears in the upper right corner of the
step.
PD_UserMan_IEC_us.fm
blue.
To each step belongs a flag which stores the state of the step. The
step marker (active or inactive state of the step) is represented by
the logic value of a Boolean structural element <StepName>.x. This
Boolean variable is TRUE if the step is active and FALSE if the step
is inactive. This variable is declared implicitly and can be used in
Korrekturausdruck
each action and transition of the SFC block.
In a control cycle, all actions which belong to active steps are exe-
cuted. Next, the respective following steps of active steps will
become active if the transition conditions of the subsequent steps
are TRUE. The now active steps will only be executed in the next
cycle.
IEC step
In addition to simplified steps, norm-conformous IEC steps are
available in SFC.
Any number of actions can be assigned to an IEC step. The actions
of IEC steps are available separately from the steps and can be
used more than once within their block. For that purpose, they have
to be associated with the individual steps with the command
EXTRAS | ASSOCIATE ACTION.
Alongside actions, also Boolean variables can be assigned to
steps. The actions and Boolean variables can be activated and
deactivated with so-called qualifiers, partly with time delays. Since
an action can still be active even if the next step is already being
processed, e.g. by qualifier S (Set), ancillarities can be achieved.
The associated actions to an IEC step are indicated to the right of
the step in a split box. The left field contains the qualifier and
maybe also a time constant while the right field contains the name
of the action.
Example for an IEC step with two actions:
NOTE
In order to be able to use IEC steps, the project has to be embed-
ded in the special SFC library lecsfc.lib.
Korrekturausdruck
Qualifiers
The following qualifiers are available to associate actions to IEC
steps:
Alternative branch
Two or more branches in SFC can be defined as alternative bran-
ches. Each alternative branch has to begin and end with a
transition. Alternative branches can contain simultaneous branches
and further alternative branches. An alternative branch begins at a
Korrekturausdruck
horizontal line (alternative start) and ends at a horizontal line (alter-
native end) or with a branch.
If the step preceding the alternative start line is active, the first tran-
sition of each alternative branch will be evaluated from left to right.
The first transition from the left that carries a TRUE transition condi-
tion will be opened and the following steps will become active (see
active step).
Parallel branch
Two or more branches in SFC can be defined as parallel branches.
Each parallel branch has to start and to end with a step. Parallel
branches can contain alternative branches or further parallel bran-
ches. A parallel branch begins at a double line (simultaneous
beginning) and ends at a double line (parallel start) or at a branch.
If the step preceding the parallel start line is active and the transi-
tion condition after this step is TRUE, the first steps of all parallel
branches become active (see active step). The branches are then
processed simultaneously to one another. The step after the paral-
lel end line becomes active if all earlier steps are active and the
transition condition preceding the step is TRUE.
Jump
A jump is a connection to the step the name of which is indicated
under the jump symbol. Jumps are needed since it is not allowed to
create ascending or crossing connections.
PD_UserMan_IEC_us.fm
Fig. 4-8: The transitions a, b and c control the development of steps 1 and 2.
Fig. 4-9: Action 1 is terminated only by Reset in step 2, not by end of step 1.
Korrekturausdruck
Fig. 4-10: Action qualifyers L and D for time control of actions.
Korrekturausdruck
wise, the right connection has the value OFF.
Example for a network in the Ladder Diagram, as it could typically
look in EPAS-4:
Contact
On the left side, each network in the Ladder Diagram consists of a
network of contacts (represented by two parallel lines: | |), which
transmit the state ON or OFF from left to right.
These states correspond to the Boolean values TRUE and FALSE.
To each contact belongs a Boolean variable. If the variable is
TRUE, the state will be transmitted via the connecting line from left
to right. Otherwise, the right connection has the value OFF“.
Contacts can be switched parallel. In this case, one of the parallel
branches has to transmit the value ON for the parallel branch to
transmit the value ON. If the contacts are switched in line, all con-
tacts have to transmit the state „On“ for the last contact to transmit
the state ON. The contact connections correspond to an electric
parallel connection and serial connection, respectively.
A contact can also be negated. This is indicated by a slash in the
contact symbol: |/|. In this case, the value of the line is transmitted if
the variable is FALSE.
PD_UserMan_IEC_us.fm
Coil
On the left side of a network in the Ladder Diagram any number of
so-called coils can be found. Coils are represented by brackets: ().
Coils can only be switched parallel. A coil transmits the value of the
connection from left to right and copies it into a corresponding Boo-
Korrekturausdruck
lean variable. The values On and Off can be set on the input line.
On corresponds to the Boolean variable TRUE and Off to the Boo-
lean variable FALSE.
Contacts and coils can also be negated. (In the example, contact
SWITCH1 and coil %QX3.0 are negated.) If a coil is negated (indi-
cated by a slash in the coil symbol: (/)), it copies the negated value
to the corresponding Boolean variable. If a contact is negated, it
interconnects only if the Boolean variable is FALSE.
Function blocks in Ladder Diagram
In addition to contacts and coils, also function blocks and programs
can be entered. In the network, they have to have an input and an
output with Boolean values. They can be used at the same sites as
contacts, i.e., on the left side of the Ladder Diagram network.
Set/reset coils
Coils can also be defined as Set or Reset coils. A set coil (repre-
sented by an ’S’ in the coil symbol (S)) never overwrites the value
TRUE in the respective Boolean variable. That is, if a variable was
once set on TRUE it will also remain so.
A Reset coil (’R’ in the coil symbol (R)) never overwrites the value
FALSE in the respective Boolean variable. If the variable was once
set to FALSE, it will remain so.
LD as FBD
When working with Ladder Diagram, you might want to use the
result of the contact connection to control other blocks. Then you
can file the result with the help of the coils in a global variable that is
used further elsewhere. You can also fit the possible call directly
into your Ladder Diagram network. In order to do so, insert a
module with and EN input.
Such blocks are conventional operands, functions, programs or
function blocks that feature an additional input marked with EN.
The EN input is always of the Boolean type. It has the following
meaning: The block featuring the EN input will be evaluated if EN is
TRUE.
PD_UserMan_IEC_us.fm
Korrekturausdruck
in FBD.
PD_UserMan_IEC_us.fm
4.2.5 Operators
In contrast to standard functions, IEC operators are implicitly known
in the complete project. In the block implementation, operators are
used like functions.
Korrekturausdruck
Overview
In expressions, operands are linked by operators.
Operator /
Short description Explanation
Symbol
[] start and end for :
1. field index (access to field ele-
ment)
2. string length (for declaration)
- negation A:= -5
-> A = -5
NOT complement
than
Operator /
Short description Explanation
Symbol
= comparison operator equal to
Korrekturausdruck
AND boolean AND
&
OR boolean OR
MOVE allocation
:= 1. operator for start value allocation
2. input connection operator (alloca-
tion of actual parameters to formal
parameters at POU call)
3. instruction operator
bracketing ( ... )
exponentiation **
negation -
complement NOT
multiplication *
division /
modulo MOD
addition +
subtraction -
equality =
inequality <>
exclusive OR XOR
PD_UserMan_IEC_us.fm
OR OR
Further operators:
Arithmetic Operators
ADD
Addition of variables of the BYTE, WORD, DWORD, SINT, USINT,
INT, UINT, DINT, UDINT, REAL and LREAL types.
Korrekturausdruck
Also two TIME variables can be added. Their sum is again a time
(e.g. t#45s + t#50s = t#1m35s)
Example in IL:
LD 7
ADD 2,4,7
ST var1
Example in ST:
var1 := 7+2+4+7;
MUL
Multiplication of variables of the BYTE, WORD, DWORD, SINT,
USINT, INT, UINT, DINT, UDINT, REAL and LREAL types.
Example in IL:
LD 7
MUL 2,4,7
ST var1
Example in ST:
var1 := 7*2*4*7;
SUB
Subtraction of a variable of the BYTE, WORD, DWORD, SINT,
USINT, INT, DINT, UDINT, REAL and LREAL types from another
variable of one of the above types.
A TIME variable can also be subtracted from another TIME varia-
ble, the result is again a TIME type. Note that negative TIME values
are not defined.
Example in IL:
LD 7
SUB 8
ST var1
Example in ST:
var1 := 7-2;
DIV
Division of a variable of the BYTE, WORD, DWORD, SINT, USINT,
INT, UINT, DINT, UDINT, REAL und LREAL types by another varia-
ble of one of the same types.
Example in IL:
LD 8
DIV2
STvar1
PD_UserMan_IEC_us.fm
Example in ST:
var1 := 8/2;
MOD
Modulo Division of a variable of the BYTE, WORD, DWORD, SINT,
USINT, INT, UINT, DINT, UDINT, REAL and LREAL types by
another variable of one of the same types. The function delivers as
Korrekturausdruck
Bitstring operators
AND
Bitwise AND of bit operands. The operands should be of the BOOL,
BYTE, WORD or DWORD types.
Example in IL:
var1 :BYTE;
LD 2#1001_0011
AND 2#1000_1010
ST var1 (* result is 2#1000_0010 *)
Example in ST:
var1 := 2#1001_0011 AND 2#1000_1010
OR
Bitwise OR of bit operands. The operands should be of the BOOL,
PD_UserMan_IEC_us.fm
Example in IL:
var1 :BYTE;
LD 2#1001_0011
OR 2#1000_1010
ST var1 (* result is 2#1001_1011 *)
Korrekturausdruck
Example in ST:
Var1 := 2#1001_0011 OR 2#1000_1010
XOR
Bitwise XOR of bit operands. The operands should be of the BOOL,
BYTE, WORD or DWORD type.
Example in IL:
Var1 :BYTE;
LD 2#1001_0011
XOR 2#1000_1010
ST Var1 (* result is 2#0001_1001 *)
Example in ST:
Var1 := 2#1001_0011 XOR 2#1000_1010
NOT
Bitwise NOT of a bit operand. The operand should be of BOOL,
BYTE, WORD or DWORD type.
Example in IL:
Var1 :BYTE;
LD2#1001_0011
NOT
STVar1 (* result is 2#0110_1100 *)
Example in ST:
Var1 := NOT 2#1001_0011
Bit-shift operators
The following operators are represented with a map as FBD
operators.
SHL
ST Var1 (* result is 2 *)
SHR
Korrekturausdruck
Selection Operators
All selection operators can also be executed on variables. For illu-
strative reasons, the following example is restricted to constant
expressions as operators.
SEL
Korrekturausdruck
Binary selection
OUT := SEL(G, IN0, IN1) means:
OUT := IN0 if G=FALSE;
OUT := IN1 if G=TRUE.
IN0, IN1 and OUT can be of any type, G has to be of the BOOL
type. The result of the selection is IN0 if G is FALSE and IN1 if G is
TRUE.
Example in IL:
LD TRUE
SEL 3,4
ST Var1 (* result is 4 *)
LD FALSE
SEL 3,4
ST Var1 (* result is 3 *)
MAX
Maximum function. Delivers the greater one of two values.
OUT := MAX(IN0, IN1)
IN0, IN1 and OUT can be of any type.
Example in IL:
LD 90
MAX 30
MAX 40
MAX 77
ST Var1 (* result is 90 *)
MIN
Minimum function. Delivers the lesser one of two values.
OUT := MIN(IN0, IN1)
IN0, IN1 and OUT can be of any type.
Example in IL:
LD 90
MIN 30
MIN 40
MIN 77
ST Var1 (* result is 30 *)
LIMIT
Limitation
PD_UserMan_IEC_us.fm
Example in IL:
LD 90
LIMIT 30,80
ST Var1 (* result is 80 *)
MUX
Multiplexer
OUT := MUX(K, IN0,...,INn) means:
OUT := INK.
IN0, ...,INn and OUT can be of any type. K has to be of the BYTE,
WORD, DWORD, SINT, USINT, INT, UINT, DINT or UDINT type.
MUX choses the Kth from a quantity of values.
Example in IL:
LD 0
MUX 30,40,50,60,70,80
ST Var1 (* result is 30 *)
Comparative operators
GT
Greater than
A Boolean operator with the result TRUE, if the first operand is
greater than the second operand. The operands can be of the
BOOL, BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT,
UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY,
DATE_AND_TIME and STRING type.
Example in IL:
LD 20
GT 30
ST Var1 (* result is FALSE *)
Example in ST:
VAR1 := 20 > 30 > 40 > 50 > 60 > 70;
LT
Less than
A Boolean operator with the result TRUE, if the first operand is less
than the second operand. The operands can be of the BOOL,
BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT, UDINT,
REAL, LREAL, TIME, DATE, TIME_OF_DAY, DATE_AND_TIME
and STRING type.
PD_UserMan_IEC_us.fm
Example in IL:
LD 20
LT 30
ST Var1 (* result is TRUE *)
Example in ST: :
VAR1 := 20 < 30;
Korrekturausdruck
LE
Less than or equal to
A Boolean operator with the result TRUE, if the first operand is less
than or equal to the second operand. The operands can be of the
BOOL, BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT,
UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY,
DATE_AND_TIME and STRING types.
Example in IL:
LD 20
LE 30
ST Var1 (* result is TRUE *)
Example in ST:
VAR1 := 20 <= 30;
GE
Greater than or equal to
A Boolean operator with the result TRUE, if the first operand is
greater than or equal to the second one. The operands can be of
the BOOL, BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT,
UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY,
DATE_AND_TIME and STRING types.
Example in IL: :
LD 60
GE 40
ST Var1 (* result is TRUE *)
Example in ST:
VAR1 := 60 >= 40;
EQ
Equal to
A Boolean operator with the result TRUE, if the operands are equal.
The operands can be of the BOOL, BYTE, WORD, DWORD, SINT,
USINT, INT, UINT, DINT, UDINT, REAL, LREAL, TIME, DATE,
TIME_OF_DAY, DATE_AND_TIME and STRING types.
Example in IL:
LD 40
EQ 40
ST Var1 (* result is TRUE *)
Example in ST:
PD_UserMan_IEC_us.fm
VAR1 := 40 = 40;
NE
Not equal to
A Boolean operator with the result TRUE, if the operands are not
equal. The operands can be of the BOOL, BYTE, WORD, DWORD,
SINT, USINT, INT, U-INT, DINT, UDINT, REAL, LREAL, TIME,
Korrekturausdruck
Address operators
ADR
Address function
ADR delivers the address of its argument in a DWORD. This
address can be sent to producer functions, where it can be treated
like a pointer. Within the project, it can also be assigned to a
pointer.
Example in IL:
LD var1
ADR
ST var2
man_fun1
Content operator
The dereferentiation of a pointer is effected via a content operator
"^" after the pointer identifier.
Example in ST:
pt:POINTER TO INT;
var_int1:INT;
var_int2:INT;
pt := ADR(var_int1);
var_int2:=pt^;
Call operator
CAL
Call of a function block
In IL, CAL is used to call the instance of a function block. After the
name of the instance follows in brackets the assignment of the
input variable of the function block.
Example:
Call of the instance of a function block with assignment of the input
PD_UserMan_IEC_us.fm
Korrekturausdruck
want to do that, you have to use special type conversion functions.
In principle, you can convert from any elementary type to any other
elementary type.
Syntax:
<elem.Typ1>_TO_<elem.Typ2>
BOOL_TO Conversion
Conversion from the BOOL type into another type:
In number types, the result is 1 if the operand is TRUE. The result
is 0 if the operand is FALSE.
In the STRING type, the result is TRUE or FALSE.
Examples in ST:
i:=BOOL_TO_INT(TRUE);
(* -> result is 1 *)
str:=BOOL_TO_STRING(TRUE);
(* -> result is 'TRUE' *)
t:=BOOL_TO_TIME(TRUE);
(* -> result is T#1ms *)
tof:=BOOL_TO_TOD(TRUE);
(* -> result is TOD#00:00:00.001 *)
dat:=BOOL_TO_DATE(FALSE);
(* -> result is D#1970-01-01 *)
dandt:=BOOL_TO_DT(TRUE);
(* -> result isDT#1970-01-01-00:00:01 *)
TO_BOOL conversions
Conversion from one type into the BOOL type:
The result is TRUE if the operand is not 0. The result is FALSE if
the operand is 0.
In the STRING type, the result is TRUE if the operand is TRUE.
Otherwise, the result is FALSE.
Examples in ST:
b := BYTE_TO_BOOL(2#11010101);
(* -> result is TRUE *)
b := INT_TO_BOOL(0);
(* -> result is FALSE *)
b := TIME_TO_BOOL(T#5ms);
(* -> result is TRUE *)
b := STRING_TO_BOOL('TRUE');
(* -> result is TRUE *)
Conversions between integer number types
PD_UserMan_IEC_us.fm
Korrekturausdruck
In the type conversion from a higher to a lower type, information
can be lost.
In the STRING type, the result is a date constant. .
Examples in ST:
b :=DATE_TO_BOOL(D#1970-01-01);
(* -> result is FALSE *)
i :=DATE_TO_INT(D#1970-01-15);
(* -> result is 29952 *)
byt :=DT_TO_BYTE(DT#1970-01-15-05:05:05);
(* -> result is 129 *)
str:=DT_TO_STRING(DT#1998-02-13-14:20);
(* -> result is 'DT#1998-02-13-14:20' *)
STRING_TO conversion
Conversion from the STRING type into another type:
The operand ot the STRING type must have a valid value of the tar-
get type. Otherwise, the result is 0.
Examples in ST:
b :=STRING_TO_BOOL('TRUE');
(* -> result is TRUE *)
w :=STRING_TO_WORD('abc34');
(* -> result is 0 *)
t :=STRING_TO_TIME('T#127ms');
(* -> result is T#127ms *)
TRUNC
Conversion from the REAL type into the INT type. Only the integer
fraction of the number is taken.
In the type conversion from higher to lower types, information can
be lost.
PD_UserMan_IEC_us.fm
Examples in ST:
i:=TRUNC(1.9); (* result is 1 *).
i:=TRUNC(-1.4); (* result is -1 *).
Example in IL:
Korrekturausdruck
LD 2.7
TRUNC
GE %MW8
Numeric operators
ABS
Gives the absolute value of a number. ABS(-2) gives 2.
SQRT
Gives the square root of a number.
LN
Gives the natural logarithm of a number.l
LOG
Gives the logarithm to base 10 of a number. Liefert den Logarith-
mus zur Basis 10 einer Zahl.
EXP
Gives the exponential funtion.
SIN
Gives the sine of a number.
COS
Gives the cosine of a number.
TAN
Gives the tangent of a number.
ASIN
Gives the antisine (inverse function of sinus) of a number.
ACOS
Gives the arc cosine (inverse function of cosine) of a number.
ATAN
Gives the arc tangent (inverse function of tangent) of a number.
EXPT
Exponentiation of a variable by another variable:
OUT = IN1IN2.
OUT, IN1 and IN2 can be of the BYTE, WORD, DWORD, INT,
DINT, REAL types.
Example in IL:
PD_UserMan_IEC_us.fm
LD 7
EXPT 2
ST var1 (* result is 49 *)
Example in ST:
var1 := EXPT (7,2);
Korrekturausdruck
PD_UserMan_IEC_us.fm
4.2.6 Operands
In the PacDrive™, constant expressions, variables, addresses and
also function calls can occur as operands.
Korrekturausdruck
Constants
Boolean constants
Boolean constants are the truth values TRUE and FALSE
TIME constants
In EPAS-4, TIME constants can be declared. They are used in par-
ticular in order to operate timers from the standard library. A TIME
constant always consists of a leading t or T (i.e., time or TIME in the
detailled version) and a double cross „#“.
The actual time declaration follows after the TIME constant. It can
consist of days (d), hours (h), minutes (m), seconds (s) and millise-
conds (ms). Note that the time data have to be put in order of their
size (d before h before m before s before ms). However, not all
times have to be included.
Examples for correct TIME constants in an ST assignment:
TIME1 := T#14ms;
TIME1 := T#100S12ms;
(*>Overflow in the highest component is allowed*)
TIME1 := t#12h34m15s;
The following example is not correct:
TIME1 := t#5m68s;
(* -> Overflow in a lower place*)
TIME1 := 15ms;
(* -> Es fehlt T#*)
TIME1 := t#4ms13d;
(* -> wrong order of time data*)
DATE constants
With the help of DATE constants, date indications can be made. A
DATE constant is declared by a leading d, D, date or DATE follo-
wed by #. Thereafter, any date can be entered in the form year-
month-day.
Examples:
DATE#1996-05-06
d#1972-03-29
TIME_OF_DAY constants
With the help of TIME_OF_DAY constants, times of day can be
stored. A TIME_OF_DAY declaration starts with tod#, TOD#,
TIME_OF_DAY# or time_of_day#. After that, a time of day can be
entered in the following form: hour:minute:second. Seconds can be
entered either as real numbers or fractions.
PD_UserMan_IEC_us.fm
Examples:
TIME_OF_DAY#15:36:30.123
tod#00:00:00
DATE_AND_TIME constants
Korrekturausdruck
Date constants and times can also be combined in so-called
DATE_AND_TIME constants. DATE_AND_TIME constants start
with dt#, DT#, DATE_AND_TIME# or date_and_time#. The date is
followed by a hyphen and the time of day.
Examples:
DATE_AND_TIME#1996-05-06-15:36:30
dt#1972-03-29-00:00:00
Number constants
Numbers can occur as dual numbers, octal numbers, decimal num-
bers and hexadecimal numbers. If an integer value is not a decimal
number, then the base, followed by a double cross (#), has to be
written in front of the integer constant. For hexadecimal numbers,
the numeric values for numbers 10 to 15 are represented by the let-
ters A to F.
Underscores within a number value are allowed.
Examples:
14 (decimal number)
2#1001_0011 (dual number)
8#67 (octal number)
16#A (hexadecimal number)
The digit values can be of the BYTE, WORD, DWORD, SINT,
USINT, INT, UINT, DINT, UDINT, REAL and LREAL types.
Implicit conversions from „greater“ to „lower“ types are not allowed.
That is, a DINT variable cannot simply be converted into an INT
variable. For such operations, the type conversion function of stan-
dard.lib has to be used (see chapter Type Conversion in the
appendix).
REAL/LREAL constants
REAL and LREAL constants can be represented as decimal frac-
tion or exponential notation. In this case, the American way of
writing with a point is used.
Example:
7.4 instead of 7,4
1.64e+009 instead of t 1,64e+009
STRING constants
PD_UserMan_IEC_us.fm
Variables
Variables are either declared locally in the declaration part of a
block or in the global variable lists.
Note that identifiers of variables must neither contain blank spa-
cesn nor umlaut characters. Furthermore, they must not be
declared double and they must not be identical with keywords.
Case sensitivity is not recognized, i.e., VAR1, Var1 and var1 are not
different variables. Underscores are significant in identifiers, e.g.
A_BCD and AB_CD are interpreted as different identifiers. More
than one underscore at the beginning of an identifier or within an
identifier are not allowed. The first 32 characters are significant.
Variables can be used everywhere, where allowed by the declared
type. You can call the available variables via the input help.
System flags
System flags are implicitly declared variables that depend on their
special controls. In order to find out which system flags your system
is using, choose the command INSERT OPERAND. In the input
help dialogue, go to the category System Variable.
PD_UserMan_IEC_us.fm
Korrekturausdruck
Variables of structures can be accessed with the following syntax:
<structure name>.<variable name>
Variables of function blocks and programs can be accessed with
the following syntax:
<Function block name>.<Variable name>
Addresses
Address
The direct representation of single memory cells are special cha-
racter strings. These special character strings are created from the
concatenation of the percentage character (%), a prefix for the
value and one or more natural numbers which are separated from
each other by blank spaces.
The following area prefixes are supported:
I input
Q output
M marker
The following prefixes for the size are supported:
X single bit
None single bit
B byte (8 bits)
W word (16 bits)
D double word (32 bits)
Examples:
%QX75 and %Q75 Output bit 75
%IW215 input word215
%QB7 output byte 7
%MD48 double word at memorylocation
%IW2.5.7.1dependent on the control configuration
Whether an address is valid depends on the actual control configu-
ration of the program.
PD_UserMan_IEC_us.fm
Marker
All supported values can be used to access the marker.
The address %MD48 would e.g. address the bytes 192, 193, 194
and 195 in the marker area (48 * 4 = 192). The first byte is byte no.
0.
Korrekturausdruck
Words, bytes and even bits can be accessed in the same way: With
%MX5.0 for example, the first bit in the fifth word is accessed.
(Usually, bit are saved in words.)
Functions
In ST, also a function call can appear as operand.
Example:
Result := Fct(7) + 3;
PD_UserMan_IEC_us.fm
4.2.7 References
IEC 61131 is a standard for industrial automation systems. It com-
prises 5 chapters and 2 technical reports. By far the most important
part of this standard is part 3: Programming Languages.
Korrekturausdruck
This part describes a set of high-level programming languages,
which can be used for various applications.
Various books deal with IEC 61131-3 standard in detail. To mention
some:
SPS-Standard IEC 1131
Karl-Heinz John, Michael Tiegelkamp
ISBN 3-540-58635-0
SPS-Programmierung mit IEC 1131-3
Neumann / Grötsch / Lubkoll / Simon
ISBN 3-486-23348-3
SPS-Programmierung nach IEC 1131-3
(zur Einarbeitung in das Thema empfohlen)
Wellers
ISBN 3-464-48062-3
Moderne Programmiertechnik für Automatisierungssysteme
Peter Wratil
ISBN 3-8023-1575-8
Grundkurs IEC 1131
(Programmierbeispiele für die Prozeßautomatisierung)
Karl Pusch
ISBN 3-8023-1807-2
PD_UserMan_IEC_us.fm
Controller
Power On
Operating System
- Start / Stop
- etc ...
Inputs
Outputs
Korrekturausdruck
Example:
Transfer of a reference to a block.
An MC-4 was configurated with the object name Axis_10.
Procedure(r_MC_4:=Axis_10);
In this modular procedure, the logical address can be addressed in
the following way:
ControllerEnableSet(r_MC_4.logAdr);(* enable for MC-4
*)
PD_UserMan_IEC_us.fm
5 Programming Guidelines
page 96
TCP/IP Ethernet
Industrial PC PacController
MAx-4
I/O Module BT4/DIO-1 IEC 61131-3 PLC
BT4
IEC 61131-3 Motion Control
PacNet
5.1 The Concept of Mapping
Programming Manual
Axis group 1 Axis group 2
PD-8 PD-8
n xSCL055
peripheral I/Os
SCL055
Power + SERCOS SCL055
SM-Servomotor SM-Servomotor
SCL055-Servomotor SCL055-Servomotor SCL055-Servomotor
ELAU AG
Korrekturausdruck
PD_UserMan_Richtlinien_us.fm
5.1 The Concept of Mapping
Korrekturausdruck
Schedules, Sequence Description
State Diagrams
Problem PacController + Optional Modules
Definition MotorController
SM-Motors
POU's insert
POU's editing
Function Check insert FB's in POU's
Error Search
Configuration
parametering FB's (like data structure)
declare data types
declare global variables
Create Task Configuration
Create Visualization
User Program Create Watch- and Receipt Manager
PD_UserMan_Richtlinien_us.fm
In General
As a rule, a PacDrive™ M program (runtime program) consists of
several tasks. A task is a program characterized by its priority and
cycle time.
Tasks can be used e.g. to determine that a temperature check is
only made if there are no more important jobs waiting. Or that the
temperature check is made “only“ every 30 seconds.
Characteristics of a task:
It consists of one or several blocks (POUs; program organization
units)
It has a priority of between 0 and 31 (0 is the highest priority)
The figure below shows how the individual tasks are processed in
the system.
Korrekturausdruck
Fig. 5-6: Task model
PDM_Taskmodel_Beispiel_us0003.fh8
t/ms
Korrekturausdruck
Task calculates
Task would like to calculate
3)
2)
CycleLoad
Cycle finished
0,25
1)
Prio: 250 / 30
Prio: 251 / 31
Prio: 251 / 31
Prio: 251 / 31
Prio: 251 / 31
IEC-Task_5
IEC-Task_4
IEC-Task_3
IEC-Task_2
IEC-Task_1
Task_Rtp
Priority 1
Idle
The following figure shows the connection between the set interval
for a task, the actual interval time and the load time of the task. For
this figure, the following values apply:
set interval: 10ms
PD_UserMan_Richtlinien_us.fm
priority
IEC Task 2 1)
Korrekturausdruck
Cycle Cycle Cycle Cycle
Load Load
IEC Task 1
5 10 15 20 25 30 35 40 45 50 55 t/ms
1): This delay can be caused e.g. by a task with higher priority or by the system.
The system tries to adhere to the set interval. It may happen, howe-
ver, that an interval is longer than the given time. This is the case if
the new start of a cycle is delayed by the system or a task of higher
priority. The system then tries to shorten the next cycle in order to
return to the time grid.
The processing of the programs allocated to a task is marked by
“load“. The processing of the programs must be completed within
the set interval; otherwise there will be a diagnosis message (cycle
time transgression or serious cycle time transgression).
NOTE
There are several system tasks which are processed according to
the same principles. You will find those system tasks and the classi-
fication of their IEC priority later in this manual under the heading
“Which is the right priority?“. PD_UserMan_Richtlinien_us.fm
cycle time
NOTE
Parameters that can be read and/or written via SERCOS may delay
program execution significantly (e.g. for TRACE, Error Quit, ...).
See also EPAS-4 Online help / Control Configuration / Types of
Object Parameters
Korrekturausdruck
Fig. 5-9: Task model / priority allocation
NOTE
Should sporadic cycle errors (505 “simple cycle error“, 506 “multi-
ple cycle error“) occur in your application, the reason may be that
the Ethernet communcation (Ftp, Ping, EPAS-4, ...) slows down the
Korrekturausdruck
NOTE
A typical value for the cycle time lies in the range of 5 ... 10 ms.
If a cycle time of less than 5ms must be achieved, it may be neces-
sary to change the priority of the task.
-> see also “Which is the right priority“?
PD_UserMan_Richtlinien_us.fm
Monitoring
What types of monitoring are there?
The execution of cyclic tasks is monitored. The following diagnosis
messages can occur:
Korrekturausdruck
Class Diagnosis Language-specific quittable
(default) code diagnosis text (default)
4 313 serious cycle time transgression no
FastTask concept
The “FastTask“ concept permits high-priority, fast, synchronous and
interrupt-controlled IEC tasks.
Further information on the FastTask concept is available in EPAS-4
online help > library “MAx-4“ > IEC_Tasks > General notes on the
Korrekturausdruck
FastTask concept.
NOTE
Before you use the “FastTask“ concept, we recommend that you
familiarize yourself thoroughly with the subject and contact our
application department.
The state of the task can be read with the help of the configuration
object IEC Task (Parameter State).
1 READY ready
task defined and ready to start
PD_UserMan_Richtlinien_us.fm
2 RUNNING running
task is running
4 STOPPED stopped
Korrekturausdruck
task stopped
5 BP standing at breakpoint
task stopped by a breakpoint or single-step
6 ERROR error
a serious error occurred; task suspended
7 FINISHED finished
task has reached its end
PD_UserMan_Richtlinien_us.fm
Measuring possibilities
It is possible to measure the capacity utilization of the IEC tasks.
For this purpose you can use the IEC task object, which you can
insert in the control configuration. The individual parameters are
described in the EPAS-4 Online help / Control Configuration.
Korrekturausdruck
Method:
¾ Insert as many IEC task objects in the control configuration as
you have tasks entered in the task configuration.
NOTE
The first IEC task object in the control configuration is linked with
the first task in the task configuration. The first n IEC task objects
are linked with the first n tasks in the task configuration. In principle,
there can be more or less IEC task objects in the system than there
are tasks.
Korrekturausdruck
Fig. 5-11: Example for the first level in SFC
2: (* state 2 *)
< commands >
lState:=lState+1;(* switch to next state *)
:
n: (* state n *)
< commands >
lState:=x; (* switch to next state*)
END_CASE;
PD_UserMan_Richtlinien_us.fm
Korrekturausdruck
Standard IEC library with elementary functions (e.g. counter,
string functions, timer, etc.).
MAx-4.lib
Interface library for basic functions of MAx-4 PacController.
Check.lib
Interface library for checking ARRAYs (debugging functions).
Basic.lib
IEC library with positioning functions. Based on MAx-4.lib.
IECsfc.lib
Use of IEC steps with V00.06.00 or higher.
CSpline.lib
Interface library on VarioCam® CSpline functions for online con-
version of supporting point data into cam data.
TorqueCam.lib
Interface library on torque cams.
CANL2.lib
Interface library on CAN Layer 2.
CANopen_M.lib
Interface library on CANopen Master
CANopen_S.lib
Interface library on CANopen Slave.
PBDP_M.lib
Interface library on PROFIBUS-DP Master.
PBDP_S.lib
Interface library on PROFIBUS-DP Slave.
DNet_S.lib
Interface library on Device Net Slave
HMI_pcs.lib
Interface library for connection with Lauer PCS
HMI_Simatic.lib
Interface library for connection with Simatic.
ModBus.lib
Interface library for connection with ModBus.
TSC.lib
Interface library for connection with ModBus (see also Operating
Manual HMI Libraries).
PD_UserMan_Richtlinien_us.fm
VarioCam.lib
Library for complex positioning tasks.
PLC Library
Bit functions, communication, PID regulator, conversion
Korrekturausdruck
functions, etc.
Runtime properties
The processing times of the functions and function blocks differ
greatly. Here are some examples:
MultiCam3(): typically 12 µs
VAR_IN / VAR_OUT
Transmission of the value, i.e. the value is copied. This means that
the transmission of the value requires memory space and time to
copy the value to the new place.
Therefore avoid transmitting large variables (ARRAY and
STRUCT).
NOTE
Data types of the control configuration (MC_4, D_IN, ...) are auto-
matically transmitted as a reference.
In case of a transmission for reference, the variables in the program
seem to be transmitted “normally“. Internally, however, no copy of
the variable, but only a pointer is transmitted.
VAR_IN_OUT
Transmission to the address of the variable.
PD_UserMan_Richtlinien_us.fm
Korrekturausdruck
blocks and functions thus are easy to read and understand. Code
maintenance is facilitated.
This should be regarded as a guideline for PacDriveTM users and
programmers, as IEC 61131-3 does not prescribe those
programming conventions.
The designators should all be named with the same prefixes, so
that the object type can easily be identified.
P_ Program P_Main
F_ Function F_Convert
type prefix
PD_UserMan_Richtlinien_us.fm
O_ output O_bValveOpen
Korrekturausdruck
Korrekturausdruck
character of a designator is always in upper case. If a designator
consists of several words, the first character of a word is always in
upper case. No separator (e.g. _) should be used between words.
NOTE
EPAS-4 is not case-sensitive.
NOTE
All designators should be in English.
Opera-
Input/output
ting Comment
designation
Korrekturausdruck
means
H1 O_bEquipmentOn- An indicator lamp is connected to the
IndicatorH1 output. It will flash at a frequency of
1 Hz as soon as the equipment is
switched on.
NOTE
Unclear function descriptions result in misinterpretations. Therefore
work with particular diligence at this point. Supplement the descrip-
tion by diagrams where necessary.
C capacitors
E various
F protection means
H messaging units
K contactors, relays
L inductivities
M motors
N amplifiers, regulators
PD_UserMan_Richtlinien_us.fm
Korrekturausdruck
units, dials
T transformer
V semiconductors, tubes
L
1 2 t/s
Fig. 5-14: Development over the time
5.7.2 Hardware
A MAx-4 PacDrive Controller is sufficient to solve this problem.
PD_UserMan_Richtlinien_us.fm
5.7.3 Configuration
Create a project
¾ To create a new project, click on FILE | NEW.
Korrekturausdruck
You will see a dialog box where the parameters for the online con-
nection are defined.
(-> for further information, see Operating Manual EPAS-4)
Configure a project
The composition of the PacDrive™ system and the “properties“ of
the individual parts are defined in the control configuration.
PD_UserMan_Richtlinien_us.fm
Group Explanation
general general parameters of thePacDrive Controller
Korrekturausdruck
diagnosis diagnosis parameters of the PacDrive Controller
Two files for the control configuration, the configuration file and the
parameter file are stored in the PacDrive Controller.
In principle, the objects (MC-4 MotorController, logic encoder, etc.)
are administered in the control configuration.
The “inputs with user initialization“ (see “Types of MAx-4 PacDrive
Controller object parameters“) are stored with their initial values in
the parameter file.
NOTE
If the control configuration file is changed (object added or deleted),
the PacDrive Controller must be reset (or booted)!
For further information, please see Programming Manual -Refe-
rence- , chapter Control Configuration.
Korrekturausdruck
Fig. 5-20: Enter symbolic name for output_0
¾ Click with the right mouse button on “POUs“ and then select
“Add object...“.
¾ Now enter a talking name for your program and confirm with OK.
PD_UserMan_Richtlinien_us.fm
You are now in program editor for the programming language Struc-
tured Text.
Korrekturausdruck
Fig. 5-25: Enter user program
¾ Now give the task a name in the dialog box. For the time being,
leave the priority at 31. As interval, please enter 100 ms.
PD_UserMan_Richtlinien_us.fm
Korrekturausdruck
Fig. 5-29: Define task properties
Now you have to add the newly created program to the task. Pro-
ceed as follows:
¾ Click with right mouse button on Task1 (text in brackets)
Fig. 5-33: Task configuration with new task and program call
Transmit a project
¾ To transmit the program to the PacDrive Controller, select
“Login“ from the menu item ONLINE in EPAS-4.
Korrekturausdruck
You can also establish a connection with the PacDrive Controller
by using the symbol Login.
¾ Answer the following question by selecting “Login".
Test a program
The following functions can be executed under the menu item
ONLINE:
Start
The program is restarted or continued with the next command
after a stop.
Stop
The IEC program is interrupted.
Reset
The IEC program is terminated.
You can also set breakpoints an then e.g. go through a program
task in single step.
PD_UserMan_Richtlinien_us.fm
Trace recording
Trace recording helps to record object parameter values and varia-
ble values chronologically. This function is a kind of oscilloscope.
To be able to create a trace record, you first need to configure the
trace.
Korrekturausdruck
Fig. 5-36: Trace recording of equipment-on indicator H1
NOTE
For further explanations on the trace function, see Operating
Manual EPAS-4.
If you checked your record thoroughly, you certainly noticed that the
frequency at which our equipment-on indicator is flashing is not
exactly 1 Hz.
Why is that?
The IEC program we wrote is only called up every 100 ms. You set
this in the task configuration.
Due to this setting, the “waiting time“ of 500 ms can fluctuate bet-
ween 501 and 600 ms.
For our equipment-on indicator, however, this does not matter since
only a lamp is addressed.
test reports
acceptance protocol
documentation print-out from EPAS-4
Make surey you use "talking" variable names and comment the pro-
Korrekturausdruck
Korrekturausdruck
Describe the motion profile
The motion profile of the conveyer belt consists of a start cam,
which is driven once when the start switch is activated, a straight
line, which runs permanently during operation, and a stop cam,
which is driven when the plant is switched off (start switch OFF).
Opera-
Input/output
ting Comment
designation
means
H1 O_bEquipmentOnIndicat An indicator lamp is connected to the
orH1 output. It will flash with a frequency
of 1 Hz as soon as the unit is swit-
ched on.
H
Korrekturausdruck
H1
L
1 2 t/s
S1
L
t
VEL
Axis 1
t
PDM_Projekt_ZA_2_us0001.fh8
5.8.2 Hardware
To be able to solve the problem, a PacDrive MC-4 is now needed in
addition to the MAx-4 PacDrive Controller.
PD_UserMan_Richtlinien_us.fm
5.8.3 Configuration
Korrekturausdruck
The MC-4 MotorController is entered in the control configuration as
follows:
¾ Click with the right mouse button on Real-time bus
PD_UserMan_Richtlinien_us.fm
NOTE
As we want to “simulate“ the MC-4 MotorController with the motor
for the time being, no further settings in the control configuration
are required at this stage.
Korrekturausdruck
NOTE
ELAU calls the principle of cam treatment and processing Vario-
Cam™. An axis (following axis) follows a master position (master
axis). The cam sets the following position in dependence of the
master position.
To forward master positions in the IEC program to cam functions, a
logic encoder is needed.
PD_UserMan_Richtlinien_us.fm
Korrekturausdruck
Fig. 5-43: Add a logic encoder to the configuration
¾ First you have to load the cam profiles and adapt them to the
problem:
(* load profiles*)
StartKurveId:=ProfilLoad('modisin');
ProfilSetLambda(StartCamId, 1.0);
Korrekturausdruck
CyclicCamId:=ProfilLoad('straight');
(* -> velocity -> velocity *)
StopCamId:=ProfilLoad('modisin');
ProfilSetLambda(StopCamId, 0.0);
(* -> velocity -> dwell *)
NOTE
The ELAU libraries are described in detail in the EPAS-4 Online
help.
NOTE
The function “ScalFollPos“ takes over the calculation for lrYFactor.
It merely makes the following calculation:
ScalFollPos:=(m * sMasterPos) / K;
Korrekturausdruck
bCamReset:=TRUE;
g_lState_1:=g_lState_1+1;
END_IF;
(* cyclic cam ----------------------------- *)
(* 1st cycle must have different position manupula-
tion! *)
6:(* start cyclic cam *)
:
¾ Now you have to program the positioning coordinates.
NOTE
The complete example project can be found on the EPAS-4 CD.
¾ Create a new task in the task configuration and enter the pro-
gram “conveyer_belt“. Please note that the priority of the pro-
gram “conveyer_belt“ must be higher than that of the equipment-
on indicator. Set priority = 30. As interval time, select 10 ms, so
that the cams can be linked fast enough and there will be no
"jumps" in the positioning movement.
Fig. 5-45: Task configuration with the two tasks of different priorities
Single step
The program can be run in single-step mode. Proceed as follows:
¾ First you have to define the debug task. Go to the task configura-
tion and click with the right mouse button on the task you want to
debug.
Korrekturausdruck
¾ Confirm with “Yes“ to set the breakpoint. The line at which you
set the breakpoint is marked in color.
PD_UserMan_Richtlinien_us.fm
Korrekturausdruck
Fig. 5-49: ST program editor in online operation with breakpoint
¾ Now you can continue running the program (or the POU) in sin-
gle-step. You can carry out single steps using the symbol or the
menu item ONLINE or the function keys.
PD_UserMan_Richtlinien_us.fm
Call hierarchy
This function can be used to display the call stack in case of an
actual diagnosis message.
Example:
¾ We will cause an error on purpose by extending the program as
follows:
¾ Start the program and wait until the diagnosis message is trigge-
red (err-LED on MAx-4 flashing).
PD_UserMan_Richtlinien_us.fm
¾ Open the message logger and click with the right mouse button
on the error message Division error.
Korrekturausdruck
Fig. 5-53: Select call hierarchy in the message logger
NOTE
Again you should not forget to document and save four project!
See also „Document and Save a Project“, page 130.
PD_UserMan_Richtlinien_us.fm
6.1 Method
control With the help of object parameters, the error can be see “Control
configuration narrowed down further in the control configuration. Configuration“
6.2 LEDs
From the LEDs, first conclusions as to the cause of an error are
possible.
The LEDs are contained in the chapter “Configuration /
Korrekturausdruck
Programming / Diagnosis“ of the corresponding device-specific
operating manual.
Further documentation:
MAx-4 Controller operating manual
...
AU
R
MAx-4
reset
wd pow
C ® US
reset LISTED
(INDUSTRIAL CONTROL
EQUIPMENT)
wd pow 72KL
err bus
err
24V/wd
err bus
com1 rs232
X1
err
analog in
X5
X2
com2 rs485
X6
digital in
X7
X3
X8
physical enc
touchprobe in/digital out
X9
ethernet
X4
X10
Made in Germany
Example:
DiagCode 3117
DiagExtCode "1.1 3117"
DiagMsg "MC-4/axis1: motor temperature too high"
In case of axis-specific errors (sender: MC_4), the MC-4 MotorCon-
troller object parameters DiagCode and DiagMsg are triggered. The
contents of the parameters arise in analogy with the MAx-4
PacDrive Controller diagnosis parameters. The same rules apply
for updating.
Example:
DiagCode 3117
DiagMsg "motor temperature too high"
NOTE
For further information, please see EPAS-4 Online help, chapters
PD_UserMan_Fehlersuche_us.fm
6.4.1 Function
Korrekturausdruck
The message logger records system, diagnosis and usage messa-
ges in a message log buffer in the RAM range of the MAx-4
PacDrive Controller.
The errors are recorded in chronological order in a ring buffer
(approx. 325 entries). A time stamp (ms since system start), the
time, object, instance, diagnosis code, external diagnosis and mes-
sage text are recorded.
As the message buffer in the RAM can only be buffered for a maxi-
mum of 7 days in case of power failure, it is possible to save the
message log buffer in a messge log file on the disk in the MAx-4
PacDrive Controller. The MAx-4 PacDrive Controller can save
several message log files on its disk.
The message log files can be transmitted from the MAx-4 PacDrive
Controller to the PC with the help of EPAS-4. Several message log
files can be saved there as well.
EPAS-4 window
EPAS4.mel
n-files
Text.mel PC
MAx-4
ring buffer (RAM)
(storage n-files
max. 7 days) EPAS4.mel Text.mel
save and reset log file save and reset log file
Korrekturausdruck
(RAM)
NOTE
It is also possible to filter the message recording (see EPAS-4
Online help / Control Configuration / MAx-4 / MsgFilter) or to filter
only the display of the messages (see next chapter).
PD_UserMan_Fehlersuche_us.fm
NOTE
The individual classes are described in the EPAS-4 Online help
under PLC Configuration.
PD_UserMan_Fehlersuche_us.fm
Korrekturausdruck
Fig. 6-5: Resources / Message logger / Establish a connection in case of an error
Time stamp
Time since switching on the MAx-4 PacDrive Controller in the
format:
DDD HH:MM:SS.sss
with
DDD - days
NOTE
Korrekturausdruck
For further information, please see Operating Manuals, chapter
“Diagnosis and Maintenance" and EPAS-4 Online help, chapter
"Diagnosis".
6.5.1 Trace
The purpose of the trace recording is to record the time relations
and the dynamic behavior of the system.
NOTE
For further information, see Operating Manual EPAS-4.
6.5.2 Debugging
The PacDrive™ system provides comfortable program debugging
facilities for the user.
See also „Program test / debugging“, page 138.
NOTE
For the reason described above, the integration of the “Check“
library increases the runtime. The “Check“ library should therefore
be removed from the project once the test phase is completed.
PD_UserMan_Fehlersuche_us.fm
Korrekturausdruck
PD_UserMan_Fehlersuche_us.fm
7 Teleservice
7.1 Overview
Korrekturausdruck
Definition
Teleservice is defined as the support of customer service and appli-
cation departments by IaC components and services, which make it
possible to execute diagnosis and solve problems on machines
from a remote place. Teleservice is used for the installation of new
machines and plants, for fault clearance and for the transmission of
new software versions. In the future, new applications for teleser-
vice will include process support and customer consulting.
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
LAN (local area network) with TCP/IP support. The standard client
(PC) also has a COM interface and an Ethernet card with appro-
priate connection. Thus, both sides have the physical interfaces to
the outside world.
There are different options for connecting to the PacDrive™
System via a client:
local Ethernet,
internet connection.
Local Ethernet
The first way to do a telediagnosis on the controller is a simple
Ethernet connection. As the figure below shows, server and client
must be connected via a TCP/IP network. The network can e.g. be
installed within a company and connect several computers in a
network.
Server Client
Disadvantage:
You can only establish a direct connection between two computers.
EPAS-4 must be installed on the client computer. This means that
the system is no longer independent of platforms.
Internet connection
Korrekturausdruck
NOTE
As the modem is connected to the serial interface COM1 of the
MAx-4 PacDrive Controller, a serial EPAS-4 connection is not pos-
sible at the same time. Therefore you should always have a
functioning TCP/IP connection for EPAS-4 if you use telservice via
modem connection.
7.2.1 Principle
In principle, teleservice via a direct telecommunication connection
with a modem and EPAS-4 enables the user to use all the functions
that are available in case of a “direct“ connection.
WARNING!
Restricted view of the machine!
Risk of injuries and material damage!
¾ Only do teleservice if a qualified person is available on site, i.e.
at the machine.
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Fig. 7-3: Direct telecommunication connection
Korrekturausdruck
Fig. 7-5: Overview of the assignment of TCP/IP addresses
data bits: 8
stop bits: 1
parity: none
ELAU recommends:
INSYS modem 56k (INSYS order number: 110.756.WD03)
INSYS Modem 144 (INSYS order number: 110.6144.WD03)
Westermo TD-33 v. 90 telemodem (Westermo order number:
31790010)
Westermo TD-32 telemodem (Westermo order number: 3178-
0040)
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Fig. 7-6: Object “Modem“ in the control configuration
RemoteIpAddress
IP address for the computer that connects via modem to the MAx-4
PacDrive Controller. The MAx-4 PacDrive Controller automatically
assigns this IP address to the computer when establishing the con-
nection. By default, this address is set to 190.200.100.101.
LocalIpAddress
IP address assigned to the MAx-4 when establishing a modem con-
nection. This IP address is valid for the PPP adapter of the MAx-4
only. By default, this address is set to 190.200.100.100. It cannot
be changed.
UserName
User name that must be entered when logging in to establish a
connection.
Password
Password that must be entered when logging in to establish a
connection.
PD_UserMan_Teleservice_us.fm
InitString
The init string contains a sequence of AT commands that are sent
to the modem during the initialization phase. In oder to ensure cor-
rect modem operation on the MAx-4 PacDrive Controller, some
basic settings are required on the modem. The default init string
Korrekturausdruck
Default Meaning
AT initiate an AT command
ExpInitString
As InitString is limited to 40 characters, another 40 charcters can
be entered in ExpInitString in order to avoid possible modem pro-
blems. The latter will be transmitted to the modem in a second
round. The string must start with AT, even if no further commands
follow. ExpInitString is only transmitted to the modem if InitString
was processed correctly.
Default-ExpInitString: AT +MS=,0
Value Meaning
AT initiate an AT command
PD_UserMan_Teleservice_us.fm
Value Meaning
Korrekturausdruck
dure and may not be available in your
modem if it has no Rockwell chip set.
The modem recommended by ELAU sup-
ports this command.
State
Shows the state of the modem.
Value Meaning
Init / 0 checking modem
InitString ERROR / 5 The modem could not be initialized with the init string
(maybe the InitString of the modem is faulty or the
modem could not be set accordingly). To restart the init
procedure, you either have to switch off and on the
modem or first change the Com1User parameter of the
MAx-4 object via a TCP/IP connection and then write it
again.
MAx-4.Com1User
Furthermore, there is the parameter Com1User of the object “MAx-
4“ under “General“ in Meaning. Here, the COM1 port of the MAx-4
PacDrive Controller is set. It has to be set to “Modem / 1“ or “Auto /
2“.
PD_UserMan_Teleservice_us.fm
every 10 seconds.
The setting “Auto / 2“ checks the COM1 port. If a ready modem is
detected, that modem is initialized. Otherwise the port is always
released for EPAS-4.
In principle, the parameter only has an effect if its value was
Korrekturausdruck
NOTE
The parameter Com1User directly influences the serial interface
COM1. Therefore this parameter must not be changed by a serial
EPAS-4 connection or a modem connection. This would mean that
you cut off the connection of the COM port for your own connection,
which would result in a serious communication error. In case of
remote servicing via modem connection, there must always be a
functioning local TCP/IP connection, so that the serial interface can
be switched accordingly.
MAx-4.Com1UserState
The parameter Max4.Com1UserState returns the state of the
COM1 port.
Value Meaning
Value Meaning
Korrekturausdruck
10 modem could not be initialized
Auto -> Modem Com1User is Auto; a modem was found and
Offline / 11 initialized successfully
Auto -> Modem Com1User is Auto; modem receiving inco-
Online / 12 ming call
PD_UserMan_Teleservice_us.fm
Windows 95/98
Installation of the telecommunication network
¾ To check if the telecommunication network is already installed,
select the menu item Software from the Control Panel.
Korrekturausdruck
Fig. 7-8: Properties of Software / Windows Setup
Manual EPAS-4.
Configuration of telecommunication connection and modem
¾ Start the telecommunication connection (Start -> Programs
-> Accessories -> Telecommunication Network for Win95; Start
-> Programs -> Accessories -> Comminication -> Telecommuni-
cation Network for Win98). When you start for the first time or
select Create new connection, an assistant will appear and take
you through the configuration of your connection. If no modem
has been installed, this will be done now.
NOTE
In case of installation problems, please consult the manual of your
modem.
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Fig. 7-11: Location settings
.
Korrekturausdruck
¾ After clicking on OK twice, you can terminate the first step of the
assistant with “Continue“.
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Fig. 7-15: Create a new connection
¾ Select the register “Server Types“ and make the following set-
tings:
– Type of telecommunication server: PPP: Internet, Windows
PD_UserMan_Teleservice_us.fm
¾ Click on OK
¾ The connection is now available.
Korrekturausdruck
the duration of the connection. When you create a
telecommunication or VPN connection, a new standard route using
the connection to the RAS server is added to the IP routing table.
This standard route receives the lowest metrics. If a standard route
already exists, it remains in the routing table, but receives higher
metrics. If a new standard route with lower metrics is added,
locations that could previously be reached via the original standard
route may no longer be reachable.
A computer with this operating system in a firmware network has
e.g. a LAN connection in that network and is configured with a
standard gateway of the local IP router. If the option Use standard
gateway for remote network is selected, the standard gateway
and not the local company router becomes the Internet service
provider when the user calls up an Internet service provider. This is
why all locations in the corporate network, except those in the local
network, cannot be reached for the duration of the connection to
the Internet service provider. If the option Use standard gateway
for remote network is not selected, the original standard route
remains unchanged, no new standard route is added and the
locations on the Internet are not available.
Windows NT 4.0
Set up TCP / IP protocol
¾ If the TCP/IP protocol has not yet been installed on your PC, you
have to do it now. The installation is described in the Operating
Manual EPAS-4.
Set up the RAS service (Remote Access Service)
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Fig. 7-21: Control panel Win NT / Network / RAS serivce
¾ If no modem has been installed, the RAS setup will ask if you
want to call up the modem installation program. Confirm with
“Yes“.
NOTE
In case of installation problems, please consult the manual of your
modem.
PD_UserMan_Teleservice_us.fm
¾ Now the RAS service should detect the modem installed and
and select it (confirm with OK).
Korrekturausdruck
¾ Now select a connection in the RAS setup and click on the but-
ton “Network...“.
Korrekturausdruck
Fig. 7-26: Configure connection purpose
Korrekturausdruck
Fig. 7-30: New directory entry / Server
Windows 2000
Installation of the TCP/IP protocol
¾ If the TCP/IP protocol is not installed on your PC, you have to
install it now. The installation is described in the EPAS-4 opera-
ting manual.
Installation of the modem on the PC
¾ Open the control panel (Start / Settings / Control panel).
Korrekturausdruck
Bild 7-34: Dialog location information
NOTE
In case of installation problems, please consult the operating
manual of your modem.
Korrekturausdruck
Korrekturausdruck
Bild 7-38: Network connection assistant / 2
a
Korrekturausdruck
Bild 7-42: Dialog to the connection setup
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Bild 7-44: Properties of the connection / network
Korrekturausdruck
Fig. 7-46: Dialog to the connection setup
PD_UserMan_Teleservice_us.fm
NOTE
Korrekturausdruck
In principle, we recommend to make a test and carefully study the
manual before commissioning.
Cause 5: The chip set in your modem is no Rockwell chip set. In this
case, the command for baud rate detection may not be
recognized correctly.
Handling: Use the valid commands for your modem, which are des-
cribed in your modem manual.
If there are no handshake problems between your
modems, you can replace the content of the parameter
ExpInitString by the command “AT“.
Cause 6: The serial cable or the telephone cable does not match
the modem on the PacDrive Controller.
Handling: Use the cable provided by your manufacturer.
PD_UserMan_Teleservice_us.fm
The modem ends the call before a connection has been esta-
blished
Korrekturausdruck
Cause 1: The time for which the modem waits until a connection has
been established was set too short.
Handling: WIN9x : Telecommunication connection -> Properties ->
Configure -> Settings : deactivate “Interrupt dialling“.
WIN NT : Control panel -> Modem -> Properties -> Set-
tings: deactivate “interrupt dialling".
Cause 1: The modems are using different speed settings, i.e. one
modem is set to “Connect with 19200 bps“, while the other
modem only supports 14400 bps
Handling: Set the modems to automatic speed selection.
WIN9x : Telecommunication connection -> Properties ->
Connect via -> Button “Configure“, register “General“:
deactivate "Connect only with this speed"
WIN NT : Control panel -> Modem -> Properties: deacti-
vate "Connect only with this speed"
If any, set the DIP switch on your modem correctly
Korrekturausdruck
Cause 1: Password or user name are not identical with those saved
in the MAx-4 PacDrive Controller (parameters UserName
and Password)
Handling: Enter the correct password and user name in EPAS-4.
Cause 2: The modem connection is too slow, e.g. less than 9600
BPS. EPAS-4 recognizes no connection because no com-
plete data package is transmitted within the timeout limit.
Handling: Raise the value of EPAS_StandardTimeout in the WIN-
DOWS directory in EPAS-4.INI. After that, EPAS-4 must
be restarted.
Korrekturausdruck
Cause 1: Modem connection remains active.
The timeout limit for modem transmission has been
exceeded. This happens in case of too low data through-
put with slow modem connections and thus too long trans-
mission times for data packages.
Handling: Increase the value of EPAS_StandardTimeout in EPAS-
4.INI in the WINDOWS directory to 10 or more. It might
even be necessary to increase the value of
EPAS_ExtendedTimeout.
The worse the quality of the line and the slower the
modem, the higher should you set this value.
7.3.1 Principle
Korrekturausdruck
Advantages
Connection to several PacDrive controllers possible
Use of Windows “callback“ functionality possible
Use of remote desktop connection or remote control tools such
as VNC
Disadvantages
More configuration work compared with a direct connection to
the PacDrive controller
Remote PC required on the PacDrive controller
PD_UserMan_Teleservice_us.fm
7.4.1 Principle
Korrekturausdruck
r
Bild 7-49: Direct telecommunication network over router to several PacDrive Con-
trollers.
Advantages
Connection to several PacDrive controllers possible
Disadvantages
More configuration work compared with a direct connection to a
PacDrive controller
PD_UserMan_Teleservice_us.fm
Advantages
Easy to configure
Disadvantages
The possibility to apply for a worldwide unambiguous IP address
for a PacDrive controller is probably irrelevant in practice (costs,
limited number of IP addresses)
If, however, a remote PC dials up the Internet via a provider, that
PC is automatically assigned a dynamic IP address. This makes it
possible to establish a connection to that remote PC if that IP
address is known.
Advantages
Connection with several PacDrive controllers possible
Easy to configure
Disadvantages
IP address changes with every dial-up
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
in-house network that has Internet access.
Advantage
Behavior as if the connection were in a local area network (LAN)
Disadvantage
Connection is complicated to configure
PD_UserMan_Teleservice_us.fm
7.6.1 Prinzip
Korrekturausdruck
WARNING!
Restricted view of the machine!
Risk of injuries and material damage!
¾ Only do teleservice if a qualified person is available on site, i.e.
at the machine.
¾ Always keep in touch with this person (e.g. via telephone or
video conference).
LAN
rn
Router Router
In
Connection options
Local area network (LAN)
Telecommunication network via modem
Connection to the Internet
PD_UserMan_Teleservice_us.fm
Korrekturausdruck
Bild 7-52: Komponenten der Ferndiagnose
PD_UserMan_Teleservice_us.fm
8 Networks
This chapter will give you an overview of the networking of devices.
You will be familiarized with goals, advantages, applications and
Korrekturausdruck
8.1.2 Client-Server
With a client-server concept, usually a centralized user manage-
ment is introduced. The users are broken down into different
groups that have certain rights.
Korrekturausdruck
In a client-server concept the tasks are divided. One or several
computers function as servers providing central resources and ser-
vices. After successful login, all other computers can access those
as clients.
In larger networks, different services are usually distributed on
several specialized servers.
Typical server functions are: file server, print server, mail server,
web server, proxy server.
Positive New users are quickly integrated thanks to the centralized user
management.
The user can log into the network under his own name at any com-
puter in the network and thus access the resources needed.
Negative Higher costs for additional server computers, server operating
systems.
8.2 Topologies
Physical Topology
The physical topology of a network refers to the traffic routes, the
physical structure of the network is described. In simpler terms: The
form in which the cables are laid in a wire-based communication
system.
Korrekturausdruck
Star
Loop
In practice, you will often find combinations of bus, star and loop.
Logic topology
The logic topology of a network describes the basic traffic rules on
the communication routes, including who is allowed to access the
transmission medium.
Relation
In practical implementation, the two terms are closely related, so
that normally a certain physical topology entails a certain logic topo-
logy. However, physical and logic topology need not be identical.
8.2.2 Bus
Korrekturausdruck
Fig. 8-1: Bus topology
8.2.3 Star
8.2.4 Loop
Korrekturausdruck
Fig. 8-3: Loop topology
Star-bus network
Combined star-bus networks are common.
Several hubs form the centers of a star each, while the hubs are
connected to each other by a bus cable.
A simple examplefor clarification: In a three-story building each
PD_UserMan_Netze_us.fm
floor has a star topology. The three floors, or rather the hubs, are
connected to each other via one single bus cable.
If the bus cable fails, the floors can no longer communicate with
each other. If a hub fails, the communication of the floors with each
other and on the floor affected is interrupted.
Star-star network
Several hubs form the center of a star; the individual hubs are con-
nected to a main hub.
Again, a simple example: In a three-story building each floor has a
star topology. The three floors, or rather the hubs, are connected to
the central hub via one cable each.
Coaxial cable
Coax cables are available in different versions for different
applications.
Korrekturausdruck
Nowadays they are rarely used for new cabling of computer
networks.
The maximum transmission rate is 10Mbps.
Coaxes according to specification RG 58 are common.
RG-58 A/U - impedance 50 Ohm, thinnet 10Base2;
The thinnet cable is also known as “cheapernet“. In a bus network it
is suitable for cable lengths up to 185 m. Networks with such cab-
ling are called 10Base2.
The abbreviations 10Base2 and 10Base5 already include several
characteristics of networking, namely the transmission speed of 10
Mbps in the base band and the extension limit of approx. 200 and
500 meters per segment, respectively.
With coaxial cables, the speed cannot be increased to 100 Mbps .
Twisted-pair cable
Cables with insulated leads twisted around each other. The twisting
suppresses to a certain degree disturbance from outside or from
neighboring pairs of leads.
Transmission rates of 100Mbps and more are possible. The maxi-
mum distance between the computer and a central component
(e.g. hub) is usually 100m.
Unshielded Cable with twisted pairs of leads without additional individual
twisted pair shielding.
(UTP)
More susceptible to disturbing radiation!
NOTE
If STP is used in a network, but one section uses UTP, the advan-
tage of the STP cables is cancelled.
Fiber-optic cable
Signals are transmitted unidirectionally via light impulses, i.e. only
in one direction, which is why at least two fibers (lanes) per cable
are needed. The light impulses are transmitted by means of a laser
diode or LED.
High transmission rates (gigabit range) and long distances
Multimode The core is thicker than the monomode fiber, dispersion increases.
1GHz x km
8.4.1 CSMA/CD
Korrekturausdruck
The access method of the Ethernet is CSMA/CD (carrier sense
multiple access with collision detection).
Each station can start sending whenever it wants. The individual
stations have competing access to the common transmission
medium at any time (multiple access).
Sending pro- When a station is sending, the signals are transmitted via the cable
cedure: in both directions. By means of regulation you try to minimize the
risk that two stations start sending at the same time and thus the
signals are destroyed on their way (collision). Regulation means
that, before sending, a station checks the transmission medium to
see if it is free. If there are already signals in the cable, the station
will not start sending in the first place.
Collision If there is a collision anyway because two stations find the cable
detection: “free“ and start sending at the same time, that collision must be
detected and a reaction must be triggered.
To detect a collision, all stations continue monitoring the transmis-
sion medium. The station that first detects a collision sends a so-
called JAM signal. Each station that registers the JAM signal stops
sending data immediately. When the line is free again, new
attempts to send can be started. Either a new attempt to send is
started after an arbitrary delay (non persistent CSMA), or the sta-
tion that wants to send continues monitoring the medium and starts
sending.
as soon as it finds the medium free (1-persistent CSMA).
The more stations are connected and trying to send, the more
often do collisions occur, and the lower is the effective data
throughput.
The time of sending cannot be calculated or determined, but is
arbitrary.
The method is therefore unsuitable for time critical applications.
PD_UserMan_Netze_us.fm
Sending When a station wants to send, it has to wait until it receives the
method: token circulating in the loop (a bit pattern circulating in the network).
Within the bit pattern of a token, there is a digit that shows if the
token is actually free or busy.
When a station receives a “free“ token, it can change it into “busy“
and add information on the source and target addresses as well as
the data to the token. The whole package is now called a frame and
forwarded to the next station. That station checks the receiver
address and, if it is not the addressee, forwards the message.
Receiving When the message has reached its destination, it is copied there.
The destination acknowledges receipt by an entry in the frame and
forwards the modified package to the next station.
When this (acknowledged) package finally arrives at the former
sender station, that station recognizes that the message has been
transmitted. Now the station replaces the frame by a free token,
which it forwards to the next station.
Access rules Apart from this basic structure, token loop has further rules to
ensure data transmission. In each loop one station takes the role of
the “active monitor“. Usually it is the first station that becomes
active in a loop. When that computer is switched off, a new station
for that role is determined in a defined procedure (token claiming
procedure). The active monitor ensures, among other things, that
there is always a valid token or a valid frame (token plus data) in
the loop.
The network can be extended up to the maximum permitted
number of stations without impairing the regulated data through-
put.
With the NAUN procedure, token passing can find out relatively
quickly if a station is causing a problem, and which station in the
loop that is. The station can automatically be removed from the
loop.
Suitable for time-critical applications.
PD_UserMan_Netze_us.fm
Korrekturausdruck
The proprietary IPX/SPX protocol is used. As of version 4.1, howe-
ver, the system also supports TCP/IP, which became the standard
protocol with version 5.0.
Domain concept in NT
The directory services in Windows NT are implemented in the
so-called domain concept. A domain is an administrative unit which
is eventually created by a single server, the so-called primary
domain controller (PDC).
Administration is done via (user) nodes stored in a user node data-
base on the PDC.
Administration of that database is also possible from other
computers.
Active Directory – further development of the domain concept in
Windows 2000.
Windows 2000 integrates the domain concept into ADS (active
directory services).
This makes the creation and administration of large networks signi-
ficantly easier than in Windows NT. Existing NT 4.0 domains can be
integrated in the active directory fairly easy.
8.6 TCP/IP
7 Application layer
5 Session layer
PD_UserMan_Netze_us.fm
1 Physical layer
Korrekturausdruck
Table 8-3: Overview of important protocols
SMTP application
HTTP application
SNMP application
(Mail program)
FTP application
(Browser)
SNMP
SMTP
HTTP
FTP
4 TCP UDP
3 IP
Fig. 8-7: Structure of protocols and services and their location in OSI layers
Port number:
As different services such as FTP, Telnet, SMTP or HTTP can be
called at the same IP address in a computer that can be reached by
TCP, an additional marker is needed to make it clear which of those
services is requested.
This is done by means of the so-called port number.
Number Meaning
20 FTP data
21 FTP commands
23 Telnet
25 SMTP
80 HTTP
110 POP3
Socket:
Whereas the IP address unmistakably identifies a computer, the
port number determines which service on the computer is
addressed.
Both pieces of information together are called socket.
Korrekturausdruck
8.6.3 IP Addressing
When using TCP/IP, an unambiguous IP address must be assigned
to each network card within a network. Thus logic IP addresses are
assigned to the physical network card addresses (MAC
addresses).
For computers that are connected to the Internet, this means that
their IP addresses are worldwide unique.
Network ID Host ID
IP address
- decimal 192 168 10 1
- binary 1100 0000 1010 0000 0000
1000 1010 0001
Subnet mask
- decimal 255 255 255 0
- binary 1111 1111 1111 1111 1111 1111 0000
0000
Korrekturausdruck
Informations-Center).
However, those centers do not issue individual IP addresses, but
only address groups, which providers then pass on to their custo-
mers. Providers can request different numbers of IP addresses.
This is why IP addresses were broken down into different address
classes.
Classes A, B and C are for addressing computers.
Number of
Subnet Number of
Class Network ID network
mask networks
nodes
APIPA
Static IP addressing
DHCP
DHCP permits the automatic configuration of IP addresses and
other configuration options for clients in a network with one or
several DHCP servers.
So-called IP segments (IP addresses to be assigned) are created
on the DHCP server and configured with options such as standard
gateway or DNS server. When booting, a client asks the DHCP ser-
ver for an IP configuration, which it can then use for a certain time
(lease time). When shutting down, the client logs off the DHCP ser-
ver, which then assigns the IP address to another client.
APIPA
APIPA is suitable for simple networks with only one subnet. If no
DHCP server is available, the computer automatically assigns itself
a private IP address via APIPA.(169.254.0.1 to 169.254.255.254)
Later on, when a DHCP server is available and determines an
address, the computer will change its IP address accordingly.
Static IP addressing
Static IP addressing permits the manual configuration of IP addres-
ses if DHCP and APIPA are not available or technically impossible.
Particularly in large networks, this method is very time-consuming
and prone to errors.
Korrekturausdruck
This includes DNS, WINS, name resolution with HOSTS or
LMHOSTS files and broadcast name resolution. Usually Windows
2000/XP uses a combination of the methods.
DNS
Queries are sent to DNS servers. The method is used for applicati-
ons and services requiring host-to-IP name resolution. This method
is needed if the computer wants to access the Internet.
DNS is the standard method for name resolution for clients in Win-
dows XP.
When the resolution service of Windows XP receives a positive or
negative reply to the query, it inserts that reply into its cache and
thus creates a DNS resource entry. Before the query to DNS ser-
vers, the resolution service always checks the cache first. If there is
a DNS resource entry in the cache, the resolution service uses the
entry saved there and executes no server query. This reduces the
queries and accelerates the network traffic due to DNS queries.
Show DNS ipconfig /displaydns
resolution
cache:
Manually Ipconfig /flushdns
clear DNS
resolution NetBIOS name resolution
cache:
Queries are sent to WINS servers. This method was added for
compatibility reasons for applications and services requiring Net-
BIOS-to-IP name resolution, e.g. the search function of Windows
NT 4.0, Windows 98/95.
Repeater
A repeater (signal amplifier) is an active network component that
takes over a regeneration functionality.
A repeater receives signals, amplifies and forwards them.
In local networks, a repeater is used to increase the maximum
signal range and thus the maximum possible cable length. A repea-
ter can thus connect network segments of the same LAN type for
communication purposes.
A repeater works on layer 1 of the OSI model, i.e. the repeater only
regenerates bit streams that are sent via the media, but has no
insight into the messages. Therefore the same access method to
the medium must be used in all segments involved. A repeater
cannot mediate between e.g. Ethernet and token loop.
As a layer 1 device, a repeater is completely “transparent“, i.e. neit-
her other connected devices nor programs “know“ about the
device.
Repeaters no longer play any major role in new networks.
HUB
HUBs, like repeaters, work on layer 1 of the OSI model and are
completely transparent to other systems.
By connecting several hubs, the number of connected stations can
be increased fairly easily.
HUBs are connected to each other via a crossed cable - or if a
straight cable is to be used, a special input (uplink input) must be
used on the HUB.
The respective terminals are each connected to the HUB with a
cable of their own (straight). Such a connection point is known as
port.
As each connected device has its own decided connection and its
own cable to the HUB, HUBs can offer those devices the full band-
width of the local network at least up to the HUB port. Nevertheless,
the entire segment remains, i.e. the devices have to share the
PD_UserMan_Netze_us.fm
Bridge
A bridge already operates on layer 2 of the OSI model (MAC
Korrekturausdruck
address level) and thus is transparent to higher protocol layers.
This means that all protocols based on layer 2 are forwarded by the
bridge without being processed. In contrast to the repeater, a
bridge can work with different transmission rates and different
access methods and thus can also be used e.g. between CSMA/
CD and token passing. A bridge connects network segments which,
in contrast to the repeater, can also represent different technologies
(e.g. Ethernet and token loop). If the bridge knows the recipient, it
will forward the data only to the appropriate network.
A bridge cannot narrow down circular messages in the form of
broadcasts to one segment, i.e. the broadcasts from one computer
to all others are forwarded to the other segments.
A bridge temporarily saves and prepares the data packages before
forwarding them on the basis of the MAC address. For this task, a
bridge uses address tables (bridge tables) in which the MAC
addresses of the connected stations are entered.
Switch
A switch is primarily the further development of a bridge. Just like a
bridge, a switch works on layer 2 of the OSI model and uses MAC
addresses to deliver the data.
A bridge can improve the bandwidth in the entire network by forwar-
ding data traffic only if it is a transmission from one segment to
another.
A switch, on the other hand, can improve the bandwidth within a
segment.
In contrast to the bridge, direct and decided connections are swit-
ched between the ports. Data packages are sent to the port of the
target station only. This reduces the network load substantially.
As the switch works on the MAC address level, a switch cannot
couple two network segments.
Several manufacturers are already offering high-capacity switches
that work not only on layer 2, but up to layer 3 or even higher.
PD_UserMan_Netze_us.fm
Router
A router is a device that can couple separate networks or divide
large networks into subnets.
The simplest form of a router is a PC with several network cards,
each of which has contact to different networks.
Routers work on layer 3 of the OSI model. This means that routers
can connect networks with different topologies and the layers 1 and
2 lying beneath them.
However, all networks involved always have to use the same way
of addressing their data packages.
The router unpacks arriving data packages up to layer 3 in order to
find out the target address in the header. This procedure takes
time, so that routers are usually slower than switches.
The allocation of routers to OSI layer 3 also means that a router
does not use the MAC address, but the address of the protocol
level (e.g. the IP address) as a target.
Routing The main function of a router is to find routes for packages from
tables source to target.
For this purpose, routers use so-called routing tables, where known
target addresses are listed.
When a package arrives and the router has read the desired target
address, it can check the routing table to see if that address is regi-
stered there.
If this is the case, it can forward the package. If this is not the case,
it forwards the package to another router (default router/gateway),
which then tries in its own way to deliver the package. This forwar-
ding is also called “hop“.
This means that the gateway to be entered in the Windows control
panel is actually a router.
PD_UserMan_Netze_us.fm
Korrekturausdruck
service Routing and RAS must have been started (see PacDrive P
and Ethernet).
To test the routing properties of a Windows2000/XP computer,
there are various tools, which we will deal with later on.
Gateway
A gateway connects networks with completely different protocols
and address formats.
A gateway can connect actually incompatible networks. This is
made possible because a gateway can be active on all 7 OSI lay-
ers. In the extreme, it unpacks an incoming message up to layer 7
in order to re-pack it down to layer 1 in a way that is suitable for the
other network.
A gateway really converts one protocol into another.
NOTE
If there is a connection with a long delay to the remote system to
which the ping signal is sent, the reply may take longer. The default
time limit of four seconds can be extended with the parameter – w
Korrekturausdruck
(wait).
Time to live exceeded The number of required hops exceed the time
during transmission to live (TTL).
Extend the TLL by means of the parameter
ping -i.
Ping request could not The name of the target host cannot be resol-
find host ved.
Check the name and availability of DNS or
WINS servers
Table 8-7: Meaning and action in case of error messages with “Ping“ command
Deleting the If a ping signal can be sent successfully both to the loopback
ARP cache address (127.0.0.1) and to the own IP address, but not to another
IP address, the ARP cache may have to be deleted.
The tool ARP is used for that purpose. The cache contents can be
displayed with the commands arp –a and arp -g. The entries are
deleted with the command arp –d IP address.
The complete ARP cache is deleted with the command netsh inter-
face ip delete arpcache.
PD_UserMan_Netze_us.fm
Route print
The routing table is shown on the computer with the command
“route print“.
For two hosts to be able to exchange IP datagrams, they must have
a route to each other or use a standard gateway that knows a route.
Korrekturausdruck
Fig. 8-8: The command “route print“ at the MS-DOS prompt
bit that has to match and 0 for a bit that does not have to match.
In a mask that consists only of ones (255.255. 255. 255) the target
address of the package to be forwarded must exactly match the
entire host address for this route in order to be regarded as a
match. In the example of the network mas 255.255.0.0 the first two
octets must match exactly. The last two octets need not match.
Gateway The IP address for forwarding is determined on the basis of the
address gateway address in the routing table. It is either the host’s own IP
address or that of a router in the local subnet. If the gateway
address of the route is the host IP address, the IP address for for-
warding is set to the target IP address in the IP datagram. This is
the IP address of the host to be contacted. It is insignificant whether
the host is located in the local subnet or in a remote subnet. If the
gateway address of the route is not the host IP address, the gate-
way address, usually the address of a router in the local subnet, is
used as the IP address for forwarding.
Route add
If a route is missing between two hosts that can be connected, a
route can be added with the command “route add“.
Example:
ROUTE ADD 192.168.3.0 MASK 255.255.255.0 192.168.2.2
The MASK option routes entire networks; i.e. if you want to address
a host in the network 192.168.3, then use router 192.168.2.2
PD_UserMan_Netze_us.fm
Tracert
With the traceroute command (tracert) a route to a certain given IP
target can be traced via up to 30 hops (router/gateway).
The speed of data transmission on the respective sections is proto-
colled as well.
Korrekturausdruck
E.g. tracert 10.205.0.1 (shows the package route to the target
10.205.0.1)
Pathping
The command pathping sends data packages to each router on the
way to the last network target IP address and then reports via the
path of the packages from one router to the next.
As pathping indicates the extent of package loss in route segments
or connections, it can be detected exactly which routers or connec-
tions may be overloaded and are causing network problems.
Connection order
If several network cards and several network protocols are installed
on a computer in Windows XP Professional, you can define the
connection order of the respective network cards and protocols for
the services using the respective protocols.
The connection order defines which protocol a service uses for the
connection to another service or client and which network card is
used for the connection.
To reduce the time for searching the necessary clients and ser-
vices, place the most frequently used network card and protocol
first.
Many services can establish connections with any protocol.
Network access, however, is controlled by the service Client for
Microsoft Networks. The connection order is shown on the tab Net-
work cards and connections on the properties page Extended
settings (right mouse button - Network environment | Advanced |
Advanced settings) of a selected network adapter.
PD_UserMan_Netze_us.fm
Fig. 8-9: Configuring the order of connection for the network card and the order of
protocol creation
Display of events
Window order:
Workplace | Settings | System programs | Events | Safety
PD_UserMan_Netze_us.fm
Korrekturausdruck
Fig. 8-10: Dialog window “Properties of Event“
9 System Data
Size Value
Korrekturausdruck
markers 64 kByte
inputs 64 kByte
outputs 64 kByte
NvRam MAx-4
- size 1 kByte
- data retention max. 7 days
size of all variables of a POU of the type 128 kByte (32 kByte < V00.12.00)
FB (including POUs called up)
System clock
resolution 250 µs
Size Value
real-time clock on the PN-4 module
- accuracy ±1 minute in 12 days.
- data retencion max. 7 days
- battery buffer can be done internally or externally
Korrekturausdruck
Table 9-1: Data of the PacDrive™ M system
NOTE
Bit variables declared with the keyword AT can only be placed on
the first 4096 bytes. Otherwise there will be a syntax error in the
declaration.
The initialization behavior can be influenced with the object
parameter MAx-4.General.RetainInit.
After successful compilation of a project, the sizes Code Size and
Data Size are shown.
PD_UserMan_Kennwerte_us.fm
AxisState 0/1 2 ≥3
0x03 /
MC4State 0x10
0x20 0x30
current speed
0
0 Brake t
Disconnection
Time
1
brake relay
closed 0
0 t
1
motor
torque 0
0 t
1
Ready
closed 0
0 t
Korrekturausdruck
10.2.1 Ramping-down within Maximum Ramping-down
Time
When lifting enable, the following behavior over the time occurs if
the drive is ramped down within the maximum ramping-down time:
1
1
Hardware- and
ControllerEnable 0
0 t
AxisState ≥3 0
current speed 2
nmin
0
0 t
1
brake relay 4
closed 0
0 StopTimeLim t
3
1
motor
torque 0
0 t
BrakeCouplingTime
1
Ready
closed 0
0 t
Fig. 10-2: Time diagram: Ramping down within maximum ramping-down time
When lifting enable (time 1), the drive ramps down with maximum
current. The drive comes to a stop before expiry of the maximum
ramping-down time StopTimeLim (time 4). As soon as the acutal
velocity drops below the velocity limit (time 2: actual velocity < nmin
(10 min-1)), the brake relay drops. After expiry of the BrakeCou-
plingTime (time 3), the motor is switched torque-free. The ready
contact remains closed.
Thus error-free ramping-down is executed if CoastOption is not
PD_UserMan_ZeitDiag_us.fm
1
1
Hardware- and
ControllerEnable 0
0 t
AxisState ≥3 0
current speed
3
nmin
0
0 t
1
brake relay 2
closed 0
0 StopTimeLim 2* StopTimeLim t
4
1
motor torque
0
0 t
BrakeCouplingTime
1
error 5
reaction "B" 0
0 t
StopTimeLim
1
Ready
closed 0
0 t
Fig. 10-3: Time diagram: Ramping down (stop time limit exceeded, bringing to a
stop)
When lifting enable (time 1), the drive ramps down with maximum
current. However, the drive does not come to a stop before the
maximum ramping-down time StopTimeLim (time 2). For this rea-
son, the error message “Stop time limit exceeded“ is triggered with
error reaction "B". In case of error reaction "B", the ready contact is
opened and the drive is still brought to a controlled stop with maxi-
PD_UserMan_ZeitDiag_us.fm
mum current. If the drive comes to a stop (time 3) within the stop
time limit of error reaction "B" (time 5), the brake relay is opened
(brake drops) and the motor is switched torque-free after the Brake-
CouplingTime (time 4).
Thus, the drive is ramped down in a controlled way as long as the
drive comes to a stop within the double stop time limit plus the
brake coupling time and CoastOption is activated neither for lifting
Korrekturausdruck
enable nor for error reaction "B" (bEnableCoast = FALSE; bError-
Coast = FALSE).
1
1
Hardware- and
ControllerEnable 0
0 t
AxisState ≥3 0
without brake
current speed
with brake
nmin
0
0 t
1
brake relay 2
closed 0
0 StopTimeLim 2 * StopTimeLim t
4
1
motor
torque 0
0 t
BrakeCouplingTime
1
error 3
reaction "B" 0
0 t
StopTimeLim
1
Ready
closed 0
0 t
PD_UserMan_ZeitDiag_us.fm
Fig. 10-4: Time diagram: Ramping down (stop time exceeded, drive coasts to a
stop)
When lifting enable (time 1), the drive ramps down with maximum
current. However, the drive does not come to a stop within the
StopTimeLim (time 2). For this reason, the error message “Stop
time limit exceeded“ is triggered with error reaction "B". In case of
error reaction "B", the ready contact is opened and the drive is still
Korrekturausdruck
1
1
error
reaction "B" 0
0 t
Korrekturausdruck
AxisState ≥3 0
current speed 2
nmin
0
0 t
1
brake relay 4
closed 0
0 StopTimeLim t
3
1
motor
torque 0
0 t
BrakeCouplingTime
1
Ready
closed 0
0 t
Fig. 10-5: Time diagram: Error reaction B / Ramping down within stop time limit
In case of an error with error reaction "B" (time 1), the drive ramps
down with maximum current and the ready contact is opened. The
drive comes to a stop before expiry of the StopTimeLim (time 4). As
soon as the actual velocity drops below the velocity limit (time 2:
actual velocity < nmin), the brake relay drops. After expiry of the
BrakeCouplingTime (time 3), the motor is switched torque-free.
Thus, the drive is ramped down error-free if CoastOptionis not
active for error reaction "B" (bErrorCoast = FALSE).
1
1
error
reaction "B" 0
0 t
Korrekturausdruck
AxisState ≥3 0
without brake
current speed
with brake
nmin
0
0 t
2
1
brake relay
closed 0
0 StopTimeLim t
3
1
motor
torque 0
0 t
BrakeCouplingTime
1
Ready
closed 0
0 t
Fig. 10-6: Time diagram: Error rection B / Stop time limit exceeded
In case of an error with error reaction "B" (time 1), the drive ramps
down with maximum current and the ready contact is opened.
However, the drive does not come to a stop before expiry of the
StopTimeLim (time 2) (actual velocity < nmin). Therefore the brake
relay is opened and the error message “Stop time limit exceeded“ is
triggered. As an error with the same error reaction is already active,
this error message has no effect on the drive. After the BrakeCou-
plingTime (time 3), the motor is switched torque-free.
Thus, the drive is ramped down in a controlled manner for the stop
time limit period plus the brake dropping time and then brought to
an uncontrlled stop (drive coasts to a stop). This only applies if
CoastOption is not active for error reaction "B" (bErrorCoast =
FALSE). The uncontrolled stop generates no error message.
The behavior of the drive in the event of an uncontrolled stop
depends on whether the motor has a holding brake or not.
PD_UserMan_ZeitDiag_us.fm
Korrekturausdruck
1
error
reaction "A" 0
0 t
AxisState ≥3 0
current speed
3 4
with brake
without brake
nmin
0
0 t
with BrakeCoast = TRUE
1
brake relay 2 5
closed 0
0 Brake t
Coupling Brake
Time Coupling
1 Time
motor
torque 0
0 t
1
Ready
closed 0
0 t
In case of an error with error reaction "A" (time 1), the drive is swit-
ched torque-free immediately, the brake drops and the ready
contact is opened. When the BrakeCouplingTime is over and the
drive comes to a stop (actual velocity < nmin) (time 3), the
MC4State is switched to 0x02. From that state, the drive can be
controlled again after quitting the error message.
With the CoastOption for the brake, the brake will not drop until the
drive is standing (time 4: actual velocity < nmin). After the Brake-
CouplingTime the MC4State is switched to 0x02.
The same reaction is activated if the CoastOption for enable is acti-
vated when lifting enable (bEnableCoast = TRUE) or the
CoastOption for error reaction “B“ is activated for an error with error
PD_UserMan_ZeitDiag_us.fm
The behavior of the drive depends on whether the motor has a hol-
ding brake or not.
1
1
Overload
0
0 t
Korrekturausdruck
AxisState ≥3
current
position
Overload
position
0
0 800ms t
current speed
nmin
0
0 800ms t
-nmin
2
1
brake relay
closed 0
0 t
1
motor
torque 0
0 t
1
Ready
closed 0
0 t
When the system switches off due to overload (time 1), the drive is
controlled with reference to the overload position. The overload
position is the actual position at the time when the overload switch-
off occurs. If the drive reaches the overload position within the
maximum stopping time of 800 ms and the motor comes to a stop
(time 2: |actual velocity| < nmin), the MC4State is switched to 0x32.
After overload was quitted in this state, the drive follows the set
values again.
PD_UserMan_ZeitDiag_us.fm
This is a way to bring the motor to a stop without any error in case
the system switches off due to overload.
1
1
Overload
0
0 t
AxisState ≥3
current
position
Overload
position
0
0 800ms t
current speed
2
nmin
0
0 800ms t
-nmin
1
brake relay 4
closed 0
0 t
BrakeCoupling
Time
1
motor
torque 0
0 t
1
error
reaction "B" 0
0 t
1
Ready
closed 0
0 t
PD_UserMan_ZeitDiag_us.fm
When the system switches off due to overload (time 1), the drive is
controlled with reference to the overload position. The overload
position is the actual position at the time when the overload switch-
off occurs. If the drive does not reach the overload position within
the maximum stopping time of 800 ms (time 2), the error message
Korrekturausdruck
“ramping-down time exceeded“ is triggered with error reaction “B“
and the motor is brought to a controlled stop. As soon as the actual
velocity drops below the velocity limit (time 3: |actual velocity| <
nmin), the brake relay drops. After the BrakeCouplingTime (time 4)
the drive is switched torque-free.
The drive is brought to a stop in this way if CoastOption for error
reaction "B" is not active (bErrorCoast = FALSE).
LEGEND
Absolute values are noted directly on the axes. They give a value
referring to the zero point of the axis.
Differences are noted in curly brackets. The bracket gives the cor-
responding range.
PD_UserMan_ZeitDiag_us.fm
VXX.YY.ZZ
XX - incompatible changes
YY - upwardly compatible changes
ZZ - compatible changes
Korrekturausdruck
PD_UserMan_Versionsk_us.FM
12 ENI-4
This chapter will give you an overview of the function, structure and
operation of the engineering interface (ENI).
Korrekturausdruck
Further documentation:
ENI Server user manual
Online help for ENI Server, ENI Admin, ENI Control (parts of the
ENI Server Suite) and ENI Explorer
EPAS-4 Automation Toolkit online help
Version management
Korrekturausdruck
development environment for controllers. Although individual parts
of a project could be exchanged by means of export and import
functions, developers had to rely on verbal arrangements in order
to coordinate their work.
The ENI offers a much more elegant solution to that problem. The
project is stored entirely in the ENI. When a developer wants to
work on a component, he loads it to his local working environment
and edits it there. Other developers cannot edit that component at
the same time. They can only access it after it has been released
by the programmer. This strategy permits coordinated and thus
effective work with several developers on the same project.
Client 2
EPAS-4 (Vis, Config. etc)
programming
system
Client Interface
(C++ DLL)
ENI Server
Database Interface
PD_EniKonzept_us.fh8
ENI Server
Engineering Interface Server runs as a separate service. The
communication protocol is HTTP with XML as useful data.
PD_UserMan_ENI_us.fm
ENI Client
The clients of the ENI Server are e.g. EPAS-4, a CoDeSys
programming system or other applications that need to access the
data storage. All clients are equal.
Korrekturausdruck
Connection between ENI Server and database system (DB)
The ENI defines no own storage format. It is connected to an
existing data handling system via drivers (database interface).
Drivers are available for the database systems 'Visual SourceSafe
6.0', 'MKS Source Intergrity' and a local file system. For connection
to other storage systems, please contact us.
Which data storage system an ENI Server is actually serving is
defined in the ENI Server administration (See also „The ENI in
EPAS-4“ on page 251.). The clients of the server can then access
exactly that system.
ENI Explorer
ENI Explorer exists analogous to Windows Explorer as an
independent program that can be connected to the desired ENI
Server by means of suitable ENI access data. The folder/object
structure in the ENI and the desired database functions can be
called up right there, independently of the data handling system
used and of EPAS-4. Object type, access rights, actual check-out
status and users are shown as well.
PD_UserMan_ENI_us.fm
OFFSET: INT := 2;
END_VAR
]]>
</interface>
<st>
Korrekturausdruck
<body>
<![CDATA[RUN_STRING:='Start';
IF (YVAL < 0) THEN
YVAL := YVAL + OFFSET;
BOTTOM := YVAL + OFFSET;
END_IF;
]]>
</body>
</st>
</pou>
Korrekturausdruck
- Insert common objects (from the database system into the local
project
- Update status
Korrekturausdruck
PD_UserMan_ENI_us.fm
Korrekturausdruck
vated, the code is added at the end of a cycle. As the code now
exists twice, the memory will be reorgnized during the following
cycles.
What is OPC?
OPC stands for OLE for Process Control and represents a standard
interface for the connection of various hardware components to
HMI/SCADA applications.
For further details, see Operating Manual OPC Server (article num-
ber 17130073-001)
PD_UserMan_FAQ_us.fm
14 Glossary
Absolute position encoder
Every point of a journey is marked by an unambiguous signal. For
Korrekturausdruck
Acceleration time
Acceleration time of the servomotor/amplifyer combination without
external inertia from standstill to rated speed at peak torque.
ActiveX
The designation ActiveX is a general term. It comprises the techno-
logies known as OLE Control (OCX). However, the terms were
rearranged in the scope of the definition of ActiveX. ActiveX is a
technology developed by Microsoft in order to support interactive
contents for the World Wide Web. To be regarded as ActiveX con-
trol, a COM object must offer certain interfaces.
Analog signal
Many process data are available as analog values. We differentiate
bewtween a voltage or current signal. To enable a computer to read
in an analog value, it requires an analog digital converter. The reso-
lution of the signals depends on the accuracy of hte AD converters.
Applet
An applest is a program used primarily on Internet sites. It is written
in the Java programming language and can therefore run on all
platforms.
AS interface
AS interface (ASI) is designed for very easy networking in automa-
tion technology. ASI was optimized for the lowest field bus level and
offers the opportunity to connect not only binary, but also intelligent
slaves and simple, analog units. With regard to the data volume,
ASI has a lower capacity than field buses and is no competition for
them.
PD_UserMan_Glossar_us.fm
ASCII
ASCII is the abbreviation for American Standard Code for Informa-
tion Interchange. It is represented in 7-bit mode.
Axis identifier
Korrekturausdruck
Logic address of an MC-4 MotorController (not RealTimeBusAdr!)
Baud
The transmission speed baud is defined as the number of bits
transmitted per second.
Baud rate
The baud rate is the speed of data transmission and gives the num-
ber of bits transmitted per second (baud rate = bit rate).
Booting
The start procedure of a computer (e.g. PC) and operating system
is also called booting.
Browser
A "Web browser" is a program that permits access to and display of
Internet pages. The main purpose of web browsers is to download
HTML documents and the corresponding pictures from the Internet
and display them.
Bus
Common transmission channel to which all participants are connec-
ted; it has two defined ends.
Bus connector
Physical connection between station and bus line.
Bus system
All stations that are physically connected via a bus cable form a bus
system.
Cam laws
See set value generation
PD_UserMan_Glossar_us.fm
CAN
CAN stands for Controller Area Network and was originally
developed by Bosch and Intel as a bus system for vehicles. In the
meantime, CAN has also proven suitable as a field bus in automa-
tion technology. Like practially all field buses, CAN is based on the
Korrekturausdruck
OSI 7 layer model. CAN is normed in ISO 11898 only for OSI layers
1 and 2 and is based on a bus structure. The transmission speed
can be selected in a range of 20 kBit/s to 1 Mbit/s. The application
layer is defined by the layer-7 protocols based on CAN, e.g.
DeviceNet over CANopen. Due to the access method CSMA/CA
and object-oriented addressing, CAN is particularly suitable for set-
ting up very efficient event-controlled systems. In the multimaster
system CAN, data can be exchanged directly between any number
of clients.
CE
The CE sign documents that the product meets all requirements of
the applicable European directives.
Client
An application that turns to a server to have certain tasks carried
out.
CNC
An abbreviation for computerized numerical control. CNCs are
used primarily in machine tools.
Cold restart
Program start at which all variable ranges are (re-)initialized. In
case of certain events, such a cold start can be initiated automati-
cally or manually by the user.
PD_UserMan_Glossar_us.fm
COM
The Component Object Model is used by Microsoft to define a
mechanism for the cooperation of software components within the
Microsoft Windows operating systems. By means of COM, an appli-
cation can use the services of other applications or components.
Korrekturausdruck
COM is the technological basis for ActiveX, OLE and DCOM. COM
describes accurately to the bit how components work together and
thus, in principle, is not tied to a programming language or a certain
operating system. By now, the COM standard is also available on
other operating systems.
COM objects
COM objects are software components that comply with the COM
component model and make their functionality available to a client
via COM interfaces. COM objects are defined unambiguously by
their CLSID.
Commentary
Text enclosed between brackets and asterisks (cannot be nestet!)
to explain a program; not interpreted by the programming system.
Communication
Here: data/information exchange between configurations.
Consistent data
Data that belongs together in terms of content and must not be
separated are called consistent data.
Control
A system in which signals are given only in forward direction from
the input to the output. It is not checked and corrected if the actual
values of the system match the set values.
ControlNet
ControlNet is an open control network fulfilling the requirements of
real-time applications with high data throughput. It is used to con-
nect controls, I/O modules, PCs, visualization systems (HMI) and
other intelligent devices. ControlNet transmits data with 5 MBit/s
and enables a deterministic, reproducible transmission of time-criti-
cal control data. Network access is controlled by the time slice
algorithm "Concurrent Time Domain Multiple Access" (CTDMA).
PD_UserMan_Glossar_us.fm
CPU
Central Processing Unit, micro processor
CUL
Products bearing the CUL sign meet the safety standards for the
Canadian market. Canadian safety standards may differ in detail
from the US standards of UL.
Current regulator
The current regulator regulates the difference between set current
value and actual current value to 0.
Cv
Designator for the rated speed -> see VDI 2143
Meaning:
Cv lower -> required drive torque due to static strain (spring force,
gravity, usable force) lower
Cycle
One round of the application program (which is checked
periodically).
Cycle time
The time an application program needs for a cycle.
DC-circuit
Rectified and smoothed power supply.
PD_UserMan_Glossar_us.fm
DCOM
The Distributed Components Object Model expands the COM stan-
dard, so that COM objects can be used across computer limits.
DCOM is an optimized protocol which enables a client to use a
COM object on another computer. For this purpose, the calls to the
Korrekturausdruck
COM object are “packed“ in data packages, transported via a net-
work, unpacked again and finally the COM object is called. The use
of remote objects is transparent to a client.
Declaration
Definition of variables and FB instances in a declaration block,
giving the designator, the data type or FB type and, where applica-
ble, the start values, value ranges and field properties.
The definition or programming of POUs is also called declaration
because they are declared with their properties in the programming
system.
Declaration block
Summary of declarations of a variable type at the beginning of a
POU.
DeviceNet
DeviceNet is an open, manufacturer-independent field bus stan-
dard in automation technology for the connection of PLCs with
“intelligent“ devices such as sensors, push buttons, I/O assembly
units, simple operating interfaces and drives via one single cable.
DeviceNet is an application protocol (OSI layer 7) based on the
Controller Area Network (CAN). It offers high reliability for deman-
ding applications with a high number of I/O assembly units.
Depending on the kind and length of cable used, the transmission
speed is 125 kBit/s to 500 kBit/s.
Dezentralized technology
In converter technology, one differentiates between centralized and
decentralized technology. The difference lies in the power supply. In
centralized technology, one supply module generates the power for
the individual amplifyers. In decentralized technology, each
amplifyer or MotorController has its own power supply.
PD_UserMan_Glossar_us.fm
Drive bus
Korrekturausdruck
Edge
A “rising“ edge means the 0 -> 1 transition of a logic variable.
Accordingly, a “falling“ edge is the 1 -> 0 transition.
EMC
EMC (electromagnetic compatibility) is the ability of an electric or
electronic device to function satisfactorily in its electromagnetic
environment. Limits for interference emission and interference
proofness are set in norms.
EN
Abbreviation for European norm. In the course of European harmo-
nization, national norms (e.g. DIN or VDE) are replaced by
European norms .
Erasing unit
Assembly units to reduce induced voltages, which occur when swit-
ching off power circuits with inductivities.
PD_UserMan_Glossar_us.fm
Ethernet
Ethernet has been around since the early 1980s and is nowadays
found in all network technologies. An end of the dominance of the
Ethernet is not in sight. It is available for various cable media, fiber-
optic cables and radio and offers data rates of 10 Mbit/s to 1 Gbit/s.
Korrekturausdruck
All kinds and generations of components cooperate in a network
with no problem. The principal disadvantage of the restricted deter-
ministic transmission behavior is usually meaningless for most
applications (e.g. HMI) and can be neglected in view of the
immense transmission capacities.
FBL
Function block language, essentially equivalent to the classical
function block diagram.
Field
Sequence of elements of the same data type.
Field bus
Conventionally, sensors and actuators are connected with a control
or evaluation unit via an analog or digital signal. This technology
requires a multiwire cable for each connection between sensor or
actuator and control. In addition, a facility for switching on and off (I/
O) must be provided in the control for each sensor or actuator. If a
field bus system is used, all devices are connected to one bus
cable. Instead of facilities for switching on and off, an interface
module is used. The resulting advantages are obvious. Commis-
sioning and service become easier, the plant is more flexible. As a
rule, this means cost advantages compared with conventional solu-
tions. The different requirements for field bus systems, the variety
of techical soltions and last, but not least, aspects of corporate
policy, resulted in a large number of different field buses and pre-
vented one single international standard. The devices of ELAU AG
support the following international standards: CANopen, PROFI-
BUS DP, DeviceNet and ControlNet.
Following error
The following error is the dynamic distance between the computed
set position value and the actual position value. The following error
depends on the regulator structure and the amplifications of the
individual regulator circuits. Minimal following errors can be achie-
ved by means of feed forward for speed and current.
PD_UserMan_Glossar_us.fm
FTP
"FTP" (short for "file transfer protocol") is a transfer protocol used in
the World Wide Web or in local networks using TCP/IP as network
protocol. "Anonymous FTP" is offered by several thousand Internet
computers as a way for everybody to access data, even if the
Korrekturausdruck
global
extensive; here: within the entire configuration
Ground conductor
One or several conducting parts that have very good ground
contact.
Ground contact
Electrically conductive connection between a phase and PE.
Grounding
Grounding means connecting an electro-conductive part to the
ground conductor via a grounding system.
GSM
GSM is a European mobile communication standard for cellphones
in the 900 MHz range, defined by the CEPT (Conférence Euro-
péenne des Administrations des Postes et Telecommunications).
Due to their digital data transmission technology, the GSM data ser-
vices permit the remote diagnosis of packaging machines via
cellphone.
Hierarchic address
Physical connection address of the I/O modules of a PLC system.
PD_UserMan_Glossar_us.fm
HMI
HMI (Human Machine Interface) are systems to operate plants, to
monitor processes and to save data in industrial production proces-
ses. Smaller packaging machines use simpler operating units, but
complex machines often use efficient visualization systems on the
Korrekturausdruck
basis of industrial PCs. Such systems depict the operational proce-
dures in a machine as flow diagrams and thus facilitate
transparency for their monitoring. Important operating data are
recorded and shown graphically. If something should not run
smoothly, an alarm will be triggered immediately.
Holding brake
Brake in the motor; may be used only if the motor is standing.
Hot restart
Program start at the same place where a power failure occurred,
while the PLC was in “RUN“. All buffered data ranges of the pro-
gram are retained and the program can continue running as if there
had been no interruption. In contrast to a hot start at the beginning
of a program, the duration of the interruption must lie within a cer-
tain interval, depending on the process. For this purpose, the PLC
system must have a separately secured real-time clock, so that the
program can calculate the duration of the interruption.
HTML
HTML means HyperText Markup Language. It describes the logic
components of a document. As a markup language, HTML contains
commands for marking typical elements of a document, such as
headers, text paragraphs, lists, tables or graphic references.
Id
see Identifier
Identifier (Id)
Identifier of an object
PD_UserMan_Glossar_us.fm
IEC 61131
IEC 61131-3 is an international standard for programming langua-
ges of programmable logic controls (PLCs). Instruction list (IL),
function block diagram (FBD), ladder diagram (LD), structured text
(ST) and SFC (sequential function chart) are different languages of
Korrekturausdruck
this norm.
Instruction list
IL (instruction list) is a widely used programming languages for PLC
systems, similar to Assembler.
Indirect FB call
Call of an FB instance, the name of which was transmitted as
VAR_IN_OUT parameter in a POU.
Incremental encoder
Encoder that reports its position by two signals offset by 90°.
Instance
Structured data set of an FB by declaration of a function block,
giving the type of FB.
Instancing
Instancing means the allocation of variables, including name and
data type, during declaration by the user. By declaring different
variables for the same type of FB, a data copy of the FB is formed n
the control memory for each instance thus created.
Interface
interface
Interfaces (OPC)
COM interface, non-equivocal by an identification code - collection
of connected functions. COM object can have one or several inter-
faces. Must not be changed after publication.
PD_UserMan_Glossar_us.fm
Internet
The Internet is a decentralized network, i.e. it does not depend on a
single computer. The network consists of a number of sub-nets; the
network protocol is TCP/IP.
The Internet consists primarily of the following services:
Korrekturausdruck
e-mail, the most widely used service
Inverter Enable
Inverter Enable is a switching unit in the MC-4 MotorController and
enables the operating mode “safe stop“. In this operating mode, the
unintentional start of a stopped drive due to an error is prevented.
IP 20
Protection means according to DIN 40050: Protected against finger
touch and against the intrusion of solid foreign objects with a dia-
meter of more than 12 mm.
IP 65
Protection means according to DIN 40050: Protected against
touch, dust and the intrusion of spraying water from any directions.
IP 66
Protection means according to DIN 40050: Protected against
touch, dust and against the harmful intrusion of powerful water jets.
IP 67
Protection means according to DIN 40050: Protected against touch
and the intrusion of water with a certain pressure when
submerging. PD_UserMan_Glossar_us.fm
ISDN
ISDN (Integrated Services Digital Network) is a telecommunication
standard that is widely used in Germany and Europe. In ISDN, all
information is transmitted in digital form. This makes it possible to
transmit the signals for language, text, pictures and data through
Korrekturausdruck
the same telephone line. ISDN not only offers the possibility of
using conventional telecommunication services. It also supports
new types of communication, e.g. picture phones. The high trans-
mission speed makes ISDN the ideal transmission medium for
remote diagnosis of packaging machines.
Limit switch
Limitation switch in the travel of a machine.
Logic address
Each object and each parameter in the control configuration has an
unambiguous address by which it can be addressed.
Main shaft
See electronic packaging machine
Mains filter
Facility to educt distortions from the power lines to PE.
Mass
Mass is the total of all connected inactive parts of an operating
means that cannot take on a dangerous contact voltage even in
case of an error.
Master
Master devices determine the data traffic on the bus. If it has bus
access rights, a master is allowed to send messages without exter-
nal request. Masters are also known as active participants.
Master cam
Main or basic cam
Moment of inertia
Mass moment of inertia of a servomotor in the unit kgcm2.
PD_UserMan_Glossar_us.fm
MotorController
An electronic unit containing an amplification and control circuits for
position, speed and current of a servomotor. The output size, the
power connection of the servomotor, are modified in dependence
on the set input value, the set positioning value.
Korrekturausdruck
Multi-element variable
Variable of the type Field or Structure, composed of several data
types.
Network
Unit which is marked by the fact that the content of the actual result
is not retained beyond the network boundaries.
OCX
The term OLE Control Extension marks COMobjects which can
depict themselves via a user interface. Such COM-based control
elements are additions to the known Windows control elements
such as button, checkbox, etc. The term “OCX“ has been replaced
by the more general defintion “ActiveX Control“ and is no longer
used.
offline
without connection
OLE
Object Linking and Embedding is a COM-based mechanism for
integrating different document types within a document. OLE
makes it possible e.g. to embed a spreadsheet in a text and use the
functionality of that spreadsheet program within the text processing
program.
OLE Automation
OLE Automation defines a COM-based mechanism that enables
script languages (macro languages of applications, Java script,
Visual Basic, etc.) the easy use of COM objects.
PD_UserMan_Glossar_us.fm
OPC
OPC is the abbreviation for "OLE for Process Control". The OPC
Foundation has the aim of transforming the different interfaces
used in process control and automation applications into a standar-
dized form in order to enable a smooth collaboration between
Korrekturausdruck
OPC groups
An OPC group is a logic unit for structuring OPC items used by a
client. Groups are created by a client and can contain one or
several OPC items. Group calls can be applied to the OPC items of
a group.
OPC items
The OPC items represent the process variables. OPC items are
identified by an ItemID and have a value, a state information and a
time stamp.
OPC server
An OPC server is a COM object offering the interfaces of the OPC
specification of the OPC-Foundation.
Open Control
The Open Control Foundation wants to develop future-oriented
concpets for the standardization of PC-based automation solutions.
For an automation solution, usually different hardware and software
components have to be integrated in an overall system, e.g. a field
bus connection for decentralized I/Os, a control, a visualization
system and various projecting tools for PLC, field bus and HMI. By
using a common data pool, the Open Control Foundation tries to
achieve a usefulness of the projecting data throughout the system,
to avoid errors and in general enable cost reductions in projecting.
Operand
Language element with which an operation is effected, e.g. %IX1
Operator
Symbol that represents an action with which an operation is execu-
ted, e.g. AND
PD_UserMan_Glossar_us.fm
Opto-coupler
Optical connection between two electrically independent systems.
PacDrive
The PC-based automation system PacDrive is ideally suited for the
Korrekturausdruck
complete automation of packaging machines. The IEC 61131 PLC
and motion tasks (VarioCam) are realized with a central PC-based
intelligence. There are interfaces to all commercially available
HMIs. The I/O level of the PLC is realized by standard field buses.
The highly dynamical servo drives are connected via SERCOS.
The built-in Ethernet interface with TCP/IP enables remote diagno-
sis via modem or Internet down to the motor current.
Peak torque
The maximum torque which the combination of servomotor and
amplifyer can emit to the drive shaft of the servomotor for a short
time.
PLC
Programmable Logic Controller
PLC
Abbreviation for Programmable Logic Control.
Plug-In
Plug-Ins (PI) extend an Internet browser by additional features,
which make it possible to display varous file formats which the
browser does not support by default.
POU
Program organization unit; IEC 61131-3 component of the type
Function, Function block or Program, from which PLC programs
are created hierarchically.
Position resolution
The position resolution says how many increments are available
per 360 degrees motor revolution. In principle, positioning accuracy
and regulating quality are the better, the higher the position
resolution.
In general, resolvers have a position resolution of 4,096 to 65,000
increments per motor revolution. High-resolution SinCos encoders,
as used in the PacDrive™ system, have a resolution of 1,000,000
increments per motor revolution.
PD_UserMan_Glossar_us.fm
PROFIBUS
PROFIBUS is a manufacturer-independent, open field bus stan-
dard for applications in manufacturing, process and building
automation. Manufacturer-independence and openness are gua-
ranteed by the international norm EN 50 170. PROFIBUS enables
Korrekturausdruck
ProgID
The Program ID is a plain-text substitute for a CLSID. ProgIDs have
the format “library.class.version“ and, in contrast to CLSID, are non-
equivocal only by convention. Example of a ProgID:
„OPC.Producer.20“.
Protocol
The rules for data transmission between computer systems and
other devices are called protocol. A protocol defines the packeting
of data, i.e. how many data bytes are transmitted at once, the treat-
ment of data that were transmitted faulty (kind of error protocol), the
channels availble for transmission (full duplex or half duplex
method), giving the beginning and end of a transmission and the
kind of compression of the data packages.
The ISO (International Standards Organization) created the OSI
model (Open Systems Interconnection) as a reference model for all
data transmission between electronic systems. According to the
OSI reference model, a transmission protocol has seven leves.
Position regulator
The position regulator regulates the difference between set position
and actual position to 0. Output: set speed.
Rated speed
Usable speed at rated torque. Idle-running speed and mechanical
PD_UserMan_Glossar_us.fm
Rated torque
The rated torque is the permanent torque in Nm of a servomotor/
amplifyer combination at rated motor speed. Due to the losses,
which are related to the speed, it is less than the standstill torque at
speed 0. With an ambient temperature and depending on the ther-
Korrekturausdruck
mal motor time constant, an overtemperature of 40°C occurs on the
motor casing.
Real-time process
The tasks of the real-time process include e.g. processing the
master and logic encoders, processing the motion tasks including
calculation of set values, processing the measuring inputs, recor-
ding trace values and of course exchanging real-time data via the
real-time bus (SERCOS).
Real-time system
According to a DIN definition, a real-time system is a system that
replies in a defined way to an external event under all circum-
stances, with the reply being generated within a certain time frame
(scan time). If a time frame is exceeded, this is regarded as a
failure of the whole system. If the process is less critical, it may be
admissible to exceed that time frame. In this case, we speak of “soft
real time“. A soft real time system is only acceptable if exceeding
the time frame causes no risk to man or machine. As a rule, pak-
kaging machines are systems that represent “hard“ real-time
requirements for the control used.
Reference potential
Potential from which the voltages of the circuits involved are regar-
ded and/or measured.
PD_UserMan_Glossar_us.fm
Regulation
A set value of a proces size is compared with the actual value and
amplified and regulated in such a way that the difference is zero, if
possible. In contrast to a control, the influence of a distortion is
regulated out in a regulation. In principle, there is control and distur-
Korrekturausdruck
Reset
Procedure that triggers the boot of a computer (e.g. activating the
reset button, switching on the control voltage).
Resource
As a rule, the ressource is equivalent to a CPU.
RS-232
The RS-232-C interface is a standardized serial interface which is
largely identical with the V.24 interface (CCITT). It is designed for
asynchronous data exchange between a computer system and a
peripheral unit.
RS-422
In functional terms, the RS-422 interface is equivalent to the RS-
232 interface, but it uses a differential signal transmission and thus
makes it possible to bridge greater distances even at higher trans-
mision speeds while being little prone to distortion.
RS-485
The RS-485 interface is a standardized serial interface. In functio-
nal and electrical terms, it is largely equivalent to the RS-422
interface and permits the connection of several terminals to a con-
nection cable (bus).
Restart
Summary term for hot restart and hot start at program start.
SCADA
SCADA systems (Supervisory Control and Data Acquisition) con-
tain components for the control, analysis, monitoring, storage and
administartion of the information flow between the systems of the
field level and the management level of a company. This ensures
the connection between the decentralized I/O units and the
machine controls on the one hand and the office computers of the
mangement level on the other.
PD_UserMan_Glossar_us.fm
Scan rate
Time in millseconds which tells in which time the set values of an
axis are calculcated and compared to the actual values and then
the differences are processed in the controller.
Korrekturausdruck
Sequential function chart
SFC (sequential function chart) is a programming language to des-
cribe sequential and parallel control procedures with time and result
control.
Server
A server is a service provider. In connection with COM, the server
is a COM object whose functionality (services) can be used by a cli-
ent via its interfaces.
Servomotor
A servomotor nowadays is a brushless, permanently excited syn-
chronous motor. A servomotor has a position encoder and is
characterized by its extremly low internal inertia and high power
density.
Servo amplifyer
see MotorController
Short-circuit
Is a conducting connection arising due to an error between two
conductors under operating voltage if there is no useful resistance
in the fault current circuit.
Single-element variable
Variable that is based on one single data type.
Slave cam
Overlaying cam. A slave cam can only be started if a master cam is
active.
Speed regulator
The speed regulator regulates the difference between set speed
and actual speed to 0. Output: set power value.
PD_UserMan_Glossar_us.fm
Spline interpolation
Connection of individual points in space with a 3rd-grade
polynomial.
Step
Korrekturausdruck
Standard functions
Number of functions defined firmly by IEC 61131-3 to realize PLC-
typcial functionality.
Structured text
Structured text is a programming language for the description of
algorithms and execution control by means of a modern high
language.
Symbolic variable
Variable with designator to which a hierarchic address is allocated.
Syntax
Structure and structural cooperation of the language elements of a
programming language.
TCP/IP
"TCP/IP" (abbreviation for "transmission control protocol/internet
protocol") usually describes a whole family of protocols to connect
computers in different networks. Nowadays TCP/IP is used in many
LANs and is the basis for the worldwide Internet.
The IP takes over the transport of data, while the TCP takes care of
their delivery.
PD_UserMan_Glossar_us.fm
Telecommunication connection
Telecommuncation in this case means the transmission of data bet-
ween electronic data processing units or systems over a longer
distance e.g. with the help of electric cables, fiber-optic cables or
radio waves.
Korrekturausdruck
Teleservice
Teleservice enables the remote connection of controls of packgaing
machines via telecommunication networks (ISDN, GSM) for ser-
vice, maintenance, commissioning or machine conversions. For the
machine builder, teleservice can guarantee worldwide short service
reaction times and thus a high availability of packaging machines.
Terminal resistor
is a resistor to adjust the performance on the bus cable; terminal
resistors are necessary at the ends of cables and/or segments.
Torque constant
Quotient of standtsill torque and standstill current in the unit Nm/A.
Transition
Transition from one SFC step to the next by evaluating the transi-
tion condition.
Translation of functions
A function can be applied to entries of different data types.
Type definition
Definition of a user-specific data type on the basis of existing data
types.
UL
Underwriter Laboratories Inc. (UL) is an independent testing and
certifying organization in the USA. Products bearing the UL sign
comply with the safety standards of the UL.
Ungrounded structure
Structure without galvanic connection to the ground. In most cases
an RC module is used to carry off parasitic currents.
PD_UserMan_Glossar_us.fm
Variable
Name of a data storage, which can take on values determined by
the data type and entries in the variable declartion.
VarioCam®
Korrekturausdruck
VxWorks
ELAU AG’s MAx-4 PacController is based on the real-time opera-
ting system VxWorks® by Wind River Systems. VxWorks® is the
market leader in the field of real-time bus systems and meets high-
est requirements with regard to real-time behavior, robustness,
runtime and memory efficiency.
Windows
A strong trend towards Microsoft operating systems can be obser-
ved in automation technology. This development confirms the
direction towards open, scalable automation solutions on the basis
of the fast-developing PC hardware. Software becomes a decisive
factor for automation solutions. The driving force in this develop-
ment is the 32-bit world of the Windows operating systems, on
which many producers of industrial software are now betting. The
products usually include standard interfaces for graphic imports,
data exchange (DDE, ODBC) and for the integration of applications
(OPC). By means of interfaces, the communciation between diffe-
rent software products can be effected easily.
However, these standard operating systems from the office domain
cannot fulfill the strict real-time requirements for a driving system.
Windows CE, Windows NT and Windows NT Embedded in their
original version can only be used for automation projects with “soft“
real-time requirements. Therefore ELAU AG’s MAx-4 PacController
is based on the real-time operating system VxWorks®, which gua-
rantees absolutely deterministic behavior.Thanks to the integrated
OPC interface, the MAx-4 PacController can easily be integrated in
Windows environment.
WWW
The "WWW" (abbreviation for "world wide web") is a multi-media
hypertext information system in the Internet.
PD_UserMan_Glossar_us.fm
Zero pulse
The zero pulse is issued by incremental encoders once per revolu-
tion. It helps to zeroize the machine.
Korrekturausdruck
PD_UserMan_Glossar_us.fm
Korrekturausdruck
PD_UserMan_Glossar_us.fm
15 Appendix
15.1 Contact
Korrekturausdruck
For repair
Please send the components to be repaired or checked, along with
the error report, to this address:
ELAU AG
Abt. Kundendienst house address:
Postfach 1255 Dillberg 12
97821 Marktheidenfeld 97828 Marktheidenfeld
Phone: +49 (0) 93 91 / 606-142
Fax: +49 (0) 93 91 / 606-340
Service team
Should you need to talk to a member of our service team or require
on-site service, please contact:
ELAU AG
Dillberg 12
D-97828 Marktheidenfeld
Phone: +49 (0) 9391 / 606 - 0
Fax: +49 (0) 9391 / 606 - 300
e-mail: [email protected]
Internet: www.elau.de
ELAU, Inc.
4201 West Wrightwood Avenue
Chicago, Illinois 60639 - USA
Phone: +1 773 342 8400
Fax: +1 773 342 8404
e-mail: [email protected]
Internet: www.elau.com
ELAU SYSTEMS ITALIA S.r.l.
Via Tosarelli 300
I-40050 Villanova di Castenaso (BO)
Phone: +39 051 / 7818 70
Fax: +39 051 / 7818 69
e-mail: [email protected]
Internet: www.elau.it
NOTE
Further contact addresses you can find on the ELAU homepage
PDM_AnhangStd_us.FM
(www.elau.de).
Korrekturausdruck
Art.No. 17 13 00 58 - 00x (DE, EN, FR)
Programming Manual
Art.No. 17 13 00 61 - 00x (DE, EN)
Operating Manual MC-4 MotorController
Art.No. 17 13 00 62 - 00x (DE, EN, IT, FR)
Operating Manual CAN L2
Art.No. 17 13 00 66 - 00x (DE, EN)
Operating Manual PROFIBUS-DP
Art.No. 17 13 00 67 - 00x (DE, EN)
Operating Manual SM Motor
Art.No. 17 13 00 68 - 00x (DE, EN, IT, FR)
Operating Manual EPAS-4
Art.No. 17 13 00 70 - 00x (DE, EN)
Operating Manual MAx-4 PacController
Art.No. 17 13 00 71 - 00x (DE, EN, IT, FR)
Operating Manual OPC-Server
Art.No. 17 13 00 73 - 00x (DE, EN)
Operating Manual Device Net
Art.No. 17 13 00 76 - 00x (DE, EN)
1. Art.No. -000 (DE) german -001 (EN) english -002 (IT) italian -003 (FR) french
page 286 PacDrive ELAU AG
15.2 Further Literature
Korrekturausdruck
NOTE
Please contact us for further information or to order our seminar
program. See also our homepage (www.elau.de).
PDM_AnhangStd_us.FM
15.4 Modifications
07 / 1999
Terms e. g. MAx-4, MC-4 and PacDrive™ M modified
Korrekturausdruck
12 / 1999
Separation of the programming manual in reference and user
part
Revised to 00.06.00
01 / 2001
Chapter „The Basics of IEC-61131“ new
Revision of Chapter „Programming Guidelines“
Revision of Chapter „Teleservice“
FAQs new
Glossary widens
10 / 2003
Chapter "Networks" new
Chapter "Teleservice" modem recommendation extended
Chapter "Teleservice" "Settings on Remote PC" extended for
Windows 2000
Chapter "Programming Guidelines" extended
Chapters "Characteristics", "Time diagrams" and "Version desi-
gnations" taken over from Reference Manual
Chapter "ENI-4" new
NOTE
The latest documentation and modification service on this product
are available on the ELAU Homepage (http://www.elau.de).
PD_UserManAen_us.FM
Korrekturausdruck
PD_UserManAen_us.FM
15.5 Index
A contents 3
Absolute position encoder 259 Continuous Function Chart
acceleration time 259 (CFC) 263
Korrekturausdruck
Korrekturausdruck
function 43 ELAU AG 2
function block 43 inverter enable 270
Function block diagram (FBD) IP 215
267 IP 20 270
function blocks IP 65 270
in LD 69 IP 66 270
Function call hierarchy 267 IP 67 270
funktion block language (FBL) IP- Adressierung 217
66 IP- Adressklassen 218
funktion blocks IP- Adresszuweisung 219
in ST 55 IPSec 215
ISDN 271
G
Gateway 224 J
Glasfaserkabel 211 jump 64
global 267
Ground conductor 267 K
ground contact 267 Koaxialkabel 210
Grounding 267 Kontaktplan (KOP) 271
GSM 267
L
H lader diagram (LD) 67
hierarchic address 267 languages
HMI 268 function block diagram
holding brake 268 (FBD) 66
homepage ladder diagram (LD) 67
ELAU AG 2 Sequential Function Chart
hot restart 268 (SFC) 59
hot start at program start 268 structured text 52
HTML 268 LD as FBD 69
HTTP 215 limit switch 271
HUB 221 literature 286
load from file ... 147
I load log file ... 147
Id 268 logic address 271
identifier (Id) 268
IEC 61131 269 M
IEC step 62 MAC- Adresse 211
IF instruction 56 MAC-Adresse 211
IL 49 main shaft 271
incremental encoder 269 mains filter 271
indirect FB call 269 manuals 286
PDM_UserMan_usSIX.fm
P S
PacDrive 274 safety notes 12
parallel branch 64 save and load a log file 147
Pathping 228 save as file ... 147
peak torque 274 save log file 147
Peer to Peer 203 SCADA 277
Ping 225 Scan rate 278
PLC 274 seminare 288
plug-in 274 Sequential function chart 278
PDM_UserMan_usSIX.fm
server 278 U
service Übertragungsmedien 210
-personnel 285 UDP 215
servo amplifyer 278 UL 280
servomotor 278 Ungrounded structure 280
Korrekturausdruck
set 69
set value generation 278 V
Short-circuit 278 validity 40
single-element variable 278 variable 281
slave cam 278 VarioCam 281
SMTP 215 version numbers 245
Socket 217 VxWorks 281
speed regulator 278
spline interpolation 279 W
standard function block 279 WHILE instruction 58
standard functions 279 Windows 281
step 279 WWW 281
step in SFC 60
Stern 206 Z
structured text 279 zero pulse 282
structured text (ST) 52 Zugriffsverfahren 212
Subnet Mask 217
Switch 222
symbolic variable 279
syntax 279
system data 231
system overview 19
T
tasks 29
TCP 215
TCP/IP 214, 279
telecommunication connec-
tion 280
teleservice 280
Telnet 215
Terminal resistor 280
thermo protective contact 280
time diagrams 233
Token Passing 213
Topologien 204
torque constant 280
trademarks 2
training 288
transition 61, 280
transition conditions 61
translation of functions 280
PDM_UserMan_usSIX.fm
Twisted-Pair-Kabel 210
type definition 280
Sender:
Company: City: Date:
Department: Name: Phone:
Korrekturausdruck
Additional information: