Skip to main content

Lezione 3: Utilizzo del feedback del sensore riportato per posizionare i dischi nell'obiettivo

Nella lezione 2, il robot VR ha guidato in retromarcia fino al punto di partenza per rilasciare il disco. Ciò ha richiesto all'utente di calcolare la distanza esatta da percorrere per il robot VR. Questo potrebbe non essere sempre possibile. Invece, il robot VR può utilizzare i valori del sensore riportati per raccogliere e rilasciare i dischi con precisione costante. 

La lezione 3 utilizza il feedback del sensore riportato per determinare dove il robot VR dovrebbe smettere di guidare quando ritorna all'obiettivo. Nell'utilizzare il <Eye Sensor near object> blocco in precedenza in questa lezione, non è necessario conoscere la distanza dall'obiettivo a ciascun disco.

VR Robot on the Disk Mover Playground with the first blue Disk attached to the Electromagnet.

Il robot VR tornerà verso l'obiettivo blu utilizzando i dati del sensore di distanza per determinare dove interrompere la guida. Una volta che il robot VR si è fermato all'interno dell'obiettivo blu, il robot VR lascerà cadere il disco blu.

  • Continua a lavorare nel progetto Unit8Lesson3.
  • Il sensore di distanza misura la distanza dalla parte anteriore del robot VR all'oggetto più vicino. Per questo motivo, il robot VR dovrà ruotare di 180 gradi prima di tornare verso l'obiettivo blu.
  • Il robot VR utilizzerà il sensore di distanza con la parete posteriore del parco giochi per determinare dove far cadere il disco. Per questo motivo, il robot VR dovrà ruotare di 180 gradi prima di tornare verso l'obiettivo blu.
  • Il blocco [Turn to heading] può essere utilizzato per garantire che il robot VR si giri nella direzione corretta.

    VEXcode VR Passare al blocco di intestazione dalla cassetta degli attrezzi. Sul blocco c'è scritto "Gira a 90 gradi".

Utilizzo di blocchi di interruttori 

Questo è il blocco Interruttore [turn to heading]. È possibile modificare il grado di virata modificando il valore numerico tra parentesi. Ricorda che il numero deve essere scritto prima dell'unità di misura (GRADI), separati da una virgola. 

VEXcode VR Passare al blocco di intestazione Switch, con il comando Python che legge il punto di trasmissione turn_to_heading (90, GRADI).

Per tua informazione

Il blocco [Turn to heading] trasforma il robot VR in una voce specifica utilizzando il sensore giroscopico. La direzione in cui il robot VR girerà (a sinistra o a destra) è determinata in base alla direzione corrente del sensore giroscopico. Il blocco [Turn to heading] viene utilizzato per indirizzare il robot VR verso una direzione specifica indipendentemente dalla posizione del robot VR. Quando si solleva o si rilascia un disco, il robot VR potrebbe andare fuori rotta. L'utilizzo del blocco [Turn to heading] garantisce che il Robot VR si giri nella posizione assoluta piuttosto che in una posizione relativa all'intestazione precedente.

Un diagramma delle posizioni di intestazione in gradi del robot VR. C'è un cerchio con una vista dall'alto verso il basso del robot VR al centro, con la parte anteriore del robot rivolta verso l'alto verso la direzione di 0 gradi. In senso orario, ogni successiva intestazione di 90 gradi è contrassegnata come 90 gradi, 180 gradi e 270 gradi.
  • Aggiungi un blocco [Turn to heading] sotto il terzo commento.

    Lo stesso progetto VEXcode VR della pagina precedente, con un passaggio al blocco di intestazione aggiunto sotto il terzo commento. Il progetto ora legge All'avvio, commentare Drive al primo disco blu, con un Repeat fino a quando l'occhio in basso è vicino all'oggetto, guidare in avanti, quindi smettere di guidare. Il prossimo è un commento per prendere il primo disco blu con un elettromagnete di eccitazione per aumentare il blocco. Il terzo commento legge drive to the blue goal e passa a heading 90 degrees block next.
  • Impostare il blocco [Turn to heading] a 180 gradi.

    Lo stesso progetto VEXcode VR con il parametro del blocco Turn to heading modificato a 180 gradi. Ora, la terza sezione di commento del progetto è Drive to the blue goal, Turn to heading 180 degrees.
  • Ora che il robot VR è orientato verso la posizione di partenza, il robot VR dovrà tornare all'obiettivo blu. Aggiungere un blocco [Repeat until] sotto il blocco [Turn to heading].

    Lo stesso progetto VEXcode VR con un blocco Repeat until aggiunto dopo il blocco Turn to heading. Il parametro del blocco Ripeti fino a quando non è vuoto.
  • Per tornare all'obiettivo blu, il robot VR utilizzerà i dati del sensore di distanza per determinare quando il robot VR si trova all'interno dell'obiettivo blu. Come discusso nella lezione precedente, ogni quadrato della griglia sul Disk Mover Playground misura 200 millimetri (mm) per 200 millimetri (mm).

    Una vista ravvicinata dall'alto verso il basso dell'angolo in basso a sinistra del Disk Mover Playground con le dimensioni di un quadrato a griglia sul Playground mostrato come 200 mm di altezza per 200 mm di larghezza.
  • Utilizzando tali misurazioni, è possibile determinare che il centro dell'obiettivo blu si trova a circa 200 millimetri (mm) dalla parete del parco giochi.

    Una vista ravvicinata dall'alto verso il basso dell'obiettivo blu nell'angolo in basso a sinistra del Disk Mover Playground, con la dimensione approssimativa dal muro al centro dell'obiettivo etichettata come 200 mm.
  • Il robot VR dovrebbe smettere di guidare quando il sensore di distanza segnala che il robot VR si trova a meno di 200 millimetri (mm) dalla parete del parco giochi. Aggiungere i seguenti blocchi al blocco [Ripeti fino a].

    Lo stesso progetto VEXcode VR con un blocco operatore minore di con una distanza anteriore del nido in mm nel parametro del blocco Ripeti fino a. Ora, la terza sezione di commento del progetto recita Guidare verso l'obiettivo blu; passare alla direzione 180 gradi; Ripetere fino a quando la distanza anteriore in mm è inferiore a 50.
  • Modificare il parametro nel <Less than> blocco a 200.

    Lo stesso progetto, con il parametro del blocco minore modificato in 200. Ora il blocco Ripeti fino a recita "Ripeti fino a quando la distanza anteriore in mm è inferiore a 200".
  • Aggiungere un blocco [Drive] in questo blocco [Repeat until]. Questo istruirà il robot VR a guidare in avanti fino a quando il sensore di distanza segnala una distanza inferiore a 200 millimetri (mm).

    Lo stesso progetto con un blocco Drive aggiunge all'interno della C del blocco Repeat until. La terza sezione di commento del progetto ora legge Drive to the blue goal; Girare a 180 gradi, ripetere fino a quando la distanza anteriore in mm è inferiore a 200, avanzare.
  • Una volta che il robot VR ha raggiunto l'obiettivo blu (200 mm dalla parete), il robot VR dovrà smettere di guidare. Aggiungere un blocco [Stop driving] sotto il blocco [Repeat until].

    Lo stesso progetto con un blocco Stop driving aggiunto dopo il blocco Repeat until. La terza sezione di commento ora recita Guida verso l'obiettivo blu; Ripeti fino a quando la distanza anteriore in mm è inferiore a 200, Guida in avanti; quindi smetti di guidare.
  • Ora che il robot VR è fermo nell'obiettivo blu, può far cadere il disco. Aggiungere un blocco [Energize Electromagnet] sotto il quarto commento e impostare il blocco su "drop".

    Lo stesso progetto con un blocco elettromagnete Energize, con il parametro impostato su drop, aggiunto dopo il quarto commento. La quarta sezione di commento ora recita Rilascia il disco blu nell'obiettivo blu, Energizza il magnete per farlo cadere.
  • Il robot VR dovrà guidare in retromarcia a breve distanza per evitare il ribaltamento o la collisione con i dischi. La collisione con un disco potrebbe potenzialmente far andare fuori rotta il robot VR. Aggiungere i seguenti blocchi per indicare al robot VR di guidare in retromarcia per 100 millimetri (mm) e tornare a una direzione di 0 gradi.

    Lo stesso progetto con un Drive for block e un Turn to heading block aggiunti al fondo della pila. Ora, il quarto commento recita Rilasciare il disco blu nell'obiettivo blu; Energizzare il magnete per farlo cadere; Guidare in retromarcia per 100 mm, girare in direzione 0 gradi.
  • Aprire il Disk Mover Playground se non è già aperto ed eseguire il progetto.
  • Il robot VR avanza, raccoglie il primo disco, quindi si gira a una direzione di 180 gradi per affrontare l'obiettivo blu. Il robot VR utilizza quindi i valori del sensore di distanza per determinare quando interrompere la guida e rilasciare il disco blu.

    Una vista laterale ravvicinata del Disk Mover Playground con il Blue Disk posizionato nella porta blu e il VR Robot rivolto verso i dischi rimanenti sul Playground, ai margini della porta blu.
  • Nota come funziona il secondo blocco [Ripeti fino a] in questa parte del progetto.
    • Quando il sensore di distanza sul robot VR rileva che la parete del parco giochi è a meno di 200 millimetri (mm) di distanza, il progetto si sposterà al blocco successivo nella pila sotto il blocco [Ripeti fino a].
    • In questo progetto, ciò significava che il robot VR smetteva di guidare e lasciava cadere l'elettromagnete nell'obiettivo blu.

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