Барлығына сәлем, мен басқа жобадан Тахир ул Хакпін.
Бұл жолы 2017-11-407 қолданған МК-ді орындау уақыты келді.
Бұл орта мерзімді бағдарламаның соңы.
Сізге ұнайды деп үміттенемін.
Бұл көптеген тұжырымдамалар мен теорияларды қажет етеді, сондықтан алдымен оған қарап тұрыңыз.
Компьютерлердің пайда болуымен және индустриалды дамыған процестермен, процесті қайта бағыттау әдістерін, ең бастысы, технологиялық процесті бақылау үшін машиналарды пайдалану әдістерін жасау үшін зерттеулер жүргізілді.
Мақсаты - осы процестерге адамның қатысуын азайту, осылайша осы процестердегі қателіктерді азайтады.
Сондықтан \ «Басқару жүйесін басқару \» алаңы болды.
Бақылау жүйесін басқару Технологиялық процестің жұмысын немесе тұрақты және артықшылықты ортаға техникалық қызмет көрсету үшін әртүрлі әдістерді қолдану, қолмен немесе автоматты түрде жұмыс істейді.
Қарапайым мысал - бөлме температурасын бақылау.
Қолмен басқару - бұл қазіргі жағдайларды (сенсор) тексеретін адамның болуына қатысты,
күтілетін (датчик), күтілетін (өңдеу)
және қажетті мәнді алу үшін тиісті шаралар қабылдау (жетек).
Бұл тәсілмен проблема - бұл өте сенімді емес, өйткені ол жұмыстағы қателікке немесе немқұрайдылыққа бейім.
Сонымен қатар, тағы бір проблема - бұл іске қосу процесінің жылдамдығы әрдайым біркелкі бола бермейді, яғни кейде бұл қажет жылдамдыққа қарағанда тезірек болуы мүмкін, кейде ол баяу болуы мүмкін.
Бұл мәселенің шешімі жүйені басқару үшін микро-контроллерді пайдалану болып табылады.
Берілген сипаттамаға сәйкес, микро-контроллер схемада қосылу процесін басқаруға арналған (
кейін талқылау)
, сол, сол, осылайша қажетті мәнді сақтау үшін процесті басқарады.
Бұл процестің пайдасы - бұл процеске адамның араласуының қажеті жоқ.
Сонымен қатар, бұл процестің жылдамдығы дәйекті болып табылады.
Осыған дейін әр түрлі терминдерді анықтау үшін өте маңызды: Кері байланыс: Бұл жүйеде, белгілі бір уақытта енгізу бір немесе бірнеше айнымалыға, соның ішінде жүйенің шығуына байланысты.
Теріс кері байланыс: Бұл жүйеде сілтеме (енгізу)
Кері байланыс ретінде қате, қате алынып тасталады және кіріс фазасы 180 градус құрайды.
Позитивті кері байланыс: Бұл жүйеде
кері байланыс және енгізу кезеңдерде болған кезде сілтеме (енгізу) қателері қосылады.
Қате сигналы: қажетті шығыс пен нақты шығыс арасындағы айырмашылық.
Сенсор: тізбектегі кейбір құрылғыларды анықтау үшін қолданылатын құрылғы.
Әдетте ол қандай да бір өлшеулерде немесе кез-келген жерде өлшенеді.
Процессор: Бағдарламалау алгоритмдері негізінде өңделетін басқару жүйесінің бөлігі.
Біраз кіріс алады және кейбір шығыстар шығарады.
Жетек: Басқару жүйесінде, жетек өнімге әсер ететін микро-контроллер шығарған сигнал негізінде оқиғаларды орындау үшін қолданылады.
Жабық цикл жүйесі: бір немесе бірнеше кері байланыс ілмелері бар жүйе.
Ашық цикл жүйесі: кері байланыс циклінің жүйесі жоқ.
Өсім уақыты: шығыс үшін қажет уақыт сигналдың максималды амплитудасының 10% -дан 90% -ға дейін көтеріледі.
Түсіру уақыты: шығыс үшін қажет уақыт 90% -дан 10% -ға дейін төмендейді.
Шыңы Шыңдар: шыңы төгілуі - бұл ең жоғары деңгейден асатын өнімнің мөлшері (
жүйені өтпелі жауап беру кезінде қалыпты).
Тұрақты уақыт: Тұрақты күйге жету үшін шығыс үшін қажет уақыт.
Тұрақты күйдегі қате: жүйе тұрақты күйге жеткенде нақты шығу және күтілетін шығу арасындағы айырмашылық. Жоғарыдағы суретте басқару жүйесінің өте жеңілдетілген нұсқасы көрсетілген.
Микро-контроллер кез-келген басқару жүйесінің өзегі болып табылады.
Бұл өте маңызды компонент, сондықтан оны жүйенің талаптарына сәйкес мұқият таңдау керек.
Микро-контроллер пайдаланушыдан кіріс алады.
Бұл кіріс жүйеге қажетті шарттарды анықтайды.
Микро-контроллер сенсордан кірісті де алады.
Сенсор шығысқа қосылған және оның ақпараты кіріске қайта оралды.
Бұл кірісті теріс кері байланыс деп те атауға болады.
Теріс кері байланыс бұрын түсіндірілді.
Бағдарламалау негізінде микропроцессор әр түрлі есептеулер мен актераторға шығарады.
Шығарылатын жетекті басқару зауыты осы шарттарды сақтауға тырысады.
Мысал ретінде мотор драйвері, онда машина жүргізушісі және мотор - зауыт болып табылатын мотор жүргізушісі болуы мүмкін.
Сондықтан, мотор белгілі бір жылдамдықпен айналады.
Қосылған сенсор ағымдағы зауыттың күйін оқиды және оны микро контроллерге қайтарады.
Микро-контроллер қайтадан салыстырылады және есептеледі, сондықтан цикл қайталанады.
Процесс қайталану және шексіз, ал микро контроллер қажетті шарттарды сақтай алады.
Мұнда DC Motory жылдамдығын бақылаудың екі негізгі әдісі
: «Өндірістік қосымшаларда» DC қозғалтқышының жылдам бақылау механизмі өте маңызды.
Кейде бізге қалыптыдан жоғары немесе төмен жылдамдық қажет болуы мүмкін.
Сондықтан бізге жылдамдықты басқарудың тиімді әдісі қажет.
Қуат кернеуін басқару жылдамдықты бақылаудың қарапайым әдістерінің бірі болып табылады.
Жылдамдықты өзгерту үшін кернеуді өзгерте аламыз. b)
PID көмегімен PWM басқару: Тағы бір тиімді әдіс - микро-контроллерді пайдалану.
DC Motor Micro C контроллеріне мотор драйвері арқылы қосылған. Мотор драйвері - бұл
PWM (импульсті енді модуляция) IC (
импульсті ені модуляция) , кіріске сәйкес тұрақты ток моторына кіреді.
микро контроллерден 1-сурет.
2: PWM сигналы 1-тарау.
Кіріспе 3 PWM сигналын ескере отырып, PWM жұмысын алдымен түсіндіруге болады.
Ол белгілі бір уақыт аралығында үздіксіз импульстардан тұрады.
Уақыт кезеңі - бұл толқын ұзындығына тең қашықтықта қозғалатын уақыт.
Бұл импульстар тек екілік құндылықтарға ие болуы мүмкін (жоғары немесе төмен).
Бізде тағы екі мөлшер, импульсті ені және кезекші цикл бар.
Импульстің ені - PWM шығысы жоғары уақыт.
Кезекші цикл - бұл уақыт кезеңіндегі импульстің енінің пайыздық мөлшері.
Қалған уақыт кезеңінде шығу аз.
Кезекші цикл мотордың жылдамдығын тікелей басқарады.
Егер тұрақты ток моторы белгілі бір уақыт аралығында оң кернеуді қамтамасыз етсе, ол белгілі бір жылдамдықпен қозғалады.
Егер оң кернеу ұзақ уақытқа берілсе, жылдамдық жоғарылайды.
Сондықтан PWM-дің кезекші циклі импульсті енін өзгерту арқылы өзгертуге болады.
DC Motor-тің кезекші циклін өзгерту арқылы қозғалтқыш жылдамдығын өзгертуге болады.
DC қозғалтқышының проблемалары үшін жылдамдықты басқару: бірінші жылдамдықты басқару әдісімен проблема уақыт өте келе кернеу өзгеруі мүмкін.
Бұл өзгерістер біркелкі емес жылдамдықты білдіреді.
Сондықтан, бірінші әдіс жағымсыз.
Шешім: жылдамдықты бақылау үшін біз екінші әдісті қолданамыз.
Екінші әдісті толықтыру үшін біз PID алгоритмін қолданамыз.
PID пропорционалды интегралды туынды болып табылады.
PID алгоритмінде мотордың ағымдағы жылдамдығы өлшенеді және қажетті жылдамдықпен салыстырылады.
Бұл қате жүйеге сәйкес қозғалтқыштың кезекші циклін өзгерту үшін күрделі есептеулер үшін қолданылады.
Бұл процесс әр циклде бар.
Егер жылдамдық қажетті жылдамдықтан асып кетсе, кезекшілік цикл азаяды, ал жылдамдық қажетті жылдамдыққа қарағанда төмен болған жағдайда, кері цикл жоғарылайды.
Бұл түзету жылдамдыққа жеткенше жасалмайды.
Бұл жылдамдықты үнемі тексеріп, бақылаңыз.
Міне, осы жобада қолданылатын жүйелік компоненттер және әр компоненттің мәліметтеріне қысқаша кіріспе.
STM 32F407: Микро-контроллер ST микроқарсағымен жасалған.
Ол қол кортексінде жұмыс істейді. М сәулеті.
Бұл оның отбасын тәулік бойы 168 МГц жиілігімен басқарады.
Мотор драйвері L298N: Бұл IC қозғалтқышты іске қосу үшін қолданылады.
Оның екі сыртқы кірісі бар.
Біреуі микро контроллерден.
Микро-контроллер оған PWM сигналын ұсынады.
Мотор жылдамдығын импульсті ені бойынша реттеу арқылы реттеуге болады.
Оның екінші кірісі - қозғалтқышты басқару үшін қажет кернеу көзі.
DC Motor: DC қозғалтқышы тұрақты ток көзінде жұмыс істейді.
Бұл экспериментте DC қозғалтқышы мотор драйверіне қосылған фотоэлектрлік байланысы арқылы жұмыс істейді.
Инфрақызыл сенсор: инфрақызыл сенсор іс жүзінде инфрақызыл мәйіттер болып табылады.
Ол әртүрлі тапсырмаларды орындау үшін қолдануға болатын инфрақызыл толқындарды жібереді және алады.
IR кодтағыштың оптикалық муфтасы 4N35: оптикалық муфт - бұл тізбектің және жоғары кернеу бөлігін және жоғары кернеу бөлігін оқшаулау үшін қолданылатын құрылғы.
Атауы айтқан кезде, ол жарық негізінде жұмыс істейді.
Төмен кернеудің бөлігі сигналға ие болған кезде, ағымдағы жоғары кернеу бөлігіндегі ағып кетеді.
Жүйе - жылдамдықты басқару жүйесі.
Жоғарыда айтылғандай, жүйе пропорционалды интегралды және туынды датполикті қолдану арқылы жүзеге асырылады.
Жылдамдықты басқару жүйесінде жоғарыдағы компоненттер бар.
Бірінші бөлім - жылдамдық сенсоры.
Жылдамдық сенсоры - инфрақызыл таратқыш және ресивер тізбегі.
Қатты U-тәрізді саңылаудан өткен кезде сенсор аз күйге түседі.
Әдетте бұл жоғары деңгейде.
Сенсордың шығуы төмен өту сүзгісіне қосылған, егер сенсордың күйі өзгерген кезде өтпелі туындайтын абаттандырылуды жою үшін қосылады.
Төмен өту сүзгісі резисторлар мен конденсаторлардан тұрады.
Мәндер қажет болған жағдайда таңдалды.
Пайдаланылған конденсатор 1100NF, ал қолданылған қарсылық шамамен 25 Ом құрайды.
Төмен өту сүзгісі қосымша оқулар мен қоқыс мәндеріне әкелуі мүмкін қажетсіз өтпелі жағдайларды жояды.
Төмен өту сүзгісі, содан кейін конденсатор арқылы STM микро-контроллерінің кіріс сандық PIN кодымен шығады.
Қалған бөлігі - STM микро-контроллері берген PWM басқаратын мотор.
Бұл параметр оптикалық муфталы IC көмегімен оқшауланған.
Оптикалық муфтада IC бумасындағы жарық шығаратын жарық диоды бар, ал кіріс терминалында жоғары импульс көрсетілген кезде, ол шығыс терминалын қысқа тұйықталған.
Кіріс терминалы PWM-ге оптикалық муфтаға қосылған жарық диодының токын шектейтін резистор береді.
Ашылмалы резистор шығысқа қосылады, осылайша терминал қысқа тұйықталған кезде, кернеу ашылмалы резисторда пайда болады және резистордағы терминалға қосылған PIN-код жоғары күй алады.
Фотоэлектрлік муфтаның шығуы PIN кодының биіктігін сақтайтын мотор драйверінің IC1-ге қосылған.
PWM кезекші циклі оптикалық муфталар кірісінде өзгерген кезде, мотор драйвері моторды ауыстырады және қозғалтқыштың жылдамдығын басқарады.
Моторға PWM бергеннен кейін, мотор драйвері әдетте 12 вольттың кернеуін қамтамасыз етеді.
Содан кейін мотор драйвері қозғалтқыштың жұмысына мүмкіндік береді.
Бұл қозғалтқыштың жылдамдығын реттеу жобасын жүзеге асыруда қолданған алгоритмін енгізіңіз.
Мотордың PWM бір таймермен қамтамасыз етілген.
Таймердің конфигурациясы жасалып, PWM беру үшін орнатылады.
Мотор басталған кезде ол мотор білігіне бекітілген саңылауды бұрады.
Саңырау сенсорлық қуыстан өтеді және төмен импульсті шығарады.
Төмен импульстарда код басталады және саңылауды күтеді.
Саңылау жоғалып кеткеннен кейін сенсор жоғары күйді қамтамасыз етеді, ал таймер есептеледі.
Таймер бізге екі саңылаудың арасында уақыт береді.
Енді, тағы бір төмен импульс пайда болған кезде, егер мәлімдеме қайтадан орындалса, келесі өсіп келе жатқан жиекті күтіп, есептегішті тоқтатыңыз.
Жылдамдықты есептегеннен кейін, жылдамдық пен нақты сілтеме мәні мен нақты сілтеме мәнін есептеңіз және PID беріңіз.
PID берілген сәттен анықтама мәніне жететін кезекші цикл мәнін есептейді. Бұл мән CCR (
үшін беріледі
Салыстыру регистрі)
, қатеге байланысты таймердің жылдамдығы азаяды немесе жоғарылайды.
Atollic Truestudio коды орындалды.
STM студиясын жөндеу үшін орнату қажет болуы мүмкін.
Жобаны STM студиясында импорттаңыз және көргіңіз келетін айнымалыларды импорттаңыз.
Аздап өзгеріс 2017-11-4xx құрайды.
Сағат жиілігін дәл H файлына 168 МГц-ке дейін өзгертіңіз.
Код үзіндісі жоғарыда келтірілген.
Қорытынды: мотордың жылдамдығы PID көмегімен басқарылады.
Алайда, қисық сызық тегіс сызық емес.
Мұның көптеген себептері бар: Датчик төмен өту сүзгісіне қосылғанмен, олар белгілі бір ақаулармен байланысты болса да, олар сызықтық резисторлардың және аналогтық электронды құрылғылардың кейбір мүмкін емес себептеріне байланысты, мотор кішкене кернеу немесе PWM-де біркелкі айнала алмайды.
Ол жүйенің дұрыс емес мәнге кіруіне әкелуі мүмкін арттарды ұсынады.
Jitter арқасында сенсор жоғары мән беретін кейбір саңғышты жіберіп алуы мүмкін, ал басқа қатенің негізгі себебі СТМ-дің негізгі жиілігі болуы мүмкін.
СТМ-нің негізгі сағаты - 168 МГц.
Бұл жобада бұл проблема шешілгенімен, бұл модельдің осындай жоғары жиілікті бермейтін тұтас тұжырымдамасы бар.
Ашық цикл жылдамдығы күтпеген мәндермен өте тегіс сызықты ұсынады.
PID сонымен қатар жұмыс істейді және моторлы тұрақтылық уақытының өте төмендігін ұсынады.
Моторлы PID анықтамалық жылдамдықты тұрақты сақтаған түрлі кернеулерде сыналды.
Кернеудің өзгеруі қозғалтқыштың жылдамдығын өзгертпейді, бұл PID жұмыс істеп тұрғанын білдіреді.
Мұнда PID соңғы нәтижесінің бірнеше сегменттері бар. A)
Жабық цикл @ 110 RPMB)
Жабық ілмек @ 120 RPMthis жобасы топ мүшелерінің көмегінсіз аяқталмады.
Мен оларға алғыс айтқым келеді.
Осы жобаны көргеніңіз үшін рахмет.
Сізге көмектесуге үміттенемін.
Өтінемін, көбірек күтіңіз.
Бұған дейін бата беріңіз :)