Vai al contenuto

Guida per l'educatore Mission Zero

Mission Zero Mentor Guide

Benvenuti alla European Astro Pi Challenge 2024/25: Mission Zero. Mission Zero offre ai giovani la straordinaria opportunità di scrivere un programma per computer che verrà eseguito sui computer Astro Pi a bordo della Stazione Spaziale Internazionale (ISS) e di mostrare un'immagine colorata o un'animazione agli astronauti.

This guide for mentors provides information and tips to help you support your teams to take part.

Innanzitutto, vorremmo rivolgere un grande ringraziamento a tutti coloro che gestiscono Mission Zero con i giovani. Grazie per aver condiviso il tuo tempo, le tue conoscenze e il tuo entusiasmo per supportare la prossima generazione di creatori di tecnologia.

Prima di iniziare, controlla i criteri di idoneità.

Nessuna precedente esperienza richiesta

Non è necessaria nessuna precedente esperienza con la sfida Astro Pi, per prendere parte a Mission Zero. Per supportarti durante la mission, forniamo una serie di risorse utili per te e il tuo team.

Scoprirai di più sulle altre risorse disponibili per aiutare te e il tuo team più avanti in questa guida.

Panoramica di Astro Pi Mission Zero

L'obiettivo di Mission Zero è creare un programma che possa funzionare per 30 secondi sulla ISS e, in quel lasso di tempo, raccogliere dati dal sensore di luce del computer Astro Pi e utilizzarli per personalizzare le opzioni di colore di un'immagine o animazione, che verrà visualizzato sulla matrice LED dell'Astro Pi.

L'attività può essere completata individualmente o a gruppi di massimo 4 giovani che lavorino insieme. Una volta che i team hanno scritto e testato i loro programmi, lo sottoporranno per il controllo da parte di specialisti della Fondazione Raspberry Pi e dell'Agenzia spaziale europea. Tutti i programmi che rispettano le regole di Mission Zero saranno poi contrassegnati con lo 'stato di volo', che permetterà loro di essere eseguiti nello spazio.

Risorse e preparazione alla missione

In addition to this mentor’s guide, we provide a number of resources for Mission Zero for you and your teams.

Le Linee guida Mission Zero contengono tutti i requisiti e le istruzioni tecniche per supportare i giovani nella creazione di un programma Python a cui può essere assegnato lo stato di volo (essere eseguito su l'ISS). Consideratela come la specifica che il programma deve soddisfare per poter essere preso in considerazione per l'esecuzione sulla ISS.

La guida passo passo Mission Zero ti spiega come creare un programma pronto per lo spazio, ma se hai domande, contatta la mission di controllo Astro Pi inviandoci un'e-mail a [email protected]. Non esitate a contattarci: ci piacerebbe sentire la vostra opinione.

Per aiutarti a presentare la sfida Astro Pi e la Missione Zero, potresti utilizzare queste slide. Contiene un collegamento a una visita alla ISS in stile Google Street View, che il tuo team può esplorare per cercare dove si trovano a bordo i computer Astro Pi. La presentazione mostra anche e contiene un collegamento a questo collage PDF interattivo di alcune pixel art create per la sfida 2022/23.

Per completare Mission Zero, le squadre avranno bisogno di:

  • Un computer con una connessione Internet

  • Un browser web aggiornato

La partecipazione a Mission Zero richiede circa 1 o 2 ore di contatti/progettazione.

I tuoi team scriveranno i loro programmi utilizzando il nostro editor di codice online, che fornisce anche una vista emulata di un computer Astro Pi in modo che possano farsi un'idea di come apparirà la loro opera sulla ISS.

Cosa deve fare esattamente il programma?

There are 4 requirements that a Mission Zero program has to meet. These are helpfully displayed at the bottom of the online code editor. 

Accanto a ciascun requisito apparirà un segno di spunta verde una volta soddisfatto. I programmi eseguiti per più di 30 secondi a causa di un dispositivo lento o di una connessione Internet scarsa riceveranno un messaggio di errore anziché una casella di controllo. Puoi comunque inviare il programma della tua squadra se supera i limiti per questi motivi.

A pixel art image of a Fox

La parte davvero divertente dell'attività è progettare le immagini che verranno visualizzate sulla matrice LED 8x8. Dovresti incoraggiare i tuoi team a dedicare molto tempo a questa parte della sfida.

Eseguendo il looping di più immagini leggermente diversi tra loro, è facile creare un'animazione davvero divertente. Molti progetti dell'anno scorso sono iniziati con le immagini di esempio fornite nella guida passo passo che poi sono state animate, come il coccodrillo che azzanna, il pollo che becca e il serpente strisciante all'inizio di questa guida.

Oppure, se si sente davvero creativo, il tuo team può progettare un nuovo personaggio e animare le azioni.

To help your teams with their designs, you could print out some grids for them to fill in with coloured pencils, or use one of the many online pixel art tools, like the one at pixilart.com (make sure they select an 8x8 grid). Creating new colours can also really enliven a project. There are plenty of online colour-mixing tools like this that can be used to craft a particularly vivid shade of whatever. 

Puoi incoraggiare i tuoi team a essere creativi quanto vogliono, ma ricorda loro che esistono alcune restrizioni sul tipo di contenuto accettabile per la visualizzazione sulla ISS. Le immagini e le animazioni non devono contenere:

  • Qualsiasi cosa possa essere interpretata come di natura illegale, politica o sensibile

  • Bandiere, poiché purtroppo in alcuni contesti possono essere considerate politicamente sensibili

  • Tutto ciò che fa riferimento o suggerisce disgrazie o danni a un'altra persona

  • Dati personali come numeri di telefono, account social e indirizzi e-mail

  • Immagini oscene

  • Linguaggio scurrile o parolacce

Tutte le proposte vengono controllate attentamente e modi subdoli per cercare di far approvare qualcosa al team di test non avranno successo. Ad esempio, scrivere un messaggio inappropriato un carattere alla volta. È una buona idea assicurarsi che ogni giovane partecipante sia a conoscenza di queste restrizioni. Ogni anno dobbiamo deludere alcuni partecipanti non pubblicando i loro programmi perché contengono bandiere.

How to register as a Mission Zero mentor

You can register as a Mission Zero mentor via the Astro Pi website. Click on the Mission Zero link at the top of the page. Then scroll down and click on the registration link.

Questo è un processo semplice che implica semplicemente la creazione di un account Raspberry Pi. Se ne possiedi già uno, le cose sono ancora più semplici e puoi semplicemente effettuare il login.

Se non disponi di un account Raspberry Pi, fai clic sul collegamento per crearne uno e fornire i soliti dati. Ti verrà inviato via email un codice di verifica per completare la registrazione.

Una volta effettuato l'accesso, ti verrà chiesto di accettare alcune norme sulla privacy prima di continuare. Quindi seleziona Mission Zero.

Ti verranno poste alcune domande più semplici, incluso dove intendi eseguire Mission Zero. Potrebbe trattarsi di una scuola, di un club, di un gruppo scout, da qualche altra parte o forse di tutti questi. Se intendi iscrivere squadre provenienti da luoghi diversi (ad esempio un CoderDojo e un gruppo Scout), comunicaci semplicemente quello da cui pensi che arriveranno la maggior parte delle tue iscrizioni.

Successivamente, vedrai una schermata come questa, con visualizzato il codice della tua classe. Questa è l'unica cosa di cui i tuoi team avranno bisogno per inviare i loro programmi e li collegherà automaticamente al tuo account.

Non esiste alcun limite al numero di team che possono inviare proposte utilizzando il codice della tua classe. Verifica che i tuoi team soddisfino i criteri di idoneità qui.

Come inviare una voce

Quando i tuoi team hanno un programma funzionante e le caselle nella parte inferiore dell'editor del codice sono spuntate, possono inviare il loro programma. Dopo aver inserito il codice della tua classe e scelto il nome della squadra, passeranno a un breve modulo che richiede alcuni dettagli.

Se più di un partecipante ha lavorato a questo programma, clicca su +Aggiungi membro del team per aggiungere anche i suoi dettagli. Il nome del team e il nome di tutti i membri del team appariranno sui certificati univoci che verranno inviati una volta che i programmi saranno stati eseguiti sulla ISS.

Sul retro di ogni certificato ci sarà anche una mappa che mostra la posizione della ISS sopra la Terra nel momento in cui è stato eseguito il programma.

Riceverai una email per ogni squadra che partecipa. Se stai eseguendo Mission Zero con un gruppo numeroso, puoi utilizzare queste e-mail per verificare che tutte le iscrizioni siano state inviate correttamente. Puoi anche controllare queste informazioni accedendo al tuo account Raspberry Pi e controllando l'hub Mission Zero.

MZ submission of a rainbow

Risoluzione dei problemi Mission Zero

Salvataggio del lavoro tra una sessione e l'altra I team possono salvare i propri programmi facendo clic sul pulsante Salva nel progetto iniziale di Mission Zero. Dovranno inserire il nome della squadra, il nome di ciascun membro e il codice della classe che hai fornito loro. Quindi ti preghiamo di concedere un po' di tempo per questo nella tua sessione.

Caricamento del programma Per caricare un programma, i tuoi team possono semplicemente inserire il codice della classe e il nome del team e il programma salvato verrà visualizzato nel progetto iniziale di Mission Zero.

Perché il mio programma non funziona? È difficile prevedere quali errori di programmazione potrebbero riscontrare i tuoi programmatori, ma alcuni di quelli comuni sono mostrati di seguito. Come regola generale, controlla sempre con il codice di esempio mostrato nella guida passo passo e cerca eventuali errori di battitura e differenze nella formattazione della riga. La guida passo passo incoraggia i programmatori ad apportare piccole modifiche e aggiunte al codice e quindi a eseguire il programma per verificare che tutto funzioni. Questo approccio rende molto più semplice individuare un errore.

Ecco alcuni esempi di errori che potresti incontrare:

NameError: il nome 'c' non è definito alla riga 16 di main.py

Non c'è niente di sbagliato in nessuna delle righe di codice in questo esempio. Tuttavia, le variabili di colore a lettera singola utilizzate nell'immagine non vengono definite se non dopo l'elenco che costituisce l'immagine stessa. Lo spostamento delle righe 27–30 sopra la definizione dell'elenco che inizia alla riga 16 risolverà questo problema. Impara che non puoi usare una variabile in Python finché non le hai assegnato un valore.

screen grab of c not defined mz CODE error

"La mia animazione non funziona"

In questo caso, il programma verrà eseguito senza alcun errore, ma sembrerà visualizzare solo la seconda immagine nella sequenza di animazione. Questo perché non c'è pausa tra la visualizzazione dei due fotogrammi. L'aggiunta di un'istruzione sleep(1) tra le linee 45 e 46 risolverà il problema.

Screen grab of MZ starter project code error

SyntaxError: input errato alla riga 34 di main.py

La riga 34 è rientrata, allineata con l'elenco precedente. La tabulatura all'inizio di quella riga dovrebbe essere rimossa.

MZ starter code error screen grab - indentation

SyntaxError: input errato alla riga 33 di main.py

A parte il numero di riga riportato, questo sembra identico al problema precedente. Tuttavia, la causa è leggermente diversa. In questo caso, la parentesi quadra di chiusura dell'elenco manca alla fine della riga 30. Questo è un problema comune: a volte il numero di riga riportato nel messaggio di errore non indica la posizione corretta dell'errore.

Screen grab of MZ starter project code error

NameError: il nome 'set_pixels' non è definito alla riga 33 di main.py

Il problema qui può essere difficile da individuare, soprattutto se stai guardando alle spalle del programmatore su un piccolo schermo. È solo un errore di battitura di un singolo carattere: la virgola tra sense e set alla riga 33 dovrebbe essere un punto.

Screen grab of MZ starter project set_pixels code error

Ho finito

È possibile creare un programma che soddisfi i requisiti aggiungendo solo un paio di righe al codice iniziale. Se hai un programmatore veloce che ha fatto questo, o qualcuno che ha scoperto l'esempio completo e lo ha soltanto incollato, incoraggialo a personalizzare davvero il suo lavoro aggiungendo fotogrammi aggiuntivi alla sua animazione o scegliendo colori vivaci.

Qualcosa è andato storto e ho perso il mio programma

A volte i programmatori possono chiudere accidentalmente la scheda o il browser o si può verificare un problema con il computer. Se ciò accade, vale la pena riaprire tutto poiché esiste la possibilità che una versione sia memorizzata nella cache. Se così non fosse, sfortunatamente non è possibile fare nulla per recuperare il lavoro a meno che non lo si sia salvato in precedenza. Inevitabilmente, questi tipi di problemi si verificano verso la fine della sessione, quando non c'è abbastanza tempo per ricominciare dall'inizio. Tuttavia, la sezione 4 della guida passo passo contiene una versione completa di un programma Mission Zero valido. I team sfortunati possono copiare e incollare questo codice per ottenere rapidamente qualcosa su cui lavorare. Non aiuterà se avranno passato anni a lavorare su un'animazione straordinaria, ma almeno potranno inviare qualcosa, farlo girare sulla ISS e ricevere un certificato.

Se il tuo team produce molte righe di codice, consiglia loro di salvare il proprio codice a intervalli regolari.

Il mio programma dura più di 30 secondi

Anche se un programma Mission Zero è composto da 29 fotogrammi con un ritardo di 1 secondo tra di loro, a volte potrebbero essere necessari più di 30 secondi per l'esecuzione se viene eseguito su un computer più vecchio. Se il programma esegue in loop la stessa immagine mostrata nella guida passo passo, la soluzione migliore è semplicemente ridurre il numero di loop in modo che venga completato in meno di 30 secondi. Se sono presenti 29 fotogrammi univoci di un'animazione personalizzata, riduci il tempo di pausa tra le immagini.

Il codice della classe non funziona

Controlla che sia stato digitato correttamente. I codici di classe utilizzano trattini tra le due parole componenti. Inoltre fanno distinzione tra maiuscole e minuscole.

Ogni anno ai mentori viene assegnato un nuovo codice classe, a cui è possibile accedere da Mission Hub. Se in precedenza ti sei registrato con un account Raspberry Pi nel 2023/24, visita semplicemente Mission Hub per vedere il tuo nuovo codice per il 2024/25.

Registrati per il tuo account mentore qui se è la prima volta che partecipi a Mission Zero. Una volta registro, vedrai il codice della tua aula per l'anno scolastico 2024/25.