Vai al contenuto

Rispondi a: Programmazione multitasking o sequenziale su SlimLine

Home Forum Programmazione IEC 61131 (LogicLab) Programmazione multitasking o sequenziale su SlimLine Rispondi a: Programmazione multitasking o sequenziale su SlimLine

#37858
Sergio Bertana
Amministratore del forum

La soluzione di creare delle librerie di base per la gestione delle logiche di gestione e di lasciare ad un programma custom il controllo degli I/O di campo è proprio l’approccio corretto alla programmazione dei PLC. La possibilità di creare funzioni e/o blocchi funzioni che gestiscono operazioni complesse e poi il poterli richiamare da semplici programmi ladder, permette anche all’installatore di modificare la parte di programma che si occupa dell’interfaccia di campo adeguandola alle necessità che si trovano di volta in volta sui vari impianti.

Nello SlimLine ci sono 3 livelli di priorità di escuzione (3 Tasks), Back che può essere interrotta dalla Slow che può essere interrotta dalla Fast. Naturalmente come richiesto dalla normativa l’esecuzione del programma deve concludersi in un tempo predefinito e non modificabile (ca 1 Sec) se questo non avviene, l’esecuzione viene automaticamente riavviata (Topic).

L’esecuzione del programma è ciclica, quindi per effettuare programmazioni concorrenti occorre (Come viene fatto nelle nostre FB) realizzare programmi a stati, in modo da mai arrestarne l’esecuzione. In questo topic è riportato il programma sorgente per realizzare una FB di gestione modbus ascii master in cui si vede bene la programmazione a stati, nel forum troverai moltissimi altri esempi simili.

Aggiungo un riferimento a questo topic in cui si tratta della sincronizzazione tra tasks.