Мазмұны:

Alexa мен Arduino көмегімен дауысты басқарылатын қосқыш: 10 қадам (суреттермен)
Alexa мен Arduino көмегімен дауысты басқарылатын қосқыш: 10 қадам (суреттермен)

Бейне: Alexa мен Arduino көмегімен дауысты басқарылатын қосқыш: 10 қадам (суреттермен)

Бейне: Alexa мен Arduino көмегімен дауысты басқарылатын қосқыш: 10 қадам (суреттермен)
Бейне: Arduino микроконтроллерінің көмегімен жүргізуші моторлар мен сервомоторларды басқару 2024, Шілде
Anonim
Alexa мен Arduino көмегімен дауысты басқаратын қосқыш
Alexa мен Arduino көмегімен дауысты басқаратын қосқыш

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

Материалдар тізімі

  1. 12В реле модулі ==> $ 4.2
  2. Arduino uno ==> $ 8
  3. DHT11 температура сенсоры ==> 3 доллар
  4. ESP8266 модулі ==> $ 4.74
  5. N26 оптикалық қосқыш ==> $ 0,60
  6. LM1117 кернеу реттегіші ==> $ 0,60
  7. Нан тақтасы ==> $ 2,2
  8. Өткізгіш сымдар ==> $ 2,5
  9. Түймешікті басу ==> $ 2,5

Жобаның жалпы құны шамамен 30 доллар. Бұл жоба үш бөлікке бөлінген. Біріншіден, біз бағдарлама жасау үшін heroku қолданамыз. Екіншіден, біз өз жұмысымызды жүзеге асыру үшін Amazon Alexa дағдысын қалыптастырамыз (Ең маңызды бөлігі). Үшіншіден, біз жабдықты орнатамыз және оны Arduino IDE көмегімен бағдарламалаймыз.

1 -қадам: Heroku -ны GitHub -пен байланыстыру

Heroku -ны GitHub -пен байланыстыру
Heroku -ны GitHub -пен байланыстыру
Heroku -ны GitHub -пен байланыстыру
Heroku -ны GitHub -пен байланыстыру
Heroku -ны GitHub -пен байланыстыру
Heroku -ны GitHub -пен байланыстыру

Heroku - бұл веб -қосымшаларды орналастыру үлгісі ретінде пайдаланылатын бірнеше бағдарламалау тілдерін қолдайтын қызмет (PaaS) ретінде бұлтты платформа. Алдымен heroku сайтына кіріңіз, жаңа есептік жазба жасаңыз немесе кіріңіз. Сілтеме төменде берілген

Героку сайты

Жаңа қосымшаны құрудан бастайық. Қолданбаны орналастырған кезде мен «iottempswitch» деген қолданба атауын бердім, сілтеме жасалады.

Қолданба жасалғаннан кейін GitHub. GitHub/ сайтына өтіңіз.

Ол жерге кіріңіз немесе тіркелгіңіз болмаса, тіркеліңіз. Жүйеге кіргеннен кейін жаңа репозиторий жасаңыз. Таңдағыңыз келетін кез келген атауды беріңіз, содан кейін репозиторий жасау түймесін басыңыз. Келесі бетте README түймесін басыңыз, осы бетте басқалармен бөліскіңіз келетін сипаттаманы беріңіз. Осыдан кейін жаңа файлды бекітуді нұқыңыз. Әрі қарай, жүктеу түймесін басыңыз.

Қалтаны апарып тастаудың немесе файлды таңдаудың екі нұсқасы бар. Қажетті файлдарды төменнен жүктеңіз. Файлдарды таңдағаннан кейін өзгерістерді енгізуді басыңыз. Heroku -да жасаған бағдарламаны ашыңыз, содан кейін орналастыру бөліміне өтіңіз. Осыдан кейін GitHub жағында GitHub. Give репозиторийінің атауын басыңыз. Менің жағдайда бұл Smart-Relay. Оны көшіріп, осы жерге қойыңыз. Сілтеме көрсетілгеннен кейін қосылу түймесін басыңыз. Әрі қарай, тарауды орналастыруды нұқыңыз (нұсқаулық). Қолданғаннан кейін сіз құрастыру журналындағы сілтемені немесе параметрлердегі сілтемені көре аласыз. Бізге Amazon сілтемесін жасау кезінде бұл сілтеме қажет.

