IEC 61131-3:2025 — Edition 4

IEC 61131-3 Edition 4
La fine dell'Instruction List

La revisione di maggio 2025 dello standard di programmazione PLC rimuove IL, aggiunge Properties OOP, sincronizzazione Mutex/Semaphore, stringhe UTF-8 e ASSERT. Ecco tutto ciò che ogni ingegnere dell'automazione deve sapere.

Cosa è cambiato nell'Edition 4?

IEC 61131-3:2025 (Edition 4) è l'aggiornamento più significativo dello standard dei linguaggi di programmazione PLC dal 2013. Pubblicato a maggio 2025 dal Comitato Tecnico IEC TC 65 / SC 65B, modernizza lo standard per riflettere come il software di automazione industriale viene effettivamente sviluppato oggi.

Il cambiamento principale: Instruction List (IL) — il linguaggio PLC simile all'assembly risalente agli anni '90 — è stato ufficialmente rimosso dallo standard. Era stato deprecato nell'Edition 3 (2013) ed è ora completamente scomparso. Il comitato IEC ha concluso che 'un linguaggio simile all'assembly non è adatto agli ambienti di sviluppo moderni'.

Ma la rimozione di IL è solo una parte di una modernizzazione più ampia. L'Edition 4 introduce anche Properties orientate agli oggetti, primitive di concorrenza (Mutex/Semaphore), supporto per stringhe UTF-8, una funzione ASSERT per lo sviluppo e conversioni di tipo estese.

Cosa è stato rimosso

Funzionalità ufficialmente eliminate dallo standard

Instruction List (IL)

L'intera specifica del linguaggio IL (Capitolo 7.2) è stata rimossa. IL era un linguaggio simile all'assembly incline a codice illeggibile e difficile da mantenere. I produttori possono ancora supportarlo, ma non fa più parte dello standard IEC. Migra a Structured Text (ST).

Letterali ottali

La notazione numerica ottale (es. 8#267) è stata eliminata. Utilizza invece la notazione decimale o esadecimale.

TRUNC non tipizzato

La funzione generica TRUNC(x) è scomparsa. Utilizza versioni esplicitamente tipizzate come TRUNC_DINT(x) o TRUNC_LINT(x) per un troncamento sicuro e non ambiguo.

Funzioni BCD (deprecate)

Le funzioni Decimal Codificato Binario (IS_VALID_BCD, BCD_TO_*, *_TO_BCD) sono contrassegnate come deprecate e verranno probabilmente rimosse nella prossima edizione.

Cosa è stato aggiunto

Nuove funzionalità che modernizzano la programmazione PLC

Properties (GET/SET)

Classi, Function Block e Interface supportano ora le dichiarazioni PROPERTY_GET e PROPERTY_SET — metodi getter/setter appropriati con specificatori di accesso (PUBLIC, PRIVATE, PROTECTED, INTERNAL). Questo avvicina la OOP per PLC all'ingegneria del software moderna.

Mutex e Semaphore

Il nuovo Capitolo 6.9 introduce il controllo della concorrenza. MUTEX fornisce LOCK/UNLOCK/TRYLOCK per le sezioni critiche. SEMA fornisce ACQUIRE/RELEASE/TRY_ACQUIRE per l'accesso contato alle risorse. Essenziale per PLC multi-core e gestione di task concorrenti.

USTRING e UCHAR (UTF-8)

I tipi nativi stringa e carattere UTF-8 si aggiungono agli esistenti STRING (ASCII) e WSTRING (UTF-16). I letterali usano la sintassi U#'testo'. Le nuove funzioni LEN_MAX e LEN_CODE_UNIT gestiscono la codifica a lunghezza variabile. Supporto completo all'internazionalizzazione per HMI e logging.

Funzione ASSERT

Una funzione di validazione in fase di sviluppo che verifica espressioni booleane e genera diagnostiche definite dal produttore quando le condizioni falliscono. Disabilitata in produzione — zero overhead in fase di esecuzione. Pensala come le asserzioni di unit test per il codice PLC.

Conversioni di tipo estese

Nuove conversioni esplicite (LWORD_TO_BOOL, DWORD_TO_BOOL, WORD_TO_BOOL, BYTE_TO_BOOL) e conversioni stringa-ad-array (STRING/WSTRING/USTRING a ARRAY_OF_BYTE). Le conversioni implicite STRING_TO_WSTRING e CHAR_TO_WCHAR sono ora standard.

Codici carattere esadecimali nelle stringhe

La nuova sintassi ${HH} consente di inserire caratteri tramite code point esadecimale all'interno di letterali stringa. Permette caratteri di tabulazione, simboli Unicode e caratteri speciali direttamente nel codice PLC.

Migrazione da IL a Structured Text

Se il tuo codebase utilizza ancora Instruction List, ora è il momento di migrare. Il codice IL è tipicamente 3-5 volte più lungo dell'equivalente Structured Text, più difficile da leggere e sempre meno supportato dagli strumenti moderni e dagli assistenti di codice AI.

T-IA Connect può accelerare la tua migrazione da IL a ST. La nostra AI comprende entrambi i linguaggi e può tradurre blocchi IL in Structured Text pulito e ottimizzato preservando la tua logica e i nomi delle variabili. Combinato con il server MCP, puoi re-iniettare il codice migrato direttamente in TIA Portal.

1

Esporta i blocchi IL

Utilizza gli strumenti di esportazione di T-IA Connect per estrarre il codice sorgente IL esistente dai progetti TIA Portal (V17-V21).

2

Traduzione assistita da AI

Fornisci il codice IL a qualsiasi modello AI compatibile con MCP. L'AI traduce in Structured Text idiomatico, gestendo timer, contatori, etichette di salto e pattern accumulatore.

3

Importa e compila

Importa l'SCL generato in TIA Portal tramite gli strumenti create_scl_block o import_scl_source di T-IA Connect. Compila e verifica in un solo passaggio.

Cosa significa per gli utenti di Siemens TIA Portal

Siemens non ha rimosso IL/STL da TIA Portal — e probabilmente non lo farà per anni. Ma la direzione è chiara. I nuovi strumenti Siemens (SIMATIC AX, TIA Portal V21 Source Documents) si concentrano esclusivamente su Structured Text. Lo standard IEC ora riconosce solo quattro linguaggi: ST, LD, FBD e SFC.

Per i nuovi progetti, non c'è più motivo di usare IL. Per i progetti esistenti con codice IL, pianifica la migrazione ora mentre gli strumenti e il supporto AI sono maturi. Il server MCP di T-IA Connect con 390+ strumenti rende questa transizione gestibile — anche per codebase di grandi dimensioni.

Cronologia delle edizioni IEC 61131-3

1993

Edition 1 (1993)

Prima pubblicazione. Definisce 5 linguaggi: IL, ST, LD, FBD, SFC.

2003

Edition 2 (2003)

Revisione di manutenzione. Chiarimenti e correzioni minori.

2013

Edition 3 (2013)

Aggiornamento principale. OOP (classi, interfacce, ereditarietà), namespace, riferimenti. IL deprecato.

2025

Edition 4 (2025)

IL rimosso. Aggiunti Properties, Mutex/Semaphore, UTF-8 (USTRING), ASSERT, conversioni estese.

Domande frequenti

Instruction List è completamente scomparso da IEC 61131-3?

Sì. IL è stato deprecato nell'Edition 3 (2013) e completamente rimosso nell'Edition 4 (2025). Non fa più parte dello standard internazionale. Tuttavia, i produttori di PLC come Siemens possono continuare a supportare IL/STL nei loro strumenti — semplicemente non è più standardizzato.

Devo riscrivere tutto il mio codice IL immediatamente?

No. I programmi IL esistenti continueranno a funzionare in TIA Portal e negli altri ambienti che lo supportano ancora. Ma per il nuovo sviluppo, Structured Text è ora l'unico linguaggio testuale standardizzato. Pianifica la migrazione gradualmente — l'AI di T-IA Connect può aiutare a tradurre blocco per blocco.

A cosa servono Mutex e Semaphore nella programmazione PLC?

Mutex (esclusione reciproca) protegge le sezioni critiche del codice affinché solo un task possa eseguirle alla volta — prevenendo la corruzione dei dati nei programmi multi-task. Semaphore consente l'accesso contato a risorse condivise (es. limitare le connessioni concorrenti). Sono concetti standard in IT ora formalizzati per i PLC.

Come aiuta T-IA Connect nella transizione a IEC 61131-3:2025?

T-IA Connect genera Structured Text conforme a IEC 61131-3 tramite AI. Il nostro server MCP può esportare i blocchi IL esistenti, tradurli in ST tramite qualsiasi modello AI e reimportare il codice pulito in TIA Portal. Supportiamo da V17 a V21, quindi puoi modernizzarti senza aggiornare la versione di TIA Portal.

Pronto a modernizzare il tuo codice PLC?

Migrazione IL-a-ST assistita da AI, generazione di codice conforme a IEC 61131-3:2025 e 390+ strumenti MCP per TIA Portal V17-V21.