Arduino 2-in-1 модельдік пойыз контроллері: 4 қадам
Arduino 2-in-1 модельдік пойыз контроллері: 4 қадам
Anonim
Arduino 2-in-1 модельдік пойыз контроллері
Arduino 2-in-1 модельдік пойыз контроллері

Қырық жыл бұрын мен бірнеше достарға арналған оп-амп негізіндегі пойыз дроссельін жасадым, содан кейін шамамен төрт жыл бұрын мен оны PIC микроконтроллерінің көмегімен жаңарттым. Бұл Arduino жобасы PIC нұсқасын қайта жасайды, сонымен қатар дроссель, тежегіш және бағытты басқару үшін қолмен қосқыштардың орнына Bluetooth қосылымын пайдалану мүмкіндігін қосады. Мен ұсынған конструкция 12 вольтты теміржол қозғалтқышына арналған болса да, оны басқа тұрақты ток қозғалтқышын басқарудың басқа қосымшаларына оңай өзгертуге болады.

1 -қадам: Импульстік ен модуляциясы (PWM)

Импульстің ені модуляциясы (PWM)
Импульстің ені модуляциясы (PWM)

PWM -мен таныс емес адамдар үшін бұл естілгендей қорқынышты емес. Қозғалтқышты басқарудың қарапайым қосымшасы үшін біз нені білдіреді, біз қандай да бір жиіліктегі квадраттық толқын шығарамыз, содан кейін біз жұмыс циклін өзгертеміз. Жұмыс циклы толқындық кезеңмен салыстырғанда шығудың логикалық жоғары уақытқа қатынасы ретінде анықталады. Сіз мұны жоғарыдағы диаграммада 10% жұмыс циклінде жоғарғы толқын пішіні, 50% жұмыс циклінде орта толқын пішіні және 90% жұмыс циклінде төменгі толқын пішіні анық көре аласыз. Әр толқын пішінінде орналасқан үзік сызық қозғалтқыш көретін тұрақты кернеуді көрсетеді. Arduino -да PWM мүмкіндігі бар екенін ескере отырып, тұрақты ток қозғалтқышын басқарудың бұл түрін құру өте қарапайым. PWM -ді қолданудың тағы бір артықшылығы - бұл қозғалтқышты тікелей тұрақты токты пайдалану кезінде пайда болатын жүктемеден сақтауға көмектеседі. PWM -дің бір кемшілігі - кейде PWM жиілігінде қозғалтқыштан естілетін шу болады.

2 -қадам: Жабдық

Аппараттық құрал
Аппараттық құрал
Аппараттық құрал
Аппараттық құрал
Аппараттық құрал
Аппараттық құрал

Бірінші суретте қосқыштар мен LM298 қозғалтқыш модулінің Arduino қосылымдары көрсетілген. Arduino ішінде әлсіз тартылатын резисторлар бар, сондықтан ажыратқыштар үшін тартылатын резистор қажет емес. Бағыт қосқышы - SPST (бір полюсті бір лақтыру) қарапайым қосқышы. Дроссель мен тежегіш қосқыштары әдетте ашық, бір сәттік контактілі түймелер түрінде көрсетіледі.

Екінші суретте Bluetooth модулі мен LM298 қозғалтқыш модулі үшін Arduino қосылымдары көрсетілген. Bluetooth TXD шығысы Arduino RX сериялық кірісіне тікелей қосылады.

Үшінші сурет-L298N қос H-көпір модулі. LM298 модулінде секіргіш қосуға болатын борттық 5 вольтты реттегіш бар. Бізге Arduino мен Bluetooth үшін +5 вольт қажет, бірақ қозғалтқышты +12 вольтты басқарғымыз келеді. Бұл жағдайда біз +12 вольтты L298N « +12 В қуатына» қосамыз және біз «5В қосу» қосқышын орнында қалдырамыз. Бұл 5 вольтты реттегішке модульдегі «+5 қуат» қосылымына шығуға мүмкіндік береді. Оны Arduino мен Bluetooth -ға қосыңыз. +12 кірісі мен +5 шығысы үшін жерге қосу сымдарын «қуат GND» модуліне қосуды ұмытпаңыз.

Біз қозғалтқыштың шығыс кернеуі Arduino шығарған PWM -ге байланысты өзгергенін қалаймыз, тек толық немесе толық емес. Ол үшін біз «ENA» мен «ENB» секіргіштерін алып тастап, Arduino PWM шығысын модульдегі «ENA» желісіне қосамыз. Есіңізде болсын, нақты қосқыш түйреуіш тақтаның шетіне жақын орналасқан («кіріс» түйреуіштерінің жанында). Әр қосу үшін артқы түйреуіш +5 вольтты құрайды, сондықтан біз оған қосылмағандығымызға көз жеткізгіміз келеді.

Модульдегі «IN1» және «IN2» түйреуіштері тиісті Arduino түйреуіштеріне қосылған. Бұл түйреуіштер қозғалтқыштың бағытын басқарады, иә, Arduino -ға модульге қосқышты қосудың орнына оларды басқаруға мүмкіндік беретін жақсы себеп бар. Мұның себебін бағдарламалық қамтамасыз етуді талқылау кезінде көреміз.

3 -қадам: Bluetooth модулі

Bluetooth модулі
Bluetooth модулі

