Lezione 2: Utilizzo dei blocchi di confronto e guida fino a vicino
In questa lezione, creerai un progetto che porta il robot VR alla lettera "A" utilizzando il sensore di distanza con il blocco reporter <Less than> booleano. Nella mini-sfida, applicherai queste abilità per navigare dall'inizio del Labirinto del Muro al numero "1".

Risultati di apprendimento
- Identificare che il <Greater than> blocco è un blocco booleano che segnala se il primo valore è maggiore del secondo valore.
- Identificare che il <Less than> blocco è un blocco booleano che segnala se il primo valore è inferiore al secondo valore.
- Identificare che i <Less than> blocchi <Greater than> o riportino un valore VERO o FALSO in un blocco [Wait until].
- Descrivere come creare un progetto che ha un robot VR che avanza fino a quando il valore del sensore di distanza è inferiore a un valore di soglia di 50 millimetri (mm).
Nomina e salva il progetto
- Avviare un nuovo progetto in VEXcode VR e denominare il progetto Unit5Lesson2. Ricorda che puoi utilizzare blocchi VEXcode, blocchi Switch o una combinazione di entrambi i tipi di blocchi per il tuo progetto.

Usa il sensore di distanza per evitare le pareti
- Trascinare il blocco [Drive] nell'area di lavoro.

- Collegare un blocco [Wait until] sotto il blocco [Drive].

Questo progetto utilizzerà il sensore di distanza per navigare attraverso il parco giochi del labirinto a muro senza sbattere contro i muri. In questo progetto utilizzerai il blocco (Distanza da) all'interno del blocco <Less than> booleano.
I <Less than>, <Greater than>, e <Equal to> sono blocchi di confronto: confrontano i valori. Sono anche blocchi di reporter booleani che riportano un valore VERO quando viene soddisfatta la condizione di confronto e FALSO quando la condizione NON viene soddisfatta.
- <Less than> riporta TRUE quando il primo valore è minore del secondo valore e FALSE quando il primo valore è maggiore o uguale al secondo valore.

- <Greater than> riporta TRUE quando il primo valore è maggiore del secondo valore e FALSE quando il primo valore è minore o uguale al secondo valore.

- <Equal to> riporta TRUE quando i due valori sono esattamente uguali e FALSE quando non lo sono.

I blocchi di confronto possono accettare decimali, numeri interi o blocchi numerici. Accettano anche blocchi di reporter rotondi, come il blocco (Distanza da). Il blocco (Distanza da) può essere con un blocco di confronto quando si utilizza il sensore di distanza in un progetto.
In questo esempio, il blocco riporterà TRUE quando la distanza da un oggetto e dal sensore di distanza su un robot VR è inferiore a 50 millimetri (mm).

- Trascinare il blocco <Less than> booleano nel blocco [Wait until].
- Posizionare il blocco rotondo (Distanza da) all'interno del blocco reporter booleano

- Il blocco [Wait until] manterrà il robot VR in avanti fino a quando la condizione non viene soddisfatta e la distanza riportata è inferiore a 50 millimetri (mm). Quindi, il progetto passerà al blocco successivo nella pila, che sarà il blocco [Stop driving].

- Un blocco [Stop driving] è necessario dopo il blocco [Wait until] perché il robot VR continuerà a guidare fino a quando non gli verrà ordinato di fermarsi. Aggiungi un blocco [Stop driving] al progetto.

- Avviare il Wall Maze Playground se non è già aperto ed eseguire il progetto.
- Guardare il robot VR guidare dall'inizio del labirinto a parete e fermarsi quando il sensore di distanza segnala che si trova a meno di 50 millimetri (mm) dalla parete.

- Utilizzando il <Less than> blocco con il blocco (Distanza da) all'interno del blocco [Attendere fino a], indica al Robot VR di attendere fino a quando non si trova a meno di 50 millimetri (mm) dalla parete prima di fermarsi.
- Ripristinare il parco giochi per riportare il robot VR alla posizione di partenza.
Utilizzo di blocchi di interruttori
In questa lezione, hai imparato a conoscere i blocchi <Equal to> booleani <Greater than> <Less than>, e. L'immagine seguente mostra i blocchi di confronto booleani dello switch. Affinché un blocco booleano Switch funzioni come previsto, le funzioni Switch Python devono essere inserite con l'ortografia e la punteggiatura corrette.
Si noti che il <Equal to> blocco Switch utilizza due segni uguali (==). Questo perché in Python, un segno di uguale (=) rappresenta un'assegnazione di un valore (ad esempio, x = 10), mentre due segni di uguale (==) controllano se due valori sono uguali. Assicurarsi di utilizzare due segni uguali quando si utilizza il <Equal to> blocco Switch. 
Hai anche visto un progetto di esempio in cui il robot VR avanzerà fino a quando la distanza riportata è inferiore a 50 millimetri (mm) da un oggetto. Quindi, il robot VR si fermerà. Il progetto a destra mostra i corrispondenti comandi Python all'interno di un blocco Switch. Il comando, pur non essendofront_distance.get_distance (MM) < 50 dice al robot di verificare se la distanza riportata è inferiore a 50 MM da un oggetto.
La riga di codice rientrata successiva, wait (5, MSEC), mette in pausa il codice per 5 millisecondi. Il comando che controlla se la distanza riportata è inferiore a 50 MM da un oggetto attenderà 5 MSEC prima di verificare nuovamente la condizione.

Selezionare il pulsante Avanti per continuare con il resto della lezione.