Archivi categoria: tutorial

Blynk – il modo più semplice per creare progetti IoT – lezione 1

Diversi mesi fa mi venne chiesto di sviluppare un corso di base per la realizzazione di sistemi IoT per colleghi che lavorano nei licei. Come spesso accade molte delle sperimentazioni che propongo durante i miei corsi sono derivate da attività laboratoriali svolte con i miei studenti. In più occasioni mi è stato chiesto di pubblicare tutorial in merito all’IoT e recentemente i colleghi che seguiranno il mio prossimo corso: Realizzare laboratori green con il Making e il Coding – 3 ed. mi hanno chiesto esplicitamente di mostrare come costruire attività laboratoriali semplici in cui ci fossero componenti IoT che permettono di controllare remotamente su smartphone la nostra serra o il nostro sistema di controllo ambientale, pertanto a corredo del corso online che inizierà tra breve aggiungerò una serie di guide “IoT” su questo sito aperte a tutti.

La guide saranno utilizzate per estendere le funzionalità delle automazioni che verranno realizzate durante le lezioni, saranno pubblicate nell’arco della durata del corso e secondo le necessità didattiche dei singoli utenti iscritti, potranno essere personalizzate e rese fruibili ai propri studenti.

Sicuramente tra le piattaforme più semplici per connettere dispositivi IoT che possiamo trovare online Blynk IoT è la più usata e conosciuta.
Con Blynk IoT possiamo controllare remotamente il nostro hardware, visualizzare i dati rilevati dai sensori, creare dei datalogger e molto altro. Abbiamo visto sempre su questo sito in passato l’uso di ThingSpeak con BBC micro:bit ed un ESP01 e in questa serie di brevi tutorial, vedremo come utilizzare un WeMos D1 R2 mini per realizzare gli esercizi di base che poi ci consentiranno di controllare remotamente i nostri dispositivi come ad esempio un sistema per la misura dell’inquinamento derivante dalle polveri sottili. Non mi dilunghero sulla modalità di utilizzo del WeMos D1 R2 mini su queste pagine trovate indicazioni.

Per chi avesse altri dispositivi compatibili con la piattaforma Blynk IoT diversi da quello che utilizzo negli esercizi proposti, la procedura di installazione e programmazione è simile, nel caso di differenze fornirò indicazioni.

Agli iscritti al corso darò informazioni specifiche sull’uso di Blynk IoT con BBC micro:bit e Arduino Nano 33 IoT ed altre piattaforme.

La semplicità e la praticità di BlynkIoT  risiede nel fatto che è possibile costruire rapidamente un’interfaccia grafica sul proprio dispositivo iOS e Android al fine di controllare e monitorare i propri progetti. Qundi potrete creare una vostra dashboard virtuale (un centro di controllo grafico) costituto da pulsanti, slider, grafici e molto altro da disporre sullo schermo del vostro dispositivo. All’interno dell’applicazione esistono Widget specifici per il controllo della vostra automazione.

Tre sono le componenti fondamentali del sistema Blynk IoT:

  • Applicazione Blynk: applicazione sul vostro smartphone che mediante i widget forniti permette di creare l’interfaccia grafica per controllare la vostra automazione.
  • Server Blynk: il servizio che gestisce la comunicazione tra l’hardware e il vostro smartphone.
  • Librerie Blynk: permettono di gestire i comandi in ingresso tra la vostra piattaforma hardware: micro:bit, WeMos D1 mini, Arduino, ecc… e il server Blynk.

Durante le esercitazioni analizzeremo le caratteristiche di Blynk ma una cosa importante da sapere subito è che la connessione al cloud può avvenire in diverse modalità: Ethernet, Wi-Fi, USB, GSM, Bluetooth, BLE. Continua a leggere

Laboratori Green – Real Time Clock – DS3231

Durante il corso “Laboratori Green” in partenza il prossimo 7 dicembre, tra le varie attività che svolgerò in presenza online, mostrerò anche come gestire eventi che dovranno essere attivati ad una data ed ora specifici in quanto si avrà l’esigenza di realizzare un sistema autonomo che non faccia uso di un computer esterno per registrare i dati (temperatura, umidita, pressione, ecc…). L’elemento fondamentale della nostra automazione sarà un piccolo modulo di clock (orologio) in tempo reale (RTC) che ci consentirà di stabilire i tempi precisi in cui effettuare una specifica misurazione: una volta all’ora, una volta al giorno, alla settimana, ecc…

II modulo RTC è costituita da un piccola scheda elettronica economica su cui è inclusa una batteria ricaricabile che ci permetterà di non dover reimpostare l’ora sul microbit se viene sconnesso dall’alimentazione, quella che impiegheremo noi è la scheda HW-84 su cui è collocato l’RTC DS3231.

Commercialmente esistono diverse tipologie di RTC, il il DS3231 e tra quelli più adatti per essere usati con un micro:bit in quanto è progettato per funzionare con dispositivi a 3V pertanto potrà essere alimentato direttamente dal microcontrollore.
Durante il corso vedremo l’utilizzo di questo tipo di RTC anche mediante scheda Arduino.

Il DS3231 ha anche altre funzionalità che lo rendono molto interessante e che andremo ad utilizzare

  • possiede 2 allarmi
  • ha un sensore di temperatura con accuratezza di +/- 3C

Esistono diverse ragioni per cui è utile utilizzare Real Time Clock (orologio) all’interno del vostro sistema di automazione realizzato con qualsiasi microcontrollore, micro:bit, Arduino, o altro:

  • Se state registrando costantemente delle misurazioni (registrazione dei dati) è siuramente necessario registrare il tempo in cui la misurazione viene effettuata, la misurazione del tempo in cui avviene la misurazione prende il nome di timestamp.
  • Se state automatizzando eventi, come ad esempio l’accensione della luce ad una determinata ora, l’irrigazione della vostra serra, la rilevazione di umidità e temperatura della serra, l’accensione del riscaldamento, ecc…

Connessione dell’HW-84 al micro:bit

Il micro:bit comunica con il modulo RTC usando il protocollo di comunicazione I2C (inter-integrated circuit). Questo tipo di comunicazione utilizza 2 fili (SDA e SCL) e due file per l’alimentazione (Vcc e GND). Bisogna effettuare il seguente collegamento:

RTC ------ micro:bit
GND ------ GND
Vcc ------ 3V su micro:bit
SDA ------ SDA (pin 20)
SCL ------ SCL (pin 19)

Il pin SQW sull’HW-84 viene utilizzato per comunicare al micro:bit quando è stato attivato un allarme. Ciò può essere fatto collegando SQW al pin P0 del micro:bit

All’interno di MakeCode esiste un set di istruzioni per l’RTC DS3231. In MakeCode, fare clic “Extensions”. Nel campo di ricerca inserire DS3231, clic sull’icona per includere nell’ambiente di sviluppo il set di istruzioni.

Realizzare il programma indicato nell’immagine che segue. All’interno dell’istruzione “on start” sarà inserita un’icona che all’avvio del micro:bit darà percezione che il sistema è stato avviato. Nell’istruzione “forever” verrà impostata la struttura dell’output del testo mediante istruzioni di join del testo. La stampa delle stringhe del giorno e dell’ora avverrà mediante l’uso di istruzioni “serial write”. L’impostazione dell’ora iniziale sarà effettuta mediante l’istruzione specifica di inizializzazione dell’RTC in cui si dovranno inserire anno, mese, giorno, ora, minuto, secondo, il tutto inserito in un’istruzione “on button A pressed” che consentirà fisicamente di inizializzare l’RTC alla pressione del pulsante A del micro:bit. Per avere percerzione che l’impostazione è andata a buon fine verrà mostrata un’icona sul display del micro:bit mediante l’istruzione “show icon”.

Durante il corso aggiungerò a quanta sopra spiegato ulteriori indicazioni per realizzare un data logger di temperatura, ovvero un sistema in grado di registrare il valore della temperatura misurata in momenti specifici per poi mostrare su grafico la serie dei dati registrati.

Si svilupperanno anche altre attività come ad esempio:

  • realizzazione di allarmi, in generale attivazione di eventi in momenti programmati
  • registrazione dei dati su file all’interno del micro:bit
  • utilizzo di un sistema di registrazione dati su schede di memoria micro SD
  • … e molto altro

Vi aspetto al mio corso.
Buon Making a tutti 🙂

Game Programming Course – Controller con scatola di scarpe

Durante il recente corso sulla realizzazione di giochi con MakeCode Arcade indirizzata ad insegnanti ho mostrato come realizzare un semplice controller con una scatola di scarpe 🙂 e poiché alcuni ragazzi mi hanno chiesto indicazioni sulla realizzazione condivido l’attività.

Durante le attività di Coding e gioco svolte con MakeCode Arcade l’utilizzo di tastiera e mouse per giocare può diventare poco efficiente, pertanto per aumentare l’esperienza di gioco è possibile realizzare un controller di gioco personalizzato con pulsanti e Joystick identici a quelli presenti su un cabinet di gioco ed una scatola di scarpe. Di seguito le indicazioni tratte dalla guida: MakeCode Arcade Shoebox Controller sul sito ufficiale MakeCode Arcade.

Materiali

Continua a leggere

7 stampe 3d in 7 giorni – contenitore per minuterie

Un altro oggetto a corredo del nostro laboratorio.

Quante volte sarà capitato di riporre piccoli oggetti come viti e componenti elettronici all’interno dei contenitori porta minuterie e nel versarli negli appositi contenitori il tutto vi cade?
A me spessissimo 🙂

Stufo nel perdere i miei componenti e ritrovarli poi dentro qualche altro cassetto ho realizzato un piccolo contenitore a doppio uso:

  • per versare le minuterie nei cassetti
  • utilizzarlo come contenitore per stipare oggetti piccoli durante le sperimentazioni a scuola e a casa.

Un oggetto simile lo avevo trovato anni fa in un brico, ma non sono riuscito a ritrovarlo, pertanto ho deciso di realizzarne uno a cui ho aggiunto uno sportellino estraibile che potrà essere utilizzato per evitare la fuorisciuta delle minuteria durante lo spostamento.

Lo sportelino potrà anche essere riposto in un foro disposto su un lato del cassettino.

Un anello posteriore consente di appendere il cassettino su una rastrelliera porta utensili.

Mostrerò come realizzarlo durante il mio prossimo corso.

Per chi desiderasse realizzare il contenitore può prelevare i file per la stampa 3D seguendo il link.

Buon Making a tutti 🙂

Installare Raspberry Pi OS senza monitor e tastiera – abilitare il server SSH

L’installazione di Raspberry Pi OS non richiede necessariamente l’utilizzo di un monitor ed una tastiera esterna. I passi che vedremo in questa breve lezione ci permetteranno l’utilizzo di un computer remoto per configurare il Raspberry Pi. Sarà necessario installare su scheda micro SD il sistema operativo e abilitare il server SSH, in questo modo potremo connetterci in sicurezza al Raspberry Pi da qualsiasi computer remoto.

Installiamo il sistema operativo

Inserite nel vostro computer una micro SD, sicuramente avrete bisogno di un adattatore. Mediante Raspberry Pi Imager selezioniamo la versione di Raspberry Pi OS, nel mio caso: Raspberry Pi OS (other)

Scegliete la versione che vi necessita, nel mio caso ho scelto Raspberry PI OS Lite a 64 bit

Selezionare la scheda SD su cui installare il sistema operativo, nel mio caso l’ultimo volume presente nell’immagine che segue

Fate clic sulla rotella in basso a destra per aprire il pannello di configurazione del sistema operativo.

Inserite il nome dell’host, per default è impostato il nome Raspberry.local, per mia scelta personale in genere modifico il nome, impostando il nome di un corpo celeste (una vecchia abitudini di quando ero un giovane studente 🙂 ).
Abilitiamo inoltre il server SSH, avendo accortezza di selezionare “Usa password di autenticazione”

Impostate il nome utente, in genere io non modifico il nome lasciando quello preimpostato “pi”. Inserite una password a vostra scelta sufficientemente sicura.

Continua a leggere