2 -қадам: Amazon

Амазонка
Амазонка
Амазонка
Амазонка
Амазонка
Амазонка

Alexa шеберлігінің соңғы суреттері

Amazon Developer сайтында біз температураны және ылғалдылықты орнату арқылы қосқышты іске қосу үшін Amazon шеберлігін қолданамыз.

Amazon Developer сайтына өтіңіз. Сілтеме төменде берілген.

Amazon әзірлеуші сайты

  • I4 суретте көрсетілгендей жоғарғы оң жақтағы Әзірлеуші консоліне өтіңіз
  • Alexa -ға өтіңіз, содан кейін Alexa Skill жиынтығын таңдаңыз, содан кейін «Жаңа дағдыларды қосу» түймесін басу арқылы жаңа дағдыларды жасаңыз.

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

1. Біліктілік туралы ақпарат (i7 суретте көрсетілгендей)

біз дағдылардың түрін, тілін, атын, шақыру атын беруіміз керек.

Дағды түрі ==> реттелетінді таңдаңыз

  • Name ==> кез келген атауды таңдаңыз.
  • Мысалы, Alexa-дан сөйлескен кезде қолданатын шақыру атауы ==>- Alexa, сенсордан қосқыштың қосқышын қосуды немесе Alexa-дан сұраңыз, бұл жерден шақыруды атаңыз- сенсор мен жарық.
  • Тіл ==> ағылшын (Үндістан). Еліңізге сәйкес таңдаңыз

сақтауды басыңыз, содан кейін келесі

2. Өзара әрекеттестік моделі

Мұнда біз шебер құрушыны қолданамыз. Сонымен, Skill Builder іске қосу түймесін басыңыз. i8 суретте көрсетілгендей бетті көресіз.

Алдымен біз жаңа ниеттер жасаймыз. Қосу түймесін басыңыз (сол жақта) және «smartswitch» пайдаланғыңыз келетін кез келген атауды беріңіз

  • I9 суретте көрсетілгендей ұяшық түрінің атауын «ölçüm_түрі» мен ұяшықтың «температурасы» мен «ылғалдылығы» мәнін беріңіз.
  • Осыдан кейін ұяшық түрінің атауын қосыңыз «сұрау» және ұяшық мәндері i10 суретте көрсетілгендей «не» және «не» болады.

  • Осыдан кейін ұяшық түріне «коммутатор» қосыңыз және ұяшық мәндері i11 суретте көрсетілгендей «қосулы» және «өшірулі».
  • «Tempscale» басқа ұяшық түрін қосыңыз және ұяшық мәндері i12 суретте көрсетілгендей «farenheit» және «celcuis» болады.
  • Осыдан кейін біз жаңа ұяшық түрін қосамыз, ол үшін біз қолданыстағы ұяшық түрін қолданамыз, ол үшін бар ұяшықты пайдалану түймесін басуымыз керек. Бар ұяшықта amazon.number іздеп, осыны таңдап, оны қосыңыз. Оны қосқаннан кейін сіз оны i13 суретте көрсетілгендей ұяшық түрлерінде көресіз.

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

  • Жаңа ұяшық жасаңыз, оған «Switch_State» атауын беріңіз және i15 суретте көрсетілгендей ашылмалы батырманы пайдаланып оны «ауысу күйіне» салыстырыңыз.
  • Жаңа ұяшық жасаңыз, оған «Sensor_Values» атауын беріңіз және оны i16 суретте көрсетілгендей «өлшеу_түріне» салыстырыңыз.
  • Жаңа ұяшық жасаңыз, оған «сұрау» атауын беріңіз және оны i17 суретте көрсетілгендей «сұрауға» салыстырыңыз.
  • Осыдан кейін «tmp_scale» жаңа ұясын жасаңыз және оны i18 суретте көрсетілгендей «tempscale» картасына салыңыз.
  • Жаңа сандар ұяшығын жасаңыз және оны i19 суретте көрсетілгендей «Amazon. Numbers» картасына салыңыз.

Енді біз Intent слоттарымен аяқтадық. Біз 5 ниет слотын қолданамыз. Осыдан кейін біз i20 -суретте көрсетілгендей Үлгі айтылымдарға өтеміз.

Осы үлгідегі сөйлемдерді қосыңыз.

қосқыш триггерін {Сандар} пайызға {tmp_scale} қойыңыз

{query} - ауысу күйі

{Switch_State} қосқыш триггері

қосқыш триггерін {Numbers} дәрежеге {tmp_scale} қойыңыз

қосқышты бұру {Switch_State}

{query} ауысу {Switch_State}

{query} - ағымдағы {Sensor_Values}

Осыдан кейін модельді сақтап, оны құрыңыз. Модельдің құрылуын күтіңіз, содан кейін конфигурацияны нұқыңыз. Құрылғаннан кейін сіз i21 және i22 суреттерінде көрсетілген хабарды көресіз.

3. Конфигурация

HTTPS таңдаңыз және heroku қосымшасын жасау кезінде жасалған сілтемені қосыңыз. Менің жағдайда бұл https://iottempswitch.herokuapp.com/. Сілтемені қосқаннан кейін i23 суретте көрсетілгендей келесіге басыңыз.

4. SSL сертификаты Екінші опцияны таңдап, i24 суретте көрсетілгендей келесіге басыңыз.

біз өз шеберлігімізді сәтті құрдық.

3 -қадам: Arduino

Ардуино
Ардуино
Ардуино
Ардуино
Ардуино
Ардуино

Arduino IDE ашыңыз, содан кейін Файл ==> Параметрлер тармағына өтіңіз

Қосымша тақта менеджерінде URL мекенжайын көшіріп, қойыңыз және i26 суретте көрсетілгендей OK түймесін басыңыз.

arduino.esp8266.com/versions/2.4.0/package_…

  • Құралдар ==> Басқарма ==> Басқару менеджері бөліміне өтіп, тақта менеджерін ашыңыз.
  • Тақталар менеджерін ашып, i27 суретте көрсетілгендей nodemcu іздеңіз.
  • Осыдан кейін ESP8266WiFi кітапханасын жүктеңіз. Кітапхана менеджерін ашыңыз: Sketch ==> Кітапхананы қосу ==> Кітапханаларды басқару.
  • ESP8266WiFi кітапханасын іздеңіз және оны орнатыңыз.
  • Тақтаны таңдаңыз ==> Жалпы ESP8266 модулі.
  • Кодты жүктемес бұрын бізге үш кітапхана қажет.

Қажетті кітапханалар

Бұл кітапханаларды Arduino кітапханалар қалтасына жылжытыңыз

Сіз SSID, PWD кодында және heroku қолданбасы сілтемесінде үш нәрсені өзгертуіңіз керек, содан кейін кодты жүктеңіз. ESP модулі үшін кодты жүктеу кезінде жарқыл түймесін басу керек, содан кейін ысыру түймесін бір рет басыңыз, содан кейін жарқыл түймесін жіберіңіз. Кодты жүктегеннен кейін терминалды ашыңыз. шығуын көресіз.

4 -қадам: Компоненттердің сипаттамасы

Компоненттің сипаттамасы
Компоненттің сипаттамасы
Компоненттің сипаттамасы
Компоненттің сипаттамасы
Компоненттің сипаттамасы
Компоненттің сипаттамасы
Компоненттің сипаттамасы
Компоненттің сипаттамасы

1. Эстафета дегеніміз не

Реле - бұл электромагниттік құрылғы, ол екі тізбекті электрлік оқшаулауға және магниттік қосуға арналған. Олар өте пайдалы құрылғылар болып табылады және бір тізбектің екіншісінен бөлек тұруына мүмкіндік береді. Олар көбінесе электронды схеманы (төмен кернеуде жұмыс істейтін) өте жоғары кернеуде жұмыс істейтін электр тізбегіне қосылу үшін қолданылады. Мысалы, реле 230 В айнымалы ток желісінің тізбегін ауыстыру үшін 5В тұрақты ток батареясының тізбегін жасай алады.

Бұл қалай жұмыс істейді

Релелік қосқышты екіге бөлуге болады: кіріс және шығыс. Кіріс бөлігінде электронды тізбектен шамалы кернеу қосылған кезде магнит өрісін тудыратын катушка бар. Бұл кернеу жұмыс кернеуі деп аталады. Әдетте қолданылатын релелер 6В, 9В, 12В, 24В сияқты жұмыс кернеулерінің әр түрлі конфигурациясында қол жетімді. Шығу бөлімі механикалық түрде қосылатын немесе ажыратылатын контакторлардан тұрады. Негізгі реледе үш контактор бар: әдетте ашық (NO), қалыпты жабық (NC) және қарапайым (COM). Ешқандай кіріс күйінде COM NC -ге қосылған. Жұмыс кернеуі қосылған кезде реле катушкасы қуат алады және COM контактіні NO күйіне өзгертеді. Әр түрлі релелік конфигурациялар SPST, SPDT, DPDT және т. Контакторлардың дұрыс комбинациясын қолдану арқылы электр тізбегін қосуға және өшіруге болады. Реле қосқышының құрылымы туралы ішкі мәліметтерді алыңыз.

COM терминалы - жалпы терминал. Егер COIL терминалдары номиналды кернеумен қуатталса, COM мен NO терминалдарында үздіксіздік бар. Егер COIL терминалдарына қуат берілмесе, онда COM мен NO терминалдарында үздіксіздік болмайды.

NC терминалы - қалыпты жабық терминал. Бұл терминал, егер реле жұмыс істеуге кернеу алмаса да, жеткілікті болса да, оны қосуға болады.

NO терминалы - Әдетте ашық терминал. Бұл реле номиналды кернеуді алған кезде қажетті шығуды орналастыратын терминал. Егер COIL терминалдарына кернеу болмаса немесе кернеу жеткіліксіз болса, шығыс ашық болады және кернеуді алмайды. COIL терминалдары номиналды кернеуді алған кезде немесе одан сәл төмен болғанда, NO терминалы жеткілікті кернеуді алады және құрылғыны шығуда қосуға болады.

2. DHT температура сенсоры

DHT11 - ылғалдылық пен температура сенсоры, ол калибрленген цифрлық шығуды шығарады. DHT11 кез келген микроконтроллермен Arduino, Raspberry Pi және т.б. интерфейс бола алады және бірден нәтиже алады. DHT11 - бұл жоғары сенімділік пен ұзақ мерзімді тұрақтылықты қамтамасыз ететін төмен ылғалдылық пен температура сенсоры.

3. ESP8266 Толық сипаттамасы

ESP8266 WiFi модулі - бұл кез келген микроконтроллерге сіздің WiFi желіңізге кіруге мүмкіндік беретін интеграцияланған TCP/IP протоколы бар дербес SOC. ESP8266 басқа қосымшадан қосымшалардың желілік функцияларын орналастыруға қабілетті Әрбір ESP8266 модулі AT командасымен алдын ала бағдарламаланған.

ESP8266 VoIP қосымшалары мен Bluetooth бірге жұмыс интерфейстері үшін APSD қолдайды, оның құрамында барлық жұмыс жағдайында жұмыс істеуге мүмкіндік беретін өздігінен калибрленген РЖ бар және сыртқы жиілік жиілік бөліктерін қажет етпейді.

Мүмкіндіктер

  • 802.11 b/g/n
  • Wi-Fi Direct (P2P),
  • soft-AP Интеграцияланған TCP/IP протоколдар стегі
  • Біріктірілген TR қосқышы, balun, LNA, күшейткіш және сәйкес келетін желі
  • Біріктірілген PLL, реттегіштер, DCXO және қуатты басқару блоктары
  • +19.5дБм шығыс қуаты 802.11b режимінде
  • Қуатты төмендету ағымы <10uA
  • 1 МБ флэш -жады
  • Қолданбалы процессор ретінде төмен қуатты интеграцияланған 32 биттік процессорды қолдануға болады
  • SDIO 1.1 / 2.0, SPI, UART
  • STBC, 1 × 1 MIMO, 2 × 1 MIMOA-MPDU & A-MSDU агрегациясы және 0,4 мс күзет интервалы
  • Ояту және пакеттерді <2 мс ішінде жіберу
  • Күту режимінде тұтынылатын қуат <1,0 мВт (DTIM3)

I34 суретте көрсетілгендей түйреуіштің сипаттамасы.

ESP модулін Arduino UNO -мен қосу үшін бізге Lm1117 3.3 кернеу реттегіші немесе кез келген реттегіш қажет, себебі Arduino ESP8266 -ға 3,3 вольтты бере алмайды.

Ескертпе:- кодты жүктеу кезінде жарқыл түймесін, содан кейін қалпына келтіру түймесін бір рет басыңыз, содан кейін i29 суретте көрсетілгендей жарқыл түймесін босатыңыз.

DHT11 сенсоры мен релесін қосу үшін біз ESP8266 модулінің екі GPIO түйреуішін қолданамыз. Кодты жүктегеннен кейін RX, TX, GPIO0 түйреуіштерін ажыратуға болады. Мен DHT11 сенсоры үшін GPIO0 және реле үшін GPIO2 қолдандым. DHT11 сенсоры ESP8266 -мен жақсы жұмыс істейді, бірақ реле үшін бізге бір қосымша нәрсе қажет, яғни опто изоляторы немесе опто қосқышы. I30, i31, i32 және i33 суреттерін қараңыз.

5 -қадам: Қосылымдар

ESP8266 ===> DHT11GPIO0 ===> Шығу штыры

ESP8266 ===> RelayGPIO2 ===> Кіріс

ARDUINO ===> ESP8266

Gnd ===> GndTX ===> TX

RX ===> RX

Қалпына келтіру түймесі ===> RST

Жарқыл түймесі ===> GPIO0

6 -қадам: Барлығын тексеру

Барлығын тексеру
Барлығын тексеру
Барлығын тексеру
Барлығын тексеру
Барлығын тексеру
Барлығын тексеру
Барлығын тексеру
Барлығын тексеру

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

Ол үшін сіздің ESP8266 қосылады, себебі біздің сервер ESP8266 жұмыс істейді. Мұнда мен ешқандай сенсорды ESP8266 -ға қоспадым, мен оның жұмыс істеп тұрғанын тексеремін, бірақ сенсорды ESP8266 -ға қосуға болады. Ол Heroku -ға қосылғаннан кейін сіз қосылғанын көресіз. Тестілеу үшін сіз өзіңіз жасаған Amazon шеберлігіне өтіңіз, содан кейін тест бетін басыңыз. Оның жұмысы тексерілгеннен кейін мен сенсорымды ESP8266 -ға қосамын. Сіз нәтижелерді i35, i36, 37, 38, 39, 40 суреттерінде көрсетілгендей көре аласыз.

Егер сіз оны ESP8266 қоспай қолдансаңыз, сіз бұл қатені i41 суретте көрсетілгендей аласыз.

Сіз қолдануға болатын сөз

қосқыш триггерін {Сандар} пайызға {tmp_scale} қойыңыз

мысалы:- қосқыш триггерін 50 % ылғалдылыққа орнатыңыз

{query} - ауысу күйі

қосылу/өшіру- қосқыш күйі

{Switch_State} қосқыш триггері

экс -қосу/өшіру қосқышы

қосқыш триггерін {Numbers} дәрежеге {tmp_scale} қойыңыз

бұрынғы қосқыш триггері фаренгейт 76 градусқа

бұрынғы қосқыш триггері 24 градусқа дейін

қосқышты бұру {Switch_State}

ex - қосқышты қосу/өшіру

Нәтижелер үшін i41 - i46 суретін қараңыз.

AlexaAlexa -мен сөйлескен кезде, arduino -дан қосқыш триггерін қосуды/өшіруді сұраңыз

Alexa, arduino -дан қосқыш триггерін 24 градус Цельсийге орнатуды сұраңыз.

Alexa, arduino -дан коммутаторды ылғалдылықтың 50 пайызына қоюды сұраңыз

Alexa, arduino -дан қосуды/өшіруді сұраңыз

7 -қадам: VUI диаграммасы

VUI (дауысты пайдаланушы интерфейсі) диаграммасы
VUI (дауысты пайдаланушы интерфейсі) диаграммасы

8 -қадам: демо

Image
Image

1. Температура мен ылғалдылықты орнатыңыз.

2. Триггерді Цельсий бойынша 20 градусқа орнатыңыз.

3. Ылғалдылықты 80 пайызға орнатыңыз.

9 -қадам: схемалық

Ұсынылған: