Deze procedure zal de IMU- en ADS-sensorkalibratie en -integratie met vliegcomputers illustreren en het gebruik van geïntegreerde INS- en ADS-gegevensverzameling en -verwerking in een outdoor vliegfaciliteit demonstreren. End-to-end vliegcontrole voor een quadcopter dat opereert in de M-Air-netvliegtestfaciliteit van de Universiteit van Michigan wordt gedemonstreerd.
1. Sensorkalibratie: Inertiële meeteenheid (IMU)
Sensorkalibratie is het meest effectief wanneer het wordt uitgevoerd met ondersteuning van hoogwaardige testapparatuur. Voor de 3-assige IMU kalibreer de gyroscoop en versnellingsmeter voor elke as afzonderlijk met behulp van een nauwkeurige snelheidstabel (Figuur 6). De snelheidstabel roteert nauwkeurig met een door de gebruiker gedefinieerde hoeksnelheid. De gebruiker geeft een reeks snelheidscommando's uit, waarbij de IMU de gegevens verzamelt die nodig zijn voor sensorkalibratie. Het onderstaande eenassige kalibratie-experiment wordt daarom drie keer herhaald, één keer voor elke IMU-sensoras (x, y, z).
(9)2. Quadcoptervliegexperimenten
Voor onze laatste serie experimenten monteren we de IMU en pitot-systeem op een quadcopter (getoond in Figuur 7) en vliegen in de M-Air-netvliegfaciliteit van de Universiteit van Michigan. Het voertuig wordt gestabiliseerd via een poort van het Ardupilot open source-autopilootpakket naar de Beaglebone Blue (geen microprocessor gebruikt) en geconfigureerd voorafgaand aan de vlucht via de Mission Planner-grondstationsoftware. Een radio-controle-zender/ontvanger-interface stelt de piloot in staat om 'outer loop'-commando's te geven voor quadcopter-hoogte, zijwaartse beweging en koers naar de 'inner loop'-vliegcontrolewet van Ardupilot die de quadcopterrolhoek, pitchhoek, yawhoek (koers) en hoogte reguleert. [14]
Omdat een quadcopter geen luchtsnelheidsfeedback nodig heeft om te stabiliseren, vertrouwt Ardupilot alleen op IMU-gegevens plus een drukgevoelige sensor voor hoogte, die wordt gekalibreerd tijdens de programma-initialisatie ten opzichte van de startdruk op hoogte, om de vlucht te stabiliseren op basis van pilootinvoer. Een volledig autonoom verlengstuk van Ardupilot vereist inertiepositiegegevens van GPS of een ander sensorsysteem (bijv. hogesnelheidsbewegingsregistratie). Omdat onze experimenten werden uitgevoerd met quadcopters in beperkte omgevingen, is het pitot-luchtgegevenssysteem niet noodzakelijk. Pitot-systemen zijn echter essentieel voor vliegtuigen met vaste vleugels en multikopters die precieze vliegpadden proberen te volgen in onzekere, winderige omgevingen. [15, 16] De vliegtestprocedure is verdeeld in drie fasen: voor de vlucht, vliegtest en
Bron: Ella M. Atkins, Department of Aerospace Engineering, University of Michigan, Ann Arbor, MI
Overzicht
Een automatisch piloot stelt vliegtuigen in…
Deze procedure zal de IMU- en ADS-sensorkalibratie en -integratie met vliegcomputers illustreren en het gebruik van geïntegreerde INS- en ADS-gegevensverzameling en -verwerking in een outdoor vliegfaciliteit demonstreren. End-to-end vliegcontrole voor een quadcopter dat opereert in de M-Air-netvliegtestfaciliteit van de Universiteit van Michigan wordt gedemonstreerd.
1. Sensorkalibratie: Inertiële meeteenheid (IMU)
Sensorkalibratie is het meest effectief wanneer het wordt uitgevoerd met ondersteuning van hoogwaardige testapparatuur. Voor de 3-assige IMU kalibreer de gyroscoop en versnellingsmeter voor elke as afzonderlijk met behulp van een nauwkeurige snelheidstabel (Figuur 6). De snelheidstabel roteert nauwkeurig met een door de gebruiker gedefinieerde hoeksnelheid. De gebruiker geeft een reeks snelheidscommando's uit, waarbij de IMU de gegevens verzamelt die nodig zijn voor sensorkalibratie. Het onderstaande eenassige kalibratie-experiment wordt daarom drie keer herhaald, één keer voor elke IMU-sensoras (x, y, z).
(9)2. Quadcoptervliegexperimenten
Voor onze laatste serie experimenten monteren we de IMU en pitot-systeem op een quadcopter (getoond in Figuur 7) en vliegen in de M-Air-netvliegfaciliteit van de Universiteit van Michigan. Het voertuig wordt gestabiliseerd via een poort van het Ardupilot open source-autopilootpakket naar de Beaglebone Blue (geen microprocessor gebruikt) en geconfigureerd voorafgaand aan de vlucht via de Mission Planner-grondstationsoftware. Een radio-controle-zender/ontvanger-interface stelt de piloot in staat om 'outer loop'-commando's te geven voor quadcopter-hoogte, zijwaartse beweging en koers naar de 'inner loop'-vliegcontrolewet van Ardupilot die de quadcopterrolhoek, pitchhoek, yawhoek (koers) en hoogte reguleert. [14]
Omdat een quadcopter geen luchtsnelheidsfeedback nodig heeft om te stabiliseren, vertrouwt Ardupilot alleen op IMU-gegevens plus een drukgevoelige sensor voor hoogte, die wordt gekalibreerd tijdens de programma-initialisatie ten opzichte van de startdruk op hoogte, om de vlucht te stabiliseren op basis van pilootinvoer. Een volledig autonoom verlengstuk van Ardupilot vereist inertiepositiegegevens van GPS of een ander sensorsysteem (bijv. hogesnelheidsbewegingsregistratie). Omdat onze experimenten werden uitgevoerd met quadcopters in beperkte omgevingen, is het pitot-luchtgegevenssysteem niet noodzakelijk. Pitot-systemen zijn echter essentieel voor vliegtuigen met vaste vleugels en multikopters die precieze vliegpadden proberen te volgen in onzekere, winderige omgevingen. [15, 16] De vliegtestprocedure is verdeeld in drie fasen: voor de vlucht, vliegtest en
Een vastvleugelluchtvaartuig bereikt stabiele vlucht door vier krachten in balans te brengen: aerodynamische lift, aerodynamische weerstand, stuwkracht van het aandrijfsysteem en gewicht. Om een stabiele vlucht te bereiken, moet het ook momenten over alle drie de assen, de rol-, pitch- en yaw-as, in balans brengen. Alle rotaties worden gedefinieerd als hoeken over deze assen, met veranderingen in de rolas die zijwaartse beweging veroorzaken, veranderingen in de pitchas die voorwaartse en achterwaartse kantelende bewegingen veroorzaken en veranderingen in de yaw-as die veranderingen in de koers veroorzaken.
Om het vliegtuig te stabiliseren tegen plotselinge veranderingen zoals windstoten, geeft een vluchtbesturingssysteem motor- en besturingsoppervlaktecommando's die in real-time moeten worden bijgewerkt. Het besturingssysteem gebruikt dus verschillende sensoren om een nauwkeurige meting van de huidige hoogte, dat wil zeggen de rol-, pitch- en yaw-hoeken, evenals de luchtsnelheid, te behouden. Zodra gegevens van de sensoren zijn verkregen, worden de signalen gefilterd om de impact van ruis en outliers op de verwerkte gegevenskwaliteit te verminderen. De gegevens worden vervolgens geaggregeerd tot een volledige schatting van de toestand van het vliegtuig en worden gebruikt voor vluchtbesturing.
Zowel vastvleugelluchtvaartuigen als multicopters vertrouwen op dit besturingssysteem om de hoogte van het vliegtuig te monitoren en te regelen. Beide gebruiken ook sensorsweeps die bekend staan als een inertiale meeteenheid of IMU.
Een IMU bestaat meestal uit drie soorten sensoren: versnellingsmeters om lineaire versnelling te meten, gyroscoopmeters om hoeksnelheid te meten en magnetische veldsensoren om de richting en sterkte van het lokale magnetische veld te meten. Een IMU is vaak gekoppeld aan een GPS-systeem en gemonteerd nabij het zwaartepunt van het vliegtuig, waarbij de sensorassen zijn uitgelijnd met de assen van de vliegtuigbody.
In deze lab gaan we de kalibratie van een eenvoudige IMU demonstreren met behulp van een precisietabel. We monteren vervolgens de gekalibreerde IMU op een multicopter en voeren een vliegtest uit om real-time en gefilterde gegevens te bekijken.
In het eerste deel van het experiment calibreren we de IMU die een snelheidsgyro en versnellingsmeter voor elke as bevat, met behulp van een precisietabel. De snelheidstabel draait precies met een door de gebruiker gedefinieerde snelheid volgens een reeks snelheidscommando's. Dit stelt ons in staat om de relatie tussen de spanningsaflezing en snelheid te bepalen.
Om te beginnen, monteer de IMU op de snelheidstabel met schroeven en richt deze zo dat de sensoras die in dit geval in dit geval de X-as wordt gekalibreerd, direct radiaal naar binnen of naar buiten is. Meet de afstand van het centrum van de tafel tot het centrum van de IMU en gebruik deze meting als de referentieradius voor cirkelvormige beweging. De IMU is gemonteerd op een dataverzamelbord. Sluit de componenten direct aan.
Stel nu de software in om de IMU-snelheid en versnellingsgegevens te verzamelen. Voer een reeks experimenten uit met verschillende positieve en negatieve constante snelheidstabelrotatiesnelheden met nul als de basismeting. Terwijl de snelheidstabel stilstaat, registreer de snelheidsgyro en versnellingsmeter door S-waarden. Start vervolgens de test en verzamel de gegevens.
Zodra alle hoeksnelheden voor die oriëntatie zijn getest, verwijdert u de IMU en plaatst u deze opnieuw zodat de versnellingsmeter omhoog is gericht. Bevestig het opnieuw, start vervolgens de test om -1 G-gegevens te verzamelen. Draai vervolgens de IMU zodat de versnellingsmeter naar beneden is gericht en verzamel +1 G-gegevens.
Wanneer u de kalibratie van de x-as hebt voltooid, plaatst u de IMU opnieuw zodat de z-as-sensor radiaal naar buiten is gericht en herhaalt u alle tests, waarbij u de IMU omhoog en omlaag positioneert om de versnellingsmeter te kalibreren. Voer dezelfde procedure uit voor de y-as-sensor.
In het volgende deel van het experiment monteren we de IMU op de quadrotor en vliegen we deze binnen een netvliegende faciliteit. Een radiaal besturingstransmitter-ontvanger-interface stelt de piloot in staat om commando's te geven voor hoogte, koprichting, rolhoek, pitchhoek en yaw-hoek.
Voordat u begint, laadt u alle batterijen op en test u de componenten voorafgaand aan de installatie op de quadrotor. Bereid vervolgens de vlucht voor en zorg ervoor dat ten minste drie personen, de piloot in commando, de visuele waarnemer en de grondstationoperator, allemaal op de hoogte zijn van de vluchtvluchten. Breng de quadrotor naar de netvliegende faciliteit en plaats deze op een vlakke landingsplaat.
De vliegtest begint met het opstijgen vanaf de oorsprong en klimmen tot een hoogte van 1,5 m. Vervolgens voeren we een vliegpatroon van twee meter vierkant uit met een referentiesnelheid van 0,5 m/s. De quadrotor pauzeert voorafgaand aan elke positieverandering. Vervolgens voeren we segmenten van hogere snelheidsdoorgangen uit bij 0,5, 1 en 1,5 m/s om te demonstreren hoe snelheid de overschrijding beïnvloedt.
Om de vliegtest te beginnen, start u de dataverzameling op het grondstation. Nadat u hebt bevestigd dat het vliekgebied vrij is, start u de motoren. Start nu de vliegtestsequentie met de piloot die elke stap noemt voordat u ze uitvoert, beginnend met de start. Zorg ervoor dat u alle wijzigingen in de vliegmodus, bekende waypoint-doelen of manoeuvres aankondigt.
Nadat de vliegplan is uitgevoerd, waarschuwt u de rest van het vliegteam van de laatste afdaling en landing van de quadcopter. Uitschakelen vervolgens de motoren op de quadcopter. Bewaar en download alle vlieggegevens en log de vlucht in het vlieglogboek. Herstel ten slotte alle apparatuur en maak het gebied vrij voor de volgende gebruiker.
Laten we nu de resultaten interpreteren. Beginnend met de kalibratiegegevens voor de IMU, tonen we eerst een plot van de rotatiesnelheid van de snelheidstabel versus
View the full transcript and gain access to JoVE Science Education videos
Chapters in this video
0:01
Concepts
2:31
Calibration of IMU
4:45
Real-time Flight Experiment
7:11
Results
Videos from this collection: