สารบัญ:
- ขั้นตอนที่ 1: ข้อกำหนด
- ขั้นตอนที่ 2: การตั้งค่าฟีด Adafruit IO ของคุณ
- ขั้นตอนที่ 3: การตั้งค่า If this แล้ว Applet นั้น
- ขั้นตอนที่ 4: เชื่อมต่ออุปกรณ์ IOT ของเรากับ Adafruit IO และ WiFi
- ขั้นตอนที่ 5: ทำให้มือของเราสกปรกด้วย Arduino Code
- ขั้นตอนที่ 6: อัปโหลดรหัสของคุณและทดสอบ
วีดีโอ: เชื่อมต่อ Arduino ของคุณกับบริการภายนอก: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
สวัสดี! บทช่วยสอนนี้จะแสดงวิธีเชื่อมต่ออุปกรณ์ Arduino หรือ IOT ที่เชื่อมต่อที่คุณเลือกกับบริการภายนอก เพื่อประโยชน์ของบทช่วยสอนนี้ เราจะทำงานกับ Easy Window (หน้าต่างอัจฉริยะที่สมมติขึ้นแต่ตั้งโปรแกรมได้) หากเป็นเช่นนี้ และ Adafruit IO
เราจะใช้ If This That That (IFTTT จากนี้ไป) เพื่อเปิดม่าน Easy Window ของเราเมื่อข้างนอกมีแดด
ขั้นตอนที่ 1: ข้อกำหนด
บทช่วยสอนนี้คาดว่าคุณรู้อยู่แล้วว่าจะเชื่อมต่อบอร์ด Arduino ของคุณกับ Adafruit และตั้งค่าฟีดได้อย่างไร ในกรณีที่คุณต้องการการเตือนความจำสั้นๆ เกี่ยวกับวิธีการทำเช่นนี้ คุณสามารถทำตามบทช่วยสอนนี้ (เป็นภาษาดัตช์)
- บอร์ด Arduino ที่คุณเลือก ต้องเปิดใช้งาน WiFi
- สายไมโคร USB
- คอมพิวเตอร์ที่ติดตั้ง Arduino IDE
- บัญชีบน Adafruit IO (ลิงค์สมัคร)
- บัญชีบน If This That That (ลิงค์สมัคร)
ขั้นตอนที่ 2: การตั้งค่าฟีด Adafruit IO ของคุณ
มาตั้งค่าฟีด Adafruit IO ที่เราจะต้องส่งข้อมูลของเราไปที่:
- เข้าสู่ระบบ Adafruit IO แล้วคลิก "ฟีด" ในแถบเมนูด้านบนซ้าย
- คลิกที่ "การดำเนินการ" จากนั้น "สร้างฟีดใหม่" เราจะตั้งชื่อว่า "WindowCurtains" แต่คุณสามารถตั้งชื่อได้ตามต้องการ
- คลิกที่ "สร้าง" และคุณทำเสร็จแล้ว!
ขั้นตอนที่ 3: การตั้งค่า If this แล้ว Applet นั้น
เราจะใช้ IFTTT เพื่อเปิดม่าน Easy Window ของเราเมื่อได้รับแสงแดดข้างนอก ในขั้นตอนนี้ เราจะเลือกเงื่อนไขทริกเกอร์และเชื่อมต่อกับ Adafruit IO เพื่อส่งข้อมูลไปยังฟีด WindowCurtains ของเรา
เมื่อคุณมีบัญชี IFTTT พร้อมแล้ว คุณสามารถสร้างแอปเพล็ตแรกได้
- บนเว็บไซต์ IFTTT ไปที่มุมบนขวาแล้วคลิกชื่อผู้ใช้ของคุณ จากนั้นเลือก "New Applet"
- ตอนนี้เราต้องเลือกทริกเกอร์ของเรา คลิกที่ปุ่ม "+นี่" ที่ไฮไลต์แล้วค้นหา Weather Underground จากนั้นเลือกบริการ
- มองหาไทล์ "เงื่อนไขปัจจุบันเปลี่ยนเป็น" เลือกแล้วเลือก "ล้าง" จากเมนูแบบเลื่อนลง
ด้วยการตั้งค่าทริกเกอร์ของเรา ตอนนี้เราสามารถเลือกบริการการดำเนินการของเราได้แล้ว
- ค้นหา Adafruit และเลือกบริการ
- เลือก "ส่งข้อมูลไปยัง Adafruit IO"
- เลือกฟีดที่คุณต้องการส่งข้อมูลไป นี่ควรเป็นสิ่งที่คุณสร้างในขั้นตอนก่อนหน้า
- ในช่อง "ข้อมูลที่จะบันทึก" ให้พิมพ์ "เปิด" นี่คือข้อมูลที่จะถูกส่งไปยังฟีด Adafruit
- คลิกที่ "สร้างการดำเนินการ" ตรวจสอบเงื่อนไขของคุณในหน้าจอถัดไป และคลิก "เสร็จสิ้น" หากเสร็จสิ้น
ขั้นตอนที่ 4: เชื่อมต่ออุปกรณ์ IOT ของเรากับ Adafruit IO และ WiFi
ตอนนี้เราได้ตั้งค่าฟีด Adafruit IO และแอปเพล็ต IFTTT แล้ว เราจะมาดูกันว่าเราจะให้บริการเหล่านี้สื่อสารกับอุปกรณ์ IOT ของเราได้อย่างไร
- เปิด Arduino IDE
- ไปที่ ไฟล์ > ตัวอย่าง > Adafruit IO Arduino > adafruitio_14_neopixel
- ไปที่แท็บที่สองชื่อ "config.h"
- ใต้ส่วนความคิดเห็นแรกที่ชื่อ "Adafruit IO Config" คุณจะพบบรรทัดของโค้ดเหล่านี้:
#define IO_USERNAME "ชื่อผู้ใช้ของคุณ"
#define IO_KEY "your_key"
แทนที่ "your_username" และ "your_key" ด้วยชื่อผู้ใช้ Adafruit IO และคีย์ AIO แล้วปล่อยไว้ในเครื่องหมายคำพูด
ภายใต้ส่วนความคิดเห็นที่สอง ควรมีโค้ดสองบรรทัดนี้:
#define WIFI_SSID "your_ssid"#define WIFI_PASS "your_pass"
แทนที่ "your_ssid" และ "your_pass" ด้วยข้อมูลรับรอง WiFi ของเราเตอร์ของคุณโดยปล่อยให้อยู่ในเครื่องหมายคำพูด
สำคัญ: Arduino ของคุณจะใช้งานได้บนเครือข่าย 2.4GHz เท่านั้น หากต้องการตรวจสอบว่าเครือข่ายของคุณทำงานด้วยความถี่ที่ถูกต้องหรือไม่ ให้ไปที่การตั้งค่า WiFi ของคอมพิวเตอร์ > เลือกเครือข่ายของคุณ > คุณสมบัติ มองหาบางอย่างในบรรทัดของ "แถบเครือข่าย" และตรวจสอบให้แน่ใจว่าเป็น 2.4GHz ใน Windows 10 ดูเหมือนว่าในภาพหน้าจอด้านบน
ขั้นตอนที่ 5: ทำให้มือของเราสกปรกด้วย Arduino Code
ในภาพสเก็ตช์ adafruit_14_neopixel เดียวกันกับขั้นตอนก่อนหน้า ให้ค้นหาทุกบรรทัดที่มี "สี" เขียนอยู่ในนั้นและแทนที่ด้วย "WindowCurtains" จากนั้นทำเช่นเดียวกันกับ "นีโอพิกเซล" และเปลี่ยนด้วย "EasyWindow"
ภายใต้ส่วนความคิดเห็นที่สองชื่อ "ตัวอย่างเริ่มต้นที่นี่" แทน
#รวม "Adafruit_NeoPixel.h"
#define WINDOW_PIN 5
#define PIXEL_COUNT 5
กับ
#include "EasyWindow.h"
#define WINDOW_PIN 5
ที่ส่วนท้ายของ handleMessage void เราจะเขียนและถ้าคำสั่งที่เปิดม่าน Easy Window ของเราหากตรงตามเงื่อนไขเหล่านี้:
ถ้า (WindowCurtain.message == เปิด) { window.open(); } รหัสสุดท้ายของคุณควรมีลักษณะดังนี้
// Adafruit IO RGB LED Output Example// // Adafruit ลงทุนเวลาและทรัพยากรโดยจัดหาโอเพ่นซอร์สโค้ดนี้ // โปรดสนับสนุน Adafruit และฮาร์ดแวร์โอเพ่นซอร์สด้วยการซื้อ // ผลิตภัณฑ์จาก Adafruit! // // เขียนโดย Todd Treece สำหรับ Adafruit Industries // ลิขสิทธิ์ (c) 2016-2017 Adafruit Industries // ได้รับอนุญาตภายใต้ใบอนุญาต MIT // // ข้อความด้านบนทั้งหมดต้องรวมอยู่ในการแจกจ่ายซ้ำ
/**************************** การกำหนดค่า ********************** *************
/ แก้ไขแท็บ config.h และป้อนข้อมูลรับรอง Adafruit IO ของคุณ
// และการกำหนดค่าเพิ่มเติมใดๆ ที่จำเป็นสำหรับ WiFi, เซลลูลาร์, // หรือไคลเอนต์อีเธอร์เน็ต #include "config.h"
/************************ ตัวอย่างเริ่มต้นที่นี่ ********************** *********/
#include "EasyWindow.h"
#define WINDOW_PIN 5
// ตั้งค่าฟีด 'WindowCurtain'
AdafruitIO_Feed *WindowCurtain = io.feed("ม่านหน้าต่าง");
การตั้งค่าเป็นโมฆะ () {
// เริ่มการเชื่อมต่อแบบอนุกรม
Serial.begin(115200);
// รอให้ซีเรียลมอนิเตอร์เปิด
ในขณะที่ (! Serial);
// เชื่อมต่อกับ io.adafruit.com
Serial.print("กำลังเชื่อมต่อกับ Adafruit IO"); io.connect();
// ตั้งค่าตัวจัดการข้อความสำหรับฟีด 'WindowCurtain'
// ฟังก์ชัน handleMessage (กำหนดด้านล่าง) // จะถูกเรียกทุกครั้งที่มีข้อความ // ได้รับจาก adafruit io WindowCurtain->onMessage (จัดการข้อความ);
// รอการเชื่อมต่อ
ในขณะที่ (io.status () < AIO_CONNECTED) { Serial.print ("."); ล่าช้า (500); }
// เราเชื่อมต่อกัน
Serial.println(); Serial.println(io.statusText()); WindowCurtain->get();
// Easy Window init
window.begin(); }
วงเป็นโมฆะ () {
// io.run(); จำเป็นสำหรับสเก็ตช์ทั้งหมด
// ควรอยู่ที่ด้านบนสุดของลูป // ฟังก์ชั่นเสมอ มันทำให้ไคลเอนต์เชื่อมต่อกับ // io.adafruit.com และประมวลผลข้อมูลที่เข้ามา io.run();
}
// ฟังก์ชั่นนี้ถูกเรียกเมื่อใดก็ตามที่มีข้อความ 'WindowCurtain'
// ได้รับจาก Adafruit IO มันถูกแนบมากับ // ฟีด WindowCurtain ในฟังก์ชัน setup() ด้านบน โมฆะ handleMessage (AdafruitIO_Data * data) {
// พิมพ์ค่า RGB และค่าฐานสิบหก
Serial.println("ได้รับคำสั่ง: "); Serial.println(data->value());
WindowCurtains แบบยาว = data->toEasyWindow();
ถ้า (WindowCurtain.message == เปิด) {
window.open(); } }
ขั้นตอนที่ 6: อัปโหลดรหัสของคุณและทดสอบ
ตอนนี้คุณสามารถอัปโหลดโค้ดของคุณไปยังบอร์ด Arduino ได้แล้ว เชื่อมต่อกับคอมพิวเตอร์ของคุณด้วยสาย USB แล้วกดปุ่ม "อัปโหลด" ที่มุมซ้ายบนของ Arduino IDE (ดูเหมือนลูกศรชี้ขวา)
หากทุกอย่างเป็นไปด้วยดี รหัสของคุณควรอัปโหลดไปยังบอร์ดของคุณโดยไม่สะดุด คุณสามารถตรวจสอบสถานะการเชื่อมต่อในมอนิเตอร์ซีเรียลของ IDE ได้จากเครื่องมือ > การตรวจสอบอนุกรม เมื่ออุปกรณ์ของคุณเชื่อมต่อแล้ว คุณจะได้รับข้อความว่า "เชื่อมต่อแล้ว!" และหากภายนอกปลอดโปร่ง IFTTT จะส่งข้อความ "เปิด" ไปยังฟีด "WindowCurtains" เพื่อเรียกใช้ Easy Window เพื่อเปิดม่าน สิ่งนี้ควรถูกมิเรอร์ในมอนิเตอร์แบบอนุกรมด้วย "Received command: Open"
ยินดีด้วย! คุณถึงจุดสิ้นสุดของบทช่วยสอนและเรียนรู้วิธีเชื่อมต่ออุปกรณ์ Arduino IOT ของคุณกับ IFTTT และทริกเกอร์เงื่อนไขเฉพาะ
แนะนำ:
เชื่อมต่อ Arduino Uno กับ ESP8266: 9 ขั้นตอน
เชื่อมต่อ Arduino Uno กับ ESP8266: ยินดีต้อนรับ! คุณกำลังจะอ่านคำแนะนำทีละขั้นตอนเกี่ยวกับวิธีการเชื่อมต่อ Arduino Uno ของคุณกับอินเทอร์เน็ตด้วย ESP8266 (ESP-01) ได้สำเร็จ นอกจากนี้ยังเป็นคำสั่งสอนครั้งแรกของฉันด้วยดังนั้นโปรดบอกฉันด้วย! ให้ฉันเริ่มต้นด้วยการบอกว่า ESP8266 คือ
เชื่อมต่อ Sensirion, SPS-30, เซ็นเซอร์อนุภาคกับ Arduino Duemilanove โดยใช้โหมด I2C: 5 ขั้นตอน
การเชื่อมต่อ Sensirion, SPS-30, เซ็นเซอร์อนุภาคกับ Arduino Duemilanove โดยใช้โหมด I2C: เมื่อฉันกำลังดูการเชื่อมต่อเซ็นเซอร์ SPS30 ฉันรู้ว่าแหล่งที่มาส่วนใหญ่มีไว้สำหรับ Raspberry Pi แต่มีไม่มากสำหรับ Arduino ฉันใช้เวลาเล็กน้อยเพื่อทำให้เซ็นเซอร์ทำงานกับ Arduino และตัดสินใจโพสต์ประสบการณ์ของฉันที่นี่เพื่อที่มันจะ
Arduino Lux Meter - เชื่อมต่อ OPT3001 กับ Arduino: 4 ขั้นตอน
Arduino Lux Meter - เชื่อมต่อ OPT3001 กับ Arduino: โดยทั่วไปแล้วเราต้องเผชิญกับสถานการณ์ที่เราต้องวัดความเข้มของแสง ดังนั้นฉันจึงตัดสินใจทำโครงการเล็กๆ ที่จะช่วยเราแก้ปัญหานี้ โครงงานนี้แสดงให้เห็นว่าเราสามารถใช้ OPT3001 กับ Arduino เป็น Lux meter ได้อย่างไร ในโครงการนี้ ฉันมี
เชื่อมต่อ LCD หลายตัวกับ Arduino Uno โดยใช้ Common Data Line: 5 ขั้นตอน
เชื่อมต่อ LCD หลายตัวกับ Arduino Uno โดยใช้ Common Data Line: วันนี้ในคำแนะนำนี้ฉันจะแสดงวิธีเชื่อมต่อโมดูล LCD 16x2 หลายตัวกับบอร์ด Arduino uno โดยใช้สายข้อมูลทั่วไป สิ่งที่น่าสนใจที่สุดเกี่ยวกับโครงการนี้คือ มันใช้สายข้อมูลทั่วไปและแสดงข้อมูลที่แตกต่างกันในเ
เชื่อมต่อ 4 เกมโดยใช้ Arduino และ Neopixel: 7 ขั้นตอน (พร้อมรูปภาพ)
เชื่อมต่อ 4 เกมโดยใช้ Arduino และ Neopixel: แทนที่จะให้ของขวัญของเล่นที่วางขายทั่วไป ฉันต้องการมอบของขวัญที่ไม่เหมือนใครให้หลานชายซึ่งพวกเขาสามารถรวบรวมและ (หวังว่า) จะเพลิดเพลิน แม้ว่าโค้ด Arduino สำหรับโครงการนี้อาจยากเกินไปสำหรับพวกเขาที่จะเข้าใจ แต่แนวคิดพื้นฐาน