
Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-23 15:01

Deze Instructable is een stapsgewijze handleiding voor het programmeren en besturen van de Mars Reconnaissance Robot.
Om te beginnen moet men de lijst met de volgende materialen verkrijgen: Een opgeladen iRobot-creatie die is aangepast door het Tickle College of Eningeering University of Tennessee, Een draadloos netwerk dat is verbonden met de Raspberry Pi in de iRobot, UTK iRobot-creëerlader, Wifi-compatibel computer met toegang tot MATLAB en internet.
Stap 1: Roomba Toolbox

Open MATLAB en maak een nieuwe map aan voor de codebestanden die vanuit uw project moeten worden opgeslagen. Open in MATLAB een nieuw script en voer de onderstaande code uit. Nadat het script is uitgevoerd, voegt u de nieuwe map toe aan de map waar MATLAB naar bestanden zoekt.
Code:
functie kamerbaInstallclc; % lijst met te installeren bestanden bestanden = {'roomba.m', 'roombaSim.m', 'roombaSimGUI.m', 'roombaSimGUI.fig'}; % locatie om te installeren vanuit options = weboptions('CertificateFilename', ''); % vertel het de certificaatvereisten te negeren server = 'https://ef.engr.utk.edu/ef230/projects/roomba-f2016/install/'; dlgTitle = 'Roomba installeren/bijwerken'; % weergavedoel en krijg bevestigingsprompt = { 'Dit programma zal deze EF 230 Roomba-bestanden downloaden:' '' strjoin(files, ' ') '' 'naar deze map:' '' cd '' 'Wilt u doorgaan? ' }; piep; yn = questdlg(prompt, … dlgTitle, … 'Ja', 'Nee', 'Ja');
if ~strcmp(yn, 'Ja'), return; einde
% haal een lijst op met bestanden die bestaan bestaande_bestanden = bestanden(cellfun(@exist, bestanden) > 0); if ~isempty(existing_files) % zorg ervoor dat het echt ok is om ze te vervangen prompt = {'U vervangt deze bestanden): ' '' strjoin(existing_files, ' ') '' 'OK om te vervangen?' }; piep; yn = questdlg(prompt, … dlgTitle, … 'Ja', 'Nee', 'Ja'); if ~strcmp(yn, 'Ja'), return; einde einde
% download de bestanden cnt = 0; voor i=1:lengte(bestanden) f=bestanden{i}; disp(['Bezig met downloaden' f]); probeer url = [server f]; websave (f, url, opties); % toegevoegde opties om beveiligingsfouten te voorkomen cnt = cnt + 1; catch disp(['Fout bij downloaden' f]); dummy = [f '.html']; if exist(dummy, 'file')==2 delete(dummy) end end end
if cnt == lengte(bestanden) msg = 'Installatie geslaagd'; waitfor(msgbox(msg, dlgTitle)); else msg = 'Installatiefout - zie opdrachtvenster voor details'; waitfor(errordlg(bericht, dlgTitel)); einde
einde %roombaInstall
Stap 2: Voorbereiden om verbinding te maken


Sluit de micro-USB die uit de robot steekt aan op de onderste poort van de Raspberry Pi. Houd vervolgens op de bovenkant van de Roomba tegelijkertijd de dock- en spot-knoppen ingedrukt totdat het lampje op de Roomba uitgaat. U zou een elektronische weegschaal uit de Roomba moeten horen zodra u deze loslaat.
Stap 3: Verbinding maken met de robot

Open de beschikbare netwerken op je computer en selecteer het bestaande netwerk tussen de computer en Raspberry Pi. Klik in de huidige map van MATLAB met de rechtermuisknop op uw huidige projectmap en selecteer de roomba-toolbox die u in stap 1 hebt gedownload en voeg deze toe aan het pad. In een netwerk dat is ontworpen voor meerdere Pi-verbindingen, specificeert u uw robot door een object van klasse Roomba te maken. Zie voorbeeld hieronder
Als u een Roomba hebt toegewezen aan nummer 7, voert u het volgende in:
r=roomba(7)
%Houd er rekening mee dat deze variabele nu is toegewezen aan de roomba, elk commando dat aan de robot wordt gegeven, moet worden geleid door de toegewezen variabele.
Stap 4: Coderen

drive.google.com/drive/folders/1OVR5oTHUsn…
Gebruik de bovenstaande link om alle.m-bestanden op te slaan in de opgegeven map waar het hoofdprogramma wordt uitgevoerd. De link moet openstaan voor iedereen die de link heeft. Open een nieuw script in de huidige map en voer mycontrolprogram.m uit zoals hieronder te zien is:
functie mycontrolprogram(r)global m m = mobiledev; emailInit(); draaien = 1; globaal f globaal aantal tellingen = 0; f = r; globale direc direc = 0; r.getAngle; r.getDistance; globale curLoc curLoc = [0, 0]; globale punten pts = nullen (1, 2, 2); handmatig = waar; grafiekObs(1); v = 0,15; while count < 50 if(manual == false) obsDetect(r, v, pts); direc = direc + r.getAngle; r.setLEDDigits(num2str(count)); anders direc = direc + r.getAngle; handmatige schijf(); einde einde figSend(); einde
De robot zou nu zijn ontworpen taak moeten uitvoeren.
Aanbevolen:
Uw Roomba in een Mars Rover veranderen: 5 stappen

Uw Roomba in een Mars Rover veranderen:
Mars Rover met Raspberry Pi: 5 stappen

Mars Rover met Raspberry Pi: Beste allemaal geweldige leerling, ik ben altijd nieuwsgierig naar mars rover, met 6 wielen die over het hele oppervlak van mars kunnen gaan en dingen vanaf de aarde kunnen verkennen. Ik wil ook dingen verkennen door op mijn laptop te zitten. Dus nu denk ik dat het de juiste tijd is om het te maken en
Mars Roomba: 6 stappen

Mars Roomba: deze Instructable zal u begeleiden in de richting van het bedienen van een Raspberry Pi-gestuurde Roomba-vacuümbot. Het besturingssysteem dat we zullen gebruiken is via MATLAB
Gemaakt van Mars: 9 stappen

Gemaakt van Mars: Dit project begon als een ontwerpuitdaging toen mijn vriend, J.R. Skok (een planetaire geoloog aan het SETI Institute), me een stel basaltstoffen gaf om iets modieus te maken. Deze stoffen werden gemaakt van vulkanische lava, die werden gewonnen, gesmolten
IRobot Create-Mars Expedition Rover Mark I: 4 stappen

IRobot Create-Mars Expedition Rover Mark I: deze instructable leert je hoe je de iRobot Create kunt instellen met behulp van MatLab-codering. Je robot kan mineralen zoeken door vormen te onderscheiden, ruig terrein manoeuvreren door het gebruik van klifsensoren en heeft de mogelijkheid