Sommario:
- Passaggio 1: Passaggio 1: Materiali necessari
- Passaggio 2: Passaggio 2: Configurazione/acquisizione del codice per Roomba
- Passaggio 3: Passaggio 3: impostazione dei sensori di dislivello/luci a LED
- Passaggio 4: Passaggio 4: Verifica degli ostacoli
- Passaggio 5: Passaggio 5: Tracciare
Video: Roomba Progetto MATLAB: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
L'attuale piano che la NASA ha per il rover su Marte è che sia un raccoglitore di dati e si aggiri intorno a Marte, raccogliendo campioni del suolo da riportare sulla Terra in modo che gli scienziati possano vedere se c'erano forme di vita precedenti sul pianeta. Inoltre, il rover invia immagini agli scienziati, in modo che possano aiutare a navigare nel rover e risolvere eventuali problemi.
L'idea del nostro gruppo per il nostro progetto è che il rover faccia lo stesso del rover della NASA che lascerà la Terra nel 2020, ma che anche mappare la geografia della terra. Il roomba sarebbe in grado di percepire le scogliere e fermarsi prima di cadere, quindi tornare indietro, girare e cambiare rotta in modo che non cada e non venga danneggiato. L'altra nostra idea integrata nel nostro progetto è che roomba sia in grado di tracciare i punti di riferimento che vede e mostrare un grafico ogni volta che il ciclo è terminato e il suo corso è stato eseguito.
Questa istruzione è per chiunque altro desideri creare lo stesso tipo di codice per il proprio roomba.
Passaggio 1: Passaggio 1: Materiali necessari
Avrai bisogno:
- un roomba
- MATLAB
- Questo file per eseguire roomba
- Una superficie piana
- Una superficie del tavolo per fungere da "scogliera"
Passaggio 2: Passaggio 2: Configurazione/acquisizione del codice per Roomba
Il tuo schermo sarà simile a questo una volta inseriti i file.
Passaggio 3: Passaggio 3: impostazione dei sensori di dislivello/luci a LED
Questo codice dirà al tuo roomba esattamente quale angolo girare, controllerà le informazioni sulla batteria, dirà al tuo roomba quanto velocemente andare e per controllare una persona attraverso la fotocamera di roomba. Emetterà anche un segnale acustico se identifica una persona e si fermerà prima di precipitare da un dirupo.
% prova rob.setLEDDigits('') x=0; y=0; theta=0; ostacolo = ; ciclo = 1; CorrAng = @(x)x + 3.059.*x.^0.4205; %Funzione per correggere gli angoli di virata mentre rob.getBatteryInfo.percent > 15 rob.setLEDDigits('') rob.setDriveVelocity(0.1) %Go %Check For Person if AA_checkperson(rob) rob.beep end %Check Cliff Sensor if AA_cliffcheck(rob) rob.stop rob.setLEDDigits('Cliff') pause(0.5) ostacolo(ciclo) = 2; AA_cliffbeep(rob) %Backup e rotazione rob.moveDistance(-.15) rob.turnAngle(30) end
Passaggio 4: Passaggio 4: Verifica degli ostacoli
Questo codice otterrà il roomba per verificare la presenza di oggetti attorno ad esso e controllerà il sensore di collisione per assicurarsi che si fermi prima che si danneggi.
%Check sensore di luce se AA_lightcheck(rob) rob.stop rob.setLEDDigits('Wall') pause(0.5) ostacolo(ciclo) = 1; %Wall AA_wallbeep(rob) %Back Up e Turn rob.moveDistance(-.15) rob.turnAngle(30) end %Check Bump Sensor if AA_bumpcheck(rob) rob.stop rob.setLEDDigits('Wall') pause(0.5) ostacolo(ciclo) = 1; %Wall AA_wallbeep(rob) %Back Up e Turn rob.moveDistance(-.15) rob.turnAngle(30) end %If nessuno if isempty(ostacle) ostacolo(cycle) = 0; elseif lunghezza(ostacolo) < ciclo ostacolo(ciclo) = 0; fine
Passaggio 5: Passaggio 5: Tracciare
Questo codice dirà al tuo roomba di tracciare ciò che incontra nel suo viaggio. Una trama come questa apparirà dopo che il roomba si è fermato.
%Ottieni posizione d = rob.getDistance; se ciclo == 1 theta(ciclo) = 0; x(ciclo) = d.*cosd(theta(ciclo)); % distanza totale percorsa in x y(ciclo) = d.*sind(theta(ciclo)); % distanza totale percorsa in y else theta(cycle) = theta(cycle-1) + rob.getAngle; x(ciclo) = d.*cosd(theta(ciclo)) + x(ciclo-1); % distanza totale percorsa in x y(ciclo) = d.*sind(theta(ciclo)).*d + y(ciclo-1); % distanza totale percorsa in y end %Break condition if rob.getButtons.clean break end %Increment cycle cycle = cycle + 1; end rob.stop for i = 1:cycle if ostacolo(i) == 1 %Wall plot(x(i), y(i), 'Marker', 'square', 'MarkerEdgeColor', 'r') elseif ostacolo (i) == 2 %Cliff plot(x(i), y(i), 'Marker', 'o', 'MarkerEdgeColor', 'k') end text(.9, 0.9, sprintf('Square = Wall \nCircle = Cliff'), 'Units', 'normalized') hold on end %Distress Signal mentre true rob.beep pause(3) if rob.getButtons.clean break end % catch % rob.stop % end
Consigliato:
Progetto stabilizzatore cardanico: 9 passaggi (con immagini)
Gimbal Stabilizer Project: come realizzare un gimbalImpara come realizzare un gimbal a 2 assi per la tua action cam Nella cultura di oggi amiamo tutti registrare video e catturare i momenti, specialmente quando sei un creatore di contenuti come me, hai sicuramente affrontato il problema di un video così traballante
Roomba controllato da MATLAB: 5 passaggi
MATLAB Controlled Roomba: l'obiettivo di questo progetto è utilizzare MATLAB e un robot programmabile iRobot modificato. Il nostro gruppo ha unito le nostre capacità di codifica per creare uno script MATLAB che utilizza molte funzioni di iRobot, inclusi i sensori di dislivello, i sensori di paraurti
Progetto Roomba: 5 passaggi (con immagini)
Progetto Roomba: questo istruttore è stato creato in adempimento dei requisiti del progetto Makecourse presso l'Università della Florida del sud (www.makecourse.com). Questo istruttore coprirà tutti i passaggi e i componenti necessari per assemblare il mio progetto Roomba
Roomba con MATLAB: 4 passaggi (con immagini)
Roomba con MATLAB: questo progetto utilizza MATLAB e un robot programmabile iRobot Create2. Mettendo alla prova la nostra conoscenza di MATLAB, siamo in grado di programmare Create2 per interpretare le immagini e rilevare i segnali. La funzionalità del robot dipende principalmente dal
Bruciatore alimentato tramite USB! Questo progetto può bruciare attraverso plastica/legno/carta (il progetto divertente deve anche essere un legno molto fine): 3 passaggi
Bruciatore alimentato tramite USB! Questo progetto può bruciare attraverso plastica/legno/carta (il progetto divertente deve anche essere un legno molto fine): NON FARLO UTILIZZANDO USB!!!! ho scoperto che può danneggiare il tuo computer da tutti i commenti. il mio computer va bene comunque Utilizzare un caricabatterie per telefono da 600 mA 5 V. ho usato questo e funziona bene e nulla può essere danneggiato se usi una spina di sicurezza per interrompere l'alimentazione