In questi giorni ho risposto ad alcune domande di una collega che sta preparando lezioni sull’uso del BBC micro:bit per l’inizio del prossimo anno scolastico. Mi chiedeva chiarimenti sull’oggetto play e, in particolare, sul significato di beat, con l’obiettivo di spiegarlo in modo semplice e chiaro ai propri studenti. Poiché la questione è ricorrente anche tra i miei allievi, condivido qui la spiegazione completa.
Che cosa significa “beat”?
Nel blocco music.playTone o quando compare l’indicazione Middle C 1 beat, il termine beat indica l’unità di tempo musicale: il battito base, cioè la durata di una nota in funzione del tempo espresso in BPM (battiti per minuto).
Il micro:bit prende come riferimento il tempo corrente (default: 120 BPM).
In pratica:
- Se il tempo è 120 BPM, 1 beat dura 500 ms (0,5 s).
- Se il tempo è 60 BPM, 1 beat dura 1000 ms (1 s).
Da qui si deduce che:
- play tone Middle C for 1 beat → riproduce il Do centrale per la durata di un battito.
- 2 beats dura il doppio;
- 1/2 beat dura la metà.
Quanto dura “Middle C 1 beat”?
La domanda tipica degli studenti è: “Quanti millisecondi dura questa nota?”
Dipende dal tempo (BPM) impostato: il micro:bit usa il tempo corrente (default: 120 BPM).
- A 120 BPM → 1 beat = 500 ms → la nota dura mezzo secondo.
- A 60 BPM → 1 beat = 1000 ms → la nota dura 1 secondo.
- A 180 BPM → 1 beat ≈ 333 ms → la nota dura circa un terzo di secondo.
Possiamo adottare la seguente formula generale per dedurre il numero di ms (millisecondi) partendo dai BPM:
Per rendere più immediata la comprensione in classe, di seguito una tabella di corrispondenza e il grafico delle durate:
Durata in beat | 60 BPM (1 beat = 1000 ms) | 90 BPM (1 beat = 667 ms) | 120 BPM (1 beat = 500 ms) | 180 BPM (1 beat = 333 ms) |
---|---|---|---|---|
1 beat | 1000 ms (1,0 s) | 667 ms (0,67 s) | 500 ms (0,5 s) | 333 ms (0,33 s) |
1/2 beat | 500 ms | 333 ms | 250 ms | 167 ms |
1/4 beat | 250 ms | 167 ms | 125 ms | 83 ms |
1/16 beat | 62,5 ms | 42 ms | 31 ms | 21 ms |
2 beat | 2000 ms (2 s) | 1333 ms (1,33 s) | 1000 ms (1 s) | 667 ms (0,67 s) |
4 beat | 4000 ms (4 s) | 2667 ms (2,67 s) | 2000 ms (2 s) | 1333 ms (1,33 s) |
Il concetto di beat in MakeCode è un ponte naturale tra programmazione e musica: mostra come il tempo (BPM) determini la durata delle note e come la matematica entri nei calcoli temporali. È un chiaro esempio di integrazione STEAM. Grazie alla collega per lo spunto: la sua domanda mi ha dato l’occasione di chiarire ancora meglio l’uso dei blocchi “Music”.
Buon Coding a tutti 🙂