Codifica del sensore di distanza V5 utilizzando le disuguaglianze matematiche

Utilizzando il sensore di distanza V5 sul tuo robot durante una partita VEX Robotics Competition (VRC) puoi consentire al tuo robot di segnare più punti utilizzando movimenti autonomi.

Il gioco utilizzato come esempio per questo articolo è il gioco VRC 2021-2022, Tipping Point. Per maggiori informazioni sul gioco e su come si gioca, consulta questa pagina. Per le definizioni di gioco utilizzate in questo articolo, una panoramica delle regole del gioco e il punteggio, consultare il Manuale di gioco per Tipping Point.


Il sensore di distanza V5

Vista angolata del sensore di distanza V5.

Il sensore di distanza V5 è uno dei potenti sensori V5 progettati per la completa integrazione con la piattaforma robotica V5.

  • Questo sensore utilizza un impulso di luce laser adatto all'aula per misurare la distanza dalla parte anteriore del sensore a un oggetto.
  • Il sensore di distanza V5 può essere utilizzato per rilevare un oggetto e determinare la dimensione relativa dell'oggetto. La dimensione approssimativa di un oggetto viene segnalata come piccola, media o grande.
  • Il sensore può essere utilizzato anche per calcolare la velocità di avvicinamento di un robot. La velocità di avvicinamento misura la velocità del robot/sensore mentre si muove verso l'oggetto.

Per informazioni più dettagliate sul sensore di distanza V5, sul suo funzionamento e su come utilizzarlo con VEXcode, consultare questo articolo della libreria VEX.


Esempio di sensore di distanza V5

L'obiettivo di questo progetto è far sì che il robot raccolga e sposti un obiettivo mobile utilizzando il sensore di distanza V5 per rilevare quanto è lontano l'obiettivo.

Progetto VEXcode V5 Blocks che avanza fino a quando non rileva un obiettivo mobile, lo raccoglie e poi lo sposta. Il progetto recita: All'avvio, guidare in avanti, attendere che la distanza dell'oggetto DistanceCenter in mm sia inferiore a 139 e quindi arrestare la guida. Successivamente, ruotare i motori ForkMotors di 600 gradi e poi girarli a sinistra di 90 gradi. Successivamente, avanzare di 600 mm, ruotare i motori ForkMotors di 600 gradi verso il basso e poi invertire la marcia per 300 mm.

Questo è l'esempio di codice che verrà trattato in questo articolo.

Verrà trattato un dettaglio dei comportamenti nell'esempio e come ottenere i parametri utilizzati per codificare il sensore di distanza V5.

Puoi realizzare il progetto in VEXcode V5 seguendo l'articolo oppure puoi semplicemente leggere l'articolo per trovare ispirazione come esempio di come includere il sensore di distanza V5 quando codifichi il tuo robot personalizzato.

Questo video mostra l'esecuzione del codice riportato sopra e il robot che solleva e sposta un obiettivo mobile.

In questo esempio, il menu Dispositivi di VEXcode V5 viene aperto per mostrare la configurazione del dispositivo. Il menu elenca innanzitutto un sensore di distanza denominato DistanceCenter sulla porta 19. Successivamente, è presente un sistema di trasmissione con motori sulle porte 1 e 10 e un sensore inerziale sulla porta 3. Infine, sulle porte 2 e 9 è presente un gruppo di motori denominato ForkMotors.

Ecco la configurazione del robot utilizzata in VEXcode V5 per aggiungere il robot e il sensore di distanza alla configurazione per questo esempio, se desideri provare tu stesso l'esempio.

Robot utilizzato per questo esempio

Vista dall'alto del Moby Hero Bo, con l'aggiunta del sensore di distanza V5 evidenziato. Il sensore di distanza è posizionato dietro e sotto la forca del robot, rivolto in avanti.

Il robot utilizzato in questo esempio è il VRC Hero Bot 2021-2022, Moby. Il design di Moby non prevede sensori, per questo esempio è stato aggiunto a Moby il sensore di distanza V5.

Per questo esempio, il sensore di distanza V5 è montato vicino al centro delle forcelle Moby.

