• Tutte
  • Portfolio
  • Sviluppo
  • Tecnologia
  • RaspberryPI, cos’è e come funziona

    di Denis Torresan

    Durante le installazioni interattive che andiamo a realizzare ci capita spesso di dover utilizzare dei micro controllori o altro per poter comandare i vari device. Nelle situazioni più semplici di norma utilizziamo Arduino, uno strumento validissimo per connettere device diversi a sensori. Quando però la complessita aumenta, oppure semplicemente si rende necessario avere a disposizione un sistema più completo, che permetta di gestire un vero e proprio sistema operativo con più applicazioni installate, allora la scelta “obbligata” è sicuramente questo curioso oggetto chiamato Raspberry PI.

    Il Raspberry PI è un vero e proprio computer, completo di ogni parte, che nella sua ultima versione 3 comprende ben 4 porte USB, uscita HDMI, uscita Audio, plug per una micro telecamera, ed infine la parte più interessante (per applicazioni IoT  e di automazione), è la porta GPIO (General Purpose Input/Output), un socket a 40 pin utilizzabile per lettura e scrittura ed interfacciamento verso sensori esterni così come avviene con Arduino.

    In questo senso, Raspberry PI supera le limitazioni di Arduino, affiancando alle capacità di un microprocessore (dove installarci Linux), la possibilità di espansione garantita dalla porta GPIO.

    Anatomia di Raspberry PI

    Vediamo più da vicino le caratteristiche hardware della scheda, in particolare vedremo le caratteristiche della versione Rasberry Pi 3 Model B.

    pi_3_model_b

    Il Raspberry Pi 3 è la terza generazione Raspberry Pi.

    Ha sostituito il Raspberry Pi 2 Modello B nel mese di febbraio 2016.

    Rispetto al Raspberry Pi 2 ha:

    • CPU ARMv8 quad-core 1,2 GHz a 64 bit
    • 802.11n Wireless LAN
    • Bluetooth 4.1
    • Bluetooth Low Energy (BLE)

    Inoltre dispone di:

    • 1 GB di RAM
    • 4 porte USB
    • Porta GPIO da 40 pin
    • Porta HDMI completa
    • Porta Ethernet
    • Jack audio da 3.5mm combinato a video composito
    • Interfaccia della fotocamera (CSI)
    • Interfaccia display (DSI)
    • Micro SD card slot
    • VideoCore IV 3D graphics core

    Il Raspberry Pi 3 ha le medesime dimensioni della precedente Pi 2 (e Pi 1 Modello B +) e ha completa compatibilità con Raspberry Pi 1 e 2.

     

    La porta GPIO

    Una delle caratteristica più interessanti, come abbiamo detto precedentemente è il socket GPIO (General Purpose Input / Output) posto lungo il bordo superiore della scheda.

    gpio-pins-pi2

    Questi pin sono una interfaccia fisica tra il Raspberry e il mondo esterno. I pin possono essere utilizzati sia per leggere dati in input (ad esempio la pressione di un tasto), sia per impostare lo stato di una periferica in uscita (output).
    Dei 40 pin, 26 sono pin GPIO e gli altri sono di alimentazione o di messa a terra.

    Lo schema seguente sintetizza la mappatura dei pin, tuttavia è disponibile un sito dove avere una documentazione interattiva di ogni singolo pin, al seguente indirizzo: http://pinout.xyz/

    raspberry-pi-pinout

    Vedremo in un successivo articolo cosa poter fare con questa interessante funzionalità, ma giusto per dare una indicazione, non pensiate sia semplicemente un modo per accendere o spegnere un LED, ci sono moltissimi progetti in rete che permettono di realizzare una vera e propria installazione domotica o IoT. Ad esempio attraverso altri dispositivi hardware per pochi spiccioli è possibile collegare il Rasbperry Pi ad una antenna (trasmettitore e ricevitore) a 433MHz per pilotare device a distanza.

    Il sistema operativo

    A differenza delle precedenti versioni, Rasbberry PI arriva già (almeno con la versione da noi acquistata direttamente dal sito ufficiale) con pre installato Raspbian (una distribuzione derivata da Debian), che dispone anche di una interfaccia grafica.

    Oltre alla distribuzione di default, è possibile installare diversi sistemi operativi, addirittura una versione di Windows 10 IoT Core. Tutte le distribuzioni sono disponibili qui:

    https://www.raspberrypi.org/downloads/

     

    Cosa posso fare con il Raspberry PI?

    Il piccolo PC Linux, dal costo molto ridotto (nella sua versione completa di alimentatore USB e scheda Micro SD da 16 GB il costo è di circa 65,00 €), si presta a moltissimi usi. Vediamone alcuni:

    • Web Server: Possiamo trasformarlo in un Webserver, grazie all’utilizzo di Apache oppure NGINX.  In questo modo potremmo caricarci dei servizi locali intranet oppure utilizzarlo in abbinamento a linguaggi di scripting per eseguire delle operazioni. Non è ovviamente pensato per poter essere utilizzato come Web Server di produzione / Internet.
    • Cloud Storage:  Un altro interessante utilizzo comune per il nostro Raspberry è quello del cloud storage. Infatti, attraverso software open source come ownCloud possiamo crearci un servizio simili a Dropbox, accessibile anche da remoto, ma completamente amministrato da noi (si pensi ad esempio ai problemi di privacy policy rispetto a contenuti presenti in cloud sparsi per il mondo di cui non si conosce l’esatta ubicazione).
    • Media Center: Per quanto riguarda l’intrattenimento domestico, RaspberryPI può essere un ottima alternativa come player per i file multimediali (audio, video, foto etc…). Infatti esiste un sistema operativo open source appositamente creato per trasformare un Raspberry PI in un Media Player: Kodi, con il vantaggio, rispetto ai player di mercato di poter essere aggiornato in modo più regolare per il supporto di nuovi formati.
    • Progetti di domotica e IoT: Grazie alla porta GPIO è possibile interfacciarsi con dispositivi hardware, come ad esempio relè, sensori di temperatura etc…  In questo modo sarà possibile realizzare diversi progetti IoT, come ad esempio controllare il garage di casa proprio da smartphone.

    Conclusione

    Questo è il primo di una serie di articoli, non vuole infatti essere esaustivo, ma solamente un punto di partenza (da qualche parte bisogna pur sempre partire… 🙂 ) per introdurre l’argomento.

    Stiamo lavorando ad un progetto interessante di IoT con il Raspberry PI, e non appena avremo consolidato un po di materiale non esiteremo a pubblicarlo.

    Per il momento è tutto e alla prossima con Raspberry PI!

    Leggi anche...