L’obiettivo di questa lezione introduttiva sull’uso di IOT2040 è quello di aiutare un gruppo di miei studenti nelle sperimentazioni che in questi giorni si stanno svolgendo nell’ambito delle attività di PCTO. Seguiranno nelle prossime settimane ulteriori guide che andranno ad ampliare il curricolo del percorso di Automazione per le classi 4′ e 5′ che svolgo presso l’ITIS Pininfarina di Moncalieri.
La semplicità di utilizzo, unita all’affidabilità e alla storia in campo industriale di Siemens, rendono la serie SIMATIC IOT2000 la scelta perfetta come gateway industriale. La possibilità di programmare SIMATIC IOT2000 con l’IDE Arduino permette un facile inserimento all’interno del percorso di studi, infatti il gateway è la normale evoluzione in campo industriale di Arduino, da esso ne eredita la possibilità di utilizzare i medesimi shield che vengono usati per la scheda Arduino UNO R3. Con IOT2000 è possibile usare protocolli di comunicazione come MQTT e Modbus.
Il funzionamento del gateway di Siemens è basato su Yocto Linux. La serie SIMATIC IOT2000 comprende i modelli IOT2000, IoOT2020 e IOT2040 compatibili con la maggior parte degli sketch Arduino che possono essere caricati direttamente dall’IDE Arduino.
Nella scheda che segue vengono evidenziate le differenze tra i vari dispositivi. L’IOT2040 è ideale per un impiego in azienda, mentre l’IOT2020 può essere utilizzato in campo didattico. Per il mio istituto ho scelto di utilizzare la serie di IOT2040 in modo che gli studenti fossero già formati su un prodotto che avesse performance adatte ad un uso aziendale.
Caratteristiche principali IOT 2040
- SIMATIC quality
Realizzato per operare 24/7 In ambiente industriale - AutomatIon.ConnecTed
Connessione facile all’automazione con supporto PROFINET, interfacce standard e apertura a soluzioni basate su Cloud - Aperto
Programmabile con linguaggi ad alto livello (es. Java, C++) tramite diversi IDE (es. Eclipse) e compilatori per Yocto Linux - Performance
Processore 32bit deterministico Intel Quark®x1020, 1 GB RAM e real-time-clock con batteria di buffer - Espandibilità & Connettività
Compatibile con mPCIe, Arduino Shields e varie interfacce, protocolli e driver standard
Famiglia SIMATIC IOT2000 – Scheda tecnica
SIMATIC IOT2020
- Target: Per Università e istituti scolastici
- Hardware:
- Intel Quark® x1000 (Galileo)
- 512 MB RAM
- 1 Ethernet interface
- Espandibilità
Arduino shield / mPCIe / µSD card slot - Software
Profinet driver - Programmazione
Yocto Linux/programmazione con linguaggi ad alto livello - Supporto Tecnico
Sito internet, forum dedicato
SIMATIC IOT2040
- Target: Variante “Industrial IoT” – Gateway / Collettore dati in applicazioni industriali
- Hardware:
- Intel Quark® x1020 (+secure boot)
- 1 GB RAM
- 2 Ethernet interfaces
- 2 x RS232/485 interfaces
- battery buffered RTC
- Espandibilità
Arduino shield / mPCIe / µSD card slot - Software
Profinet driver - Programmazione
Yocto Linux/programmazione con linguaggi ad alto livello - Supporto Tecnico
Sito internet, forum dedicato
Ambienti di sviluppo e programmazione
- Eclipse – programmazione in C/C++, Java
- Arduino IDE – programmazione in C
- Python
- Node-RED
Interfacce
1 – Cover sinistra (Arduino interface)
2 – LED
3 – Cover destra (µSD card, battery)
4 – Chiusura di sicurezza
5 – Pulsante user programmabile
6 – Pulsante RESET
7 – Porte COM (RS232/422/485)
8 – Preforati per installazione antenne
9 – Fori per alette a pressione per montaggio a muro
10 – Alimentazione
11 – USB Type A
12 – USB Type Micro B
13 – Porta Ethernet 10/100 Mbps
14 – Porta Ethernet 10/100 Mbps PoE
15 – Fissaggio a guida DIN
Nella parte interna sono ben evidenti, partendo da sinistra, i pin a cui è possibile connettere gli shield Arduino, a destra invece l’alloggiamento per la micro SD e batteria per l’RTC.
Configurazione di SIMATIC IOT2040
Per lo svolgimento di questa esercitazione è indispensabile avere:
- Cavo ethernet
- SD Card da almeno 8GB
- Alimentazione a 24 Vcc
- Arduino IDE
- Siemens SIMATIC IOT 2040
Manuali di riferimento
- SIMATIC IOT2000, Input/Output Module – Operating Instructions
- SIMATIC IOT2020, SIMATIC IOT2040 – Operating Instructions
- SETTING UP the SIMATIC IOT2020, SIMATIC IOT2040
- SIMATIC IOT2000 Getting Started with Eclipse Plugin/V2.0/documentation
Impostazione
Prima di procedere è indispensabile prelevare il software e la documentazione necessario dal portale di supporto di Siemens, registratevi e accedete al portale di supporto Siemens per poter poi prelevare tutto ciò che serve per configurare il dispositivo.
Il punto di riferimento da cui partire è il forum dedicato su cui troverete tutto ciò che vi serve e da cui potrete ottenere il supporto di Siemens per qualsiasi richiesta relativa all’hardware. Tutti i modelli della serie serie IOT2000 si configura allo stesso modo quindi, quindi questo tutorial risulta valido per: IOT2000, IOT2020 e IOT2040.
- Per procedere alla creazione dell’SD di boot da inserire all’interno dell’IOT 20×0 fate riferimento alla seguente pagina web sul sito di Siemens: Immagine di esempio scheda SD SIMATIC IOT2000
- Eseguire il download di: Example_Image_V2.4.0.zip (365,0 MB)
- Inserire la micro SD all’interno del vostro computer, oppure utilizzate un’adattatore esterno.
- Scompattate il file che avete scaricato e copiatelo sull’SD. Per la copia su SD per gli utenti Windows rimando alla pagina 9 del manuale allegato: SETTING UP the SIMATIC IOT2020, SIMATIC IOT2040 in cui viene utilizzato Win32 Disk Imager.
In alternativa per gli utenti MacOSX, Window e Linux consiglio l’utilizzo balenaEtcher applicazione estremamente utile e semplice da utilizzare.
Avviare balenaEtcher e selezionare il file compattato sul vostro HD:
Selezionare l’unità su cui compare l’immagine:
Selezionare la periferica:
Avviare la copia facendo click su “Flash!”:
Verrà richiesto l’inserimento della password di amministratore per effettuare cambiamenti sul disco di destinazione:
L’operazione di copia può durare parecchi minuti:
Inserire ma micro SD all’interno del dispositivo
Aprire la cover destra (µSD card, battery)
Spostare verso il basso il blocco SD
Aprire il blocco
Inserire la micro SD
Chiudere il blocco e spostare verso l’alto
Primo avvio del Simatic IOT 2040
I passi che seguono mostrano come accedere al SIMATIC IOT2040 mediante l’IP statico per configurare la rete. E’ importante ricordare che SIMATIC IOT 2040 ha come impostazione predefinita l’indirizzo DHCP sulla porta porta Ethernet – X2P1 e se lo si desidera è possibile accedere direttamente utilizzando l’indirizzo IP assegnato.
Con IOT2040 spento collegare un’estremità del cavo Ethernet al computer e l’altra alla porta Ethernet-X1P1 del dispositivo SIMATIC IOT2000, se state usando un IOT2040 la porta X1P1 è quella che si trova sulla sinistra.
Attenzione: Usare una tensione di alimentazione continua dai 9 ai 36V massimi
Una volta acceso SIMATIC IOT2000, vedrete il seguente comporatamento dei LED:
- PWR: fisso; dispositivo acceso
- SD: intermittente successivamente si spegnerà
- USB: fisso; dispositivo acceso
Il LED SD sarà intermittente perché viene modificata la dimensione del filesystem, questa fase potrebbe durare qualche minuto (dipende da che tipo di SD state utilizzando) attendere fino a quando non cambia lo stato del LED da fisso a spento, a questo punto potrete accedere all’IOT.
SIMATIC IOT2000 permette l’accesso tramite seriale, SSH e Telnet; in questa guida effettueremo una connessione SSH.
SIMATIC IOT2000 ha come indirizzo statico di default: 192.168.200.1. Per stabilire una connessione SSH, il vostro computer dovrà avere la stessa sottorete di SIMATIC IOT2000.
Se state utilizzando Windows utilizzate la guida SETTING UP the SIMATIC IOT2020, SIMATIC IOT2040
Gli utenti Linux e MacOSX possono seguire i passi che seguono.
Quanto la rete del vostro computer è configurata con la stessa sottorete del SIMATIC IOT2040 verificare la connettività con un ping:
ping 192.168.200.1
Il risultato dovrebbe essere simile a quanto indicato nell’immagine che segue, se ciò accade vuol dire che il dispositivo è correttamente configurato
PING 192.168.200.1 (192.168.200.1) 56(84) bytes of data. 64 bytes from 192.168.200.1: icmp_seq=1 ttl=64 time=1.04 ms 64 bytes from 192.168.200.1: icmp_seq=2 ttl=64 time=1.03 ms 64 bytes from 192.168.200.1: icmp_seq=3 ttl=64 time=1.00 ms
Accedere al gateway utilizzando il comando
ssh root@192.168.200.1
Al primo accesso verrà chiesto di approvare la connessione SSH, scrivete “yes” e premete invio per continuare.
Una volta stabilito l’accesso vedrete la seguente struttura sul vostro terminale:
root@iot2000:~#
Come dette sopra, l’indirizzo statico del SIMATIC IOT 2040 è impostata a 192.168.200.1 pertanto, se è necessario un altro indirizzo IP statico o un indirizzo DHCP, questo può essere impostato nel file “interfaces” nella directory “/etc/network”.
Per fare questo dovete spostarvi nella directory:
cd /etc/network/
Aprire il file “interfaces” usando l’editor nano:
nano interfaces
Il contenuto del file “interface” è per default impostato come di indicato di seguito:
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface auto lo iface lo inet loopback # Wired interfaces auto eth0 iface eth0 inet static address 192.168.200.1 netmask 255.255.255.0 auto eth1 iface eth1 inet dhcp
Se state lavorando con SIMATIC IOT2040 l’indirizzo DHCP è configurato per default sulla seconda porta (X2P1LAN). Accertatevi che il cavo di rete sia connesso sulla seconda porta Ethernet e riavviate il gateway
Se lavorate con SIMATIC IOT2020 e desiderate impostare l’indirizzo DHCP dovete modificare l’interfaccia come indicato di seguito e riavviare successivamente il gateway:
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface auto lo iface lo inet loopback # Wired interfaces auto eth0 iface eth0 inet dhcp
Utilizzo dell’Arduino IDE
SIMATIC IOT2000 è compatibile con l’IDE Arduino attraverso il pacchetto Galileo. Seguire i passi in elenco per configurare correttamente la scheda.
1 – Aprite l’IDE Arduino
2 – in Tools selezionare Board > Boards Manager
3 – inserire nel campo di ricerca Intel i5 e fate click su Install
4 – Selezionare Intel Galileo Gen2 dal menù Tools > Board
5 – Utilizzare la connessione micro USB per connettere IOT2040 al computer
6 – Selezionare la porta COM assegnata da Tools > Port > Intel Galileo
7 – Aprire lo sketch di esempio Blink: File > Examples > 01.Basics > Blink e effettuare l’upload sullo IOT2040, al termine del trasferimento il LED USER lampeggerà. Se il vostro computer non rileva la scheda l’IOT2040 dovrete provvedere ad aggiornare manualmente i driver seguendo il link.
Lunga vita e prosperità! 🙂