Мұнда көрсетілген сурет қол жетімді Bluetooth модульдеріне тән. Сатып алуды іздеу кезінде сіз «HC-05» және HC-06 »терминдерін іздей аласыз. Екеуінің арасындағы айырмашылық микробағдарламада және әдетте тақтадағы түйреуіштер санында. Жоғарыдағы сурет HC-06 модулінде және қарапайым конфигурацияға мүмкіндік беретін жеңілдетілген микробағдарламамен бірге келеді. Ол сондай -ақ тек «құл» Bluetooth құрылғысы ретінде орнатылған. Қарапайым тілмен айтқанда, ол тек «Мастер» құрылғысының командаларына жауап бере алады және командаларды өз бетінше шығара алмайды. HC-05 модулінде конфигурацияның көбірек мүмкіндіктері бар және оларды «Мастер» немесе «Құл» құрылғысы ретінде орнатуға болады. HC-05 әдетте HC-06 үшін жоғарыда көрсетілген төртеудің орнына алты түйреуішке ие. Штаттық түйреуіш маңызды емес, бірақ кез келген конфигурацияны жасағыңыз келсе, кілт түйреуіші (кейде «EN» сияқты басқа атаулармен аталады) қажет. Әдетте, егер сіз 9600 стандартты жіберу жылдамдығымен жақсы болсаңыз және модульге нақты атау беруді қаламасаңыз, модульдерге ешқандай конфигурация қажет емес. Менде бірнеше жобалар бар, мен оларды қолданамын, сондықтан мен оларға сәйкес атау бергім келеді.

Bluetooth модульдерін конфигурациялау үшін RS-232 сериялық портына немесе USB портына интерфейс сатып алу немесе құру қажет. Мен бұл жазбада қалай құру керектігін айтпаймын, бірақ сіз Интернеттен ақпарат таба аласыз. Немесе интерфейсті сатып алыңыз. Конфигурация пәрмендері AT модификацияларын телефон модемдерімен бұрын қолданылғандай пайдаланады. Мен мұнда әр модуль түріне арналған AT командаларын қамтитын пайдаланушы нұсқаулығын тіркедім. Айта кету керек, HC-06 UPPERCASE командаларын қажет етеді және пәрмен жолы 1 секунд ішінде аяқталуы керек. Бұл дегеніміз, жіберу жылдамдығын өзгерту сияқты кейбір ұзын тізбектерді терминалды бағдарламаға қиып қою керек немесе жіберу үшін мәтіндік файлдарды орнату қажет болады. UPPERCASE талабы конфигурация пәрмендерін жіберуге тырыссаңыз ғана болады. Тұрақты байланыс режимі кез келген 8 биттік деректерді қабылдай алады.

4 -қадам: Бағдарламалық қамтамасыз ету

Бағдарлама қолмен де, Bluetooth үшін де өте қарапайым. Bluetooth нұсқасын таңдау үшін «#define BT_Ctrl» мәлімдемесін алып тастаңыз.

Мен PIC кодын жазған кезде мен PWM жиілігімен тәжірибе жүргіздім және ақырында 500 Гц жиілігіне тоқтадым. Егер мен жиілік тым жоғары болса, онда LM298N модулі импульстарға жеткілікті тез әсер ете алмайтынын білдім. Бұл кернеудің шығысы сызықты емес екенін және үлкен секірулерді алатынын білдірді. Arduino -да PWM командалары бар, бірақ олар сізге жиілікті емес, жұмыс циклін өзгертуге мүмкіндік береді. Бақытымызға орай, жиілік шамамен 490-Гц құрайды, сондықтан мен PIC-те қолданылған 500-Гц-ке жақын.

Пойыз дроссельдерінің «ерекшеліктерінің» бірі - бұл нағыз пойыздың қалай жұмыс істейтінін имитациялау үшін жылдамдық пен тежеудің серпін сезімі. Мұны істеу үшін бағдарламалық жасақтаманың қолмен шығарылатын нұсқасына қарапайым уақыт кешігуі енгізіледі. Көрсетілген мәнмен 0 -ден 12 вольтке немесе 12 вольттан нөлге дейін айналу үшін шамамен 13 секунд қажет. Кешіктіруді ұзақ немесе қысқа уақытқа оңай өзгертуге болады. Импульстің әсер етпейтін жалғыз жағдайы - Бағытты ауыстыру. Қорғаныс мақсатында PWM жұмыс циклы бұл қосқыш өзгерген сайын бірден 0% -ға орнатылады. Бұл шын мәнінде Бағыт қосқышын төтенше тежегіш ретінде екі есе арттырады.

Бағыт қосқышының дереу жұмыс істеуін қамтамасыз ету үшін мен оның кодын үзу өңдегішіне қойдым. Бұл сонымен қатар «өзгеруді үзу» функциясын қолдануға мүмкіндік береді, сондықтан өзгерістің төменнен жоғарыға немесе жоғарыдан төменге дейін болуы маңызды емес.

Бағдарламалық жасақтаманың Bluetooth нұсқасы Алға, Кері, Тежеу және Дроссель функцияларын іске қосу үшін бір әріптік командаларды қолданады. Шындығында, алынған командалар қолмен қосқыштарды ауыстырады, бірақ бірдей жауап береді. Мен Bluetooth басқару үшін қолданатын қосымшаны келесі прототиптер «Bluetooth сериялық контроллері» деп атайды. Бұл виртуалды пернетақтаны конфигурациялауға және әр перне үшін жеке командалық жолдар мен атауларды орнатуға мүмкіндік береді. Бұл сізге қайталау жиілігін орнатуға мүмкіндік береді, сондықтан мен тежегіш пен дроссель түймелерін шамамен 14 секунд серпін беру үшін 50 мс етіп қойдым. Мен Алға және Кері түймелері үшін қайталау функциясын өшірдім.

Бұл осы пост үшін. Менің басқа нұсқаулықтарымды қараңыз. Егер сіз PIC микроконтроллерінің жобаларына қызығушылық танытсаңыз, менің веб -сайтымды қараңыз www.boomerrules.wordpress.com

Ұсынылған: