spoedbeheer van GS-motor met behulp van pid-algoritme (stm32f4)
Tuis » Blog » spoedbeheer van GS-motor met behulp van pid-algoritme (stm32f4)

spoedbeheer van GS-motor met behulp van pid-algoritme (stm32f4)

Kyke: 0     Skrywer: Werfredakteur Publiseertyd: 2020-09-02 Oorsprong: Werf

Doen navraag

Facebook-deelknoppie
Twitter-deelknoppie
lyn deel knoppie
wechat-deelknoppie
linkedin-deelknoppie
pinterest-deelknoppie
whatsapp deel knoppie
kakao-deelknoppie
snapchat-deelknoppie
telegram deel knoppie
deel hierdie deelknoppie

Hallo almal, ek is tahir ul haq van 'n ander projek.
Hierdie keer was dit die tyd om MC te doen wat deur 2017-11-407 gebruik is.
Dit is die einde van die middeltermynprogram.
Hoop jy hou daarvan.
Dit verg baie konsepte en teorieë, so kom ons kyk eers daarna.
Met die opkoms van rekenaars en die geïndustrialiseerde proses, was daar navorsing in die geskiedenis van mense om metodes te ontwikkel om die proses te herdefinieer, en nog belangriker, om masjiene te gebruik om die proses outonoom te beheer.
Die doel is om menslike deelname aan hierdie prosesse te verminder en sodoende foute in hierdie prosesse te verminder.
Daarom het die veld van \'beheerstelselingenieurswese\' ontstaan.
Beheerstelselingenieurswese kan gedefinieer word as die gebruik van verskeie metodes om die werk van die proses te beheer of die instandhouding van 'n konstante en voorkeuromgewing, hetsy handmatig of outomaties.
'n Eenvoudige voorbeeld is om die temperatuur van die kamer te beheer.
Handmatige beheer verwys na die teenwoordigheid van 'n persoon wat die huidige toestande op die terrein kontroleer (sensor)
, Met verwagtinge (verwerking)
En toepaslike stappe te neem om die gewenste waarde te verkry (aktuator).
Die probleem met hierdie benadering is dat dit nie baie betroubaar is nie omdat 'n mens geneig is tot foute of nalatigheid by die werk.
Daarbenewens is 'n ander probleem dat die tempo van die proses wat die aandrywer begin nie altyd eenvormig is nie, wat beteken dat dit soms vinniger as die vereiste spoed kan wees, en soms kan dit stadig wees.
Die oplossing vir hierdie probleem is om 'n mikrobeheerder te gebruik om die stelsel te beheer.
Volgens die gegewe spesifikasie is die mikrobeheerder geprogrammeer om die proses van koppeling in die stroombaan te beheer (
Bespreek later)
Die waarde of toestand van, en daardeur die proses te beheer om die gewenste waarde te handhaaf.
Die voordeel van hierdie proses is dat daar geen menslike ingryping in hierdie proses nodig is nie.
Daarbenewens is die spoed van hierdie proses konsekwent.
Voordat ons voortgaan, is dit van kardinale belang om die verskillende terme op hierdie punt te bepaal: Terugvoerbeheer: In hierdie stelsel hang insette op 'n sekere tyd af van een of meer veranderlikes, insluitend die uitset van die stelsel.
Negatiewe terugvoer: In hierdie stelsel, verwysing (invoer)
As terugvoer word die fout afgetrek en die fase van die invoer is 180 grade.
Positiewe terugvoer: In hierdie stelsel word verwysing (insette)
Foute bygevoeg wanneer terugvoer en insette in fase is.
Foutsein: die verskil tussen die verlangde uitset en die werklike uitset.
Sensor: 'n toestel wat gebruik word om 'n sekere aantal toestelle in 'n stroombaan op te spoor.
Dit word gewoonlik in die uitset geplaas of enige plek waar ons 'n paar metings wil maak.
Verwerker: deel van die beheerstelsel wat op grond van programmeringsalgoritmes verwerk word.
Dit verg 'n mate van insette en lewer 'n mate van uitset.
Aktuator: in die beheerstelsel word die aktuator gebruik om gebeurtenisse uit te voer gebaseer op die sein wat deur die mikrobeheerder gegenereer word om die uitset te beïnvloed.
Geslote-lusstelsel: 'n stelsel met een of meer terugvoerlusse.
Ooplusstelsel: daar is geen stelsel vir terugvoerlus nie.
Stygtyd: Die tyd wat nodig is vir die uitset om van 10% van die maksimum amplitude van die sein tot 90% te styg.
Drop Tyd: Die tyd wat nodig is vir die uitset om te daal van 90% tot 10%.
Piekoorskiet: piekoorskiet is die hoeveelheid uitset wat sy bestendige toestandwaarde oorskry (
normaal tydens stelsel-verbygaande reaksie).
Stabiele tyd: Die tyd wat nodig is vir die uitset om 'n stabiele toestand te bereik.
Bestendige toestand fout: die verskil tussen die werklike uitset en die verwagte uitset sodra die stelsel bestendige toestand bereik. Die prentjie hierbo toon 'n baie vereenvoudigde weergawe van die beheerstelsel.
Die mikrobeheerder is die kern van enige beheerstelsel.
Dit is 'n baie belangrike komponent, daarom moet dit noukeurig gekies word volgens die vereistes van die stelsel.
Die mikrobeheerder ontvang insette van die gebruiker.
Hierdie inset definieer die voorwaardes wat vir die stelsel vereis word.
Die mikrobeheerder ontvang ook insette van die sensor.
Die sensor word aan die uitset gekoppel en sy inligting word na die inset teruggevoer.
Hierdie insette kan ook negatiewe terugvoer genoem word.
Negatiewe terugvoer is vroeër verduidelik.
Op grond van sy programmering voer die mikroverwerker verskeie berekeninge en uitsette na die aktuator uit.
Die uitset-gebaseerde aktuatorbeheeraanleg poog om hierdie toestande te handhaaf.
'n Voorbeeld kan die motorbestuurder wees wat die motor bestuur, waar die motorbestuurder die bestuurder is en die motor die fabriek is.
Daarom draai die motor teen 'n gegewe spoed.
Die gekoppelde sensor lees die status van die huidige fabriek en voer dit terug na die mikrobeheerder.
Die mikrobeheerder word weer vergelyk en bereken, sodat die lus herhaal word.
Die proses is herhalend en eindeloos, en die mikrobeheerder kan die verlangde toestande handhaaf.
Hier is twee hoof maniere om die spoed van die GS-motor te beheer)
Handmatige spanningsbeheer: in industriële toepassings is die spoedbeheermeganisme van die GS-motor krities.
Soms het ons dalk spoed nodig wat hoër of laer as normaal is.
Daarom het ons 'n effektiewe spoedbeheermetode nodig.
Die beheer van die toevoerspanning is een van die eenvoudigste spoedbeheermetodes.
Ons kan die spanning verander om die spoed te verander. b)
Beheer PWM met behulp van PID: 'n ander meer doeltreffende manier is om 'n mikro-beheerder te gebruik.
Die GS-motor is deur die motorbestuurder aan die mikrobeheerder gekoppel.
Die motordrywer is 'n IC wat PWM (
Pulswydtemodulasie)
Invoer vanaf die mikrobeheerder en uitvoer na die GS-motor volgens die inset ontvang. Figuur 1.
2: Hoofstuk 1 van PWM sein.
Inleiding 3 met inagneming van die PWM-sein, kan die werking van PWM eers verduidelik word.
Dit bestaan ​​uit aaneenlopende pulse vir 'n sekere tydperk.
Tydperiode is die tyd wat 'n punt spandeer wat op 'n afstand gelyk aan 'n golflengte beweeg.
Hierdie pulse kan slegs binêre waardes (HOOG of LAAG) hê.
Ons het ook twee ander hoeveelhede, die polswydte en die dienssiklus.
Die polswydte is die tyd wanneer die PWM-uitset hoog is.
Die dienssiklus is die persentasie van die polswydte tot die tydperk.
Vir die res van die tydperk is die uitset laag.
Die dienssiklus beheer direk die spoed van die motor.
As die GS-motor positiewe spanning binne 'n sekere tydperk verskaf, sal dit teen 'n sekere spoed beweeg.
As positiewe spanning vir 'n langer tydperk voorsien word, sal die spoed groter wees.
Daarom kan die dienssiklus van PWM verander word deur die pulswydte te verander.
Deur die dienssiklus van die GS-motor te verander, kan die spoed van die motor verander word.
Spoedbeheer vir GS-motorprobleme: die probleem met die eerste spoedbeheermetode is dat die spanning met verloop van tyd kan verander.
Hierdie veranderinge beteken ongelyke spoed.
Daarom is die eerste metode ongewens.
Oplossing: Ons gebruik die tweede metode om die spoed te beheer.
Ons gebruik die PID-algoritme om die tweede metode aan te vul.
PID verteenwoordig die proporsionele integrale afgeleide.
In die PID-algoritme word die huidige spoed van die motor gemeet en vergelyk met die verlangde spoed.
Hierdie fout word gebruik vir komplekse berekeninge om die dienssiklus van die motor volgens tyd te verander.
Daar is hierdie proses in elke siklus.
As die spoed die verlangde spoed oorskry, word die dienssiklus verminder en die dienssiklus verhoog as die spoed laer is as die verlangde spoed.
Hierdie aanpassing word nie gemaak voordat die beste spoed bereik is nie.
Kontroleer en beheer voortdurend hierdie spoed.
Hier is die stelselkomponente wat in hierdie projek gebruik word en 'n kort inleiding tot die besonderhede van elke komponent.
STM 32F407: mikrobeheerder ontwerp deur ST Micro-section.
Dit werk op die ARM Cortex. M Argitektuur.
Dit lei sy familie met 'n hoë klokfrekwensie van 168 MHz.
Motorbestuurder L298N: Hierdie IC word gebruik om die motor te laat loop.
Dit het twee eksterne insette.
Een van die mikrobeheerder.
Die mikrobeheerder verskaf 'n PWM-sein daarvoor.
Die motorspoed kan aangepas word deur die polswydte aan te pas.
Die tweede inset daarvan is die spanningsbron wat nodig is om die motor aan te dryf.
GS-motor: Die GS-motor loop op die GS-kragbron.
In hierdie eksperiment word die GS-motor bedryf deur gebruik te maak van 'n foto-elektriese koppeling wat aan die motoraandrywer gekoppel is.
Infrarooi sensor: die infrarooi sensor is eintlik 'n infrarooi transceiver.
Dit stuur en ontvang infrarooi golwe wat gebruik kan word om verskeie take uit te voer.
IR-kodeerder optiese koppelaar 4N35: optiese koppelaar is 'n toestel wat gebruik word om die laespanningsdeel van die stroombaan en die hoogspanningsdeel te isoleer.
Soos die naam aandui, werk dit op grond van lig.
Wanneer die laespanningsdeel die sein kry, vloei die stroom in die hoogspanningsdeel.
Die stelsel is 'n spoedbeheerstelsel.
Soos vroeër genoem, word die stelsel geïmplementeer met behulp van PID van proporsionele integraal en afgeleide.
Die spoedbeheerstelsel het bogenoemde komponente.
Die eerste deel is die spoedsensor.
Die spoedsensor is 'n infrarooi sender- en ontvangerkring.
Wanneer die vaste stof deur die u-vormige spleet gaan, gaan die sensor in 'n lae toestand.
Normaalweg is dit in 'n hoë toestand.
Die sensoruitset is aan 'n laagdeurlaatfilter gekoppel om die verswakking uit te skakel wat veroorsaak word deur die oorgang wat gegenereer word wanneer die toestand van die sensor verander.
Die laagdeurlaatfilter bestaan ​​uit resistors en kapasitors.
Waardes is gekies soos vereis.
Die kapasitor wat gebruik word is 1100nf en die weerstand wat gebruik word is ongeveer 25 ohm.
Die laagdeurlaatfilter skakel onnodige verbygaande toestande uit wat kan lei tot bykomende lesings en vulliswaardes.
Die laagdeurlaatfilter word dan deur die kapasitor na die digitale insetpen van die stm-mikrobeheerder uitgevoer.
Die ander deel is die motor wat beheer word deur pwm verskaf deur stm mikro-beheerder.
Hierdie instelling is voorsien van elektriese isolasie deur gebruik te maak van die optiese koppelaar ic.
Die optiese koppelaar bevat 'n led wat lig binne die ic-pakket uitstraal, en wanneer 'n hoë puls by die insetterminaal gegee word, het dit die uitsetterminaal kortgesluit.
Die insetterminaal gee pwm deur 'n weerstand wat die stroom van die led wat aan die optiese koppelaar gekoppel is, beperk.
'n Aftrekweerstand word aan die uitset gekoppel sodat wanneer die terminaal kortgesluit word, die spanning by die aftrekweerstand opgewek word en die pen wat aan die aansluiting op die weerstand gekoppel is, 'n hoë toestand ontvang.
Die uitset van die foto-elektriese koppelaar is gekoppel aan die IN1 van die motoraandrywer ic wat die hoogte van die aanskakelpen handhaaf.
Wanneer die pwm dienssiklus verander by die optiese koppelaar inset, skakel die motor drywer pen die motor en beheer die spoed van die motor.
Na die pwm wat aan die motor verskaf word, verskaf die motorbestuurder gewoonlik 'n spanning van 12 volt.
Die motorbestuurder stel dan die motor in staat om te werk.
Kom ons stel die algoritme bekend wat ons gebruik het in die implementering van hierdie motorspoedreguleringsprojek.
Die pwm van die motor word verskaf deur 'n enkele timer.
Die konfigurasie van die timer is gemaak en ingestel om pwm te verskaf.
Wanneer die motor begin, roteer dit die spleet wat aan die motoras geheg is.
Die spleet gaan deur die sensorholte en produseer 'n lae pols.
By lae pulse begin die kode en wag vir die spleet om te beweeg.
Sodra die spleet verdwyn, verskaf die sensor 'n hoë toestand en die tydhouer begin tel.
Die tydhouer gee ons die tyd tussen die twee spleet.
Nou, wanneer nog 'n lae pols verskyn, word die IF-stelling weer uitgevoer, wag vir die volgende stygende rand en stop die teller.
Nadat die spoed bereken is, bereken die verskil tussen die spoed en die werklike verwysingswaarde en gee die pid.
Pid bereken die dienssikluswaarde wat die verwysingswaarde op 'n gegewe oomblik bereik.
Hierdie waarde word aan CCR (
Vergelykingsregister) verskaf.
Afhangende van die fout, word die spoed van die timer verminder of verhoog.
Die Atollic Truestudio-kode is geïmplementeer.
STM-ateljee moet dalk geïnstalleer word vir ontfouting.
Voer die projek in STM-ateljee in en voer die veranderlikes in wat jy wil sien.
Die geringe verandering is op die 2017-11-4xx.
Verander die klokfrekwensie presies na 'n h-lêer by 168 MHz.
Die kodebrokkie is hierbo verskaf.
Die gevolgtrekking is dat die spoed van die motor met PID beheer word.
Die kurwe is egter nie juis 'n gladde lyn nie.
Daar is baie redes hiervoor: alhoewel die sensor wat aan die laagdeurlaatfilter gekoppel is, steeds sekere defekte verskaf, is dit weens 'n paar onvermydelike redes vir nie-lineêre resistors en analoog elektroniese toestelle, kan die motor nie glad teen 'n klein spanning of pwm draai nie.
Dit verskaf gatte wat kan veroorsaak dat die stelsel 'n verkeerde waarde invoer.
As gevolg van jitter, kan die sensor 'n spleet mis wat 'n hoër waarde bied, en die hoofrede vir 'n ander fout kan die kernklokfrekwensie van die stm wees.
Die kernklok van Stm is 168 MHz.
Alhoewel hierdie probleem in hierdie projek aangespreek is, is daar 'n holistiese konsep van hierdie model wat nie so 'n hoë frekwensie verskaf nie.
Die ooplusspoed bied 'n baie gladde lyn met slegs 'n paar onverwagte waardes.
Die PID werk ook en bied baie lae motorstabiliteitstyd.
Die motor-PID is getoets teen verskeie spannings wat die verwysingspoed konstant gehou het.
Die spanningsverandering verander nie die spoed van die motor nie, wat aandui dat die PID werk.
Hier is 'n paar segmente van die finale uitset van die PID. a)
Geslote lus @ 110 rpm)
Geslote lus @ 120 rpm Hierdie projek kon nie voltooi word sonder die hulp van my groeplede nie.
Ek wil hulle bedank.
Dankie dat jy na hierdie projek kyk.
Hoop om jou te help.
Sien asseblief uit na meer.
Hou aan seën voor dit :)

HOPRIO groep 'n professionele vervaardiger van kontroleerder en motors, is gestig in 2000. Groep hoofkwartier in Changzhou City, Jiangsu Provinsie.

Vinnige skakels

Kontak ons

WhatsApp: +86 18921090987 
Tel: +86- 18921090987 
Voeg by: No.19 Mahang South Road, Wujin High-tech District, Changzhou City, Jiangsu Provinsie, China 213167
Los 'n Boodskap
KONTAK ONS
Kopiereg © 2024 ChangZhou Hoprio E-Commerce Co., Ltd. Alle regte voorbehou. Werfkaart | Privaatheidsbeleid