Мазмұны:

Ардуиноға арналған роботты жіп диспенсері: 8 қадам (суреттермен)
Ардуиноға арналған роботты жіп диспенсері: 8 қадам (суреттермен)

Бейне: Ардуиноға арналған роботты жіп диспенсері: 8 қадам (суреттермен)

Бейне: Ардуиноға арналған роботты жіп диспенсері: 8 қадам (суреттермен)
Бейне: Learn Arduino in 30 Minutes: Examples and projects 2024, Шілде
Anonim
Image
Image

Неліктен моторлы құрал

3D принтерлердің жіпшесі - әдетте берік - экструдер тартылады, ал орам принтерге жақын орналасқан, айналдыруға еркін. Қолдану деңгейіне байланысты материалдық мінез -құлықтың маңызды айырмашылығын байқадым. Жіптің жаңа (толық) катушкасы жақсы ағып жатыр, бірақ экструдер қолданатын күш салыстырмалы түрде маңызды болуы керек: салмағы кемінде 1,5 кг.

Экструдерлік қозғалтқыш (көп жағдайда Nema17 қадамы) жұмысты орындау үшін жеткілікті күшке ие, бірақ жұмыс кезінде жіптің ыстық жаққа қарай итеретін экструдердің екі берілісі жіптің бөлшектерін күштердің әсерінен жинайды; бұл саптаманың бітелуін болдырмау үшін экструдерге жиі техникалық қызмет көрсетуді қажет етеді. Бұл бөлшектер тамақтанған кезде таза жіптен ажырап, араласып кетуге бейім, бұл саптаманың проблемаларын және саптаманың жиі тозуын арттырады; Бұл диаметрі 0,3 мм саптамалармен жиі кездеседі.

Жіптің орамы жартылай немесе одан көп қолданылғанда оның спиральдары кішірейеді, ал кейбір орта жағдайында жіп жиі сынуға бейім болады. Ұзақ басып шығару тапсырмалары сенімсіз және стресстік болады; Мен принтерді бір түн бойы жалғыз жұмыс жасай алмай, оны бақылаусыз қалдыра алмаймын. Осылайша, мотор фигуралары арқылы жіптің берілуін басқару көптеген мәселелерді шешеді.

Жинақ Tindie.com сайтында қол жетімді

1 -қадам: Жинақтың мазмұны

Жинақтың мазмұны
Жинақтың мазмұны
Жинақтың мазмұны
Жинақтың мазмұны

Жинаққа моторлы жіп диспенсерін жинауға арналған 3D басып шығарылған барлық бөлшектер мен механика кіреді. Оның орнына екі қосымша бөлік бар: қозғалтқыш және қозғалтқышты басқару тақтасы.

Менің қондырғымда мен 12 вольтты McLennan тісті щеткалы қозғалтқышты қолдандым, бірақ 37 мм диаметрлі кез келген қозғалтқыш қозғалтқыш тірегіне дұрыс орналасады.

Үздік спектакльдерге Infineon TLE94112LE Arduino қалқанымен қол жеткізуге болады (мұнда толық шолу); бұл тұрақты ток қозғалтқышының басқару тақтасы бір мезгілде 6 түрлі роботтық диспенсер жинағын қолдай алады.

Мен бүкіл жүйені Arduino UNO R3 және Arduino үйлесімді тақтасында Infineon XMC1100 Boot жиынтығында сынап көрдім және жүйе микроконтроллер тақталарына өте жақсы жауап берді.

TLE94112LE қалқанын қолдану ұсынылады, бірақ маңызды емес. Arduino үшін кез келген тұрақты ток қозғалтқышы - оның ішінде сіздің жеке жобаңыз! - бұл құралмен жақсы жұмыс жасай алады

Жинақ екі компоненттен тұрады, өйткені екі бөлік бірге жұмыс істеуге арналған. Негізгі платформа төрт бос доңғалақты мойынтіректерде айналатын жіп орамына қолдау көрсетеді. Негізі салмақ сенсорына бекітілген, ол айналу механизмін басқарады, сонымен қатар жіптің жағдайын бақылайды: салмақ, метр және пайыз. Көптеген ақпарат пен толық командалық жинаққа Arduino -дан сериялық терминал арқылы қол жеткізуге болады.

Сізге қажет құралдар

Құрастыруды аяқтау үшін сізге кейбір бөлшектерге берік пластикалық желім, бұрағыш пен Аллен бұрандаларының жиынтығы қажет.

2 -қадам: жоба және дизайн

Жоба және дизайн
Жоба және дизайн
Жоба және дизайн
Жоба және дизайн
Жоба және дизайн
Жоба және дизайн

Бұл жоба 3D принтерлі жіп тарату сериясының үшінші эволюциясы Бірнеше уақыт бұрын мен 3D принтер экструдерімен тартылған кезде жіптің ағынын оңтайландыру үшін айналмалы негіз құрдым.

Екінші модельде Arduino тақтасының көмегімен жіптің қолданылуын нақты уақытта бақылауға арналған салмақ сенсоры болды. Бұл соңғы жоба 3D принтер жұмысының қажеттілігіне байланысты жіптің автоматты шығарылуын қамтиды. Ол экструдер жіпті тарта бастаған кезде салмақтың виртуалды өзгеруіне негізделген. Бұл оқиға микроконтроллерді салмақ сенсоры арқылы іске қосады және моторлы жіптің орамы бірнеше дюймдік материалды босатады, содан кейін баяулайды және тоқтайды.

Компоненттер STL форматында экспортталды және 3D басып шығарылды, содан кейін тазартылды және бірге жиналды. Мен қозғалыс бөлігін негізге туралау үшін реттелетін қолдау жасадым. Ұзын алюминий рельсті Arduino мен мотор қалқанына қолдау көрсету үшін қолданылған, ол бүкіл құралды ықшам және қозғалуға ыңғайлы етеді.

Дизайн жасай отырып, мен бірнеше болжамдарға сүйендім:

  • Автоматтандырылған қозғалтқышты қарапайым және қайта шығаруға оңай ету
  • Оны жасау үшін 3D емес басып шығарылатын компоненттердің санын мүмкіндігінше азайтыңыз
  • Басып шығару кезінде экструдерге түсетін кернеуді мүмкіндігінше азайтыңыз
  • Бағасы төмен микроконтроллер тақтасын пайдаланыңыз
  • Жіптің тұтынылуы мен жіптің берілуін бақылауда ұстау үшін салмақ жүктеме сенсорын қолданыңыз.

Бұл мен жеткен нәтиже.

3 -қадам: негізді жинау

Негізді жинау
Негізді жинау
Негізді жинау
Негізді жинау
Негізді жинау
Негізді жинау

Бірінші қадам - негізді салмақ сенсорымен жинау.

  1. Кішкене мойынтірек осінің түтігін мойынтірек тесігіне салыңыз
  2. Екі бөлгіш дискіні мойынтіректің екі жағына қойыңыз
  3. Саңылауларды туралайтын «U» өлшемді подшипник тіреуішінің құрамдас бөліктерін енгізіңіз
  4. Аллен бұрандасын бір жағына, ал шайба мен гайканы екінші жағына гайканы тым көп күш салмай жабыңыз

Төрт мойынтірек тіреуіндегі әрекетті қайталау керек. Содан кейін құрастыруды тексеріңіз: мойынтіректер еркін айналуы керек.

Енді Аллен бұрандаларымен төрт тірек тесіктері бар жоғарғы негіздегі төрт тіреуіш тіректерді бекітіңіз. Мойынтіректерді параллель ұстау үшін оларды туралаңыз. Жіптің орамының еніне байланысты қашықтықты реттеңіз.

Келесі қадам - төменгі және жоғарғы негізді ұстап тұратын салмақ сенсорының штангасын жинау. Салмақ сенсорының екі жағында екі түрлі Аллен бұрандасы бар және оны дұрыс бағыттаған кезде максималды салмақ белгісі оқылатын етіп бағыттау керек. Төменгі негізде салмақ сенсоры A/D күшейткішін бекіту үшін қосымша екі бүйірлік тесік бар. HX711 IC негізіндегі күшейткіш сенсорлық мәліметтер парағында көрсетілгендей төрт сым арқылы Arduino тақтасына қосылады және қосылады.

Соңғы қадам - төменгі бөлікке бекітілген салмақ сенсорының үстіңгі негізін жинау.

Бірінші компонент орнатылды!

4 -қадам: Қозғалтқыш қозғалтқыш бөліктерін жинау

Қозғалтқыш қозғалтқышының бөлшектерін жинау
Қозғалтқыш қозғалтқышының бөлшектерін жинау
Қозғалтқыш қозғалтқыш бөліктерін жинау
Қозғалтқыш қозғалтқыш бөліктерін жинау
Қозғалтқыш қозғалтқыш бөліктерін жинау
Қозғалтқыш қозғалтқыш бөліктерін жинау

Қозғалтқышты қозғалтқышты жинаудың қарапайым процедурасы - ең маңызды төрт компонентті бөлек жинау, содан кейін соңғы құрылысты аяқтау:

Қозғалтқыш беріліс қорабындағы берілісті тұрақты қозғалтқыш

Тұрақты ток қозғалтқышы құрылым тірегінің орталық бөлігіне орнатылуы керек; Қозғалтқышты бұрамас бұрын, қозғалтқышты ұстайтын екі қолды және үлкен редукторды дұрыс туралау үшін, редуктордың қай жағына қою керектігін шешу керек.

Іске қосылған үлкен беріліс

Үлкен редукторды төрт Аллен бұрандасы бар конустық блокпен бұрау керек. Бұл беріліс айналмалы осьте гайкалармен бітеледі; конустық бөлік басқа кесілген конустық блоктың ішіндегі ұқсас бекіткіш гайкалармен екінші жағына бекітілген жіптің катушкасын ұстайды. Бұл шешім қозғалатын механизмді орнында ұстап қана қоймай, барлық салмақты негізге бағыттайды және бұл жүйенің таразы.

Құлып ұстағыш

Бұл қысқартылған конустық блок, жетекші беріліспен бірге бекіткіш жағы қозғалыс механизмін жіптің катушкасына бекітеді. Әдеп бойынша, бұл жіп орамы, ол екі қолдың тірегі екінші жағынан еркін қозғалатын кезде ғимаратты аяқтайды.

Суретте көрсетілгендей, катушка ұстағыш екі бөліктен тұрады. Алдымен M4 гайкасын блоктың үлкен бөлігіне салыңыз, содан кейін блоктарды бірге сақтай отырып, екінші бөлікті (қақпақты) жабыстырыңыз. Гайка бұрандалы оське бұралатын бекітпе ұстағышының ішінде қамауда қалады.

Мойынтіректер қорабы

Мойынтірек қорапшасының екі функциясы бар: беріліс қорабына жақсы қолдау көрсету және тегіс және үнсіз қозғалысты қамтамасыз ету. Мойынтіректер қорабын жинау үшін мына қарапайым қадамдарды орындаңыз:

  1. Бірінші M4 гайкасын бұрандалы катушка ұстағыш осінің екі ұшының біріне бұраңыз
  2. Бірінші мойынтіректі салыңыз
  3. Бөлгішті салыңыз
  4. Екінші мойынтіректі салыңыз
  5. Екінші гайканы бұрап, оны қалыпты түрде бекітіңіз. Ішкі пластикалық сепаратор заттарды ұзақ уақыт пайдалану үшін орнында ұстауға жеткілікті күшке қарсы тұрады.
  6. Жиналған мойынтіректерді мойынтіректер қорабына салыңыз. Пластикалық бөлшектерді тазарту кезінде қораптың ішкі бөлігін тым көп кеңейтпеу үшін жақсы нәтиже беру үшін оны мәжбүрлеу керек.

Біз соңғы компоненттерді жинауға дайынбыз!

5 -қадам: Қозғалтқыштың құрастырылуын аяқтау

Қозғалтқыштың құрастырылуын аяқтау
Қозғалтқыштың құрастырылуын аяқтау
Қозғалтқыштың құрастырылуын аяқтау
Қозғалтқыштың құрастырылуын аяқтау
Қозғалтқыштың құрастырылуын аяқтау
Қозғалтқыштың құрастырылуын аяқтау

Біз құрылымды жинауды аяқтаймыз, содан кейін тест қозғалысына көшуге болады. Енді сізге бірнеше желім қажет. Мойынтірек қорапшасы - алдыңғы қадамда жиналған - екі білікті қозғалтқыш тірегінің қорап ұстағыш саңылауына салынып, қорап қақпағын бұрап алмас бұрын желімделген болуы керек.

Ескерту: қораптың қақпағын жаппаңыз, тек бұрап алыңыз. Қақпақ шаңнан қорғану үшін маңызды және кез келген техникалық қызмет көрсету кезінде алынбалы болуы керек.

Жетек берілісін қосудан бұрын (үлкенірек) кіші бөлгіш сақинаны қосыңыз: ол үлкен редукторды қозғалтқыш қондырғысын бекіту үшін шайбаның рөлін атқаратын қозғалтқыш берілісімен туралайды.

Содан кейін қозғалтқыш білігіне жүргізуші берілісін (кіші) салыңыз. Тұрақты ток қозғалтқышы арқылы берілісті айналдыру үшін қозғалтқыштың тегіс жағы бар екенін, сонымен қатар орталық тесігі бар екенін ескеріңіз.

Соңғы қадамда суретте көрсетілгендей үлкен жетекті берілісті салыңыз және оны M4 екі жаңғақпен бұрандалы оське бекітіңіз.

Механиканың құрылысы аяқталды!

6 -қадам: Бонус: Жинақты басқаруға қолдауды қалай реттедім

Бонус: Жинақты басқаруға қолдауды қалай реттедім
Бонус: Жинақты басқаруға қолдауды қалай реттедім
Бонус: Жинақты басқаруға қолдауды қалай реттедім
Бонус: Жинақты басқаруға қолдауды қалай реттедім
Бонус: Жинақты басқаруға қолдауды қалай реттедім
Бонус: Жинақты басқаруға қолдауды қалай реттедім

Жинақты орнында ұстау үшін мен негізді де, қозғалыс құрылымын да қолдау үшін екі алюминий шаршы түтікке негізделген өте қарапайым құрылым жасадым. Негіз екі рельстің төрт бұрандамен бекітілген (ұзындығы шамамен 25 см) және жіптің орамасын кіргізу мен алуды жеңілдету үшін қозғалтқыштың қозғалмайтын бос жерлері бар.

Кез келген адам жұмыс үстелінің қалай ұйымдастырылғанына байланысты өз шешімін таңдай алады.

7 -қадам: Arduino -ға сымдар мен қосылу

Image
Image
Ардуиноға сымдар мен қосылу
Ардуиноға сымдар мен қосылу

Kit мазмұны қадамында түсіндірілгендей, мен Arduino үшін Infineon TLE94112LE DC қозғалтқыш қалқанын қолдандым және қозғалтқышты Arduino UNO R3 және Infineon XMC110 жүктеу жинағында сынап көрдім.

Егер сіз қозғалтқышты басқаратын болсаңыз (PWM мүмкіндіктері қажет), сіз қалаған тұрақты ток контроллер тақтасымен, нұсқауларды қалқанның техникалық сипаттамаларына бейімдеу жеткілікті.

TLE04112LE Arduino Shield туралы жазба

Мен Arduino үшін басқа қозғалтқышты басқару қалқандарымен кездескен шектеулердің бірі - олар сол микроконтроллердің мүмкіндіктерін пайдаланады (яғни PWM және GPIO түйреуіштері); бұл сіздің тақта осы міндеттерге арналғанын білдіреді, ал басқа мақсаттар үшін тек басқа ресурстар (MPU және GPIO) қол жетімді.

Жолды тестілеуге арналған TLE94122LE Arduino қалқанына қолды қою мүмкіндігіне ие, тақтаның IC -тің ең басты артықшылығы - оның толықтығы. Arduino тақтасы қалқанға SPI хаттамасы арқылы тек екі түйреуішпен хабарласады. Қалқанға жіберілетін әрбір команда MPU ресурстарын тұтынусыз TLE94112LE IC автономды түрде өңделеді. Infineon тақтасының тағы бір керемет ерекшелігі - PWM бағдарламаланатын үш арнасы бар алты щеткамен қозғалтқышты басқару мүмкіндігі. Бұл Arduino бір немесе бірнеше қозғалтқышты орната алады, оларды іске қосады және басқа тапсырмалар бойынша жұмысты жалғастыра алады дегенді білдіреді. Бұл қалқан бір мезгілде алты түрлі жіп орамына қолдау көрсетуге өте ыңғайлы екенін көрсетті, бұл MPU -ға жүктелген міндеттердің бірі ғана. Ардуино + қалқанының көмегімен микроконтроллердің шығынына әсер ететін алты түрлі жіп катушкаларын басқару мүмкіндігін қарастыру. әрбір еуропалық контроллерде 5 евродан төмен.

Салмақ сенсоры

Бірнеше эксперименттер жасағаннан кейін мен бүкіл жүйені - бақылау мен автоматты түрде беруді бір сенсормен басқаруға болатынын көрдім; жүктеме ұяшығы (салмақ сенсоры) бізге қажет барлық ақпаратты беретін жіптің катушкаларының салмағының өзгеруін динамикалық түрде өлшей алады.

Мен жүктеме ұяшықтары датчиктерін басқаруға арналған IC үшін HX711 AD күшейткішіне негізделген шағын тақтаймен бірге 0-5 кг диапазонындағы арзан жүктеме ұяшығын қолдандым. Интерфейстік проблемалар болған жоқ, себебі ол жақсы жұмыс істейтін Arduino кітапханасы бар.

Жабдықты орнатудың үш қадамы

  1. Қалқанды Arduino тақтасының үстіне немесе Infineon XMC110 жүктеу жинағына салыңыз
  2. Қозғалтқыш сымдарын қалқанның Out1 және Out2 бұрандалы қосқыштарына қосыңыз
  3. HX711 AD салмақ сенсорының күшейткішінің қуаты мен сигналдарын Arduino түйреуіштеріне қосыңыз. Бұл жағдайда мен 2 және 3 түйреуіштерді қолдандым, бірақ барлық бос түйреуіштер жақсы.

Ескерту: 8 және 10 -беттер SPI қосылымы үшін TLE94113LE қалқанымен сақталған

Бар болғаны! Бағдарламалық жасақтаманы орнатуға дайынсыз ба? Жалғастыру.

8 -қадам: Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы

Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы
Бағдарламалық қамтамасыз ету және басқару пәрмендері жинағы

Толық құжатталған бағдарламалық қамтамасыз етуді GitHub 3DPrinterFilamentDispenserAndMonitor репозиторийінен жүктеуге болады.

мұнда біз ең маңызды бөліктер мен басқару командаларын ғана қарастырамыз.

Arduino UNO -да бар түйреуіштердің санына байланысты мен жүйені USB сериялық терминалы арқылы басқаруға шешім қабылдадым; Әрбір моторлы қондырғы салмақ сенсорына негізделгендіктен, алты түрлі жіп диспенсерін басқару алты салмақ сенсорынан деректерді оқуды талап етеді. Әрбір жүктеме ұяшығы екі түйреуішті «тұтынады», 0 және 1 түйреуіш серия үшін (Tx/Rx), ал 8 және 10 түйректер TLE94112LE қалқанын қосатын SPI арнасы үшін сақталған.

Жүйе күйі

Бағдарламалық қамтамасыз ету filament.h -де анықталған төрт түрлі күйде жұмыс істейді:

#define SYS_READY «Дайын» // Жүйе дайын

#анықтаңыз SYS_RUN «Іске қосылған» // Жіп қолданылуда #анықтаңыз SYS_LOAD «Жүктеу» // Рулон жүктелді #анықтау SYS_STARTED «Басталды» // Қолданба басталды // Күй кодтары #STAT_NONE 0 анықтау #STAT_READY 1 #анықтау STAT_LOAT_2 3

Күй: басталды

Бұл күй аппараттық құралдарды қалпына келтіргеннен кейін немесе жүйе қосылған кезде пайда болады. Қосу (және эскиз басталғанда орнату () қоңырауы) ішкі әдепкі мәндерді инициализациялайды және инициализация кезегінің бөлігі ретінде платформада қосымша салмақсыз іске қосылуы керек, бұл физикалық нөлдік салмаққа жету үшін абсолютті тараны алу..

Статус: дайын

Дайын күй жұмсақ қалпына келтіруден кейін пайда болады (сериялық терминалдан жіберілген). Бұл физикалық резекцияға ұқсас, бірақ тара есептелмейді; қалпына келтіру пәрменін жүйе жұмыс істеп тұрған кезде де іске қосуға болады.

Күй: Жүктеу

Жүктеу күйі терминал арқылы жүктеу пәрменін жібергенде пайда болады. Бұл жіп орамы жүктелгенін және динамикалық тара есептелгенін білдіреді. Нақты жіптің салмағы қозғалтқыш блогы мен бос орамның салмағын шегере отырып, роликті орнату әдісімен алынады.

Күй: жүгіру

Бұл күй автоматты салмақты есептеуге және автоматты жіп диспенсеріне мүмкіндік береді.

Терминалды хабарламалар

Бағдарламалық жасақтаманың қазіргі нұсқасы командаларға байланысты терминалға адам оқитын хабарларды қайтарады. Жолдық хабарлар екі тақырыптық файлда анықталады: commands.h (пәрменге қатысты хабарлар мен жауаптар) және filament.h (талдаушы күрделі хабарламаларды жасау үшін пайдаланатын жолдар).

Командалар

Пәрмендерді басқаруға екі түрлі файл қатысады: commands.h барлық командалар мен қатысты параметрлерді және filament.h қоса алғанда, салмақтау жүйесі мен талдаушы қолданатын барлық тұрақтылар мен анықтамаларды қамтиды.

Ішкі есептеулер автоматты түрде бағдарламалық қамтамасыз ету арқылы жасалса, мен жүйенің тәртібін орнатуға және кейбір параметрлерді қолмен басқаруға арналған бірнеше командаларды орындадым.

Командалық кілт сөздер регистрді ескереді және терминалдан жіберілуі керек. Егер пәрмен ағымдағы күйге сәйкес келмесе, қате пәрмен хабары қайтарылмайды, ал команда орындалады.

Күй командалары

Жүйенің ағымдағы күйін өзгертіңіз және мінез -құлық да бейімделеді

Филаментті командалар

Бөлек пәрмендерді қолдана отырып, жіп пен орамның сипаттамаларын қазіргі кездегі нарықтағы ең көп таралған салмақ пен өлшемге қарай орнатуға болады.

Бірлік командалары

Бұл өлшем бірліктерінің визуализациясын граммен немесе сантиметрмен орнатуға арналған бірнеше командалар. Іс жүзінде бұл пәрмендерді жоюға болады және әрқашан деректерді екі бірлікте де көрсетуге болады.

Ақпараттық командалар

Жүйенің күйіне байланысты ақпарат топтарын көрсету

