riadenie rýchlosti jednosmerného motora pomocou algoritmu pid (stm32f4)
Domov » Blog » riadenie rýchlosti jednosmerného motora pomocou algoritmu pid (stm32f4)

riadenie rýchlosti jednosmerného motora pomocou algoritmu pid (stm32f4)

Zobrazenia: 0     Autor: Editor stránky Čas zverejnenia: 2020-09-02 Pôvod: stránky

Informujte sa

tlačidlo zdieľania na facebooku
tlačidlo zdieľania na Twitteri
tlačidlo zdieľania linky
tlačidlo zdieľania wechat
prepojené tlačidlo zdieľania
tlačidlo zdieľania na pintereste
tlačidlo zdieľania whatsapp
tlačidlo zdieľania kakaa
tlačidlo zdieľania snapchatu
tlačidlo zdieľania telegramu
zdieľať toto tlačidlo zdieľania

Ahojte všetci, som tahir ul haq z iného projektu.
Tentokrát to bol čas urobiť MC, ktorý bol použitý do 2017-11-407.
Toto je koniec strednodobého programu.
Dúfam, že sa vám to páči.
Vyžaduje si to veľa konceptov a teórií, tak sa najprv pozrime na to.
So vznikom počítačov a industrializovaného procesu sa v histórii ľudstva uskutočnil výskum zameraný na vývoj metód na predefinovanie procesu, a čo je dôležitejšie, na použitie strojov na autonómne riadenie procesu.
Cieľom je znížiť ľudskú účasť na týchto procesoch, a tým znížiť chyby v týchto procesoch.
Preto vznikol odbor \'inžinierstvo riadiacich systémov\'.
Inžinierstvo riadiaceho systému možno definovať ako použitie rôznych metód na riadenie práce procesu alebo udržiavanie stáleho a preferovaného prostredia, či už manuálneho alebo automatického.
Jednoduchým príkladom je regulácia teploty v miestnosti.
Manuálne ovládanie sa vzťahuje na prítomnosť osoby, ktorá kontroluje aktuálne podmienky na mieste (snímač)
, S očakávaniami (spracovanie)
a podnikne príslušné kroky na získanie požadovanej hodnoty (pohon).
Problém s týmto prístupom je, že nie je veľmi spoľahlivý, pretože človek je náchylný na chyby alebo nedbalosť pri práci.
Okrem toho, ďalším problémom je, že rýchlosť procesu, ktorý spúšťa pohon, nie je vždy rovnomerná, čo znamená, že niekedy môže byť rýchlejšia ako požadovaná rýchlosť a niekedy môže byť pomalá.
Riešením tohto problému je použitie mikrokontroléra na ovládanie systému.
Podľa danej špecifikácie je mikrokontrolér naprogramovaný tak, aby riadil proces zapojenia v obvode (
Diskutujte neskôr)
Hodnotu alebo stav, čím riadi proces tak, aby sa udržala požadovaná hodnota.
Výhodou tohto procesu je, že nie je potrebný ľudský zásah do tohto procesu.
Okrem toho je rýchlosť tohto procesu konzistentná.
Predtým, ako budeme pokračovať, je dôležité určiť rôzne pojmy v tomto bode: Kontrola spätnej väzby: V tomto systéme vstup v určitom čase závisí od jednej alebo viacerých premenných, vrátane výstupu systému.
Negatívna spätná väzba: V tomto systéme referencia (vstup)
Ako spätná väzba sa chyba odpočíta a fáza vstupu je 180 stupňov.
Pozitívna spätná väzba: V tomto systéme
sa referenčné (vstupné) chyby pridávajú, keď sú spätná väzba a vstup vo fáze.
Chybový signál: rozdiel medzi požadovaným výstupom a skutočným výstupom.
Senzor: zariadenie používané na detekciu určitého počtu zariadení v obvode.
Zvyčajne je umiestnený vo výstupe alebo kdekoľvek, kde chceme vykonať nejaké merania.
Procesor: časť riadiaceho systému, ktorá je spracovaná na základe programovacích algoritmov.
Vyžaduje určitý vstup a vytvára určitý výstup.
Akčný člen: v riadiacom systéme sa akčný člen používa na vykonávanie udalostí na základe signálu generovaného mikrokontrolérom na ovplyvnenie výstupu.
Systém s uzavretou slučkou: systém s jednou alebo viacerými spätnoväzbovými slučkami.
Systém otvorenej slučky: neexistuje systém spätnej väzby.
Rise Time: Čas potrebný na to, aby výstup stúpol z 10 % maximálnej amplitúdy signálu na 90 %.
Drop Time: Čas potrebný na to, aby výstup klesol z 90 % na 10 %.
Prekročenie špičky: prekročenie špičky je množstvo výstupu, ktoré presahuje hodnotu v ustálenom stave (
normálne počas prechodovej odozvy systému).
Stabilný čas: Čas potrebný na dosiahnutie stabilného stavu výstupu.
Chyba ustáleného stavu: rozdiel medzi skutočným výstupom a očakávaným výstupom, keď systém dosiahne ustálený stav. Na obrázku vyššie je veľmi zjednodušená verzia riadiaceho systému.
Mikrokontrolér je jadrom každého riadiaceho systému.
Ide o veľmi dôležitý komponent, preto by sa mal starostlivo vyberať podľa požiadaviek systému.
Mikroovládač prijíma vstup od používateľa.
Tento vstup definuje podmienky požadované pre systém.
Mikroovládač tiež prijíma vstup zo snímača.
Senzor je pripojený k výstupu a jeho informácie sú privádzané späť na vstup.
Tento vstup možno nazvať aj negatívnou spätnou väzbou.
Negatívna spätná väzba bola vysvetlená skôr.
Mikroprocesor na základe svojho naprogramovania vykonáva rôzne výpočty a výstupy do aktuátora.
Zariadenie na riadenie akčného člena založené na výstupe sa pokúša udržiavať tieto podmienky.
Príkladom môže byť vodič motora poháňajúci motor, kde vodič motora je vodič a motor je továreň.
Preto sa motor otáča danou rýchlosťou.
Pripojený senzor načíta stav aktuálnej továrne a privedie ho späť do mikrokontroléra.
Mikrokontrolér sa znova porovná a vypočíta, takže sa slučka opakuje.
Proces je opakujúci sa a nekonečný a mikrokontrolér dokáže udržiavať požadované podmienky.
Tu sú dva hlavné spôsoby ovládania rýchlosti jednosmerného motora)
Manuálne riadenie napätia: v priemyselných aplikáciách je mechanizmus riadenia rýchlosti jednosmerného motora kritický.
Niekedy môžeme potrebovať rýchlosti, ktoré sú vyššie alebo nižšie ako normálne.
Preto potrebujeme účinný spôsob riadenia rýchlosti.
Riadenie napájacieho napätia je jedným z najjednoduchších spôsobov riadenia rýchlosti.
Môžeme zmeniť napätie, aby sme zmenili rýchlosť. b)
Riadenie PWM pomocou PID: ďalším efektívnejším spôsobom je použitie mikrokontroléra.
Jednosmerný motor je pripojený k mikrokontroléru cez ovládač motora.
Budič motora je IC prijímajúci PWM (
modulácia šírky impulzov)
Vstup z mikrokontroléra a výstup do jednosmerného motora podľa vstupu. Obrázok 1.
2: Kapitola 1 signálu PWM.
Úvod 3 Vzhľadom na signál PWM je možné najskôr vysvetliť fungovanie PWM.
Pozostáva z nepretržitých impulzov počas určitého časového obdobia.
Časový úsek je čas, ktorý strávi bod pohybom vo vzdialenosti rovnajúcej sa vlnovej dĺžke.
Tieto impulzy môžu mať iba binárne hodnoty (HIGH alebo LOW).
Máme tiež dve ďalšie veličiny, šírku impulzu a pracovný cyklus.
Šírka impulzu je čas, keď je výstup PWM vysoký.
Pracovný cyklus je percento šírky impulzu k časovému úseku.
Po zvyšok časového obdobia je výstup nízky.
Pracovný cyklus priamo riadi rýchlosť motora.
Ak jednosmerný motor poskytne kladné napätie počas určitého časového obdobia, bude sa pohybovať určitou rýchlosťou.
Ak je kladné napätie dodávané dlhší čas, rýchlosť bude vyššia.
Preto sa pracovný cyklus PWM môže zmeniť zmenou šírky impulzu.
Zmenou pracovného cyklu jednosmerného motora je možné zmeniť rýchlosť motora.
Regulácia otáčok pri problémoch s jednosmerným motorom: problémom prvej metódy regulácie otáčok je, že napätie sa môže časom meniť.
Tieto zmeny znamenajú nerovnomernú rýchlosť.
Preto je prvá metóda nežiaduca.
Riešenie: Na riadenie rýchlosti používame druhú metódu.
Na doplnenie druhej metódy používame algoritmus PID.
PID predstavuje proporcionálnu integrálnu deriváciu.
V PID algoritme sa meria aktuálna rýchlosť motora a porovnáva sa s požadovanou rýchlosťou.
Táto chyba sa používa pri zložitých výpočtoch na zmenu pracovného cyklu motora podľa času.
Tento proces je v každom cykle.
Ak rýchlosť prekročí požadovanú rýchlosť, pracovný cyklus sa zníži a pracovný cyklus sa zvýši, ak bude rýchlosť nižšia ako požadovaná rýchlosť.
Toto nastavenie sa nevykoná, kým sa nedosiahne najlepšia rýchlosť.
Neustále kontrolujte a kontrolujte túto rýchlosť.
Tu sú systémové komponenty použité v tomto projekte a krátky úvod do detailov každého komponentu.
STM 32F407: mikrokontrolér navrhnutý spoločnosťou ST Micro-section.
Funguje na ARM Cortex. M architektúra.
Svoju rodinu vedie s vysokou taktovacou frekvenciou 168 MHz.
Ovládač motora L298N: Tento IC sa používa na chod motora.
Má dva externé vstupy.
Jeden z mikro ovládača.
Mikrokontrolér mu poskytuje PWM signál.
Otáčky motora je možné upraviť nastavením šírky impulzu.
Jeho druhým vstupom je zdroj napätia potrebný na pohon motora.
Jednosmerný motor: Jednosmerný motor beží na zdroji jednosmerného prúdu.
V tomto experimente je jednosmerný motor prevádzkovaný pomocou fotoelektrickej spojky pripojenej k pohonu motora.
Infračervený senzor: Infračervený senzor je v skutočnosti infračervený transceiver.
Vysiela a prijíma infračervené vlny, ktoré možno použiť na vykonávanie rôznych úloh.
Optická spojka IR kódovača 4N35: optická spojka je zariadenie používané na izoláciu nízkonapäťovej časti obvodu a vysokonapäťovej časti.
Ako už z názvu vyplýva, funguje na báze svetla.
Keď nízkonapäťová časť dostane signál, prúd preteká vysokonapäťovou časťou.
Systém je systém riadenia rýchlosti.
Ako už bolo spomenuté, systém je implementovaný pomocou PID proporcionálneho integrálu a derivácie.
Systém riadenia rýchlosti má vyššie uvedené komponenty.
Prvou časťou je snímač rýchlosti.
Snímač rýchlosti je obvod infračerveného vysielača a prijímača.
Keď pevná látka prejde štrbinou v tvare písmena U, snímač prejde do nízkeho stavu.
Normálne je vo vysokom stave.
Výstup snímača je pripojený k dolnopriepustnému filtru, aby sa eliminoval útlm spôsobený prechodným javom generovaným pri zmene stavu snímača.
Dolnopriepustný filter pozostáva z rezistorov a kondenzátorov.
Hodnoty boli vybrané podľa potreby.
Použitý kondenzátor je 1100nf a použitý odpor je asi 25 ohmov.
Nízkopriepustný filter eliminuje zbytočné prechodné stavy, ktoré môžu viesť k dodatočným hodnotám a hodnotám odpadu.
Dolnopriepustný filter je potom vyvedený cez kondenzátor na vstupný digitálny kolík mikrokontroléra stm.
Druhou časťou je motor riadený pwm, ktorý zabezpečuje mikrokontrolér stm.
Toto nastavenie je vybavené elektrickou izoláciou pomocou optickej spojky ic.
Optická spojka obsahuje LED diódu, ktorá vyžaruje svetlo v ic balíčku, a keď je na vstupnej svorke vydaný vysoký impulz, skratuje výstupnú svorku.
Vstupná svorka dáva pwm cez odpor, ktorý obmedzuje prúd LED pripojenej k optickému spojke.
Na výstupe je zapojený drop-down rezistor, takže pri skratovaní vývodu sa na padacom odpore generuje napätie a kolík pripojený na vývod na rezistore dostane vysoký stav.
Výstup fotoelektrickej spojky je pripojený k IN1 ovládača motora ic, ktorý udržuje výšku aktivačného kolíka.
Keď sa pracovný cyklus pwm zmení na vstupe optickej spojky, kolík ovládača motora prepne motor a riadi rýchlosť motora.
Po pwm poskytnutom do motora vodič motora zvyčajne poskytuje napätie 12 voltov.
Ovládač motora potom umožní prevádzku motora.
Predstavme si algoritmus, ktorý sme použili pri implementácii tohto projektu regulácie otáčok motora.
Pwm motora zabezpečuje jediný časovač.
Konfigurácia časovača je vytvorená a nastavená tak, aby poskytovala pwm.
Keď motor naštartuje, otočí štrbinu pripevnenú na hriadeli motora.
Štrbina prechádza dutinou snímača a vytvára nízky impulz.
Pri nízkych impulzoch sa kód spustí a čaká, kým sa štrbina pohne.
Akonáhle štrbina zmizne, snímač poskytne vysoký stav a časovač začne počítať.
Časovač nám udáva čas medzi dvoma štrbinami.
Teraz, keď sa objaví ďalší nízky impulz, príkaz IF sa vykoná znova, čaká na ďalšiu stúpajúcu hranu a zastaví počítadlo.
Po výpočte rýchlosti vypočítajte rozdiel medzi rýchlosťou a skutočnou referenčnou hodnotou a uveďte pid.
Pid vypočíta hodnotu pracovného cyklu, ktorá v danom momente dosiahne referenčnú hodnotu.
Táto hodnota je poskytnutá CCR (
porovnávací register)
V závislosti od chyby sa rýchlosť časovača zníži alebo zvýši.
Kód Atollic Truestudio bol implementovaný.
Na ladenie môže byť potrebné nainštalovať STM studio.
Importujte projekt do STM studio a importujte premenné, ktoré chcete zobraziť.
Mierna zmena je na 2017-11-4xx.
Zmeňte frekvenciu hodín presne na súbor h pri 168 MHz.
Útržok kódu bol poskytnutý vyššie.
Záverom je, že rýchlosť motora je riadená pomocou PID.
Krivka však nie je práve hladká čiara.
Existuje na to veľa dôvodov: aj keď snímač pripojený k dolnopriepustnému filtru stále poskytuje určité chyby, tieto sú spôsobené niektorými nevyhnutnými dôvodmi pre nelineárne odpory a analógové elektronické zariadenia, motor sa nemôže hladko otáčať pri malom napätí alebo pwm.
Poskytuje kreténe, ktoré môžu spôsobiť, že systém zadá nejakú nesprávnu hodnotu.
Kvôli jitteru môže snímač vynechať nejakú štrbinu, ktorá poskytuje vyššiu hodnotu a hlavným dôvodom ďalšej chyby môže byť frekvencia taktovania jadra stm.
Takt jadra Stm je 168 MHz.
Aj keď sa tento problém riešil v tomto projekte, existuje holistický koncept tohto modelu, ktorý neposkytuje takú vysokú frekvenciu.
Rýchlosť otvorenej slučky poskytuje veľmi hladkú linku s iba niekoľkými neočakávanými hodnotami.
PID tiež funguje a poskytuje veľmi nízku dobu stability motora.
PID motora bol testovaný pri rôznych napätiach, ktoré udržiavali konštantnú referenčnú rýchlosť.
Zmena napätia nemení rýchlosť motora, čo znamená, že PID funguje.
Tu sú niektoré segmenty konečného výstupu PID. a)
Uzavretá slučka pri 110 ot./min.)
Uzavretá slučka pri 120 ot./min. Tento projekt by sa nedal dokončiť bez pomoci členov mojej skupiny.
Chcem sa im poďakovať.
Ďakujeme, že ste sledovali tento projekt.
Dúfam, že vám pomôžeme.
Tešíme sa na ďalšie.
Pred tým sa žehnaj :)

Skupina HOPRIO, profesionálny výrobca ovládačov a motorov, bola založená v roku 2000. Sídlo skupiny v meste Changzhou, provincia Jiangsu.

Rýchle odkazy

Kontaktujte nás

WhatsApp: +86 18921090987 
Tel: +86- 18921090987 
Pridať: č. 19 Mahang South Road, Wujin High-tech District, Changzhou City, provincia Jiangsu, Čína 213167
Zanechať správu
KONTAKTUJTE NÁS
Copyright © 2024 ChangZhou Hoprio E-Commerce Co., Ltd. Všetky práva vyhradené. Sitemap | Zásady ochrany osobných údajov