Мазмұны:

Машина бақылаушыны жасаңыз: 9 қадам
Машина бақылаушыны жасаңыз: 9 қадам

Бейне: Машина бақылаушыны жасаңыз: 9 қадам

Бейне: Машина бақылаушыны жасаңыз: 9 қадам
Бейне: Түрме бастықтары, КУНГ-ФУ шеберін ұстай алмай, Денесіне 40 мм АРМАТУРАЛАРДЫ Тығып қойды 2024, Қараша
Anonim
Машина бақылаушысын жасаңыз
Машина бақылаушысын жасаңыз
Машина бақылаушысын жасаңыз
Машина бақылаушысын жасаңыз

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

Бастапқы идея Үздіксіз интеграциялық жүйені (VSTS | Azure DevOps) бақылай алатын және бағдарламалық жасақтама қателері туралы хабарлауға болатын физикалық объект құру болды. АТ бөлімінің қауіпсіздігіне байланысты маған «стандартты емес» құрылғыны тікелей кәсіпорын желісіне қосудан бас тартты.

Мен жоғарыдағы суретте көрсетілген архитектураны аяқтадым. Орындалу процесін келесідей қорытындылауға болады:

Windows жұмыс үстелі қосымшасы VSTS Build Definitions сканерлейді (тартады). Ол құрастыру нәтижелерін талдайды, содан кейін қызыл немесе жасыл жалаушаны көрсетпес бұрын физикалық құрылғыға кішкене анимациялық реттілікті орындайтын пәрмен жібереді.

1 -қадам: қажетті бөлшектер

Келесі тізім барлық қажетті элементтерді қамтиды:

  • 1 Arduino UNO R3 (https://store.arduino.cc/usa/arduino-uno-rev3).
  • 1 кеңейту қалқаны (https://www.dfrobot.com/wiki/index.php/IO_Expansion_Shield_for_Arduino_V7_SKU:DFR0265).
  • 2 XBee S1 модулі (https://www.adafruit.com/product/128).
  • 1 XBee зерттеуші кілті (https://www.sparkfun.com/products/11697).
  • Бекіткіш керек-жарақтары бар 5VDC үздіксіз серво қозғалтқыштары (https://www.parallax.com/sites/default/files/downloads/900-00008-Continuous-Rotation-Servo-Documentation-v2.2.pdf).
  • 1 9VDC қуат көзі.
  • 3 жарық диоды.
  • 220 Ом 3 резистор.
  • термо тартылатын жең.
  • 1 түйме.
  • Жоғары тартуға арналған 10 кОм тартқыш резистор.
  • 100nF конденсатор.
  • электр сымдары.
  • тақтайша (түймені бекітуге арналған)
  • 5 мм ағаш (50х50 см).
  • ағаш таяқшаның квадраттық қимасы 5х5 мм (1м).
  • картон.
  • Диаметрі 2 мм болатын 10 X бұранда.
  • Диаметрі 5 мм 4 бұранда.
  • күшті магнит.
  • бұру модулі. Мен жыпылықтайтын шамның ішкі қозғалатын бөлігін қайта қолдандым. қалағаныңызды қоюға болады. Сізге екі мобильді бөліктің бір -біріне тигізбестен еркін қозғалуы үшін қамқорлық қажет.

2 -қадам: қорапты құру

Қорапты құру
Қорапты құру

Іс жүзінде сіз қалаған пішінді қорапты ала аласыз. Бастамас бұрын ойланатын негізгі нәрсе - қозғалатын бөліктер қайда болады және олардың бір -біріне тимей еркін қозғалуын қамтамасыз ету. Тағы бір мәселе - құрылғыны қайда қою керек? Мен оны кез келген металл тірекке жабыстыру үшін магнитпен (күшті) таптым. егер сіз сол терезені құрғыңыз келсе, box_drawings.pdf файлындағы нұсқауларды орындауға болады.

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

Екі жалау қызыл және жасыл картоннан жасалған. Сервомотордағы жалаушаның тіреуін бекіту үшін оларды сатып алу кезінде берілген бекіту бөлшектерін қолдануға болады.

3 -қадам: Arduino орнату

Arduino орнату
Arduino орнату

Arduino кеңейту тақтасына қосылған элементтер:

  • D2 PIN: басу түймесі.
  • D4 PIN: жүйе ҚОСУ деп айтуға арналған жарық диоды.
  • D5 PIN: біз циклды орындайтынымызды білдіретін жарық диоды.
  • D6 PIN: құрылғы жаңа хабар алғанын білдіретін жарық диоды.
  • D9 PIN: гиромен айналысатын сервомоторға арналған PWM импульстік сигналы.
  • D10 PIN: жалаушаны басқаратын сервомоторға арналған PWM импульстік сигналы.
  • XBee розеткасы: бір ZigBee модулі.

Жоғарыдағы схема барлық элементтердің тақтаға қалай қосылғанын көрсетеді.

Жарық диодтары үшін резистор мен сымдар оған тікелей дәнекерленген (полярлықты қадағалаңыз). Содан кейін бәрі термоқайтармалы жеңге салынған.

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

Сервомоторлар 5В қуатымен жұмыс істейді, осылайша оларды тікелей Arduino -ға қосуға болады. Егер сіз жоғары кернеулі (12В) кернеуді қолдансаңыз, қуат көзіне басқа қабатты қосуға тура келеді.

XBee модульдері үшін, олар бірге сөйлесуге конфигурацияланғаннан кейін (келесі тарауды қараңыз), оларды тікелей розеткаларға қосуға болады.

Ескертулер: Светодиодтар мен түймені Arduino түйреуіштеріне тікелей қосуға болады, себебі ол ішкі бағалы қағаздарды іске асыра алады. Мен ескі әдіспен жұмыс жасадым, өйткені мен үшін бұл жағы түсініксіз болды.

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

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

Жоғарыда айтылғандай, екі XBee құрылғысы бірге сөйлесуге конфигурацияланған болуы керек. Ол үшін DIGI арнайы X-CTU бағдарламалық жасақтамасын пайдалану қажет. Бұл конфигурация қадамын бір рет жасау керек. xbee_configuration.pdf файлында сипатталған процедураны орындаңыз.

Конфигурация аяқталғаннан кейін әр модульді розеткаға қосуға болады. Біреуі USB/сериялық түрлендіргіште, екіншісі Arduino кеңейту тақтасында.

USB/сериялық түрлендіргішті Windows 10 автоматты түрде тануы керек. Олай болмаса, драйверді қолмен орнату қажет болуы мүмкін

Ескерту:

Негізгі сериялық байланысты жасау үшін XBee модульдерін қолдану - бұл шамадан тыс. Мен жобаны бастаған кезде мен Windows 10 -де оңай қолданылатын сериялық байланыс құралдарын таба алмадым (драйвер мәселесі). Бұл сонымен қатар https://www.zigbee.org туралы бірнеше нәрсені білуге мүмкіндік болды

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

Бағдарламалық қамтамасыз ету - Arduino Sketch
Бағдарламалық қамтамасыз ету - Arduino Sketch

Arduino бағдарламалау үшін біз IDE -ді ресми веб -сайттан алуға болады.

Бағдарламаның логикасы өте қарапайым, ол тақтаның әдепкі сериялық портында жалғыз әріптерді тыңдайды ('a', 'b', …). Егер алынған таңба белгілі пәрменге сәйкес келсе, онда қосалқы функция сәйкес ретті атқарады.

Пайдалы 2 негізгі команда - табысқа анимация ('a') және қателік анимациясы ('b').

Қораппен сәл көбірек ойнау (немесе отладка) жасау үшін кейбір қосымша командаларды орындауға болады. Олар:

  • 'O': ҚОСУ жарық диодын қосуға мәжбүр етіңіз
  • 'P': ҚОСУ диодын ӨШІРУГЕ мәжбүрлеңіз
  • 'Q': Жаңа хабардың жарық диодын қосуға мәжбүрлеңіз
  • 'R': Жаңа хабарлама светодиодын ӨШІРУГЕ мәжбүрлеңіз
  • 'S': циклды жарық диодты қосуға мәжбүрлейді
  • 'T': цикл жарық диодын ӨШІРУГЕ мәжбүрлеңіз
  • 'U': гиро сервомоторын іске қосыңыз
  • 'V': тудың сервомоторын іске қосыңыз.

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

Arduino эскизінің коды bsldevice.ino файлында. Сіз оны IDE көмегімен тікелей жүктей аласыз.

6 -қадам: Бағдарламалық қамтамасыз ету - жұмыс үстелі қосымшасы

Бағдарламалық қамтамасыз ету - жұмыс үстелі қосымшасы
Бағдарламалық қамтамасыз ету - жұмыс үстелі қосымшасы

Жұмыс үстелі қосымшасының мақсаты - Microsoft Azure DevOps (бұрын VSTS) веб -сайтын бақылау және Build Definition сәтті немесе қате екенін анықтау. Құрылыс аяқталған сайын жұмыс үстелі қосымшасы құрылыстың күйін анықтайды және сәйкес команданы ('a' немесе 'b') сериялық портқа (COMx) жібереді.

Қолданбаны іске қосқаннан кейін бірінші әрекет - ZigBee модулі қосылған дұрыс портты таңдау. Портты анықтау үшін Windows Device Manager бағдарламасын пайдалануға болады (Порттар астында (COM & LPT бөлімі)). Azure DevOps -ке қосылу автоматты түрде іске қосылған кезде ағымдағы пайдаланушының тіркелгі деректері арқылы жүзеге асады. Сондай -ақ, кез келген алдын ала анықталған пәрменді оң жақтағы комбинацияны қолмен жіберуге болады.

Барлық көздер Visual Studio 2017 кәсіби басылымымен жасалды. Ол үшін. NET Framework 4.6.1 қажет. Бұл Framework нұсқасы VSTS веб -сайтына қосылуды/аутентификацияны жеңілдету үшін қолайлы.

қолдану:

  • bslwatcher_sources.zip мұрағатын жүктеңіз.
  • Оны дискіден шығарыңыз.
  • Толық ақпарат алу үшін how_to_build.txt файлын оқыңыз.

7 -қадам: Бірінші бастау

Қорапты іске қосқанда екі негізгі нәрсені ескеру қажет:

1- Жалаудың жалаушалар қайда болатынын жүйенің өзі біле алмайды. Жүйе іске қосылған кезде жасыл ту көтеріледі деп болжайды.

2- Arduino тақтасын қосқанда ештеңе қозғалмауы керек. Біз үздіксіз серверлерді қолданған кезде, нөлдік позиция эскиздік файлда әдепкі бойынша 90 -ға орнатылады. Егер сервомотор бұрыла бастаса немесе біраз шу шығарса. оның нөлдік орнын қайта анықтау қажет болуы мүмкін. Ол үшін потенциометрді сервомотордың бүйіріндегі кішкене тесіктің ішіне баптаңыз.

www.arduino.cc/kz/Reference/ServoWrite

cmra.rec.ri.cmu.edu/content/electronics/boe…

8 -қадам: Қорытынды

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

«Интеллект» жұмыс үстелі қосымшасында болғандықтан, сіз кез келген басқа бағдарламалық жасақтаманы немесе процесті бақылау үшін қорапты пайдалана аласыз (пошта, температура сенсоры …). Сізге басқа API -ге кіру керек және ненің «жақсы» немесе «жаман» екенін шешу қажет. Егер сіз қызыл және жасыл түстерді пайдаланбасаңыз, сіз тіпті «хабарламаның» мағынасын өзгерте аласыз.

Жақсартуларды қораптың өзіне де енгізуге болады:

  • Батареяны қолданыңыз.
  • Басқа байланыс протоколын қолданыңыз.
  • Қай жалаушаның жоғарғы жағында екенін білу үшін сенсорларды қосыңыз.

Сізге бұл жоба қызықты болды деп сенемін.

Осы жерге дейін оқығаныңызға рахмет.

9 -қадам: Қосымша

Бұл жобаны жасау үшін пайдаланылатын кейбір сілтемелер:

Arduino веб -сайты:

DIGI веб-сайты:

XCTU бағдарламалық жасақтамасы:

Басқалардан алынған кейбір ақпарат:

arduino.stackexchange.com/questions/1321/se…

stackoverflow.com/questions/10399400/best-w…

www.mon-club-elec.fr/pmwiki_reference_ardui… (француз тілінде)

jeromeabel.net/

Жалпы MSDN веб -сайты:

docs.microsoft.com/en-us/dotnet/framework/…

Ұсынылған: