Segrate 11 dicembre 2014
PI – PROFIBUS e PROFINET Italia
http://www.profi-bus.it
PROFINET isocrono
vince la sfida
Emiliano Sisinni
Dipartimento di Ingegneria dell’Informazione
Università di Brescia,
Via Branze 38 - 25123 Brescia (Italy)
Tel: +39-030-3715445 fax: +39-030-380014
e-mail: [email protected]
2
Segrate 11 dicembre 2014
Chi è PI
l
E’
Segrate 11 dicembre 2014
Sommario
 Parliamo di PROFINET, cioè di
• Protocollo (Scalabilità, Coesistenza)
• Architetture di rete e nuove possibilità
• Avvio rapido
• Ridondanza
• Sicurezza funzionale
• Wireless
• Risparmio ed efficienza energetica
• Protocollo isocrono con prestazioni che non temono
confronti
Segrate 11 dicembre 2014
Comunicazione
standard
100ms
La comunicazione in
PROFINET
Automazione di fabbrica
Applicazioni al Motion Control
RT_Class 1
RT_Class 2 e 3
10ms
<1ms
IT Services, TCP/IP
Real-Time:
IRT
Una mezzo di comunicazione omogeneo per tutte le necessità degli
utilizzatori
• Comunicazione Real-Time scalabile fino all’isocrono
• Apertura ai servizi IT e TCP/IP senza restrizioni
• e tutto su un’unica rete = integrazione orizzontale e verticale
Segrate 11 dicembre 2014
“Prestazioni”…
necessità di un contesto
Real-Time Ethernet
Stack di comunicazione
Segrate 11 dicembre 2014
Questo è uno schema generale che rappresenta lo stack di
comunicazione di una soluzione Real-time Ethernet.
 In questo contesto, quando si parla di “prestazioni” di un sistema
ci si riferisce alla “velocità di trasferimento” dati dal punto A al punto B
Receive data
Send Data
Real-time
Application
Service
interface
A
Send Data
Receive data
B
Real-time
Application
Service
interface
Real-time MAC
Real-time MAC
Ethernet PHY
Ethernet PHY
…e il resto del sistema?
Segrate 11 dicembre 2014
 La comunicazione è solo una parte (piccola)
 La comunicazione è gestita dal sistema operativo Real-time del dispositivo
Receive
application data
Send
application Data
Receive
application data
Send
application Data
Sistema
Operativo
Altri servizi
Sistema
Operativo
Altri servizi
Sistema Operativo
Kernel Real-time
Receive data
Send Data
Sistema Operativo
Kernel Real-time
Receive data
Send Data
Real-time
Application
Service
interface
Real-time
Application
Service
interface
Real-time MAC
Real-time MAC
Ethernet PHY
Ethernet PHY
Manca ancora
l’applicazione !
Segrate 11 dicembre 2014
 Uno o più programmi applicativi gestiscono i dati provenienti/diretti agli
altri dispositivi in campo
 L’insieme di tutte le parti è il “sistema di automazione”
Task
1 1 Task
n n
Task
Task 1 TaskTask
n
Task
1 1 Task
n n
Task
Task 1 TaskTask
n
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Receive
application data
Send
application Data
Receive
application data
Send
application Data
Sistema
Operativo
Altri servizi
Sistema
Operativo
Altri servizi
Sistema Operativo
Kernel Real-time
Receive data
Send Data
Real-time
Application
Service
interface
Sistema Operativo
Kernel Real-time
Receive data
Send Data
Real-time
Application
Service
interface
Real-time MAC
Real-time MAC
Ethernet PHY
Ethernet PHY
Segrate 11 dicembre 2014
Considerazioni sui tempi di
attraversamento
 Il tempo di attraversamento dello stack fino a raggiungere il programma
applicativo, cresce con la complessità del dispositivo
 Il sistema operativo del dispositivo
deve gestire anche altre applicazioni,
non solo la comunicazione
 Usare un processore dedicato
per la comunicazione non risolve
il problema
Task
1 1 Task
n n
Task
Task 1 Task
Task n
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Programma
Applicativo
Receive
application data
Send
application Data
Sistema
Operativo
Altri servizi
Sistema Operativo
Kernel Real-time
 e neppure usare un livello fisico più veloce…
Receive data
Send Data
Real-time
Application
Service
interface
Real-time MAC
Ethernet PHY
Segrate 11 dicembre 2014
Falsi miti: Ethernet Gigabit
(futuro o presente?)
 Offre più banda:
 implica processori più veloci per gestire più pacchetti al secondo
 ... altrimenti significa solo “stessi dati trasmessi in meno tempo”
 Svantaggi
 Livello fisico più complesso di 100Base-TX.
 Consumi più elevati
 Servono 8 fili invece degli 4 del 100Base-TX
 Prestazioni di sincronizzazione uguali
