Archivi tag: gpio

Home Assistant a scuola: la guida “a puntate” per elettronica & automazione – 02


Prima di iniziare con l’installazione del software procediamo con la configurazione base dell’hardware, nel mio caso dispongo a scuola di un Raspberry Pi 4 Model B – 4 GB RAM e su questa versione opereranno gli studenti, ovviamente la scelta di un modello superiore con maggior memoria è consigliabile, ciò che ho fatto per la mia versione casalinga con un un Raspberry Pi 5 – 8 GB RAM.

Questa prima parte è estremamente semplice e richiede pochissime competenze tecniche, installeremo le alette di raffreddamento e la ventola di raffreddamento collegandola ai pin di alimentazione che troviamo sulla GPIO.

Note per chi inizia: Cos’è la GPIO del Raspberry Pi

GPIO = General Purpose Input/Output: è il pettine a 40 pin sulla scheda che vi permette di leggere/scrivere segnali digitali e, quando necessario, usare funzioni: come I²C, SPI, UART, PWM ecc. Sulla Pi 4 solo 28 sono utilizzabili per la programmazione. La GPIO del Pi 4 è identica, per posizione e funzioni base, a quello dei modelli precedenti con header a 40 vie: quindi HAT e cablaggi restano compatibili. Al termine della guida è indicato la piedinatura della GPIO ed i pin a cui connettere la ventola di raffreddamento.

Raspberry Pi 4 offre molta più potenza dei modelli precedenti e, sotto carico sintetico (cioè durante test artificiali che stressano intenzionalmente CPU/GPU per misurare il “la situazione peggiore di utilizzo”), può scaldare rapidamente fino a innescare il throttling (taglio automatico della frequenza per protezione termica). Le misure ufficiali con il firmware iniziale mostrano picchi fino a 72,1 °C in 60 s e l’avvio del throttling dopo circa 65 s; gli aggiornamenti firmware successivi hanno ridotto consumi/temperature e posticipato il momento in cui il taglio di frequenza interviene, ma in carichi intensi il rischio resta. Per chi usa il Pi 4 in modo continuativo (es. Home Assistant), aggiungere alette di raffreddamento + ventola aiuta a mantenere la CPU sotto soglia, evitando cali di prestazioni e migliorando stabilità e longevità del sistema.

Di seguito due immagini della scheda realizzate con la termocamera in fase di test.

Per maggiori informazioni vi rimando all’articolo tecnico che trovate sul sito Rapberrypi.org

Situazione in fase di riposo

Raspberry Pi 4 VLI, SDRAM (idle)

Situazione in fase di load

Raspberry Pi 4 VLI, SDRAM (load)

Di cosa abbiamo bisogno

  • Kit dissipatore in alluminio per Raspberry Pi 4 (molti includono doppia ventola + thermal pad + viteria).
  • Cacciavite a croce di piccole dimensioni.
  • Alcol isopropilico + panno morbido (per pulire i chip prima del fissaggio delle alette).
  • Facoltativo: fascette/clip per gestire i cavi.

Sicurezza e prevenzione

Sembra banale, ma meglio specificarlo, soprattutto per i giovani studenti che iniziano attività laboratoriali:

  1. Scollegare l’alimentazione del Raspberry Pi.
  2. Lavorare su superficie pulita; toccate una parte metallica messa a terra per scaricare l’elettricità statica (se disponete di un braccialetto antistatico meglio).
  3. Pulire delicatamente CPU/RAM/controller USB con un panno leggermente inumidito di alcol isopropilico e lascia asciugare.

Applicare le alette di raffreddamento

Sono acquistabili su qualsiasi store online, andranno montate sulla CPU, sulla RAM e sul Bridge PCI e USB 3.0. Incollate, come indicato nelle foto che seguono, le alette di raffreddamento, ogni aletta è dotata di nastro biadesivo.

Serraggio e alimentazione della ventola

In funzione del kit che avete acquistato o stampato in 3D la ventola di raffreddamento, alimentata a 5V è da fissare sulla struttura mediante 4 viti autofilettanti.

L’alimentazione della ventola avviene direttamente connettendo direttamente i pin di alimentazione della GPIO secondo quanto indicato dall’immagine che segue.

Poiché potrebbe servire in altre applicazioni condivido la mappa della GPIO del Raspberry Pi 4.

Per alimentare la ventola utilizzerò il +5V, preso sul pin 2 ed il pin 6 per il GND, come indicato nell’immagine che segue (datasheet Raspberry Pi 4)

Nell’immagine che segue è ben evidente il collegamento:

Procedere al servaggio della ventola al vetro supporto.

Buon Making a tutti 🙂

Usiamo CodeBug nella didattica

La ricerca di strategie che possano essere adattabili in diversi contesti didattici è un’attività che mi coinvolge parecchio, soprattutto se riguardano l’ampliamento delle competenze digitali degli studenti. Tra queste ricerche da tempo osservo e da un paio di giorni uso CodeBug una soluzione credo interessante per gli allievi più giovani.

CodeBug fornisce un modo divertente e coinvolgente per costruire dispositivi interattivi. La curva di apprendimento non è assolutamente ripida, nessuna barriera dovuta a difficoltà tecnologiche, elettronica ed informatica, per questo motivo risulta perfetto come strumento per accompagnare lo studente in un viaggio assolutamente creativo che introduce, anche per i più piccoli studenti (elementari e medie), nel mondo dell’elettronica e dell’informatica. Il design poi lo rende particolarmente attraente e flessibile e accenderà sicuramente la fantasia dei vostri allievi integrandolo in molteplici attività che si conducono a scuola.
CodeBug rende physical computing e l’elettronica finalmente accessibile a tutti. Come avrete modo di verificare CodeBug permette di avere, tramite la matrice LED che costituisce l’output visivo, le operazioni che si vanno a programmare, ma con esso si potrà anche comandare dispositivi esterni in modo molto semplice così come accade ad esempio con MakeyMakey di cui ho parlato diffusamente in precedenti articoli.

Ma perché così tanto desiderio di parlare di questa scheda elettronica?
Come dicevo all’inizio di questo post: semplice sperimentazione per implementare percorsi didattici alternativi.

Tempo fa avevo seguito con attenzione lo sviluppo di questo progetto e la raccolta fondi su Kickstarter, i fondatori di CodeBug sono maker ma soprattutto insegnanti e quindi attenti agli aspetti educativi, inoltre questa tecnologia, così come accade per Raspberry Pi, MicroBit, ma anche Arduino sono soluzioni a basso costo ed integrabili facilmente e proficuamente nella nostra scuola.
Inoltre vengono diffusamente utilizzati nelle scuole inglesi, ne ho letto le pratiche che ho trovato interessanti, ma ne ho la riprova dalle esperienze vissute in prima persona dall’amico di sempre Paolo che due anni fa decise di cambiare vita e lui con moglie e quattro figli di età: 8, 10, 14, 16 si trasferirono in Inghilterra a Camborne.

Paolo puntualmente mi aggiorna sugli aiuti che la scuola pubblica inglese offre soprattutto a chi si trasferisce in Inghilterra, sulle metodologie didattiche, sulle tecnologie ma soprattutto su quanto ai figli piace andare a scuola! 🙂 Ed io non posso che esserne felice 🙂
Paolo mi conferma nella scuola che frequentano i figli, un’attenzione particolare alle competenze digitali, ma anche valorizzazione delle potenzialità del singolo.

… ma torniamo all’oggetto di questo breve articolo: CodeBug

Parto oggi con la sperimentazione di CodeBug con mia figlia 🙂

Il metodo che disegnerò lo farò diventare una pratica che sperimenterò con alcuni allievi, soprattutto con coloro che hanno di necessità specifiche e questa pratica la mostrerò durante i corsi per docenti che terrò nelle prossime settimane.

Vediamo nel dettaglio cos’è e come si usa CodeBug

CodeBug è una scheda elettronica che ha le fattezze di un piccolo insetto un display di 25 LED e due pulsanti. Non è presente la Bluetooth ma ha un bus di espansione che supporta I2C, SPI e interfacce UART. Dispone di sei connettori che permettono di realizzare circuiti volanti. E’ possibile il collegamento direttamente alla GPIO del Raspberry Pi e programmato in python3 e quindi espandendone notevolmente la sua possibile applicazione.
Il costo contenuto, ho preso la scheda su element14 per 17,53 €

Per essere programmato Codebug deve essere collegato a un computer tramite la porta USB e la scrittura dei programmi avviene attraverso un’interfaccia web mediante un linguaggio visuale a blocchi che ricorda per alcuni aspetti Scratch. Per la programmazione potrete utilizzare qualsiasi computer con qualsiasi sistema operativo purché dotato di browser e connessione internet in quanto l’IDE di programmazione è in cloud. Per far si che i programmi vengano eseguiti in autonomia, senza la necessità di prelevare l’alimentazione dalla porta USB è possibile utilizzare una piccola batteria 2032 che ne permette il funzionamento indipendente.

Il video che segue mostra come sia semplicissimo incominciare ad utilizzare CodeBug:

Ma vediamo nella pratica di cosa si tratta.

codebug01

codebug02

codebug03

codebug04

codebug13

Passo 1

Prende il cavo micro USB in dotazione CodeBug

codebug04b

Passo 2

visitate il sito http://www.codebug.org.uk/gettingstarted/ e seguite le istruzioni, così come indicate anche su questo sito, per creare il vostro primo programma CodeBug poi fate click sul pulsante download

codebug05

Passo 3

Scrivete il programma

codebug06

codebug07

Passo 4

Effettuare il download del programma.

codebug08

Durante il download vi comparirà una finestra riepilogativa che mostra i passi da eseguire per il caricamento del programma su CodeBug

codebug09

Tenere premuto il pulsante A mentre collegate il cavo USB al computer e fino a quando la spia nell’angolo sinistro della matrice di led di CodeBug non incomincia a lampeggiare, ciò indica che il dispositivo è pronto per ricevere il vostro programma.

codebug09b

Passo 5

CodeBug verrà visualizzato sul vostro computer come unità USB.
Trascinate il programma all’interno di CodeBug.

codebug10

codebug11

codebug12

Passo 6

Quando il programma è stato trasferito in CodeBug il led più vicino al pulsante B sia accenderà.
Premete il pulsante B per avviare il programma.

codebug12a

codebug12b

Bene!
Nelle prossime puntate dettagli sull’uso dei piedini e ulteriori esempi.

Grazie per aver letto questo post 🙂