Beckhoff TwinCAT 3 e - ITS MAKER
Transcript of Beckhoff TwinCAT 3 e - ITS MAKER
TwinCAT 3
Contenuti
1. Introduzione
2. eXtended Automation (XA)
3. Connettività
4. Migrazione
5. Funzionalità
6. Panoramica di prodotto
Sistema di controllo PC-based
The Windows Control and Automation Technology è un sistema di controllo per automazione industriale PC-based, che trasforma ogni PC in un sistema realtime, integrando al suo interno l’ambiente di sviluppo.
Motivazioni
Hardware PC
Bus di
campo
Software
TwinCAT
I/O TwinSAFE PLC Control Control(PID)
Connettività
NC PTP CNC Robotics Tecnologie di Misura
NC I
Base
Motion
La tecnologia di controllo PC-based di Beckhoff pone nuovi standard per l‘automazioneindustriale.
Il controllo su PC offre un sistema di controllo “aperto“
il principio di funzionamento è l’astrazione
funzionalità implementate nel software, independenti dall‘hardware
Integrazione di PLC, Motion ed HMI in un software su una CPU:
hardware minimizzato e scalabile
niente interfacce hardware tempi ciclo inferiori
riduzione della complessità dell‘interfaccia
diagnostica migliorata
Prestazioni e costi scalabili con l’utilizzo di CPU standard
Sistemi operativi ad alte prestazioni aggiungono funzioni e strumenti dell’Information Technology alle soluzioni di automazione industriale.
Automazione e IT condividono gli stessi vantaggi della tecnologia dei PC:
incremento delle prestazioni
riduzione dei costi
Motivazioni
Tecnologia di Controllo PC-based | Milestones
S1000
PLC/NC su PC
PC-Control
controllo
macchina PC
compatibile
Lightbus Bus Terminal
Modulo bus di
campo
universale
TwinCAT
PLC IEC 61131
real-time su
Windows NT
EtherCAT
Bus di
campo
Ethernet
Real-time
XFC
Tecnologia
eXtreme Fast
Control
S2000
PLC/NC/CNC
su PC
TwinCAT 3
1986 1988 1989 1995 1996 2003 2008 20111993
TwinCAT Real-Time System
Estensione Real-Time di TwinCAT
I sistemi operativi Windows NT (NT 3.1, NT 4.0, 2000, XP, Vista, 7) non hanno
caratteristiche realtime, non sono stati progettati per gestire task di controllo. La presenza
dello scheduler implica che i vari task siano interrotti durante la loro esecuzione da una
serie di altri eventi oppure siano ritardati a causa di interruzioni dovute ad altri task con
priorità maggiore.
TwinCAT permette di estendere il sistema operativo con un “realtime extension for Windows
NT”, integrata all’interno dell’architettura Microsoft e permette di ottenere l’esecuzione di
task:
con priority control;
di tipo preemptive (lo scheduler ferma i task allo scadere del tempo assegnato e
trasferisce il controllo dall'uno all'altro);
in maniera deterministica con un jitter massimo inferiore a 12 µs.
Con questa estensione, TwinCAT ha una base dei tempi esatta ed esegue i task con la
massima priorità rispetto agli altri di “sistema operativo”.
Scansione PLC Standard
PLC cycle PLC cycle
Inp
uts
PL
C
Ou
tpu
ts
PL
C
t
Inp
uts
Ou
tpu
ts
TwinCAT Real-Time System
Un programma per PLC viene eseguito ciclicamente con un tempo ciclo non costante.
Ad ogni ciclo, il PLC legge gli ingressi, elabora il programma definito dall’utente e scrive le uscite.
TEMPO BASE
Inp
uts
Ou
tpu
ts
Win
do
ws N
T
e H
MI
Ou
tpu
ts
t
PL
C
Inp
uts
Inp
uts
PL
C
PL
C
Win
do
ws
NT
an
d H
MI
Scansione TwinCAT PLC
TwinCAT Real-Time System
In un soft-PLC i programmi sono eseguiti nella stessa forma di un PLC “convenzionale”.
L’interfaccia utente (HMI) è eseguita durante gli intervalli temporali riservati dal sistema alle
normali operazioni del sistema operativo.
TwinCAT assicura sia l’esecuzione delle operazioni del S.O. che dei programmi PLC
attraverso una speciale implementazione e gestione dei task integrata nel S.O. stesso.
TC TC TC
5ms
I PLC PLC O
TC TC
I PLC O
1 2 3
W W W W W WWWW
WWWWW W WW W
4 5 1 2 3 4
5ms
TwinCAT Real-Time System
12 µs
20%80%
1 ms
TwinCAT RT System Windows OS
Jitter di
commutazione
0 1 2 3 4 5
Task Multiple:
Esecuzione task1 (tempo ciclo 1 ms, priorità alta)
Esecuzione task2 (tempo ciclo 2 ms, priorità bassa)
Esecuzione di Windows
50 %
tempo in ms
TwinCAT Real-Time System
Contenuti
1. Introduzione
2. eXtended Automation
3. Connettività
4. Migrazione
5. Funzionalità
6. Panoramica di prodotto
Architettura del Sistema
Engineering (XAE)
Solution Manager
PLC
Programmazione C/C++
MATLAB® integration
Programmazione C#/.NET
Motion Control
Runtime (XAR)
eXtended Automation
eXtended Automation Technology (XAT)
supporta di tutti i principali bus di campo;
supporta diversi moduli software (IEC 61131, C/C++, Matlab ® /Simulink ® );
supporta le funzionalità di motion control (da PTP fino a CNC);
supporta configurazioni TwinSAFE;
supporta le funzionalità di Scientific Automation (robotics, measurement technology,
Condition Monitoring).
eXtended Automation Engineering (XAE)
Visual Studio® per la programmazione in IEC 61131-3 e C/C++
Visual Studio® per la configurazione di tutto il sistema (include TwinCAT System
Manager)
eXtended Automation Runtime (XAR)
esegue i moduli in tempo reale
supporta CPU multi-core
supporta sistemi operativi a 64-bit
Architettura del Sistema
Architettura del Sistema
TwinCAT 3
eXtended Automation
Technology
eXtended
Automation
Runtime (XAR)
eXtended
Automation
Engineering (XAE)
Modular runtime system
TcC
OM PLC Safety
TcC
OM NC
TcC
OM
C++
Module
TcC
OM …
TcC
OM
TwinCAT 3 development environment
based on Visual Studio® 2010
TwinCAT 3
Standard
Visual Studio®
2010 Shell
TwinCAT 3
Integrated
Visual Studio®
2010
eXtended
Automation
Architettura del Sistema
TwinCAT 3 Engineering Environment basato su Visual Studio®
TwinCAT transport layer - ADS
TwinCAT 3 runtime
Real-time core
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
Sistema PC
Bus di Campo
System Manager
- ConfigurazioneProgrammazione
- IEC 61131-3
- Estensione Object-oriented
- C/C++
PLC
TcC
OM Simulink®
Module
Windows 32/64 bit
eXtended Automation
Engineering (XAE)
eXtended Automation
Runtime (XAR)
eXtended Automation Engineering (XAE)
Ambiente di ingegnerizzazione espandibile e modulare
un ambiente di programmazione, una cartella di progetto, un
ambiente per il debug
TwinCAT System Manager integrato
programmazione secondo IEC 61131-3 3° edizione (incluse
estensioni object-oriented)
uso di linguaggi C e C++ per programmazione real-time
collegamento a MATLAB®/Simulink®
consente la migrazione di progetti TwinCAT 2
integrato in Microsoft Visual Studio® 2010 / 2012 / 2013
Caratteristiche XAE
basato su Shell di Microsoft Visual
Studio® (royalty free)
System Manager integrato
Programmazione secondo IEC 61131 -
3 inclusa estensione O.O.
Safety PLC integrato
Integrazione C/C++ e Matlab (solo
configurazione e runtime, utilizzo di
moduli esistenti)
XAE TwinCAT 3 Standard
TwinCAT 3 Engineering Environment
System ManagerConfiguration– I/O– PLC– MC– NC– CNC– Safety– others
Programming
IEC
61131Object-
oriented
extensions
IEC Compiler
TwinCAT 3 Runtime
TwinCAT Transport Layer – ADS
.NET
C++
Powershell
IronPython
CO
M
-> per programmatori PLC ed utilizzatori di moduli esistenti;
messa in servizio, diagnostica, debug
integrazione in Microsoft Visual
Studio®
System Manager integrato
Programmazione secondo IEC 61131 -
3 inclusa estensione O.O.
Safety PLC integrato
programmazione C/C++ in contesto
real-time
integrazione di MATLAB®/Simulink®
programmazione C# e .NET per
applicazioni non-real-time
possibilità di ulteriori integrazioni di tool
software di terze parti
XAE TwinCAT 3 Integrato
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-
oriented
ext.
IEC Compiler
TwinCAT 3 Runtime
TwinCAT Transport Layer – ADS
Non-real-
time
C#.NET
Real time
C/C++
MATLAB®/
Simulink
Simulink coder
Microsoft C Compiler
3rd-party
programming
tool
C/C++
Generazione di codice
Debug
Upload di moduli TC
Legenda figura:
-> per programmatori PLC e C/C++ ed utilizzatori di moduli esistenti;
generazione di moduli, messa in servizio, diagnostica, debug
Framework di TwinCAT 3 = Microsoft Visual Studio® 2010 / 2012 / 2013
utilizzo dell‘ambiente di programmazione più conosciuto nel mondo
manutenzione a cura di una sola azienda
espandibile tramite plug-in
collegato ai più comuni database di codice sorgente
Programmazione di applicazioni real-time in C e C++
Uso di linguaggi .NET per applicazioni non real-time (ad es. HMI)
Help in linea di sistema migliorato
Workbench integrato
Piattaforme x86
XP / XPE / Win7 / WES7
Win 8 Pro (su CPU x86)
-> no Win8 RT (basato su ARM)
Piattaforme x64
Win7 / WES7
Win8 Pro / WES8
Piattaforme ARM con Windows Embedded CE
CX9020 (CE7): solo PLC/Motion
CX81xx (CE): in futuro
CX90x0 (CE 5): No
XAE TwinCAT 3 – Sistemi Operativi supportati
Programmazione IEC 61131 ed C++ in parallelo
Codice C++ Codice IEC
TwinCAT System Manager integrato
Configurazione di Sistema
Configurazione Motion Control
Configurazione PLC
Configurazione Safety PLC
Configurazione moduli C++
Configurazione I/O
programmazione, configurazione e
diagnostica in uno strumento
sviluppo continuativo dal 1996
gestione dei task uniforme
parametrizzazione dei moduli TwinCAT
creazione e gestione delle mappature
tra le immagini di processo
simulazione di I/O ed assi
TwinCAT System Manager integrato
aperta a tutti i bus di campo più diffusi
supporto a tutte le interfacce hardware PC
semplice messa in servizio e diagnostica
immagini di processo logiche e fisiche
cambiare sistema bus di campo non
richiede modifiche al codice PLC.
Mappatura Immagini di Processo
Bus di campo 1 Bus di campo 2 Bus di campo 3
Immagini di
processo
fisiche
Immagini di
processo virtuali Inputs Outputs
Inputs Outputs Inputs InputsOutputs Outputs
ri-usabilità di codice C/C++ esistente
integrazione tra codice C/C++ e codice PLC
applicazioni real-time per tutte le piattaforme (CE, XP, etc.)
apre nuovi settori – utilizzatori PLC non standard
linguaggi di programmazione ben conosciuti e standardizzati (C: ISO/IEC 9899 TC3,
C++: IEC 14882)
generazione di Automation Device Drivers (ADD) consente l’implementazione di
drivers custom (ad es. drivers per bus di campo)
SDK Beckhoff fornisce informazioni funzionali (come per le librerie PLC) per ADS,
File I/O e Motion
Settori applicativi
image processing, robotica, tecnologie di misura
Programmazione C/C++
Integrazione di MATLAB®/Simulink®
familiarità con l‘ambiente scientifico e le tecnologie di misura
grande numero di toolbox (ad es. toolbox fuzzy logic)
creazione, simulazione e ottimizzazione di anelli di controllo
interfaccia di debug tra Simulink® e TwinCAT
Integrazione MATLAB®/Simulink®
Generazione del codice
design in Simulink®
generazione automatica di codice C++
con Simulink® Coder
compilazione con C compiler di Visual
Studio®
parametrizzazione in System Manager
TwinCAT
download ed esecuzione del codice
nell‘ambiente runtime di TwinCAT 3
Integrazione MATLAB®/Simulink®
Linguaggi .NET
linguaggi di programmazione ben conosciuti
standardizzati (C# -> ISO/IEC 23270)
generazione di codice intermedio (Common Intermediate Language – CIL)
Vantaggi
software engineering efficiente con livello di astrazione superiore
largamente accettato
“garbage collection” strutturata in memoria
può essere impiegato come parte di una soluzione integrata
Restrizioni
“Garbage collector” non adatto ad applicazioni real-time.
Linguaggi di programmazione .NET (ad es. C#)
Programmazione C#/.NET
modulo PLC
modulo C++
codice Real-time
Non real-time (ad es. HMI
processi di Windows)
Soluzioni scalabili (stepper… servo drive)
maggiore flessibilità
Vari livelli di astrazione
PLC / SCADA / HMI accedono sempre a strutture identiche, a
prescindere dal tipo di asse e/o bus di campo
Dal sistema meccanico a quello elettronico (camme, assi elettrici, frizione,
dischi, “taglio al volo”)
TwinCAT 3 Motion Control – Continuità
Vantaggi:
maggiore flessibilità nella tecnologia utilizzata
(stepper, servo drive, etc.)
maggiore flessibilità nel cambio lavorazione
tempi di sviluppo e consegna più rapidi
tempi di avviamento ridotti, a causa del ridotto numero di componenti
meccaniche
riduzione dei costi
Vantaggi:
maggiore flessibilità nella tecnologia utilizzata
(stepper, servo drive, etc.)
maggiore flessibilità nel cambio lavorazione
tempi di sviluppo e consegna più rapidi
tempi di avviamento ridotti, a causa del ridotto numero di componenti
meccaniche
riduzione dei costi
TwinCAT 3 Motion Control – Continuità
TwinCAT 3 Motion Control - Livelli di Astrazione
Livello PLC
+
++
-Livello Asse
Software
Livello
Fieldbus
Livello Drive
Velo Preset
Pos Ctrl
Pos Meas.
PLC
SP
Limit
Scale & Limit
TwinCAT 3 Motion Control | Dal PTP al Controllo
Robot
NC PTP CNC RoboticsNC I
Motion punto-punto
assi elettrici
camme
superposizione
taglio al volo
Motion Interpolato con
3 assi e 5 assi ausiliari
programmazione
DIN 66025
funzioni tecnologiche
semplice utilizzo
tramite blocchi
funzione del PLC
Completa
funzionalità CNC
motion interpolato
fino a max 32 assi
per canale
varie
transformazioni
Motion Interpolato per
controllo robot
supporto per ampia
gamma di
trasformazioni
cinematiche
controllo in coppia
opzionale
Funzionalità
TwinCAT 3 Scope View
TwinCAT 3 Scope è uno strumento integrato all’interno di TwinCAT 3 che permette di acquisire,
analizzare, memorizzare e visualizzare variabili in forma grafica.
Esso si divide in:
TwinCAT 3 Scope View: strumento grafico di engineering che permette la configurazione, la
visualizzazione e la memorizzazione di tracciati;
TwinCAT 3 Scope Server: software per l’acquisizione deterministica dei dati.
Scope View comunica via ADS con i server distribuiti nel sistema. Il Server locale può essere
utilizzato sia per l’acquisizione delle variabili locali ma anche per la visualizzazione ed
l’elaborazione dei dati salvati precedentemente.
Runtime (XAR)
ambiente dinamico per l’esecuzione e
l’amministrazione di moduli runtime di
TwinCAT 3
-> (TwinCAT object manager)
interfacce predefinite – TwinCAT
Component Object Model (TcCOM)
Runtime Modulare
Bus di campo
TwinCAT transport layer - ADS
TwinCAT Object Manager
Tw
inC
AT
real-
tim
e c
ore
TcC
OM
PLC
TcC
OM
PLCC++
modules
TcC
OM
PLCCNC
TcC
OM
PLCSafety
TcC
OM
PLCSimulink®
modules
TcC
OM
PLCPLC
TcC
OM
PLCNC
TcC
OM
C++
modules
TwinCAT Automation Device Driver - ADD
TcC
OM
PLCC
modules
TcC
OM
PLCSimulink®
modules
TC configuration Debugging
Task
Task
Task
Task
Task
Task
Task
Call
Call
Call
TwinCAT 3 runtime
separazione di funzionalità incapsulate in moduli
estensione del sistema con driver customizzati (Automation Device
Drivers – ADD), es. driver bus di campo
Scalabilità: i moduli possono contenere funzioni semplici, algoritmi
complessi ed applicazioni real-time o progetti completi.
ri-usabilità dei moduli
interazione di moduli scritti in
IEC 61131-3
C/C++
moduli generati con MATLAB®
Runtime Modulare
Supporto Multi-Core
distribuzione di moduli a singoli core
(ad es. PLC, Motion control ed HMI girano su core differenti)
base tempi scalabile per ogni core
utilizzo CPU scalabile per ogni core
Supporto per sistemi multi-core
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
Windows OS
assegnazione limite di utilizzo ai core CPU
definizione base tempi per ogni core
cores per uso real-time
core isolato
assegnazione dei
task ai core della CPU
Supporto per sistemi multi-core
Contenuti
1. Introduzione
2. eXtended Automation (XA)
3. Connettività
4. Migrazione
5. Funzionalità
6. Panoramica di prodotto
Soluzioni per diversi settori
consistente, verticale, orizzontale
scambio di dati e/o comandi
protocollo aperto con codice di esempio
disponibile sulle principali piattaforme Windows
accesso da PLC con blocchi funzione
instradabile localmente o via rete
aciclico/ad evento
Componenti gratuiti
OCX/DLL/.NET/
Script/Webservice
ADS (Automation Device Specification)
ADS via HTTP
ADS via seriale
ADS via
bus di campo
ADS
via TCP/IP
Varietà di soluzioni basate su ADS
TwinCATTwinCAT
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)
PLC 1
TwinCAT ADS routerAcyclic
TCP, UDP,
Serial, Fieldbus
TwinCAT
ADS router
CyclicEtherCAT Automation Protocol (EAP), Network variables
Contenuti
1. Introduzione
2. eXtended Automation (XA)
3. Connettività
4. Migrazione
5. Funzionalità
6. Panoramica di prodotto
Conversione progetto TwinCAT 2 al formato TwinCAT 3 :
convertitore di progetti TwinCAT 2 integrato
(System Manager & PLC control)
estensione di progetti con nuove funzionalità
aumentata ri-usabilità di parti di codice in nuovi progetti
utilizzo degli stessi strumenti per tutti i progetti / applicazioni
Migrazione da TwinCAT 2
Contenuti
1. Introduzione
2. eXtended Automation (XA)
3. Connettività
4. Migrazione
5. Funzionalità
6. Panoramica di prodotto
TwinCAT offre un‘ampia gamma di funzioni aggiuntive presente
anche in TwinCAT 3.
Comunicazione
OPC UA, Modbus, telecontrollo, seriale
Implementazioni di Controllori
toolbox controllori, controllori di temperatura
Engineering tools
ECAD Import, Source Code Management
Diagnostica/tecnologie di misura
Scope 2
Continuità
Contenuti
1. Introduzione
2. eXtended Automation (XA)
3. Connettività
4. Migrazione
5. Funzionalità
6. Panoramica di prodotto
Componenti di base
TwinCAT 3 – eXtended Automation Engineering (XAE)
TwinCAT 3 – eXtended Automation Runtime (XAR)
Base
TC1270 | TC3 PLC/NC PTP 10/NC I/CNC
TC1260 | TC3 PLC/NC PTP 10/NC I
TC1250 | TC3 PLC/NC PTP 10
TC1220 | TC3 PLC/C++/MATLAB®/Simulink®
TC1210 | TC3 PLC/C++
Functions
TC1210 | TC3 PLC/C++
TC1200 | TC3 PLC
TC1100 | TC3 I/O
TC1000 | TC3 ADS
TC1320 | TC3 C++/MATLAB®/Simulink®
TC1300 | TC3 C++
TC1100 | TC3 I/O
TC1000 | TC3 ADS
TF1xxx | System
TF3xxx | Measurement
TF4xxx | Control
TF5xxx | Motion
TF6xxx | connettività
TF8xxx | Industry specific
Panoramica delle funzioni
Functions
TF4100 | TC3 Controller Toolbox
TF4110 | TC3 Temperature Controller
TF
5x
xx
| M
oti
on
TF5000 | TC3 NC PTP 10
TF5050 | TC3 NC Camming
TF5055 | TC3 NC Flying Saw
TF5100 | TC3 NC I
TF5110 | TC3 Kinematic Transformation L1
TF5200 | TC3 CNC
TF
6x
xx
| c
on
ne
ttiv
ità
TF6000 | TC3 ADS Communication Library
TF6100 | TC3 OPC UA
TF6220 | TC3 EtherCAT Redundancy 250
TF6250 | TC3 Modbus
TF6310 | TC3 TCP/IP
TF6360 | TC3 Virtual Serial COM
TF
4x
xx
| C
on
tro
l
TF
3x
xx
|
Me
as
ure
me
nt
TF3600 | TC3 Condition Monitoring
TF3900 | TC3 Solar Position Algorithm
… …
… …
Per ulteriori informazioni, vedasi:
Product DVD
oppure:
www.beckhoff.com/TwinCAT3
TwinCAT 3
Beckhoff Automation S.r.l.
Via L.Manara, 2
20812 Limbiate (MB)
Contatti
Tel: +39 02 9945311
Fax: +39 02 99682082
E-Mail: [email protected]
Web: www.beckhoff.com
© Beckhoff Automation GmbH & Co. KG
All images are protected by copyright. The use and transfer to third parties is not permitted.
Beckhoff®, TwinCAT®, EtherCAT®, Safety over EtherCAT®, TwinSAFE®, XFC® and XTS® are registered
trademarks of and licensed by Beckhoff Automation GmbH. Other designations used in this presentation may
be trademarks whose use by third parties for their own purposes could violate the rights of the owners.
The information provided in this presentation contains merely general descriptions or characteristics of
performance which in case of actual application do not always apply as described or which may change as a
result of further development of the products. An obligation to provide the respective characteristics shall only
exist if expressively agreed in the terms of contract.