Laboratorio Didattica 20130717

Da raspibo.
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

17 Luglio 2013: Serata M&M's

Tra Mentor e Maker ci siamo incontrati per definire meglio cosa presentare concretamente alla prossima MakerFaire. Quello che segue non è un vero e proprio verbale di quanto successo ma l'elenco di quello che mi ricordo sia venuto fuori durante la serata. Chi c'era integri e chi non c'era suggerisca

Non abbiamo ancora una idea precisa di quali saranno gli spazi che avremo a disposizione ne' di quali saranno le modalità di fruizione. Abbiamo in programma un CoderDojo con approssimativamente 20 partecipanti.

Sappiamo per certo che avremo a disposizione 2 tavoli e 4 sedie (Coderdojo + Raspibo) per la durata della Fiera ma non sappiamo dove e come faremo il dojo. Uno stand (gazebo?) per 20 bambini potrebbe rivelarsi angusto.

Vista l'occasione abbiamo deciso di fare un coderdojo a tema facendo pilotare/programmare dei piccoli robot che dovranno essere in grado di seguire un percorso o disegnare su un foglio un tracciato da poter regalare ai bambini.

I robot dovrebbero arrivare già funzionanti perché pensiamo che costruirne uno sia una attività troppo complessa da affrontare in sole due ore a prescindere dall'età dei partecipanti.

L'attività proposta, quindi, sarebbe la programmazione dei robot con semplici comandi tipo logo.

[NdA: Certo lasceremo una bella pesca ai Mentor di Coderdojo Roma che dopo una partenza del genere dovranno tornare ai tutorial solo software]

Tecnologia

Lato software abbiamo scoperto che Scratch ha la possibilità di pilotare/consultare sensori remoti nativamente e quindi non avremo bisogno di alcun fork di Scratch per poter pilotare i robot.

Tecnicamente il tutto viene fatto creando un socket su cui un programma client attenderà istruzioni.

Il protocollo di trasporto è semplice: viene inviato un messaggio composto da 4byte che rappresentano la lunghezza (in byte) del payload e, di seguito il payload.

Non sono fatte ulteriori assunzioni sul protocollo e quindi potremo studiarne uno ad-hoc da trasferire nel payload.

Con le nostre conoscenze attuali, e visti i tempi di sviluppo ristretti (la pausa estiva incombe e speriamo ci possa essere un dojo di prova a BO in Settembre) abbiamo stabilito che il robot, per essere autonomo, avrà bisogno di poter eseguire un interprete python che si colleghi in remoto alle macchine dei ragazzi (una per robot) e si metta in attesa di ordini. Questo significa adottare Raspberry come host.


Risorse da sfruttare

Da soli non possiamo, nel poco tempo che ci rimane, portare a termine l'impresa. Dobbiamo convolgere il gruppo robottini che ha già esperienza sul campo ed alcuni prototipi funzionanti.


Risultati

Siamo riusciti a scambiare messaggi tra un server scratch ed un client python eseguiti su macchine separate collegate via wifi.


Prossime tappe

  • Fare una lista di materiale necessario alla costruzione di un robot
  • Costruire il primo prototipo
  • Definire un protocollo di comunicazione
  • Costruire i robot veri e propri
  • Organizzare un Dojo Pilota
  • Preparare i Bagagli (ricordiarsi i Robot)
  • Andare a Roma