MAS240 Prosjektfag: måle- og reguleringsteknikk Delprosjekt 5: Dronesimulator MAS240 Delprosjekt 5 Formålet med prosjektoppgaven Formålet med delprosjektet er å kontrollere de estimerte horisontale hastighetene til den stasjonære dronen med en joystick. Sluttproduktet av prosjektet å kunne fly i et virtuelt xyplan. Det virtuelle planet kan fremstilles enten ved hjelp av et xy-plott, eller ved hjelp av en dronesimulator. Kontroll-strukturen til delprosjektet er vist i figur 1 og 2. 5v Joystick Horisontal x-retning 𝑣𝑆𝑃 𝜔𝑆𝑃 𝜃𝑆𝑃 PI PI 𝑣 𝜃 𝜔 P 1 𝑠 Plant 1 𝑔∙ 𝑠 0v Vinkelhastighetssløyfe Vinkelposisjonssløyfe Horisontal hastighetsløyfe Figur 1- Kontrollstruktur for hastighetskontroll i x-retning 5v Joystick Horisontal y-retning 𝑣𝑆𝑃 𝜔𝑆𝑃 𝜃𝑆𝑃 PI PI Plant 𝑣 𝜃 𝜔 P 1 𝑠 𝑔∙ 1 𝑠 0v Vinkelhastighetssløyfe Vinkelposisjonssløyfe Horisontal hastighetsløyfe Figur 4 - Kontrollstruktur for hastighetskontroll i y-retning A2 A3 Figur 2 - Utlevert joystick Figur 3 - Koblingsskjema for joystick 2 MAS240 Delprosjekt 5 Del 1: Roll-kontroll Gjenta delprosjekt 4 for å styre roll på dronen. Koble opp de nye motorene og motorkontrolleren i henhold til koblingsskjema fra forrige delprosjekt. Del 2: Fly ved hjelp av joystick Koble joysticken i henhold til figur 3. De ulike aksene til joysticken leses med to ulike analoge innganger på Arduinoen. Det kan lønne seg å legge et filter på dette signalet for å gjøre responsen mykere. Normaliser avlesningen/tilpass signalet til å ha en maksimalverdi som skal tilsvare en ønsket makshastighet i horisontalplanet. Det kan lønne seg å legge til et kunstig dødbånd på aksene til joysticken, slik at du er sikker på at verdien blir null da den slippes til senterposisjon. Figur 5 - Simulink modell for avlesning av joystck Del 3: Dronesimulator Ved å integrere hastighetssignalet kan posisjonen til de ulike aksene estimeres. I denne delen av oppgaven kan dere selv velge hvordan dere vil simulere flyvingen. Velg alternativ 1 først, utforsk alternativ 2 om det blir tid. Alternativ 1: Enkel xy-flyving Fremstill flyturen ved hjelp av et xy-plott. 3 MAS240 Delprosjekt 5 Alternativ 2 – Flyving i simulert miljø (ikke obligatorisk) Disclaimer: Det har vist seg å være noen problemer med timingen til modellene i denne oppgaven, som gjør at kontrollsystemet oppfører seg ulikt i de forskjellige modusene. Når systemet er tunet skal softwaren lastes opp på arduinoen (Build), altså ikke «Monitoring and Tune» som vi vanligvis har brukt. Når softwaren kjører på arduinoen kan vi benytte seriell kommunikasjon for å sende data fra arduinoen til et program i Simulink som skal vise dronens posisjon og orientering. Installer “UAV Toolbox” fra «Add-ons» i MATLAB (R2021a eller nyere). • Sett opp et simulert miljø med blokken «Simulation 3D Scene Configuration» for å fly den stasjonære dronen i. • Sett inn blokken «Simulation 3D UAV Vehicle» for å simulere en drone i det gitte miljøet. I denne blokken skal posisjonen og rotasjonen til dronen fra de tidligere oppgavene sendes inn i vektorform. • Sett opp seriell kommunikasjon i programmet som lastes opp på Arduinoen (send), samt i programmet med simulatoren (recieve). 4