Forside ligger i andet dokument
|
|
|
- Jeppe Olsen
- 10 år siden
- Visninger:
Transkript
1 Forside ligger i andet dokument 1
2 Side 2 ligger i andet dokument 2
3 Indholdsfortegnelse Resume / Abstrakt... 5 Indledning... 6 Baggrund... 7 Krav til system rotor helikopter teori... 9 Hardware Gyro Sender / Modtager Forsyning Microkoptor regulering: LQR regulator (Linear Quadratic Regulation) Teori Implementering Ground Test First flight Flight test Virkeligheden vs modellen Sensor Teori Eget design Købt Implementering Test Design af højde regulator Måling af fysisk system Respons til impuls Trust målinger over jord i forskellige højder Design af regulator Første test af PD med ledning Første test af PD med batteri Første test af PID med ledning Autonom landing og letning Software Overordnet Højde regulator Autonom landing og letning Data indsamling Flight controller Kalibrering / Nulstilling Modtager decodning Driftskompensering Matrix udregningen Debugging Konklusion Referencer/ Litteratur
4 Appendiks A Hardware diagram Appendiks B Nick Roll Yaw Appendiks C Ultralydsafstandsmåler Ide og teori Spredning Detektering af signal Design Indgangs trin Båndpas filtre Oscillator Ensretter Software Appendiks D Hvordan bruger man systemet? Appendiks E Microkopter regulator flowchart Bilag
5 Resume / Abstrakt En 4 rotors helikopter har 4 inputs, som brugeren skal kontrollere: Thrust, Nick, Roll og Yaw. Når en landing skal fortages, skal brugeren tage højde for at når helikopteren kommer tættere på jorden, skabes der mere løft, som brugeren skal kompensere for. For derfor at lette brugerens arbejde, har helikopteren fået monteret sensorer, der muliggør autonom landing og autonom letning. Brugeren skal kun styre Nick, Roll og Yaw. Systemet vil selv styre mængden af thrust, der er nødvendig for at lette, svæve eller lande. Systemet virker ved, at sensorer måler den relative højde over landingsstedet, ved hjælp af en PID regulator reguleres thrusten, som helikopteren skal bruge for at holde sig flyvende i en bestemt højde. Ved ønske fra brugerens side, kan systemet fortage en kontrolleret landing eller letning. Abstract A 4 rotor helicopter has 4 inputs to be controlled by the user: Thrust, Nick, Roll and Yaw. Before a landing, the user has to be aware that the helicopter will create more lift, when close to the ground, which he will have to compensate for. To ease the pilot s workload, the helicopter has some sensors, which make autonomous landing and take-off possible. Just Nick, Roll and Yaw have to be controlled by the user. The system itself will regulate the amount of thrust, which is necessary for performing take-off, floating or landing. This is possible as sensors are measuring the relative height above ground, while a PID regulator adjusts the Thrust, which is used by the helicopter to be able to fly in a certain height. If wanted, the system is able to perform a controlled landing or take-off. 5
6 Indledning Da jeg selv flyver med fjernstyret helikopter, ved jeg hvor svært det er at lære, og hvor lidt der skal til for at helikopteren styrter eller på anden måde kommer galt af sted. Ideen til dette projekt kom efter samtale med et andet master projekt, som omhandlede horisontal drift kompensering og stabilisering af 4 rotors helikopter. Det var derfor en lille personlig vision at lave noget, som muliggjorde at hvem som helst kunne hurtigt lære at flyve samt manøvrere en helikopter. Systemet skulle derfor være stabilt og være tolerant over for brugerens inputs. Et system til at fastholde højden, samt lande og lette, ville aflaste brugeren til kun at kontrollere Nick, Roll og Yaw. Brugeren ville ikke skulle bekymre sig om Thrust, kun den ønskede højde, brugeren ønsker at flyve i. Systemet skal primært bruges til indendørs flyvning og ikke højere end 2 meter, da højden til loftet i de fleste rum ikke er meget mere end 3 meter. Selve ideen er en af grundstenene til at fuldautomatisere en 4 rotors helikopter, som andre studerende kan bygge videre på samt arbejde på at forbedre. Dette kunne være at montere et kamera til at søge efter en streg på gulvet, som helikopteren så kunne følge eller bruge et kamera til finde et markeret kryds og derefter fortage en landing på krydset. Kun fantasi og vægt sætter grænsen for mulighederne. Der skal her rettes en tak til Bertil Morelli for lån af værksted, uden denne mulighed ville det have været meget svært at lave de praktiske ændringer på helikopteren. 6
7 Baggrund Et tidligere master projekt lavede en LQR regulator til en helikopter i matlab, og efterfølgende implementerede den i en selvbygget helikopter. Figure 1: Original helikopter Denne helikopter fløj fortrinlig godt, og kunne flyves af hvem som helst på under 5 minutters oplæring. Desværre var denne helikopter ikke dokumenteret eller dokumentation ikke tilgængelig, dog fandtes matlab model samt SW kildekode. Men hvis kildekoden blev kompileret og lagt i helikopteren, kunne den ikke flyve. Der var altså et hul mellem kildekode og virkelig helikopter. Denne helikopter vil blive nævnt som helikopter original version 1. I sommeren 2008 besluttede én af de 2 personer bag den originale helikopter version 1, at der skulle laves en videre udvikling på den, der skulle laves nogle forbedringer, der skulle være AC motorer i stedet for DC motorer og den skulle have rettet andre fejl. Denne helikopter vil blive nævnt som helikopter original version 2 Samtidig starter et projekt, som skal kompensere for den drift, den originale version 1 helikopter havde, dette skulle opnås med et lodret monteret kamera, lidt ligesom en optisk mus virker. Da de ikke kunne bruge den originale helikopter, fordi dens kildekode ikke var komplet og de ikke kunne bruge helikopter original version 2, da den ikke virkede på 7
8 det tidspunkt, besluttede de at købe en færdig udgave fra et tysk open source projekt ved navn denne helikopter vil blive nævnt som microkoptor version 1. Denne helikopter baserede sig på en PD regulator med input fra gyro og accelerometer. September 2008 starter et projekt, som skal lave en ny kontrol matrice til helikopter original version 2 modellen, samt få den til at flyve. De fysiske parametre minder meget om microkoptor version 1, der bliver også brugt de samme rotorblade og motorer + motorkontroller. Denne helikopter har arvet det bedste fra begge. Den bygger på microkoptor version 1, men har fået en større ombygning. Krav til system Til helikoptersystemet stilles følgende krav: Systemet skal kunne fortage en autonom landing og letning uden at skade helikopteren. Dette skal foretages med rimelig hastighed og ske kontrolleret. Systemet skal endvidere kunne holde helikopteren i en specificeret højde. Helikopteren skal kunne flyve stabilt i luften samt være selvoprettende og altid søge til vandret flyveposition. Det vil senere under konklusion blive valideret, om disse krav er opfyldt. 8
9 4 rotor helikopter teori Figure 2: 4 rotor helikopter set fra oven 4 roter helikoptere er ikke nogen ny ide, den stammer fra 1920, men uden moderne computer regnekraft var det nogle meget svære helikoptere at flyve. I modsætning til andre helikoptere har 4 rotor helikoptere fast pitch på rotorerne. Rotorerne er fast monteret på motoren, derfor er der næsten ingen mekanik i en 4 rotor helikopter, hvor en normal helikopter har et større mekanisk behov for at kunne flyve. Samtidig bliver al energi brugt på løft at helikopteren, hvor en normal 1 rotor helikopter bruger energi på halerotoren for ikke at spinde om sig selv. Princippet som vist på Figure 2, 2 rotorer drejer mod uret og 2 med uret rundt. Hvis alle motorer øger hastigheden lige meget, vil der skabes lige meget thrust (forudsat at rotor og motor er ens på alle 4) og helikopteren vil stige vertikalt til vejrs. Figure 3: 4 rotor helikopter set fra siden For at få helikopteren til at flyve i en bestemt retning, ændres thrust vektoren, se Figure 3. Hvis eks. motor 3 og motor 4 øges i kraft, vil helikopteren vippes og flyve i pilens retning. 9
10 For at holde Yaw konstant, skal momentet fra alle rotorer være lige stort. For at dreje helikopteren om Yaw, sænkes motorkræfterne til 1 og 3, det vil forårsage at momentet ikke længere er lige stort og ikke i balance, hvilket vil gøre at helikopteren drejer. Hardware Selve helikopteren er købt som byggesæt fra uden sender, ligesom normale modelfly. Med i pakken var 4 motorer (Robbe ROXXY BL-Outrunner ) + 4 motorcontrollere, rotorer, et mikroprocessor board, en ramme, nogle ledninger og en modtager. På mikroprocessor boardet sidder 3 ENC-03J gyroskoper fra Murata, samt et 3 axis LIS344AL accelerometer fra ST. Gyro Gyroerne fra Microcopter er meget dårlige, driver meget og giver meget lille signal output. Derfor ændres de i første omgang til ADRX150 fra Analog Devices, de er analoge og skal derfor have en AD konverter. Mikroprocessorens interne AD konverter har ikke mere end 10bit og laver en del støj, derfor skiftes de 3 single gyroer til et samlet gyro modul ADIS Modulet har 3 gyroer, som kan konfigureres forskelligt med forskellige følsomheder og filtre, samtidig har det intern 14bit ADC på hver gyro og 3 axis accelerometer. Dog det, der gør det speciel godt, er at alt er kalibreret fra fabrikken og er temperaturkompenseret. Alt i alt meget bedre end de andre. Interfacet er SPI og kan køre med 2 Mbit som maksimal hastighed. De 3 interne gyroer konfigureres til at være 150 o / sec og have 8 filterstave, sample tiden sættes til ms. For få vinkelen, integreres vinkelhastigheden op; - for på en simpel måde at teste om resultatet passer, blev helikopteren placeret på en kontorstol, hvorefter en rotation på 360 o også skulle fremkomme af den integrerede vinkelhastighed. En anden metode ville være at bruge et turntable, en roterende plade hvor rotationshastigheden er kendt, men den mere simple metode var hurtig og krævede intet turntable. Indstillingerne i gyromodulet gemmes i dens interne flash, derfor er en konfiguration ikke nødvendig ved power on. Accelerometer værdierne bliver ikke brugt i regulatoren, men da de er tilgængelige, hentes de ud, og kan evt. bruges til billedstabilisering eller udregning af jordens gravitions vector og dermed hældningen af helikopteren. 10
11 Sender / Modtager Til at styre helikopteren bruges en Futaba FC9 professionel sender til model fly, den har 8 kanaler, som kan konfigureres individuelt til forskellige udslag og evt. mixe en kanal med en anden. Dette bruges til normale model fly og normal model helikopteren, hvor eksempelvis krængeror og haleror forbindes sammen eller motorhastighed blandes med collective pitch, dog ikke brugt her. Senderen er af beyond range klassen, hvilket betyder, at senderen rækker længere end man har visuel kontakt med modelflyet / helikopteren. Modtageren er en ACT DSL-4Top 35Mhz, en lille kompakt PPM modtager. Den har 4 servo udgange, men kan også levere et sumsignal. Senderen sender 8 kanaler multiplexet sammen i et signal, hvor en normal modtager decoder disse enkelte signaler og sender dem til de respektive servos. Sumsignalet er det multiplexede signal, ved at bruge capture compare timeren i mikroprocessoren, decodes signalet ud til de 8 kanaler, som senderen transmitterede. En anden fordel ved at bruge sumsignalet, er at der kun bruges et port bit til at få alle signaler ind. På helikopteren er monteret et F2M03GX Free2move Bluetooth modul, dette er konfigureret til at være et serielt link, modulet holder sammen med en PC selv styr på flow kontrol samt retransmission. I dette projekt er dette serielle link kun brugt til at modtage informationer fra helikopteren under flyvning. Producenten skiver, at det har en rækkevidde på 100meter, dette er dog ikke efter prøvet. Forsyning Helikopteren flyver på 3 celles litium polymer (LiPo) batterier, men under udvikling er en reguleret strømforsyning på 11V 20A brugt for at få mere flyvetid. Til fri flyvning er brugt et 2Ah batteri fra Graupner, som vejer 156g, dette giver ca. 10 minutters effektiv flyvetid. For at lade LiPo batterierne, er en Graupner Ultramat 10 multilader sammen med en Robbe 8446 LiPo balancer brugt. LiPo batteri celler tåler ikke at bliver ladet over 4,2V eller komme under 2,5V. For at sikre, at en celle i en 3 cellet pakke ikke overstiger 4,2V bruges balanceren, som tilsluttes mellem laderen og batteri pakken, på batteri pakken er der et stik med ledninger fra hver celle, så balanceren sørger for, at hver celle bliver ladet lige meget. Bruges ikke en balancer, risikeres at én af cellerne at blive overladet, hvilket ødelægger cellen, i værste tilfælde eksploderer cellen. 11
12 Microkoptor regulering: Microcoptor helikoptere har deres aksler anbragt således, at front er en motor og hver side er en motor, dette gør at de kan simplificere deres outputs. Deres flyveregulator baserer sig på en PID regulator, men de har en række forskellige inputs, de bruger gyroer til at bestemme hældningen og rotationshastigenheden. Da deres gyroer meget dårlige, driver meget samt giver lille udslag, er deres regulatorer startet med at være simple, men der er bygget flere og mere forskellige ad-hoc løsninger i systemet. For at kompensere for drift og for at kompensere for at outputtet fra gyroerne er meget små, ændres offset spændingen til gyroerne hele tiden. Et flowchart af en del af regulatoren kan ses i appendiks, der findes ikke noget officielt flowchart af hele systemet. Deres helikopter virker så længe at piloten hele tiden kompenserer for fejl, - hvis piloten giver slip på styrepinden, vil helikopteren styrte ukontrolleret ned til jorden. Derfor anbefaler de også, at man skal øve og øve i en simulator, inden man forsøger sig i virkeligheden. Et landings system til denne helikopter vil være svært at lave, da helikopteren selv med en dygtig pilot svinger +/- 2m i alle retninger. Et landings system ville skulle være stabilt og det skulle kunne være selvoprettende, forstået på den måde, at hvis brugen giver 0 ændring (styrepinden er i midten), skal helikopteren stå stille i luften. Deres flyveregulator dur ikke til dette formål og udskiftes med en bedre. 12
13 LQR regulator (Linear Quadratic Regulation) Teori Det er muligt at stille en overføringsfunktion op for et dynamisk system, som fortæller hvordan input omsættes til output, men den fortæller ikke noget om hvad der sker internt i systemet. Når kontrollerne skal justeres, er det ofte et kompromis mellem oversving, steady state fejl og stige tider. Dette kan til tider være svært og bliver ikke nemmere hvis der er flere inputs og flere outputs. Men hvis der kendes en model for systemet, er det muligt at lave en bedst mulig regulator til modellen. Til at opbygge modellen bygges en tilstandsmodel af systemet. Hvor: A matricen er system matricen B matricen er input C matricen er output Figure 4: Tilstands model Jo større forstærkning man har i systemet, jo hurtigere reagerer systemet på sensorernes output, men er derfor også mere følsomt overfor input på sensorerne. Ved at have en model af input på sensorerne og en tilstandsmodel af systemet, afbalanceres vægten af input i systemet, op imod hastigheden af reguleringen. Dette beskrives som en ligning man så forsøger at minimere og får derved den mest optimale regulering ud fra de vægtninger, man har givet på forhånd. Den dynamiske LQR måler så hele tiden på støjbilledet og udregner konstant en ny regulator, hvis støjen ændrer sig, så i stedet for at definere en fast PID regulator finder LQR systemet selv den optimale PID ud fra nogle vægtninger. 13
14 Figure 5: Regulator matrice sat uden på tilstandsmodel Disse vægtninger er motor gain, vinkel gain og vinkel hastighed gain. Ved derfor at tune dem, kan systemet blive stabilt. Implementering Regulatoren får vinkel og vinkelhastighed ind i en matrix, og ud kommer motor hastighederne, i forhold til hinanden. De ganges så sammen med den totale gain af regulatoren og trækkes fra det ønskede thrust. Det totale gain sættes til 1 til at starte med, og senere justering vil vise, om det skal gøres mindre eller større. For at påvirke helikopteren sådan, at den vil flyve i en bestemt retning, lægges der støj i form af signal fra brugerens styre pind. Piloten har 3 retninger, Nick (Y retning), Roll (X retning), Yaw (Z retning), som kan påvirkes se Figure 6: LQR flowchart. Mængden af vinkelhastighed og vinkel kan også justeres i form af et gain, til at starte med sættes disse til 1. Indbyrdes kan støjsignalerne skaleres i faktor, dette vil senere test afgøre. 14
15 Figure 6: LQR flowchart 15
16 Regulatoren skal køre med fast interval, ellers vil den ikke fungere optimalt, reguleringen vil blive ujævn. Mere om det under software. For at kunne nulstille regulatoren, reset variabler samt starte og stoppe helikopteren, bruges én af de 4 ekstra kanaler på senderen. En kanal med 3 forskellige positioner bruges til dette, én er kalibrering, én er motor stoppet og én er motor start. For at justere vinkel hastighed, gain, vinkel gain og motor gain, bruges de sidste 3 kanaler. På senderen forefindes 3 dreje knapper, som bliver skaleret i området 0-5, til at kunne justere gain, mens helikopteren flyver. Ground Test Da regulatoren vil forsøge at holde sig vandret, er den første test til at afgøre, om der reageres korrekt på forskellige ændringer. Vippes helikopteren til den ene side, skal rotorerne i den side køre lidt hurtigere for at give mere thrust for at få helikopteren tilbage til sin udgangs position. Og vise versa. Til at begynde med sættes alle stik inputs til 0 for ikke at justere på alt for mange parametre ad gangen. For at finde nogle parametre til motor gain, anglespeed gain og angle gain, blev helikopteren holdt i hånden, mens rotorerne drejede langsomt rundt. Motor gainet var alt for højt og regulatoren oscillerede, hvilket hurtigt blev klart, gainet blev dæmpet til 0,6 for at stoppe oscilleringerne helt. Vinkel hastighed gain og vinkel gain så ud til at virke fint med en værdi på 1. Når alt virker hensigtsmæssigt, kontrolleres det, at input fra styre pindene Nick, Roll og Yaw giver den ønskede effekt. Trykkes styre pinden til venstre, skal helikopteren også vippe til venstre (forudset at det er set bag fra). Dette var dog ikke tilfældet i starten, fordi de 4 motorer var alle vendt forkert, de kørte den forkerte vej rundt. Regulatoren regulerede fint og havde et respons, som passede med input. Dog så stick inputs Nick og Roll ud til og være forbyttet og Yaw var omvendt. Efter længere tid blev problemerne dog løst og fejlene rettet. For at finde parametrene til at skalere stick inputtene, blev der kigget i noget af den første helikopters source kode for at få et indtryk af, hvilken størrelse de kunne ligge i. Senere vil der blive indført ændringer, men til at begynde med bliver Vinkel hastighed ratio, Vinkel hastighed vs Vinkel ratio og Vinkel integrale ratio sat til 0,22. Stick gain bliver sat til 1. 16
17 First flight For ikke at skade helikopteren og forhindre den i at lave alt for mange ukontrollerede bevægelser, blev der monteret en snor i bunden, som gik ned til gulvet gennem en krog og hen til piloten. Ved at holde fast i snoren, enten ved at holde den med hånden eller træde på den med foden, kunne helikopteren fastholdes lige over jorden, mens at regulator parametrene blev justerede. Denne teknik var primitiv, men sikrede at helikopteren ikke vippede om på siden og blev beskadiget. Da helikopteren blev mere stabil, fik den også lov til at flyve lidt højere, se Figure 7. Figure 7: en snor muliggør hurtig redning at ustabil helikopter Første observation var, at helikopteren ikke reagerede meget på stick inputs, samt at den var noget ustabil. Angle gain blev forøget mens at motor gain blev sænket på grund af begyndende oscilleringer. 17
18 Vinkel gain er et udtryk for, hvor meget helikopteren skal reagere vinkel ændringer. Det kan anskues lidt om en art badebold effekt, se Figure 8. Figure 8: Badebold effekt Altså ændringer som om at helikopteren er på en stor badebold og vipper fra den ene side til den anden. Højere gain og helikopteren reagerer kraftigere på ændringer, dette er typisk drift og påvirkninger fra omgivelserne i form at konstant vind. Vinkel hastighed gain er et udtryk for, hvor meget helikopteren skal reagere på vinkel hastighed, dette kommer af turbulenser, som dannes rundt om helikopteren samt hurtige påvirkninger eks. vindstød og rystelser. For meget vil give oscillerende tendens omkring Yaw, se Figure 9 Figure 9: Vinkel hastigheds effekt For lidt giver en ikke-helikopter, som ikke flyver, den falder ud til den ene side fordi der ikke reageres på vinkel ændringen i den retning. Da regulatoren er en multiinput/multioutput regulator, vil ændring i en parameter have indflydelse på de andre parametre også, så hver gang en parameter ændres, skal de andre også ændres lidt. En forøgelse af vinkel gain medfører, at motor gain skal formindskes, og vise versa. Ved at prøve og ud fra observationer af handling, justeres de forskellige parametre ind, til en nogenlunde flyvende helikopter er fundet. En langsommelig proces, men lærerig. Ved de første flyvninger viste det sig, at en lille ændring på fjernbetjeningen resulterede i en stor ændring på helikopteren, hvilket ikke ville være tilfredsstillende til en evt. nybegynder. En nybegynder pilot ville hive meget i styrepinden, som derefter ville forårsage, at helikopteren forulykkede. For at mindske udslaget, blev stick gainet for Nick, Roll og Yaw nedsat til 0,3. 18
19 Derefter skulle der store udslag på fjernbetjeningen til at flytte helikopteren. Desværre var helikopteren stadig for følsom, og i en paniksituation, hvor eks. et objekt var i vejen, ville en normal bruger instinktivt rive modsat i styrepinden, hvilket ville resultere i at helikopteren reagerer kraftigt, men brugeren ville så bevæge styrepinden modsat for at korrigere. Dette vil resultere i, at brugeren har mistet kontrollen over helikopteren. For at modvirke dette, blev vinkel speed ratio sat ned til 0,64 i Nick og Roll retning, det samme blev gjort for vinkel integral ratio. Yaw forblev uændret på 1, men stick gainet blev sat op til 4 for at helikopteren drejede hurtigere rundt om sig selv. 19
20 Flight test Alle tidlige tests er fortaget med en fast strømforsyning og en ledning til helikopteren, mest fordi at dette gav mere flyvetid, men også fordi bluetooth modulet krævede strøm hele tiden for at fungere. Samt når en bluetooth forbindelse var lavet med PCen, måtte den ikke afbrydes uden at PCen afbrød den; hvis ikke dette skete i den korrekte rækkefølge, var Windows PCen meget lidt samarbejdsvillig før en genstart. Efter at have opnået en flyvende helikopter, kriblede det lidt med at se, hvad den kunne med et batteri og rigeligt med plads. Det første oplagte sted til at teste den, var en sportshal, dog var halbestyreren ikke meget positiv over for ideen, så et andet sted måtte findes. Heldigvis har DTU mange bygninger og forhallen til bygning 116 viste sig at være passende, 50 meter lang, 5 meter bred og 8-9 meter høj. Første forventning til helikopteren var, at den ville være mere responsiv uden en snor og at den ville skulle have lidt mere gain på vinkel gain. Denne forventning viste sig at holde stik, ændringen var dog meget lille, men alt tæller. Vinkel gain blev fundet til 1,439, vinkel hastighed gain 0,873 og motor gain blev fundet til 0,349. Nu var helikopteren klar til montering af højdesensor. Virkeligheden vs modellen. For at bevise, at helikopteren opfører sig som modellen og er stabil, påvirkes helikopteren i luften med et kraftigt vindpust. Dette virker som et step input, men der er ingen fysisk kontakt til helikopteren, under testen må brugeren ikke berøre styre sticks ne, da dette vil påvirke regulatoren. Alle data bliver logget, ved at plotte dem vælges et top punkt ud fra hvor helikopteren svinger mest. Data fra det punkt lægges ind i modellen som start betingelser, modellen har også vinkel gain, vinkel hastigheds gain og motor gain lagt ind. Sample nummer 36 bliver valgt som start punkt, og indsat i modellen, se Figure
21 Radian / sekund 1,5 1 0,5 0-0,5-1 Vinkelhastighed ved step påvirkning Roll Nick Yaw v ,5 Sampel nummer ( rate = 127ms ) Figure 10: Step påvirkning 21
22 Figure 11: Simulering og målte data 22
23 Ved at holde modellen op imod hvad den virkelige helikopter gjorde, kan det ses om de opfører sig ens. Hvis de er helt ens, er modellen og helikopteren helt ens, dog vil der altid være ting, som ikke er modelleret. Det ses på Figure 11, at simulation og den virkelige helikopter følges godt af, efter 1,5 sek. er simulationen stabil set på Nick og Roll, dog er helikopteren det ikke, den svinger lidt med en frekvens på omkring 2Hz. Selve step påvirkningen er dæmpet, men oscillationerne kan ikke dæmpes, de menes at stamme fra motorkontrollerne og rotorbladene. Rotorbladene er modelleret som stive, hvilket de ikke er.. Yaw reagerer langsommere end modellen, udsvinget er også 10 gange mindre end Roll, ved step response testen, helikopteren yder dog en tilfredsstillende ydelse og derfor har der ikke været gjort mere i at få model og virkelighed til at ligne. Simulations målingerne ser meget finere ud, dette skyldes at matlab simulerer med 10ms opløsning, mens helikopteren dumper data med 127ms opløsning, så den kommer til at se lidt hakket ud. 23
24 Sensor Teori For at bestemme højden af noget flyvende, kan forskellige teknologier bruges, lufttryk er den mest oplagte, da den ikke har nogen højde begrænsning, som andre teknologier har. De fysiske love beskriver, hvordan lufttryk falder alt efter den højde man befinder sig over jordens overflade. En lufttryksmåler til at lande efter medfører dog nogle problemer. Et problem er at landingen skal fortages i samme højde som starten blev fortaget i for det er i den højde, offsettet er lavet. Man skal også måle trykket meget præcist og de bedre højde målesystemer, der er fundet på nettet, har en højde difference på en 30-40cm, hvilket betyder at helikopteren vil kunne ramme jorden hårdt. Et andet problem er, at jo tættere på jorden man kommer, jo mere stiger trykket på grund af luftstrømmen fra rotorerne, de kunne dog modelleres, men hvis der lettes og landes i et rum med f.eks. en mur tæt på, ville dette forårsage en anden luftstrøm, hvilket vil give et andet tryk ved forskellige højder. Derfor vil en højdesensor til landingssystemet baseret på lufttryk ikke egne sig godt, dog vil den være god til at holde højden, når helikopteren er i luften. Ultralyd eller ekko afstandsbedømmelse er en anden kendt metode, send en burst ud og mål tiden til den reflekteres og når tilbage, ved at kende udbredelseshastigheden, kan afstanden udregnes. Ultralyd har dog den ulempe, at det kræver at der kommer tilstrækkelig lyd tilbage til at den kan detekteres samt at refleksions fladen er flad. Lyd udbredes som en kegle, derfor vil der på større afstande være mindre lyd at opfange. Mellem hver afstandsmåling skal man sikre sig, at evt. lyd fra refleksioner er døet ud for ikke at forstyrre næste måling. Da lydens udbredelseshastighed afhænger af luftens temperatur, er det også nødvendigt at kende temperaturen. IR og fase detektering er også en metode, samme princip som lyd, her sendes en lysstråle ud og afstandsdetekteringen forgår ved at måle faseforskydningen af lysstrålen. Ved at kende faseforskydningen mellem det afsendte og det modtagne signal, kan afstanden udregnes ud fra kendskab til lysets hastighed og bølgelængde. Ulempen ved lys er, at det er punktafstandsmåling, så hvis man flyver over en lille forhøjning, vil det give en falsk måling af den egentlige højde. Fælles for både ultralyd og IR er, at en relativ højde kan bestemmes, men det kan ikke verificeres om landingsområdet er egnet til at lande på. Hvis der evt. skulle landes på et bord, kunne noget af landingsstellet rage uden for bordet og helikopteren ville derefter styrte til jorden. Det antages derfor, at der landes og lettes fra et stabilt gulv. 24
25 Eget design For at få det bedste ud af de 2 teknologier, ville en ultralydsafstandsmåler og en IR sensor tilsammen bringe en stabil indikation af den relative højde. IR god til bløde (tæpper) overflader, men fejler ved blanke overflader, mens ultralyd var god til blanke overflader, men havde problemer med bløde overflader (dæmper lyd). Samtidig kunne en ultralydsafstandsmåler række længere end en IR, - IR havde forskellige rækkevidder, men ultralyd havde kun en. Så for at dække behovet, skulle flere IR afstandsmålere bruges for at dække samme rækkevidde. Da færdigdesignede ultralydsmålere ikke havde en præcision bedre end +/-2.56cm som var inden for en størrelse, som var mulig at bruge til at flyvning, (her tænkes på vægt), blev en ultralydsafstandsmåler designet af mig, mere om det i appendiks. Den blev senere fravalgt, da det viste sig, at der var en række uhensigtsmæssigheder ved ultralyd. Da ultralyd bliver lavet af en lille højttaler, som er mekanisk og kan blive forstyrret af vibrationer, giver det støj og fejl målinger. Det viser sig også, at mængden af elektronik vejer meget, samt at der skal skærmes godt mod senderens forstyrrelser, er dette med til at fravælge den løsning. Færdigkøbte ultralydsafstandsmålere kan dog godt bruges til at holde en flyvehøjde, men til at lande efter, er de ikke ideelle. Købt Der findes mange forskellige afstandsmålere, de mere præcise er dog også større og dermed også tungere. Sharp er et af de førende firmaer inden for små IR afstands sensorer. Der skal dog 2 til for at dække kravet, derfor blev en 10-80cm og en cm afstands sensor købt. Begge har en analog spænding som output som er proportional med afstanden. 25
26 Implementering For ikke at flytte batteriet fra helikopterens center, monteres de 2 højde sensorer uden for center mod bagenden af helikopteren. De forsynes med 5V fra hovedprintet, og har påmonteret nogle forsynings kondensatorer for at mindske støj. Den kortrækkende afstandssensors output går ind i mikroprocessorens analoge indgang, som har en opløsning på 10bit. Den langtrækkende afstandssensor går ind på en 12bit AD indgang, som sidder på gyro modulet, fordi at det har det største højdespring pr. bit. En anden løsning kunne have været at montere en 16bit AD, men dette ville medføre ekstra vægt og komponenter, så denne løsning vælges ikke. Ved at se på om den kortrækkende sensor er under 0,4meter, afgøres det om den aktuelle højde skal baseres på en kortrækkende eller langtrækkende sensor. Den langtrækkende sensor er ikke pålidelig under 0,3meter, derfor 2 sensorer. For at finde omregningsformlerne for de 2 sensorer, blev bit måleværdier målt på kendte afstande, hvor efter tendens kurven blev lagt ind over. Resultatet ses i Figure 12 for en kortrækkende IR sensor. meter* y = -0,0013x 3 + 3,0845x ,7x kortrækkende IR Poly. (kortrækkende IR) Bit måle værdi Figure 12: Omregnings formel for kortrækkende sensor 26
27 Afstanden er gjort gange større for at mindske polynomiums størrelse, meget små værdier så som 10-5 kan ikke regnes præcist i C uden at tage forholdsregler. Derfor er afstanden større og bagefter divideres resultatet således at det vises som meter. 3 2,5 2 Meter 1,5 1 0,5 0 Langt rækkende IR Potens (Langt rækkende IR) y = 1584,4x -1, Bit værdi Figure 13: Omregningsformel for langtrækkende sensor Den langtrækkende sensor har en god præcision fra 40cm til 1,2meter, derefter ligger måleværdierne for forskellige afstande tættere. Her er ekspotentialfunktionen den funktion, som passede bedst til at dække kurven. Den er ikke modificeret i højde, hvilket forenkler omregningen meget. Måleværdier kan ses som tabel under Bilag. 27
28 Test For at verificere, at højden registreres korrekt, holdes helikopteren i forskellige højder, hvorefter højden måles fysisk og sammenlignes med sensorens højde registrering. Derefter plottes fejlen for forskellige højder. Fejl i cm Fejl på højdesensor Højde i cm Figure 14: Fejlvisning på højdesensorer Det ses på Figure 14, at fejlen stiger i takt med højden, og der er et spring i fejl ved 40cm, dette er fordi at her sker springet mellem de 2 sensorer. Fejlen er heller ikke væsentlig, bare output er det samme fra måling til måling. Højdepræcisionen er mest kritisk ved højder under 40cm, det er her at helikopteren skal lande, og her får ground effekten indflydelse. For at se, hvor meget støj på højdemålingen der var, monteredes helikopteren i en fast højde (35cm og 75cm) se Figure 15 og Figure 16, hvorefter en række målinger blev lavet, hvorfra man kan se differencen. 28
29 Højde i mm Samples Figure 15: Støj på kortrækkende sensor ved 35cm Højde i mm Samples Figure 16: Støj på langtrækkende sensor ved 75cm Som det ses, er de 2 sensorer forskellige i støj, den langtrækkende er fordelt pænt omkring et middel, og den kortrækkende sensor er meget spredt. Dette kan have noget at gøre med at den konverteres i den interne AD i mikroprocessoren, samt at afstand pr. bit er høj i 25cm og op efter. For at efter vise dette, laves et lignende forsøg, hvor afstanden er 13cm, se Figure
30 Højde i mm Sample Figure 17: Støj på kortrækkende sensor 13cm Det ses, at støjen er meget mindre, og det skyldes, at der er flere bit pr. afstand på så kort afstand. Det er også i dette område, at det er mest vigtigt at kende højden, da groundeffekten samt turbulenser har stor indflydelse. Et filter i form af midling af målinger ville gøre målingerne mindre støjfyldte, men test i virkeligheden vil vise, om der er behov for dette. Hvis det viser sig, at der er behov for det, kan det implementeres eller en bedre AD konverter kan påmonteres. 30
31 Design af højde regulator Måling af fysisk system Respons til impuls For at få en ide om, hvor hurtigt systemet reagerer på trust ændringer, blev der givet en kendt øgning af motortrust, når helikopteren var i luften. Samtidig med blev den relative højde logget, derved er det muligt at se responset ved en kendt ændring, og derved fortælles noget om systemets dynamik gas boost højde 2000 højde i mm sample nummer Figure 18 : Højdemåling 1 (127ms sample tid) 31
32 2500 gas boost højde 2000 højde i mm sample nummer Figure 19 : Højdemåling 2 (127ms sample tid) Det ses på Figure 18 og Figure 19, at kurverne ligner en parabel, og det passer med en konstant acceleration af systemet. Der er nogen fejlmålinger imellem, dette skyldes at forsyningsledningen har hængt ind over sensoren. Steppet, som tilføres, er på 15 digital thrust enheder (den digitale værdi, som skrives til motorkontrollerne for at få motorerne til at køre hurtigere), som tilføres til den thrust, som kommer fra fjernkontrolleren. For ikke at ramme loftet, stoppes steppet hurtigt efter udførelse. Begge tests er udført med 127ms sample rate, og thrust forøgelsen stod på i 1,27 sekunder. 32
33 Trust målinger over jord i forskellige højder For at få et indtryk af, hvordan helikopteren arbejder i de forskellige højder over jorden, testes den ydede trust ved forskellige inputs. Dette er gjort ved at placere helikopteren på en vægt, med en ekstra masse sådan at den ikke forlader vægten, hvorefter alle motorer blev sat til samme hastighed; den trust hvormed helikopteren så løftede sig, ville fremkomme på vægten i gram. Ved at gentage testen i forskellige højder over jorden, kan ground effekten observeres. For at sikre sig, at man ikke påvirker luftstrømmen alt for meget, måtte der bygges en art tårn for at få højde. Opstillingen ses i Figure 20:Test af trust i forskellige højder, og resultat ses i Figure 21: Resultat af trust målinger i forskellige højde. Figure 20:Test af trust i forskellige højder 33
34 trust i digital input ,3cm over jord 70,2cm over jord 58,7cm over jord 47,3cm over jord 36,3cm over jord 24,5cm over jord 13cm over jord Gram løft Figure 21: Resultat af trust målinger i forskellige højder 34
35 Det ses ud fra grafen, at løfteevnen stiger desto nærmere helikopteren er på jorden. Selve helikopteren vejer omkring 600gram og et batteri vejer 156gram, på grafen ses det at omkring 700grams løft er hældningen af de 7 kurver næsten ens. Derved skulle en regulator kun skulle ændre offset og ikke forstærkning. Regulatoren skulle ændre forstærkning (mens helikopteren fløj gennem groundeffect området) hvis ikke kurvernes hældning var ens, men varierede meget. Design af regulator En P regulator ville være den simpleste regulator, men ville kunne give en stort overshoot, hvilket ikke ville være hensigtsmæssigt hvis der er et loft i det rum, man flyver i indendørs, hvor helikopteren ville risikere at ramme loftet hvis overshootet var for stort. Derfor laves en PD regulator med overføringsfunktionen nedenfor for at dæmpe overshoot. τ ds + 1 Gc ( s) = K P *, α < 1 ατ s + 1 Da der ønskes en forholdsvis langsom regulator, som har en setling time på omkring 2 sekunder samt et oversving på ikke mere 50%, vælges alfa til 0.1 og omega bestemmes til at være 2 Hz. 1 1 τ d = = = 0,2516 α * ω 0.1 * 2 * 2π Så kommer overførings funktionen til at se sådan ud: G c Tilhørende Bodeplot hvor Kp er 1. 0,2516s + 1 ( s) = 0,1* 0,2516s + 1 d 35
36 20 Bode Diagram Magnitude (db) System: pd Frequency (rad/sec): 12.9 Magnitude (db): 10.2 Phase (deg) System: pd Frequency (rad/sec): 13.2 Phase (deg): Frequency (rad/sec) Figure 22: Bode plot at systemet 36
37 Mere thrust til motorerne vil forøge accelerationen af helikopteren, som så vil give mere hastighed, som vil give positions ændring og derved mere højde. En simpel model med 2 integrationer og tilbageføring kan derfor beskrive helikopterens Z aksel. For at helikopteren kan lette, lægges der et offset ind, som giver noget thrust indtil at helikopteren er fri fra jorden. Thrust Hastighed 1 ønsket højde ( meter ) 1 kp s+1 0.1*0.2516s+1 Transfer Fcn 1 s hastighed 1 s Integrator1 610 Thrust(gram ) for at kunne lette højde Der gives et step på 1 og højden plottes. Figure 23: PD regulator på model 37
38 Figure 24: Steprespons, Kp=1 Det ses at indsvingningstiden er over 10sekunder, samt at oversvinget er ca. 70%. Kp øges til 5. Figure 25: Steprespons, Kp=5 Et øget Kp har mindsket oversving og forøget respons tiden. 38
39 Den samlede åbenloop sløjfefunktion G ( s) = K å p * G c ( s) * 1 * s 1 0,2516s + 1 = 5* * s 0,1* 0,2516s * s 1 = s 50s + 198,72 3 s + 39,74* s 2 Bodeplottet for åbensløjfe funktionen ses nedenfor. Figure 26: Bodeplot af åbensløjfe systemet kp=5 39
40 Fase margen for systemet er = 28grader. PD regulatoren ser ud til at kunne opfylde kravene og implementeres derfor. Regulatoren diskritiseres efter Tustin metoden i matlab med en sample time på 10ms, da det er gennemløbstiden for hele flight controlleren, der ønskes. 8,508* z 8,177 G ( z) = z 0,6685 Implementering i C kode kan gøres ved direkte realisering. Overføringsfunktionen for denne realisering er: G output( z) Error( z) b0 * z + b1 z + a1 b0 + b1* z 1+ a1* z 1 ( z) = = = 1 Hvor: b 0 = 8,508 b 1 = 8,177 a 1 = Dette skrives om. output ( z) 1 1 = error( z) * ( b0 + b1* z ) output( z) * a1* z En funktions diagram ses her: 1 Error b0 1 output -1 Z -1 Z b1 a1 Figure 27 Dette kan derefter skrives om til C kode, hvor z -1 forsinkelsen laves ved at gemme en variabel til næste cycle. 40
41 output=8.508*error+dummy; output_old=output; error_old=error; dummy=(-8.177*error_old)+(output_old*0.6685); For at være sikker på, at regulatoren i C koden regner rigtigt, laves en test, hvor kendte værdier bliver indført og output af regulatoren holdes op mod matlabs resultater. Første test af PD med ledning Selve højderegulatorens udregninger udføres hele tiden, men dens output bliver kun koblet til ved kommando, derfor kan helikopteren flyve i en normal mode og skiftes om til en mode, hvor regulatoren holder en ønsket højde. Dette gøres af hensyn til sikkerhed, og et ønske om stadig at have fuld kontrol over helikopteren, hvis uventede situationer skulle forekomme. Alle data sendes tilbage til en PC og man kan live se, hvad der forgår i helikopteren. Inden rotorerne sættes i gang, holdes helikopteren i hånden og løftes op og ned, for at simulere stigning og fald. Hvorefter regulatorens output kan observeres, og det kan afgøres om regulatoren giver et fornuftigt output i tilfælde af fortegnsfejl. Efter at det er verificeret, kan en egentlig test begynde, helikopteren bringes til svævning lige over jorden og den ønskede højde er 0meter, herefter sættes regulatoren ind. Da den ønskede højde er opnået, er output 0. Derefter ændres den ønskede højde til 1meter, outputtet af regulatoren vil stige positivt og helikopteren vil lette. Ved første test blev det opdaget, at regulatoren er meget langsom og oversvinget er ikke synligt stort, dette kan skyldes, at der er monteret en ledning på helikopteren til strømforsyningen, der virker som en dæmper ved at ændre helikopterens vægt alt efter højde. Ledningen beholdes på, da der er begrænset højde til loftet, og et batteri ville medføre mulig interaktion med loftet, men senere tests bliver udført med batteri og højere til loftet. For at imødekomme hurtig regulering, øges Kp gradvist til 17,6 fra 5, dette medfører det ønskede resultat. Kp = 17,6 indsættes i matlab modellen for at se, hvordan oversvinget kunne se ud, hvis der var batteri på helikopteren. 41
42 Figure 28: Steprespons med Kp=17,6 42
43 højde i mm ønsket højde i mm Figure 29: Step response med ledning Overshoot = Max Slut slut = 850 = 21,7% Som det ses på Figure 29 fra matlab, er oversvinget på ca. 32%, hvor testen viser et overshoot på 21,7%. Dette skyldes, at helikopteren hænger i en ledning, som vil virke som en dæmper, da helikopteren vil veje mere og mere jo højere den flyver fordi mere og mere ledning skal løftes fra jorden. Testen viser, at teori og praksis har en sammenhæng og ledningen kan fjernes, uden at helikopteren rammer loftet. 43
44 Første test af PD med batteri Som udgangs punkt blev den fundne gain værdi brugt på 17,6. Ved forskellige starthøjder blev et step på 0.5meter ind sat for at afprøve responset. mm m step, med 17,6 i gain ønsket højde i mm højde i mm Figure 30 Tidsindex Ved at aflæse måleresultaterne kan Overshoot, Rise time og Tpeak aflæses. Slutværdi = 850mm Maximum = 1200 Overshoot = Max Slut slut = 850 = 41,17% T Peak = 10x0,127sek= 1,27sek T rise = 3,5x0,127sek= 0,4445sek Det viser sig dog, at ved højder over 1,4 meter, bliver højdesignalet fra sensoren mere støjfyldt på grund af quantaserings støj, der fremkommer tydeligere, når måleren måler længere afstande. Dette medfører, at regulatoren laver mere støj, som forårsager at helikopteren foretager mange små hurtige ændringer til thrusten, der igen bevirker at den bliver svær at styre. Problemet har ikke været observeret tidligere, da tests med ledning blev foretaget og at ledningen virkede som en dæmper mod helikopterens ændringer, da helikopteren kom til at veje mere jo højere den fløj på grund af ledningens vægt, og derved blev trukket ned. 44
45 Omvendt, hvis helikopteren falder, kommer den til at veje mindre og derved kræves mindre thrust for at få den til at holde sin højde. For at imødekomme dette problem, sænkes gainet en smule til 14. mm m step, med 14 i gain ønsket højde i mm højde i mm tidsindex Slutværdi = 900mm Maximum = 1307 Figure 31 Overshoot = Max Slut slut = 900 = 45,22% T Peak = 14x0,127sek= 1,778sek T rise = 4x0,127sek= 0,508sek Som forventet stiger risetime og peaktime, ved lavere Kp bliver regulatoren langsommere og derved vil risetime og peaktime stige. For yderlige at se hvordan helikopteren reagerer ved mindre gains, sættes det ned til 5, resultatet ses her. 45
46 2500 mm 0.5m step med 5 i gain ønsket højde i mm højde i mm tidsindex Figure 32 Slutværdi = 750mm Maximum = 1066 Overshoot = Max Slut slut = 750 = 42% T Peak = 22x0,127sek= 2,794sek T rise = 12x0,127sek= 1,524sek Som det ses på kurven og på udregningerne, giver et gain på 5 en meget langsom regulator, og den reagerer næsten ikke på step impulsen. Ved at forsøge, viser det sig, at et gain på 12 giver en tilpas regulator, ikke for langsom, ikke for hurtig. Men stadig en kontrollerbar helikopter 46
47 mm m step med gain på 12 ønsket højde i mm højde i mm Tidsindex Figure 33 Slutværdi = 920mm Maximum = 1199 Overshoot = Max Slut slut = 920 = 30,32% T Peak = 18x0,127sek= 2,286sek T rise = 6x0,127sek= 0,762sek PD regulatoren er ikke i stand til at kompensere for steady state fejl i form af faldende batterispænding. Mens helikopteren flyver, falder batterispændingen langsomt og systemet holder derfor ikke højden. Ved at måle mængden af thrust ved forskellige spændinger, kan en bedre beskrivende model laves. 47
48 650 Thrust vs spændning 600 Gram , , ,5 Volt Figure 34: Thrust i 81,3cm højde ved forskellige spændinger Som det ses i Figure 34, falder thrust med ca. 100g eller ca. 16% i forhold til fuldt batteri med et halvtomt batteri. Der er omkring 10mins flyvetid i et 2Ah batteri, men spændingen på et litium polymer batteri falder ikke lineært. Figure 35: Aflade kurve for et Litium polymer batteri 2Ah På Figure 35 ses spændingen ved forskellige afladestrømme. Den sorte 10A kurve er den, som har interesse, da helikopteren bruger mellem 10A og 12A for at flyve ved 10,9V. På 48
49 et stort stykke af vejen er kurven lineær, og der ses bort fra det hurtige drop i starten af afladekurven. Fra fuld opladning 11,1V (3,7V pr celle) til 9,6V (3,2V pr celle) går der 10minutter (600sekunder), ud fra det kan spændingsfaldet over tid findes. Fuldt Tomt tid 11,1 V 9,6V = afladningsrate = 600sek = 0,0025 V sek Dette er dog for et nyt batteri, med konstant afladning og ved konstant temperatur. Ved 10A afladning bliver batteriet varmt og efter mange oplade cycles falder den samlede kapacitet af batteriet. For at finde tab af thrust pr. sekund, findes thrust forskellen over et kendt stykke tid. Det vides at helikopteren kan flyve 10min på et fuldt batteri, hvorefter batteriet er tomt. Så formlen ser sådan ud. Thrust tid 630g 500g = 600sek = 0,22 g sek Til modellen tilføjes en rampe, som trækker thrust fra over tid. Thrust 610 Thrust(gram ) for at kunne lette Hastighed 1 ønsket højde ( meter ) 12 kp s+1 0.1*0.2516s+1 Transfer Fcn1 1 s hastighed 1 s Integrator1 Ramp Scope højde Figure 36: Model fald i batteri spænding 49
50 Figure 37: Højde output over tid med rampe Det ses på simuleringen af thrust falder, dette er også observeret ved test i virkeligheden. 50
51 mm ønsket højde i mm højde i mm Sample nummer ( 127ms ) Figure 38: Step response test med kp=12 Det ses på Figure 38 hvor 3 step responses er blevet udført med PD regulator. Inputtet er det samme, men den reelle højde starter med at være 600mm, og efter 600 samples (76 sekunder) er helikopteren faldet 200mm. Til at kompensere for dette, udbygges PD regulatoren til PID med overføringsfunktionen: G ( s) = K c p 1 τ d s + 1 * (1 + ) * τ s ατ s + 1 i d 51
52 Figure 39: Bode plot for system kp=12 52
53 Til at finde τ i laves bodeplottet for systemet med kp=12. På Figure 39 ses at krydsfrekvensen er 4,17 rad/sekund, integrator leddets knækfrekvens placeres 5 gange under. ω k 1 = 0,2* ωc = 0,2 * 4,17 = 0,834 τ = 1,199 τ = i i Dette giver: 2 1 τ d s ,2516s * s + 48,09s + 33,14 Gc ( s) = K p * (1 + ) * = K p *(1 + ) * = 2 τ s ατ s + 1 1,199 s 0,1* 0,2516s + 1 s + 39,745s i d Denne overføringsfunktion indsættes i matlab modellen Figure 40 og plottes over 15sekunder, se Figure 41. Thrust 610 Thrust(gram ) for at kunne lette Hastighed 1 ønsket højde ( meter ) 12 kp 10s s s s Transfer Fcn 1 s hastighed 1 s Integrator1 Ramp højde Figure 40: PID regulator model 53
54 Figure 41: Step response af PID regulator kp=12 Ved første simulering er setling time lang, derfor øges kp til 30, se Figure 42. Figure 42: Step response af PID regulator kp=30 54
55 Det tustin diskritiseres i matlab: z 16,68z + 8,142 D ( z) = 2 z 1.668z + 0, Error b0 1 output -1 Z -1 Z b1 a1-1 Z -1 Z b2 a2 Figure 43: 2. ordens direkte realisering af overførings funktion Implementering er som PD regulatoren blot tilføjet et ekstra led. Hvor: b 0 = 8,543 b 1 = 16,682 b 2 = 8,142 a 1 = 1,668 a 2 =
56 Første test af PID med ledning Det viser sig hurtigt at systemet oscillerer, helikopteren flyver op og ned, se Figure 44. Den var meget svært at styre samt at helikopteren ikke har godt at blive banket i gulvet, som skete ved sample Højde ønsket højde PID Kp=25 mm Sample Figure 44: Oscillationer på regulator Modellen og virkeligheden passer ikke sammen, for at dæmpe integralet flyttes knækfrekvensen 10 gange under PD regulatorens. ω k 1 = 0,1* ωc = 0,1* 4,17 = 0,417 τ = 2,398 τ = i i Dette giver: G s) = K 1 τ d s + 1 * (1 + ) * = K τ s ατ s ,2516s * s *(1 + ) * = 2,398s 0,1* 0,2516s + 1 c ( p p 2 i d Diskritiseret: 2 8,526z 16,68z + 8,159 D ( z) = 2 z 1,668 z + 0,6684 Kp mindskes også for yderligere at forhindre oscillation. Som det ses på Figure 45, hjalp dette ikke meget ,9157s + 16,5744 s + 39,745s 56
57 mm Højde Ønsket højde PID Kp= Sample ( 127ms ) Figure 45 Matlab modellen afspejler ikke virkeligheden godt nok, andre tunings metoder må tages i brug. Ziegler-Nichols metoden består i at Td og Ti sættes til 0, hvorefter Kp øges til at systemet oscillerer, ud fra oscilleringerne og Kp størrelsen, kan en PID regulators Kp, Td, Ti skønnes. Men at bringe helikopteren til at oscillere er ikke en god ide, da dette vil gøre den svær at styre, og det er ikke er tilladt at påvirke systemet ude fra, hvilket kan resultere i, at helikopteren smadres mod jorden. En lidt anden, men mere sikker metode, er hånd tunings reglerne beskrevet i Foundations of Fuzzy Control side 81, skrevet af Jan Janzen. Metoden: 1. Fjern alle Ti og Td 2. Forøg Kp til det ønsket respons 3. Forøg Kp mere og dæmp med Td 4. Forøg Ti til at fjerne offset 5. Gentag fra punkt 3 indtil Kp er så stor så mulig Og tommelfinger reglerne: Aktion Stige tid Oversving Stabilitet Forøg Kp Stiger Stiger Falder Forøg Td Falder Falder Stiger Forøg 1/Ti Stiger Stiger Falder Med disse regler håndtunes PID regulatoren, som er baseret ud fra PD regulatoren. Ved at øge Td for at få mere stabilitet, og dæmpe 1/Ti for yderlige at få stabilitet fremkommer: 57
58 2 1 0,65s * s + 15,4263s + 0,06415 Gc ( s) = K p *(1 + ) * = K p s 0,1* 0,65s + 1 s + 15,3846s Diskritiseret: 2 9,357z 18,57 z + 9,214 D ( z) = 2 z 1,857 z + 0,8571 mm PID regulator kp=7 højde ønsket højde Sample ( 127ms ) Figure 46 Resultatet ses i Figure 46, Kp er sænket lidt for yderligere at stabilisere helikopteren. Denne test er udført med batteri og det bemærkes, at der er nogen svingninger i højden, men de dæmpes. For at bevise at integratoren kan kompensere for faldende batterispænding, udføres en 10min lang flyvning, hvor helikopteren svæver inden for 1m 2. mm min flyvning Højde Sample ( 127ms ) Figure 47 Ønsket Højde 58
59 Digital værdi Nick og Roll i 10min flyvning Sample (127ms) Roll Nick Figure 48: Stick inputs Thrust i digital værdi min flyvning output fra regulator Regulator output Sample ( 127ms ) Figure 49: Regulator output 59
60 På Figure 47 ses, at helikopteren holder højden pænt i gennemsnit, forstyrrelserne skyldes ustabilitet i selve LQR regulatoren, turbulenser fra omkringliggende objekter og at der kompenseres med stick påvirkninger for drift. Stick påvirkningerne ses i Figure 48. I takt med at batteriet bliver afladet, falder udgangsspændingen, der ville forårsage tab i thrust, men kompenseres af regulatoren, dette ses på Figure 49, hvor outputtet stiger i takt med at batteriet bliver afladet. Ved opladning af batteriet er det muligt at se, hvor meget strøm der er brugt, ved de 10minuters flyvning blev der brugt 2/3 af batteriets samlede kapacitet. Autonom landing og letning Hidtil har brugeren selv reguleret højden, der ønskes at flyve i. Brugeren er startet med at give en lav højde og så ændre den til den ønskede højde, hvorefter at regulatoren regulerede sig ind til højden. Ved at lave en rampe, hvor højde input til regulatoren langsomt øges indtil den når den ønskede højde, brugeren har specificeret. Hvis brugeren ønsker at lande, trækkes højde inputtet til regulatoren langsomt fra indtil det når 0, for at sikre sig at helikopteren bliver på jorden og ikke driver svagt rundt, skal der fjernes ekstra motorkraft, når helikopteren er lige ved jorden resultatet ses i Figure 50. Helikopteren svinger lidt i højden, dette er fordi at brugeren retter på helikopterens kurs. Men alt thrust regulering er overladt til regulatoren. mm Ønsket højde Højde Autonom landing og letning Sample ( 127ms ) Figure 50: Autonom landing og letning 60
61 Software Overordnet Helikopter softwaren er omskrevet fra Microcopters software, hele flight controller delen er skrevet om, kalibrering samt data inputs. Grunden til at arve deres software er den gode ide om at beholde nogle færdige komponenter: Modtager dekoder og demuxer sumsignalet fra modtageren. PPM udgange til servos, disse kunne bruges til at styre et kamera, disse er dog ikke brugt, men kunne bruges til fremtidige projekter. Debugnings delen muliggør logning af data fra helikopteren. Dette tillader også at sende data til helikopteren og opsætning af forskellige parametre. Manuel styring af motor hastighed. I2C kommunikation til motorkontrollere, køre på interrupt og skriver motorhastighederne til de 4 motorer med fast mellemrum. Stoppes transmissionen til en motorkontroller stopper motoren, dette er en sikkerhedsfunktion bygget ind i motorkontrolleren. En anden fordel er at beholde muligheden for at kunne integrere Microcopters andre produkter sammen, dette inkluderer et GPS modul, et kompas, navigations enheden samt komponenter der bruges til at lade microkoptoren flyve en bestemt rute udenfor. Ideen er, at brugeren sender helikopteren op og lader en lufttrykssensor holde højden hvorefter helikopteren flyver mod destinationen forud programmeret, det skal dog som notits siges, at dette kun kan lade sig gøre udendørs og der skal være plads omkring den - gerne +/- 5meter til alle sider. Og at helikopteren skal være i god højde (+ 7meter) for at det er forsvarligt. Hele softwaren er bygget op omkring en time slot afhandling af forskellige programelementer, timer 0 laver 1ms pulser som tælles op til 10. Sammen med en række IF sætninger i main rutinen, kommer hver 1ms til at virker som et timeslot, hvori forskellige subrutiner køres. Hver subrutine skal være færdig inden næste startes, ellers vil den ikke blive startet til den rette tid. En art simplificeret switched multitasking, med en cycle time på 10ms. Ud over dette, køres sideløbende en række forskellige interrupts, dette er til transmission af debug data, decodning af modtager signal, PPM signal generator til servos og AD konverter. Ved at have flightcontrolleren i et bestemt timeslot, sikres det at den bliver eksekveret med konstant frekvens, hvilket er essentielt for korrekt regulering. 61
62 Ved at skifte et port bit i main rutinen, er det muligt at se, hvor meget ekstra tid mellem hver cycle, processoren har til overs, samt hjælpe til at bestemme hvor lang tid et programstykke bruger i det afsatte time slot. Initalisering af data Skal der hentes nye måleværdier fra gyro modul Nej Ja Hent måleværdier Skal der hentes nye analog måleværdier Ja Start intern ADC Nej Er højderegulator flag sat? Ja Beregn ny Thrust Nej Skal der beregnes nye motorværdier? Nej Ja Beregn ny motorværdier og send dem til motor Figure 51: Main løkke 62
63 Der er lavet 2 flight modes i helikopteren: 1. Regulator mode, hvor en regulator styrer Thrust for at holde en bestem højde. 2. Free flight, hvor helikopteren opfører sig som en normal helikopter og alt styres af brugeren. I begge modes bruges LQR regulatoren til at stabilisere helikopteren og brugeren styrer Nick, Roll og Yaw. Højde regulator Er placeret i en time slot for sig selv og regner en ny thrust ud, som vil blive brugt i flight regulatoren. Først aflæses hvilken højde brugeren har ønsket, brugeren justerer værdien på kanal 5 der omregnes til en positiv højde. Ellers er PD overførings funktionen fundet fra matlab implementeret som følgende. reg_gain= 12; e=(oensket_hoejde-hojde)*reg_gain; thrust=8.508*e+dummy; thrust_old=thrust; e_old=e; dummy=(-8.177*e_old)+(thrust_old*0.6685); if(thrust>=40) // begrændser { thrust=40; } if(thrust<=-40) { thrust=-40; } For at sikre sig at en evt. regne fejl ikke sender helikopteren til vejrs, lægges en begrænser ind, der forhindre at regulatoren kan ændre mere end +/
64 PID regulatorens implementering kræver et par linier kode mere. reg_gain= 7; e=( oensket_hoejde-hojde)*reg_gain; thrust=9.357*e+dummy; thrust_old_old = thrust_old; thrust_old=thrust; e_old_old = e_old; e_old=e; dummy=((-18.57*e_old) +( 9.214*e_old_old))-((-1.857*thrust_old)+ ( *thrust_old_old)); if(thrust>=40) // begrændser { thrust=40; } if(thrust<=-40) { thrust=-40; } Til at bestemme om højde regulatoren skal have nogen indvirkning, bruges kanal 6. if((ppm_in[ee_parameter.kanalbelegung[k_poti2]])<0) { samlet_thrust=stickgas; //thrust er som på normal } else // thrust er nu offset mellem -75 og +75 { samlet_thrust = StickGas +thrust+killmotor; } Hvis brugeren ønsker at flyve free flight uden at højde regulatoren har nogen indvirkning, føres stick værdien videre. Skal regulatoren styre højden, tilføjes regulatorens output sammen med stick værdien, hvor brugeren har stillet stick værdien sådan at helikopteren er ved at lette. Mere om brug og flyvningen i appendiks. 64
65 Autonom landing og letning Til at lave rampen bruges kanal 7 til at bestemme handling. Hvis den er i bund, trækkes referencen til PID højde regulatoren langsomt ned, og hvis den skal op, tælles den langsomt op. if((ppm_in[ee_parameter.kanalbelegung[k_poti3]])<0) // lande { if ( 0 < regulator_hoejde ) { regulator_hoejde=regulator_hoejde-0.003; } else if ( regulator_hoejde < 0 && hojde< )// er landet kill motor { killmotor= -20; } } else // flyve { killmotor=0; if( oensket_hoejde >= regulator_hoejde ) { regulator_hoejde= regulator_hoejde; } else { regulator_hoejde=regulator_hoejde ; } } Når helikopteren er på vej ned og kommer til en vis højde, tages ekstra kraft fra motorerne for at få helikopteren til at blive på jorden. 65
66 Data indsamling Der bliver brugt SPI til at kommunikere med Gyromodulet, dette forgår i 16bit pakker. Selve udlæsningen er lidt tricky, adressen på det register, som ønskes læst, sendes. Derefter sendes det næste register man ønsker modtaget, samtidigt med at man sender en anden adresse komme dataene for den første adresse, men som requestet værdi. SPI er duplex transmission, hvor masteren laver clock pulsen for at clocke data ind og ud af slaverne. Ved hele tiden at sende en kommando for få data, hentes de forskellige registre ud af gyromodulet. Figure 52: læsning og skrivning til gyromodulet Alt dette bliver udført uden om interrupts, ved en transmission ventes i en while løkke på at transmissionen er færdig. Mens der ventes, bruges nogen tid på at behandle de modtaget data. Gyroskop værdierne kommer ud i 2s kompliment 14bit så for at lave det om til 16bit, dette gøres ved at se på det 14bit, er det 1 skal bit 15 og 16 være 1 ellers 0. Gyroskop værdier, analogindgang samt accelerometer aflæses alt sammen inden for 1ms så der er afsat 1 timeslot til dette modul. Dette skyldes at SPI transmissionen kører ved 1,25Mhz. Til at aflæse den kortrækkende IR sensor, er den interne AD konverter brugt, den startes i et separat time slot og ved færdiggørelsen kommer et interrupt, hvor omregning fra bitværdi til højde fortages. 66
67 Hent måleværdier Træk CS lav Send adressen for at få Gyro X Send adressen for at få Gyro Y Færdig med at sende? Færdig med at sende? ja ja De højeste 4bit skal være 0 Gem modtaget data, hvis det 3. sidste bit er 1 skal de sidste 2 være 1 også Send adressen på gyro X igen for at lave 8 pulser Send adressen på gyro Y igen for at lave 8 pulser Færdig med at sende? Færdig med at sende? Sæt den ny modtaget data sammen med tidligere pakke og Gyro X er modtaget Sæt den ny modtaget data sammen med tidligere pakke og AD ingangen på gyromodulet er aflæst Træk CS høj Modtagelse af Gyro Y, Gyro Z, accelatometer End Function Figure 53: Flow chart for gyro kommunikation 67
68 Flight controller For at styre om motorerne skal startes eller stoppes bruges kanal 8, hvis den er mellem 0 og 20 i værdi skal motorerne være stoppet, hvis under -10 må motorerne startes (dette er fixed værdier fra senderen fordi det er en kontakt på senderen). Selve regulator udregningen kører altid, men resultatet skrives ikke ud til motorkontrollerne før at motorerne må starte. Som ekstra kontrol måles signal styrken, hvis signal styrken er under et vis niveau stoppes motorerne, bipperen startes (som er fjernet fordi den larmede) og alt efter om modellen flyver eller om den står på jorden, kan der foretages forskellige handlinger. Her kunne en kontrolleret nedstigning indbygges eller en mere avanceret form for nødlanding placeres. 68
69 Beregn ny motorværdier og send dem til motor Er modtage forhold gode? Nej Fejl til bruger 160 < Kanal 8 Hvad ønsker brugeren af handling? Calibreing, stop motor eller start. Ved input fra kanal 8 Kanal 8 < -10 Calibreing, nulstil vinke intergrale, find stick offsets 0<kanal 8 <20 Stoppe motorer ved at altid skive 0 til motorkontrollerene Starte motorer ved at tillade at resultatet fra flight controlleren skrives ud til motorkontrollerene Ned skalere stick værdier Omregn heltal til double vinkelhastighed Integrer vinkel hastighed til vinkel Gang Vinkel hastighed, vinkel og stick imputs sammen med kontroller matricen Læg resultat i debug array og i motor array End function Figure 54: Flowchart af flight controller 69
70 Kalibrering / Nulstilling Da den aktuelle vinkel ikke kendes ved power on, nulstilles vinkelen efter brugerens ønske, dette gøres altid før en flyvning ved at bruge kanal 8, og fra senderen have 3 forskellige værdier defineret. Hvis denne kanal værdi er over 160, nulstilles vinkelen da det antages helikopteren nu er placeret på en vandret flade. Samtidig sættes alle variabler i højderegulatoren til 0, i tilfælde af at der i forvejen har stået en glitch værdi fra power up. Når brugeren giver slip på Nick og Roll (samme styre pind) trækker en fjeder i fjernbetjeningen dem tilbage til midten; da det er lidt forskelligt hvor midten er på forskellige fjernbetjeninger, måles samtidig værdien som offset og trækkes fra som konstant for at stick værdien giver 0, ved midterposition. For at give brugen en fysisk indikation af en kalibrering, blinkes der på lysdioderne på motorkontrollerne. Dette gøres ved at lade være med at sende data til dem i et kort øjeblik, derpå vil de lyse rødt, men lyse grønt igen når data transmissionen genoptages. 70
71 Modtager decodning Til at omdanne det modtagne stick signal til værdier mellem +/- ½, fordi det er de inputs som regulatoren er designet med, skaleres signalet ned med en faktor 256 efter af offset er blevet trukket fra. Offsettet kommer fra kalibreringen, og er nødvendig for at sørge for at stick værdien bliver 0 når sticken står i midten. Da transmissions udstyret kun sender data hvert 50ms og regulatoren kører hvert 10ms, genbruges stick værdierne og opdatering sker kun hvis der er modtaget nye data. For at få en fin inddeling af thrust området, skaleres det i passende forhold, sådan at det er muligt at afbalancere helikopteren således at den kan stå stille i luften. Denne skalering er dog kun aktiv i free flight mode. StickNick=(float)(0.4*((float)(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]- StickRoll_offset)/256)); StickRoll = (float)(0.4 *((float)(ppm_in[ee_parameter.kanalbelegung[k_nick]]- StickNick_offset)/256)); StickGier = (float)(4*((float)(ppm_in[ee_parameter.kanalbelegung[k_gier]]- StickGier_offset)/256)); StickGas = (PPM_in[EE_Parameter.Kanalbelegung[K_GAS]]+300)/3; Driftskompensering Gyromodulet leverer gradændring/sekund, dette skal dog først omregnes fra 2s komponent bitværdi samt have plus eller minus foran for at få retningen til at passe. Gyroens Y (Nick) og Z (Yaw) har omvendt rotation i forhold til den matematiske model, der danner baggrund til regulatoren. Hvis helikopteren roteres højre omkring Yaw, giver det en positiv output, men LQR regulatoren er lavet sådan at en højre rotation skal give negativ, derfor ændres fortegnet. Gyromodulet er fra fabrikken blevet kalibreret, dog kan man selv kalibrere det og man kan selv tilføje offset justering. Alle disse data kan programmeres ind i gyromodulet, men da gyromodulet kun har mulighed for at blive flashet 1000gange(ifølge datablad) er offset justering lavet i softwaren. Værdierne er fundet ved at lade gyromodulet stå stille i 20min mens at integratoren integrerer op, derefter fordeles fejlen over antallet af samples, hvoraf fejlen pr. sample fremkommer, som så trækkes fra hver gang. Gyromodulet har en temperaturføler indbygget, som kan udlæses og man så kan bruge temperaturen til at yderligere at kompensere for drift, dette er dog ikke implementeret her. GyroX_Value=(float)gyro_x_temp* *( /180) ; GyroY_Value=(float)gyro_y_temp* *( /180) ; GyroZ_Value=(float)gyro_z_temp* *( /180) ; 71
72 Matrix udregningen Matrix udregningen er lavet som en for løkke, der køres 4 gange, hvor vinkel og vinkel hastighed bliver ganget sammen ind i matrixen for at få motor hastigheden. For at sikre sig, at motor hastigheden ikke overstiger maxium for motorkontrollerne, er der sat en begrænsning ind. for (i = 0; i < 4; i++) { servo_data[i] = K[i][0] * (GyroX_Value + AngleStikRatio*StickRoll*PRStikG) + K[i][1] * (GyroY_Value + AngleStikRatio*StickNick*PRStikG) + K[i][2] * (GyroZ_Value + AngleStikRatio*StickGier); servo_data[i] *= AngleSpeedGain; // temp = K[i][3] * (INT_GyroX + StickRoll*PRStikG) + K[i][4] * (INT_GyroY + StickNick*PRStikG) + K[i][5] * (INT_GyroZ + StickGier); temp *= AngleGain; // servo_data[i] += temp; servo_data[i] *= motorgain;// servo_data[i] = (samlet_thrust - servo_data[i]); if (servo_data[i] > 255) servo_data[i] = 255; if (servo_data[i] < 0) servo_data[i] = 0.0; } Selve udregningerne forgår i doubles, men bliver sendt i heltal til motorkontrollerne. 72
73 Debugging Microkoptor har 32 integer variabler som bliver kontinueret sendt tilbage til PC softwaren. Deres PC sofware, kaldt kopter tool, tillader at se og logge data efter ønske. Ved at skrive i et constan char array, bestemmes teksten i PC softwarens vindue, ved at lægge variabler over i et debug array, søger debug interrupt rutinen at sende datatene til PC en. Dette sker med 127ms interval. Figure 55: Koptortool Værktøjet kan gemme loggede data i komma separerede filer, der kan læses i enten Matlab eller Excel. Dette tool er desværre ikke opensource, så omskrivning og ændring er ikke muligt. Dog er den serielle protokol tilgængelig, så et selvskrevet software program var en mulighed, dette kunne evt. være tilslutning af et joystick til at styre helikopteren efter eller billede feedback. 73
74 Konklusion Projektet har været et lærerigt projekt, som har spændt vidt over mange emner, og noget man kan se virke, har da også været med til at gøre projekt ekstra spændende. Ikke kun for mig, men også for andre på instituttet. Dog er det ikke alle på DTU, der er lige så imponerede over en selvflyvende larmende helikopter, så større flyvetests har måttet blive udført uden for normal undervisningstid. Det har vist sig muligt at bruge nogle færdigkøbte komponenter, og skabe en stabil selvflyvende helikopter. Helikopteren er i stand til at kunne flyve stabilt indendørs i små rum med inventar, men også i større rum. Ingen komponenter er special fremstillet, derfor kan helikopteren reproduceres, dog skiftes der rotor og motor til andre typer samt til større ændringer i den fysiske konstruktion, skal der udregnes ny LQR regulator matrice. Platformen er helt åben og videreudvikling af andre projekter er muligt. Dette kunne være montage af kamera der muliggør at følge en bestemt streg i gulvet, eller følge en person eller GPS til at følge en bestemt flyvevej eller til absolut positionering. For at gøre flyvning nemmere for brugeren, har det vist sig muligt at lave et autonomt system til at holde højde, lette og lande. Det har også været muligt at overholde kravene stillet det autonome system. Selv efter lang tids flyvning holder systemet selv højden, selv om batterispændingen falder. Helikopteren skader ikke sig selv ved letning eller landing, dog hvis brugeren vælger et dårligt landingssted eller flyver dårligt, kan dette ikke tilskrives systemet fordi systemet har ikke nogen mulighed for at se, hvad der er omkring det såsom vægge, stoleben og borde, der er alle skadelige, men ikke detekterbare for systemet. Fremtidige projekter kunne bygge videre på ideen og lave nogle forbedringer, der muliggør at helikopteren kan blive mere intelligent og få informationer om omgivelserne. Evt. selv tage beslutning om brugerens handling er forsvarlig, og hvis den ikke er, skal den ikke udføres, hvis det vil skade helikopteren. 74
75 Referencer/ Litteratur Foundations of Fuzzy Control skrevet af Jan Jantzen ISBN: Reguleringsteknik skrevet af Ole Jannerup og Paul Haase Sørensen ISBN: Construction of a 4 rotor Helikoptor Master projekt lavet af Tomas Buchholz og Dagur Gretarsson 75
76 Appendiks A Hardware diagram VCC C8 22pF VBAT R8 10K Voltage R9 1K GND GND MISO SCK Reset Y1 20Mhz GND C13 100nF Voltage LED_red LED_Green MOSI MISO SCK C7 22pF GND Programmer VCC C9 100nF MOSI Programmer GND Reset GND plus minus U2 PortA_0 37 PA0 (ADC0/PCINT0) PortA_1 36 PA1 (ADC1/PCINT1) PortA_2 35 PA2 (ADC2/PCINT2) PortA_3 34 PA3 (ADC3/PCINT3) PortA_4 33 PA4 (ADC4/PCINT4) PortA_5 32 PA5 (ADC5/PCINT5) PortA_6 31 PA6 (ADC6/PCINT6) PortA_7 30 PA7 (ADC7/PCINT7) PortB_0 PortB_ PortB_2 PortB_ PortB_4 PortB_ PortB_6 2 PortB_7 3 VCC C14 100nF VBAT D R5 10K L1 Inductor 10uH AVCC GND GND ATMEGA644-20AU VCC Reset PB0 (PCINT8/XCK0/T0) PB1 (PCINT9/CLKO/T1) PB2 (PCINT10/INT2/AIN0) PB3 (PCINT11/OC0A/AIN1) PB4 (PCINT12/OC0B/SS) PB5 (PCINT13/MOSI) PB6 (PCINT14/MISO) PB7 (PCINT15/SCK) XTAL1 XTAL2 AREF RESET Diode C15 1uF Jtag_TCK Jtag VCC VCC Jtag_TDO Jtag_TMS 2 1 Jtag_TDI Header 2 C16 100pF PD0 (PCINT24/RXD0) PD1 (PCINT25/TXD0) PD2 (PCINT26/INT0) PD3 (PCINT27/INT1) PD4 (PCINT28/OC1B) PD5 (PCINT29/OC1A) PD6 (PCINT30/OC2B/ICP) PD7 (OC2A/PCINT31) 1 C18 100pF PC0 (SCL/PCINT16) PC1 (SDA/PCINT17) PC2 (TCK/PCINT18) PC3 (TMS/PCINT19) PC4 (TDO/PCINT20) PC5 (TDI/PCINT21) PC6 (TOSC1/PCINT22) PC7 (TOSC2/PCINT23) U6 L7805CV IN OUT GND 3 GND VCC VCC AVCC VCC GND GND GND GND Jtag Jtag VCC PortD_0 PortD_1 PortD_2 PortD_3 PortD_4 PortD_5 PortD_6 PortD_7 19 PortC_0 20 PortC_1 21 PortC_2 22 PortC_3 23 PortC_4 24 PortC_5 25 PortC_6 26 PortC_7 GND AVCC Reset C17 100pF VCC RXD TXD RXDI TXDI VCC ICP(PPM) Jtag_TCK Jtag_TMS PC4 Jtag_TDI PC5 Jtag_TDO C21 100nF GND Speaker VCC C19 100pF R1 1K D1 LED_red LED2 D2 LED_Green SCK MISO MOSI VCC R2 1K LED2 Modtager Header 3 R3 100R R4 100R R6 1K R7 1K ICP(PPM) GND VCC VCC Microkopter program port Reset VCC 5 6 Header 3X2 SCL SDA GND C20 100nF Figure 56: Diagram over microprocessor boardet GND Speaker RXD RXDI PC4 TXD GND C12 100nF Udvidelses port VCC Header 5X2 VCC NM Speaker TXDI PC5 SDA SCL C? 100nF GND C? 1uF RXD TXD Reset ADC in ADIS16354 GP2Y3A003K0F ( langt rækkende IR ) Vcc Vcc TX RX Gnd Gnd Vcc GND GND C? 100nF Data Out Data In Data Clock CS Aout GP2D12J000F ( kort rækkende IR ) Bluetooth Gnd GND GND Aout Vcc Gnd MISO MOSI SCK PortB_2 PortA_2 VCC GND 76
77 Appendiks B Nick Roll Yaw For at forstå, hvad Nick Roll og Yaw på en flyvemaskine er, kan det ses på Figure 57 Figure 57: Nick Roll Yaw 77
78 Appendiks C Ultralydsafstandsmåler Ide og teori Princippet er at sende et antal pulser ud og måle tiden til at reflektionen kommer tilbage. Der vil komme andre reflektioner fra objekter i nærheden. Figure 58 Spredning En punktformig kilde sender lyden ud i alle retninger. Lydudbredelsen har form som en kugle, men en punktformig kilde kan man kun tale om, når udbredelsen af kilden er meget mindre end bølgelængden, den udsender. En bashøjttaler på 30 cm. i diameter kan derfor sagtens være en punktformig kilde, hvis den f.eks. gengiver 30 Hz, svarende til en bølgelængde på ca. 11 meter. Så længe bølgelængden er stor i forhold til omkredsen af lydgiveren (Ca. 3 gange diameteren), vil udstrålingen være sfærisk, altså brede sig i en kuglefacon omkring lydgiveren. Ved bølgelængder mindre end omkredsen af membranen, vil udstrålingen blive mere og mere retningsbestemt og ende med at ligne lyskeglen fra en lommelygte. Lamda = Lydhastighed / frekvens = 343m/s / = 8,6mm Den piezo der er fundet til dette projekt, har en diameter på 7mm, en omkreds på 22mm. 78
79 Den skal gengive en frekvens med en bølgelængde på 8,6 mm og er derfor stærkt på vej til at antage form som en lyskegle, som det ses herunder. Dette er meget ønskeligt, men hjemme i stuen ønsker man jo som oftest det modsatte, altså stor spredning. Figure 59 Ved evt. at montere et horn på piezoerne, vil det være muligt at fokusere keglen endnu mere, dette vil dog forårsage mere plads samt mere vægt. Derfor tilstræbes det, at denne løsning ikke realiseres. Lydens hastighed afhænger af densiteten og elasticieten af rummet, som lyden bevæger sig i. I atmosfærisk luft er den største faktor temperaturen af luften, og en tilnærmet formel kan udledes: Hastighed = 331,3+(0,606*temperatur i celsius ) Da helikopteren primært skal flyve indendørs, sættes temperaturen til 20grader, og afstandsmåleren monteres på helikopteren i kendt højde, vil det være muligt ved start at offset kan kalibreres. 79
80 Detektering af signal Til at detektere, hvornår det reflekterede signal modtages laves en detektor, dette er dog sværere end ligeså. Modtageren oscillerer (ringer) nemlig blot man slår den fysisk, derfor er nulgennemgangs detektering ikke en optimal løsning fordi det er svært at lave præcis detektering af fasen.. En anden løsning kunne være at finde toppunkt af det modtagne signal og derefter finde indhyldnings kurven for signalet, og derefter regne tilbage til hvornår signalet teoretisk blev modtaget. Desværre afhænger det modtagne signal meget af omgivelserne. Derfor satses der ikke på denne ide. Den mest nærliggende løsning vil være at lave niveau trigning, forstærke det modtagne signal og detektere den første puls. Problemet er bare, at detekteringen skal ske samme sted og ved samme puls. Hvis der trigges på en puls senere, vil det resultere i en fejl på ca. 8.5mm ved stuetemperatur, da bølgelængden er: Lamda = (331,3+(0,606*20 ) ) / = 8,5216mm pr. periode. Ved at dobbelt ensrette signalet, vil denne fejl halveres, fordi der så også kan detekteres på de negative flanker. Dette er også den nemmeste metode umiddelbart at realisere, derfor vælges denne. 80
81 Design Indgangs trin 33K GND Speaker 1K 10K V 7 4 LF356N K 330pF 330pF K V 7 4 LF356N GND -12V GND Figure 60: Indgangs trin GND -12V Der er over hele linien valgt LF 356 der har en slew rate på 5 V/µs. Det er nok til at selv et niveau der nærmer sig klipning, kun tager 3 µs at nå. R6 er lig indgangsimpedansen og valgt til 10k. Piezo ens udgangsimpedans er ca. 30k (ifølge datablad), så det er en hård belastning. Dette er gjort bevidst for at dæmpe ringningen. Den samlede forstærkning er fundet ved forsøg. Der er indgået et kompromis imellem følsomhed og støjimmunitet under hensyntagen til, at effekten der udsendes, skal minimeres mest muligt. Forstærkningen er størst igennem U5 med 34 gange = 30,6 db. Den maksimale forstærkning med LF 356 ved 40 khz er ca. 45 db eller 177 gange. En form for buffer imellem piezo en og båndpasfilteret er i øvrigt essentiel. Hvis man forbinder piezo en direkte til filteret, svinger kredsløbet med ca. 40 khz. 81
82 Båndpas filtre Man kan realisere et båndpasfilter ved at koble et lavpas og et høj pasfilter sammen. I dette tilfælde ønskes et båndpas filter med højt Q, altså lille båndbredde omkring centerfrekvensen. Det valgte kredsløb hedder et Delyiannis-Friend båndpas filter, det er et 2. ordens filter med følgende karakteristik. Centerfrekvens f0: f 0 = 2* π * C * 1 R ( R // R ) C1 330pF 12V R1 33K C2 R pF R3 680K LF356N GND GND -12V Figure 61 82
83 Oscillator Det viste sig i praksis at være helt unødvendigt at påvirke piezo elementet med en forvrængningsfattig sinus. Faktisk fik man akkurat lige så pænt et signal fra modtageren, hvis transmitteren blev påtrykt en firkant! Umiddelbart lidt overraskende, men vel meget logisk efter nærmere overvejelse. Piezo ens resonansfrekvens bliver anslået og Q et er meget højt. Det mest interessante ved at skifte fra sinus til firkant er faktisk, at retur signalet bliver væsentligt kraftigere. Der kommer flere pulser tilbage p.g.a. ringning, men samtidig også mere niveau (energi). Derfor kunne en simpel CMOS oscillator opfylde kravene, den ville også være nemmere at justere ind til den rette frekvens. Men da pizeoen virker bedst på firkant pulser, kan microprocessoren lave signalet. Dette løser også et helt andet problem. Hvis der bruges en analog switch til at styre, hvornår oscillatorens signal skal tilføres transmitteren, så det er nødvendig at have fuldstændig styr på fasen af signalet. Det nytter ikke at lukke op for det på et tilfældigt tidspunkt. Det kan være lige når det går igennem nul, men det kan lige så godt være på alle mulige andre tidspunkter. Microprocessoren laver derfor et pulstog af firkant pulser til pizeoen på 40,3khz, gennem en forstærker bro af CMOS kredse. Der er valgt en 4069UB til at trække transmitteren som foreslået i databladet og vi har forbundet dem i en brokobling. Dette svarer fuldstændigt til princippet, man anvender i bilradioer, hvor forsyningsspændingen også er begrænset. 3 gates pr. side sikrer, at den fornødne strøm kan leveres. Der er ikke bygget en decideret fasevender. Det inverterede signal tages direkte fra det ene sæt gates og vendes en gang til i det andet sæt. Alle gates i pakningen er dermed udnyttet. Transmitter 100nF 2 1 HCC4069UBF 4 3 HCC4069UBF V 14 VDD GND 5 I C HCC4069UBF 22uF 12V 100nF K HCC4069UBF HCC4069UBF HCC4069UBF BC547B 10K 4K7 Figure 62: Udgangs trin 83
84 Ensretter For at kunne detektere på både positive og negative perioder, bruges en såkaldt full wave ensretter. 12V 6K V LF356N N V 4 7 LF356N v7 470pF 5V AC14M 2 A Y 7 GND VCC 10K 10K 4k7 4n7 1K -12V 12V GND LF356N N4448 GND GND -12V Figure 63 FullWave ensretter er vist her, til sidst er der monteret en inverter med smith trigger, som går til microprocessoren. Software Microprocessoren laver et pulstog på 40khz, og måler tiden til at det kommer tilbage. Ved at kende hastigheden af lyden, regnes den tilbagelagte afstand ud, hvorefter der ventes et stykke tid for at alle lydbølger er uddøet, hvorefter en ny måling kan fortages. 84
85 Appendiks D Hvordan bruger man systemet? Det anbefales, at første flyvning fortages et sted, hvor der er meget plads og frit. Helikopteren styres som en normal fjernstyret helikopter, Nick og Roll er på højre styre stick. Thrust og Yaw er på venstre. 1. Tænd først for senderen, vær sikker på at kanal 8 sender, når helikopteren er stoppet og at thrust er i bund. 2. Tænd for helikopteren, kalibrer helikopteren ved at bruge kanal 8, vent til motorkontrollerlamperne har lyst rødt. 3. Vælg om, der skal flyves med regulator eller free flight, hvis free flight så start motorerne med kanal 8 og flyv. 4. Indstil den ønskede flyvehøjde med kanal Vælg, at helikopteren er i landings mode med kanal Vælg, at der skal flyves med regulator med kanal Start motorerne med kanal Forøg thrust lige inden at helikopteren letter (ca. 70 digital enheder) 9. Ændr kanal 7 sådan at helikopteren er i flyve mode. Og helikopteren vil lette til den ønskede højde. 10. For at lande, ændres kanal 7 til landings mode og helikopteren vil lande. Sluk derefter for motorerne med kanal 8. Tips: Flyv kun, hvor der er plads. Hold bagenden af helikopteren mod dig hele tiden. KUN professionelle kan vende alle aksler hurtigt nok, prøv ikke. Start i en simulator. 85
86 Appendiks E Microkopter regulator flowchart AD_ACC_Nick ACC_amplify 1/2 MittelWert_ACC_Nick ACC_amplify GyroACCfaktor/256 Intergral_ACC_Nick AD_ACC_Roll ACC_amplify 1/2 MittelWert_ACC_Roll ACC_amplify GyroACCfaktor/256 Intergral_ACC_Roll Figure 64 AD_ACC_Yaw 1/2 MittelWert_ACC_Yaw AD_ACC_Yaw_Neutral 1/256 AD_ACC_Yaw IntegralAccZ AD_ACC_Yaw_Neutral Figure 65 86
87 MittelIntegralRoll2 1/256 Intergral_Roll2 AD_Roll Hvis ændringen mellem gennemløb er mere eller mindre end MessWert_Roll IntegralFehlerRoll Mess_IntegralRollk2 Hvis intergrale fejlen er over 8000 AD_Roll_Neutral Mess_intergral_Roll Intergral_Roll 1/256 MittelIntegralRoll Lagekorrektur_Roll Intergral_Nick2 1/256 MittelIntegralNick2 AD_Nick MessWert_Nick IntegralFehlerNick Mess_IntergralNick2 AD_Nick_Neutral Mess_intergral_Nick Intergral_Nick 1/256 MittelIntegralNick Lagekorrektur_Nick Hvis ændringen mellem gennemløb er mere eller mindre end Hvis intergrale fejlen er over 1000 Figure 66 Fortsættelsen af Figure 64,Figure 65 og Figure 66 87
88 Intergral_ACC_Nick GyroACCfaktor/256 GyroACCfaktor/256 Intergral_ACC_Roll IntegralFehlerNick 1/GyroAccAbgleich ausgleichnick 1/256 Lagekorrektur_Nick IntegralFehlerRoll 1/2048 Hvis intergrale fejlen er over /GyroAccAbgleich ausgleichroll 1/256 Lagekorrektur_Roll 1/256 MittelIntegralRoll 1/2048 1/256 MittelIntegralNick Hvis intergrale fejlen er over 1000 Figure 67 88
89 AD_Yaw MessWert_Yaw Mess_intergral_yaw Intergral_Yaw AD_Yaw_Neutral MessWert_Yaw_bias AD_Neutral_Yaw_bias Figure 68 89
90 GasMischanteil 1/Stick_gain Motor Venstre Mess_wert_yaw Yaw_Mischanteil begrænser Stick_yaw Stick_gain GasMischanteil 1/Stick_gain begrænser1 Motor Højre Intergrale_Roll Intergrale_factor 1 s Summe_roll Ki PD_ergbnis_Roll Mess_wert_roll Stick_Roll Figure 69: Udregning af motor hastighed 90
91 GasMischanteil 1/Stick_gain Motor Front Mess_wert_yaw Yaw_Mischanteil begrænser2 Soll_yaw Stick_gain GasMischanteil 1/Stick_gain begrænser3 Motor Bag PD_ergbnis_Nick Intergrale_Nick Intergrale_factor 1 s Summe_Nick Ki Mess_wert_Nick Stick_Nick Figure 70: Udregning af motor hastighed 91
92 Bilag Måle data for Thrust målinger ligger i thrust malinger.xls Thrust vs spænding ligger i thrust malinger.xls Data til grundlag for IR kalibrerings formel ligger i calibreing.xls Måledata for IR sensor støj ligger i calibreing.xls Måledata for 10min test ligger i 10min test.xls Måledata for PID regulator som er implanteret ligger i Pid_regulator_virker_kp7.xls Måledata for oscillerende PID regulator ligger i pid_regulator_oscilere_kp12.xls Måledata for step response tests ligger i 0_5_meter_step_response_gain_5.xls 0_5_meter_step_response_gain_12.xls 0_5_meter_step_response_gain_14.xls 0_5_meter_step_response_gain_17_6.xls 92
J. Christian Andersen DTU Electrical Engineering Automation and Control 326/008. DTU Electrical Engineering, Technical University of Denmark
J. Christian Andersen DTU Electrical Engineering Automation and Control 326/008 1 31/10/17 Reguleringsmiraklet Hvad er en regulator?? 31/10/17 Hvad er en regulator? Noget der styrer eller sikrer at en
Indhold. Figur 1: Blokdiagram over regulatorprincip
Indhold.1 Beskrivelse af regulatorer............................. 2.2 Krav til regulator................................. 2.2.1 Integrator anti-windup.......................... 4.3 Overføringsfunktion
ELCANIC A/S. ENERGY METER Type ENG110. Version 3.00. Inkl. PC program: ENG110. Version 3.00. Betjeningsvejledning
ELCANIC A/S ENERGY METER Type ENG110 Version 3.00 Inkl. PC program: ENG110 Version 3.00 Betjeningsvejledning 1/11 Generelt: ELCANIC A/S ENERGY METER Type ENG110 er et microprocessor styret instrument til
Litium-ion batterimanual. Ebike Elcykler
Litium-ion batterimanual Ebike Elcykler Rev 30-12-2008 Litium ion batteriet Funktion Batteriet der forsyner elcyklen med strøm er et såkaldt litium ion batteri (Spænding: 36 Volt (V), Kapacitet: 10 Ampere
DC-Motor Controller. Brugermanual
Forside Jægergårdsgade 152/05A DK-8000 Aarhus C DENMARK WWW.WAHLBERG.DK DC-Motor Controller Brugermanual Firmware V4.00 Produkt indhold 1 styreboks til styring af 1 DC-motor. 1 strømforsyning 100 240 volt
Elektroniske Kredsløb og Dynamiske Systemer
Elektroniske Kredsløb og Dynamiske Systemer Lektion 4: Regulering Jan Bendtsen May, 29 EKDS mm. 4 Regulering slide i Basal regulering Hvorfor regulering? PID regulatorer i analog Ziegler-Nichols-tuning
Figur 1.1: Blokdiagram over regulatorprincip
Indhold 1 Design af regulator til DC-motor 2 1.1 Besrivelse af regulatorer............................. 2 1.2 Krav til regulator................................. 3 1.2.1 Integrator anti-windup..........................
WEA-Base Brugervejledning til vejetransmitter
WEA-Base Brugervejledning til vejetransmitter Version 3.4 WEA-Base Brugervejledning til vejetransmitter WEA-Base Brugervejledning til vejetransmitter Version 3.4 Indholdsfortegnelse 1. Tekniske data...
SPEED-Commander Frekvensomformer. Program nr. 1 Software version 5.0.3. PI-regulering
SPEED-Commander Frekvensomformer Driftsvejledning Bemærk: Speciel Software Program nr. 1 Software version 5.0.3 PI-regulering Til parameterliste og tilslutninger af styreklemmer anvendes vedhæftede programbeskrivelse.
Intelligent Solar Charge Controller Solar30 User s Manual
OM Solceller Intelligent Solar Charge Controller Solar30 User s Manual Læs venligst denne instruktion grundigt igennem, før du bruger den. 1 Produkt introduktion: Denne controller er en slags intelligent
Alle dip 1 7 sættes til On for at opnå stand-alone operation fra PC.
Hurtig opstart af Infranor CD1 p og pm: Dette er en enkelt og kortfattet vejledning i opsætningen af CD 1 p og pm driver til anvendelse i stand-alone mode. Ingen Profibus forbindelse. For senere opkobling
Efter installation af GEM Drive Studio software fra Delta s CD-rom, skal hoved skærmbilledet se således ud: (koden til administrator adgang er: admin)
Hurtig opstart af Infranor XtrapulsPac-ak drev: Dette er en enkelt og kortfattet vejledning i opsætningen af XtrapulsPac-ak driver til anvendelse i stand-alone mode. Ingen Profibus forbindelse. For senere
Ide med Diff. Mål. Tidsplan. 1.uge: 2.uge:
Side 1 af 5 Ide med Diff. Min ide med differenertierings modulet er at lave et program som kan vise 3d objekter, og få lavede en konverter som kan konventer 3ds filer over til noget som flash kan bruge.
INSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER
INSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER INSTALLATIONS MANUALEN SKAL GENNEMLÆSES OMHYGGELIG FØR IBRUGTAGNING ADVARSEL FOR SIKKER INSTALLATION Inden installation af automatikken skal balance fjederen på
2/3 Akset digital tæller
SERIE Z59E 2/3 Akset digital tæller for Elgo Magnetisk målebånd og / eller Encoder ELGO - ELECTRIC Gerätebau und Steuerungstechnik GMBH D - 78239 Rielasingen, Postfach 11 30, Carl - Benz - Strafle 1 Telefon
KOMPONENT BESKRIVELSE
Beskrivelse : S12-20-8A tegningsnummer 630014 Program som styrer 5 individuelle trykforløb på samme tid. Kan køre med intern tryk-reservoir. Kommunikerer med PC-program 714014 Dato Sign. Beskrivelse af
SPEED-Commander frekvensomformer. Program nr. 04 Software version 5.12c. Synkron Kontrol
SPEED-Commander frekvensomformer Driftsvejledning Bemærk: Speciel Software Program nr. 04 Software version 5.12c Synkron Kontrol Parameterliste og tilslutninger af styreklemmer anvendes vedhæftede programbeskrivelse.
Dobbelt sender detektor med 4 kanals frekvenser. 1. Funktioner. 2. Produkt gennemgang
Dobbelt sender detektor med 4 kanals frekvenser Tak, fordi du har købt denne stråle detektor, læs venligst denne brugsanvisning omhyggeligt før installation. Forsøg aldrig at adskille eller reparere produktet.
S26 MOTOR Original brugermanual
S26 MOTOR Original brugermanual Indhold 1. Indledning 1 2. Liste over nødvendigt værktøj 1 3. Sikkerhedspåbud 1 4. Motor montering 2 4.1. Instruktion før montering 2 4.2. Samling af skinne 3 4.3. Opsætning
Impuls og kinetisk energi
Impuls og kinetisk energi Peter Hoberg, Anton Bundgård, and Peter Kongstad Hold Mix 1 (Dated: 7. oktober 2015) [email protected] [email protected] [email protected] 2 I. INDLEDNING I denne øvelse
ESKY LAMA Tillykke med din nye helikopter
ESKY LAMA Tillykke med din nye helikopter Hvis du har ris/ros, forslag eller kommentarer er du meget velkommen til at skrive til os på [email protected]. Der er et væld af muligheder med en RC helikopter,
Mean Well, LCM-serie installations vejledning.
Egenskaber: 180 -> 295 VAC (LCM-25: 180 277 VAC) Indbygget aktivt power factor funktion Udgangsstrøm indstilles med DIP kontakter Indbygget DALI interface og simpel kontakt dæmpning (DA version) Indbygget
INSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER GA 1000
INSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER GA 1000 INSTALLATIONS MANUALEN SKAL GENNEMLÆSES OMHYGGELIG FØR IBRUGTAGNING ADVARSEL FOR SIKKER INSTALLATION Inden installation af automatikken skal balance fjederen
Kronback tracers P4+
Brugervejledning Kronback tracers P4+ Fax:(+45) 46 907 910 Side 1 of 19 CONTENT 1. UDFORMNING OG FORBINDELSER 4 1.1. Serie nummer 5 1.2. Grafisk display 5 1.3. Navigationsknapper 6 1.4. 6-30V strømforsyning
Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B
Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B Udarbejdet af: Mathias R W Sørensen, klasse 3.4 Udleveringsdato: 02-03-2012 Afleveringsdato: 11-05-2012 IT-vejleder: Karl G. Bjarnason
MJPower engineering Ecu Link.
MJPower engineering Ecu Link. Trin for trin instruktioner. I dette eksempel starter vi med at teste en cykel med et Power Commander nul map. Man er nødt til at have en præcis omdrejningstal registrering,
SPIDER Quick guide. DATO: August 2017 FORHANDLER: WASYS A/S. Langebjergvænget Roskilde
SPIDER Quick guide DATO: August 2017 FORHANDLER: WASYS A/S Langebjergvænget 18 4000 Roskilde +45 7221 7979 Indhold Om SPIDER... 3 Funktioner ved SPIDER... 3 Spændingsforsyning... 3 Installation og fysiske
Det er nødvendigt for brugeren at læse, forstå og følge vejledningens instruktioner.
Tams Elektronik LD-G-3 / LD-W-3 (1) Lokomotivdekoder LD-G-3 / LD-W-3 i Märklin-Motorola format Denne oversættelse omfatter monterings- og anvendelsesvejledningerne til LD-G-3 / LD-W-3 dekoderen. Den originale
Brugervejledning & instruktion MTW 12/1. Varenr. 572096 MTW 12/2. Varenr. 572099 MTW12/1101-1
Brugervejledning & instruktion MTW 12/1 Varenr. 572096 MTW 12/2 Varenr. 572099 MTW12/1101-1 INDHOLD 1.0 Beskrivelse 2.0 Installation 3.0 Programmering 4.0 Termostat / P.I.D. funktion 4.1 MTW 12/1 termostat
MEN-001-B GARAGEPORTÅBNER MONTERINGSVEJLEDNING
MEN-001-B GARAGEPORTÅBNER MONTERINGSVEJLEDNING INDHOLDSFORTEGNELSE Sikkerhedsforanstaltninger.....1 Nødvendigt værktøj...1 Montering af garageportåbneren...2-6 Montering af skinnerne..7-8 Stramning af
Dansk El-montage manual Portautomatik
Dansk El-montage manual Portautomatik (med fysiske ende stop) Terminaler: Power Portstyring 1 2 Power input 220/230Vac. Kabeldim. 3x1.5 PVIKJ eller lign. 3 4 Advarselslampe. Udgang 230Vac/20W. Signalet
Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless
Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless Side 1 af 8 Indholdsfortegnelse 1 PAKKENS INDHOLD... 3 2 INSTALLATION... 4 2.1 PLACERING... 4 2.2 FORBRUG... 4 2.3 12V TILSLUTNING... 4
Skråplan. Esben Bork Hansen Amanda Larssen Martin Sven Qvistgaard Christensen. 2. december 2008
Skråplan Esben Bork Hansen Amanda Larssen Martin Sven Qvistgaard Christensen 2. december 2008 1 Indhold 1 Formål 3 2 Forsøg 3 2.1 materialer............................... 3 2.2 Opstilling...............................
Husk altid at have strøm på batteriet. Ved vinteropbevaring oplad batteriet en time hver 2. måned
Batteri manual LiFePO4 batterier til Ebike Elcykler Husk altid at have strøm på batteriet. Ved vinteropbevaring oplad batteriet en time hver 2. måned Rev 5-4-2011 Litium jernfosfat batteriet Funktion Batteriet
ESKY LAMA 2. Tillykke med din nye helikopter. 1. Justering
ESKY LAMA 2 Tillykke med din nye helikopter Der er et væld af muligheder med en RC helikopter, som du ikke kan få andre steder med øvelse vil du være i stand til at hover (hænge stille i luften), flyve
Mean Well, LCM-serie installations vejledning.
Egenskaber: 180 -> 295 VAC (LCM-25: 180 277 VAC) Indbygget aktivt power factor funktion Udgangsstrøm indstilles med DIP kontakter Indbygget DALI interface og simpel kontakt dæmpning (DA version) Indbygget
RPM-K. Gældende fra: 25/5/2013
RPM-K Gældende fra: 25/5/2013 Volumenstrøms regulator RPM-K I. INDHOLD Nærværende tekniske specifikationer dækker flere modeller og størrelser af volumenstrøms regulatorer (herefter: regulatorer) under
Opsætning af DEVO F12E Sender Quick Start Guide og Diagram.
Auto let funktion. Rund flyvnings funktion. Hyper IOC funktion. GPS Telemetri funktion. Altitude hold funktion. Automatisk landings funktion. Landingsstel der kan kører op. 5.8G live billede transmission.
Pædagogisk vejledning til. Materialesæt. Sphero. http://via.mitcfu.dk/99872760
Pædagogisk vejledning til Materialesæt Sphero http://via.mitcfu.dk/99872760 Pædagogisk vejledning til materialesættet Sphero Materialesættet kan lånes hos VIA Center for Undervisningsmidler og evt. hos
Indholdsfortegnelse:
Dataopsamling Klaus Jørgensen Gruppe. Klaus Jørgensen, Jacob Clausen Og Ole Rud Erhvervs Akademi Fyn Allegade 79 Odense C 5000 fra d 2/12-02 til d 20/12-02 Vejleder: SKH. Forord: Denne rapport omhandler
Bluetooth højttaler BABHCK811_1
Bluetooth højttaler BABHCK811_1 Tillykke Tillykke med dit nye Amitech produkt! Oplysningerne i denne brugervejledning kan ændres uden varsel. Amitech Danmark A/S er ikke erstatningspligtig i tilfælde
1. Bluetooth Speakerphone
1. Bluetooth Speakerphone Denne Bluetooth speakerphone i mini-størrelse er designet til at du kan nyde maksimal frihed ved trådløs kommunikation med den avancerede S.S.P-løsning med Ekko- og støjreduktioner,
BRUGER VEJLEDNING DK 8MP wildview ir / KAMERA JK 020 / Åtelkamera 801/Albecom Justerbar 3 / 5 eller 8 mp.
BRUGER VEJLEDNING DK 8MP wildview ir / KAMERA JK 020 / Åtelkamera 801/Albecom Justerbar 3 / 5 eller 8 mp. Funktioner: 1. 5 cm TFT LCD-skærm med angivelse af optage tilstand, hukommelse på kort og batteri
AGV Kursus August 1999
AGV Kursus August 1999 Dato: 26.08.99 Morten Nielsen Daniel Grolin Michael Krag Indledning: Princippet bag en AGV (Autonomous Guided Vehicle) er at få et køretøj til at bevæge sig rundt i nogle omgivelser,
DiSEqC-Positioner. Best. nr. HN4892 (Brugsanvisnings nr. 361)
DiSEqC-Positioner Best. nr. HN4892 (Brugsanvisnings nr. 361) DiSEqC 1.0/1.2 Positioner DiSEqC-omformer, som gør at man kan styre en parabolmotor 36-Volts type med alle digital modtagere som har standard
BETJENINGSVEJLEDNING VERSION 19.1 DATO PR9V19.DA TAST FOR AT FÅ FORSKELLIGE UDLÆSNINGER I DISPLAY
BETJENINGSVEJLEDNING VERSION 19.1 DATO 6-1-98 PR9V19.DA TASTATUR: MENU TAST FOR AT FÅ FORSKELLIGE UDLÆSNINGER I DISPLAY - Indtrækshastighed - Total vandingstid - Længde af den udtrukne slange - For- og
KONSTANT REGN 6 BETJENINGSVEJLEDNING VERSION 18 DATO 20-1-95 UDLÆSNING I DISPLAY. - Indtrækshastighed. - Total vandingstid
UDLÆSNING I DISPLAY - Indtrækshastighed - Total vandingstid - Længde af den udtrukne slange - For- og eftervanding valgt - Tryk sensor - Stop sensor - Hastigheds sensor - Motor 1, motor der regulere turbinen
Hurtigbrugsanvisning til Dynomet 6.31 for Windows 7
Hurtigbrugsanvisning til Dynomet 6.31 for Windows 7 Tilslut usb boksen til en usbport, og start programmet. Efter kort tid står der Boks OK, og en grøn lampe tænder imellem 4 og 5 knap. Effektmåling: Gå
Hurtigbrugsanvisning til Dynomet 6.66 for Windows 7-10
Hurtigbrugsanvisning til Dynomet 6.66 for Windows 7-10 Tilslut usb boksen til en usbport, og start programmet. Efter kort tid står der Boks OK, og en grøn lampe tænder imellem 3 og 4 knap. Hvis du har
Dæmpet harmonisk oscillator
FY01 Obligatorisk laboratorieøvelse Dæmpet harmonisk oscillator Hold E: Hold: D1 Jacob Christiansen Afleveringsdato: 4. april 003 Morten Olesen Andreas Lyder Indholdsfortegnelse Indholdsfortegnelse 1 Formål...3
Installations tips & anbefalinger... side 3 M9000 Ledningsdiagram... side 4 CN 1... side 5 CN 2... side 7 CN 3... side 8 CN 4... side 9 CN 5...
1 Installations tips & anbefalinger... side 3 M9000 Ledningsdiagram... side 4 CN 1... side 5 CN 2... side 7 CN 3... side 8 CN 4... side 9 CN 5... side 9 CN 6... side 9 CN 7... side 9 CN 8... side 9 Fjernbetjenings
Tilslutning- og programmeringseksempler
VLT MicroDrive FC 051 Indholdsfortegnelse Forord... 3 Oversigt effekt og styre kreds VLT MicroDrive... 4 Initialisering af frekvensomformeren... 5 Tilslutning af motorbeskyttelse... 6 Start/stop med analog
Undersøgelse teknologi og resurser: Eleverne skal lære om enkel produktudvikling fra ide til implementering.
Forløbets titel Design og byg en solcelle racerbil Intro: Solcellelamper findes i mange forskellige versioner til haven. Solcellen omdanner solens energi til elektrisk strøm, så man kan bruge den til fx
Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless
Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless Side 1 af 8 Indholdsfortegnelse 1 PAKKENS INDHOLD... 3 2 INSTALLATION... 4 2.1 PLACERING... 4 2.2 FORBRUG... 4 2.3 12V TILSLUTNING... 4
Bestemmelse af kroppens fysiske tilstand
Bestemmelse af kroppens fysiske tilstand Forsøg udført af Nicolaj Seistrup, Christian Starcke, Kim, mark og Henrik Breddam Rapport skrevet af Henrik Breddam den 2006-10-25 Rapport længde 7 sider Side 1
Kasteparabler i din idræt øvelse 1
Kasteparabler i din idræt øvelse 1 Vi vil i denne første øvelse arbejde med skrå kast i din idræt. Du skal lave en optagelse af et hop, kast, spark eller slag af en person eller genstand. Herefter skal
Svendeprøve Projekt Tyveri alarm
Svendeprøve Projekt Tyveri alarm Påbegyndt.: 8/2-1999 Afleveret.: 4/3-1999 Projektet er lavet af.: Kasper Kirkeby Brian Andersen Thomas Bojer Nielsen Søren Vang Jørgensen Indholds fortegnelse 1. INDLEDNING...3
Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless
Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless ID er for trådløse sensorer: Fjernbetjening: Bevægelsessensor: Vandsensor Landstrømsensor: Dørsensor: Temperatursensor: Side 1 af 8 Indholdsfortegnelse
ELCANIC A/S Counter Type CNT150 Version 2.00 Inkl. PC programmet: Cnt150 Version 3.00 Betjeningsvejledning
ELCANIC A/S Counter Type CNT150 Version 2.00 Inkl. PC programmet: Cnt150 Version 3.00 Betjeningsvejledning Generelt: ELCANIC A/S COUNTER Type CNT150 er en microprocessor baseret tæller. Specielt designet
SunFlux Varenr.: 03104
SunFlux Varenr.: 03104 Guide og specifikationer for SunFlux Master Sensor LED loftlampe m. RF mikrobølge sensor & Master-Master trådløst netværk SunFlux Master Sensor Lampe V.2. er fjerde generations mikrobølgesensor
Jægergårdsgade 152/05A DK-8000 Aarhus C DENMARK WWW.WAHLBERG.DK. AC Motor Controller 370W. Brugermanual
Jægergårdsgade 152/05A DK-8000 Aarhus C DENMARK WWW.WAHLBERG.DK AC Motor Controller 370W Brugermanual WWW.WAHLBERG.DK TELEPHONE +45 86 18 14 20 CELL PHONE +45 40 52 20 88 EMAIL: [email protected] Marts
Humantechnik. BRUGERVEJLEDNING Lisa Vækkeur RF Time A-3240
Humantechnik DK BRUGERVEJLEDNING Lisa Vækkeur RF Time A-3240 Lys/Snooze Alarm on/off Visuel indikation af alarm, der er aktiveret. Højtaler on/off Blinkende lys on/off 12 V strømforsyning Højtaler Knap
Ohms lov. Formål. Princip. Apparatur. Brug af multimetre. Vi undersøger sammenhængen mellem spænding og strøm for en metaltråd.
Ohms lov Nummer 136050 Emne Ellære Version 2017-02-14 / HS Type Elevøvelse Foreslås til 7-8, (gymc) p. 1/5 Formål Vi undersøger sammenhængen mellem spænding og strøm for en metaltråd. Princip Et stykke
OPBEVAR ALTID DENNE INSTRUK- TIONSMANUAL SAMMEN MED VÅBEN- ET, OG VIDEREGIV DEN SAMMEN MED VÅBENET, HVIS VÅBENET VIDERE- SÆLGES.
INSTRUKTIONSMANUAL OPBEVAR ALTID DENNE INSTRUK- TIONSMANUAL SAMMEN MED VÅBEN- ET, OG VIDEREGIV DEN SAMMEN MED VÅBENET, HVIS VÅBENET VIDERE- SÆLGES. ADVARSEL: Før GunPod tages i brug skal du sikre dig,
15. Digital kode vælger (hvid DIP switch) 16. Kanal vælger (gul DIP switch) 17. Batteri hus
Babyalarm MBF 8020 DK 1.. INDHOLD 1 x sender med integreret oplader, 1 x modtager, 1x ladestation for oplader 2 x strømforsyninger, 2 x specielle opladte batteri pakker 1 x Bruger manual 2.. KOMPONENTER
Revision (sidste opdatering) Software Version 8:29
Instruktion TWIN enhed (til brug ved 1 så-enhed) Revision 1.7 20130514 (sidste opdatering) Software Version 8:29 Index Program version... 1 Skift af værdier... 2 Tilpasning af parametre... 2 Kalibrering...
Kom godt i gang med Fable-robotten
Kom godt i gang med Fable-robotten 1. Først skal du installere programmet på din computer. Gå ind på shaperobotics.com og under support vælger du download: Her vælger du, under PC App om du kører Windows
Fable Kom godt i gang
Fable Kom godt i gang Opdateret: 26-03-2018 Indholdsfortegnelse 1. Først skal du installere programmet på din computer 3 2. Når programmet er installeret er du klar til at pakke robotten ud 4 3. Nu er
Nervefysiologi - Excitable membraner
Nervefysiologi - Excitable membraner Formålet med øvelsen er at give de studerende mulighed for at aflede aktionspotentialer fra regnormens kæmpeaxoner, og derved iagttage nogle af egenskaberne ved aktionspotentialer.
Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering...
Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering... 3 Kildekoden... 4 Variabler... 4 Setup... 4 Loop... 4 Indledning
FØR BRUG Indstilling af tid. Indstilling af dato
BRUGSANVISNING B877 FØR BRUG Dette ur er ikke drevet med et almindelig batteri, men ved at omdanne lys energi til elektrisk energi. Før du bruger uret, udsættes for dagslys, og sørg for uret er tilstrækkeligt
Der er derfor, for at alle kan sende, kun tilladt, at sende intermitterende. Altså korte pakker. ( Dette skal dog verificeres!!)
MHz KIT Rev: /- Det er ikke tilladt, at man bare udsender radiobølger på den frekvens, man ønsker. Forskellige frekvenser er udlagt til forskellige formål. Nogle til politiet, militæret, FM-radio-transmission,
Maskinanlæg, opsætning af frekvensomformer
Maskinanlæg, opsætning af frekvensomformer INDHOLDSFORTEGNELSE Opgaver - Maskinanlæg, opsætning af frekvensomformer...3 2-20 Rekv. 0 Prod. 28-06-2006-08:33 Ordre 000 EFU Opgave 1 1 stk. VLT 2800 1 stk.
UniLock System 10. Manual til T550 Secure Radiomodtager og håndsender. Version 2.0 Revision 140220
UniLock System 10 Manual til T550 Secure Radiomodtager og håndsender Projekt PRJ124 Version 2.0 Revision 140220 T550 Secure er en højsikker trådløs UHF-læser der benyttes, hvor det ønskes at oplåse på
Installationsmanual Trådløs Bevægelsessensor
Installationsmanual Trådløs Bevægelsessensor Indholdsfortegnelse KOM GODT I GANG... 2 UDPAKNING... 2 MONTERING... 4 Montering af væg-/loftbeslaget... 4 INSTALLATION AF BATTERIER... 4 EFTER INSTALLATION
Digital positioner type RE 3446
Installations- og driftsvejledning IN145 Digital positioner type Indholdsfortegnelse: Side 1 Generel information 2 2 Montering og tilslutning 2 3 Idriftsættelse 3 4 Drifts funktioner 6 5 Funktions beskrivelser
Oversigts billedet: Statistik siden:
1 Tilslutning: Tilslut et nætværks kabel (medfølger ikke) fra serverens ethernet port til din router. Forbind derefter bus kablet til styringen, brun ledning til kl. 29, hvid ledning til kl. 30 Forbind
Instruktion. SEEDER+ unit. Revision (last update) Software Version 8:32. Indhold
Instruktion SEEDER+ unit Revision 1.82 20140825 (last update) Software Version 8:32 Indhold Beskrivelse... 1 Program version... 1 Skift af værdier... 2 Justering af parametre... 2 Kalibrering... 4 Kalibrering
Projekt. Analog Effektforstærker.
Projekt. Analog Effektforstærker. Udarbejdet af: Klaus Jørgensen. Gruppe: Klaus Jørgensen Og Morten From Jacobsen. It og Elektronikteknolog. Erhvervsakademiet Fyn Udarbejdet i perioden: 7/0-03 /-03 Vejledere:
Tillykke, du er nu ejer af en Gloworm X2. Forbered dig på at opleve revolutionen inden for LED lys
Tillykke, du er nu ejer af en Gloworm X2 Forbered dig på at opleve revolutionen inden for LED lys Sikkerhedsanvisning: Et alternativ lys skal bæres til hver en tid. Varme: Aluminiumshovedet er designet
Harmonisk oscillator. Thorbjørn Serritslev Nieslen Erik Warren Tindall
Harmonisk oscillator Thorbjørn Serritslev Nieslen Erik Warren Tindall November 27, 2007 Formål At studere den harmoniske oscillator, som indgår i mange fysiske sammenhænge. Den harmoniske oscillator illustreres
CANSAT & ARDUINO step by step
CANSAT & ARDUINO step by step Jens Dalsgaard Nielsen SATLAB Aalborg Universitet Danmark [email protected] 1/51 Arduino CANSAT - MÅL At måle ved hjælp af sensor temperatur, tryk, acceleration, CO2, lys,...
Sennheiser DW 800 Guide. 1 Installation & Tilslutning
Sennheiser DW 800 Guide 1 Installation & Tilslutning DW 800 pakken indeholder følgende 2 Mobile enheder 1 Lade station 1 Mellemkabel 1 Strømforsyning 1 PC-kabel 1 Manual Tilslut mellemkablet til din DW
Monteringsvejledning. Markise Elektrisk. MoreLand A/S Knullen 22 DK 5260 Odense S Denmark 11.1 Tel+ 45 70 22 72 92 www.moreland.dk post@moreland.
DK Monteringsvejledning Markise Elektrisk MoreLand A/S Knullen 22 DK 5260 Odense S Denmark 11.1 Tel+ 45 70 22 72 92 www.moreland.dk [email protected] Sikkerhedsforskrifter 1. Det anbefales at markisen monteres
Installationsmanual Trådløs Bevægelsessensor
Trådløs Bevægelsessensor Indholdsfortegnelse KOM GODT I GANG... 2 UDPAKNING... 2 MONTERING... 4 Montering af væg-/loftbeslaget... 4 INSTALLATION AF BATTERIER... 4 EFTER INSTALLATION AF BATTERIER... 5 TEST
A LED Santiago 16W HF sensor og Master / Slave
A LED Santiago 16W HF sensor og Master / Slave A LED Santiago LED lampe med soft dæmp er forsynet med HF sensor og master/slave funktion. Santiago kan trådløst kommunikere mellem Master og Slave.aled.dk
Brugermanual til System 2000
Brugermanual til System 2000 Vigtigt Læs hele denne manual før komponenten tages i brug, den indeholder vigtig information for brugeren. 5/9 2007 L:\Vejledninger\Nye vejledninger\vejledning_system2000.pdf
DAN TWINCA EASY. Brugervejledning
DAN TWINCA EASY Brugervejledning EASY BrugerVejledning DK.doc Version 1.00 Indholdsfortegnelse Indholdsfortegnelse... 2 Start og manuel fodring... 4 Opstart...4 Indtastning af talværdier i menuen...4 Automatisk
Patent nummer: J.nr. US JK7343I. Tlf
Patent nummer: J.nr. US74765294-JK7343I Side 2 of 9 Montering af enheden: Det er vigtigt, at den positive ledning +, altid får konstant fødestrøm. Bemærk: Nogle maskiner og biler kan, efter at have været
Knapper og kontroller: 1. DRONE 2. Fjernbetjening
Danish slukke fjernbetjeningen. Hvis du ikke overholder denne rækkefølge, kan det medføre, at du mister kontrollen over dronen og derved udsætter dig selv og andre for fare. Gør det til en vane at overholde
Faldmaskine. , får vi da sammenhængen mellem registreringen af hullerne : t = 2 r 6 v
Faldmaskine Rapport udarbejdet af: Morten Medici, Jonatan Selsing, Filip Bojanowski Formål: Formålet med denne øvelse er opnå en vis indsigt i, hvordan den kinetiske energi i et roterende legeme virker
- Forøg værdien i SETUP tilstand og Alarm funktionen
Introduktion Denne digitale skridttæller viser antal skridt gået, afstand tilbagelagt, kalorier forbrændt, den totale træningstid, og har 30 dages hukommelse, blandt andre nyttige funktioner. Det er også
Fjernbetjening Flex Teknisk manual
Fjernbetjening Flex Teknisk manual VEKA INT. Indblæsnings aggregat 1 Beskrivelse Flex fjernbetjening kan bruges til at styre ventilationsanlæg med V1 og V2 printkort. Tekniske data Knapper på display Knap
Indhold Problemstilling... 2 Solceller... 2 Lysets brydning... 3 Forsøg... 3 Påvirker vandet solcellernes ydelse?... 3 Gør det en forskel, hvor meget
SOLCELLER I VAND Indhold Problemstilling... 2 Solceller... 2 Lysets brydning... 3 Forsøg... 3 Påvirker vandet solcellernes ydelse?... 3 Gør det en forskel, hvor meget vand, der er mellem lyset og solcellen?...
Testsignaler til kontrol af en målekæde
20. marts 2007 RL 12/07 OFC/THP/CB/lm MILJØSTYRELSENS Testsignaler til kontrol af en målekæde Resumé Der er udarbejdet testsignaler, som gør det muligt at kontrollere en samlet målekæde. Testsignalerne,
SSI-9001 IP65. Installations vejledning. SSIHuset v/svane Electronic ApS. GSM fjern kontrol og alarm system
SSI-9001 IP65 GSM fjern kontrol og alarm system Installations vejledning SSIHuset v/svane Electronic ApS Vejledning Kontakt Tænd/sluk 1 - Strømforsyning: Forbundet til egen 12V / 1.5A strømforsyning (*)
