Alla scoperta del micromondo

La vista non è più quella di un tempo, identificare codici sui componenti elettronici diventa complicato e quindi una bella lente di ingrandimento è essenziale, ma un microscopio digitale USB (economico) risulta ancora più interessante, un modo didatticamente coinvolgente per sprofondare nel “micromondo”. L’idea di utilizzare questo dispositivo nasce, più che dai problemi di vista, dalla necessità di fotografare e filmare i componenti elettronici e schede elettroniche da mostrare agli studenti. Per rendere più agevole l’utilizzo del microscopio ho trovato su Thingiverse diversi supporti che permettono di movimentare verticalmente il microscopio, tra questi ho selezionato quello che potete vedere nelle fotografie sottostanti i cui sorgenti possono essere reperiti seguendo il link. Sto realizzando una versione mia personale che cercherò di concludere e condividere con voi. Non vi nego che con molto divertimento sto fotografando ogni cosa, cristalli di cloruro di sodio, insetti, vegetali, i led RGB che compongono i pixel del monitor, i componenti di Arduino UNO R3, ho provato con successo a tagliato un diodo LED per fotografarne l’anodo e il catodo e molto altro… strumento utile 🙂

Buon Making a tutti 🙂

I miei corsi per Tecnica della Scuola: REALIZZARE E GESTIRE LA DIDATTICA ON LINE – Strumenti e strategie per la collaborazione – 2′ edizione

Scuola conclusa, ultime attività: esami e gestione della chiusura delle attività, pianificazione per il recupero degli allievi, archiviare la documentazione didattica.

  • Come ripartire il prossimo anno scolastico?
  • Come ripensare la DaD?

In questa seconda edizione del corso, richiesta dagli utenti che seguono i miei Webinar sulle tecnologie didattiche, ripercorrerò i temi della prima edizione analizzando le criticità delle attività didattiche svolte, pregi e difetti di alcune scelte tecnologiche. Approfondirò alcuni argomenti che sempre più spesso mi vengono chiesti: gestione semplice e veloce del video (dal progetto al montaggio all’esportazione), gamification nella didattica, valutazione online, come progettare la didattica.
Nelle vostre mail rilevo l’enorme fatica lavorativa, che ho vissuto anche io, nel gestire dalla mattina alla sera il lavoro online:

  • rispondere continuamente a mail degli allievi;
  • organizzare attività di recupero;
  • personalizzare il più possibile la didattica;
  • selezionare tecnologie didattiche efficaci per produrre velocemente documentazione;
  • diversificare le modalità di comunicazione con gli allievi in quanto non tutti posseggono strumenti adeguati.

Mi chiedete di approfondire maggiormente gli aspetti di gestione del tempo e della modalità di gestire le nostre (docenti) fonti per creare documentazione specifica da proporre ai nostri allievi:

  • in modo agevole;
  • di qualità;
  • personalizzato in funzione dell’allievo;
  • e se possibile velocemente.

Per rispondere alle vostre richieste rimodulerò gli argomenti i cui punti tematici saranno quelli proposti nel corso, a cui però aggiungerò nuove soluzioni. Vi consegnerò esempi pratici che potrete modificare in funzione della vostra materia e vi mostrerò come creo io i miei contenuti per voi e per i miei studenti a scuola.

Per maggiori informazioni sulla modalità di iscrizione e gli argomenti trattati seguite il link

Saranno svolti 4 incontri in webinar di 2 ore ciascuno per un totale di 8 ore di formazione

  • Giovedì 18 giugno 2020 – Ore 17.00/19.00
  • Venerdì 19 giugno 2020 – Ore 17.00/19.00
  • Lunedì 22 giugno 2020 – Ore 17.00/19.00
  • Martedì 23 giugno 2020 – Ore 17.00/19.00

Vi aspetto al mio corso 🙂

Corso UTS-NES: Didattica a distanza con le Google Apps

Rete per l’inclusione della città di Torino – CTS: Formazione A Distanza
Come referente del CTS di Torino, nell’ambito delle attività di formazione gratuite organizzate dal centro, sarò relatore per il corso: Didattica a distanza con le Google Apps.

Il corso in FAD (formazione a distanza) si propone l’obiettivo di mostrare l’utilizzo di applicativi per la creazione di contenuti didattici e per la gestione di ambienti di apprendimento integrati on line che consentono di realizzare dinamiche di lavoro collaborative, altamente inclusive permettendo il monitoraggio e la valutazione a distanza sulla classe o sul singolo allievo.
Tra questi verrà dettagliato l’uso delle Google Apps in ambito didattico.
Il corso fornirà le nozioni tecniche e le competenze per un’operatività avanzata nell’uso delle Google Apps e di software per la creazione di risorse: audio, video, pubblicazione su web, per la ricerca delle fonti online, per la gestione della classe e la realizzazione di videolezioni.
Verranno simulate situazioni didattiche reali, mostrando il processo di lavoro: ricerca e collezione delle fonti, produzione del contenuto didattico, realizzazione della lezione in modalità sincrona o asincrona.
Per quanto riguarda le Google Apps se ne mostrerà l’utilizzo in ambito scolastico, si procederà alla scoperta di tutte le caratteristiche rivolte alla comunicazione, alla conservazione, alla produzione, alla collaborazione e alla condivisione.
Il corso avrà una declinazione prettamente pratica; per la partecipazione non sono richieste competenze informatiche particolari.

Le priorità sviluppate in questo corso saranno:

  • didattica per competenze e innovazione didattica
  • competenze digitali e nuovi ambienti di apprendimento
  • inclusione e disabilità.

Punti tematici

  • Gestire videolezioni sincrone e asincrone.
  • Realizzazione di videolezioni – produrre e modificare l’audio e il video.
  • Usare al meglio il motore di ricerca di Google.
  • Introduzione alle App e al cloud di Google; creare un account.
  • Accedere a Gmail, organizzazione dei messaggi; utilizzare i task e gestire le attività.
  • Google Meet per comunicare, per chattare, per chiamare e fare videochiamate; condividere lo schermo, condividere link e file.
  • Calendar per pianificare eventi; aggiungere inviti e notifiche; creare e condividere calendari.
  • Drive per caricare e archiviare file; aprire, modificare, eliminare file; condividere.
  • Google Classroom per gestire on-line la classe.
  • Keep per creare note ed elenchi; condividere e collaborare.
  • Documenti: creare un documento, modificare e formattare, condividere e collaborare; gestire il file, modificare il documento e cambiarne visualizzazione, inserire elementi e modificare il formato del testo; utilizzare le tabelle e gli strumenti aggiuntivi
  • Presentazioni: creare/modificare una presentazione, formattare gli elementi come testi e oggetti, condividere e collaborare; inserire elementi grafici, lavorare sulle transazioni, sugli schemi, sui temi
  • Disegni: impostare e formattare un disegno; aggiungere elementi, modificare le forme; lavorare sulle immagini; disporre gli elementi.
  • La lavagna virtuale di Google: Google Jamboard.
  • Fogli: introduzione ai fogli di calcolo, capire l’interfaccia e operazioni di base; formule e funzioni; matrici; creare e lavorare sui grafici; formattazione condizionale; tabelle pivot.
  • Moduli: creare e gestire un modulo; visualizzare e analizzare le risposte.
  • Usare le Mappe, aggiungere luoghi, linee e forme; indicazioni stradali, misurare distanze.
  • Sites: realizzare un sito; creare pagine, modificare il layout, organizzare la navigazione del sito.

DURATA DEL PERCORSO – PROGRAMMA: durata totale di 25 ore, di cui 15 ore di formazione individuale e 10 ore sincrone nelle seguenti date:

  • sabato 30.05 dalle 14,30 alle 16,30
  • mercoledì 03.06 dalle 14,30 alle 16,30
  • giovedì 04.06 dalle 16,30 alle 18,30
  • venerdì 05.06 dalle 14,30 alle 16,30
  • lunedì 08.06 dalle 14,30 alle 16,30

DESTINATARI: 50 docenti curriculari e di sostegno delle scuole di ogni ordine e grado 

ISCRIZIONI: entro il giorno 28 maggio p.v. tramite il seguente FORM

Per maggiori informazioni

Utilizzare il sensore di distanza VL530X con Arduino

Ho parlato di questo sensore di distanza quando qualche settimana fa mostrai come utilizzarlo con M5Stack mini: 5 min al giorno di sperimentazione con M5Stack mini – Sensore TOF seguendo il link trovate tutte le indicazioni sul principio di funzionamento ed una serie di dati tecnici che potrebbero essere utili per il vostro studio. Riprendo alcune parti del mio post in modo che le vostre sperimentazioni possano essere più agevoli:

…un sensore ToF (Time of Flight: tempo di volo) VL53L0X effettua un conteggio del tempo totale di volo dei fotoni dal momento in cui vengono emessi da un piccolissimo raggio laser al momento in cui viene rilevata la riflessione su un fotodiodo collocato sul sensore.
In generale il tempo di volo (spesso indicato con TOF, dall’inglese Time Of Flight) indica la misura del tempo impiegato da un oggetto, una particella o un’onda (elettromagnetica, acustica, elettromagnetica o di altro tipo) per percorrere una certa distanza in un mezzo determinato….
Il sensore ToF di cui dispongo è un VL53L0X che incorporato un emettitore Laser VCSEL ed un fotodiodiodo ricevitore SPAD. Il laser è in grado di emettere impulsi a 940 nm (prossimi al campo infrarosso). Il fotodiodiodo SPAD è estremamente sensibile al singolo fotone e grazie alla schermatura di cui è costituito riceve soltanto la lunghezza d’onda di 940 nm del laser.

Seguendo il link potete prelevare il datasheet del VL530X prodotto da ST.

Il sensore utilizzato con M5Stack mini è dotato di connettore GROVE, mentre la versione utilizzata per questo tutorial è una scheda breakout che potrete facilmente collegare ad Arduino.

Acquistai una serie di questi sensori per realizzare un sistema di rilevazione ostacoli di tipo laser per i kit robotici che faccio realizzare ai miei studenti, EduRobot e DotBot, ma poiché la situazione didattica di questi mesi è mutata drasticamente a causa dell’emergenza sanitaria, ho deciso di riutilizzare i sensori per un progetto semplice che iniziai qualche settimana fa: un bracciale per valutare la distanza tra le persone, sistema che per altro in diversi ambiti mi è stato chiesto di sviluppare.

  • Vin alimentazione del sensore, 3-5V. Collegate +5V di Arduino.
  • GND da connettere al GND di Arduino
  • SCL ed SDA dovranno essere connessi ai corrispondenti pin della scheda Arduino utilizzata, nel caso di un Arduino UNO R3 A5: SCL e A4: SDA

Installare la libreria Adafruit_VL53L0X Library Sketch > Include Library > Manage Libraries…:

Cercare la libreria Adafruit VL53L0X  all’interno del motore di ricerca e procedere con l’installazione:

Aprire da File->Examples->Adafruit_VL53L0X->vl53l0x ed effettuare l’upload sulla scheda Arduino

Di seguito trovate gli sketch di esempio in cui ho effettuato alcune traduzioni:

#include "Adafruit_VL53L0X.h"

Adafruit_VL53L0X lox = Adafruit_VL53L0X();

void setup() {
  Serial.begin(115200);

  // per i dispositivi USB nativi, attende fino a quando la serial port non risulta disponibile
  while (! Serial) {
    delay(1);
  }
  
  Serial.println("Test Adafruit VL53L0X");
  if (!lox.begin()) {
    Serial.println(F("Impossibile avviare VL53L0X"));
    while(1);
  }
  // power 
  Serial.println(F("VL53L0X API Esempio: misura distanza\n\n")); 
}


void loop() {
  VL53L0X_RangingMeasurementData_t measure;
    
  Serial.print("Lettura misura... ");
  lox.rangingTest(&measure, false); // se si inserisce 'true' si avvia la stampa dei dati di debug!

  if (measure.RangeStatus != 4) {  // dati errati
    Serial.print("Distanza (mm): "); Serial.println(measure.RangeMilliMeter);
  } else {
    Serial.println(" fuori portata ");
  }
    
  delay(100);
}

Aprite serial monitor ed impostate la velocità a 115200 baud

Muovete la vostra mano sul sensore per leggere la misura della distanza tra mano e sensore, noterete che quando non viene rilevato nulla sulla serial monitor verrà visualizzato il messaggio: out of range (fuori portata).

Modificare l’indirizzo assegnato al sensore

Durante l’inizializzazione, invece di usare la funzione lox.begin(), usare lox.begin(0x30) per impostare l’indirizzo su 0x30 sul nuovo sensore aggiunto, oppure in qualsiasi parte dello sketch, quando deve essere usato il sensore usare la funzione lox.setAddress(0x30).

Connessione di più sensori

Nel caso abbiate la necessità di connettere più sensori bisognerà che ognuno di essi abbia un indirizzo I2C diverso. L’indirizzo predefinito per VL53L0X è 0x29 ma è possibile modificarlo via software. Gli indirizzi che possono essere utilizzati vanno da 0x30 a 0x3F.

  1. Reset di tutti i sensori impostando i pin XSHUT a LOW per un tempo di 10 millisecondi.
  2. Mantenere il sensore 1 attivo mantenendo a HIGH il pin XSHUT a HIGH.
  3. Disattivare tutti gli altri sensori impostando i loro pin XSHUT a LOW
  4. Inizializzare il sensore 1 con lox.begin(nuovo_i2c_address). Scegliere qualsiasi indirizzo tranne 0x29, dovete scegliere un indirizzo inferiore a 0x7F, scegliere un indirizzo nell’intervallo 0x30 a 0x3F.
  5. Mantenere attivo il sensore n. 1 e disattivate il sensore n. 2 impostando il pin XSHUT ad HIGH.
  6. Inizializzare il sensore n. 2 usando la funzione lox.begin (nuovo_i2c_address). Scegliere qualsiasi indirizzo tranne 0x29, l’indirizzo da scegliere dovrà rientrare nel range ammesso (0x30 a 0x3F).
  7. Ripetere l’operazione per ciascun sensore, attivarli e assegnare ad ognuno un indirizzo diverso.

Attenzione che l’assegnazione dell’indirizzo non è permanente, in mancanza di alimentazione viene persa memoria dell’indirizzo assegnato a tutti i sensori, quindi la procedura deve essere ripetuta ogni volta che viene alimentato il circuito.

Nel caso abbiate un solo sensore l’indirizzo assegnato in automatico di default nel momento che date alimentazione è sempre 0x29.

Se operate con due sensori, per assegnare automaticamente gli indirizzi utilizzare lo sketch presente negli esempi che troverete all’interno della cartella della libreria Adafruit_VL53L0X: vl53l0X_dual

#include "Adafruit_VL53L0X.h"

// indirizzi assegnati se sono presenti due sensori
#define LOX1_ADDRESS 0x30
#define LOX2_ADDRESS 0x31

// impostazione dei pin per lo spegnimento dei sensori
#define SHT_LOX1 7
#define SHT_LOX2 6

// creazioni degli oggetti vl53l0x
Adafruit_VL53L0X lox1 = Adafruit_VL53L0X();
Adafruit_VL53L0X lox2 = Adafruit_VL53L0X();

// per memorizzare le misure
VL53L0X_RangingMeasurementData_t measure1;
VL53L0X_RangingMeasurementData_t measure2;

/*
  - Il reset dei sensori viene fatto impostando tutti i pin XSHUT a LOW per 10 millisecondi 'delay(10)',
    successivamente, per uscire dal reset tutti gli XSHUT vemgono posti ad HIGH.
  - Mantiene il sensore 1 attivo mantenedo il pin XSHUT HIGH
  - Tutti gli altri sensori vengono disattivati ponendo a LOW i pin XSHUT
  - L'inizializzazione del sensore n.1 avviene con lox.begin(new_i2c_address). Scegliere qualsiasi diverso da 0x29 ed inferiore a 0x7F.
    Scegliere un valore compreso tra 0x30 a 0x3F.
  - Mantiene il sensore n.1 attivo e disattiva il sensore n.2 impostando il pin XSHUT ad HIGH.
  - L'inizializzazione del sensore n.2 avviene con lox.begin (new_i2c_address). Scegliere qualsiasi diverso da 0x29 o da qualsiasi indirizzo impostato per l'altro ensore.
 */
void setID() {
  // reset di tutti i sensori
  digitalWrite(SHT_LOX1, LOW);    
  digitalWrite(SHT_LOX2, LOW);
  delay(10);
  // attivazione dei sensori
  digitalWrite(SHT_LOX1, HIGH);
  digitalWrite(SHT_LOX2, HIGH);
  delay(10);

  // attivazione di LOX1 e reset di LOX2
  digitalWrite(SHT_LOX1, HIGH);
  digitalWrite(SHT_LOX2, LOW);

  // inizializzazione di LOX1
  if(!lox1.begin(LOX1_ADDRESS)) {
    Serial.println(F("Errore nell'avvio del primo VL53L0X"));
    while(1);
  }
  delay(10);

  // attivazione di LOX2
  digitalWrite(SHT_LOX2, HIGH);
  delay(10);

  //inizializzazione di LOX2
  if(!lox2.begin(LOX2_ADDRESS)) {
    Serial.println(F("Errore nell'avvio del secondo VL53L0X"));
    while(1);
  }
}

void read_dual_sensors() {
  
  lox1.rangingTest(&measure1, false); // se si inserisce 'true' si avvia la stampa dei dati di debug!
  lox2.rangingTest(&measure2, false); // se si inserisce 'true' si avvia la stampa dei dati di debug!

  // stampa la lettura dei dati del primo sensore
  Serial.print("1: ");
  if(measure1.RangeStatus != 4) {     // se non si è fuori portata
    Serial.print(measure1.RangeMilliMeter);
  } else {
    Serial.print("Fuori portata");
  }
  
  Serial.print(" ");

  // stampa la lettura dei dati del secondo sensore
  Serial.print("2: ");
  if(measure2.RangeStatus != 4) {
    Serial.print(measure2.RangeMilliMeter);
  } else {
    Serial.print("Fuori portata");
  }
  
  Serial.println();
}

void setup() {
  Serial.begin(115200);

  // per i dispositivi USB nativi, attende fino a quando la serial port non risulta disponibile
  while (! Serial) { delay(1); }

  pinMode(SHT_LOX1, OUTPUT);
  pinMode(SHT_LOX2, OUTPUT);

  Serial.println("Inizio spegnimento...");

  digitalWrite(SHT_LOX1, LOW);
  digitalWrite(SHT_LOX2, LOW);

  Serial.println("Entrambi in modalità ripristino...(i pin sono a LOW)");
  
  
  Serial.println("Avvio...");
  setID();
 
}

void loop() {
   
  read_dual_sensors();
  delay(100);
}

Buon Making a tutti 🙂

 

I miei corsi per Tecnica della Scuola: Google per la didattica – 9′ edizione


Nuova edizione del sempre richiesto e seguitissimo corso sulle Google Apps. In questa ultima edizione oltre che fornire una formazione di base su tutte le applicazioni, parlerò delle ultimissime funzionalità aggiunte alle varie app negli ultimi due mesi, utili soprattutto per la DaD. Nuove proposte di attività didattiche ed organizzazione del lavoro on-line ed integrazione con altri applicativi on-line.

Saranno svolti 5 incontri di 2 ore ciascuno per un totale di 10 ore di formazione

  • Martedì 19 maggio 2020 – dalle ore 16.00 alle 18.00
  • Venerdì 22 maggio 2020 – dalle ore 17.00 alle 19.00
  • Lunedì 25 maggio 2020 – dalle ore 17.00 alle 19.00
  • Giovedì 28 maggio 2020 – dalle ore 18.30 alle 20.30
  • Venerdì 29 maggio 2020 – dalle ore 17.00 alle 19.00

Per maggiori informazioni sul programma e le modalità di iscrizione vi rimando al link sul sito di Tecnica della Scuola.