Sommario:
- Passaggio 1: acquisire le parti e i materiali necessari
- Passaggio 2: configurazione della fotocamera e del contatore Geiger-Muller
- Passaggio 3: connettiti al tuo Roomba e crea il codice del sensore di luce
- Passaggio 4: crea un codice paraurti
- Passaggio 5: creare codice per leggere la schermata del contatore, interpretarlo e ritirarsi dalla fonte
- Passaggio 6: creare un codice sensore di dislivello
- Passaggio 7: conclusione
Video: Il RADbot: 7 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Un progetto di Jackson Breakell, Tyler McCubbins e Jakob Thaler per EF 230
Su Marte, gli astronauti saranno soggetti a una serie di pericoli, che vanno dalle temperature estreme alle tempeste di polvere. Un fattore spesso trascurato, tuttavia, è il pericolo rappresentato dai potenti radioisotopi che risiedono sulla superficie del pianeta. Il RADbot fornisce assistenza all'esplorazione degli astronauti sulla superficie di Marte identificando campioni di roccia con attività elevate durante il viaggio e dispone anche di funzioni di sicurezza programmate che utilizzano i suoi sensori di dislivello, sensori di luce, sensori di paraurti e una telecamera, prevenendo danni al robot sullo spietato terreno marziano. Oltre ad avvertire gli astronauti di possibili pericoli radioattivi sulla superficie, la funzione di localizzazione del campione radioattivo del robot potrebbe essere implementata come strumento per identificare aree che potrebbero contenere grandi depositi di uranio e altri attinidi. Gli astronauti potrebbero estrarre questi elementi, arricchirli a sufficienza e usarli in reattori nucleari e generatori termoelettrici, che potrebbero aiutare ad alimentare una colonia permanente e autosufficiente sul pianeta.
A differenza del tipico rover su Marte, il nostro design presenta componenti standard e un prezzo ragionevole. Se hai i fondi e la voglia, puoi persino costruirne uno tu stesso seguendo questa guida. Continua a leggere per imparare a creare il tuo RADbot.
Passaggio 1: acquisire le parti e i materiali necessari
Di cosa avrai bisogno per iniziare (immagini posizionate nell'ordine in cui sono elencate)
1. Un Roomba (qualsiasi modello più recente)
2. Un contatore Geiger-Mueller
3. Un Raspberry Pi
4. Una fotocamera a bordo con una presa USB
5. Un cavo da micro USB a USB
6. Un cavo da USB a USB
7. Un campione radioattivo di attività sufficiente (~5μSv o superiore)
8. Un computer con Matlab installato
9. Adesivo (preferibilmente nastro adesivo per una facile rimozione)
Passaggio 2: configurazione della fotocamera e del contatore Geiger-Muller
Ora che hai tutti i materiali necessari per creare il RADbot, inizieremo semplicemente posizionando la telecamera in modo che possa leggere l'attività sul bancone. Posiziona il contatore Geiger-Muller il più vicino possibile all'estremità del Roomba e assicurati che il suo sensore non sia bloccato. Fissa saldamente il bancone in posizione con l'adesivo che hai scelto e procedi a montare la videocamera di fronte ad esso. Posiziona la videocamera il più vicino possibile al display del bancone per evitare che input esterni influenzino il programma e fissala in posizione quando ti senti a tuo agio. Tuttavia, ti consigliamo di conservare per ultimo il fissaggio della fotocamera, perché, una volta terminato il codice, puoi visualizzare un'immagine dalla fotocamera sul tuo computer, consentendoti di posizionare la fotocamera in base al suo campo visivo. Una volta che sia la fotocamera che il contatore sono saldamente in posizione, collega la fotocamera a uno degli ingressi USB del Raspberry Pi con il cavo da USB a USB e collega il Raspberry Pi a Roomba con il cavo da micro USB a USB.
Passaggio 3: connettiti al tuo Roomba e crea il codice del sensore di luce
Innanzitutto, scarica la casella degli strumenti Roomba dal sito Web EF 230 e assicurati di inserirla nelle cartelle specificate. Per connetterti al tuo Roomba, fai semplicemente riferimento all'adesivo attaccato al Raspberry Pi e inserisci "r=roomba(x)" nella finestra di comando, senza le virgolette, e dove x sta per il numero di Roomba. Il Roomba dovrebbe riprodurre una melodia e il pulsante di pulizia dovrebbe visualizzare un anello verde attorno ad esso. Inizia il tuo codice con un'istruzione "while" e fai riferimento ai sensori di luce come appaiono nell'elenco dei sensori. Aprire l'elenco dei sensori digitando "r.testSensors" nella finestra di comando.
In base al colore del nostro oggetto, che determina la quantità di luce riflessa, imposta i requisiti per l'esecuzione dell'istruzione while come funzione >. Nel nostro caso, impostiamo il sensore di luce anteriore per eseguire il codice nell'istruzione while se la lettura sui sensori di luce centrale sinistro o destro era >25. Per l'istruzione eseguibile, impostare la velocità di Roomba per rallentare digitando "r.setDriveVelocity(x, y)" dove xey sono rispettivamente le velocità delle ruote sinistra e destra. Inserire un'istruzione "else", in modo che Roomba non rallenti per valori non specificati, e immettere nuovamente il comando di impostazione della velocità di azionamento, tranne che con una velocità diversa. Termina l'istruzione while con un "end". Questo segmento di codice farà avvicinare Roomba all'oggetto e rallenterà una volta raggiunto un certo intervallo per ridurre al minimo l'impatto.
In allegato c'è uno screenshot del nostro codice, ma sentiti libero di modificarlo per adattarlo al meglio ai parametri della tua missione.
Passaggio 4: crea un codice paraurti
Poiché Roomba sta rallentando, ridurrà al minimo l'impatto che ha sull'oggetto, anche se non così tanto da non attivare il paraurti fisico. Per questo segmento di codice, inizia di nuovo con un ciclo "while" e imposta la sua espressione su true. Per l'istruzione, impostare la variabile T uguale all'output del paraurti, 0 o 1, per falso e vero. Puoi usare "T=r.getBumpers" per questo. T verrà emesso come una struttura. Immettere un'istruzione "if" e impostare la sua espressione per la sottostruttura T.front su uguale a 1 e impostare l'istruzione per impostare la velocità dell'unità a 0, utilizzando "r.setDriveVelocity(x, y)" o "r.stop ". Inserisci una "pausa" in modo che Roomba possa muoversi dopo che la condizione nel codice successivo è soddisfatta. Aggiungi un "altro" e imposta la sua istruzione per impostare la velocità di guida sulla normale velocità di crociera di Roomba.
In allegato c'è uno screenshot del nostro codice, ma sentiti libero di modificarlo per adattarlo al meglio ai parametri della tua missione.
Passaggio 5: creare codice per leggere la schermata del contatore, interpretarlo e ritirarsi dalla fonte
Al centro del nostro progetto c'è il contatore Geiger-Muller e il seguente segmento di codice viene utilizzato per determinare cosa significano i dati sullo schermo utilizzando la fotocamera. Dato che lo schermo del nostro contatore cambia colore in base all'attività della sorgente, imposteremo la telecamera per interpretare il colore dello schermo. Inizia il tuo codice impostando una variabile uguale al comando "r.getImage". La variabile conterrà una matrice 3D di valori di colore dell'immagine scattata in rosso, verde e blu. Imposta variabili uguali alle medie di queste rispettive matrici di colore utilizzando il comando "mean(mean(img1(:,:, x)))" dove x è un numero intero compreso tra 1 e 3. 1, 2 e 3 rappresentano il rosso, il verde e blu rispettivamente. Come con tutti i comandi a cui si fa riferimento, non includere le virgolette.
Mettere in pausa il programma per 20 secondi utilizzando "pause(20)" in modo che il contatore possa ottenere una lettura accurata del campione, quindi iniziare un'istruzione "if". Il nostro Roomba ha emesso più volte un segnale acustico utilizzando "r.beep" prima di visualizzare un menu con il testo "Radioisotopo trovato! Attenzione!" questo può essere ottenuto con il comando "waitfor(helpdlg({'texthere'})". Dopo aver fatto clic su OK, Roomba continuerà a seguire il resto del codice nell'istruzione "if". Fare in modo che Roomba guidi il campione utilizzando una combinazione dei comandi "r.moveDistance" e "r.turnAngle". Assicurati di terminare l'istruzione if con "end".
In allegato c'è uno screenshot del nostro codice, ma sentiti libero di modificarlo per adattarlo al meglio ai parametri della tua missione.
Passaggio 6: creare un codice sensore di dislivello
Per creare un codice per utilizzare i sensori di dislivello integrati di Roomba, iniziare con un ciclo "while" e impostare la sua espressione su true. Imposta una variabile in modo che sia uguale a "r.getCliffSensors" e questo risulterà in una struttura. Avvia un'istruzione "if" e imposta le variabili "X.leftFront" e "X.rightFront" dalla struttura in modo che siano maggiori di un valore predeterminato, dove "X" è la variabile su cui hai scelto il comando "r.getCliffSensors" essere uguale a. Nel nostro caso, abbiamo usato 1000, poiché un pezzo di carta bianca è stato usato per rappresentare una scogliera e, quando i sensori si sono avvicinati alla carta, i valori sono cresciuti ben oltre 1000, assicurando che il codice verrà eseguito solo quando viene rilevata una scogliera. Aggiungi il comando "break" dopo, quindi inserisci un'istruzione "else". Per l'istruzione "else", che verrà eseguita se non viene rilevata alcuna scogliera, impostare la velocità di guida sulla normale velocità di crociera per ciascuna ruota. Se Roomba rileva una scogliera, verrà eseguita la "interruzione" e quindi verrà eseguito il codice al di fuori del ciclo while. Dopo aver posizionato la "fine" per il ciclo "if" e "while", imposta Roomba in modo che si sposti all'indietro utilizzando il comando di spostamento della distanza. Per avvertire gli astronauti che c'è una scogliera nelle vicinanze, imposta le velocità di guida di ciascuna ruota, xey nel comando velocità di guida, su a e -a, dove a è un numero reale. Ciò farà girare il Roomba, avvisando l'astronauta della scogliera.
In allegato c'è uno screenshot del nostro codice, ma sentiti libero di modificarlo per adattarlo al meglio ai parametri della tua missione.
Passaggio 7: conclusione
L'obiettivo finale del RADbot su Marte è assistere gli astronauti nella loro esplorazione e colonizzazione del pianeta rosso. Identificando campioni radioattivi sulla superficie, le nostre speranze sono che il robot, o il rover, in questo caso, possa davvero proteggere gli astronauti e aiutare a identificare le fonti di energia per le loro basi. Dopo aver seguito tutti questi passaggi, e forse con alcuni tentativi ed errori, il tuo RADbot dovrebbe essere attivo e funzionante. Posiziona il campione radioattivo da qualche parte all'interno della tua area di test, esegui il tuo codice e osserva il rover fare ciò per cui è stato progettato. Goditi il tuo RADbot!
-Il team RADbot EF230
Consigliato:
Come realizzare un'antenna doppia biQuade 4G LTE Semplici passaggi: 3 passaggi
Come realizzare un'antenna doppia biQuade 4G LTE Semplici passaggi: La maggior parte delle volte che ho affrontato, non ho una buona potenza del segnale per i miei lavori quotidiani. Così. Cerco e provo diversi tipi di antenna ma non funziona. Dopo aver perso tempo ho trovato un'antenna che spero di realizzare e testare, perché è principio costruttivo non
Rilevamento del volto su Raspberry Pi 4B in 3 passaggi: 3 passaggi
Rilevamento del volto su Raspberry Pi 4B in 3 passaggi: In questo Instructable eseguiremo il rilevamento del volto su Raspberry Pi 4 con Shunya O/S utilizzando la libreria Shunyaface. Shunyaface è una libreria di riconoscimento/rilevamento facciale. Il progetto mira a raggiungere la massima velocità di rilevamento e riconoscimento con
Specchio per il trucco fai-da-te in semplici passaggi (usando le strisce luminose a LED): 4 passaggi
Specchio per il trucco fai-da-te in semplici passaggi (usando le strisce luminose a LED): in questo post, ho realizzato uno specchio per il trucco fai-da-te con l'aiuto delle strisce LED. Sono davvero fantastici e devi provarli anche tu
Gioca a Doom sul tuo iPod in 5 semplici passaggi!: 5 passaggi
Gioca a Doom sul tuo iPod in 5 semplici passaggi!: una guida passo passo su come eseguire il dual-boot di Rockbox sul tuo iPod per giocare a Doom e a dozzine di altri giochi. È qualcosa di veramente facile da fare, ma molte persone rimangono stupite quando mi vedono giocare a doom sul mio iPod e si confondono con le istruzioni
Come installare plugin in WordPress in 3 passaggi: 3 passaggi
Come installare plugin in WordPress in 3 passaggi: In questo tutorial ti mostrerò i passaggi essenziali per installare il plugin wordpress sul tuo sito web. Fondamentalmente puoi installare i plugin in due modi diversi. Il primo metodo è tramite ftp o tramite cpanel. Ma non lo elencherò perché è davvero completo