Per ulteriori informazioni su Moby, questo articolo della libreria.

Non è necessario utilizzare Moby per codificare il sensore di distanza V5 o per competere nella competizione di quest'anno. Puoi montare il sensore sul tuo robot personalizzato ovunque tu ritenga opportuno.

Nota: assicurarsi che nessuna struttura sul robot si trovi davanti alla piccola finestra laser sulla parte anteriore del sensore. È necessario che ci sia un percorso libero davanti al sensore tra la porta e il sensore.

Ripartizione dei comportamenti da valutare

Per raccogliere e spostare un obiettivo mobile utilizzando il feedback del sensore di distanza V5, per prima cosa suddividi il modo in cui il robot dovrebbe muoversi.

Il robot Moby è posizionato su un campo con una porta mobile situata a pochi metri di distanza.

Innanzitutto, il robot dovrebbe essere posizionato di fronte all'obiettivo mobile.

Il robot Moby viene mostrato mentre avanza per rilevare l'obiettivo mobile. Il Mobile Goal si trova ora all'interno delle forche del robot.

Quindi, il robot dovrebbe avanzare finché il sensore di distanza non rileva che l'obiettivo mobile si trova all'interno delle forche e vicino al sensore.

Il robot Moby viene mostrato dopo aver rilevato l'obiettivo mobile e aver alzato le braccia per raccoglierlo.

Una volta che il sensore rileva che l'obiettivo mobile si trova all'interno delle forche o vicino al sensore, il robot smette di guidare e solleva le forche per raccogliere l'obiettivo mobile.

Il robot Moby, che trasporta il Mobile Goal, ha effettuato una rotazione di 90 gradi verso sinistra.

Una volta raccolto il Mobile Goal, il robot girerà a sinistra di 90 gradi e avanzerà di 600 millimetri (mm).

Il robot Moby ha abbassato le sue forche per posizionare la porta mobile e poi si è mosso all'indietro.

Il robot abbasserà quindi le forche per posizionare la porta mobile verso il basso e guiderà in retromarcia allontanandosi dalla porta mobile in modo da non rovesciarla accidentalmente durante la mossa successiva.


Comprensione dei parametri

Per eseguire i comportamenti di cui sopra, è importante capire quanto è lontano il Mobile Goal dal sensore di distanza V5.

Parametro per raccogliere il Mobile Goal utilizzando il sensore di distanza V5

Il robot Moby su un campo con un Mobile Goal posizionato tra le sue forche per determinare la distanza ideale.

Affinché il robot possa avanzare finché il sensore di distanza non rileva che l'obiettivo mobile si trova all'interno delle forche e vicino al sensore, i valori del sensore devono essere registrati dal cervello V5.

Posiziona l'obiettivo mobile tra le forche del robot.

La schermata V5 Brain viene visualizzata nel menu Home con l'opzione Dispositivi evidenziata.La schermata Brain viene visualizzata nel menu Informazioni dispositivo, che contiene un elenco di tutte le Smart Port di Brain e dei dispositivi connessi. L'icona del sensore di distanza nel menu Informazioni dispositivo è evidenziata per indicare che è possibile selezionare gli elementi per aprire i relativi menu informativi.

Quindi, dalla schermata di Brain, seleziona "Dispositivi" e poi l'icona del sensore di distanza.

La schermata "Cervello" viene visualizzata nel menu "Sensore di distanza" che elenca i dati del sensore. Il menu visualizza i dati relativi a dimensioni, velocità e distanza di un oggetto. Il menù include anche un diagramma che visualizza la distanza e come questa varia nel tempo. In questa schermata, l'oggetto è di piccole dimensioni, la sua velocità è di 0 metri al secondo e la sua distanza è di 139 mm.

La distanza in millimetri (mm) alla quale il Mobile Goal si trova dal sensore viene segnalata sullo schermo di Brain.

Lo stesso progetto VEXcode V5 Blocks di prima che avanza fino a quando non rileva un Mobile Goal, lo raccoglie e poi lo sposta. Il valore con cui viene confrontata la distanza dell'oggetto rilevata dal sensore di distanza nel progetto è 139 ed è evidenziato.

Questo è il valore che verrà utilizzato nel progetto quando si prende in mano la Mobile Goal utilizzando il Sensore di Distanza.

Parametro per alzare e abbassare le Forche

Il robot Moby su un campo con una porta mobile posizionata tra le sue forche.

Posiziona nuovamente il Mobile Goal all'interno delle Forchette.

La schermata Brain viene visualizzata nel menu Informazioni dispositivo, che contiene un elenco di tutte le Smart Port di Brain e dei dispositivi connessi. L'icona del motore nel menu Informazioni dispositivo è evidenziata per indicare che è possibile selezionare gli elementi per aprire i relativi menu informativi.

Quindi, dalla schermata di Brain, seleziona "Dispositivi" e poi l'icona del Motore 2. Il motore 2 controlla la forcella sinistra.

Il robot Moby su un campo con un Mobile Goal posizionato tra le sue forche sollevate per raccoglierlo.

Sollevare manualmente le forche fino a quando la parte inferiore della meta mobile non blocca la vista del sensore di distanza.

Quando si sollevano manualmente le forche, assicurarsi di sollevare contemporaneamente ciascuna forca sul lato sinistro e destro di Moby, poiché ciascuna è controllata dal proprio motore.

Nota: evitare punti di schiacciamento quando si sollevano manualmente le forche.

La schermata Brain viene visualizzata nel menu Smart Motor che elenca i dati del dispositivo. Il menu contiene letture e grafici che riportano i dati del dispositivo. In questa schermata, il valore dei gradi del motore è evidenziato e indica 604.

Il numero di gradi di cui sono state sollevate le Forchette viene riportato sullo schermo del Cervello.

Lo stesso progetto VEXcode V5 Blocks di prima che avanza fino a quando non rileva un Mobile Goal, lo raccoglie e poi lo sposta. Il valore di rotazione in gradi del gruppo motore della forcella nel progetto è 600 ed è evidenziato.

Questo è il valore che verrà utilizzato nel progetto quando si alzano e si abbassano le Forche per raccogliere e posizionare l'obiettivo mobile.

Utilizzo dei blocchi Operatore

Viene mostrato il blocco operatore "minore di" di VEXcode V5. Questo blocco viene utilizzato per confrontare due valori e segnalare se il primo valore è inferiore al secondo.

In questo progetto, il blocco operatore <Less than> viene utilizzato per codificare il sensore di distanza.

La schermata "Cervello" viene visualizzata nel menu "Sensore di distanza" che elenca i dati del sensore. Il menu visualizza i dati relativi a dimensioni, velocità e distanza di un oggetto. Il menù include anche un diagramma che visualizza la distanza e come questa varia nel tempo. In questa schermata, l'oggetto è di piccole dimensioni, la sua velocità è di 0 metri al secondo e la sua distanza è di 139 mm.

Questo perché man mano che il sensore di distanza si avvicina sempre di più a un oggetto, la distanza in millimetri tra il sensore e quell'oggetto diminuisce.

Lo stesso progetto VEXcode V5 Blocks di prima che avanza fino a quando non rileva un Mobile Goal, lo raccoglie e poi lo sposta. Il valore con cui viene confrontata la distanza dell'oggetto rilevata dal sensore di distanza nel progetto è 139 ed è evidenziato.

È possibile selezionare valori di soglia per attivare comportamenti del robot una volta che la distanza è inferiore a un valore predeterminato.

Ad esempio, quando il robot si sta dirigendo verso l'obiettivo mobile, utilizzare il blocco operatore <Less than> per attivare il comportamento del robot che si ferma quando la distanza è inferiore a , ovvero circa 139 millimetri (mm).

Il robot Moby su un campo con una porta mobile all'interno delle sue forche. La distanza tra il sensore di distanza e l'obiettivo mobile è evidenziata da una freccia rossa.

Se il valore cambiasse a 10 millimetri (mm), ad esempio, il robot andrebbe effettivamente a sbattere contro il Mobile Goal e potenzialmente si danneggerebbe, perché 10 millimetri (mm) di distanza dal sensore non sono sufficienti per impedire alle forche del robot di toccarsi. l'obiettivo mobile.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: