Агуулгын хүснэгт:

Alexa, Arduino ашиглан дуут удирдлагатай унтраалга: 10 алхам (зурагтай)
Alexa, Arduino ашиглан дуут удирдлагатай унтраалга: 10 алхам (зурагтай)

Видео: Alexa, Arduino ашиглан дуут удирдлагатай унтраалга: 10 алхам (зурагтай)

Видео: Alexa, Arduino ашиглан дуут удирдлагатай унтраалга: 10 алхам (зурагтай)
Видео: REAL RACING 3 LEAD FOOT EDITION 2024, Долдугаар сарын
Anonim
Alexa, Arduino ашиглан дууны хяналттай унтраалга
Alexa, Arduino ашиглан дууны хяналттай унтраалга

Энэхүү төслийн гол зорилго нь төхөөрөмжийг асаах, унтраахын тулд унтраалга (реле) -ийг хянахын тулд температур мэдрэгчийг ашиглах явдал юм.

Материалын жагсаалт

  1. 12V релений модуль ==> $ 4.2
  2. Arduino uno ==> 8 доллар
  3. DHT11 температур мэдрэгч ==> 3 доллар
  4. ESP8266 модуль ==> 4.74 доллар
  5. N26 оптик холбогч ==> $ 0.60
  6. LM1117 хүчдэлийн зохицуулагч ==> $ 0.60
  7. Breadboard ==> $ 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 сайт руу очиж шинэ данс үүсгээрэй эсвэл тэнд нэвтэрнэ үү. Холбоосыг доор өгөв

Heroku вэбсайт

Шинэ апп үүсгэж эхэлье. Таныг аппликейшн байршуулах үед би "iottempswitch" гэсэн нэр өгсөн.

Аппыг хийсний дараа GitHub руу очно уу.

Тэнд нэвтэр эсвэл дансгүй бол бүртгүүлнэ үү. Нэвтэрсний дараа шинэ репозитор үүсгээрэй. Та хүссэн нэрээ өгөөд хадгалах газар үүсгэх товчийг дарна уу. Дараагийн хуудсан дээр README дээр дарж, энэ хуудсан дээр бусадтай хуваалцахыг хүсч буй тайлбараа өгнө үү. Үүний дараа шинэ файл оруулах дээр дарна уу. Дараа нь байршуулах товчийг дарна уу.

Фолдерыг чирж хаях эсвэл файл сонгох хоёр сонголт байна. Шаардлагатай файлуудыг доороос татаж авна уу. Файлуудыг сонгосны дараа өөрчлөлтүүдийг дарна уу. Heroku дээр үүсгэсэн програмаа нээгээд хэсэг рүү очно уу. Үүний дараа GitHub дээр үүсгэсэн репозиторын нэрийг оруулна уу. Миний хувьд энэ бол Smart-Relay юм. Үүнийг хуулж энд оруулна уу. Таны холбоос гарч ирмэгц холболт дээр дарна уу. Дараа нь салбарыг байрлуулах (гарын авлага) дээр дарна уу. Байршуулсны дараа та холбоосыг бүтээх бүртгэлээс харж болно, эсвэл холбоосыг тохиргооноос харж болно. Хожим нь бид Амазоны ур чадварыг эзэмшиж байхдаа энэ линк хэрэгтэй болно.

Алхам 2: Амазон

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

Alexa ур чадварын хамгийн сүүлийн үеийн зургууд

Амазон хөгжүүлэгчийн сайт дээр бид Amazon ур чадварыг ашиглан температур, чийгшлийг тохируулах замаар унтраалгыг идэвхжүүлдэг.

Amazon хөгжүүлэгчийн сайт руу очно уу. Холбоосыг доор өгөв.

Amazon хөгжүүлэгчийн вэбсайт

  • I4 -р зурагт үзүүлсэн шиг баруун дээд буланд байгаа Хөгжүүлэгчийн консол руу очно уу
  • Alexa руу очоод Alexa Skill Kit -ийг сонгоод "Шинэ ур чадвар нэмэх" дээр дарж шинэ ур чадвар бий болго.

Та шинэ ур чадвар нэмэхэд ур чадварын мэдээллийн хуудсыг харах болно.

1. Ур чадварын мэдээлэл (i7 зурагт үзүүлсэн шиг)

Бид ур чадварын төрөл, хэл, нэр, дуудлагын нэрийг өгөх ёстой.

Ур чадварын төрөл ==> өөрчлөн сонгоно уу

  • Нэр ==> дурын нэрийг сонгоно уу.
  • Жишээ нь;
  • Хэл ==> Англи (Энэтхэг). Улс орныхоо дагуу сонгоно уу

хадгалах дээр дараад дараа нь дарна уу

2. Харилцааны загвар

Энд бид ур чадвар эзэмшигчийг ашиглах болно. Тиймээс ур чадвар бүтээгчийг эхлүүлэх дээр дарна уу. i8 зурагт үзүүлсэн шиг хуудсыг харах болно.

Нэгдүгээрт, бид шинэ санааг бий болгодог. Нэмэх дээр дарна уу (зүүн гар талд), "smartswitch" дээр ашиглахыг хүссэн нэрээ өгнө үү

  • I9 зурагт үзүүлсэн шиг үүрний төрөл "хэмжих_төрөл" ба үүр "температур" ба "чийгшил" -ийг өгнө.
  • Үүний дараа оролтын төрөл "query" -г нэмж, i10 -р зурагт үзүүлсэн шиг оролтын утгыг "юу", "юу" гэж оруулна.
  • Үүний дараа "switchstate" слотын төрлийг нэмж, i11 зурагт үзүүлсэн шиг үүрний утгыг "асаалттай", "унтраасан" байна.

  • I12 -р зурагт үзүүлсэн шиг "tempscale" өөр үүрний төрлийг нэмж, "fahrenheit" ба "celcuis" үүрний утгыг оруулна уу.
  • Үүний дараа энд шинэ оролтын төрлийг нэмж оруулахын тулд одоо байгаа үүрний төрлийг ашигладаг бөгөөд одоо байгаа үүрийг ашиглах дээр дарна уу. Одоо байгаа үүрэнд amazon.number гэж хайгаад үүнийг сонгоод нэмнэ үү. Үүнийг нэмсний дараа i13 зурагт үзүүлсэн шиг үүнийг үүрний төрлөөр харах болно.

Тиймээс бид ашиглаж байгаа үүрний нийт төрлийг 5 болгож дуусгасан болно. Одоо дараагийн алхам руу очно уу. Бидний үүсгэсэн зорилго дээр дарна уу, миний хувьд энэ бол ухаалаг түлхүүр юм. Баруун талд та i14 зурагт үзүүлсэн шиг үүрний үүрийг харах болно.

  • Шинэ үүр үүсгэж, "Switch_State" гэж нэр өгч, i15 зурагт үзүүлсэн шиг унах товчлуурыг ашиглан "switchstate" руу оруулна уу.
  • Шинэ үүр үүсгэж, түүнд "Sensor_Values" гэж нэр өгч, i16 зурагт үзүүлсэн шиг "хэмжих_төрөл" -д оруулна уу.
  • Шинэ оролт үүсгээд "query" гэж нэр өгөөд i17 зурагт үзүүлсэн шиг "query" болгоно.
  • Үүний дараа "tmp_scale" шинэ үүрийг үүсгэн i18 зурагт үзүүлсэн шиг "tempscale" болгон зурна уу.
  • I19 -р зурагт үзүүлсэн шиг "Тоонууд" гэсэн шинэ үүр үүсгээд "Amazon. Numbers" руу оруулна уу.

Одоо бид Зорилгын үүрийг хийж дууслаа. Бид 5 зориулалтын үүр ашиглаж байна. Үүний дараа бид i20 зурагт үзүүлсэн шиг жишээ дээж рүү шилжих болно.

Энэ жишээ хэллэгийг нэмнэ үү.

шилжүүлэгчийн гохыг {Numbers} хувь {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 -ийг нээгээд File ==> Preferences руу очно уу

Нэмэлт самбаруудын менежер дээр URL -г хуулж буулгаад i26 зурагт үзүүлсэн шиг дарна уу.

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

  • Tools ==> Board ==> Board Manager хэсэгт очиж Board Manager -ийг нээнэ үү.
  • Самбарын менежерийг нээж i27 зурагт үзүүлсэн шиг nodemcu -г хайж олоорой.
  • Үүний дараа ESP8266WiFi номын санг татаж аваарай. Номын сангийн менежерийг нээнэ үү: Sketch ==> Номын сан оруулах ==> Номын санг удирдах.
  • ESP8266WiFi номын санг хайж олоод суулгаарай.
  • Самбар ==> Ерөнхий ESP8266 модулийг сонгоно уу.
  • Кодыг байршуулахаас өмнө бидэнд гурван номын сан хэрэгтэй.

Шаардлагатай номын сан

Энэ номын санг Arduino -ийн номын сангийн хавтсанд шилжүүлээрэй

Та SSID, PWD код болон heroku аппликешны холбоос дээр гурван зүйлийг өөрчлөх шаардлагатай бөгөөд үүний дараа кодыг байршуулна уу. ESP модулийн хувьд кодыг байршуулахдаа флэш товчлуурыг дарж, дахин тохируулах товчлуурыг нэг удаа дараад флаш товчийг дарах хэрэгтэй. Кодыг байршуулсны дараа терминалыг нээнэ үү. та гаралтыг харах болно.

Алхам 4: Бүрэлдэхүүн хэсгийн тодорхойлолт

Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт
Бүрэлдэхүүн хэсгийн тодорхойлолт

1. Реле гэж юу вэ

Реле бол цахилгаан хэлхээний төхөөрөмж бөгөөд хоёр хэлхээг цахилгаан тусгаарлаж, соронзон байдлаар холбоход ашигладаг. Эдгээр нь маш ашигтай төхөөрөмж бөгөөд нэг хэлхээ нь өөр салангид байхад нөгөө хэлхээг солих боломжийг олгодог. Тэдгээрийг ихэвчлэн электрон хэлхээг (бага хүчдэлд ажилладаг) маш өндөр хүчдэлд ажилладаг цахилгаан хэлхээнд холбоход ашигладаг. Жишээлбэл, реле нь 230В хувьсах гүйдлийн сүлжээний хэлхээг солихын тулд 5V тогтмол гүйдлийн батерейны хэлхээг хийж чаддаг.

Хэрхэн ажилладаг

Реле шилжүүлэгчийг оролт, гаралт гэсэн хоёр хэсэгт хувааж болно. Оролтын хэсэг нь цахилгаан хэлхээнээс бага хүчдэл оруулах үед соронзон орон үүсгэдэг ороомогтой байдаг. Энэ хүчдэлийг ажлын хүчдэл гэж нэрлэдэг. Түгээмэл хэрэглэгддэг реле нь 6V, 9V, 12V, 24V гэх мэт ажиллах хүчдэлийн өөр өөр тохируулгатай байдаг. Гаралтын хэсэг нь механикаар холбогдож эсвэл салгагддаг контакторуудаас бүрдэнэ. Үндсэн реле нь ихэвчлэн нээлттэй (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-ийг дэмждэг бөгөөд энэ нь өөрөө тохируулагдсан RF-ийг агуулдаг бөгөөд энэ нь бүх ажиллагааны нөхцөлд ажиллах боломжийг олгодог бөгөөд RF-ийн гаднах хэсгийг шаарддаггүй.

Онцлог шинж чанарууд

  • 802.11 b/g/n
  • Wi-Fi шууд (P2P),
  • soft-AP-нэгдсэн TCP/IP протоколын стек
  • Нэгдсэн TR унтраалга, balun, LNA, цахилгаан өсгөгч, тохирох сүлжээ
  • Нэгдсэн PLL, зохицуулагч, DCXO болон эрчим хүчний удирдлагын нэгжүүд
  • 802.11b горимд +19.5dBm гаралтын чадал
  • <10uA -ийн алдагдлын гүйдлийг бууруулна
  • 1 MB флаш санах ой
  • Бага хүч чадал бүхий 32 битийн CPU-ийг програмын процессор болгон ашиглаж болно
  • SDIO 1.1 / 2.0, SPI, UART
  • STBC, 1 × 1 MIMO, 2 × 1 MIMOA-MPDU & A-MSDU нэгтгэх, 0.4 мс хамгаалалтын интервал
  • Сэрж, пакетуудыг <2ms дотор дамжуулна уу
  • Зайны зогсолтын эрчим хүчний хэрэглээ <1.0 мВт (DTIM3)

I34 зурагт үзүүлсэн шиг Pin тодорхойлолт.

ESP модулийг Arduino UNO -той холбохын тулд бидэнд Lm1117 3.3 хүчдэлийн зохицуулагч эсвэл ямар нэгэн зохицуулагч хэрэгтэй болно, учир нь Arduino нь ESP8266 -д 3.3 в хүч өгөх боломжгүй.

Тэмдэглэл:- Кодыг байршуулахдаа флаш товчлуурыг дарж, дахин тохируулах товчийг нэг удаа дараад i29 зурагт үзүүлсэн шиг флаш товчлуурыг дарна уу.

DHT11 мэдрэгч ба реле холбохын тулд бид ESP8266 модулийн хоёр GPIO зүү ашигладаг. Кодыг байршуулсны дараа та RX, TX, GPIO0 зүүг салгаж болно. Би DHT11 мэдрэгчийн хувьд GPIO0, релений хувьд GPIO2 -ийг ашигласан. DHT11 мэдрэгч нь ESP8266 -тай сайн ажилладаг боловч релений хувьд бидэнд нэмэлт нэг зүйл хэрэгтэй болно, өөрөөр хэлбэл opto тусгаарлагч эсвэл опто холбогч. I30, i31, i32, i33 зургийг үзнэ үү.

Алхам 5: Холболтууд

ESP8266 ===> DHT11GPIO0 ===> Гаралтын зүү

ESP8266 ===> RelayGPIO2 ===> Оролт

ARDUINO ===> ESP8266

Gnd ===> GndTX ===> TX

RX ===> RX

Дахин тохируулах товчлуур ===> RST

Flash товчлуур ===> GPIO0

Алхам 6: Бүх зүйлийг шалгах

Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна
Бүх зүйлийг шалгаж байна

Бид апп, ур чадвараа амжилттай бүтээж, тоног төхөөрөмж бэлэн боллоо. Тиймээс шалгах цаг болжээ.

Манай сервер ESP8266 дээр ажиллаж байгаа тул таны ESP8266 асаалттай байна. Энд би ESP8266 -д ямар ч мэдрэгч холбогдоогүй байна, би зүгээр л ажиллаж байгаа эсэхийг шалгаж байна, гэхдээ та мэдрэгч, реленийг ESP8266 руу холбож болно. Энэ нь Heroku -тай холбогдсоны дараа та холболтыг харах болно. Туршилт хийхийн тулд өөрийн үүсгэсэн Amazon ур чадвар руу очоод туршилтын хуудсан дээр дарна уу. Ажиллаж байгаа эсэхийг шалгасны дараа би мэдрэгчээ ESP8266 -тай холбоно. Та үр дүнг i35, i36, 37, 38, 39, 40 зурагт үзүүлсэн шиг харж болно.

Хэрэв та үүнийг ESP8266 холболгүйгээр ашиглавал i41 зурагт үзүүлсэн шиг ийм алдаа гарна.

Та ашиглаж болох үг хэллэг

шилжүүлэгчийн гохыг {Numbers} хувь {tmp_scale} болгож тохируулах

жишээ:- унтраалгын гохыг 50 хувийн чийгшилд тохируулна

{query} нь шилжих төлөв юм

асаах/унтраах нь шилжүүлэгчийн төлөв юм

{Switch_State} шилжүүлэгч

хуучин асаах/унтраах унтраалга

шилжүүлэгч гохыг {Тоонууд} градус {tmp_scale} болгож тохируулах

ex - унтраах гохыг фаренгейтийн 76 градусаар тохируулна уу

ex - унтраалгын гохыг 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: Схем

Зөвлөмж болгож буй: