Inhoudsopgave:

Zelfrijdend robotvoertuig voor beginners met het vermijden van botsingen - Ajarnpa
Zelfrijdend robotvoertuig voor beginners met het vermijden van botsingen - Ajarnpa

Video: Zelfrijdend robotvoertuig voor beginners met het vermijden van botsingen - Ajarnpa

Video: Zelfrijdend robotvoertuig voor beginners met het vermijden van botsingen - Ajarnpa
Video: Optimaliseer interne transport van zware ladingen en pallets met de MiR1000 en MiR500 2024, November
Anonim
Image
Image
Arduino integreren
Arduino integreren

Hallo! Welkom bij mijn beginnersvriendelijke Instructable over hoe je je eigen zelfrijdende robotvoertuig kunt maken met het vermijden van botsingen en GPS-navigatie. Hierboven is een YouTube-video die de robot demonstreert. Het is een model om te demonstreren hoe een echt autonoom voertuig werkt. Houd er rekening mee dat mijn robot er zeer waarschijnlijk anders uit zal zien dan uw eindproduct.

Voor deze build heb je nodig:

- OSEPP Robotic Functional Kit (inclusief bouten, schroevendraaiers, kabels, enz.) ($ 98,98)

- Arduino Mega 2560 Rev3 ($ 40,30)

- HMC5883L digitaal kompas ($ 6,99)

- HC-SR04 ultrasone sensor ($ 3,95)

- NEO-6M GPS en antenne ($ 12,99)

- HC-05 Bluetooth-module ($ 7,99)

- USB Mini B-kabel (misschien heb je deze rondslingeren) ($ 5,02)

- Een Android-smartphone

- Zes AA-batterijen, elk 1,5 volt

- Elk staafachtig niet-magnetisch materiaal (zoals aluminium) dat u wilt recyclen

- Dubbelzijdige tape

- Een handboor

Stap 1: Het chassis en de mobiliteit van de robot monteren

Uitleg: Het is geen voertuig als het niet beweegt! Het meest elementaire robotvoertuig vereist wielen, motoren en een chassis (of het "lichaam" van de robot). In plaats van elk van deze onderdelen afzonderlijk aan te schaffen, raad ik u ten zeerste aan een kit te kopen voor een beginnend robotvoertuig. Voor mijn project heb ik de OSEPP Robotic Functional Kit gebruikt omdat deze werd geleverd met een overvloed aan onderdelen en beschikbare gereedschappen, en ik vond dat een tankconfiguratie het beste was voor de stabiliteit van de robot, en ook om onze programmering te vereenvoudigen door slechts twee motoren nodig te hebben.

Werkwijze: Het zou u niet helpen als ik gewoon de montagehandleiding zou herhalen, die u hier kunt vinden (u heeft ook de mogelijkheid van een driehoekige tankconfiguratie). Ik zou alleen adviseren om alle kabels zo dicht mogelijk bij de robot te houden en weg van de grond of de wielen, vooral voor de kabels van de motoren.

Als je een budgetoptie wilt in plaats van een dure kit te kopen, kun je ook een oude, werkende RC-auto recyclen en de motoren, wielen en het chassis daarvan gebruiken, maar ik weet niet zeker hoe compatibel de Arduino en zijn code zijn voor die bepaalde onderdelen. Het is een betere gok om de kit door OSEPP te kiezen.

Stap 2: Arduino integreren

Uitleg: Omdat dit een beginnershandleiding is, wil ik graag snel uitleggen wat Arduino is voor lezers die misschien niet bekend zijn met het gebruik ervan in elektronica. Een Arduino is een soort microcontroller, wat betekent dat hij precies dat doet: de robot besturen. Je kunt instructies in code op je computer schrijven die worden vertaald in een taal die de Arduino kan begrijpen, dan kun je die instructies uploaden naar Arduino, en de Arduino zal onmiddellijk proberen die instructies uit te voeren wanneer hij is ingeschakeld. De meest voorkomende Arduino is de Arduino Uno, die is opgenomen in de OSEPP-kit, maar je hebt de Arduino Mega nodig voor dit project omdat dit een groter project is dan waartoe de Arduino Uno in staat is. Je kunt de Arduino Uno van de kit gebruiken voor andere leuke projecten.

Procedure: De Arduino kan aan de robot worden bevestigd door kabelbinders te gebruiken of afstandhouders op de basis van de robot te schroeven.

We willen graag dat de Arduino de motoren van onze robot bestuurt, maar de motoren kunnen niet rechtstreeks verbinding maken met de Arduino. Daarom moeten we ons motorschild (dat uit onze kit kwam) bovenop de Arduino bevestigen om een verbinding te kunnen maken met de motorkabels en de Arduino. De pinnen die uit de onderkant van het motorschild komen, moeten precies in de "gaten" van de Arduino Mega passen. De kabels die uit de motoren steken, passen in sleuven op het motorscherm, zoals in de afbeelding hierboven. Deze sleuven worden geopend en gesloten door een schroevendraaier in een +-vormige inkeping helemaal bovenaan de sleuf te draaien.

Vervolgens heeft de Arduino spanning nodig om te kunnen werken. De OSEPP Robotic Functional Kit had een batterijhouder moeten hebben die geschikt is voor zes batterijen. Nadat u zes batterijen in de houder hebt geplaatst, steekt u de draden die uit de batterijhouder steken in de sleuven op het motorscherm die bedoeld zijn voor spanning.

Stap 3: Bluetooth-besturing toevoegen

Bluetooth-bediening toevoegen
Bluetooth-bediening toevoegen

Procedure: Nadat de Arduino is uitgevonden, is het toevoegen van de Bluetooth-module net zo eenvoudig door de vier uitsteeksels van de Bluetooth-module in de sleuf met vier gaten op het motorschild te steken, zoals hierboven weergegeven.

Ongelooflijk eenvoudig! Maar we zijn nog niet klaar. De Bluetooth-module is slechts de helft van de eigenlijke Bluetooth-besturing. De andere helft is het instellen van de externe app op ons Android-apparaat. We zullen de door OSEPP ontwikkelde app gebruiken die bedoeld is voor de robot die is samengesteld uit de Robotic Functional Kit. Je zou een andere externe app op je apparaat kunnen gebruiken, of je zou zelfs je eigen app kunnen maken, maar voor onze doeleinden willen we het wiel niet opnieuw uitvinden. OSEPP heeft ook instructies voor het installeren van hun app, die niet kan worden geïnstalleerd vanuit de Google Play Store. Die instructies vind je hier. De lay-out van de afstandsbediening die je installeert, kan er anders uitzien dan de tutorial, en dat is prima.

Stap 4: Botsingsvermijding toevoegen

Botsingsvermijding toevoegen
Botsingsvermijding toevoegen

Uitleg: Nu de robot mobiel is, is hij nu in staat om tegen muren en grote objecten aan te lopen, die mogelijk onze hardware kunnen beschadigen. Daarom integreren we onze ultrasone sensor helemaal aan de voorkant van de robot, net zoals je ziet in de afbeelding hierboven.

Procedure: De OSEPP Robotic Functional Kit bevat alle onderdelen die u daar ziet, behalve de ultrasone sensor. Toen je het chassis monteerde volgens de handleiding die ik had gekoppeld, had je deze houder voor de ultrasone sensor al moeten bouwen. De sensor kan eenvoudig in de twee gaten van de houder worden geklikt, maar u moet de sensor op zijn plaats houden met een rubberen band om te voorkomen dat deze van de houder valt. Steek een kabel die op alle vier de pinnen van de sensor past en sluit het andere uiteinde van de kabel aan op kolom 2 met pinnen op de motorafscherming.

U kunt meerdere ultrasone sensoren toevoegen, op voorwaarde dat u over de hardware beschikt om ze op hun plaats te houden.

Stap 5: Een GPS en kompas toevoegen

Een GPS en kompas toevoegen
Een GPS en kompas toevoegen
Een GPS en kompas toevoegen
Een GPS en kompas toevoegen

Uitleg: We zijn bijna klaar met onze robot! Dit is het moeilijkste onderdeel van het monteren van onze robot. Ik wil eerst de GPS en het digitale kompas uitleggen. De Arduino verwijst naar de GPS om satellietgegevens te verzamelen van de huidige locatie van de robot, in termen van breedte- en lengtegraad. Deze breedte- en lengtegraad wordt in gebruik genomen wanneer deze wordt gecombineerd met metingen van het digitale kompas, en deze getallen worden in een reeks wiskundige formules in de Arduino geplaatst om te berekenen welke beweging de robot vervolgens moet maken om zijn bestemming te bereiken. Het kompas wordt echter weggeslingerd in de aanwezigheid van ijzerhoudende materialen of materialen die ijzer bevatten en is daarom magnetisch.

Procedure: Om mogelijke interferentie van ijzerhoudende componenten van onze robot te verminderen, nemen we ons staafachtige aluminium en buigen het in een lange V-vorm, zoals in de afbeelding hierboven. Dit is om enige afstand te creëren van ijzerhoudende materialen op de robot.

Aluminium kan met de hand of met een basishandgereedschap worden gebogen. De lengte van je aluminium maakt niet uit, maar zorg ervoor dat het resulterende V-vormige aluminium niet te zwaar is.

Gebruik de dubbelzijdige tape om de GPS-module, de GPS-antenne en het digitale kompas op het aluminium armatuur te plakken. ZEER BELANGRIJK: Het digitale kompas en de GPS-antenne moeten op de top van de aluminium armatuur worden geplaatst, zoals weergegeven in de afbeelding hierboven. Ook moet het digitale kompas twee pijlen in een L-vorm hebben. Zorg ervoor dat de x-pijl naar de voorkant van de robot wijst.

Boor gaten aan beide uiteinden van het aluminium zodat een moer door het aluminium kan worden geschroefd en een gat op het robotchassis.

Steek de digitale kompaskabel in de Arduino Mega, in de kleine "uitgang" direct onder de spanningssleuf op het motorschild. Sluit de a-kabel van de plek op de GPS met het label "RX" aan op pin TX314 op de Arduino Mega (niet op het motorscherm), een andere kabel van de plek met het label "TX" op pin RX315, een andere kabel van "VIN" op de GPS naar de 3V3-pin op het motorscherm en een laatste kabel van "GND" op de GPS naar de GND-pin op het motorscherm.

Stap 6: Alles samenbrengen met code

Procedure: Het is tijd om onze Arduino Mega de code te geven die ik al voor je heb voorbereid. U kunt de Arduino-applicatie hier gratis downloaden. Download vervolgens elk van de onderstaande bestanden (ik weet dat het veel lijkt, maar de meeste hiervan zijn zeer kleine bestanden). Open nu MyCode.ino, de Arduino-applicatie zou moeten openen, klik dan bovenaan op Tools, dan op Board en tenslotte op Arduino Mega of Mega 2560. Klik daarna bovenaan op Sketch en vervolgens op Show Sketch Folder. Hierdoor wordt de bestandslocatie van MyCode.ino op uw pc geopend. Klik en sleep alle andere bestanden die u van deze Instructable hebt gedownload naar het MyCode.ino-bestand. Ga terug naar de Arduino-applicatie en klik op het vinkje rechtsboven zodat het programma de code kan vertalen naar machinetaal die de Arduino kan begrijpen.

Nu je alle code bij de hand hebt, sluit je je pc aan op de Arduino Mega met behulp van je USB Mini B-kabel. Ga terug naar de Arduino-applicatie met MyCode.ino geopend en klik op de pijl naar rechts in de rechterbovenhoek van het scherm om de code naar de Arduino te uploaden. Wacht tot de applicatie je vertelt dat de upload is voltooid. Op dit punt is je robot klaar! Nu moeten we het testen.

Schakel de Arduino in met behulp van de schakelaar op het motorschild en open de OSEPP-app op afstand op uw Android-apparaat. Zorg ervoor dat de Bluetooth-module op de robot blauw knippert en selecteer de Bluetooth-verbinding bij het openen van de app. Wacht tot de app zegt dat hij verbinding heeft gemaakt met je robot. Op de afstandsbediening zou je de standaard links-rechts-omhoog-omlaag-knoppen aan je linkerkant moeten hebben en de A-B-X-Y-knoppen aan de rechterkant. Met mijn code doen de X- en Y-knoppen niets, maar de A-knop is om de huidige lengte- en breedtegraad van de robot op te slaan, en de B-knop is om de robot naar die opgeslagen locatie te laten gaan. Zorg ervoor dat de GPS een knipperend rood lampje bij gebruik van de A- en B-knoppen. Dit betekent dat de GPS verbinding heeft gemaakt met satellieten en gegevens aan het verzamelen is, maar als het lampje niet knippert, neem je de robot gewoon mee naar buiten met direct zicht op de lucht en wacht je geduldig. De cirkels onderaan zijn bedoeld als joysticks, maar worden in dit project niet gebruikt. Het midden van het scherm registreert informatie over de bewegingen van de robot, wat handig was tijdens mijn testen.

Heel erg bedankt aan OSEPP, evenals lombarobot id en EZTech op YouTube voor het leveren van de basis voor het schrijven van code voor dit project. Steun deze partijen:

OSEPP

EZTech-kanaal

lombarobot id-kanaal

Stap 7: Optionele uitbreiding: objectdetectie

Optionele uitbreiding: objectdetectie
Optionele uitbreiding: objectdetectie

In het begin van deze Instructable zei ik dat het beeld van mijn robotvoertuig dat je aan het begin zag er anders uit zal zien dan je eindproduct. Ik verwijs in het bijzonder naar de Raspberry Pi en camera die je hierboven ziet.

Deze twee componenten werken samen om stopborden of rode stoplichten op het pad van de robot te detecteren en tijdelijk te stoppen, waardoor de robot dichter bij een echt autonoom voertuig komt te staan. Er zijn verschillende verschillende toepassingen van de Raspberry Pi die van toepassing kunnen zijn op uw voertuig. Als je verder aan je robotvoertuig wilt werken door de Raspberry Pi toe te voegen, raad ik je ten zeerste aan om Rajandeep Singh's cursus over het bouwen van een zelfrijdend, objectdetecterend voertuig te kopen. Je kunt zijn volledige cursus op Udemy hier vinden. Rajandeep vroeg me niet om zijn koers uit te schreeuwen; Ik voel gewoon dat hij een geweldige instructeur is die je in autonome voertuigen zal betrekken.

Aanbevolen: