Tecnologia

Lo sai che i computer industriali “parlano” in modo diverso dal tuo computer?

Quando si lavora con i PLC (Programmable Logic Controllers) e si interagisce con l’automazione industriale, ci si può imbattere in un fenomeno curioso: i dispositivi industriali non “parlano” nel medesimo modo dei computer tradizionali. Questa differenza riguarda soprattutto un aspetto fondamentale della gestione dei dati: l’ordine in cui vengono memorizzati i byte. Sì, stiamo parlando della questione dell’endianness, e la domanda che sorge spontanea è: perché i computer industriali, come i PLC Siemens, ragionano diversamente rispetto ai computer tradizionali?

Cos’è l’Endianness e perché è importante?

L’endianness è il termine che descrive l’ordine in cui i byte di una parola (un gruppo di dati) vengono memorizzati in memoria. Per fare un esempio, se prendiamo un valore a 16 bit (2 byte) come il numero 0x1234:

  • Little-endian (tipico dei computer moderni): Il byte meno significativo (34) viene memorizzato prima, seguito dal byte più significativo (12).
  • Big-endian (usato da alcuni PLC, come quelli Siemens): Il byte più significativo (12) viene memorizzato prima, seguito dal byte meno significativo (34).

Questa differenza può sembrare sottile, ma è cruciale quando si devono trasferire dati tra sistemi che utilizzano ordini di byte diversi.

La differenza tra PLC e computer tradizionali

Nel mondo dell’automazione industriale, i PLC Siemens S7-300 e altri dispositivi di automazione utilizzano l’ordine dei byte Big-endian. Questo significa che, a differenza dei computer tradizionali che utilizzano un ordine Little-endian, i dispositivi industriali memorizzano e interpretano i dati in un ordine differente. Ma perché?

  1. Compatibilità con hardware e protocolli industriali: I PLC Siemens sono progettati per interagire con altri dispositivi industriali, come sensori, attuatori, e altri PLC. Molti di questi dispositivi e protocolli di comunicazione, come Modbus, Profibus o Profinet, utilizzano l’ordine dei byte Big-endian. Per evitare problemi di compatibilità tra dispositivi e garantire una comunicazione fluida, Siemens ha scelto di adottare questo standard anche per i propri PLC.
  2. Protocolli di comunicazione industriale: In ambito industriale, la comunicazione tra dispositivi è una parte fondamentale del processo. Ad esempio, quando un PLC Siemens scambia dati con un altro dispositivo, come un sensore di temperatura, i dati vengono trasmessi rispettando una convenzione comune. Poiché molti protocolli industriali sono progettati con un ordine Big-endian, il PLC si allinea a questa convenzione per garantire che i dati vengano letti e interpretati correttamente da tutti i dispositivi coinvolti.
  3. L’approccio pratico dell’automazione: I PLC non sono progettati per fare operazioni di calcolo generale come i computer tradizionali. La loro funzione primaria è il controllo e monitoraggio di processi industriali, e per farlo in modo efficiente, sono progettati per essere compatibili con gli standard industriali consolidati. Per questi motivi, i PLC seguono una logica di memoria che risponde alle esigenze pratiche dell’automazione, non alle convenzioni generali usate nei personal computer.

Come si riflette questo nella programmazione?

Quando si programmano i PLC Siemens, uno degli aspetti più visibili di questa differenza riguarda il byte swap (scambio dei byte). In pratica, quando si lavora con variabili che contengono più byte (ad esempio, un WORD o un DWORD), il programmatore deve tener conto del fatto che l’ordine dei byte è diverso rispetto a quello dei computer tradizionali.

In linguaggi di programmazione come AWL o LAD (Ladder Logic), un programmatore Siemens dovrà spesso usare funzioni o comandi specifici per scambiare i byte, in modo che i dati siano correttamente interpretati sia dal PLC che da altri dispositivi esterni. Queste operazioni, che possono sembrare un dettaglio tecnico per chi lavora con sistemi di automazione industriale, possono sembrare “strane” per chi è abituato a programmare con i computer tradizionali, dove l’ordine dei byte è solitamente Little-endian.

Perché Siemens usa Big-endian?

La scelta di Siemens di adottare l’ordine Big-endian per i suoi PLC non è una “stranezza”, ma una strategia di compatibilità. Utilizzando Big-endian, Siemens assicura che i suoi dispositivi possano comunicare senza intoppi con altri sistemi industriali, inclusi sensori, motori, e altre apparecchiature che utilizzano protocolli di comunicazione con lo stesso ordine di byte.

Inoltre, i protocolli di comunicazione industriale, come Profinet e Profibus, sono costruiti su una logica Big-endian, e l’utilizzo di un ordine di byte compatibile semplifica il trasferimento dei dati tra dispositivi e previene errori di interpretazione.

Conclusioni: due mondi che si incontrano

In conclusione, la differenza tra l’ordine dei byte nei PLC Siemens e nei computer tradizionali è dovuta a una scelta progettuale basata su esigenze di compatibilità industriale. Mentre i computer moderni usano il Little-endian, i PLC sono orientati al Big-endian, un ordine di byte più comune nel mondo dell’automazione industriale.

Questa scelta permette ai dispositivi di comunicare senza intoppi tra loro, ma per chi proviene dal mondo dei computer tradizionali, può sembrare un approccio “al contrario”. Tuttavia, dietro a questa differenza si nasconde una logica di compatibilità e praticità, che garantisce che i processi industriali possano funzionare in modo fluido e affidabile.

Quando programmi un PLC, quindi, è essenziale ricordarsi che l’automazione industriale “parla” un linguaggio diverso, ma che alla fine, si tratta solo di un’altra forma di comunicazione: efficiente, precisa e progettata per il contesto in cui opera.

admin

About Author

You may also like

Tecnologia

Il Futuro dei Robot: Un Reddito di Sussistenza per Tutti?

Nel 2040 ci saranno almeno dieci miliardi di robot umanodi e avranno un prezzo che andrà dai 20 ai 25mila dollari l’uno
Tecnologia

Auto elettriche per tutti? Ecco perché in Italia resteranno un sogno irrealizzabile

Le auto elettriche dovevano rivoluzionare la mobilità, ma in Italia stanno fallendo. E non per mancanza di interesse, ma per