Sensore di movimento – diodo luminoso e contatore

Il sensore di movimento è il modulo digitale di ingresso del set di BOSON e come tale si può collegare a qualsiasi pin della scheda. Si attiva quando rileva il movimento nello spazio (pin a cui è collegato assume il valore 1, altrimenti è a 0). Quando rileva il movimento rimane in stato attivo circa 5 secondi e poi di nuovo diventa innattivo se non ci sono più movimenti, ovvero i cambiamenti (fino alla prossima attivazione).

Questo esempio mostra come il modulo digitale di ingresso (sensore di movimento) gestisce il funzionamento del modulo digitale diuscita (diodi luminoso).

Compito

Create il programma in cui attraverso il sensore di movimento conterete quante volte qualcuno è passato vicino al sensore. Al momento del rilevamento di movimento deve accendersi il diodo luminoso e il numero deve essere visualizzato sullo schermo del micro:bit.

Collegamento di moduli

Inserite il micro:bit nella scheda. Nei posti per collegamento dei moduli elettronici collegate con i cavi il sensore di movimento e il diodo luminoso come mostrato dallo schema di circuito. Il sensore di movimento come modulo digitale di ingresso può essere collegato a qualsiasi pin della scheda. Il diodo luminoso può essere il modulo digitale o analogo di uscita e anche esso può essere collegato a qualsiasi pin. In questo esempio, secondo lo schema di circuito, il sensore di movimento è collegato al pin P0 e il diodo luminoso al pin P1. Collegate il micro:bit al computer con il cavo USB per dare l’alimentazione al circuito e per trasferire il programma su micro:bit.

Come creare il programma

Passo 1

All’inizio del programma create la variabile numero nella quale verrà memorizzato il valore di quante volte il sensore ha rilevato il movimento. Create anche la variabile rileva alla quale all’inizio attribuite il valore logico true dalla categoria Logic. La variabile rileva serve a regolare la somma esatta del rilevamento di movimenti. Quando essa e vera (true), il micro:bit aumenterà la variabile numero durante il rilevamento di movimento. Però, la variabile rileva poi deve diventare falsa (false) per impedire al valore della variabile numero ad aumentare anche durante il periodo quando il sensore di movimento rimane innattivo (5 secondi dal rilevamento del movimento). Il resto della spiegazione continua nel passo 4 della creazione di questo programma.

Collocate entrambe le variabili nel blocco on start.

Passo 2

Nel ciclo forever bisogna definire la condizione con la quale si verifica se il sensore di movimento ha rilevato il cambiamento. Se qualcuno si è avvicinato al sensore, esso assume il valore 1 e il diodo luminoso si accende. Per accendere il diodo luminoso il micro:bit deve impostare il valore 1 al pin a cui esso è collegato (digital write pin1 to 1).

Passo 3

Altrimenti, quando il sensore di movimento non rileva cambiamento, la variabile rileva di nuovo diventa vera (true), e il diodo luminoso si spegne (digital write pin1 to 0).

Passo 4

Per poter contare quante volte il sensore ha rilevato un movimento, nella parte if dell’istruzione nel ciclo forever bisogna mettere una nuova istruzione if then e collocarla sotto le istruzioni esistenti. All’interno di essa bisogna definire: se la variabile rileva e vera, allora il valore del variabile numero deve aumentare di 1, e la variabile rileva deve poi diventare falsa. Ciò è necessario per impedire al contatore di contare più di uno al momento in cui il sensore rileva il movimento. Dopo l’istruzione if then mettete l’istruzione show number. Adesso sullo schermo di micro:bit verrà visualizzato il numero che ci dice quante volte qualcuno è passato vicino al sensore.

Tags: