Archivi tag: coding

FutureLabs – Corso: Attività laboratoriale per fornire competenze per la comunicazione digitale e produzione di mediatori didattici multidisciplinari

Presso il FutureLabs dell’ITIS Pininfarina, istituto presso cui insegno, svolgerò il corso di formazione gratuito:

Attività laboratoriale per fornire competenze per la comunicazione digitale e produzione di mediatori didattici multidisciplinari.

Il corso intende fornire, mediante una metodologia laboratoriale, competenze digitali finalizzate alla comunicazione digitale e produzione di mediatori didattici multidisciplinari realizzabili da docenti e studenti. Il corso è indirizzato a tutti i docenti di ogni ordine e grado.

Tutti gli incontri si svolgeranno on-line e verranno proposte attività di laboratorio a distanza da svolgere in modalità sincrona ed asincrona.

Destinatari: docenti di scuola dell’infanzia, primaria e secondaria di 1° e 2° grado Periodo di svolgimento: n.6 incontri di 3 ore ciascuno nel periodo compreso tra il 23/03.2021 e il 15/04/2021. Per ogni incontro sarà riconosciuta una ulteriore ora in autoformazione.
Iscrizioni: dal 23/2/2021 al 1/3/2021 compilando il form al seguente link. Nel form selezionare come prima scelta: Attività laboratoriale per fornire competenze per la comunicazione digitale e produzione di mediatori didattici multidisciplinari.

Si precisa che al corso saranno ammessi 40 partecipanti. Al corso saranno accettate le domande in ordine cronologico di arrivo e i docenti ammessi riceveranno  mail di conferma entro il 4/3/2021.

Argomento del corso sarà la didattica laboratoriale, con particolare attenzione all’uso di specifiche tecnologie: micro:bit, micro:bit Arcade, Arduino, Raspberry Pi, Raspberry Micro. Verranno offerte percorsi didattici completi su Coding e Robotica, proponendo soluzioni opensource e bassissimo costo per ogni ordine di scuola.

Contenuti del corso

Contenuti generali del corso che potranno essere declinati in funzione delle necessità dei corsisti

  • Progetto dell’attività di laboratorio: dalla ricerca delle fonti alla produzione dell’attività di laboratorio (organizzazione)
  • Processi di apprendimento: il ruolo dei nuovi media nella didattica
  • Progettazione di ambienti per la didattica con il digitale: gestire la classe e il laboratorio online
  • Tecniche di costruzione di contenuti digitali per la didattica – metodologie
  • L’utilizzo di video e della fotografia nella didattica – tecnologie e strumenti
  • Costruire strumenti didattici per il Mobile Learning: tecnologie e strategie
  • L’uso di piattaforme per la didattica – dalla creazione alla gestione
  • La didattica inclusiva e le opportunità dei nuovi media – strumenti
  • Coding e Robotica educativa.
    • Realizzazione di sistemi di interazione con il mondo reale: tecnologie e loro utilizzo
    • Creazione di robot: dal disegno al montaggio del robot alla programmazione
    • STEAM con la stampa 3D: disegnare modelli 3D utilizzando il Coding conoscere la tecnologia della stampa 3D
    • Simulatori online per la realizzazione di attività laboratoriali di Coding e Robotica.

Competenze in uscita

  • Sviluppo attività di insegnamento/apprendimento, con capacità nell’indicare la funzione svolta dai media e il modello didattico su cui si basano.
  • Scegliere e fornire indicazioni consapevoli per la progettazione di ambienti scolastici inclusivi coerenti con le attività didattiche programmate.
  • Utilizzare software per la realizzazione di contenuti digitali per la didattica, per la creazione di contenuti e abilità nel costruire strumenti didattici in modalità collaborativa con altri docenti e/o con i propri studenti.
  • Utilizzare software ed hardware specifico per la realizzazione di contenuti attività laboratoriali online ed in presenza, per la creazione di  contenuti e abilità nel costruire strumenti didattici in modalità collaborativa con altri docenti e/o con i propri studenti.
  • Conoscere le fasi di utilizzo dei filmati in un contesto didattico: dall’individuazione o realizzazione del video, alla condivisione e successivo confronto in classe. Utilizzo del funzionamento di software open source per editare i video, per effettuare lo “screencast” e realizzare video-lezioni utilizzando varie tipologie di contenuti.
  • Utilizzo dei principali Social Network e modalità di integrazione nelle classi per una didattica più vicina agli studenti e un uso del Mobile Learning (m-learning).
  • Creazione e gestione di una classe virtuale mediante l’uso dei principali applicativi on-line, tecniche di coinvolgimento degli studenti, condivisione di risorse, utilizzo di strumenti integrati, collaborazione con altri docenti.
  • Saper progettare attività didattiche che valorizzano il ruolo inclusivo delle tecnologie per l’intera classe e nello specifico per alunni con BES e nello specifico saper analizzare e valutare le caratteristiche di uno strumento didattico digitale in ottica inclusiva.
  • Progettare e gestire attività didattiche basate sulla programmazione di robot (soluzione di labirinti, storytelling, realizzazione di giochi didattici, controllo comportamento e interazione del robot con oggetti esterni). Analisi delle tecnologie e soluzioni didattiche.
  • Utilizzo di tecnologie specifiche per la realizzazione di attività di laboratorio per il potenziamento delle STEAM mediante specifiche tecnologie: micro:bit, micro:bit Arcade, Arduino, Raspberry Pi, Raspberry Micro. Realizzazione di attività di laboratorio.
  • Coding on line: piattaforme online gratuiti e ambienti di sviluppo fortemente interattivi.

Vi aspetto 🙂

La seconda stagione di Rob-o-Cod da lunedì 5 ottobre su Rai Gulp (canale 42) e RaiPlay


Da lunedì 5 ottobre su Rai Gulp arriva la seconda edizione di “Rob-o-Cod”, il game show dedicato al coding e la robotica. Il programma, che sarà proposto dal lunedì al sabato, alle 18.30 su Rai Gulp, canale 42, sarà inoltre disponibile anche su RaiPlay. In scena vere e proprie sfide tra robot programmati da giovani studenti, scelti tra alcune delle scuole secondarie di primo grado italiane in cui il Coding è già inserito nei piani di studio.

Anche per questa edizione ho partecipato, insieme ad altre fantastiche persone, alla progettazione dei campi gara resi poi stupendi, come vedrete in TV, dal personale di Rai. Questo lavoro estremamente creativo fatto di: invenzioni, progettazione, gioco e Coding, mi ha permesso di immaginare una didattica assolutamente diversa che cercherò di sviluppare il più possibile con i miei studenti.

Le riprese delle gare, sono state completate a gennaio 2020, prima del lockdown. Adesso, con la ripresa delle scuole, il campionato di Rob-o-cod può finalmente andare in onda. Speriamo che questa nuova edizione sia di buon auspicio per un inizio di anno scolastico sereno, positivo e costruttivo.

“Rob-O-Cod” è un programma realizzato da Rai Ragazi in collaborazione con il Centro Ricerche Innovazione Tecnologica e Sperimentazione della RAI, scritto da Armando Traverso e Mario Bellina, con la collaborazione di Luca Vignaroli (Crits Rai) e la consulenza di Michele Maffucci. La regia è firmata da Andrea Apuzzo.

Per maggiori informazioni consultare la rassegna stampa sul sito Rai.

Curiosi di saperne di più? Qui qualche anticipazione:

Se lo desiderate potete condividere i vostri pensieri sul programma su Instagram con #rob_o_cod e taggando @rai_gulp, potete inviare video e foto dei vostri robot per entrate a far parte della comunità di robocoder!!

Ricordate:
#rob_o_cod  è tutto un programma!

Errori comuni nell’uso di Arduino – inizializzazione di più variabili

La tentazione di risparmiare linee di codice è sempre in agguato e tentare di inizializzare più variabili su una sola riga è forte, però alcune volte ciò che intendiamo fare non corrisponde a ciò che correttamente intende il compilatore.

Con la scrittura:

int x, y, z = 67;

non viene assegnato il valore 67 ad ogni singola variabile, ma solamente la variabile z viene inizializzata a 67.

L’errore quindi non risiede nella scrittura, il compilatore non restituirà errore, ma nel modo in cui il programmatore intende l’assegnamento credendo che tutte le variabili vengano inizializzate a 67.

La scrittura

int x = 67, y = 67, z = 67;

permette l’assegnamento del valore 67 ad ogni singola variabile. Si ricordi di separare ogni assegnamento da una virgola, ciò accade solo e soltanto se si indicano tipo e assegnamento su stessa linea.

Per l’assegnamento di valori diversi scriveremo:

int x = 99, y = 3, z = 67;

Io in genere preferisco una scrittura di questo tipo:

int x = 99;
int y = 3;
int z = 67;

che permette di visualizzare meglio le variabili utilizzate, non favorisce fraintendimenti nell’assegnamento e permette inoltre di scrivere chiaramente un commento a lato di ogni assegnamento.

Esercizio (semplice semplice 🙂 ) per i miei studenti:

Realizzare uno sketch che dimostra quanto esposto in questo post.

Buon Coding 🙂

Errori comuni nell’uso di Arduino – fare più azioni nell’if senza l’uso delle parentesi graffe

Continua la segnalazione degli errori che spesso vengono commessi durante le prime attività di programmazione con Arduino.
La sequenza di istruzioni da eseguire se risulta vera la condizione dell’istruzione if  (il corpo della if) deve essere racchiusa tra parentesi graffe. L’errore è immaginare che l’indentazione sia sufficiente per indicarne l’appartenenza al corpo della if, modalità valida in altri linguaggi di programmazione come in Python, ma non in C:

Uso non corretto

if (temperatura > 25)
  digitalWrite (normaleTemp, LOW);
  digitalWrite (allarmeTemp, HIGH);

Uso corretto

if (temperatura > 25)
{
  digitalWrite (normaleTemp, LOW);
  digitalWrite (allarmeTemp, HIGH);
} // fine del controllo temperatura > 25

Buon lavoro 🙂

Gestire con micro:bit un display 1602 I2C

Ho realizzato questo tutorial come risposta ad un quesito che mi è stato posto da un’amica collega sull’utilizzo del display 1602 I2C comandato da micro:bit.
Per quanto riguarda la descrizione tecnica del display vi rimando al post su questo sito:

Utilizzo dell’LCD 16×2 Hitachi HD44780 1602 con modulo I2C PCF8574T

Per un utilizzo con micro:bit è sufficiente conoscere il tipo esatto di integrato I2C che gestisce la comunicazione tra display e micro:bit nella modalità indicata da questo tutorial.

Aprite un nuovo progetto dall’ambiente grafico di programmazione di micro:bit.
Aggiungiamo l’estensione che consente la gestione di un display 16×2 I2C, per far ciò selezionate “+Extensions”:

nel campo di ricerca inserite: I2C

dovreste ottenere il seguente risultato:

Selezionate l’estensione indicata nell’immagine:

All’interno dei blocchi disponibili ritroverete quelli che fanno riferimento al display:

Ogni dispositivo I2C dispone di un indirizzo, un codice a cui bisogna far riferimento in fase di programmazione e per quanto riguarda la scheda di comunicazione I2C disposta sul retro del display troverete due tipi di dispositivi con indirizzo differenti l’uno dall’altro. La differenza consiste nel tipo di circuito integrato che gestisce la comunicazione I2C:

  • PCF8574 > indirizzo 39
  • PCF8574A > indirizzo 63

L’indirizzo dovrà essere inserito all’interno di un apposito blocco come indicato di seguito.

Per sapere quale indirizzo usare potete leggere la sigla dell’integrato, come indicato nell’immagine che segue:

nel mio caso l’indirizzo da inserire sarà il 39.

L’altro metodo consiste nel sostituire, nel codice che segue, gli indirizzi sopra indicati in modo da individuare il numero corretto che permette la visualizzazione del testo sul  display.

Per il collegamento del circuito avete necessità di alimentare il display a 5V, in commercio esistono degli edge connector (connettore per collegare micro:bit alla breadboard) che prelevano dalla USB i 5 volt, nel mio caso questa funzionalità non è fornita, l’unica tensione disponibile è di 3,3V non sufficienti per alimentare il display.

Se anche voi siete nelle medesime condizioni allora alimenterete via USB il micro:bit mentre il display dovrà essere alimentato esternamente mediante una tensione di 5V. Se agite in questo modo ricordate che la terra (GND) dovrà essere la medesima (collegate insieme) per entrambi i dispositivi. Fate riferimento allo schema di seguito indicato:

Sul micro:bit il pin 20 corrisponde all’SDA e il pin 19 all’SCL, pin che avranno una corrispondenza con il display. Per le mie sperimentazioni dispongo di un cavo USB modificato per poter inserire su breadboard la tensione di 5V proveniente dalla USB del computer.

Realizzeremo un semplice programma che consente di visualizzare su due righe il testo:

BBC micro:bit
Italy timer

dove timer è il numero di secondi trascorsi dall’avvio del programma.

L’inserimento della prima istruzione provocherà la visualizzazione del display I2C:

L’istruzione “LCD initialize with Address 39” assegna al display l’indirizzo 39

L’istruzione “show string” mostrerà sul display il testo incluso nel primo campo: “BBC micro:bit” che verrà scritto a partire dalla colonna 0 e riga 0 (in prima riga).

La seconda “show string” mostrerà sul display il testo “Italy” alla colonna 0 e riga 1 (in seconda riga):

Definiamo una nuova variabile che andremo successivamente ad incrementare:

assegnamo alla variabile il nome: contatore

All’interno della funzione “forever” inserire l’istruzione “change” per incrementare di una unità la variabile “contatore”.

Con l’istruzione “show number” visualizziamo sul display un numero, inserendo nel primo campo la variabile “contatore” il numero visualizzato sarà quello memorizzato nella variabile contatore:

La visualizzazione del numero contenuto in “contatore” avverrà in colonna 6 riga 1:

Aggiungendo una pausa di 1 secondo l’incremento del numero che appare sul display sarà di 1 secondo:

Questo il risultato:

Buon Coding a tutti 🙂