สารบัญ:

ThingSpeak, IFTTT, เซ็นเซอร์อุณหภูมิและความชื้น และ Google ชีต: 8 ขั้นตอน
ThingSpeak, IFTTT, เซ็นเซอร์อุณหภูมิและความชื้น และ Google ชีต: 8 ขั้นตอน

วีดีโอ: ThingSpeak, IFTTT, เซ็นเซอร์อุณหภูมิและความชื้น และ Google ชีต: 8 ขั้นตอน

วีดีโอ: ThingSpeak, IFTTT, เซ็นเซอร์อุณหภูมิและความชื้น และ Google ชีต: 8 ขั้นตอน
วีดีโอ: NodeMCU ESP8266 ส่งค่าอุณหภูมิและความชื้นไปเก็บใน Google Sheets อัตโนมัติ 2024, พฤศจิกายน
Anonim
ThingSpeak, IFTTT, เซ็นเซอร์อุณหภูมิและความชื้น และ Google ชีต
ThingSpeak, IFTTT, เซ็นเซอร์อุณหภูมิและความชื้น และ Google ชีต

ในโครงการนี้ เราจะวัดอุณหภูมิและความชื้นโดยใช้เซ็นเซอร์อุณหภูมิและความชื้น NCD, ESP32 และ ThingSpeak เราจะส่งการอ่านค่าอุณหภูมิและความชื้นที่แตกต่างกันไปยัง Google ชีตโดยใช้ ThingSpeak และ IFTTT เพื่อวิเคราะห์ข้อมูลเซ็นเซอร์

ขั้นตอนที่ 1: ต้องใช้ฮาร์ดแวร์และซอฟต์แวร์

ฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็น
ฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็น
ฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็น
ฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็น

ฮาร์ดแวร์:

  • ESP-32: ESP32 ทำให้ง่ายต่อการใช้ Arduino IDE และ Arduino Wire Language สำหรับแอปพลิเคชัน IoT โมดูล ESp32 IoT นี้รวม Wi-Fi, Bluetooth และ Bluetooth BLE เพื่อการใช้งานที่หลากหลาย โมดูลนี้มาพร้อมกับคอร์ CPU 2 คอร์ที่สามารถควบคุมและขับเคลื่อนแยกกันได้ และด้วยความถี่สัญญาณนาฬิกาที่ปรับได้ตั้งแต่ 80 MHz ถึง 240 MHz โมดูล ESP32 IoT WiFi BLE พร้อม USB ในตัวนี้ได้รับการออกแบบมาให้พอดีกับผลิตภัณฑ์ ncd.io IoT ทั้งหมด ตรวจสอบเซ็นเซอร์และรีเลย์ควบคุม, FET, ตัวควบคุม PWM, โซลินอยด์, วาล์ว, มอเตอร์ และอื่นๆ อีกมากมายจากทุกที่ในโลกโดยใช้หน้าเว็บหรือเซิร์ฟเวอร์เฉพาะ เราผลิต ESP32 เวอร์ชันของเราเองเพื่อให้พอดีกับอุปกรณ์ NCD IoT โดยมีตัวเลือกการขยายมากกว่าอุปกรณ์อื่นๆ ในโลก! พอร์ต USB ในตัวช่วยให้ตั้งโปรแกรม ESP32 ได้ง่าย โมดูล ESP32 IoT WiFi BLE เป็นแพลตฟอร์มที่น่าทึ่งสำหรับการพัฒนาแอปพลิเคชัน IoT โมดูล ESP32 IoT WiFi BLE นี้สามารถตั้งโปรแกรมได้โดยใช้ Arduino IDE
  • IoT Long Range Wireless Temperature And Humidity Sensor: เซ็นเซอร์ความชื้นอุณหภูมิไร้สายระยะไกลอุตสาหกรรม เกรดที่มีความละเอียดของเซนเซอร์ ±1.7%RH ±0.5°C มากถึง 500,000 การส่งสัญญาณจากแบตเตอรี่ AA 2 ก้อน วัด -40 ° C ถึง 125 ° C ด้วยแบตเตอรี่ที่รอดชีวิตจากการจัดอันดับเหล่านี้ ช่วง LOS ที่เหนือกว่า 2 ไมล์และ 28 ไมล์ด้วยเสาอากาศกำลังสูง เชื่อมต่อกับ Raspberry Pi, Microsoft Azure, Arduino และอื่นๆ
  • โมเด็มตาข่ายไร้สายระยะไกลพร้อมอินเทอร์เฟซ USB

ซอฟต์แวร์ที่ใช้

  • Arduino IDE
  • ThingSpeak
  • IFTTT

ห้องสมุดที่ใช้

  • PubSubClient Library
  • Wire.h

ไคลเอนต์ Arduino สำหรับ MQTT

ไลบรารีนี้จัดเตรียมไคลเอ็นต์สำหรับการส่งข้อความแบบเผยแพร่/สมัครรับข้อมูลอย่างง่ายด้วยเซิร์ฟเวอร์ที่สนับสนุน MQTT สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ MQTT โปรดไปที่ mqtt.org

ดาวน์โหลด

ดาวน์โหลดไลบรารีเวอร์ชันล่าสุดได้จาก GitHub

เอกสาร

ห้องสมุดมีภาพสเก็ตช์ตัวอย่างมากมาย ดูไฟล์ > ตัวอย่าง > PubSubClient ภายในแอปพลิเคชัน Arduino เอกสาร API แบบเต็ม

ฮาร์ดแวร์ที่เข้ากันได้

ไลบรารีใช้ Arduino Ethernet Client API สำหรับการโต้ตอบกับฮาร์ดแวร์เครือข่ายพื้นฐาน ซึ่งหมายความว่ามันใช้งานได้กับบอร์ดและโล่จำนวนมากขึ้นเรื่อยๆ ซึ่งรวมถึง:

  • Arduino Ethernet
  • Arduino Ethernet Shield
  • Arduino YUN – ใช้ YunClient ที่รวมมาแทน EthernetClient และอย่าลืมทำ Bridge.begin() Arduino WiFi Shield ก่อน - หากคุณต้องการส่งแพ็กเก็ตที่มีขนาดใหญ่กว่า 90 ไบต์ด้วยโล่นี้ ให้เปิดใช้งานตัวเลือก MQTT_MAX_TRANSFER_SIZE ใน PubSubClient.h.
  • SparkFun WiFly Shield – เมื่อใช้กับห้องสมุดนี้
  • อินเทล กาลิเลโอ/เอดิสัน
  • ESP8266
  • ขณะนี้ ESP32 ห้องสมุดไม่สามารถใช้กับฮาร์ดแวร์ที่ใช้ชิป ENC28J60 เช่น Nanode หรือ Nuelectronics Ethernet Shield สำหรับสิ่งเหล่านี้ มีห้องสมุดสำรองให้เลือก

ห้องสมุดสาย

ไลบรารี Wire ช่วยให้คุณสามารถสื่อสารกับอุปกรณ์ I2C ซึ่งมักเรียกว่า "2 wire" หรือ "TWI" (Two Wire Interface) สามารถดาวน์โหลดได้จาก Wire.h

การใช้งานพื้นฐาน

  • Wire.begin() เริ่มใช้ Wire ในโหมดมาสเตอร์ ซึ่งคุณจะเริ่มต้นและควบคุมการถ่ายโอนข้อมูล นี่เป็นการใช้งานทั่วไปเมื่อเชื่อมต่อกับชิปอุปกรณ์ต่อพ่วง I2C ส่วนใหญ่
  • Wire.begin(ที่อยู่)เริ่มใช้ Wire ในโหมดทาส ซึ่งคุณจะตอบกลับที่ "ที่อยู่" เมื่อชิปต้นแบบ I2C อื่นเริ่มการสื่อสาร กำลังส่งสัญญาณ Wire.beginTransmission(ที่อยู่)เริ่มต้นการส่งใหม่ไปยังอุปกรณ์ที่ "ที่อยู่" ใช้โหมดมาสเตอร์
  • Wire.write(ข้อมูล)ส่งข้อมูล ในโหมดมาสเตอร์ ต้องเรียก startTransmission ก่อน
  • Wire.endTransmission() ในโหมดมาสเตอร์ จะสิ้นสุดการส่งและทำให้ข้อมูลที่บัฟเฟอร์ทั้งหมดถูกส่ง

รับ

  • Wire.requestFrom(address, count) อ่าน "นับ" ไบต์จากอุปกรณ์ที่ "ที่อยู่" ใช้โหมดมาสเตอร์
  • Wire.available() ส่งกลับจำนวนไบต์ที่พร้อมใช้งานโดยการโทรรับ
  • Wire.read() รับ 1 ไบต์

ขั้นตอนที่ 2: การอัปโหลดโค้ดไปยัง ESP32 โดยใช้ Arduino IDE

  • ก่อนอัปโหลดโค้ด คุณสามารถดูการทำงานของเซ็นเซอร์นี้ได้ที่ลิงก์ที่ให้ไว้
  • ดาวน์โหลดและรวม PubSubClient Library และ Wire.h Library
  • คุณต้องกำหนดคีย์ API, SSID (ชื่อ WiFi) และรหัสผ่านของเครือข่ายที่ใช้ได้
  • รวบรวมและอัปโหลดรหัส Temp-ThinSpeak.ino
  • หากต้องการตรวจสอบการเชื่อมต่อของอุปกรณ์และข้อมูลที่ส่ง ให้เปิดจอภาพอนุกรม หากไม่เห็นการตอบสนอง ให้ลองถอดปลั๊ก ESP32 แล้วเสียบใหม่อีกครั้ง ตรวจสอบให้แน่ใจว่าอัตราบอดของจอภาพแบบอนุกรมถูกตั้งค่าเป็นอัตราเดียวกับที่ระบุไว้ในรหัส 115200 ของคุณ

ขั้นตอนที่ 3: เอาต์พุตมอนิเตอร์แบบอนุกรม

เอาต์พุตมอนิเตอร์แบบอนุกรม
เอาต์พุตมอนิเตอร์แบบอนุกรม

ขั้นตอนที่ 4: เอาท์พุต

เอาท์พุต
เอาท์พุต

ขั้นตอนที่ 5: สร้าง IFTTT Applet

สร้าง IFTTT Applet
สร้าง IFTTT Applet
สร้าง IFTTT Applet
สร้าง IFTTT Applet
สร้าง IFTTT Applet
สร้าง IFTTT Applet
สร้าง IFTTT Applet
สร้าง IFTTT Applet
  • ในการส่งข้อมูลไปยัง ThingSpeak คุณสามารถดูได้ที่ลิงค์นี้
  • IFTTT เป็นบริการเว็บที่ให้คุณสร้างแอปเพล็ตที่ตอบสนองต่อการกระทำอื่น คุณสามารถใช้บริการ IFTTT Webhooks เพื่อสร้างคำขอเว็บเพื่อทริกเกอร์การดำเนินการ การดำเนินการขาเข้าคือคำขอ HTTP ไปยังเว็บเซิร์ฟเวอร์ และการดำเนินการขาออกคือข้อความอีเมล
  • ขั้นแรก สร้างบัญชี IFTTT
  • สร้างแอปเพล็ต เลือกแอปเพล็ตของฉัน
  • คลิกปุ่มแอปเพล็ตใหม่
  • เลือกการดำเนินการอินพุต คลิกคำนี้
  • คลิกบริการ Webhooks ป้อน Webhooks ในช่องค้นหา เลือกเว็บฮุค
  • เลือกทริกเกอร์
  • กรอกข้อมูลในฟิลด์ทริกเกอร์ หลังจากที่คุณเลือก Webhooks เป็นทริกเกอร์ ให้คลิกกล่องรับคำขอเว็บเพื่อดำเนินการต่อ ป้อนชื่อกิจกรรม
  • สร้างทริกเกอร์
  • ตอนนี้ทริกเกอร์จะถูกสร้างขึ้นสำหรับการดำเนินการที่เกิดขึ้นให้คลิกที่
  • ป้อน "Google ชีต" ในแถบค้นหา แล้วเลือกช่อง "Google ชีต"
  • หากคุณไม่ได้เชื่อมต่อกับ Google ชีต ให้เชื่อมต่อก่อน ตอนนี้เลือกการกระทำ เลือกเพิ่มแถวในสเปรดชีต
  • จากนั้น กรอกข้อมูลในช่องการดำเนินการ
  • แอปเพล็ตของคุณควรถูกสร้างขึ้นหลังจากที่คุณกดเสร็จสิ้น
  • ดึงข้อมูลทริกเกอร์ Webhooks ของคุณ เลือก My Applets, Services และค้นหา Webhooks คลิกปุ่มเว็บฮุคและเอกสารประกอบ คุณเห็นคีย์และรูปแบบการส่งคำขอของคุณ ป้อนชื่อกิจกรรม ชื่อเหตุการณ์สำหรับตัวอย่างนี้คือ VibrationAndTempData คุณสามารถทดสอบบริการโดยใช้ปุ่มทดสอบหรือโดยการวาง URL ลงในเบราว์เซอร์ของคุณ

ขั้นตอนที่ 6: สร้างการวิเคราะห์ MATLAB

สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB
สร้างการวิเคราะห์ MATLAB

คุณสามารถใช้ผลการวิเคราะห์เพื่อทริกเกอร์คำขอเว็บ เช่น การเขียนทริกเกอร์ไปยัง IFTTT

  • คลิกแอพ การวิเคราะห์ MATLAB และเลือกใหม่
  • เลือกทริกเกอร์อีเมลจาก IFTTT ในส่วนตัวอย่าง โค้ดด้านล่างได้รับการเติมข้อมูลล่วงหน้าในหน้าต่างการวิเคราะห์ MATLAB ของคุณ
  • ตั้งชื่อการวิเคราะห์ของคุณและแก้ไขโค้ด
  • บันทึกการวิเคราะห์ MATLAB ของคุณ

ขั้นตอนที่ 7: สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ

สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ
สร้างการควบคุมเวลาเพื่อเรียกใช้การวิเคราะห์ของคุณ

ประเมินข้อมูลช่องสัญญาณ ThingSpeak ของคุณและทริกเกอร์กิจกรรมอื่นๆ

  • คลิก Apps, TimeControl แล้วคลิก New TimeControl
  • บันทึก TimeControl ของคุณ

แนะนำ: