Mundarija:

Arduino -ni tashqi xizmatlarga ulang: 6 qadam
Arduino -ni tashqi xizmatlarga ulang: 6 qadam

Video: Arduino -ni tashqi xizmatlarga ulang: 6 qadam

Video: Arduino -ni tashqi xizmatlarga ulang: 6 qadam
Video: Arduino. Blink - tashqi svetodiodni boshqarish 2024, Iyul
Anonim
Arduino -ni tashqi xizmatlarga ulang
Arduino -ni tashqi xizmatlarga ulang

Salom! Ushbu qo'llanma sizga Arduino yoki IOT qurilmasini tashqi xizmatga qanday ulashni ko'rsatadi. Ushbu qo'llanma uchun biz Easy Window (xayoliy, lekin dasturlashtiriladigan aqlli oyna) bilan ishlaymiz, agar bu shunday bo'lsa va Adafruit IO.

Tashqarida quyoshli bo'lsa, biz "Oyna oynalari" pardalarini ochish uchun "Agar bu keyin bo'lsa" (bundan buyon IFTTT) dan foydalanamiz.

1 -qadam: talablar

Talablar
Talablar

Ushbu qo'llanmada siz Arduino kartasini Adafruit -ga qanday ulashni va lentani sozlashni bilishingizni kutishadi. Agar sizga buni qanday qilish kerakligi haqida tezkor eslatma kerak bo'lsa, siz ushbu qo'llanmani (golland tilida) bajarishingiz mumkin.

- Siz tanlagan Arduino kartasi. Wi -Fi yoqilgan bo'lishi kerak.

- Mikro USB kabeli

- Arduino IDE o'rnatilgan kompyuter

- Adafruit IO hisobi (ro'yxatdan o'tish havolasi)

- "Agar shunday bo'lsa" hisobi (ro'yxatdan o'tish havolasi)

2 -qadam: Adafruit IO tasmasini o'rnatish

Adafruit IO tasmasini o'rnatish
Adafruit IO tasmasini o'rnatish

Adafruit IO tasmasini o'rnataylik, biz o'z ma'lumotlarimizni yuborishimiz kerak bo'ladi:

  1. Adafruit IO tizimiga kiring va yuqori chapdagi menyu satrida "Feed" ni bosing.
  2. "Amallar" ni bosing, keyin "Yangi tasma yaratish". Biz uni "WindowCurtains" deb nomlaymiz, lekin siz uni xohlaganingizcha nomlashingiz mumkin.
  3. "Yaratish" tugmasini bosing va ishingiz tugadi!

3 -qadam: Agar bu Applet bo'lsa, sozlash

Agar shunday bo'lsa, o'sha appletni sozlash
Agar shunday bo'lsa, o'sha appletni sozlash
Agar shunday bo'lsa, o'sha appletni sozlash
Agar shunday bo'lsa, o'sha appletni sozlash
Agar shunday bo'lsa, o'sha appletni sozlash
Agar shunday bo'lsa, o'sha appletni sozlash

Tashqarida quyosh nuri tushganda, biz "Oyna oynalari" pardalarini ochish uchun IFTTT -dan foydalanamiz. Ushbu bosqichda biz tetik holatini tanlaymiz va ma'lumotlarni WindowCurtains tasmasiga yuborish uchun uni Adafruit IO ga ulaymiz.

IFTTT hisob qaydnomangiz tayyor bo'lgach, siz birinchi applet qilishingiz mumkin.

  1. IFTTT veb -saytida o'ng yuqori burchakka o'ting va foydalanuvchi nomingizni bosing, so'ng "Yangi Applet" -ni tanlang.
  2. Endi biz tetikni tanlashimiz kerak. Belgilangan "+bu" tugmachasini bosing va "Underground Weather" ni qidiring, so'ng xizmatni tanlang.
  3. "Joriy holat o'zgaradi" katakchasini toping, uni tanlang va ochiladigan menyudan "tozalash" ni tanlang.

Triggerni o'rnatgan holda, endi biz o'z harakatlarimiz xizmatini tanlashimiz mumkin.

  1. Adafruit -ni qidiring va xizmatni tanlang.
  2. "Ma'lumotni Adafruit IO ga yuborish" -ni tanlang.
  3. Ma'lumot yubormoqchi bo'lgan tasmani tanlang. Bu avvalgi bosqichda siz yaratgan bo'lishi kerak.
  4. "Ma'lumotlarni saqlash uchun" maydoniga "Ochish" yozing. Bu Adafruit kanaliga yuboriladigan ma'lumotlar.
  5. "Amal yaratish" ni bosing, keyingi ekranda sizning shartlaringizni ko'rib chiqing va agar tugatgan bo'lsangiz "Finish" tugmasini bosing.

4 -qadam: IOT qurilmamizni Adafruit IO va WiFi -ga ulash

IOT qurilmamizni Adafruit IO va WiFi -ga ulash
IOT qurilmamizni Adafruit IO va WiFi -ga ulash

Endi biz Adafruit IO tasmasi va IFTTT appletini o'rnatganimizdan so'ng, biz ushbu xizmatlar IOT qurilmamiz bilan qanday aloqa o'rnatishi mumkinligini ko'rib chiqamiz.

  1. Arduino IDE -ni oching.
  2. Fayl> Misollar> Adafruit IO Arduino> adafruitio_14_neopixel -ga o'ting.
  3. "Config.h" nomli ikkinchi yorliqqa o'ting.
  4. "Adafruit IO Config" deb nomlangan birinchi sharhlar bo'limida siz quyidagi kod satrlarini topasiz:

#IO_USERNAME "foydalanuvchi nomingiz" ni aniqlang

#IO_KEY "kalitingizni" belgilang

"Your_username" va "your_key" ni Adafruit IO foydalanuvchi nomi va AIO kalitiga almashtiring va tirnoqlarda qoldiring.

Ikkinchi sharh bo'limida quyidagi ikkita kod satri bo'lishi kerak:

#WIFI_SSID "sizning_ssid" ni belgilang

"Your_ssid" va "your_pass" ni yo'riqchining Wi -Fi ma'lumotlarini tirnoq belgilarida qoldiring.

Muhim: siz Arduino faqat 2,4 gigagertsli tarmoqlarda ishlaysiz. Tarmog'ingiz to'g'ri chastotada ishlayotganini tekshirish uchun kompyuteringizning Wi -Fi sozlamalariga o'ting> tarmog'ingizni tanlang> Xususiyatlar. "Tarmoqli tarmoq" qatoridan biror narsani qidiring va uning 2,4 gigagertsli ekanligiga ishonch hosil qiling. Windows 10 -da, bu yuqoridagi skrinshotda ko'rinadi.

5 -qadam: Arduino kodi yordamida qo'llarimizni iflos qilish

Arduino kodi yordamida qo'llarimizni iflos qilish
Arduino kodi yordamida qo'llarimizni iflos qilish

Oldingi bosqichda bo'lgani kabi adafruit_14_neopixel eskizida "rangli" yozuvli barcha satrlarni toping va "WindowCurtains" bilan almashtiring. "Neopixel" bilan ham xuddi shunday qiling va uni "EasyWindow" bilan o'zgartiring.

"Misol bu erdan boshlanadi" deb nomlangan ikkinchi sharh bo'limi ostiga o'rnini qo'ying

#"Adafruit_NeoPixel.h" ni qo'shing

#WINDOW_PIN 5 ni aniqlang

#aniqlang PIXEL_COUNT 5

bilan

#"EasyWindow.h" ni qo'shing

#WINDOW_PIN 5 ni aniqlang

HandleMessage void oxirida, agar biz shartlar bajarilsa, biz "Oyna oynasi" pardalarini ochadigan ifoda yozamiz:

if (WindowCurtain.message == Open) {window.open (); } Sizning oxirgi kodingiz shunday bo'lishi kerak

// Adafruit IO RGB LED chiqish misoli // // Adafruit vaqt va resurslarni ushbu ochiq kodli kod bilan ta'minlaydi. // Iltimos, Adafruit -dan // mahsulotlarini sotib olish orqali Adafruit va ochiq manbali uskunalarni qo'llab -quvvatlang! // // Adafruit Industries uchun Todd Treece tomonidan yozilgan // Mualliflik huquqi (c) 2016-2017 Adafruit Industries // MIT litsenziyasi bo'yicha litsenziyalangan. // // Yuqoridagi barcha matnlar har qanday qayta taqsimotga kiritilishi kerak.

/************************** Konfiguratsiya ********************** *************

/ config.h yorlig'ini tahrirlang va Adafruit IO hisob ma'lumotlarini kiriting

// va WiFi, uyali, // yoki chekilgan mijozlar uchun zarur bo'lgan har qanday qo'shimcha konfiguratsiya. #"config.h" ni qo'shing

/************************ Misol shu erda boshlanadi ********************** *********/

#"EasyWindow.h" ni qo'shing

#WINDOW_PIN 5 ni aniqlang

// "WindowCurtain" tasmasini o'rnating

AdafruitIO_Feed *WindowCurtain = io.feed ("Oyna pardasi");

bo'sh o'rnatish () {

// ketma -ket ulanishni boshlang

Serial.begin (115200);

// ketma -ket monitor ochilishini kuting

while (! Seriyali);

// io.adafruit.com saytiga ulaning

Serial.print ("Adafruit IO ga ulanish"); io.connect ();

// "WindowCurtain" tasmasi uchun xabar ishlovchilarini o'rnating.

// handleMessage funktsiyasi (quyida tavsiflangan) // adafruit io dan xabar kelganida // chaqiriladi. WindowCurtain-> onMessage (handleMessage);

// ulanishni kuting

while (io.status () <AIO_CONNECTED) {Serial.print ("."); kechikish (500); }

// biz aloqadamiz

Serial.println (); Serial.println (io.statusText ()); WindowCurtain-> olish ();

// Oson oyna boshlanishi

window.begin (); }

void loop () {

// io.run (); barcha eskizlar uchun talab qilinadi.

// u har doim loop // funktsiyasining yuqori qismida bo'lishi kerak. u mijozni // io.adafruit.com ga bog'lab turadi va kiruvchi ma'lumotlarni qayta ishlaydi. io.run ();

}

// bu funksiya har doim "WindowCurtain" xabari chaqiriladi

// Adafruit IOdan olingan. u yuqoridagi setup () funktsiyasida // WindowCurtain tasmasiga biriktirilgan. void handleMessage (AdafruitIO_Data *ma'lumotlari) {

// RGB qiymatlari va oltilik qiymatini chop etish

Serial.println ("Qabul qilingan buyruq:"); Serial.println (ma'lumotlar-> qiymat ());

long WindowCurtains = data-> toEasyWindow ();

agar (WindowCurtain.message == Ochiq) {

window.open (); }}

6 -qadam: Kodni yuklang va uni sinab ko'ring

Kodni yuklang va uni sinab ko'ring
Kodni yuklang va uni sinab ko'ring

Endi siz kodingizni Arduino kartasiga yuklashingiz mumkin. Uni USB kabeli bilan kompyuterga ulang va Arduino IDE -ning yuqori chap burchagidagi "Yuklab olish" tugmasini bosing (u o'ngga qaragan o'qga o'xshaydi).

Agar hamma narsa yaxshi bo'lsa, sizning kodingiz hech qanday hiqichoqsiz taxtangizga yuklanishi kerak. Ulanish holatini IDE seriyali monitorida Asboblar> Serial monitor orqali tekshirishingiz mumkin. Qurilmangiz ulanganda sizga "Ulangan!" Degan xabar keladi. va agar tashqarida aniq bo'lsa, IFTTT "WindowCurtains" tasmasiga "Ochiq" xabarini yuboradi, bu esa pardalarni ochish uchun oson oynani ishga tushiradi. Bu ketma -ket monitorda "Qabul qilingan buyruq: Ochish" bilan aks ettirilishi kerak.

Tabriklaymiz! Siz darslikning oxiriga yetdingiz va Arduino IOT qurilmangizni IFTTT -ga qanday ulashni va muayyan shartlarni ishga tushirishni o'rgandingiz.

Tavsiya: