A DC motor sebességszabályozása PID algoritmus segítségével (STM32F4)
Otthon » Blog » A DC motor sebességszabályozása PID algoritmus segítségével (STM32F4)

A DC motor sebességszabályozása PID algoritmus segítségével (STM32F4)

Megtekintések: 0     Szerző: A webhelyszerkesztő közzététele: 2020-09-02 Origin: Telek

Érdeklődik

Facebook megosztási gomb
Twitter megosztási gomb
vonalmegosztó gomb
WeChat megosztási gomb
LinkedIn megosztási gomb
Pinterest megosztási gomb
WhatsApp megosztás gomb
Kakao megosztási gomb
Snapchat megosztó gomb
távirat megosztó gomb
Sharethis megosztási gomb

Helló mindenkinek, én vagyok a tahir ul haq egy másik projektből.
Ezúttal itt az ideje, hogy elvégezze az MC-t, amelyet a 2017-11-407-re használtak.
Ez a középtávú program vége.
Remélem, tetszik.
Sok fogalmat és elméletet igényel, tehát először nézzük rá.
A számítógépek kialakulásával és az iparosodott folyamatban az emberek történetében kutatások folytak a folyamat újradefiniálására szolgáló módszerek kidolgozására, és ami még fontosabb, hogy gépeket használjon a folyamat önálló módon történő ellenőrzésére.
A cél az emberi részvétel csökkentése ezekben a folyamatokban, ezáltal csökkentve a hibákat ezekben a folyamatokban.
Ezért létrejött a \ 'Control System Engineering \' területe.
A vezérlőrendszer -tervezés úgy definiálható, mint különféle módszerek alkalmazása a folyamat munkájának vagy az állandó és előnyben részesített környezet fenntartásának ellenőrzésére, akár kézi, akár automatikus.
Egy egyszerű példa a szoba hőmérsékletének szabályozása.
A kézi vezérlés egy olyan személy jelenlétére utal, aki ellenőrzi a helyszínen a helyszínen (érzékelő)
, elvárásokkal (feldolgozással)
, és megfelelő intézkedéseket tesz a kívánt érték (működtető) megszerzése érdekében.
Ennek a megközelítésnek a problémája az, hogy nem túl megbízható, mert hajlamos a munkahelyi hibára vagy gondatlanságra.
Ezenkívül egy másik probléma az, hogy a működtető elindításának sebessége nem mindig egységes, ami azt jelenti, hogy néha gyorsabb lehet, mint a szükséges sebesség, és néha lassú lehet.
Ennek a problémának a megoldása egy mikro-vezérlő használata a rendszer vezérlésére.
Az adott specifikáció szerint a mikro-vezérlőt úgy programozzák, hogy ellenőrizze az áramkörben történő csatlakozási folyamat (
később megbeszélése)
értékét vagy állapotát, ezáltal ellenőrizve a folyamatot a kívánt érték fenntartásához.
Ennek a folyamatnak az az előnye, hogy ebben a folyamatban nincs szükség emberi beavatkozásra.
Ezenkívül ennek a folyamatnak a sebessége következetes.
Mielőtt folytatnánk, elengedhetetlen a különféle kifejezések meghatározása ezen a ponton: Visszajelzés -vezérlés: Ebben a rendszerben egy bizonyos időpontban egy vagy több változótól függ, beleértve a rendszer kimenetét is.
Negatív visszajelzés: Ebben a rendszerben, a referencia (bemenet)
visszacsatolásként, a hibát levonják, és a bemenet fázisa 180 fok.
Pozitív visszajelzés: Ebben a rendszerben referencia (bemeneti)
hibákat adnak hozzá, ha a visszajelzés és a bemenet fázisban van.
Hibajel: A különbség a kívánt output és a tényleges kimenet között.
Érzékelő: Egy olyan eszköz, amelyet bizonyos számú eszköz észlelésére használtak az áramkörben.
Általában a kimenetbe vagy bárhol elhelyezik, amit meg akarunk végezni.
Processor: A vezérlőrendszer része, amelyet a programozási algoritmusok alapján dolgoznak fel.
Néhány bemenetet igényel, és némi kimenetet eredményez.
Működtető: A vezérlőrendszerben a szelepmozgatót használják a mikro-vezérlő által generált jel alapján történő események végrehajtására, hogy befolyásolják a kimenetet.
Zárt hurkú rendszer: egy vagy több visszacsatoló hurok segítségével.
Nyitott hurokrendszer: Nincs rendszer a visszacsatoló hurokhoz.
Felemelkedési idő: A kimenethez szükséges idő a jel maximális amplitúdójának 10% -áról 90% -ra emelkedni.
Csökkenési idő: A kimenethez szükséges idő 90% -ról 10% -ra csökken.
Peak túllépés: A csúcs túllépése az egyensúlyi állapot értékét meghaladó output mennyisége (
normál a rendszer átmeneti válasza során).
Stabil idő: A kimenet stabil állapot eléréséhez szükséges idő.
Állandó állapotú hiba: A tényleges kimenet és a várható kimenet közötti különbség, miután a rendszer eléri az egyensúlyi állapotot. A fenti kép a vezérlőrendszer nagyon egyszerűsített verzióját mutatja.
A mikro-vezérlő minden vezérlőrendszer magja.
Ez egy nagyon fontos elem, ezért gondosan ki kell választani a rendszer követelményei szerint.
A mikro-vezérlő a felhasználótól fogadja be a bemenetet.
Ez a bemenet meghatározza a rendszerhez szükséges feltételeket.
A mikro-vezérlő is megkapja az érzékelőt.
Az érzékelő csatlakozik a kimenethez, és információkat visszaadja a bemenethez.
Ezt a bemenetet negatív visszacsatolásnak is nevezhetjük.
A negatív visszajelzést korábban magyarázták.
A programozás alapján a mikroprocesszor különféle számításokat és kimeneteket hajt végre a szelepmozgató számára.
A kimeneti alapú működtető vezérlő üzem megkísérel fenntartani ezeket a feltételeket.
Példa lehet arra, hogy a motor vezetõ motorvezetõje, ahol a motorvezető a vezető, a motor pedig a gyár.
Ezért a motor egy adott sebességgel forog.
A csatlakoztatott érzékelő elolvassa az aktuális gyár állapotát, és visszaadja a mikrovezérlőhöz.
A mikro-vezérlőt ismét összehasonlítják és kiszámítják, így a hurok megismétlődik.
A folyamat ismétlődő és végtelen, és a mikro-vezérlő képes fenntartani a kívánt feltételeket.
Itt két fő módszer van a DC motor sebességének szabályozására)
Kézi feszültségszabályozás: Az ipari alkalmazásokban a DC motor sebességszabályozó mechanizmusa kritikus.
Időnként szükségünk lehet olyan sebességekre, amelyek magasabbak vagy alacsonyabbak a normálnál.
Ezért szükségünk van egy hatékony sebességszabályozási módszerre.
A tápfeszültség vezérlése az egyik legegyszerűbb sebességszabályozási módszer.
Megváltoztathatjuk a feszültséget a sebesség megváltoztatásához. b)
A PWM vezérlése a PID használatával: Egy másik hatékonyabb módszer a mikro-vezérlő használata.
Az egyenáramú motor a motorvezetőn keresztül a mikrovezérlőhöz van csatlakoztatva.
A motorvezető egy IC fogadó PWM (
impulzusszélesség -moduláció)
bemenet a mikrovezérlőből, és a bemenetnek megfelelően kimenetet az egyenáramú motorba. 1. ábra.
2. ábra: A PWM jel 1. fejezete.
Bevezetés 3 A PWM jelet figyelembe véve a PWM működését először meg lehet magyarázni.
Egy bizonyos ideig folyamatos impulzusokból áll.
Az időtartam az az idő, amelyet egy olyan ponton eltöltöttek, amely a hullámhossznak megegyező távolságra mozog.
Ezeknek az impulzusoknak csak bináris értékei lehetnek (magas vagy alacsony).
Két másik mennyiségünk is van, az impulzusszélesség és az üzemi ciklus.
Az impulzusszélesség az az idő, amikor a PWM kimenete magas.
Az üzemi ciklus az impulzusszélesség százaléka az időtartamig.
Az idő hátralévő részében a kimenet alacsony.
A vámciklus közvetlenül szabályozza a motor sebességét.
Ha az egyenáramú motor egy bizonyos időtartamon belül pozitív feszültséget biztosít, akkor egy bizonyos sebességgel mozog.
Ha hosszabb ideig pozitív feszültséget biztosítanak, akkor a sebesség nagyobb lesz.
Ezért a PWM üzemi ciklusa megváltoztatható az impulzusszélesség megváltoztatásával.
Az egyenáramú motor üzemi ciklusának megváltoztatásával a motor sebessége megváltoztatható.
A DC motorproblémák sebességszabályozása: Az első sebességszabályozási módszer problémája az, hogy a feszültség idővel megváltozhat.
Ezek a változások egyenetlen sebességet jelentenek.
Ezért az első módszer nemkívánatos.
Megoldás: A második módszert használjuk a sebesség szabályozására.
A PID algoritmust használjuk a második módszer kiegészítésére.
A PID az arányos integrált származékot képviseli.
A PID algoritmusban a motor aktuális sebességét megmérjük és összehasonlítjuk a kívánt sebességgel.
Ezt a hibát az összetett számításokhoz használják, hogy az idő szerint megváltoztassák a motor üzemi ciklusát.
Minden ciklusban van ez a folyamat.
Ha a sebesség meghaladja a kívánt sebességet, akkor a vámciklus csökken, és a vámciklus növekszik, ha a sebesség alacsonyabb, mint a kívánt sebesség.
Ezt a beállítást addig nem hajtják végre, amíg a legjobb sebesség el nem éri.
Folyamatosan ellenőrizze és ellenőrizze ezt a sebességet.
Itt vannak a projektben használt rendszerkomponensek és az egyes komponensek részleteinek rövid bevezetése.
STM 32F407: Az ST Micro-Section által tervezett mikro-vezérlő.
A kar kéregén működik. M Építészet.
Vezeti családját, amelynek magas órás frekvenciája 168 MHz.
Motor meghajtó L298N: Ezt az IC -t a motor futtatásához használják.
Két külső bemenete van.
Az egyik a mikrovezérlőből.
A mikro-vezérlő PWM jelet biztosít ehhez.
A motor sebességét az impulzusszélesség beállításával lehet beállítani.
Második bemenete a motor vezetéséhez szükséges feszültségforrás.
DC motor: Az egyenáramú motor a DC tápegységen fut.
Ebben a kísérletben az egyenáramú motort fotoelektromos csatlakoztatással működtetik, amely a motorvezetőhöz csatlakozik.
Infravörös érzékelő: Az infravörös érzékelő valójában infravörös adó -vevő.
Küld és fogadja az infravörös hullámokat, amelyek felhasználhatók a különféle feladatok elvégzésére.
IR kódoló optikai csatlakozó 4N35: Az optikai csatlakozó egy olyan eszköz, amelyet az áramkör és a nagyfeszültségű rész alacsony feszültségű részének izolálására használnak.
Ahogy a neve is sugallja, a fény alapján működik.
Amikor az alacsony feszültségű rész megkapja a jelet, az áram a nagyfeszültségű részben áramlik.
A rendszer egy sebességszabályozó rendszer.
Mint korábban említettük, a rendszert az arányos integrált és származékos PID alkalmazásával valósítják meg.
A sebességszabályozó rendszernek a fenti alkatrészek vannak.
Az első rész a sebességérzékelő.
A Speed ​​Sensor egy infravörös adó- és vevőáramkör.
Amikor a szilárd áthalad az U alakú résen, az érzékelő alacsony állapotba lép.
Általában magas állapotban van.
Az érzékelő kimenete egy alacsony áteresztési szűrőhez van csatlakoztatva, hogy kiküszöbölje az érzékelő állapotának megváltozásakor létrehozott átmeneti csillapítást.
Az alacsony áteresztési szűrő ellenállókból és kondenzátorokból áll.
Az értékeket szükség szerint választottuk meg.
Az alkalmazott kondenzátor 1100NF, az alkalmazott ellenállás körülbelül 25 ohm.
Az alacsony áteresztési szűrő kiküszöböli a felesleges átmeneti feltételeket, amelyek további leolvasásokat és hulladékértékeket eredményezhetnek.
Az alacsony áteresztési szűrőt ezután a kondenzátoron keresztül adják ki az STM mikro-vezérlő bemeneti digitális csapjába.
A másik rész a PWM által vezérelt motor, amelyet az STM Micro Controller biztosított.
Ezt a beállítást elektromos elszigeteltséggel láttuk el az Optical Coupler IC alkalmazásával.
Az optikai csatlakozó tartalmaz egy LED-et, amely fényt bocsát ki az IC csomagban, és ha a bemeneti terminálon magas impulzust adnak, akkor rövidzárlatot ad a kimeneti terminálnak.
A bemeneti terminál a PWM -t olyan ellenálláson keresztül biztosítja, amely korlátozza az optikai csatlakozóhoz csatlakoztatott LED áramát.
A kimenetnél egy legördülő ellenállást csatlakoztatnak úgy, hogy amikor a terminál rövidzárlatot tartalmaz, akkor a feszültséget a legördülő ellenállásnál generálják, és az ellenállás kapcsához csatlakoztatott tű nagy állapotban van.
A fotoelektromos csatlakozó kimenete csatlakozik a Motor Driver IC IN1 -hez, amely fenntartja az engedélyezési csap magasságát.
Amikor a PWM üzemi ciklus az optikai csatlakozó bemeneten változik, a motorvezető csapja átveszi a motort és vezérli a motor sebességét.
Miután a motornak megadott PWM -t a motorvezető általában 12 voltos feszültséget biztosít.
A motorvezető ezután lehetővé teszi a motor működését.
Vezesse be az algoritmust, amelyet a motoros sebességszabályozási projekt megvalósításához használtunk.
A motor PWM -jét egyetlen időzítő biztosítja.
Az időzítő konfigurációját úgy készítik, hogy a PWM -et biztosítsa.
Amikor a motor elindul, elforgatja a motor tengelyéhez rögzített rést.
A rés áthalad az érzékelő üregén, és alacsony impulzust eredményez.
Alacsony impulzusokon elindul a kód, és várja, hogy a hasítás mozogjon.
Amint a rés eltűnik, az érzékelő magas állapotot biztosít, és az időzítő elkezdi számolni.
Az időzítő megadja nekünk a két hasítás közötti időt.
Most, amikor újabb alacsony impulzus jelenik meg, az IF utasítás újra végrehajtódik, várva a következő emelkedő élre és megállítva a pultot.
A sebesség kiszámítása után számolja ki a sebesség és a tényleges referenciaérték közötti különbséget, és adja meg a PID -t.
A PID kiszámítja azt a vámciklus értékét, amely egy adott pillanatban eléri a referenciaértéket. Ezt az értéket a CCR -hez (
adják
összehasonlító regiszter)
, a hibától függően az időzítő sebessége csökken vagy megnövekszik.
Az Atollic Truestudio kódot megvalósították.
Előfordulhat, hogy az STM Studio -t telepíteni kell a hibakereséshez.
Importálja a projektet az STM Studio -ban, és importálja a megtekinteni kívánt változókat.
Az enyhe változás a 2017-11-4XX-en történik.
Változtassa meg az óra frekvenciáját pontosan egy H fájlra, 168 MHz -en.
A kódrészlet fentiekben található.
A következtetés az, hogy a motor sebességét a PID segítségével szabályozzák.
A görbe azonban nem pontosan sima vonal.
Ennek számos oka van: bár az alacsony áteresztőképességű szűrőhöz csatlakoztatott érzékelő továbbra is bizonyos hibákat nyújt, ezek a nemlineáris ellenállások és az analóg elektronikus eszközök elkerülhetetlen okaiból származnak, a motor nem tud simán forogni kis feszültség vagy PWM esetén.
Olyan seggfejeket biztosít, amelyek miatt a rendszer rossz értéket adhat.
Jitter miatt az érzékelő elmulaszthat olyan rést, amely magasabb értéket biztosít, és egy másik hiba fő oka lehet az STM mag órája.
Az STM alapórája 168 MHz.
Noha ezt a problémát ebben a projektben foglalkoztak, létezik egy holisztikus koncepció ennek a modellnek, amely nem nyújt ilyen magas frekvenciát.
A nyitott hurok sebessége nagyon sima vonalat biztosít, csak néhány váratlan értékkel.
A PID szintén működik, és nagyon alacsony motor stabilitási időt biztosít.
A motoros PID -t különféle feszültségekkel teszteltük, amelyek tartották a referencia sebességet.
A feszültségváltozás nem változtatja meg a motor sebességét, jelezve, hogy a PID működik.
Íme néhány szegmens a PID végső kimenetének. a)
Zárt hurok @ 110 RPMB)
Zárt hurok @ 120 RPMTE ezt a projektet nem lehetett befejezni a csoporttagjaim nélkül.
Szeretnék köszönetet mondani nekik.
Köszönöm, hogy megnézted ezt a projektet.
Remélem, hogy segíthetek.
Kérjük, várom még többet.
Áldja meg ezt megelőzően :)

A Hoprio Group A Controller and Motors professzionális gyártóját 2000 -ben hozták létre. A csoport székhelye Changzhou városában, Jiangsu tartományban.

Gyors linkek

Vegye fel velünk a kapcsolatot

WhatsApp: +86 18921090987 
Tel: +86-18921090987 
Hozzáadás: No.19 Mahang South Road, Wujin High-Tech kerület, Changzhou City, Jiangsu tartomány, Kína 213167
Hagyjon üzenetet
Vegye fel velünk a kapcsolatot
Copyright © 2024 Changzhou Hoprio E-Commerce Co., Ltd. Minden jog fenntartva. Oldaltérkép | Adatvédelmi irányelv