Progetto didattico Micro:bit: Libro animato

Colombo Federica

Descrizione del progetto

Il progetto consiste nella progettazione e realizzazione di un libro gioco interattivo, nel quale, sulla base di alcune informazioni ottenute tramite i sensori Micro:bit, sia possibile prendere delle decisioni ed interagire con i personaggi del libro tramite i pulsanti A e B.

Destinatari

Il progetto è stato pensato per essere svolto nella scuola secondaria di I grado.

Competenze ed abilità

Il progetto è interdisciplinare in quanto prevede il coinvolgimento di vari attori e l’attivazione di diverse competenze linguistiche, artistiche, digitali, di cittadinanza. I ragazzi dovranno infatti:

  • comporre il testo narrativo (che potrebbe essere redatto sia in italiano, ma anche in una delle due lingue comunitarie studiate a scuola), cercando di contestualizzare nel modo più naturale i sensori Micro:bit che si intendono utilizzare;
  • realizzare l’oggetto fisico (il libro), prestando particolare attenzione alla gestione degli spazi, in modo da poter inserire, all’interno del libro, il Micro:bit;
  • programmare Micro:bit in modo da far interagire il lettore con i protagonisti della storia;
  • organizzare il lavoro in gruppi, in modo che ogni gruppo lavori in sinergia con gli altri.

Realizzazione del progetto

Il progetto da me realizzato descrive la semplice storia di un procione che, annoiandosi, decide di andare a giocare da un amico; il lettore viene coinvolto inizialmente senza dover operare delle scelte, ma soltanto premendo i pulsanti indicati – per prendere confidenza con lo strumento. In seguito, l’utente viene coinvolto in modo più attivo dovendo aiutare il protagonista a scegliere come vestirsi (sulla base della lettura della temperatura) e a trovare la strada giusta per raggiungere la casa dell’amico (che si trova a Nord). Il progetto prevede, quindi, l’utilizzo del sensore di temperatura e della bussola.

Quando il lettore dà la risposta giusta viene elogiato, mentre quando sbaglia viene invitato a riprovare fino a che non avrà dato la risposta corretta.

Il codice

Riporto il codice scritto in JavaScript; copiandolo nell’ambiente di programmazione di Micro:bit e passando alla programmazione a blocchi, è possibile vederne il funzionamento con il simulatore presente.

Ho introdotto diverse variabili per gestire le interazioni dell’utente: pressione_A e pressione_B indicano inizialmente quante volte sono stati premuti rispettivamente i tasti A e B, ma non sapendo di quanti tentativi necessiterà il lettore per dare la risposta giusta, ad un certo punto, anziché venire ogni volta incrementati di 1, vengono forzatamente impostati a valori piuttosto alti (10), che non dovrebbero essere raggiunti interagendo correttamente con i pulsanti A e B.
La variabile indice è stata definita sulla base dell’orientazione della bussola; è stato necessario attribuire un valore numerico alle diverse direzioni per poterle confrontare con la direzione richiesta (Nord).
La variabile risposta, infine, viene aggiornata soltanto quando l’utente risponde correttamente alla domanda posta; nel momento in cui tale variabile cambia di valore, è possibile procedere con altri cicli, mentre se il valore rimane invariato è necessario dare una nuova risposta.

let indice = 0

let risposta = 0

let pressione_B = 0

let pressione_A = 0

input.onButtonPressed(Button.A, function () {

pressione_A += 1

if (pressione_A == 1) {

basic.showIcon(IconNames.Sad)

}

if (pressione_A == 2) {

basic.showNumber(input.temperature())

}

while ((pressione_A == 3 || pressione_B == 2) && risposta == 0) {

if (input.temperature() >= 21 && pressione_A == 3 || input.temperature() < 21 && pressione_B == 2) {

basic.showString(“Grazie!”)

pressione_A = 10

pressione_B = 10

risposta = 1

} else if (input.temperature() >= 21 && pressione_B == 2 || input.temperature() < 21 && pressione_A == 3) {

basic.showString(“Sei sicuro? Riprova!”)

risposta = 0

basic.pause(1000)

}

}

if (pressione_A == 11) {

while (pressione_B >= 10) {

if (input.compassHeading() <= 45) {

basic.showString(“N”)

indice = 1

} else if (input.compassHeading() > 45 && input.compassHeading() <= 135) {

basic.showString(“E”)

indice = 2

} else if (input.compassHeading() > 135 && input.compassHeading() <= 225) {

basic.showString(“S”)

indice = 3

} else if (input.compassHeading() > 225 && input.compassHeading() <= 315) {

basic.showString(“O”)

indice = 4

} else {

basic.showString(“N”)

indice = 1

}

}

}

if (pressione_A == 12) {

basic.showIcon(IconNames.Happy)

basic.pause(1000)

basic.showString(“E’ stato bello giocare insieme!”)

}

})

input.onButtonPressed(Button.B, function () {

pressione_B += 1

if (pressione_B == 1) {

basic.showIcon(IconNames.Heart)

}

while ((pressione_A == 3 || pressione_B == 2) && risposta == 0) {

if (input.temperature() >= 21 && pressione_A == 3 || input.temperature() < 21 && pressione_B == 2) {

basic.showString(“Grazie!”)

pressione_A = 10

pressione_B = 10

risposta = 1

} else if (input.temperature() >= 21 && pressione_B == 2 || input.temperature() < 21 && pressione_A == 3) {

basic.showString(“Sei sicuro? Riprova!”)

risposta = 0

basic.pause(1000)

}

}

if (risposta == 1) {

if (indice == 1 && pressione_B >= 11) {

basic.showString(“Bravissimo! “)

risposta = 2

pressione_B = 9

} else if (indice != 1 && pressione_B >= 11) {

basic.showString(“Sicuro? Non vorrei perdermi…”)

}

}

})

pressione_A = 0

pressione_B = 0

risposta = 0

Il prodotto finale

Nelle pagine seguenti è possibile vedere il libro da me realizzato; naturalmente gli studenti saranno invitati a costruire il proprio libro, con immagini eseguite da loro. Il rettangolo presente sulle immagini costituisce l’alloggiamento del Micro:bit e va ritagliato seguendo il perimetro del rettangolo; l’impaginazione è progettata perché le parole non vengano

ALEX IL PROCIONE

ALEX IL PROCIONE OGGI SI SENTE UN PO’ TRISTE, È SOLO IN CASA E SI ANNOIA!

VUOI AIUTARLO A SENTIRSI MEGLIO?

Premi A per sapere come si sente Alex

 

BRAVO, HAI DATO AD ALEX PROPRIO UNA BELLA IDEA: PER SENTIRSI MENO SOLO PUÒ ANDARE A TROVARE IL SUO AMICO BEAR L’ORSETTO!

 

 

ALEX STA PER USCIRE DI CASA, MA NON SA COME DEVE VESTIRSI… SE DOVESSE AMMALARSI, POI LA MAMMA SI ARRABBIEREBBE!

Aiuta Alex a decidere come vestirsi: premi A per sapere quale temperatura c’è fuori e poi premi A per scegliere la giacca leggera, B per scegliere il cappotto.

ECCO ALEX CHE ESCE FINALMENTE DI CASA!

MA… UN MOMENTO, DA CHE PARTE ANDARE?

ALEX SA CHE BEAR ABITA A NORD, MA NON SI RICORDA COME ARRIVARE!

PUOI DARGLI TU UNA MANO?

Premi il tasto A per vedere in che direzione sta andando Alex e ruota il libro fino a trovare il Nord. Poi premi il tasto B.

BEN FATTO! GRAZIE AL TUO AIUTO, ALEX HA RAGGIUNTO IL SUO AMICO BEAR ED ORA POSSONO GIOCARE A DIVERTIRSI INSIEME!!!

Premi il tasto A per vedere come si sente ora Alex!

Nelle  immagini seguenti, la copertina ed alcune pagine del semplice prototipo da me realizzato.

 

Vai alla barra degli strumenti