Schede con processore ARM

La tecnologia ARM ha indicato la nuova strada fin dal 2012.

Finalmente è possibile scegliere tra diversi modelli di  CPU ed avere un sistema completo, ovvero hardware, distribuzione, applicativi ed ambienti di sviluppo, e stabile.

Per dire, solo da poco  Raspbian Jessie ha permesso di usare senza complicazioni  Qt 5, altrimenti si cadeva nel 4.8 con le inevitabili, ma, anche se piccole, fastidiose varianti. Ed ancora, Raspbian ora si installa in modo celere e pulito, la nazionalizzazione è immediata, si allarga la partizione di root nell’installazione, Python è decisamente solido e facilmente utilizzabile, la repository contiene spi-dev anche per Python nella versione tre, apt-get install eric  installa l’IDE che funziona senza intoppi.

Con queste premesse, alla fine del 2015, possiamo cominciare a intravedere la competizione con le macchine tradizionali.

Si possono usare schede con CPU H3, quad-core a 1.6 GHz, ma anche A83T, octa-core a 1.6 GHz, con SATA, rete ad un Gb, l’ultima GPIO con header a 40 pin. I prezzi sono sbalorditivi, le temperature abbattute,  lo spazio ridotto all’osso, le prestazioni promettenti, la stabilità si sente. Il colosso Cina offre Aziende con produzione di schede che indicano senza esitazioni la direzione.

Questi nuovi sistemi, tascabili, permettono anche una nuova concezione sistemisitca, caratterizzata da una estesa configurazione a cluster, ed un’innovativo metodo di sviluppo che favorisce la portabilità. Caratteristica peculiare, espressa soprattutto mediante la GPIO a 40 pin nello standard de facto Raspberry PI versione 2, è la decisa propensione ad Internet of Things.

E proprio in linea con le nuove prospettive IoT, proviamo a costruire il nostro modello.

Modello basato su un dispositivo, IoT Device, costituito dal processore, il controllore e l’alimentatore, connesso in uno spazio Cloud.

Il processore è generalmente una scheda ARM, il controllore può essere quello integrato nella scheda ARM, secondo lo standard RPi,  oppure una scheda separata, per esempio AVR, secondo specifiche Arduino.

L’alimentazione diviene universale adottando 12V DC con un’erogazione di corrente sull’ordine dei 10 ampere. Così un alimentatore può servire anche cinque IoT Device.

Per l’IoT Device prevediamo un malleabile contenitore di materiale termoplastico.

In questa fase, sostanzialmente sperimentale, usiamo una scheda personalizzata millefori  come base per collocare la scheda ARM e l’eventuale AVR mediante i relativi header GPIO.

Questa scheda base contiene:

  • uno switching step down DC 12V DC 5V con almeno 2A per il processore, l’eventuale AVR viene alimentato direttamente dai 12V DC e ridotti dal suo stabilizzatore tradizionale interno
  • uno switching step down DC 12 DC3.3V per alimentare in modo separato l’elettronica di acquisizione a 3.3V, elettronica che necessita di una tensione costante di riferimento per le misure, ma anche, per prudenza, separata dalle principali, soprattutto quella del processore, per non iniettare interferenze provenienti, per dire, da sensori verso f.e.m. robuste, ovvero trasformatori collegati alle linee di rete elettrica.
  • dei led che esprimano lo stato delle alimentazioni, 12V, 5V, 3.3V
  • dei pulsanti  da PCB per le funzioni di on/off, reset, restore to factory, …
  • un dip switch per attivare funzioni quali DHCP, …
  • una matrice di sette od otto darlington  per pilotare piccoli carichi quali relè
  • un relè per controllare l’alimentazione della scheda ARM
  • un eventuale relè per controllare l’alimentazione della scheda AVR
  • un sensore di temperatura, tipo LM35, per controllare la  temperatura interna al contenitore termoplastico
  • alcuni ADC per misure di tensione d’alimentazione
  • l’eventuale batteria, tipicamente al piombo, a 12V in tampone
  • l’eventuale display LCD, due righe blu, retroilluminato
  • connettività ethernet, USB, seriali, l’eventuale MAX232
  • l’eventuale 3008 come SPI ADC per la scheda ARM
  • header per facilitare le misure sulla scheda stessa
  • due pin per la ventola, 12V DC e silenziosa, di ventilazione e la ventola stessa fissata al contenitore
  • dei fori con passanti per i cavi