SoftPLC CODESYS

SoftPLC CODESYS

CODESYS è la soluzione softPLC per i sistemi ASEM che permette il controllo real-time del sistema d’automazione con massima precisione ed affidabilità. CODESYS coniuga le peculiarità di un PLC hardware con l’apertura e flessibilità di un sistema PC o Windows CE.

What's New

 

v3.5 SP9 Patch 7

  • Allineamento al main stream di sviluppo CODESYS per la versione 3.x. Note di rilascio 3S scaricabili da questo link.
  • NEW - integrazione di CODESYS OPC UA Server su Runtime Win32
  • NOTA: a partire dalla versione 3.5.9.4 il Runtime di CODESYS per sistemi Win32 NON supporta più Windows XP

 

 

Clicca qui per accedere all'area "Downloads"

Caratteristiche

CODESYS: lo stato dell’arte nel SoftPLC

CODESYS (Controller Development System) è uno dei più diffusi e completi softwares di programmazione dedicati ai controllori industriali.

E’ IEC-61131-3 compliant e viene utilizzato, su scala mondiale, da oltre 200 produttori di hardware e da migliaia di utenti finali.

Consente di emulare via software, su una piattaforma PC con sistemi operativi real-time, le funzionalità tipiche del PLC, combinando la potenza e la flessibilità dei linguaggi di programmazione più avanzati (come il C o il Visual Basic) con l’intuitività e la semplicità di utilizzo dei linguaggi di programmazione PLC.

Il tool si compone fondamentalmente di due parti: il sistema di sviluppo CODESYS  er la programmazione e l’ambiente di runtime CODESYS  P. Quest’ultimo converte il dispositivo sul quale CODESYS è installato in un controllore IEC 61131-3, programmabile con CODESYS   I compilatori integrati nel sistema assicurano l’ottimale velocità di esecuzione del codice di programma.

  • Linguaggi di sviluppo IEC 61131-3:
    • Structured Text (ST)
    • Sequential Function Chart (SFC)
    • Continuous Function Chart (CFC),
    • Function Block Diagram (FBD),
    • Diagramma Ladder (LD) ed Instruction List (IL).
  • Più di una rete di comunicazione contemporaneamente.
  • Debug facilitato grazie all’’utilizzo di breakpoints, anche condizionati, e di modifiche in tempo reale al codice durante il funzionamento del PLC.
  • L’“oscilloscopio digitale” permette di registrare variabili o eventi. Facile comunicazione con altri software (tipo HMI) tramite l’OPC server o la libreria “PLCHandler”.

Compatibilità

Compatibilità

A seconda del tipo di bus di campo cambia la compatibilità rispetto ai modelli e cambiano i requisiti hardware necessari.

Il sistema runtime di CoDeSys è offerto da ASEM nelle versioni per Windows XP (CoDeSys SP RTE) e per Windows CE (CoDeSys SP) sui sistemi indicati nella tabella sottostante.

Per quanto riguarda l’ambiente di sviluppo, è gratuito ed è reperibile nel CD fornito a corredo con il software CoDeSys o scaricabile nella sezione download.

CoDeSys supporta le schede Fieldbus ASEM NETcore® X APCI e MiniAPCI per Profibus DP ed Industrial Ethernet con protocolli ProfiNet, Ethernet IP ed EtherCAT e CANopen.

Di seguito la tabella riassuntiva per la varie configurazioni.

Fieldbus HW OT600
Smartbox
OT1100
VPC15
B-ONE
PB300
OT1200
PB1200
OT1300
PB1300
HT700 HT2000
PB2000
HT3000
PB3000
500 / 600
family
550 / 650
family
VPK300
Profibus DP Master   NetX   A / C A / C A / C A / B /C A / B A / C A / C  
Slave   NetX   A A A A / B A / B A A  
CANopen Master   CAN RAW   A / C A / C A / C A / B /C A / B A / C A / C
Slave   CAN RAW   A A A A / B A / B A A  
EtherCAT Master   LAN   A / C A / C A / C A /B /C A / B A / C A / C A
PROFINET IO* Controller   NetX   A A A A / B A / B A A  
Device   NetX   A A A A / B A / B A A  
Modbus TCP/IP Master   LAN   A / C A / C A / C A / B /C A / B A / C A / C A
Slave   LAN   A A A A / B A / B A A  
Modbus RTU Master   COM   A / C A / C A / C A / B /C A / B A / C A / C A
EtherNet/IP* Scanner   NetX   A A A A / B A / B A A  
Adapter   NetX   A A A A / B A / B A A  
NVRAM 512KB     NV   A / C A / C A / C A / B /C A / B A / C A / C  

 

Legenda:
A: Win XP 32bit
B:Win 7 32/64 bit
C: Win CE 6.0 / WEC 7
 * versione Win32 disponibile su richiesta
NetX: scheda NETcore® X
CAN RAW: scheda ASEM CAN RAW 
NV: scheda NVRAM
LAN: Ethernet standard
COM: porta seriale standard

Requisiti Minimi di Sistema  ;

RuntimeRAMSSD / CF / HD
Win 322GB≥ 4GB
Win Embedded Standard1GB≥ 2GB
Window CE 512MB ≥ 512MB

Architettura

Architettura

Tutti i task coinvolti nella realizzazione delle applicazioni di controllo di processo possono essere eseguiti con CoDeSys Suite; l’architettura di CoDeSys può essere suddivisa in tre layers:

Development layer:

Il sistema di sviluppo è costituito dal sistema di programmazione PLC che include tutte le funzionalità di online e offiline, il compilatore e componenti aggiuntivi per la configurazione, ecc.

Ulteriori componenti sono disponibili nel caso sia presente anche la parte SoftMotion.

Communication layer:

La comunicazione tra il Sistema di sviluppo ed il layer Device passa attraverso CoDeSys Gateway Server, che è basato su un OPC (OLE for Process Control) server.

Device layer:

Al fine di rendere un dispositivo (un PC embedded, ad esempio) programmabile da CoDeSys, è necessario implementare su tale dispositivo l’ambiente runtime, CoDeSys SP. CoDeSys SP converte tale dispositivo in un controllore logico programmabile secondo lo standard IEC 61131-3.


Sistema di Sviluppo

Il sistema di sviluppo CoDeSys è il cuore del pacchetto 3S Automation Suite, e si caratterizza per il completo set di tools di sviluppo.

CoDeSys sistema di sviluppo offre tutti gli editor previsti dallo standard IEC per lo sviluppo delle applicazioni:

  • Structured text (ST)
  • Sequential Function Chart (SFC)
  • Continous Function Chart (CFC)
  • Function Block Diagram (FBD)
  • Ladder Diagram (LD)
  • Instruction List (IL)

Tutti gli editors sono stati pensati per assicurare il massimo della semplicità di utilizzo, ottenuta tenendo conto anche dei suggerimenti e delle esigenze degli utenti finali. Alcuni esempi funzionali sono riportati a seguire:

  • è possibile passare indifferentemente da un editor all’altro, per esempio da FBD a LD o IL, sia quando si è in online che in offline.
  • l’SFC può essere usato nelle versioni standard o in quella semplificata
  • sempre nell’editor SFC è presente una funzione diagnostica online
  • possibilità di creare delle macro con elementi dell’editor CFC e SFC
  • language construct creato automaticamente (es. IF …  END_IF)
Editor per la configurazione del progetto

Grazie a speciali editor, un progetto può facilmente essere configurato nell’albero di progetto di CoDeSys.

Controllori di tipo diverso e di costruttori diversi possono essere inclusi nel progetto, e ciascuno di essi può essere programmato separatamente oppure configurato con le sue interfacce di comunicazione in un network di controllori. Il progetto completo, alla fine, sarà costituito da diverse applicazioni dedicate a dispositivi diversi, e potrà essere caricato ed eseguito con un singolo comando.

Per quanto riguarda il configuratore dei tasks, permette la divisione dell’applicazione in diversi Time Layers che vengono sincronizzati con il Layer di I/O; anche quest’ultimo può essere configurato nell’albero di progetto.

Le POUs (unità di organizzazione del programma) create nel progetto possono essere assegnate direttamente a un dispositivo in particolare o rese disponibili a tutti i dispositivi del progetto. Inoltre, il programmatore può anche archiviare come librerie delle POUs predefinite e utilizzarle successivamente in un progetto. Le librerie inoltre possono essere gestite per numero di release direttamente da CoDeSys.

Compilatore

I compilatori integrati in CoDeSys convertono l’applicazione in codice macchina, che è molto più veloce e ottimizza le prestazioni.

Tutti i più comuni processori a 8, 16 e 32 bit sono supportati. Ciò si rivela estremamente utile nel momento in cui il programmatore deve lavorare con dispositivi con architettura diversa. Altra caratteristica è la visualizzazione in tempo reale di errori di sintassi commessi durante la programmazione e la scrittura del codice.

Il compilatore supporta tipi booleani, analogici, formato tempo e data, floating point, stringhe e unioni. CoDeSys, in aggiunta a questi, supporta anche l’accesso a bit e l’accesso ad array.

Programmazione ad oggetti

CoDeSys mette a disposizione anche la programmazione ad oggetti, con tutti i vantaggi che questo comporta grazie all’utilizzo di classi, interfacce, metodi, ereditarietà, polimorfismo, ecc.

Funzionalità offerte nello stato Online, per il Debugging ed il Commissioning

Il codice macchina generato dall’applicazione viene scaricato nel dispositivo semplicemente con un click del mouse. Una volta online, CoDeSys offre numerose funzioni per debug, test e messa in servizio veloce ed efficiente. I valori delle variabili dichiarate, per esempio, vengono visualizzati nel codice del programma, e possono essere cambiati o forzati. Inserendo dei breakpoints ed avanzando step by step nelle linee di codice, eventuali errori possono essere facilmente individuati e corretti. I breakpoints, in CoDeSys, possono essere facilmente configurati assegnando loro particolari condizioni di funzionamento, in modo da ottenere una ancor più precisa azione di debug. In single cycle operation, il programmatore può seguire il ciclo di esecuzione della sua applicazione in modo chiaro e completo.

Inoltre, se l’applicazione viene modificata, la ricompilazione del programma coinvolge solamente la parte oggetto della modifica e successivamente scaricata nel dispositivo senza la necessità di mettere in stop l’esecuzione e senza il rischio di perdita di dati delle variabili.

Sono altresì possibili anche modifiche a parecchie POUs, a variabili o tipi, grazie alla funzionalità denominata Online Change. In questo modo si riducono sensibilmente i tempi ed i costi di sviluppo.

Il tool di Sampling Trace, inoltre, consente la registrazione di dati ed anche l’innesco di eventi utili in fase di test e di messa in servizio.

Oltre a ciò, il SoftPLC demo consente al programmatore di simulare il funzionamento della sua applicazione senza bisogno di connettersi effettivamente a dispositivo target.


Runtime

Al fine di far si che un dispositivo sia programmabile con CoDeSys, è necessaria l’implementazione dell’ambiente di runtime CoDeSys SP sul dispositivo stesso. 

CoDeSys SP converte, per esempio, un PC embedded in un controllore IEC 61131-3 che a quel punto può essere programmato con CoDeSys.

L’ambiente di runtime CoDeSys SP esegue i seguenti task:

  • carica ed esegue le applicazioni IEC 61131-3
  • effettua il debug delle applicazioni IEC
  • opera con i sistemi di I/O
  • comunica con il sistema di sviluppo e programmazione
  • convoglia la messaggistica di informazione sulla rete dei controllori
  • CoDeSys SP, una volta configurato e grazie a moduli personalizzati, può essere adattato a piattaforme specifiche: sono disponibili adattamenti di CoDeSys SP per Windows CE.
CoDeSys SP RTE installato su Windows XP: il softPLC pronto all’uso

Con il sistema operativo Windows XP, il sistema runtime non necessita di alcun adattamento, in quanto la versione RTE di CoDeSys SP è stata pensata espressamente per questo sistema operativo e l’installazione è assolutamente standard. Una volta eseguita l’installazione, CoDeSys SP RTE converte qualsiasi PC industriale in un PLC, che risulta perfettamente scalabile in termini di prestazioni.

Caratteristiche:

  • Il kernel real-time garantisce sempre un comportamento deterministico
  • Interfacce verso gli I/O: schede di I/O discrete oppure schede fieldbus standard
  • La configurazione dei fieldbus può essere fatta direttamente dall’ambiente CoDeSys, senza la necessità di avere tools esterni
  • Schede fieldbus supportate: Hilscher, Applicom, Peak CAN.
  • Il softPLC è operativo anche con schermata blu del PC
  • Startup pienamente configurabile
  • Supporto ai dati retentivi (HDD, Flash Cards, RAM non volatile)


 

Open Communication

CoDeSys è dotato di una serie di interfacce di comunicazione ‘aperte’, che lo rendono adatto all’impiego con diverse e numerose tipologie di applicazioni in campo industria.

CoDeSys PLC Handler

PLCHandler è una libreria software, indipendente dalla piattaforma, ideata per la comunicazione tra i controllori CoDeSys ed i client software esterni (per esempio dei visualizzatori). 

Offre funzionalità di comunicazione e servizi di comando per l’accesso al controllore molto semplici da usare:

  • Avvio e shutdown della connessione
  • Lettura di tutte le variabili del controllore
  • Lettura ciclica dei valori delle variabili
  • Lettura e scrittura sincrone dei valori delle variabili

 


 

Integrazione Fieldbus

Tool di configurazione integrato

Al fine di permettere a CoDeSys l’accesso agli I/O del controllore da parte dell’applicazione risiedente sul controllore stesso, tali I/O devono essere dichiarati al sistema.

CoDeSys offre una completa configurazione di tutte le proprietà:

  • Descrizione XML del dispositivo:
    • Tipo di dispositivo, costruttore, numero d’ordine, ecc.;
    • Parametri del dispositivo;
    • Canali di I/O;
    • Interfacce verso altri dispositivi;
  • Generazione della gerarchia del dispositivo nell’albero di progetto
  • Configurazione dei parametri
  • Collegamento dei canali di I/O con le variabili IEC
  • Download della configurazione come parte dell’applicazione IEC nel formato standard
  • Driver framework definito, allo scopo di editare la configurazione in IEC 61131-3 oppure in linguaggio C
  • Funzioni online:
    • Valori dei parametri;
    • Valori dei canali di I/O;
    • Diagnostica;
    • Scansione di tutti i dispositivi disponibili;

CoDeSys offre anche specifiche estensioni grazie a:

  • filtro per l’importazione dei dati descrittivi del dispositivo, se in formato alternativo
  • interfacce di configurazione per specifici dispositivi

Vi sono inoltre una serie di estensioni a CoDeSys per bus di campo standard; consistono in filtri per l’importazione, interfacce di configurazione, drivers e stacks. Tra questi è possibile richiedere:

  • Profibus
  • CANopen
  • Ethercat
  • SERCOS III
  • ProfiNET
  • DeviceNet