Inleiding tot het Model vliegtuig Autopilot!!! (3 / 7 stap)

Stap 3: Demo PID-regelaar


Voordat ik mijn arduino in een vliegtuig gooide, heb ik besloten dat het zou een goed idee om een platform om te testen het PID op te bouwen. Mijn PID-regelaar gebruikt de volgende onderdelen:
Eflite Outrunner Motor
35 amp ESC
11,1 V LiPo batterij
1/2" PVC
Een oud zagen paard naar een stand

De controller ziet er in de hoek van de arm is opknoping op met behulp van onze versnellingsmeter en een gyroscoop, en die gegevens worden gebruikt om te bepalen hoeveel stroom te gooien van de motor te arm een niveau.

Omdat het ESC wordt gebruikt voor het aansluiten van uw motor op een radio ontvanger bus ontworpen voor servo's, is het relatief eenvoudig te bepalen van een borstelloze AC-motor met een ESC op een Arduino dankzij de Servo.h + Servo.cpp in uw omslag van bibliotheken. Ik denk dat het servo-protocol gebruikt pulse-positie modulatie (PPM), die kan worden bereikt gebruikend een PWM pin op de arduino met servo.write() functie.
http://www.Hooked-on-RC-Airplanes.com/servo-tutorial.html

Het is belangrijk om veiligheid bewust tijdens het uitvoeren van deze motoren, aangezien zij gaan zeer snel. * ALTIJD dragen veiligheid glazen * * de propeller ophouden totdat u absoluut nodig hebt it *

Hebt u om te schrijven een functie naar arm(); uw ESC zodat u kunt de snelheid instellen. In principe moet u schrijven van het ESC, laag, hoog, en dan weer laag te houden.
http://www.Arduino.CC/cgi-bin/yabb2/YaBB.pl?num=1226292633 Dit forum gaat over hoe u kunt besturen van een borstelloze motor, en is waar ik heb kader voor mijn arm(); functie en setSpeed (); functie.

U kon enkel een servo.write(0-180) gebruiken om uw snelheid op uw esc, maar u kunt het ook toewijzen op een schaal van 0-100. U kunt het downloaden van de motor_functions aan de onderkant van de stap. Als het niet werkt kunt u mij zeggen!! Ik kan gewoon toe te voegen in de instructies!

Met behulp van deze functies geeft u volledige motorische controle. U moet met uw eigen code voor uw specifieke ESC zenuwachtig. Door te verklaren onze sensor functies onafhankelijk van de lus kunnen we nu de motor en de sensoren tegelijkertijd uitvoeren. Dit is waar ik mijn eerste belangrijke tegenslag raakte. Omdat de motor zo veel huidige van de batterij trekt, was het inducerende stromingen in mijn I2C-bus. Mijn sensor zou werken prima wanneer de motor was uitgeschakeld, maar wanneer de motor liep de waarden waren vrijwel zinloos.
Ik nam de volgende stappen uit om het schoonmaken van het lawaai:
Ik heb een ferriet ring toegevoegd aan het esc (met terugwerkende kracht, dit waarschijnlijk gewoon beschermt het ESC lawaai-geleerd te gebruiken na mijn Rössl crashte http://www.hobbyking.com/hobbyking/store/__23206__Clip_On_Soft_Ferrite_Rings_5pc_.html)
Ik de sensoren zo ver mogelijk van de motor gemonteerd
Twisted al mijn draden om te proberen en te minimaliseren huidige inductie

Ik vond deze websites om te helpen omgaan met mijn probleem:

http://diydrones.com/forum/topics/PID-controller-I2C-bus-Noise-from-ESC?xg_source=activity //this is een draad die ik begon op DIY drones
http://forum.allaboutcircuits.com/showthread.php?t=41916

Dit leek sensor fout te minimaliseren, maar nog steeds ongeveer 5 uit elke 20 waarden waren uit +-10 graden. Om dit schoon te gemedieerde ik de sensor-waardes door:
Bouwen van een aray te houden van 20 waarden zoals die chronologisch verschenen
Bouwen van een matrix die de laatste 20 waarden gesorteerd in gehouden (oplopend of aflopend; het maakt niet uit want we zijn op zoek naar de mediaan)
Ik gebruikte een zeepbel soort om te helpen sorteren mijn waarden

Ik vond deze website te helpen verklaren hoe sorteer array efficiënt:
http://mathbits.com/mathbits/CompSci/arrays/sorting.htm
U zult moeten construeren veelvouden van deze functies voor meerdere waarden sorteren (x, y, z; dx, dy, dz)

Mijn zeepbel sorteer en mediaan functies kunnen worden gedownload op de onderkant van de stap!

Nu dat uw sensoren waarden congruent zijn en u controle over uw AC-motor hebt, kunnen we beginnen werkelijke PID controle!
De wikipedia-pagina heeft een goede baan uit te leggen hoe het programma moet worden gestructureerd met behulp van psuedocode. Er zijn vele, vele manieren om dit te implementeren. Het hangt af van hoe lang u wilt uw feedback gebruiken voor u integraal en derrivative termen.

Hier vindt u mijn PID_sample aan de onderkant van deze stap!

Afstemmen van de PID: er zijn vele manieren om af te stemmen op een PID. U kunt door software, gok en controleer, ik zou proberen met behulp van de methode Zieger Nichols.
Enigerlei wijze, u begint door alleen het voeren van uw output met de proportionele fout. KP zo instellen dat de proportionele termijn nooit uitvoercapaciteit overschrijdt. Kortom, het systeem zal schommelen, wilt u het aan het temperen van rond uw setpoint (of bij de minst niet toenemen in de tijd!). Zodra u hebt gevonden een geschikte KP kunt u instellen dat KD of KI. Verschillende mensen zeggen verschillende dingen als het gaat om die men eerst doen, maar integraal termijn een undercorrection naar het setpoint versnellen zal terwijl de derrivative termijn een overcorrection zal vertragen.

Sorry iedereen die ik heb geprobeerd om het insluiten van de video's, maar voor sommige reden het werkte niet. Hier is een link:
http://www.YouTube.com/watch?v=_qlgWSP-kfk&feature=g-UPL

Na het spelen met de code voor een tijdje moet het duidelijk geworden hoe adaptieve dit type controller is aan uw specifieke systeem. Vergeet niet, probeer en feedforward zo veel als je weet hoe! Zodra u vertrouwd bent ga je gang en de controller installeren!!

Gerelateerde Artikelen

Inleiding tot het bouwen van individuele survival kits

Inleiding tot het bouwen van individuele survival kits

Hallo Instructables Gemeenschap,Hartelijk dank voor de positieve reacties en feedback, Favorieten & abonnementen voor mijn vorige projecten. Een ding die ik gerealiseerd door middel van berichten en commentaren voor mijn vorige Pocket Survival Kit De
Inleiding tot het installeren van web apps.

Inleiding tot het installeren van web apps.

Webapplicaties zijn een zegen voor uw computeromgeving bieden. Traditioneel zou u computer software applicaties lokaal op elk systeem laden.  Zelfs met geautomatiseerde software kan implementatie systemen, nog steeds worden ondersteunen intensieve. M
Inleiding tot het maken van een SteamPunk licht buis U.S.A. versie 2.0

Inleiding tot het maken van een SteamPunk licht buis U.S.A. versie 2.0

omzetten in sommige oude rommel iets echt netjes en heeft vele appAlle onderdelen voor deze bouwstijl kunnen vrij gemakkelijk verworven, de moeilijkste onderdelen te vinden zou zijn de grondslagen van de lamp die het gas kleppen van een propaan Gasgr
Inleiding tot het hout kleuring

Inleiding tot het hout kleuring

Houten vlek heeft een mooie effect van verbetering van het uiterlijk van het hout door omarmen het mooie graan patroon en daarmee pop met een verandering in kleur in tegenstelling tot verf, die het omhoog dekt.  Ik ben het opbouwen van een set van bo
Inleiding tot het gebruik van Simulink in MatLab

Inleiding tot het gebruik van Simulink in MatLab

MatLab is een nuttig hulpmiddel voor het schrijven van programma's om hogere orde functies en matrices te verrichten. Soms echter kan zeven door, of coderegels te schrijven worden overweldigend en vervelend. Er is een onderdeel van MatLab echter waar
Inleiding tot het hout branden

Inleiding tot het hout branden

dit niet gaan te veel in detail, maar het zal u tonen of u zult genieten van hout branden of als het niet voor jou. Zijn een goedkope manier om een kamer te decoreren. en het is milieuvriendelijk, omdat het vereist geen verzendkosten en is gemaakt va
Hoe luidsprekers werken en een inleiding tot het bouwen van een Subwoofer doos

Hoe luidsprekers werken en een inleiding tot het bouwen van een Subwoofer doos

hoffelijkheid gaat naar: www.digispeaker.com voor de foto, digispeaker dank!VOORDAT WE: Ik, voor een, ben zeer open voor opbouwende kritiek maar eventuele opmerkingen die lijken te zijn kwetsend voor anderen en/of dit instructable kan en moet worden
Inleiding tot het snijwerk stok

Inleiding tot het snijwerk stok

mijn voornaamste reden voor het maken van dit instructable is omdat ik onlangs ging naar een buurt kamp op ding en was verbaasd over het aantal kinderen die had zulke mooi messen, maar na het bekijken van hen voor een tijdje ik merkte ze gerst wist h
Inleiding tot het solderen

Inleiding tot het solderen

Dit is mijn Instructable PowerPoint op Soldering. Ik geef enkele belangrijke woordenschat termen, staat stap voor stap instructies voor het solderen van een LED, en voorbeelden van "wat niet te doen". Ook bijgevoegd is een video van mij solderen
Inleiding tot het vinden van krachten in brug

Inleiding tot het vinden van krachten in brug

ingenieurs gebruikt een methode van statische vector mechanica te identificeren van de krachten die op bruggen en andere Trussen.  In dit probleem krijgen we een truss-systeem met bepaalde voorgelicht (lengte van de zijden en twee krachten die op bep
Lasersnijden voor Absolute Beginners: aangepaste Laser-gesneden hanger met behulp van de magie van het INTERNET (of: een zeer elementaire inleiding tot Adobe Illustrator)

Lasersnijden voor Absolute Beginners: aangepaste Laser-gesneden hanger met behulp van de magie van het INTERNET (of: een zeer elementaire inleiding tot Adobe Illustrator)

heb je ooit wilde een van deze fancy laser gesneden uit kettingen, maar u niet de eigenaar van een laser cutter of weten hoe ontwerpsoftware gebruiken?  Dit is uw gelukkige dag, mijn vriend.  Ik ga je leren alles wat die u moet weten om dit gebeuren,
Hoe LEGO werkte samen met Volvo tot het ontwikkelen van een nieuw model

Hoe LEGO werkte samen met Volvo tot het ontwikkelen van een nieuw model

LEGO ontwikkelen nieuwe modellen van alle van de tijd. Deze opwindende video toont hoe werkten ze samen met Volvo tot het ontwikkelen van een Lego Technic 42030 Volvo L350F wiellader.Stap 1: Selecteer spannende voertuig om te zetten in een modelOnder
Inleiding tot Leatherworking

Inleiding tot Leatherworking

Leder is een geweldig product dat is gebruikt door de mens sinds echt, het begin van de mens. Het is in kleding, schoenen, tassen, riemen en holsters en echt, vrij veel alles wat die je van bedenken kunt kan worden gemaakt van leer.Werken met leer is
Hoe te converteren een silverlit/airhogs-xtwin in een schaal model vliegtuig

Hoe te converteren een silverlit/airhogs-xtwin in een schaal model vliegtuig

dit instructable is over het omzetten van silverlit.airhogs rc vliegtuigen in schaal vliegtuigen. Voordat we beginnen moet u zich bewust dat het zal worden zeer moeilijk IN feite in de buurt van onmogelijk te HERBOUWEN uw oorspronkelijke vlak daarna