Мотор командалары

Қозғалтқышты жіпке беру немесе тарту үшін басқарыңыз.

Барлық мотор командалары үдеу/баяулау жолымен жүреді. Беру мен тартудың екі пәрмені motor.h -те FEED_EXTRUDER_DELAY тұрақты түрде анықталатын қысқа тізбекті орындайды, ал feedc және pullc пәрмендері тоқтату пәрмені алынбайынша шексіз жұмыс істейді.

Жұмыс режимінің командалары

Жұмыс күйі екі режимді қабылдайды; режимдегі адам салмақты мезгіл -мезгіл оқиды және қозғалтқыш моторды басқару командасы жіберілмейінше қозғалады. Автомат режимі экструдерге көбірек жіп қажет болғанда екі беру пәрменін орындайды.

Принцип осы ортаға контекстке негізделген салмақ көрсеткіштеріне негізделген. Біз жіптерді тұтыну салыстырмалы түрде баяу болады деп күтеміз, 3D принтерлер баяу жұмыс істейді және қалыпты салмақ тербелістері қоршаған ортаның діріліне байланысты (егер сіз 3D принтерге барлық материалды салмасаңыз жақсы)

Экструдер жіпті тартқанда, салмақ айырмашылығы өте аз уақыт ішінде (50 г немесе одан да көп) күрт артады (әдетте екі немесе үш көрсеткіш арасындағы). Бұл ақпарат жаңа жіп қажет екенін «шегеретін» бағдарламалық жасақтама арқылы сүзіледі. Қате көрсеткіштерді болдырмау үшін қозғалтқыш жұмыс істеп тұрған кездегі салмақтың өзгеруі мүлде ескерілмейді.

Қолдану логикасы

Қолданбалар логикасы.ino main (Arduino эскизінде) үш функция бойынша таратылады: setup (), loop () және parseCommand (commandString)

Эскизде екі бөлек класс пайдаланылады: TLE94112LE Arduino қалқанының төмен деңгейлі әдістерімен өзара әрекеттесетін HX711 IC және MotorControl класы арқылы барлық жіп есептеулері мен сенсорлардың оқылуын басқару үшін FilamentWeight класы.

орнату()

Қосылғанда немесе аппараттық құралды қалпына келтіргеннен кейін бір рет іске қосылады, сыныптардың даналары инициализацияланады, аппараттық құралдар мен терминалдық байланыс орнатылады.

цикл ()

Негізгі цикл функциясы үш түрлі шартты басқарады.

Салмақ сенсорлары мен қозғалтқыштар үшін екі класс болса да, артықшылығы - алынған эскизді түсіну және басқару шынымен де оңай.

  1. Экструдерге қосымша жіп қажет болса, тексеріңіз (автоматты режимде)
  2. Егер қозғалтқыш жұмыс істеп тұрса, аппараттық қателерді тексеріңіз (TLE94112LE қайтарады)
  3. Егер сериялық деректер болса, пәрменді талдаңыз

parseCommand (commandString)

Талдау функциясы сериядан келетін жолдарды тексереді және пәрмен танылған кезде ол дереу өңделеді.

Әрбір команда жүйенің кейбір параметрлеріне әсер ететін мемлекеттік машина ретінде әрекет етеді; Осы логикаға сәйкес барлық командалар бірізді үш әрекетке дейін азаяды:

  1. FilamentWeight класына (салмақ командалары) немесе MotorControl класына (мотор командалары) пәрмен жіберіңіз.
  2. Салмақ мәндерін жаңарту немесе ішкі параметрлердің бірін жаңарту үшін есепті орындайды
  3. Орындау аяқталған кезде терминалда және ақпарат шығысында көрсетіңіз

HX711 Arduino кітапханасын орнатыңыз, GitHub бағдарламалық жасақтамасын жүктеп алыңыз және оны Arduino тақтасына жүктеңіз, содан кейін ләззат алыңыз!

Ұсынылған: