LogicLab (Manuale) è un Integrated Development Environment (IDE) per lo sviluppo di applicazioni con i linguaggi definiti dallo standard IEC61131-3. Il programma è scaricabile da qui ed include:
- Editor del codice sorgente testuale per i linguaggi Instruction List (IL) e Structured Text (ST).
- Editor del codice sorgente grafico per i linguaggi Ladder Diagram (LD), Function Block Diagram (FBD) e Sequential Function Chart (SFC)
- Compilatore, che traduce direttamente in codice macchina le applicazioni scritte secondo lo standard IEC.
- Gestione della comunicazione con il sistema target per il download ed il debug della applicazione.
Barra progetto
La barra progetto di LogicLab (Normalmente quella più a sinistra) definisce l’albero del progetto, la barra puà essere customizzata definendo cartelle al cui interno verranno inseriti i vari Program Organisation Unit (POU) che possono essere:
- PROG, Program: al loro interno viene scritto il programma da eseguire utilizzando gli altri oggetti. Un progetto può essere suddiviso in molti programmi che andranno assegnati alla relativa task di esecuzione. Se non assegnati ad una task hanno nella icona il simbolo “?” e non sono eseguiti (Video).
- FB, Function Block: possono avere diversi parametri di ingresso e diversi parametri di uscita ed hanno una memoria interna. Ogni FB da utilizzare deve essere istanziato definendo un nome di istanza, che lo identifichi in modo univoco (Video).
- F, Function: possono avere diversi parametri di ingresso ma sempre e solo un parametro di uscita e non hanno memoria interna. Le funzioni possono essere utilizzate senza essere istanziate (Video).
Dopo aver definito i vari POUs del progetto è possibile definire le variabili globali che possono essere a loro volta suddivise in gruppi di variabili per una gestione più ordinata. Sotto alla definizione Task si trovano le cartelle in cui inserire i PROG da eseguire nella relativa task:
- Boot: Assegnare programmi da eseguire una sola volta all’avvio del sistema.
- Fast: Assegnare programmi da eseguire real time ogni 1mS. Da utilizzare in casi particolari di solito non si assegnano programmi.
- Slow: Assegnare programmi da eseguire real time ogni 10mS, si assegnano tutti i programmi di gestione logica.
- Back: Assegnare programmi da eseguire in background, non ha esecuzione real time, si assegnano i programmi di gestione strems di comunicazione, accesso al disco, ecc.
Librerie
Abbiamo visto come sia possibile all’interno del proprio programma utilizzare dei POUs come le funzioni ed i blocchi funzione. Seguendo i video avrete appreso che è possibile “autocostruirsi” questi POUs, ma molto più semplice utilizzarne di già costruiti. Con la distribuzione di LogicLab vengono fornite librerie che contengono moltissimi POUs già pronti (Elenco). Per utilizzarli è possibile importare il singolo POU nel proprio progetto o collegare l’intera libreria (Vedi articolo). Nel manuale di programmazione trovate una spiegazione dettagliata di tutti gli oggetti disponibili.
Download ed esecuzione programma
Effettuata la scrittura del programma è possibile compilarlo e poi eseguirlo all’interno di logicLab utilizzando il simulatore integrato (Sul simulatore non è possibile eseguire comunicazioni seriale e TCP e accessi al file system). Connettendosi al dispositivo target (Via seriale o TCP) e possibile trasferire ed eseguire il programma sul dispositivo. Per l’esecuzione serve solo il codice compilato, non è necessario il programma sorgente, nelle opzioni di download è possibile selezionare come gestire il trasferimento. Sul dispositivo viene trasferito un file compresso in formato (.rsm) protetto da password (Se abilitata).
- On PLC application download: Default, viene trasferito sul dispositivo.
- Before disconnession: viene trasferito il solo programma eseguibile, il programma sorgente sarà trasferito solo alla disconnessione di LogicLab dal dispositivo. Questa opzione permette di velocizzare le operazioni di download durante lo sviluppo ma occorre ricordarsi di eseguire correttamente la disconnessione.
- Never: Il programma sorgente non viene trasferito sul dispositivo.
Upload programma da dispositivo
Il nostro consiglio è di archiviare con cura una copia della cartella del programma sviluppato per poter in futuro eseguirne il debug o effettuare modifiche. Come abbiamo visto comunque è possibile scegliere di trasferire sul dispositivo anche il codice sorgente per avere una copia disponibile per future modifiche. Nel caso non avessimo più la copia del programma originale, se si è eseguito il download del codice sorgente è possibile eseguirne upload da LogicLab.
Dal dispositivo non è possibile eseguire upload del codice compilato ma solo del codice sorgente che andrà ricompilato per trasferirlo su di un altro dispositivo. Utilizzare la funzione Import from target, scegliendo il tipo di comunicazione in base al sistema. Configurare la connessione e con il tasto Verify Connection verificarla. Il tasto Upload Sources effettuerà l’upload del programma sorgente dal dispositivo. Definita la cartella in cui salvare i sorgenti, verrà ricreata la cartella con il progetto e LogicLab si aprirà in editing.