Archivi tag: gateway

Siemens SIMATIC IOT2040 – configurazione ed utilizzo con l’IDE Arduino

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

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à! 🙂