Мазмұны:

Миоваре бұлшықет сенсорына әсер ететін неопиксельді жолақ: 6 қадам
Миоваре бұлшықет сенсорына әсер ететін неопиксельді жолақ: 6 қадам

Бейне: Миоваре бұлшықет сенсорына әсер ететін неопиксельді жолақ: 6 қадам

Бейне: Миоваре бұлшықет сенсорына әсер ететін неопиксельді жолақ: 6 қадам
Бейне: Muscle BioAmp BisCute Assembly (Step by Step) | DIY Muscle Sensor | Neuroscience | Upside Down Labs 2024, Шілде
Anonim
Myoware бұлшықет сенсорына әсер ететін неопиксельді жолақ
Myoware бұлшықет сенсорына әсер ететін неопиксельді жолақ

Мақсат - бұлшықетті сенсорды Arduino көмегімен орнату және кіретін мәліметтерді Adafruit IO көмегімен өңдеу және жарық бір минут ішінде ақтан қызылға айналатындай етіп триггермен шығару.

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

Бұл жоба үшін сізге қажет: -MyoWare бұлшық ет сенсоры -ЭМГ электродтары -NodeMCU (esp8266) -Силиконнан жасалған қақпақ сымы -USB микро кабелі -Неопиксельді жолақ

Сізге қажет кітапханалар: -Adafruit io Arduino (кем дегенде 2.3.0 нұсқасы) -Adafruit Neopixel (1.2.5 нұсқасы) -Adafruit MQTT кітапханасы (1.0.3) -Arduino HttpClients (0.4.0) кітапханалар әлі орнатылмаған. Содан кейін эскиз> кітапхананы қосу> кітапханаларды басқару … тармағына өтіңіз, іздеу өрісіне: [орнатқыңыз келетін кітапхана атауы] теріңіз.

1 -қадам: Myoware бұлшықет сенсорын қосу (әсіресе онымен бұрын жұмыс істемегендер үшін)

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

learn.adafruit.com/getting-started-with-my…

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

Маңызды Бұл қадам тек сенсорды орнату. Сіз қолданған код нұсқаулықтың қалған бөлігінде қажет емес. Тек сенсорды орнату әдісі алдағы қадамдар үшін өзгеріссіз қалады.

2 -қадам: Adafruit IO орнату

Adafruit IO орнату
Adafruit IO орнату
Adafruit IO орнату
Adafruit IO орнату
Adafruit IO орнату
Adafruit IO орнату

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

Есептік жазбаңызда болған кезде:

Analog FeedNext құрыңыз, сізге Analog деп аталатын арна жасау қажет болады. Егер сізге Adafruit IO арнасын құруды бастау үшін көмек қажет болса, Adafruit IO Feed негіздері бойынша нұсқаулықты қараңыз (1 және 2 суреттегідей).

Өлшеу блогы мен сызық диаграммасын қосу BlockNext, жаңа бақылау тақтасын жасаңыз және оны қалай атағыңыз келсе, солай атаңыз (жаңа бақылау тақтасын жасау үшін 3, 4 және 5 -суреттерде көрсетілген). Деректер көзі ретінде аналогтық арнаны таңдағаныңызға көз жеткізіңіз.

Бақылау тақтасында болған кезде, жоғарғы оң жақ бұрыштағы көк плюске шертіп, жаңа өлшеуіш блогын қосыңыз. Блокты қалағаныңызша атаңыз (6 және 7 -суреттерде көрсетілген) және оған 1024 максималды мәнін және 0 минималды мәнін (бұлшықет сенсорының мәндері) беріңіз.

Сызықтық диаграмма блогымен (8 -сурет) Gauge блогымен жоғарыдағыдай қайталаңыз.

Тексеру Егер сіз жоғарыда жасаған болсаңыз, сізде соңғы фотосуретке ұқсас экран болуы керек.

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

Arduino енгізу
Arduino енгізу
Arduino енгізу
Arduino енгізу
Arduino енгізу
Arduino енгізу
Arduino енгізу
Arduino енгізу

1 -қадамда сіз MyoWare Muscle сенсорының сымын дұрыс орнаттыңыз. Бұл қадам біз Adafruit IO бақылау тақтасының 2 -қадамына қосылатын Arduino кодына енеміз. Бұл қадамның соңында сіз орнатқан екі блокта Myoware Muscle сенсорының кіріс мәндерін көресіз.

Arduino орнату

Кіріспеде жоғарыда көрсетілген барлық кітапханалар орнатылғанына көз жеткізіңіз.

Біз мысал эскизімен жұмыс жасаймыз. Файл> Мысал> Adafruit IO Arduino> adafruitio_08_analog_in ашыңыз (сурет 1). Неліктен бұл эскиз? өйткені біз алдымен осы нұсқаулықтың кіріс бөлігін орнатамыз. MyoWare Muscle сенсоры аналогты шығуды қолданады. Егер сіз аналог туралы көбірек білгіңіз келсе.

Arduino Network Config Желі параметрлерін конфигурациялау үшін эскиздегі config.h қойындысын нұқыңыз. Сізге Adafruit IO пайдаланушы атын IO_USERNAME анықтамасында және Adafruit IO кілтін IO_KEY анықтамасында орнату қажет болады. Сіз өзіңіздің пайдаланушы аты мен кілтін экранның жоғарғы оң жағындағы Arduino IO -да таба аласыз (2 -суреттегі мысал)

#анықтаңыз IO_USERNAME «сіздің_ пайдаланушы атыңызды»

#IO_KEY «сіздің_кілтегіңізді» анықтаңыз

WiFi Config WiFi әдепкі бойынша config.h -де қосылады, сондықтан егер сіз қолдау көрсетілетін WiFi тақталарының бірін қолдансаңыз, сізге config.h қойындысында WIFI_SSID және WIFI_PASS опцияларын өзгерту қажет болады.

#WIFI_SSID «сіздің_ссидріңізді» анықтаңыз

Arduino коды Егер сізде жоғарыдағы параметрлерде өзгерістер болса, біз нақты кодқа, adafruit_08_analog_in -ге өтуге болады. Бұл мысалдағы әдепкі түйреуіш AO -дағы статет болып табылады. Бұл дұрыс түйреуіш, өйткені сіз бұлшықет сенсорын 2 -қадамда тақтаға қойдыңыз.

Бұл мысалда фотоэлемент сенсоры қолданылады, өйткені біз бұлшықет сенсорын қолданамыз, біз бұл атауды өзгертеміз. Сіз мұны жасасаңыз да маңызды емес, бұл оны тек мағыналық жағынан реттейді. PHOTOCELL_PIN -ді MUSCLESENSOR_PIN -ге өзгертіңіз, мұны эскиздің екі жерінде жасаңыз.

/************************ Мысал осы жерден басталады ********************** *********/

// аналогтық түйреуіш 0 #PHOTOCELL_PIN A0 анықтаңыз

Соңғы кодта кідіріс бар. Бұл кідіріс - 1 секунд, біз оны 2000 секундқа орнатамыз. Біз мұны жасаймыз, себебі Adafruit IO -да деректер шегі бар лицензия бар, екі секунд ішінде бұл эскиз деректер шегінен асып кетеді және ол дыбыс есте сақтайды.. Бұл қандай да бір мәндердің келмейтінін білдіреді. Мұны екі секундқа орнату бұған жол бермейді.

// бір секунд күту (1000 миллисекунд == 1 секунд) кешігу (2000);

Бұл жұмыс істеу үшін эскизде өзгерту керек болды. Егер сіз бүкіл кодтың қалай жұмыс істейтінін білгіңіз келсе. Сіз оны Adafruit үйренуден таба аласыз, әр код блоктары туралы түсініктеме.

Тексеру Эскизді тақтаға жүктеп, Arduino сериялық мониторын ашыңыз. Сіздің тақта енді Adafruit IO -ға қосылуы керек.

сіз енді қолыңызды тартуға болады, және сіз өзгеретін мәндерді Adafruit IO -ға жіберетінін көруіңіз керек (3 -суреттегідей). Егер сіз сериялық мониторда ешқандай мәндерді көрмесеңіз, сериялық монитордағы Baud жиілігін 115200 -ге орнатқаныңызды тексеріңіз.

Adafruit IO бақылау тақтасы Adafruit IO бақылау тақтасын тексеріңіз, сонда сіз MyoWare Muscle Sensor мәндерінің өзгеруіне жауап беретін өлшеуіш пен диаграмманы көресіз.

4 -қадам: Adafruit IO Trigger орнату

Adafruit IO триггерін орнату
Adafruit IO триггерін орнату
Adafruit IO триггерін орнату
Adafruit IO триггерін орнату

Осы уақытқа дейін біз MyoWare Muscle сенсорынан Adafruit IO жұмысына кіріс енгізе алдық. Енді біз бұл ақпаратты оқуды бастаймыз. Бұлшықет сенсорының X мәнінен 5 есе жоғары мәнді анықтағаннан кейін, неопиксельді жолақпен әрекет жасалады.

Бұл бөлім мен үшін болды, онда мен Adafruit IO тарихын қалай оқу керектігін зерттеуім керек болды. Мен бұған дейін арналар мен бақылау тақталарымен жұмыс жасаған болатынмын, сондықтан құрылған арна мен бақылау тақтасы мұны оқи алады және осы жерде Arduino -да әрекет жасайды деп ойладым. Әзірге мен табысқа жете алмадым. Көптеген зерттеулер мен Adafruit IO -дан кейін мен Adafruit IO -дегі Trigger функциясымен әрекетті бастауға болатынын білдім. Триггерлер туралы көбірек біліңіз.

Қосымша FeedBeig Trigger жасамас бұрын, біз басқа арна жасауымыз керек, сондықтан оны шығару үшін оны Arduino тілінде атауға болады. AlertTriggered атауымен арна жасаңыз.

Триггер жасаңыз Feed және бақылау тақтасында Trigger тақырыптары бар, мұнда өтіңіз. Жаңа триггер жасаңыз. Сізден реактивті триггерді немесе жоспарлы триггерді құрғыңыз келетіні сұралады, реактивті триггерді таңдап, жасауды басыңыз. Бұл сіз бірдеңе болған кезде ғана бір нәрсені қозғағыңыз келетіндіктен (фото 1).

Бірнеше нәрсені орнату керек (Келесі қадамдар 2-суретте де көрсетілген).- Егер біріншіден аналогтық арнаны таңдаңыз, сондықтан кіріс осы жерден алынады.

-Сіз үлкен мәнді таңдайсыз ба, себебі мән осындай саннан асып кетсе, бір нәрсені іске қосқыңыз келеді.

-Триггерді іске қосу үшін қажетті мәнді енгізуге болады. Мен бұл жағдайда 600 жасадым.

-Arduino көмегімен сіз 600 -ден асқан кезде кері байланыс алуыңыз керек: содан кейін Хабарды жариялауды таңдаңыз:.

-Осыдан кейін сіз AlertTriggered құрған екінші арнаны таңдай аласыз.

Соңында жасау түймесін басыңыз.

5 -қадам: Неопиксель шығысы

Неопиксель шығысы
Неопиксель шығысы

Соңғы қадам - өнімді шығару. Сіз өңдеген Arduino эскизінде AlertTriggered фидін шақыру арқылы орындалды (сіз алдыңғы қадамда жасағансыз).

Шығаруды алу үшін алдымен NodeMCU-ға Neopixel светодиодты жалғау керек.- + 5v (сол жақ) сымның NodeMCU- GND (оң жақ) сымының 3v-сіндегі G жолағының сымына (G = GND))- D5 (немесе кез келген басқа D порты) светодиодының DIN орталық сымы

CodeI бұл қадамға балама нұсқасы бар бүкіл эскизді файл ретінде қосты (осы қадамның төменгі жағында табуға болады). Бұл сіз соңғы бірнеше қадамда жұмыс істеген эскиз, бірақ енді соңғы эскиз шығуды жасау үшін сізге қажет қадамдарға қосылады. adafruitio_musclesensor_neopixel файлы. Бұл бұрын деректермен орнатылған config.h көмегімен жұмыс істейді. Код блоктары түсініктемелерге енгізілген, сондықтан сіз не болып жатқанын көре аласыз.

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

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

// сериялық мониторда alartstate Serial.println («секундтар өтті:») болған кезде сериялық мониторда өтетін секундтарды көрсету үшін; Serial.println (секундтық өту); } басқа {secondsPassed = 0; }

Егер сізде қадамдар болса немесе adafruitio_musclesensor_neopixel файлының жеке конфигурациясы бар файлды алсаңыз, оны NodeMCU -ге жүктей аласыз. Егер бұл жасалса, төмендегі сериялық мониторда ұқсас нәрсені көру керек:

Adafruit IO -ға қосылуда…

Adafruit IO қосылған. Жіберу -> 23 Жіберу -> 78

Фото 1 - бұл Alertmode режимінде болған кездегі сериялық монитор.

Бұл жұмыс істемейді? Келесі нәрселерді тексеріңіз- config.h дұрыс енгізілгенін тексеріңіз- Сіз дұрыс Adafruit IO пайдаланушы аты мен кілтін енгіздіңіз бе- SSID-ке Wifi құпия сөзін дұрыс енгіздіңіз бе- Сіз MyoWare сымдарын орналастырдыңыз ба? Бұлшықет сенсоры оң жақта және неопиксельді жолақтан

Немесе алдыңғы қадамдарды тексеріңіз.

6 -қадам: Нәтижелер

Жарайсың! Дайын өнімді көрсету және көру үшін мен бейнені қостым.

Ұсынылған: