Inhoudsopgave:

Autonome drone: 7 stappen
Autonome drone: 7 stappen

Video: Autonome drone: 7 stappen

Video: Autonome drone: 7 stappen
Video: New RAF 'Jackal' drone fires missiles in demonstration 2024, December
Anonim
Autonome drone
Autonome drone
Autonome drone
Autonome drone

In dit project leer je het proces van het bouwen en configureren van een drone, voordat je verder gaat met het onderzoeken van autonome vluchten met behulp van Mission Planner en MATLAB.

Let op: dit instructable is alleen bedoeld als richtlijn. Het gebruik van drones kan erg gevaarlijk zijn in de buurt van mensen en kan je in ernstige problemen brengen met de wet als ze ongepast of op de verkeerde plaats worden gebruikt. Zorg ervoor dat u zich houdt aan alle wet- en regelgeving rondom het gebruik van drones. Bovendien zijn de codes op GitHub niet volledig getest, dus zorg ervoor dat je andere failsafes hebt om te voorkomen dat je je drone verliest of beschadigt.

Stap 1: Onderdelenlijst

Voor dit project heb je verschillende onderdelen nodig. Voordat u doorgaat met de rest van dit project, moet u ervoor zorgen dat u de volgende componenten koopt en de bestanden downloadt om de aangepaste onderdelen te 3D-printen en lasersnijden.

Gekochte delen

Frame: DJI F450 Vlamwiel

www.buildyourowndrone.co.uk/dji-f450-flam…

VOB: Matek PDB-XT60

www.unmannedtechshop.co.uk/matek-pdb-xt60…

Motoren x4: Emax 2205s 2300kv

www.unmannedtechshop.co.uk/rs2205-s-races…

Propellers x4: Gemfan Carbon/Nylon 5030

hobbyking.com/nl_nl/gemfan-propeller-5x3-…

ESC's x4: Little Bee 20A 2-4S

hobbyking.com/nl_nl/favoriet-bijtje-…

Flight Controller: Navio 2 (met GPS/GNSS antenne en voedingsmodule)

Raspberry Pi 3B

thepihut.com/collections/raspberry-pi/pro…

Zender: FRSKY TARANIS X9D+

www.unmannedtechshop.co.uk/frsky-taranis-…

Ontvanger: FrSky XSR 2,4 Ghz ACCST

hobbyking.com/en_us/xsr-eu-lbt.html?_st…

Batterijen: TATTU 1800mAh 14.8V 45C 4S1P Lipo-batterijpakket

www.unmannedtechshop.co.uk/tattu-1800mah-…

Batterijlader: Turnigy Accucell-6 50W 6A Balancer / Lader

hobbyking.com/en_us/turnigy-accucell-6-50…

Voeding voor oplader: RS 12V DC-voeding

uk.rs-online.com/web/p/plug-in-power-supp…

Accutassen: Hobby King Lithium Polymer Charge Pack

hobbyking.com/nl_nl/lithium-polymeer-oplading…

Banaanconnectoren

www.amazon.co.uk/gp/product/B013ZPUXZS/re…

WiFi-router: TP-LINK TL-WR802N

www.amazon.co.uk/TP-LINK-TL-WR802N-Wirele…

Micro SD-kaart: SanDisk 32GB

www.amazon.co.uk/SanDisk-microSDHC-Memory…

Afstandhouders/afstandhouders: nylon M2.5 draad

thepihut.com/products/adafruit-black-nylon…

laptop

Kabelbinders

Klittenband

Krimpkous

3D-geprinte onderdelen

Raspberry Pi / Navio 2 behuizing (boven en onder)

Batterijhouder (doos en deksel)

Lasergesneden onderdelen

Elektronica Lagen x2

Stap 2: Hardware

Hardware
Hardware
Hardware
Hardware
Hardware
Hardware

Hardware en bouwfase:

  1. Monteer het F450 quadrotorframe en de bedrukte batterijbehuizing in het midden (zorg ervoor dat u de M2,5 * 5 mm afstandhouders toevoegt)
  2. Bevestig de motoren aan het frame.
  3. Soldeer de banaanconnectoren aan de ESC's en motordraden.
  4. Soldeer de ESC's en de voedingsmodule aan de PDB. Opmerking: zorg ervoor dat u de 5V-uitgang van de PDB niet gebruikt (deze levert niet genoeg stroom).
  5. Voeg de eerste lasergesneden laag toe aan de bovenkant van het F450-frame met behulp van M2,5 * 10 mm mannelijk-vrouwelijke afstandhouders; en bevestig de PDB en voedingsmodule aan deze laag. Opmerking: zorg ervoor dat u de componenten zo plaatst dat de draden lang genoeg zijn om alle motoren te bereiken.
  6. Sluit de ESC's aan op de motoren en gebruik kabelbinders om de draden aan het frame te bevestigen.
  7. Bevestig de Navio2 aan de Raspberry Pi en plaats deze in de bedrukte behuizing.
  8. Breng de tweede lasergesneden laag aan op de eerste laag en bevestig de Raspberry-Navio-behuizing met dubbelzijdige plakstrips.
  9. De GPS kan op de behuizing worden gelijmd, maar hier is deze op een andere derde laag geplaatst die bovenop de Raspberry-Navio-behuizing gaat zoals op de foto's te zien is, maar het is geheel aan de persoon die hem bouwt. Verbind dan eenvoudig de GPS met de Navio.
  10. Bevestig de ontvanger op de tweede laag met dubbelzijdige plakstrips. Sluit de ESC's en ontvangerdraden aan op de Navio-pinnen. De ontvanger bezet de eerste kolom met pinnen en vervolgens bezetten de motoren de volgende vier kolommen. Let op: De voorkant van de drone wordt bepaald door welke motor het eerst wordt bevestigd. Welke voorrichting u ook kiest, zorg ervoor dat de motoren aan het begin van deze stap op de afbeelding zijn aangesloten.
  11. Propellers toevoegen. Het is aan te raden om de propellers tot het einde te laten, d.w.z. na het voltooien van het softwaregedeelte, en zorg er altijd voor dat u veiligheidsmaatregelen neemt wanneer de propellers aan staan, voor het geval er iets misgaat.

Stap 3: Software

Software
Software
Software
Software

Softwarefase: (referentie Navio2-documenten)

  1. Download de nieuwste Emlid Raspbian-afbeelding van Navio2-documenten.
  2. Download, extraheer en voer Etcher uit met beheerdersrechten.
  3. Selecteer het archiefbestand met de afbeelding en de stationsletter van de SD-kaart.
  4. Klik op "Flitsen!". Het proces kan enkele minuten duren. (Voorbeeldvideo)
  5. Om nu de wifi-toegang te configureren, moeten we het bestand wpa_supplicant.conf op de SD-kaart bewerken. Bewerk het om het eruit te laten zien als de eerste afbeelding bovenaan deze stap. Let op: de ssid is de naam van TP-Link zoals deze op je computer verschijnt. De beste manier om de exacte ssid voor uw TP-Link te vinden, is door uw laptop op de TP-Link aan te sluiten en vervolgens de onderstaande opdracht in een terminalvenster uit te voeren:

Voor windows: netsh wlan show profielen

Voor mac: standaardwaarden lezen /Bibliotheek/Preferences/SystemConfiguration/com.apple.airport.preferences |grep SSIDString

psk is het wachtwoord dat op de kaart staat die bij de TP-Link wordt geleverd.

  1. Werp de SD-kaart uit en plaats deze in de Raspberry Pi en zet hem aan.
  2. Om te controleren of de Raspberry Pi is verbonden met de TP-Link, kun je een van de beschikbare apps gebruiken die alle apparaten tonen die op je netwerk zijn aangesloten.
  3. Het is noodzakelijk om vaste IP-adressen in te stellen voor apparaten die op uw TP-Link zijn aangesloten, zodat u de IP-adressen van de codes die u schrijft niet elke keer hoeft te wijzigen. Dit doe je eenvoudig door tplinkwifi.net te openen (terwijl je verbonden bent met de TP-Link natuurlijk). Voer de gebruikersnaam: admin en wachtwoord: admin in. Ga naar de “DHCP” in het menu aan de linkerkant van het scherm en selecteer vervolgens “Adres Reservering” in het dropdown menu. Voeg de MAC-adressen toe van de apparaten waaraan u de IP-adressen wilt toewijzen. Hier heeft het grondstation (Laptop) het IP-adres 192.168.0.110 gekregen en de Raspberry Pi 192.168.0.111.
  4. Nu moeten we MAVProxy downloaden via de volgende link.
  5. Maak nu een.bat-bestand dat eruitziet als de tweede afbeelding bovenaan deze stap en zorg ervoor dat u het bestandspad gebruikt waar uw mavproxy.exe op uw laptop is opgeslagen. U moet dit bestand uitvoeren (door erop te dubbelklikken) elke keer dat u verbinding wilt maken met uw drone.
  6. Om de Raspberry Pi te laten communiceren met MAVProxy moet een bestand op de Pi worden bewerkt.
  7. Typ sudo nano /etc/default/arducopter in de Linux-terminal van de Raspberry Pi die de Navio2-stuurautomaat host.
  8. De bovenste regel van het bestand dat wordt geopend, moet TELEM1=”-A udp:127.0.0.1:14550” zijn. Dit moet worden gewijzigd zodat het naar het IP-adres van uw pc verwijst.
  9. Installeer Mission Planner en ga naar het gedeelte First Time Setup.

Stap 4: Eerste keer instellen

Volg deze procedure om verbinding te maken met uw UAV:

  1. Voer zowel uw MAVProxy.bat-bestand als Mission Planner uit.
  2. Sluit de batterij aan op uw UAV en wacht ongeveer 30-60 seconden. Dit geeft het de tijd om verbinding te maken met het draadloze netwerk.
  3. Klik op de verbindingsknop in de rechterbovenhoek van Mission Planner. Typ 127.0.0.1 in het eerste dialoogvenster dat verschijnt en klik op OK. Typ in het volgende vak het poortnummer 14551 en klik op OK. Na een paar seconden zou Mission Planner verbinding moeten maken met uw MAV en telemetriegegevens in het linkerdeelvenster moeten weergeven.

Wanneer u uw UAV voor de eerste keer instelt, is het noodzakelijk om bepaalde hardwarecomponenten te configureren en te kalibreren. De ArduCopter-documenten bevatten een grondige handleiding voor het configureren van het frametype, kompaskalibratie, kalibratie van radiobesturing, kalibratie van de versnellingsmeter, instelling van de rc-zendermodus, ESC-kalibratie en configuratie van het motorbereik.

Afhankelijk van hoe je je Raspberry Pi op de drone hebt gemonteerd, kan het nodig zijn om de oriëntatie van het bord in de missieplanner te wijzigen. Dit kan worden gedaan door de parameter Board Orientation (AHRS_ORIENTATION) aan te passen in de lijst met geavanceerde parameters onder het tabblad Config/Tuning in Mission Planner.

Stap 5: Eerste vlucht

Eerste vlucht
Eerste vlucht
Eerste vlucht
Eerste vlucht

Zodra de hardware en software klaar zijn, is het tijd om je voor te bereiden op de eerste vlucht. Het wordt aanbevolen om de UAV, voordat u een autonome vlucht probeert, handmatig met de zender te besturen om een idee te krijgen van de bediening van het vliegtuig en om eventuele problemen op te lossen.

De ArduCopter-documentatie heeft een zeer gedetailleerd en informatief gedeelte over uw eerste vlucht. Het bespreekt de verschillende vliegmodi die bij ArduCopter worden geleverd en wat elk van deze modi doet. Voor de eerste vlucht is de stabilisatiemodus de meest geschikte vluchtmodus om te gebruiken.

ArduCopter heeft veel ingebouwde veiligheidsvoorzieningen. Een van deze functies zijn de Pre-Arm Safety-controles die voorkomen dat het vliegtuig wordt ingeschakeld als er problemen worden gedetecteerd. De meeste van deze controles zijn belangrijk om de kans op een crash of verlies van het vliegtuig te verkleinen, maar ze kunnen indien nodig worden uitgeschakeld.

Het inschakelen van de motoren is wanneer de stuurautomaat de motoren van stroom voorziet zodat ze kunnen draaien. Voordat de motoren worden ingeschakeld, is het essentieel dat het vliegtuig zich in een open ruimte bevindt, ver weg van mensen of obstakels of in een veilige vliegarena. Het is ook erg belangrijk dat er niets in de buurt van de propellers is, met name lichaamsdelen en andere dingen die hierdoor beschadigd kunnen raken. Zodra alles duidelijk is en de piloot ervan overtuigd is dat het veilig is om te starten, kunnen de motoren worden ingeschakeld. Deze pagina geeft een gedetailleerde set instructies voor het bewapenen van het vliegtuig. De enige verschillen tussen die gids en de Navio2 liggen in stap 7 van inschakelen en stap 2 van uitschakelen. Om de Navio2 in te schakelen, moeten beide sticks een paar seconden ingedrukt en in het midden worden gehouden (zie afbeelding). Om te ontwapenen, moeten beide stokken een paar seconden naar beneden en opzij worden gehouden (zie afbeelding).

Volg deze gids om uw eerste vlucht uit te voeren.

Na de eerste vlucht kan het nodig zijn om enkele wijzigingen aan te brengen. Zolang de hardware volledig functioneert en correct is ingesteld, zullen deze wijzigingen voornamelijk plaatsvinden in de vorm van PID-tuning. Deze gids bevat enkele handige tips voor het afstemmen van de quadcopter, maar in ons geval was het lichtjes verminderen van de P-versterking voldoende om het vliegtuig stabiel te maken. Zodra het vliegtuig vliegbaar is, is het mogelijk om de ArduCopter autotune-functie te gebruiken. Dit stemt automatisch de PID's af om de snelste respons te bieden en toch stabiel te blijven. De ArduCopter-documentatie biedt een gedetailleerde handleiding voor het uitvoeren van autotuning.

Als u problemen ondervindt bij een van deze stappen, kan de gids voor probleemoplossing u wellicht helpen.

Stap 6: Autonome vlucht

Image
Image

Missieplanner

Nu je helikopter is afgesteld en goed handmatig kan vliegen, kan autonoom vliegen worden onderzocht.

De gemakkelijkste manier om autonoom te vliegen, is door Mission Planner te gebruiken, omdat deze een groot aantal dingen bevat die u met uw vliegtuig kunt doen. Autonome vluchten in Mission Planner vallen in twee hoofdcategorieën; vooraf geplande missies (auto-modus) en live-missies (begeleide modus). Het vluchtplannerscherm in de missieplanner kan worden gebruikt om een vlucht te plannen die bestaat uit te bezoeken waypoints en uit te voeren acties zoals het maken van foto's. Waypoints kunnen ofwel handmatig worden gekozen, of de auto-waypoint-tool kan worden gebruikt om missies te genereren om een gebied te onderzoeken. Zodra een missie is gepland en naar de drone is verzonden, kan de Auto-vliegmodus worden gebruikt, zodat het vliegtuig autonoom de vooraf geplande missie volgt. Hier is een handige gids over het plannen van missies.

Begeleide modus is een manier om de UAV interactief opdracht te geven om bepaalde dingen te doen. Dit doe je door het acties-tabblad in Mission Planner te gebruiken of door met de rechtermuisknop op de kaart te klikken. De UAV kan worden bevolen om veel dingen te doen, zoals opstijgen, terugkeren naar de lancering en naar een gekozen locatie vliegen door met de rechtermuisknop op de kaart op de gewenste locatie te klikken en Fly To Here te selecteren.

Failsafes zijn een belangrijk punt om te overwegen tijdens autonome vluchten om ervoor te zorgen dat als er iets misgaat, het vliegtuig niet wordt beschadigd en mensen niet gewond raken. Mission Planner heeft een ingebouwde Geo-Fence-functie die kan worden gebruikt om te beperken waar de UAV kan vliegen en om te voorkomen dat deze te ver weg of te hoog gaat. Het kan de moeite waard zijn om de UAV voor uw eerste paar vluchten aan de grond te binden als een extra back-up. Tot slot is het belangrijk dat je je radiozender aan hebt staan en verbonden bent met de drone zodat je indien nodig van de autonome vliegmodus kunt overschakelen naar een handmatige vliegmodus zoals stabiliseren of alt-hold zodat de UAV veilig kan worden bestuurd landen.

MATLAB

Autonome besturing met MATLAB is veel minder eenvoudig en vereist enige programmeerkennis.

Met de MATLAB-scripts real_search_polygon en real_search kunt u vooraf geplande missies genereren om een door de gebruiker gedefinieerde polygoon te doorzoeken. Het script real_search_polygon plant een pad over de door de gebruiker gedefinieerde polygoon, terwijl het script real_search een pad plant over de minimale rechthoek die de polygoon omvat. De stappen om dit te doen zijn als volgt:

  1. Open Mission Planner en ga naar het Flight Plan-venster.
  2. Teken een polygoon over het gewenste zoekgebied met behulp van het polygoongereedschap.
  3. Sla de polygoon op als 'search_area.poly' in dezelfde map als het MATLAB-script.
  4. Ga naar MATLAB en voer real_search_polygon of real_search uit. Zorg ervoor dat u de gewenste padbreedte kiest en verander het bestandspad op regel 7 naar de juiste map waar u werkt.
  5. Zodra het script is uitgevoerd en u tevreden bent met het gegenereerde pad, gaat u terug naar Mission Planner.
  6. Klik aan de rechterkant op Load WP File en kies het waypoint-bestand ‘search_waypoints.txt’ dat je zojuist hebt aangemaakt.
  7. Klik aan de rechterkant op Schrijf WP's om de waypoints naar de drone te sturen.
  8. Bewapen de drone en vertrek handmatig of door met de rechtermuisknop op de kaart te klikken en opstijgen te selecteren.
  9. Zodra je op een redelijke hoogte bent, verander je de modus naar auto en start de drone de missie.
  10. Nadat de missie voorbij is, klik je op RTL in het acties-tabblad om de drone terug te brengen naar de lanceerplaats.

De video aan het begin van deze stap is een simulatie in Mission Planner van de UAV die een gebied doorzoekt.

Stap 7: Visie

Visie
Visie

De missie van de drone is om over bergen of wildernis te vliegen en mensen of onregelmatige objecten te spotten en dat vervolgens te verwerken om te zien of die persoon hulp nodig heeft. Dit zou idealiter gebeuren met een dure infraroodcamera. Vanwege de hoge kosten van infraroodcamera's wordt in plaats daarvan op infrarooddetectie gelet door alle niet-groene objecten te detecteren met een normale Pi-camera.

  1. ssh in de Raspberry Pi
  2. Allereerst moeten we OpenCV op de Raspberry Pi installeren. De volgende gids van pyimagesearch is een van de beste die op internet beschikbaar is.
  3. Download de code in de Raspberry Pi van GitHub via deze volgende link. Om de code op de Raspberry Pi te downloaden, kunt u het bestand downloaden naar uw computer en vervolgens overbrengen naar de Raspberry Pi.
  4. Om de code uit te voeren, gaat u naar de directory waar de code staat in de Raspberry Pi en voert u de opdracht uit:

python colour_target_detection.py --conf conf.json

CONTINU GEBRUIK Elke keer dat u de Raspberry Pi opnieuw opstart, moet u de volgende opdrachten uitvoeren:

sudo ssh [email protected] -X

bron ~/.profile

werk op cv

Ga dan verder met stap 4 hierboven.

Belangrijke opmerking: NIET alle terminals kunnen video's weergeven. Gebruik op mac de XQuartz-terminal.

Aanbevolen: