Pozdravljeni vsi, sem tahir ul haq iz drugega projekta.
Tokrat je bil čas za MC, ki ga je uporabil 2017-11-407.
To je konec srednjeročnega programa.
Upam, da ti je všeč.
Zahteva veliko konceptov in teorij, zato si ga najprej poglejmo.
S pojavom računalnikov in industrializiranega procesa so v zgodovini človeštva potekale raziskave za razvoj metod za ponovno opredelitev procesa in, kar je še pomembneje, za uporabo strojev za samostojno krmiljenje procesa.
Cilj je zmanjšati človeško sodelovanje v teh procesih in s tem zmanjšati napake v teh procesih.
Tako je nastalo področje \'tehnike krmilnih sistemov\'.
Inženiring nadzornega sistema je mogoče definirati kot uporabo različnih metod za nadzor delovanja procesa ali vzdrževanje stalnega in želenega okolja, ročnega ali avtomatskega.
Preprost primer je nadzor temperature v prostoru.
Ročni nadzor se nanaša na prisotnost osebe, ki preverja trenutne razmere na mestu (senzor)
, s pričakovanji (obdelava)
in izvaja ustrezne ukrepe za pridobitev želene vrednosti (aktuator).
Težava s tem pristopom je, da ni zelo zanesljiv, ker smo pri delu nagnjeni k napakam ali malomarnosti.
Poleg tega je še ena težava, da hitrost procesa, ki ga sproži aktuator, ni vedno enakomerna, kar pomeni, da je včasih lahko hitrejša od zahtevane hitrosti, včasih pa počasneje.
Rešitev tega problema je uporaba mikrokrmilnika za krmiljenje sistema.
V skladu z dano specifikacijo je mikrokrmilnik programiran za krmiljenje procesa povezovanja v vezju (
razpravljajte kasneje)
Vrednost ali stanje, s čimer nadzoruje proces za vzdrževanje želene vrednosti.
Prednost tega postopka je, da v tem procesu ni potrebe po človeškem posredovanju.
Poleg tega je hitrost tega procesa dosledna.
Preden nadaljujemo, je na tej točki ključnega pomena določiti različne izraze: Nadzor s povratnimi informacijami: V tem sistemu je vhod v določenem času odvisen od ene ali več spremenljivk, vključno z izhodom sistema.
Negativna povratna informacija: V tem sistemu je referenca (vhod)
Kot povratna informacija se napaka odšteje in faza vhoda je 180 stopinj.
Pozitivna povratna informacija: V tem sistemu se referenčne (vhodne)
napake dodajo, ko sta povratna informacija in vhod v fazi.
Signal napake: razlika med želenim in dejanskim izhodom.
Senzor: naprava, ki se uporablja za zaznavanje določenega števila naprav v vezju.
Običajno je nameščen v izhodu ali kjer koli, kjer želimo opraviti meritve.
Procesor: del krmilnega sistema, ki se obdeluje na podlagi programskih algoritmov.
Potrebuje nekaj vnosa in proizvede nekaj izhoda.
Aktuator: v krmilnem sistemu se aktuator uporablja za izvajanje dogodkov na podlagi signala, ki ga ustvari mikrokrmilnik, da vpliva na izhod.
Zaprtozančni sistem: sistem z eno ali več povratnimi zankami.
Sistem odprte zanke: ni sistema za povratno zanko.
Čas vzpona: čas, ki je potreben, da se izhod dvigne z 10 % največje amplitude signala na 90 %.
Drop Time: Čas, ki je potreben, da izhod pade z 90 % na 10 %.
Prekoračitev vrha: prekoračitev vrha je količina izhoda, ki presega vrednost v stanju dinamičnega ravnovesja (
normalno med prehodnim odzivom sistema).
Stabilni čas: čas, ki je potreben, da izhod doseže stabilno stanje.
Napaka stabilnega stanja: razlika med dejanskim izhodom in pričakovanim izhodom, ko sistem doseže stanje stabilnega stanja. Zgornja slika prikazuje zelo poenostavljeno različico krmilnega sistema.
Mikrokrmilnik je jedro vsakega krmilnega sistema.
To je zelo pomembna komponenta, zato jo je treba skrbno izbrati glede na zahteve sistema.
Mikrokrmilnik sprejema vnose od uporabnika.
Ta vnos določa pogoje, potrebne za sistem.
Mikrokrmilnik prav tako prejema vhod od senzorja.
Senzor je povezan z izhodom in njegove informacije se vrnejo nazaj na vhod.
Ta vnos lahko imenujemo tudi negativna povratna informacija.
Negativne povratne informacije so bile pojasnjene prej.
Na podlagi svojega programiranja mikroprocesor izvaja različne izračune in izhode v aktuator.
Naprava za krmiljenje aktuatorja na podlagi izhoda poskuša vzdrževati te pogoje.
Primer je lahko voznik motorja, ki poganja motor, kjer je voznik motorja voznik, motor pa tovarna.
Zato se motor vrti z določeno hitrostjo.
Povezani senzor prebere status trenutne tovarne in ga vrne mikro krmilniku.
Mikrokrmilnik se ponovno primerja in izračuna, zato se zanka ponovi.
Proces se ponavlja in je neskončen, mikrokrmilnik pa lahko vzdržuje želene pogoje.
Tukaj sta dva glavna načina za nadzor hitrosti enosmernega motorja)
Ročno krmiljenje napetosti: v industrijskih aplikacijah je mehanizem za nadzor hitrosti enosmernega motorja kritičen.
Včasih morda potrebujemo hitrosti, ki so višje ali nižje od običajnih.
Zato potrebujemo učinkovito metodo nadzora hitrosti.
Regulacija napajalne napetosti je ena najpreprostejših metod regulacije hitrosti.
Napetost lahko spremenimo, da spremenimo hitrost. b)
Nadzor PWM z uporabo PID: drug učinkovitejši način je uporaba mikrokrmilnika.
Enosmerni motor je povezan z mikrokrmilnikom prek gonilnika motorja.
Gonilnik motorja je IC, ki sprejema PWM (
impulzno širinsko modulacijo)
vhod iz mikrokrmilnika in izhod na enosmerni motor glede na vhod. Slika 1.
2: 1. poglavje signala PWM.
Uvod 3 ob upoštevanju signala PWM je najprej mogoče pojasniti delovanje PWM.
Sestavljen je iz neprekinjenih impulzov za določeno časovno obdobje.
Časovno obdobje je čas, ki ga točka porabi za premikanje na razdalji, ki je enaka valovni dolžini.
Ti impulzi imajo lahko samo binarne vrednosti (VISOKE ali NIZKE).
Imamo tudi dve drugi količini, širino impulza in delovni cikel.
Širina impulza je čas, ko je izhod PWM visok.
Delovni cikel je odstotek širine impulza glede na časovno obdobje.
V preostalem časovnem obdobju je proizvodnja nizka.
Delovni cikel neposredno nadzira hitrost motorja.
Če enosmerni motor daje pozitivno napetost v določenem časovnem obdobju, se bo premikal z določeno hitrostjo.
Če je pozitivna napetost zagotovljena dlje časa, bo hitrost večja.
Zato je delovni cikel PWM mogoče spremeniti s spreminjanjem širine impulza.
S spreminjanjem delovnega cikla enosmernega motorja lahko spremenite hitrost motorja.
Regulacija hitrosti za težave z enosmernim motorjem: težava pri prvi metodi regulacije hitrosti je, da se lahko napetost sčasoma spreminja.
Te spremembe pomenijo neenakomerno hitrost.
Zato je prva metoda nezaželena.
Rešitev: Za nadzor hitrosti uporabljamo drugo metodo.
Za dopolnitev druge metode uporabljamo algoritem PID.
PID predstavlja proporcionalni integralni odvod.
V algoritmu PID se izmeri trenutna hitrost motorja in primerja z želeno hitrostjo.
Ta napaka se uporablja za zapletene izračune za spreminjanje delovnega cikla motorja glede na čas.
V vsakem ciklu je ta proces.
Če hitrost preseže želeno hitrost, se delovni cikel zmanjša in delovni cikel poveča, če je hitrost nižja od želene hitrosti.
Ta prilagoditev se ne izvede, dokler ni dosežena najboljša hitrost.
Nenehno preverjajte in nadzorujte to hitrost.
Tukaj so sistemske komponente, uporabljene v tem projektu, in kratek uvod v podrobnosti vsake komponente.
STM 32F407: mikrokrmilnik, ki ga je zasnoval ST Micro-section.
Deluje na ARM Cortex. M Arhitektura.
Vodi svojo družino z visoko taktno frekvenco 168 MHz.
Gonilnik motorja L298N: Ta IC se uporablja za zagon motorja.
Ima dva zunanja vhoda.
Eden od mikro krmilnika.
Mikrokrmilnik zanj zagotavlja signal PWM.
Hitrost motorja lahko prilagodite s prilagoditvijo širine impulza.
Njegov drugi vhod je vir napetosti, potreben za pogon motorja.
DC motor: DC motor deluje na enosmerni napajalnik.
V tem poskusu se enosmerni motor upravlja s fotoelektrično sklopko, povezano z gonilnikom motorja.
Infrardeči senzor: infrardeči senzor je pravzaprav infrardeči oddajnik.
Pošilja in sprejema infrardeče valove, ki se lahko uporabljajo za opravljanje različnih nalog.
Optični spojnik IR kodirnika 4N35: optični spojnik je naprava, ki se uporablja za izolacijo nizkonapetostnega dela vezja in visokonapetostnega dela.
Kot že ime pove, deluje na podlagi svetlobe.
Ko nizkonapetostni del dobi signal, tok teče v visokonapetostnem delu.
Sistem je sistem za nadzor hitrosti.
Kot smo že omenili, je sistem implementiran z uporabo PID proporcionalnega integrala in odvoda.
Sistem za nadzor hitrosti ima zgoraj navedene komponente.
Prvi del je senzor hitrosti.
Senzor hitrosti je infrardeči oddajnik in sprejemnik.
Ko gre trdna snov skozi režo v obliki črke U, senzor preide v nizko stanje.
Običajno je v visokem stanju.
Izhod senzorja je povezan z nizkopasovnim filtrom za odpravo oslabitve, ki jo povzroči prehod, ki nastane ob spremembi stanja senzorja.
Nizkoprepustni filter je sestavljen iz uporov in kondenzatorjev.
Vrednosti so bile izbrane po zahtevah.
Uporabljen kondenzator je 1100nf in uporabljeni upor je približno 25 ohmov.
Nizkoprepustni filter odpravlja nepotrebne prehodne pogoje, ki lahko povzročijo dodatne odčitke in nepotrebne vrednosti.
Nizkopasovni filter se nato preko kondenzatorja odda na vhodni digitalni pin mikrokrmilnika stm.
Drugi del je motor, ki ga krmili pwm, ki ga zagotavlja mikrokrmilnik stm.
Ta nastavitev je opremljena z električno izolacijo z uporabo optičnega spojnika ic.
Optični sklopnik vključuje LED, ki oddaja svetlobo znotraj ohišja ic, in ko je na vhodni sponki dan visok impulz, povzroči kratek stik na izhodni sponki.
Vhodni terminal daje pwm preko upora, ki omejuje tok LED, povezane z optičnim spojnikom.
Na izhod je priključen spustni upor, tako da se ob kratkem stiku na sponki ustvari napetost na spustnem uporu in zatič, povezan s sponko na uporu, prejme visoko stanje.
Izhod fotoelektričnega spojnika je povezan z IN1 gonilnika motorja ic, ki vzdržuje višino zatiča za omogočanje.
Ko se delovni cikel pwm spremeni na vhodu optičnega spojnika, pogonski zatič motorja preklopi motor in nadzoruje hitrost motorja.
Po pwm, ki je dobavljen motorju, gonilnik motorja običajno zagotovi napetost 12 voltov.
Gonilnik motorja nato omogoči delovanje motorja.
Predstavimo algoritem, ki smo ga uporabili pri izvedbi tega projekta regulacije hitrosti motorja.
PWM motorja zagotavlja en sam časovnik.
Konfiguracija časovnika je narejena in nastavljena tako, da zagotavlja pwm.
Ko se motor zažene, zavrti režo, pritrjeno na gred motorja.
Reža poteka skozi senzorsko votlino in proizvaja nizek impulz.
Pri nizkih impulzih se koda zažene in čaka, da se reža premakne.
Ko reža izgine, senzor zagotovi visoko stanje in časovnik začne šteti.
Časovnik nam pokaže čas med dvema režama.
Zdaj, ko se pojavi še en nizek impulz, se stavek IF znova izvede, čaka na naslednji naraščajoči rob in ustavi števec.
Po izračunu hitrosti izračunajte razliko med hitrostjo in dejansko referenčno vrednostjo ter navedite pid.
Pid izračuna vrednost delovnega cikla, ki v danem trenutku doseže referenčno vrednost.
Ta vrednost je posredovana CCR (
primerjalni register).
Odvisno od napake se hitrost časovnika zmanjša ali poveča.
Implementirana je koda Atollic Truestudio.
Za odpravljanje napak bo morda treba namestiti STM studio.
Uvozite projekt v STM studio in uvozite spremenljivke, ki si jih želite ogledati.
Rahla sprememba je na 2017-11-4xx.
Natančno spremenite frekvenco ure na datoteko h pri 168 MHz.
Odrezek kode je naveden zgoraj.
Zaključek je, da je hitrost motorja krmiljena s PID.
Vendar krivulja ni ravno gladka črta.
Za to je veliko razlogov: čeprav senzor, povezan z nizkopasovnim filtrom, še vedno povzroča določene napake, so te posledica nekaterih neizogibnih razlogov za nelinearne upore in analogne elektronske naprave, motor se ne more gladko vrteti pri nizki napetosti ali pwm.
Zagotavlja riti, ki lahko povzročijo, da sistem vnese kakšno napačno vrednost.
Zaradi tresenja lahko senzor zgreši kakšno režo, ki zagotavlja višjo vrednost, glavni razlog za drugo napako pa je lahko frekvenca jedra stm.
Jedrna ura Stm je 168 MHz.
Čeprav je bil ta problem obravnavan v tem projektu, obstaja holistični koncept tega modela, ki ne zagotavlja tako visoke frekvence.
Hitrost odprte zanke zagotavlja zelo gladko linijo z le nekaj nepričakovanimi vrednostmi.
Deluje tudi PID in zagotavlja zelo nizek čas stabilnosti motorja.
PID motorja je bil testiran pri različnih napetostih, ki ohranjajo referenčno hitrost konstantno.
Sprememba napetosti ne spremeni hitrosti motorja, kar pomeni, da PID deluje.
Tukaj je nekaj segmentov končnega rezultata PID. a)
Zaprta zanka @ 110 rpmb)
Zaprta zanka @ 120 rpm Tega projekta ne bi bilo mogoče dokončati brez pomoči članov moje skupine.
Želim se jim zahvaliti.
Hvala za ogled tega projekta.
Upam, da vam bom pomagal.
Veselite se več.
Blagoslovite še naprej :)