new automation technology - sesam worldsesam-world.com/_pdf/sesam-113/09-beckhoff.pdf · what does...
TRANSCRIPT
TwinCAT 3 | eXtended Automation Technology 26.05.2015 2
Content
Motivation
eXtended Automation (XA)
Architecture (XAA)
Engineering (XAE)
System Manager
PLC
Motion Control
C/C++ programming
Matlab® integration
C#/.NET programming
Runtime (XAR)
Connectivity
TwinCAT 3 | eXtended Automation Technology 26.05.2015 3
Beckhoff PC-based Control:
Setting New Standards in Automation
Motivation
PC-Hardware
Feldbus
TwinCAT-
Software
I/O TwinSAFE PLC Control Control(PID)
Connectivity
NC PTP CNC Robotics MeasurementTechnology
NC I
Base
Motion
TwinCAT 3 | eXtended Automation Technology 26.05.2015 4
1986
S1000
PLC/NC on
PC
PC-based Control Milestones
PC Control
PC-compatible
machine
control
1988 1989 1995 1996 2003 2008 2010
Lightbus Bus
Terminal
Universal field-
bus module
TwinCAT
IEC 61131
PLC real-time
under
Windows NT
EtherCAT
Real-time
Ethernet
fieldbus
XFC
eXtreme Fast
Control
Technology
1993
S2000
PLC/NC/CNC
on PC
TwinCAT 3
TwinCAT 3 | eXtended Automation Technology 26.05.2015 5
Content
Motivation
eXtended Automation (XA)
Architecture (XAA)
Engineering (XAE)
System Manager
PLC
Motion Control
C/C++ programming
Matlab® integration
C#/.NET programming
Runtime (XAR)
Connectivity
TwinCAT 3 | eXtended Automation Technology 26.05.2015 6
Architecture (XAA)
eXtended Automation Technology (XAT)
More than standard automation
eXtended Automation Engineering (XAE)
Visual Studio® for programming in IEC 61131-3, C/C++
Visual Studio® for configuring the complete system
(integrated TwinCAT System Manager)
eXtended Automation Runtime (XAR)
Executes modules in real-time
Supports multi-core CPUs
Supports 64-bit operating systems
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 7
eXtended
Automation Engineering (XAE)
TwinCAT 3 Engineering Environment based on Visual Studio®
TwinCAT Transport Layer - ADS
TwinCAT 3 Runtime
Real-time Kernel
TcC
OM
PLCPLC PLCSafety
TcC
OM
PLCNC
TcC
OM PLCC
Module
TcC
OM
PLCCNC
TcC
OM PLCC++
Module
TcC
OM
TcC
OM PLCPLC
TwinCAT Automation Device Driver - ADD
PC System
Fieldbus
System Manager
- Configuration
Programming
- IEC 61131-3
- objectoriented extensions
- C/C++
PLC
TcC
OM Simulink®
Module
Windows 32/64 bit
Architecture (XAA)
eXtended
Automation Runtime (XAR)
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 9
Engineering (XAE)
TwinCAT 3 Standard
for PLC programmers and users of
existing modules
configuring, setting up and diagnosis
debugging PLC
eXtended Automation
TwinCAT 3 Engineering Environment
System Manager
Configuration
– I/O
– PLC
– MC
– NC
– CNC
– Safety
– others
Programming
IEC 61131 Object-
oriented
extensions
IEC Compiler
TwinCAT 3 Runtime
TwinCAT Transport Layer – ADS
TwinCAT 3 | eXtended Automation Technology 26.05.2015 10
TwinCAT 3 Engineering Environment based on Visual Studio®
System Manager
Configuration
– I/O
– PLC
– C/C++
– MC
– NC
– CNC
– Safety
– others
Programming
IEC 61131 Object-orientedextensions
IEC Compiler
TwinCAT 3 Runtime
TwinCAT Transport Layer – ADS
Non
real-time
C#.NET
Real-time
C/C++
Matlab®/
Simulink
Real-time
Workshop
Microsoft C Compiler
Third-party
programming
tool
C/C++
Engineering (XAE)
TwinCAT 3 Integrated
for PLC and C/C++ programmers
configuring, setting up and diagnosis
module generation (C/C++ or
Matlab®/Simulink®)
debugging PLC, C/C++,
Matlab®/Simulink®
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 11
Engineering (XAE)
Simultaneous programming according to IEC 61131 and C++
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 12
TwinCAT I/O – Integrated System Manager
programming, configuration and
diagnosis in one tool
continuous engineering
uniform task management
parameterisation of TwinCAT modules
creation and administration of
mappings between the process images
simulation of I/Os and axis
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 13
TwinCAT I/O – Integrated System Manager
eXtended Automation
System configuration
Motion control configuration
PLC configuration
Safety PLC configuration
C++ module configuration
I/O configuration
TwinCAT 3 | eXtended Automation Technology 26.05.2015 14
TwinCAT I/O – Integrated System Manager
eXtended Automation
Mapping of process images
open for all common fieldbuses
support of all PC hardware interfaces
easy commissioning and diagnosis
assignment of logical and physical process
images
Changes of the bus system do not require a
change of the PLC code.
Fieldbus 1 Fieldbus 2 Fieldbus 3
TwinCAT process images
Physical
process
images
Virtual
process
images
Inputs Outputs
Inputs Outputs Inputs InputsOutputs Outputs
TwinCAT 3 | eXtended Automation Technology 26.05.2015 15
TwinCAT 3 PLC
Multiple PLC projects:
number of possible tasks: 65,000
number of PLC projects: only limited by memory
Programming:
languages of the IEC 61131-3 (IL, ST, FBD, LD, SFC) + CFC
usage of the object-oriented extensions of the 3rd edition of the
IEC 61131
call and data exchange of modules written in C/C++ and Matlab®/Simulink®
multiple import and export interfaces
no direct addressing necessary
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 16
TwinCAT 3 PLC
Shared tree structure for hard- and software
eXtended Automation
Shared output window of all languages
Programming language-dependent toolbox
TwinCAT 3 | eXtended Automation Technology 26.05.2015 17
TwinCAT 3 PLC
Object-orientation by the IEC 61131-3 3rd edition
Benefits of the object-oriented extensions
increased readability of the code by encapsulation algorithms into methods
increased maintainability
modularisation, structuring of the code
increased reusability
abstract programming by using interfaces
increased extensibility and adaptability
construction of inheritance hierarchies
increased extensibility and adaptability
Consistent usage of the object-oriented extensions enables:
increased software quality
decreased time for programming and maintenance
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 18
eXtended Automation
What does it look like in TwinCAT 3?
declaration of a function block
call of a method
Usage of the object-oriented extensions:
is possible in all IEC languages
is independent from the used hardware
is not mandatory!
TwinCAT 3 | eXtended Automation Technology 26.05.2015 19
NC PTP CNC RoboticsNC I
Point-to-Point-movement
– gearing
– camming
– superposition
– flying saw
Interpolated motion with 3 axes and 5 additional axes
– programming
according to DIN 66025
– technological features
– straightforward
utilisation through
function blocks from
the PLC
Complete CNC functionality
– interpolated
movement for
up to 32 axes
per channel
– various
transformations
Interpolated motion for robotic control
– support for a wide
rande of kinematic
systems
– optional torque
pre-control
TwinCAT 3 Motion Control – From PTP to Robot Control
eXtended Automation
Functionality
TwinCAT 3 | eXtended Automation Technology 26.05.2015 20
TwinCAT 3 Motion Control – Abstraction Layer
eXtended AutomationS
oft
SP
S
La
ye
r
+
++
-
So
ft M
oti
on
La
ye
r
Fie
ldb
us
La
ye
r
Dri
ve
s
La
ye
r
Velo Preset
Pos Ctrl
Pos Meas.
PLC
SP
Limit
Scale & Limit
TwinCAT 3 | eXtended Automation Technology 26.05.2015 21
C/C++ Programming Languages
eXtended Automation
Method CycleUpdate: – is called cyclically Pointer to logical input/output image
TwinCAT 3 | eXtended Automation Technology 26.05.2015 22
C/C++ Programming Languages
eXtended Automation
VS2010 standard debugger:
monitoring/modification of variables only with Breakpoint
TwinCAT 3 | eXtended Automation Technology 26.05.2015 23
C/C++ Programming Languages
VS2010 Beckhoff debugger:
monitoring/modification of
variables without Breakpoint
(analog to PLC without
Breakpoint)
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 24
C/C++ Programming Languages
Matlab®/Simulink® Integration
well-known in the scientific and measurement environment
great variety of toolboxes (e.g. Fuzzy)
creation, simulation and optimisation of control circuits
debug interface between Simulink® and TwinCAT
Code generation
design in Simulink®
automatic generation of C code by the Simulink® Real-time
Workshop
compilation with Visual Studio® C Compiler
parameterisation in the TwinCAT System Manager
download and execution in the TwinCAT 3 Runtime
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 25
Matlab®/Simulink® Integration
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 26
C#/.NET programming
eXtended Automation
PLC module
C++ module
Real-time Code
HMI/
Windows processes
TwinCAT 3 | eXtended Automation Technology 26.05.2015 28
Runtime (XAR)
Modular runtime
dynamic environment for the execution
and administration of TwinCAT 3
modules
administration of runtime modules (with
TwinCAT Object Manager)
defined interfaces (e.g. TwinCAT
Component Object Model –TcCOM)
and v model
eXtended Automation
Fieldbus
TwinCAT Transport Layer - ADS
TwinCAT Object Manager
Tw
inC
AT
Real-tim
e
Kern
el
TcC
OM
PLC
TcC
OM
PLCC++
Module
TcC
OM
PLCCNC
TcC
OM
PLCSafety
TcC
OM
PLCSimulink®
Module
TcC
OM
PLCPLC
TcC
OM
PLCNC
TcC
OM
C++
Module
TwinCAT Automation Device Driver - ADD
TcC
OM
PLCC
Module
TcC
OM
PLCSimulink®
Module
TC Configuration Debugging
Task
Task
Task
Task
Task
Task
Task
Call
Call
Call
TwinCAT 3 Runtime
TwinCAT 3 | eXtended Automation Technology 26.05.2015 30
Runtime (XAR)
Modular runtime interface
separation of encapsulated functionality into modules
extension of the base system by own drivers (Automation Device
Drivers – ADD) e.g. fieldbus drivers
scalability: modules can contain simple functions, complex
algorithms and real-time tasks or complete projects
reusability of modules
cooperation of modules written in
IEC 61131-3
C/C++
Matlab®-generated modules
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 31
TwinCAT 3 – Multicore support
eXtended Automation
TwinCAT 3 | eXtended Automation Technology 26.05.2015 32
Runtime (XAR)
Support of multi-core systems
distribution of projects to cores (e.g.
PLC, NC, Motion Control and HMI run
on different cores)
scalable base time for each core
scalable CPU usage for each core
eXtended Automation
Core 0
ADS
Multi-core CPU
Windows
Apps
PLC Control
Windows
Drivers
ADS
User HMI
Core 1
ADS
Core 2
PLC Runtime 0
Task 0 Task 1
ADS
PLC Runtime 1
Core 3
ADS
NC Runtime 1
Core ...
ADS Router Engine
System Memory
ADS Router Message Queues
L2 Shared Cache
TwinCAT 3 | eXtended Automation Technology 26.05.2015 33
Runtime (XAR)
eXtended Automation
Enables cores for real-time usage
Defines the base time for a core
Defines the CPU-usage limit
Assignment of a task to a CPU
TwinCAT 3 | eXtended Automation Technology 26.05.2015 34
C6670-0000 | Control cabinet industrial server
2 removable frames for hard disks
Graphic board, 1 DVI-I- and 1 DVI-D-
connector
Many core machine control
Complex applications with up to 36
cores
Extensive video analysis
6 PCIe slots for additional camera
interface cards
available
TwinCAT 3 | eXtended Automation Technology 26.05.2015 35
C6670-0000 | Control cabinet industrial server
TwinCAT 3 | eXtended Automation Technology 26.05.2015 37
TwinCATTwinCATTwinCAT
PLC 2
TwinCAT
Automation
Device
Specification
(ADS)
Automation
Protocols
OPC UA,
Modbus
TCP,
Modbus RTU
3964R/RK512
Industry
Protocols
IEC 61850,
IEC 61400-25,
IEC 60870-5-
10x,
BACnet, FIAS,
Creston
IT
Protocols
WLAN,
Bluetooth,
TCP, UDP,
RAS,
FTP, VPN,
SNMP,
SNTP,
SMS, SMTP
Web
Server Ils
XML, AJAX,
ASP,
DPWS/WSD
TwinCAT
Automation
Device
Specification
(ADS)
Different Solutions, all Based on ADS
PLC 1
Connectivity
TwinCAT ADS RouterAcyclic
TCP, UDP, Serial,
Fieldbus
TwinCAT ADS
Router
CyclicEtherCAT Automation Protocol (EAP), Network variables
TwinCAT 3 | eXtended Automation Technology 26.05.2015 38
only one software for programming and configuration
Visual Studio® integration
more freedom in the choice of programming language
support for the object-oriented extension of IEC 61131-3
use of C/C++ as the programming language
link to Matlab®/Simulink®
open interfaces for expandability and adaptation to existing tool landscape
faster and more flexible runtime environment
active support of multi-core and 64-bit systems
TwinCAT 3 Highlights
Supplements