Innehållsförteckning:

Inverterad pendel: Kontrollteori och dynamik: 17 steg (med bilder)
Inverterad pendel: Kontrollteori och dynamik: 17 steg (med bilder)

Video: Inverterad pendel: Kontrollteori och dynamik: 17 steg (med bilder)

Video: Inverterad pendel: Kontrollteori och dynamik: 17 steg (med bilder)
Video: Электроскутер РЕВОЛЮЦИЯ КАЧЕСТВА CITYCOCO 3000W SKYBOARD BR70 Тест Драйв ситикоко харлей электроцикл 2024, Juli
Anonim
Image
Image
Inverterad pendel: Kontrollteori och dynamik
Inverterad pendel: Kontrollteori och dynamik
Inverterad pendel: Kontrollteori och dynamik
Inverterad pendel: Kontrollteori och dynamik
Inverterad pendel: Kontrollteori och dynamik
Inverterad pendel: Kontrollteori och dynamik

Den inverterade pendeln är ett klassiskt problem inom dynamik och kontrollteori som generellt utarbetas i fysik eller matematikkurser på gymnasiet och grundutbildningen. Eftersom jag själv var matte- och vetenskapsentusiast bestämde jag mig för att försöka implementera de koncept som jag lärde mig under mina lektioner för att bygga en omvänd pendel. Att tillämpa sådana begrepp i verkliga livet hjälper inte bara till att stärka din förståelse av begreppen utan utsätter dig också för en helt ny dimension av problem och utmaningar som handlar om praktiska och verkliga situationer som du aldrig kan stöta på i teoriklasser.

I denna instruerbara, kommer jag först att introducera det inverterade pendelproblemet, sedan täcka problemets teoretiska aspekt och sedan diskutera hårdvaran och mjukvaran som krävs för att väcka detta koncept till liv.

Jag föreslår att du tittar på videon som bifogas ovan medan du går igenom det instruerbara vilket ger dig en bättre förståelse.

Och slutligen, glöm inte att släppa en röst i "Klassrumsvetenskapstävlingen" om du gillade det här projektet och lämna inga frågor i kommentarsfältet nedan. Glad att göra!:)

Steg 1: Problemet

Problemet
Problemet

Det inverterade pendelproblemet är analogt med att balansera en kvast eller en lång stolpe på din handflata, vilket är något de flesta av oss har försökt som barn. När våra ögon ser polen falla till en viss sida, skickar de denna information till hjärnan som utför vissa beräkningar och instruerar sedan din arm att flytta till en viss position med en viss hastighet för att motverka polens rörelse, vilket förhoppningsvis skulle ge tippstången tillbaka till vertikal. Denna process upprepas flera hundra gånger i sekunden vilket håller polen helt under din kontroll. Den inverterade pendeln fungerar på ett liknande sätt. Målet är att balansera en pendel upp och ner på en vagn som får röra sig. I stället för ögon används en sensor för att detektera pendelns position som skickar informationen till en dator som utför vissa beräkningar och instruerar ställdon att flytta vagnen för att göra pendeln vertikal igen.

Steg 2: Lösningen

Lösningen
Lösningen

Detta problem med att balansera en pendel upp och ner kräver insikt i de rörelser och krafter som spelar i detta system. Så småningom kommer denna insikt att tillåta oss att komma med "rörelseekvationer" för systemet som kan användas för att beräkna relationer mellan utgången som går till ställdonen och ingångarna från sensorerna.

Rörelsekvationerna kan härledas på två sätt beroende på din nivå. De kan antingen härledas med hjälp av Newtons grundläggande lagar och viss matematik på gymnasienivå eller med hjälp av lagrangisk mekanik som vanligtvis introduceras i fysikkurser i grundutbildning. '

Båda tillvägagångssätten och deras formella härledningar täcks vanligtvis i gymnasiet eller grundutbildningskurser om matte eller fysik, även om de enkelt kan hittas med en enkel google -sökning eller genom att besöka denna länk. Genom att observera de sista rörelseekvationerna märker vi ett samband mellan fyra mängder:

  • Pendelns vinkel mot vertikalen
  • Pendelns vinkelhastighet
  • Pendelns vinkelacceleration
  • Vagnens linjära acceleration

Där de tre första är mängder som ska mätas av sensorn och den sista mängden kommer att skickas till ställdonet för att utföra.

Steg 3: Kontrollteori

Kontrollteori
Kontrollteori

Kontrollteori är ett delområde av matematik som behandlar styrning och drift av dynamiska system i konstruerade processer och maskiner. Målet är att utveckla en kontrollmodell eller en styrslinga för att generellt uppnå stabilitet. I vårt fall, balansera upp och ner pendeln.

Det finns två huvudtyper av kontrollslingor: öppen slingkontroll och sluten slingkontroll. Vid implementering av en öppen slinga -kontroll är kontrollåtgärden eller kommandot från regulatorn oberoende av systemets utmatning. Ett bra exempel på detta är en ugn, där den tid som ugnen stannar på är helt beroende av timern.

I ett system med sluten slinga är styrenhetens kommando beroende av återkopplingen från systemets tillstånd. I vårt fall är återkopplingen pendelns vinkel med hänvisning till det normala som bestämmer vagnens hastighet och position, vilket gör detta system till ett system med sluten slinga. Bifogad ovan är en visuell representation i form av ett blockschema över ett slutet loop -system.

Det finns flera tekniker för återkopplingsmekanism, men en av de mest använda är den proportionella - integrala - derivatkontrollen (PID -styrenheten), vilket är vad vi ska använda.

Obs: Att förstå hur dessa kontroller fungerar är mycket användbart för att utveckla en framgångsrik styrenhet, även om förklaring av en sådan kontrollers verksamhet ligger utanför ramen för denna instruerbara. Om du inte har stött på dessa typer av controllers i din kurs finns det massor av material online och en enkel google -sökning eller en online -kurs hjälper.

Steg 4: Genomföra detta projekt i ditt klassrum

Åldersgrupp: Detta projekt är främst för gymnasie- eller grundstuderande, men kan också presenteras för yngre barn som en demonstration genom att ge en överblick över begreppen.

Begrepp som omfattas: De huvudsakliga begreppen som omfattas av detta projekt är dynamik och kontrollteori.

Tid som krävs: När alla delar är samlade och tillverkade tar montering 10 till 15 minuter. Att skapa kontrollmodellen kräver lite mer tid, för detta kan eleverna ges 2 till 3 dagar. När varje enskild elev (eller grupper av studenter) har utvecklat sina respektive kontrollmodeller kan en annan dag användas för individerna eller teamen att demonstrera.

Ett sätt att implementera detta projekt i ditt klassrum skulle vara att bygga systemet (beskrivs i följande steg), medan satsen arbetar med delämnen i fysik relaterad till dynamik eller medan de studerar styrsystem i matematiklektioner. På så sätt kan idéer och koncept som de stöter på under klassen direkt implementeras i en verklig applikation, vilket gör deras koncept mycket tydligare eftersom det inte finns något bättre sätt att lära sig ett nytt koncept än genom att implementera det i verkliga livet.

Ett enda system kan byggas tillsammans som en klass och sedan kan klassen delas in i team, var och en bygger en kontrollmodell från grunden. Varje lag kan sedan demonstrera sitt arbete i ett tävlingsformat, där den bästa kontrollmodellen är den som kan balansera längst och motstå knuffar och pushar robust.

Ett annat sätt att genomföra detta projekt i ditt klassrum skulle vara att få äldre barn (gymnasienivå eller så), utveckla detta projekt och visa det för yngre barn samtidigt som de ger en överblick över dynamik och kontroller. Detta kanske inte bara väcker intresse för fysik och matematik för de yngre barnen utan hjälper också de äldre eleverna att kristallisera sina teoribegrepp eftersom ett av de bästa sätten att stärka dina begrepp är att förklara det för andra, särskilt yngre barn som det kräver dig att formulera dina idéer på ett mycket enkelt och tydligt sätt.

Steg 5: Delar och tillbehör

Delar och tillbehör
Delar och tillbehör
Delar och tillbehör
Delar och tillbehör
Delar och tillbehör
Delar och tillbehör

Vagnen får röra sig fritt på en uppsättning skenor vilket ger den en enda grad av frihet. Här är de delar och tillbehör som krävs för att göra pendeln och vagn- och rälssystemet:

Elektronik:

  • Ett Arduino -kompatibelt kort, vilket som helst fungerar. Jag rekommenderar en Uno om du inte är för erfaren med elektronik eftersom det blir enklare att följa med.
  • En Nema17 stegmotor, som kommer att fungera som ställdon för vagnen.
  • En stegmotordrivrutin, återigen kommer allt att fungera, men jag rekommenderar A4988 stegmotordrivrutin eftersom det bara blir enklare att följa med.
  • En MPU-6050 sexaxlig (Gyro + Accelerometer), som kommer att upptäcka de olika parametrarna, såsom vinkel och vinkelhastighet för pendeln.
  • En 12v 10A strömförsörjning, 10A är faktiskt en liten överkillning för detta specifika projekt, allt över 3A kommer att fungera, men med möjlighet att dra extra ström möjliggör framtida utveckling där mer kraft kan krävas.

Hårdvara:

  • 16 x lager, jag använde skateboardlager och de fungerade utmärkt
  • 2 x GT2 remskivor och rem
  • Cirka 2,4 meter 1,5-tums PVC-rör
  • Gäng 4 mm muttrar och bultar

Några av delarna som användes i detta projekt var också 3D -tryckta, därför kommer det att vara mycket användbart att ha en 3D -skrivare, även om lokala eller online 3D -utskriftsfaciliteter är allmänt tillgängliga.

Den totala kostnaden för alla delar är bara lite mindre än 50 $ (exklusive 3D -skrivaren)

Steg 6: 3D -tryckta delar

3D -tryckta delar
3D -tryckta delar
3D -tryckta delar
3D -tryckta delar
3D -tryckta delar
3D -tryckta delar

Några delar av vagn- och rälssystemet måste skräddarsys, så jag använde Autodesks gratis att använda Fusion360 för att modellera CAD -filerna och 3D -skriva ut dem på en 3D -skrivare.

Några av delarna som var rent 2D-former, till exempel pendeln och portalen, var laserskurna eftersom det var mycket snabbare. Alla STL -filer bifogas nedan i den zippade mappen. Här är en komplett lista över alla delar:

  • 2 x Gantry Roller
  • 4 x ändlock
  • 1 x stegfäste
  • 2 x Hållare för tomgångsrulle
  • 1 x Pendelhållare
  • 2 x Bältesfäste
  • 1 x Pendel lagerhållare (a)
  • 1 x Pendel lagerhållare (b)
  • 1 x remskivhålsavstånd
  • 4 x lagerhåls distans
  • 1 x Gantry Plate
  • 1 x Stepper Holder Plate
  • 1 x Platta för tomgångsskiva
  • 1 x Pendel (a)
  • 1 x Pendel (b)

Totalt finns det 24 delar, som inte tar för lång tid att skriva ut eftersom delarna är små och kan skrivas ut tillsammans. Under det här instruerbara kommer jag att hänvisa till delarna baserat på namnen i denna lista.

Steg 7: Montering av portrullarna

Montering av Gantry Rollers
Montering av Gantry Rollers
Montering av Gantry Rollers
Montering av Gantry Rollers
Montering av Gantry Rollers
Montering av Gantry Rollers
Montering av Gantry Rollers
Montering av Gantry Rollers

Portvalsarna är som hjulen för vagnen. Dessa kommer att rulla längs PVC -spåret vilket gör att vagnen kan röra sig smidigt med minimal friktion. För detta steg, ta tag i de två 3D -tryckta portrullarna, 12 lager och ett gäng muttrar och bultar. Du kommer att behöva 6 lager per rulle. Fäst lagren på rullen med muttrar och bultar (använd bilderna som referens). När varje rulle är gjord, skjut dem på PVC -röret.

Steg 8: Montering av drivsystemet (stegmotor)

Montering av drivsystemet (stegmotor)
Montering av drivsystemet (stegmotor)
Montering av drivsystemet (stegmotor)
Montering av drivsystemet (stegmotor)
Montering av drivsystemet (stegmotor)
Montering av drivsystemet (stegmotor)

Vagnen kommer att drivas av en standard Nema17 stegmotor. Kläm in motorn i stegfästet med skruvarna som borde ha kommit som en uppsättning med steget. Skruva sedan fast fästet på steghållarplattan, rikta in de fyra hålen på fästet med de 4 på plattan och använd muttrar och bultar för att fästa de två ihop. Montera sedan GT2 -remskivan på motorns axel och fäst de två ändlocken på steghållarplattan från botten med fler muttrar och bultar. När du är klar kan du skjuta ändkåporna på rören. Om passformen är för rätt istället för att tvinga ändkåporna på rören, rekommenderar jag att du slipar den inre ytan på den 3D -tryckta ändkåpan tills passformen sitter tätt.

Steg 9: Montering av drivsystemet (tomgångsrulle)

Montering av drivsystemet (tomgångsrulle)
Montering av drivsystemet (tomgångsrulle)
Montering av drivsystemet (tomgångsrulle)
Montering av drivsystemet (tomgångsrulle)
Montering av drivsystemet (tomgångsrulle)
Montering av drivsystemet (tomgångsrulle)

Muttrarna och bultarna som jag använde var 4 mm i diameter även om hålen på remskivan och lagren var 6 mm, varför jag var tvungen att 3D -skriva ut adaptrar och trycka in dem i remskivans hål och lagren så att de inte vingla på bulten. Om du har muttrar och bultar av rätt storlek behöver du inte detta steg.

Montera lagren i tomgångsskivans lagerhållare. Återigen, om passformen är för tät, kan du med sandpapper slipa lätt den inre väggen på tomgångsrullagerhållaren. För en bult genom ett av lagren, skjut sedan en remskiva på bulten och stäng den andra änden med det andra lagret och tomgångshjulshållarhållaren.

När det är klart, fäst paret av tomgångsskivlagerhållare på tomgångsskivans hållarplatta och fäst ändkåporna på plattans bottenyta, liknande det föregående steget. Slutligen täcker du den motsatta änden av de två PVC -rören med dessa ändlock. Med detta är skenorna för din vagn komplett.

Steg 10: Montering av portalen

Montering av portalen
Montering av portalen
Montering av portalen
Montering av portalen
Montering av portalen
Montering av portalen

Nästa steg är att bygga vagnen. Fäst de två rullarna tillsammans med portplattan och 4 muttrar och bultar. Gantryplattorna har slitsar så att du kan justera plattans läge för små justeringar.

Montera sedan de två bältesfästena på båda sidorna av portplattan. Se till att fästa dem från botten annars kommer bältet inte att ligga på samma nivå. Var noga med att också föra in bultarna från botten, för annars kan bultarna blockeras om bultarna är för långa.

Slutligen fäst pendelhållaren på vagnens framsida med muttrar och bultar.

Steg 11: Montering av pendeln

Montering av pendeln
Montering av pendeln
Montering av pendeln
Montering av pendeln
Montering av pendeln
Montering av pendeln
Montering av pendeln
Montering av pendeln

Pendeln gjordes i två delar helt enkelt för att spara på material. Du kan hålla ihop de två bitarna genom att rikta in tänderna och överlimma dem. Skjut igen lagerhålens distanser i de två lagren för att kompensera för de mindre bultdiametrarna och tryck sedan in lagren i lagerhålen på de två pendelhållarstyckena. Spänn fast de två 3D -tryckta delarna på vardera sidan av pendelns nedre ände och fäst de 3 med hjälp av 3 muttrar och bultar som passerar genom pendellagerhållarna. För en bult genom de två lagren och säkra den andra änden med en motsvarande mutter.

Ta sedan tag i din MPU6050 och fäst den på den motsatta änden av pendeln med hjälp av monteringsskruvar.

Steg 12: Montering av pendeln och remmarna

Montering av pendeln och remmarna
Montering av pendeln och remmarna
Montering av pendeln och remmarna
Montering av pendeln och remmarna
Montering av pendeln och remmarna
Montering av pendeln och remmarna

Det sista steget är att montera pendeln på vagnen. Gör detta genom att föra bulten som du tidigare hade passerat genom de två pendellagren, genom hålet på pendelhållaren som är fäst på vagnens framsida och använd en mutter i den andra änden för att fästa pendeln på vagnen.

Slutligen, ta tag i ditt GT2 -bälte och säkra först ena änden till en av bältesfästena som sitter fast på vagnen. För detta använde jag en snygg 3D -utskrivbar bältesklämma som kläms fast på bältets ände och förhindrar att den glider genom den smala spåret. Stls för detta stycke kan hittas på Thingiverse med denna länk. Vira bältet hela vägen runt stegrullen och tomgångsremskivan och fäst den andra änden av bältet till bältesfäststycket på vagnens motsatta ände. Spänn bältet samtidigt som du ser till att inte dra åt för mycket eller lämna det för förlorat och med detta är din pendel och vagn komplett!

Steg 13: Kabeldragning och elektronik

Kabeldragning och elektronik
Kabeldragning och elektronik
Kabeldragning och elektronik
Kabeldragning och elektronik
Kabeldragning och elektronik
Kabeldragning och elektronik

Kablarna består av att ansluta MPU6050 till Arduino och ledningarna för drivsystemet. Följ kopplingsschemat ovan för att ansluta varje komponent.

MPU6050 till Arduino:

  • GND till GND
  • +5v till +5v
  • SDA till A4
  • SCL till A5
  • Int till D2

Stegmotor till stegdrivrutin:

  • Spole 1 (a) till 1A
  • Spole 1 (b) till 1B
  • Spole 2 (a) till 2A
  • Spole 2 (b) till 2B

Stepper Driver till Arduino:

  • GND till GND
  • VDD till +5v
  • STEG till D3
  • DIR till D2
  • VMOT till strömförsörjningens positiva terminal
  • GND till nätaggregatets jordterminal

Sleep- och Reset -stiften på stegdrivrutinen måste anslutas med en bygel. Och slutligen är det en bra idé att ansluta en elektrolytkondensator på cirka 100 uF parallellt med strömförsörjningens positiva och jordade terminaler.

Steg 14: Kontroll av systemet (proportionell kontroll)

Styrning av systemet (proportionell kontroll)
Styrning av systemet (proportionell kontroll)
Styrning av systemet (proportionell kontroll)
Styrning av systemet (proportionell kontroll)
Styrning av systemet (proportionell kontroll)
Styrning av systemet (proportionell kontroll)

Inledningsvis bestämde jag mig för att testa ett grundläggande proportionellt styrsystem, det vill säga vagnens hastighet är helt enkelt proportionell med en viss faktor till vinkeln som pendeln gör med vertikalen. Detta var bara ett test för att se till att alla delar fungerade korrekt. Även om detta grundläggande proportionella system var tillräckligt robust för att få pendeln att redan balansera. Pendeln kan till och med motverka mjuka tryck och knuffar ganska robust. Även om detta kontrollsystem fungerade anmärkningsvärt bra, hade det fortfarande några problem. Om man tittar på grafen för IMU -avläsningarna under en viss tid kan vi tydligt märka svängningar i sensoravläsningarna. Detta innebär att närhelst styrenheten försöker göra en korrigering, överskrider den alltid med ett visst belopp, vilket i själva verket är karaktären hos ett proportionellt styrsystem. Detta lilla fel kan korrigeras genom att implementera en annan typ av styrenhet som tar hänsyn till alla dessa faktorer.

Koden för proportionellt styrsystem bifogas nedan. Koden kräver stöd från några ytterligare bibliotek som är MPU6050 -biblioteket, PID -biblioteket och AccelStepper -biblioteket. Dessa kan laddas ner med Arduino IDE: s integrerade bibliotekshanterare. Gå helt enkelt till Skissen >> Inkludera bibliotek >> Hantera bibliotek och sök sedan bara PID, MPU6050 och AccelStepper i sökfältet och installera dem genom att helt enkelt klicka på knappen Installera.

Även om mitt råd för alla er som är naturvetenskapliga och matematiska entusiaster skulle vara att försöka bygga en sådan styrenhet från grunden. Detta kommer inte bara att stärka dina koncept om dynamik och kontrollteorier utan också ge dig en möjlighet att implementera din kunskap i verkliga applikationer.

Steg 15: Styrning av systemet (PID -kontroll)

Styrning av systemet (PID -kontroll)
Styrning av systemet (PID -kontroll)
Styrning av systemet (PID -kontroll)
Styrning av systemet (PID -kontroll)
Styrning av systemet (PID -kontroll)
Styrning av systemet (PID -kontroll)

I allmänhet, i verkliga livet, när ett styrsystem visar sig vara tillräckligt robust för dess tillämpning, slutar ingenjörerna vanligtvis bara projektet snarare än att överkomplicera situationerna med hjälp av mer komplexa styrsystem. Men i vårt fall bygger vi denna inverterade pendel enbart för utbildningsändamål. Därför kan vi försöka gå vidare till mer komplexa styrsystem som PID -styrning, vilket kan visa sig vara mycket mer robust än ett grundläggande proportionellt styrsystem.

Även om PID -kontrollen var mycket mer komplex att implementera, när den väl implementerats och hittat de perfekta inställningsparametrarna, balanserade pendeln betydligt bättre. Vid denna tidpunkt kan det också motverka lättstöt. Avläsningarna från IMU under en viss tid (bifogad ovan) bevisar också att avläsningarna aldrig går för långt bort för det önskade börvärdet, det vill säga vertikalen, vilket visar att detta styrsystem är mycket mer effektivt och robust än den grundläggande proportionella kontrollen.

Återigen skulle mitt råd för alla er som är naturvetenskapliga och matematiska entusiaster vara att försöka bygga en PID -kontroller från början innan du använder koden som bifogas nedan. Detta kan tas som en utmaning, och man vet aldrig, någon kan komma med ett styrsystem som är mycket mer robust än något som har försökts fram till nu. Även om ett robust PID -bibliotek redan finns tillgängligt för Arduino som utvecklats av Brett Beauregard som kan installeras från bibliotekschefen på Arduino IDE.

Obs: Varje kontrollsystem och dess resultat visas i videon som bifogas i det allra första steget.

Steg 16: Ytterligare förbättringar

Ytterligare förbättringar
Ytterligare förbättringar

En av de saker som jag ville försöka var en "svängbar" funktion, där pendeln till en början hänger under vagnen och vagnen gör några snabba upp och ned rörelser längs banan för att svänga upp pendeln från en hängande läge upp och ned. Men detta var inte genomförbart med den nuvarande konfigurationen eftersom en lång kabel var tvungen att ansluta tröghetsmätningsenheten till Arduino, därför kan en hel cirkel gjord av pendeln ha fått kabeln att vridas och haka. Detta problem kan hanteras med hjälp av en roterande kodare fäst vid pendelns sväng istället för en tröghetsmätningsenhet i spetsen av den. Med en kodare är dess axel det enda som snurrar med pendeln, medan kroppen förblir stillastående vilket innebär att kablarna inte vrider sig.

En andra funktion jag ville försöka var att balansera en dubbel pendel på vagnen. Detta system består av två pendlar som är anslutna efter varandra. Även om dynamiken i sådana system är mycket mer komplex och kräver mycket mer forskning.

Steg 17: Slutresultat

Slutresultat
Slutresultat
Slutresultat
Slutresultat
Slutresultat
Slutresultat

Ett experiment som detta kan förändra stämningen i en klass på ett positivt sätt. I allmänhet föredrar de flesta att kunna tillämpa koncept och idéer för att kristallisera dem, annars förblir idéerna "i luften" vilket gör att människor tenderar att glömma dem snabbare. Detta var bara ett exempel på att tillämpa vissa begrepp som lärt sig under klassen i en verklig applikation, även om detta säkert kommer att väcka entusiasm hos eleverna att så småningom försöka komma med egna experiment för att testa teorierna, vilket kommer att göra deras framtida klasser mycket mer livlig, vilket gör att de vill lära sig mer, vilket får dem att komma med nya experiment och denna positiva cykel kommer att fortsätta tills framtida klassrum är fulla av så roliga och roliga experiment och projekt.

Jag hoppas att detta blir början på många fler experiment och projekt! Om du gillade detta instruerbart och tyckte det var till hjälp, släpp en röst nedan i "Klassrumstävlingen" och alla kommentarer eller förslag är välkomna! Tack!:)

Klassrumsvetenskapstävling
Klassrumsvetenskapstävling
Klassrumsvetenskapstävling
Klassrumsvetenskapstävling

Tvåa i klassrummet Science Contest

Rekommenderad: