Ti accompagniamo in ogni fase della tua campagna di marketing automation

 

TEDU1 – Alcuni concetti di base

Cominciamo col descrivere la struttura di un elaboratore, in particolare di un comune PC, tenendo presente che si tratta di concetti validi pressoché per ogni dispositivo di elaborazione.
TEDU1 - Schema processoreAll’interno di un elaboratore vi è (almeno) un microprocessore, il quale rappresenta il cuore del sistema: è infatti l’elemento che “esegue” i programmi ed elabora così i dati – ovvero fa tutto il lavoro.
Per inciso i processori possono essere più di uno e, al loro interno, oggi sono spesso costituiti da più unità di elaborazione distinte, dette “Core”.

Per comprendere meglio il funzionamento degli elementi inclusi nel Kit TEDU1, è opportuno includere alcune informazioni supplementari, utili ad approfondire gli indispensabili elementi base di informatica

I programmi sono insiemi di istruzioni che spiegano dove prendere i dati, cosa farne e quindi dove riporli una volta elaborati.
Dati e programmi risiedono su speciali memorie che, fondamentalmente, sono di due tipi: quella di lavoro (direttamente connessa al processore e che quest’ultimo utilizza per svolgere le sue funzioni) e quella “di massa”.
Parlando di memorie, esiste un’ulteriore distinzione tra quelle volatili e non volatili: le prime perdono il loro contenuto quando l’elaboratore viene spento, le seconde no.
La memoria di lavoro è divisa in due parti: una non volatile (ROM, Read-Only Memory) ed una volatile (RAM, Random Access Memory).
La ROM, quando l’elaboratore viene acceso, contiene già un programma iniziale capace di attivare il sistema; la RAM viene quindi caricata con i programmi veri e proprii e con i dati da elaborare.
I programmi sono di due tipi: il Sistema Operativo (come Windows o Linux) e le applicazioni (come Office).

Sì, ma come funziona?

Quando l’elaboratore viene acceso, il programma nella ROM consente di caricare nella RAM – prendendolo dalla memoria di massa (anch’essa non volatile) – il Sistema Operativo (SO); una volta caricato, il SO dialogherà con l’utente e, se richiesto, caricherà (sempre dalla memoria di massa) altri programmi (come Office) e li depositerà nella RAM.
Office andrà a prendere dalla memoria di massa i file che abbiamo memorizzato, li caricherà nella RAM (la memoria di lavoro) e, una volta che avremo terminato il lavoro, nel momento in cui selezioniamo il comando “salva”, andrà a riscriverli nella memoria di massa (dove saranno conservati anche a sistema spento, mentre la RAM perderà tutto il suo contenuto).

Infine, come tutti sappiamo per esperienza, tutte queste complesse operazioni vengono eseguite in tempi estremamente brevi.

Input e Output

Come fanno i dati (quelli contenuti nella memoria di massa, ma non solo) ad essere caricati e scaricati dalla RAM? Grazie ad una serie di circuiti che consentono al processore di dialogare con l’esterno; si tratta dell’I/O bus, ovvero di un insieme di elementi che collegano la coppia RAM/Processore con le cosiddette periferiche mediante le operazioni di Input/Output.

Le periferiche si dividono a loro volta tra quelle di Input (inviano dati al sistema), Output (ricevono dati dal sistema) e quelle che svolgono entrambe le funzioni (Input/Output).
Di questa terza “specie” fanno parte, come è facile intuire, le memorie di massa (Dischi ed SSD), ma anche i DVD/RW (leggibili e scrivibili), le schede di rete e le versatili chiavette USB.

Altri dispositivi di I/O fondamentali sono le schede di rete, che permettono di dialogare (inviare e ricevere dati) con gli altri sistemi in rete (cablata o wireless).
Esistono quindi metodi di comunicazione che sfruttano i protocolli wireless (come Wi-Fi e Bluetooth) ed il relativo hardware e software da installare sull’elaboratore, accanto a quelli per le reti cablate (LAN).

I dispositivi di input sono tipicamente tastiera e mouse, mentre lo schermo e la stampante sono le più comuni periferiche di output.
Ricordiamo, qualora non fosse abbastanza chiaro, che ogni singolo byte di dati che va o viene dall’esterno passa sempre e comunque dalla RAM.

Il processore di Arduino 101

Una nota: Genuino e Arduino non sono due prodotti diversi – Genuino è semplicemente un nuovo brand che serve a commercializzare i prodotti della serie Arduino al di fuori degli Stati Uniti.

Anche Arduino 101 è organizzato come un elaboratore, quindi include più Microprocessori, ROM, RAM, memoria di massa e circuiti per gestire l’ingresso e l’uscita dei dati.
In particolare, Arduino 101 dialoga generalmente con sensori ed attuatori – non solo con periferiche “tradizionali”; quindi è dotato di speciali porte di I/O (sia digitali che analogiche) che consentono di interfacciarlo con termometri e misuratori di intensità luminosa da un lato, con servomotori o anche semplicemente diodi LED dall’altra.

La breadboard facilita la connessione tra elementi circuitali esterni e le porte I/O di Arduino 101, mentre l’Ethernet Shield è una sorta di “espansione” che, come la porta USB nativa, permette di farlo parlare con altri elaboratori (direttamente mediante l’USB, tramite la rete cablata con l’Ethernet Shield). La breadboard, infine, può alimentare i componenti elettrici ed elettronici prendendo la tensione dalla scheda Arduino 101 oppure da fonti esterne.

Adesso che sappiamo cosa c’è “dentro” Arduino 101, vediamo il disegno complessivo dei vari collegamenti tra i diversi elementi del Kit TEDU1.

Connessione alla rete del Kit TEDU1

Per prima cosa va inserito il modulo Ethernet Shield sopra la scheda Arduino 101, quindi si collega l’Ethernet Shield con il router di rete presente in laboratorio. Il router di rete viene fornito normalmente da chi porta la connettività Internet cablata (ADSL o Fibra), il quale installa un dispositivo che include al suo interno il modem (l’elemento che si connette alla rete telefonica), l’hot spot Wi-Fi che consente ai dispositivi wireless di connettersi al web (o anche alla rete locale) ed, infine, un router che rende disponibili un minimo di due connettori Ethernet per la rete cablata locale (LAN).
Al router va anche collegato il Bridge Philips Hue, per metterlo in comunicazione sia con Internet che con la rete locale (e quindi con Arduino 101). Il Bridge, quindi, si collega in modalità wireless con tutto il sistema Philips Hue, ovvero con le varie lampade – questa modalità di connessione, denominata ZigBee, è particolare e totalmente diversa da WiFi.

Infine occorre collegare Arduino 101, tramite la porta USB, con un PC (meglio se il nuovo MIIX320 di Lenovo). Questo collegamento consente di controllare la scheda Arduino 101 mediante l’apposito software fornito gratuitamente da Arduino.
Tramite questo canale, ed utilizzando un’intuitiva interfaccia grafica, potremo programmare Arduino 101 e fargli fare le cose di cui è capace: “leggere” elementi del mondo esterno (lo stato di un interruttore, la temperatura o l’intensità luminosa dell’ambiente), elaborarli secondo una precisa logica e, quindi, pilotare altri elementi del mondo esterno: un diodo LED o un servomotore, oppure trasmettere un comando al sistema Philips Hue. Di seguito è illustrato lo schema generale.

TEDU1 – Schema connessione in rete

La programmazione

Programmare Arduino 101 è semplice, inoltre esistono già molti programmi disponibili (come quelli per le esercitazioni).

Arduino rende disponibile, sempre gratuitamente, uno speciale ambiente di sviluppo (IDE, Integrated Development Environment): uno strumento che permette di creare i programmi per Arduino 101 scrivendo le varie istruzioni in linguaggio simbolico (una forma di codifica che utilizza espressioni testuali facilmente comprensibili e semplici da ricordare).

Un tipico programma per Arduino 101 viene chiamato “Sketch” (schizzo) ed è costituito da due elementi fondamentali: il Setup ed il Loop. Il primo serve a definire gli elementi che entrano in gioco, ovvero che cosa colleghiamo alla scheda Arduino 101; il secondo specifica “cosa” fare con questi elementi ripetendo il ciclo all’infinito, o almeno finché non decidiamo di interromperlo.

Una volta scritto il nostro programma (o averlo scaricato dalla libreria di programmi già pronti e disponibili), non ci rimane altro che verificare che sia sintatticamente corretto (il sistema segnala eventuali errori di programmazione) e, se non è corretto, effettuare le necessarie modifche; quindi l’IDE provvede a compilarlo (trasformarlo in una versione comprensibile al Microprocessore), dopodiché possiamo caricarlo su Arduino 101 e farlo partire.

Volete saperne di più? Contattateci.

I nostri clienti