1
2
3
4
a quelle del 100BaseTx
11
 Ottimo per le dorsali nel caso
di topologia a cascata di stelle/alberi
10
5
9
8
7
6
Falsi miti:
cicli di scansione ridotti
Segrate 11 dicembre 2014
 Gestione del pacchetto che arriva: ad ogni ciclo corrisponde un interrupt
 Bisogna processare i dati in arrivo e preparare i dati per il prossimo ciclo
 Tempi di guardia: il tempo di elaborazione è sensibilmente minore
rispetto a quello del ciclo di comunicazione
Tempo preparazione
risposta
Latenza servizio
callback interrupt
Elaborazione
dati
Pacchetto
in arrivo
Durata tempo di ciclo
Segrate 11 dicembre 2014
Situazione attuale
Stato dell’arte
 Solo poche applicazioni reali attualmente richiedono tempi di ciclo di
elaborazione < 125us
 Il più veloce sistema commerciale “industry grade” ha un tempo di
servizio delle callback di circa 30us
 Se l’algoritmo di controllo richiede più di 30us allora è possibile
implementare sistemi che non perdono neppure un dato operanti a
62.5us
 L’unica applicazione reale disponibile su hardware “industry grade” è
quella dello ZHAW (Institute of Embedded Systems) di Zurigo che
raggiunge i 62.5 us
 Nota: La maggior parte di applicazioni lavora bene anche in sistemi non
sincronizzati con tempi di ciclo nell’ordine di 1 ms. La nostra esperienza
durante le validazioni ha messo in risalto una variabilità massima di 0.5
ms in sistemi con oltre 300 nodi
Barra delle prestazioni
Segrate 11 dicembre 2014
 Prestazioni e numerosità di applicazioni reali a confronto
8 ms
Numero di
applicazioni
1 ms
250 us
95%
4%
125 us
62.5 us
31.25 us
0.1%
0.9%
Prestazioni sistema
PROFINET IO RT
PROFINET IO IRT
senza DFP e
senza frammentazione
Limite applicazioni reali
attuali
Unico
controllore reale
industry grade
PROFINET IO IRT
con DFP e
frammentazione
Segrate 11 dicembre 2014
PROFINET IO offre
prestazioni sempre al
vertice
PROFINET IO:
Real-Time Ethernet
Segrate 11 dicembre 2014
Separazione nel tempo del traffico a priorità maggiore nel tempo
I dati critici usano un canale separato nel tempo.
E’ ancora possibile usare la comunicazione standard basata su IP.
IRT
interval
TCP/IP
Cycle 1
Isochronous
communication
IRT data
IRT
interval
IRT
TCP/IP
interval
TCP/IP
Cycle 2
= time window
RT
communication
RT data
Cycle n
Standard
communication
TCP/IP data
Segrate 11 dicembre 2014
Switch
PROFINET IO: Integrazione
con l’infrastruttura esistente
Switch
Switch
Switch
Switch
Switch
Sync master
Switch IRT
Switch IRT
Switch IRT
Switch IRT
Switch IRT
Switch IRT
IRT network
Switch
Switch
Switch
Switch
Switch
Switch
Switch
Segrate 11 dicembre 2014
PROFINET IO:
Ottimizzazione in 4 passi
 Fast Forwarding: ottimizzazione del tempo di inoltro dei pacchetti da
parte degli switch
 Dynamic Frame Packing: singolo frame per più dispositivi
 Fragmentation: gestione efficiente della frammentazione per ottenere
tempi di ciclo ridotti
Segrate 11 dicembre 2014
PROFINET IO:
Fast Forwarding
 Riduzione della durata del preambolo
 Riduzione dei tempi di trasmissione hardware (PortRXDelay e
PortTXDelay)
 Frame ID diventa parte del Destination Address
Preamble
8 Octets
DA
SA
VLAN*) Ethertype FrameID
6 Octets 6 Octets 4 Octets 2 Octets 2 Octets
Data
Trailer
4 Octets
Data
Trailer
4 Octets
Bridge delay minimo = 28 Ottetti
Preamble DA FID SA
VLAN*) Ethertype FrameID
6 Octets 6 Octets 4 Octets 2 Octets 2 Octets
2 Octets
Fast Forwarding ottimizzato = 8 Ottetti
PROFINET IO:
Fragmentation
Segrate 11 dicembre 2014
 Frammentazione è necessaria solo per tempi di ciclo inferiori a 250 µs
 In quel caso, i telegrammi non PROFINET da trasmettere nella fase
Open potrebbero dover essere spezzati in pacchetti più piccoli e
riassemblati a destinazione
Tempo di ciclo
(SendClock)
Open interval
Lunghezza
Frame
125 µs
> 51 µs
504
93,75 µs
> 41 µs
376
Lunghezza
raccomandata
frammenti
256
62,5 µs
> 35 µs
304
62,5 µs
> 31 µs
256
31,25 µs
> 20 µs
192
Il più piccolo ciclo
dura 31,25µs
128
31,25 µs
> 15 µs
128
Segrate 11 dicembre 2014
PROFINET IO:
Dynamic Frame Packing
 Condizioni
Comunicazione sincronizzata (Conformance Class C)
Frame dati di tipo RT_Class_3
Supporto del Fast Forwarding
Conoscenza della topologia
 Principio di funzionamento
Definizione del DFP-domain (grupo di IO-Device)
Trasmissione di tutte le uscite in un unico frame
Trasmissione di tutti gli ingressi in un unico frame
 Operazioni nello switch
Frame DFP ricevuti nell’intervallo riservato?
Frame ID corretto?
PROFINET IO:
DFP– dati di uscita
Segrate 11 dicembre 2014
 I datagrammi di uscita per tutti i device sono compattati in un unico
frame
IOC conosce la topologia
T
A1 A2
A1
A3
H
T
A2
A3
A2
H
T
A3
H
A3
H Telegram header
T Trailer
T
A1 A2
Dev 1
A3
H
= struttura dei sub frame
Dev 2
Dev 3
PROFINET IO:
DFP – dati di ingresso
Segrate 11 dicembre 2014
 La trasmissione inizia simultaneamente
 I datagrammi di ingresso di tutti i device sono aggregati in un unico
frame durante il percorso
 Lo scheduling è caricato nei device durante lo startup
IOC conosce la topologia
H
E1 E2
E3
T
H
E2
E3
T
H
H Telegram header
E1
E2
E3
T
E3
T Trailer
Dev 1
Dev 2
Dev 3
Segrate 11 dicembre 2014
Test case
Test case
Motion application
Segrate 11 dicembre 2014
Macchina che comprende 1 IO-Controller e 25 IO-Device di cui 24 drive e
1 I/O remoto (totale 480 byte per i drive, 112 IO digitali e 32 IO analogici)
 Ogni IO-Device – Profidrive ha:
 10 byte input e 10 byte output
 Ogni IO-Device ha:
 32 (16 in+16 out) canali analogici raggruppati in 8 moduli
 112 (56 in + 56 out) canali digitali raggruppati in 12 moduli
IO-C
Controller
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
Segrate 11 dicembre 2014
Test case
Motion application
Macchina che comprende 1 IO-Controller e 25 IO-Device di cui 24 drive e
1 I/O remoto (totale 480 byte per i drive, 110 io digitali e 30 io analogici)
 Il payload dati di processo in PROFINET IO - Profidrive è pari a
 Totale: 16 byte input + 16 byte output
I frame PROFINET Profidrive occupano quindi
 frame input (da IO-D a IO-C): 6.72 us
 frame output (da IO-C a IO-D): 6.72 us
IO-C
Controller
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
Segrate 11 dicembre 2014
Test case
Motion application
Macchina che comprende 1 IO-Controller e 25 IO-Device di cui 24 drive e
1 I/O remoto (totale 480 byte per i drive, 110 io digitali e 30 io analogici)
 Il payload dati di processo in PROFINET IO dell’IO remoto è pari a
 Totale: 85 byte input + 85 byte output
I frame PROFINET occupano quindi
 frame input (da IO-D a IO-C): 10.00 us
 frame output (da IO-C a IO-D): 10.00 us
IO-C
Controller
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
Segrate 11 dicembre 2014
Test case
Motion application
Macchina che comprende 1 IO-Controller e 25 IO-Device di cui 24 drive e
1 I/O remoto (totale 480 byte per i drive, 110 io digitali e 30 io analogici)
 Senza DFP
 Tempo riservato per PROFINET IRT : 95 us
 Tempo di ciclo minimo: 250 us [60% per TCP]
Con DFP attivato e fast forwarding (6 byte overhead per device)
I frame PROFINET occupano quindi
 frame input (da IO-D a IO-C): 30.96 us
 frame output (da IO-C a IO-D): 30.96 us
 Tempo riservato per PROFINET IRT : 31 us
 Tempo di ciclo minimo: 62.5 us [50% per TCP]
IO-C
Controller
(Nota: Tempo di ciclo minimo con
architettura a stella su quattro
rami = 31.25 us)
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
IO-D
Segrate 11 dicembre 2014
Conclusioni
PROFINET è una tecnologia aperta
• Prestazioni ai massimi livelli
• Scalabilità di prodotti e soluzioni
• Coesistenza piena con qualunque applicazione TCP/IP
• Ridondanza per aumentare la disponibilità
• Wireless per le soluzioni flessibili e innovative
• PROFIenergy per il risparmio ed l’efficienza energetica
• PROFIsafe per la sicurezza
• Leader del mercato
Scarica

PROFINET IO