Tere kõigile, olen tahir ul haq teisest projektist.
Seekord oli aeg teha MC, mida kasutas 2017-11-407.
See on vaheprogrammi lõpp.
Loodetavasti meeldib.
See nõuab palju kontseptsioone ja teooriaid, nii et vaatame seda kõigepealt.
Arvutite ja tööstusprotsesside tekkimisega on inimkonna ajaloos tehtud uuringuid, et töötada välja meetodid protsessi ümberdefineerimiseks ja mis veelgi olulisem, kasutada masinaid protsessi autonoomseks juhtimiseks.
Eesmärk on vähendada inimeste osalust nendes protsessides, vähendades seeläbi vigu nendes protsessides.
Seetõttu tekkis valdkond \'juhtimissüsteemide projekteerimine\'.
Juhtimissüsteemi inseneritööd võib defineerida kui erinevate meetodite kasutamist protsessi töö juhtimiseks või konstantse ja eelistatud keskkonna hoidmist, olgu see siis käsitsi või automaatne.
Lihtne näide on ruumi temperatuuri reguleerimine.
Käsitsi juhtimine viitab isiku kohalolekule, kes kontrollib kohapeal kehtivaid tingimusi (andur)
, ootustega (töötlemine)
ja võtab soovitud väärtuse saamiseks asjakohaseid meetmeid (ajam).
Selle lähenemisviisi probleem seisneb selles, et see ei ole väga usaldusväärne, kuna tööl esineb vigu või hooletust.
Lisaks on probleemiks veel see, et täiturmehhanismi käivitatud protsessi kiirus ei ole alati ühtlane, mis tähendab, et mõnikord võib see olla nõutavast kiirusest kiirem ja mõnikord aeglane.
Selle probleemi lahenduseks on mikrokontrolleri kasutamine süsteemi juhtimiseks.
Vastavalt antud spetsifikatsioonile on mikrokontroller programmeeritud juhtima ahelas ühendamise protsessi (
Arutage hiljem)
Väärtust või seisundit, kontrollides seeläbi protsessi soovitud väärtuse säilitamiseks.
Selle protsessi eeliseks on see, et sellesse protsessi pole vaja inimese sekkumist.
Lisaks on selle protsessi kiirus ühtlane.
Enne jätkamist on siinkohal ülioluline määrata erinevad terminid: Tagasiside juhtimine: selles süsteemis sõltub sisend teatud aja jooksul ühest või mitmest muutujast, sealhulgas süsteemi väljundist.
Negatiivne tagasiside: selles süsteemis referents (sisend)
Tagasisidena lahutatakse viga ja sisendi faas on 180 kraadi.
Positiivne tagasiside: selles süsteemis
lisatakse võrdlus (sisend) vead, kui tagasiside ja sisend on faasis.
Veasignaal: erinevus soovitud väljundi ja tegeliku väljundi vahel.
Andur: seade, mida kasutatakse teatud arvu seadmete tuvastamiseks vooluringis.
Tavaliselt asetatakse see väljundisse või mujale, kus tahame mõõtmisi teha.
Protsessor: osa juhtimissüsteemist, mida töödeldakse programmeerimisalgoritmide alusel.
See võtab natuke sisendit ja toodab teatud väljundit.
Täiturmehhanism: juhtimissüsteemis kasutatakse täiturmehhanismi sündmuste läbiviimiseks mikrokontrolleri genereeritud signaali põhjal, et mõjutada väljundit.
Suletud ahelaga süsteem: ühe või mitme tagasisideahelaga süsteem.
Avatud ahela süsteem: tagasisideahela süsteem puudub.
Tõusuaeg: aeg, mis kulub väljundi tõusuks 10%-lt signaali maksimaalsest amplituudist 90%-ni.
Langemisaeg: aeg, mis kulub väljundi langemiseks 90%-lt 10%-le.
Tipptaseme ületamine: tipptaseme ületamine on väljundi kogus, mis ületab püsiseisundi väärtuse (
tavaline süsteemi mööduva reaktsiooni ajal).
Stabiilne aeg: aeg, mis kulub väljundi stabiilse oleku saavutamiseks.
Püsiseisundi viga: erinevus tegeliku väljundi ja eeldatava väljundi vahel, kui süsteem jõuab püsiseisundisse. Ülaloleval pildil on juhtimissüsteemi väga lihtsustatud versioon.
Mikrokontroller on iga juhtimissüsteemi tuum.
See on väga oluline komponent, mistõttu tuleks see hoolikalt valida vastavalt süsteemi nõuetele.
Mikrokontroller saab kasutajalt sisendi.
See sisend määratleb süsteemi jaoks vajalikud tingimused.
Mikrokontroller saab andurilt ka sisendi.
Andur ühendatakse väljundiga ja selle info suunatakse tagasi sisendisse.
Seda sisendit võib nimetada ka negatiivseks tagasisideks.
Negatiivset tagasisidet selgitati varem.
Mikroprotsessor teostab oma programmeerimise põhjal erinevaid arvutusi ja väljundeid täiturmehhanismile.
Väljundipõhine täiturmehhanismi juhtseade püüab neid tingimusi säilitada.
Näitena võib tuua mootorit juhtiva juhi, kus mootorijuht on juht ja mootor on tehas.
Seetõttu pöörleb mootor etteantud kiirusel.
Ühendatud andur loeb praeguse tehase olekut ja edastab selle tagasi mikrokontrollerile.
Mikrokontrollerit võrreldakse uuesti ja arvutatakse, nii et silmust korratakse.
Protsess on korduv ja lõputu ning mikrokontroller suudab säilitada soovitud tingimused.
Siin on kaks peamist võimalust alalisvoolumootori kiiruse reguleerimiseks)
Manuaalne pinge juhtimine: tööstuslikes rakendustes on alalisvoolumootori kiiruse reguleerimise mehhanism kriitilise tähtsusega.
Mõnikord võime vajada tavapärasest suuremat või väiksemat kiirust.
Seetõttu vajame tõhusat kiiruse reguleerimise meetodit.
Toitepinge juhtimine on üks lihtsamaid kiiruse reguleerimise meetodeid.
Kiiruse muutmiseks saame pinget muuta. b)
Juhtige PWM-i PID abil: veel üks tõhusam viis on kasutada mikrokontrollerit.
Alalisvoolumootor on ühendatud mikrokontrolleriga läbi mootoridraiveri.
Mootori draiver on IC, mis võtab vastu PWM-i (
impulsi laiuse modulatsioon)
sisendit mikrokontrollerilt ja väljundit alalisvoolumootorile vastavalt sisendile. Joonis 1.
2: PWM-signaali 1. peatükk.
Sissejuhatus 3, arvestades PWM-signaali, saab kõigepealt selgitada PWM-i toimimist.
See koosneb pidevatest impulssidest teatud aja jooksul.
Ajaperiood on aeg, mille punkt liigub lainepikkusega võrdsel kaugusel.
Nendel impulssidel võivad olla ainult kahendväärtused (HIGH või LOW).
Meil on ka kaks muud suurust, impulsi laius ja töötsükkel.
Impulsi laius on aeg, mil PWM-i väljund on kõrge.
Töötsükkel on impulsi laiuse protsent ajavahemikust.
Ülejäänud ajaperioodi jooksul on väljund madal.
Töötsükkel juhib otseselt mootori kiirust.
Kui alalisvoolumootor annab teatud aja jooksul positiivse pinge, liigub see teatud kiirusega.
Kui positiivset pinget antakse pikemaks ajaks, on kiirus suurem.
Seetõttu saab PWM-i töötsüklit muuta impulsi laiuse muutmisega.
Alalisvoolumootori töötsüklit muutes saab muuta mootori kiirust.
Kiiruse reguleerimine alalisvoolumootori probleemide korral: esimese kiiruse reguleerimise meetodi probleem on see, et pinge võib aja jooksul muutuda.
Need muutused tähendavad ebaühtlast kiirust.
Seetõttu on esimene meetod ebasoovitav.
Lahendus: kasutame kiiruse reguleerimiseks teist meetodit.
Teise meetodi täiendamiseks kasutame PID-algoritmi.
PID on proportsionaalne integraaltuletis.
PID-algoritmis mõõdetakse mootori hetkekiirust ja võrreldakse seda soovitud kiirusega.
Seda viga kasutatakse keerukate arvutuste tegemiseks, et muuta mootori töötsüklit vastavalt ajale.
See protsess on igas tsüklis.
Kui kiirus ületab soovitud kiirust, töötsükkel väheneb ja töötsükkel suureneb, kui kiirus on soovitud kiirusest madalam.
Seda reguleerimist ei tehta enne, kui on saavutatud parim kiirus.
Kontrollige ja kontrollige seda kiirust pidevalt.
Siin on selles projektis kasutatud süsteemikomponendid ja lühike sissejuhatus iga komponendi üksikasjadesse.
STM 32F407: mikrokontroller, mille on välja töötanud ST Micro-section.
See töötab ARM Cortexis. M Arhitektuur.
See juhib oma perekonda kõrge taktsagedusega 168 MHz.
Mootori draiver L298N: seda IC-d kasutatakse mootori käitamiseks.
Sellel on kaks välist sisendit.
Üks mikrokontrollerist.
Mikrokontroller annab selle jaoks PWM-signaali.
Mootori kiirust saab reguleerida impulsi laiuse reguleerimisega.
Selle teine sisend on mootori käitamiseks vajalik pingeallikas.
Alalisvoolumootor: alalisvoolumootor töötab alalisvoolu toiteallikaga.
Selles katses kasutatakse alalisvoolumootorit fotoelektrilise siduri abil, mis on ühendatud mootori draiveriga.
Infrapunasensor: infrapunaandur on tegelikult infrapuna-transiiver.
See saadab ja võtab vastu infrapunalaineid, mida saab kasutada erinevate ülesannete täitmiseks.
IR-kooderi optiline sidur 4N35: optiline sidur on seade, mida kasutatakse ahela madalpinge osa ja kõrgepinge osa isoleerimiseks.
Nagu nimigi ütleb, töötab see valguse baasil.
Kui madalpinge osa saab signaali, liigub vool kõrgepingeosas.
Süsteem on kiiruse reguleerimise süsteem.
Nagu varem mainitud, rakendatakse süsteemi proportsionaalse integraali ja tuletise PID-ga.
Kiiruse reguleerimise süsteemil on ülaltoodud komponendid.
Esimene osa on kiiruseandur.
Kiiruseandur on infrapunasaatja ja vastuvõtja vooluahel.
Kui tahke aine läbib U-kujulist pilu, läheb andur madalasse olekusse.
Tavaliselt on see kõrges olekus.
Anduri väljund on ühendatud madalpääsfiltriga, et kõrvaldada anduri oleku muutumisel tekkivast transiendist põhjustatud sumbumine.
Madalpääsfilter koosneb takistitest ja kondensaatoritest.
Väärtused valiti vastavalt vajadusele.
Kasutatav kondensaator on 1100nf ja kasutatav takistus ca 25 oomi.
Madalpääsfilter välistab tarbetud mööduvad tingimused, mis võivad põhjustada täiendavaid näitu ja prügiväärtusi.
Seejärel väljastatakse madalpääsfilter läbi kondensaatori stm-mikrokontrolleri sisendi digitaalsele viigule.
Teine osa on mootor, mida juhib pwm, mida pakub stm mikrokontroller.
See säte on varustatud elektriisolatsiooniga, kasutades optilist sidurit ic.
Optiline sidur sisaldab LED-i, mis kiirgab valgust ic-paketi sees ja kui sisendklemmile antakse kõrge impulss, siis lühises see väljundklemmi.
Sisendklemm annab pwm läbi takisti, mis piirab optilise siduriga ühendatud ledi voolu.
Väljundisse on ühendatud ripptakisti, et klemmi lühistamisel tekib ripptakistis pinge ja takisti klemmiga ühendatud tihvt saab kõrge oleku.
Fotoelektrilise siduri väljund on ühendatud mootori draiveri IC sisendiga IN1, mis säilitab lubamistihvti kõrguse.
Kui pwm töötsükkel muutub optilise siduri sisendis, lülitab mootori draiveri tihvt mootorit ja juhib mootori kiirust.
Pärast mootorile antud pwm-i annab mootoridraiver tavaliselt 12-voldise pinge.
Seejärel võimaldab mootorijuht mootoril töötada.
Tutvustame algoritmi, mida kasutasime selle mootori kiiruse reguleerimise projekti elluviimisel.
Mootori pwm-i tagab üks taimer.
Taimeri konfiguratsioon on tehtud ja seatud pakkuma pwm.
Kui mootor käivitub, pöörab see mootori võlli külge kinnitatud pilu.
Pilu läbib anduri õõnsust ja tekitab madala impulsi.
Madalatel impulssidel kood käivitub ja ootab, kuni pilu liigub.
Kui pilu kaob, annab andur kõrge oleku ja taimer hakkab loendama.
Taimer annab meile aja kahe pilu vahel.
Nüüd, kui ilmub uus madal impulss, käivitub IF-lause uuesti, oodates järgmist tõusvat serva ja peatades loenduri.
Pärast kiiruse arvutamist arvutage välja kiiruse ja tegeliku kontrollväärtuse vahe ning andke pid.
Pid arvutab töötsükli väärtuse, mis jõuab antud hetkel kontrollväärtuseni.
See väärtus edastatakse CCR-ile (
võrdlusregister)
Sõltuvalt veast vähendatakse või suurendatakse taimeri kiirust.
Rakendatud on Atollic Truestudio kood.
Silumiseks võib olla vaja installida STM-stuudio.
Importige projekt STM-stuudiosse ja importige muutujad, mida soovite vaadata.
Väike muudatus on 2017-11-4xx.
Muutke kella sagedus täpselt h-failiks sagedusel 168 MHz.
Koodilõik on esitatud ülal.
Järeldus on, et mootori kiirust juhitakse PID abil.
Samas ei ole kõver just sujuv joon.
Sellel on palju põhjuseid: kuigi madalpääsfiltriga ühendatud andur annab endiselt teatud defekte, on need tingitud mittelineaarsete takistite ja analoogelektroonikaseadmete vältimatutest põhjustest, mootor ei saa väikese pinge või pwm korral sujuvalt pöörlema.
See pakub sitapead, mis võivad põhjustada süsteemi vale väärtuse sisestamise.
Värina tõttu võib anduril mõni suuremat väärtust pakkuv pilu vahele jätta ja teise vea peamiseks põhjuseks võib olla stm-i südamiku taktsagedus.
Stm-i südamiktakt on 168 MHz.
Kuigi seda probleemi selles projektis käsitleti, on selle mudeli terviklik kontseptsioon, mis ei paku nii kõrget sagedust.
Avatud ahela kiirus tagab väga sujuva joone vaid mõne ootamatu väärtusega.
PID töötab ka ja tagab väga väikese mootori stabiilsuse aja.
Mootori PID-d testiti erinevatel pingetel, mis hoidsid võrdluskiiruse konstantsena.
Pingemuutus ei muuda mootori kiirust, mis näitab, et PID töötab.
Siin on mõned PID-i lõpliku väljundi segmendid. a)
Closed loop @ 110 rpm)
Closed loop @ 120 rpmSeda projekti ei saanud lõpule viia ilma minu rühmaliikmete abita.
Tahan neid tänada.
Täname, et vaatasite seda projekti.
Loodan teid aidata.
Palun oota rohkem.
Õnnista enne seda :)