You are on page 1of 25

ECOPLC OVERVIEW

Nestor Benitez, Software Engineering, APT Mexico

Puebla, Mexico 2018

www.durr.com
AGENDA

1. Introduction
2. Main jobs of station-plc
3. Interfaces
4. Programming concept
5. Programming syntax
6. Standardized interface

© Dürr, APT PLC Overview, 21.08.2018 2


OVERVIEW
Introduction

EcoPLC is one configurable station-plc for many types of robot-stations with EcoRPC:

Application-type:
Paint-stations and sealing-stations

Conveyor-type:
Tracking and Stop&Go

Process-types:
Preparing processes (e.g. PD) and not preparing processes (e.g. 1K)

© Dürr, APT PLC Overview, 21.08.2018 3


OVERVIEW
Introduction

Many parameters can be configured in parameter-DBs:

© Dürr, APT PLC Overview, 21.08.2018 4


AGENDA

1. Introduction
2. Main jobs of station-plc
3. Interfaces
4. Programming concept
5. Programming syntax
6. Standardized interface

© Dürr, APT PLC Overview, 21.08.2018 5


OVERVIEW
Main jobs of station-plc

Create station-modes (e.g. auto, manual)


Create station-releases (e.g. drives on, process on)
Object-marshalling in real- and ghost-mode
Data-reselection in case of data-error
Control of vision-system (e.g. ISRA, VMT)
Control of robots (modes, releases, data-transfer)
Gain statistical information
Prioritization of handler-requests (“Handler-Master-Request”)
Collision-interlock between robots

© Dürr, APT PLC Overview, 21.08.2018 6


AGENDA

1. Introduction
2. Main jobs of station-plc
3. Interfaces
4. Programming concept
5. Programming syntax
6. Standardized interface

© Dürr, APT PLC Overview, 21.08.2018 7


OVERVIEW
Interfaces
VisionSystem (ISRA) Conveyor-System
(optional)

Fieldbus HMI
Fieldbus
TCP/IP
3DOnSite
Internal

SafetyPLC StationPLC InTouch

StatisticServer

Fieldbus
Fieldbus

Paint-Supply EcoRPC
EcoRPC
EcoRPC
(optional) EcoRPC

© Dürr, APT PLC Overview, 21.08.2018 8


AGENDA

1. Introduction
2. Main jobs of station-plc
3. Interfaces
4. Programming concept
5. Programming syntax
6. Standardized interface

© Dürr, APT PLC Overview, 21.08.2018 9


OVERVIEW
Programming concept

Modern programming-concept based on IEC 1131

Programming languages:
Ladder Logic (LAD/KOP) for simple blocks (interlock-logic)

Structured Control Language (SCL) for more complex blocks (search-loops...)

© Dürr, APT PLC Overview, 21.08.2018 10


OVERVIEW
Programming concept

Modern programming-concept based on IEC 1131

Symbolic-programming, minimal usage of any-pointers:


More robust than absolute-programming, many bugs can be found by compilation
Independent from machine-hardware  easy software-conversion to other PLC-
systems
Easy error-lookup with cross-references
Easy scalability (e.g. change type-code from 4 to 6 ASCII-char without pointer-
operation)

© Dürr, APT PLC Overview, 21.08.2018 11


OVERVIEW
Programming concept

Modern programming-concept based on IEC 1131

Symbolic-programming, minimal usage of any-pointers:

© Dürr, APT PLC Overview, 21.08.2018 12


OVERVIEW
Programming concept

Object-oriented programming by means of “multiple instances”

Example from Step7-manual:

© Dürr Gesellschaft, APT/TA52, PLC Overview, 27.02.2013 13


OVERVIEW
Programming concept

Example: Heartbeat-monitoring in “FB_Rpc”: EcoPLC EcoRPC

Timeout
The heartbeat-signal is a interface-bit to each-robot. Monitoring
EcoRPC returns bit
EcoPLC inverts received bit from EcoRPC

This creates a toggling. When the toggling stops this is a indicator for a disturbed
fieldbus-connection or a crash of the robot-control (timeout-monitoring)

Heartbeat monitoring has to be done individually for each robot-control.

© Dürr, APT PLC Overview, 21.08.2018 14


OVERVIEW
Programming concept

Example: Heartbeat-monitoring WITHOUT multiple instances:

FB_Rpc : IDB_R11 FB_Rpc : IDB_R21


GLOB_TIMER_ GLOB_TIMER_
R11 R21
io_TIMER io_TIMER

FC_CheckHeartbeat FC_CheckHeartbeat
i_sRpc2Plc. o_sErrors.m i_sRpc2Plc. o_sErrors.m
mHeartbeat Heartbeat mHeartbeat Heartbeat
i_mHeartBeat o_mErrTimeout i_mHeartBeat o_mErrTimeout
T#500ms T#500ms
i_tTimeout i_tTimeout
io_TIMER io_TIMER
io_TIMER io_TIMER

Global timer is necessary  here IO-parameter

© Dürr, APT PLC Overview, 21.08.2018 15


OVERVIEW
Programming concept

Example: Heartbeat-monitoring WITH multiple instances:

FB_Rpc : IDB_R11 FB_Rpc : IDB_R21

VAR VAR
fbCheckHeartbeat : FB_CheckHeartbeat; fbCheckHeartbeat : FB_CheckHeartbeat;
END_VAR; END_VAR;

fbCheckHeartbeat fbCheckHeartbeat
i_sRpc2Plc. o_sErrors.m i_sRpc2Plc. o_sErrors.m
mHeartbeat Heartbeat mHeartbeat Heartbeat
i_mHeartBeat o_mErrTimeout i_mHeartBeat o_mErrTimeout
T#500ms T#500ms
i_tTimeout i_tTimeout

VAR VAR
fbDelaytimer : TON; fbDelaytimer : TON;
END_VAR; END_VAR;

FB is declared as static-variable in “FB_Rpc”  all static information is stored in instance-


DB of “FB_Rpc” (“IDB_R11”, “IDB_R21”). No other global ressources necessary.

© Dürr, APT PLC Overview, 21.08.2018 16


OVERVIEW
Programming concept

Advantages of using “multiple instances”:

Low usage of global resources (timer, counter)


easy scalable software
no “double-usage” of global resources by copy-and-paste errors
Reduced complexity by creating “standard-blocks” (e.g. “FB_Rpc” as a standard-device-
driver for a EcoRPC-robot)

© Dürr, APT PLC Overview, 21.08.2018 17


OVERVIEW
Programming syntax

Programming syntax is related to EcoRPC -programming syntax

Program organization units (POU):


Description Convention
Examples:
Organization-Block OB_Xxxxx OB_Cyclic (OB1)
Function FC_Xxxxx FC_ErrorClasses (Generate error-classes)
FB_RpcInit (Data-transfer to robot)
Function Block FB_Xxxxx FCIN_Safety (Input-interface for all safety-signals)
Input-Interface FC FCIN_ Xxxxx
Input-Interface FB FBIN_ Xxxxx
Output-Interface FC FCOUT_ Xxxxx
Output-Interface FB FBOUT_ Xxxxx

Instances:
Description Convention
Examples:
Instances of FBs fbXxxxx fbSimR11 : FB_SimRPC (simulation for robot R11)

© Dürr, APT PLC Overview, 21.08.2018 18


OVERVIEW
Programming syntax

Programming syntax is related to EcoRPC -programming syntax

Type definitions (UDT):

Description Convention Example:


tsRpc2Plc (interface RPC -> PLC)
Structure tsXxxxx
Array tyXxxxx

© Dürr, APT PLC Overview, 21.08.2018 19


OVERVIEW
Programming syntax

Programming syntax is related to EcoRPC -programming syntax

Variable- and constant-names:

Description Convention Description Convention


Constant cXxxxx Inputparameter, VAR_INPUT i_(m,b,s,y,…)Xxxxx
Struct-variable sXxxxx Outputparameter, VAR_OUTPUT o_(m,b,s,y,…)Xxxxx
Array-variable yXxxxx IO-Parameter, VAR_IN_OUT io_(m,b,s,y,…)Xxxxx
Boolean variable mXxxxx Temporary variable tmp_(m,b,s,y,…)Xxxxx
Integer iXxxxx
Byte bXxxxx Examples:
cArraySize := 10; (constant for array-declaration)
Word wXxxxx iConvPos : INT; (conveyor-position of object)
Double word/double integer dXxxxx dBodyID : DINT; (unique object-id / token)
tTimeout : TIME; (timeout-time)
Real rXxxxx i_yExtTypeCode : ARRAY[1..4] OF CHAR;
tmp_sBodydata : tsBodydata;
Time tXxxxx
String zXxxxx

© Dürr, APT PLC Overview, 21.08.2018 20


AGENDA

1. Introduction
2. Main jobs of station-plc
3. Interfaces
4. Programming concept
5. Programming syntax
6. Standardized interface

© Dürr, APT PLC Overview, 21.08.2018 21


OVERVIEW
Programming syntax

Programming syntax is related to EcoRPC-programming syntax

Data Blocks (DB):

Description Convention Examples:


DB_Station (Station-modes and -releases)
Global (shared) datablock DB_Xxxxx IO_Safety (Interface-signals to safety-plc)
Interface DB IO_Xxxxx IO_HmiAlarms (Error-DB to HMI, alarm-interface)
IDB_CreateNewBodydata (Instance-DB to FB_CreateNewBodydata)
Interface-DB to HMI IO_HmiXxxxx
Instance-DB to FB IDB_Xxxxx

Variable-tables:
Description Convention Example:
VAT_Desk (signals of operator-panel for debugging)
Variable table VAT_Xxxxx

© Dürr, APT PLC Overview, 21.08.2018 22


AGENDA

1. Introduction
2. Main jobs of station-plc
3. Interfaces
4. Programming concept
5. Programming syntax
6. Standardized interface

© Dürr, APT PLC Overview, 21.08.2018 23


OVERVIEW
Standardized interface

Communication via standardized interface-DBs:

IO_Desk
Fieldbus

IO_ControlStation
FB_StationPLC
IO_Rpc

IO_Vision IO_Safety

SafetyPLC (here: internal)

© Dürr, APT PLC Overview, 21.08.2018 24


OVERVIEW
Standardized interface

Communication via standardized interface-DBs

Advantages:
Program-code independent from IO-Symbolic  code is more easy to read and more
independent from customer
Clearly defined interfaces
Structures can be defined in interface-DBs, this is normally not possible directly with IO-
signals
More flexibility when signal-definition / communication way is changed. A signal has only
to be modified one time and not at “n” positions in code
Internal interface for offline-simulation

© Dürr, APT PLC Overview, 21.08.2018 25

You might also like