สารบัญ:
- ขั้นตอนที่ 1: ต้องใช้ฮาร์ดแวร์และซอฟต์แวร์
- ขั้นตอนที่ 2: การอัปโหลดโค้ดไปยัง ESP32 โดยใช้ Arduino IDE
- ขั้นตอนที่ 3: เอาต์พุตมอนิเตอร์แบบอนุกรม
- ขั้นตอนที่ 4: ทำให้ ThingSpeak ทำงานได้
วีดีโอ: ThingSpeak, ESP32 และอุณหภูมิและความชื้นไร้สายระยะไกล: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
ในบทช่วยสอนนี้ เราจะวัดข้อมูลอุณหภูมิและความชื้นต่างๆ โดยใช้เซ็นเซอร์อุณหภูมิและความชื้น คุณจะได้เรียนรู้วิธีการส่งข้อมูลนี้ไปยัง ThingSpeak เพื่อให้คุณสามารถวิเคราะห์ได้จากทุกที่สำหรับแอปพลิเคชันต่างๆ
ขั้นตอนที่ 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
ห้องสมุดที่ใช้
- 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: ทำให้ ThingSpeak ทำงานได้
- สร้างบัญชีบน ThnigSpeak
- สร้างช่องใหม่โดยคลิกที่ช่อง
- คลิกที่ช่องของฉัน
- คลิกช่องใหม่
- ภายในช่องใหม่ ตั้งชื่อช่อง
- ตั้งชื่อฟิลด์ภายในแชนเนล ฟิลด์คือตัวแปรที่มีการเผยแพร่ข้อมูล
- ตอนนี้บันทึกช่อง
- ตอนนี้คุณสามารถค้นหาคีย์ API ของคุณได้บนแดชบอร์ด ไปที่การแตะที่หน้าแรกและค้นหา 'เขียนคีย์ Api' ซึ่งต้องได้รับการอัปเดตก่อนอัปโหลดรหัสไปยัง ESP32
- เมื่อสร้างแชนเนลแล้ว คุณจะสามารถดูข้อมูลอุณหภูมิและความชื้นของคุณในมุมมองส่วนตัวด้วยฟิลด์ที่คุณสร้างขึ้นภายในแชนเนล
- ในการลงจุดกราฟระหว่างข้อมูลอุณหภูมิและความชื้น คุณสามารถใช้ MATLAB Visualization
- ไปที่ App คลิกที่ MATLAB Visualization
- ข้างในจะเลือก Custom ในส่วนนี้ เราได้เลือกอุณหภูมิจุดพล็อตและความเร็วลมบนแกน y 8 ที่แตกต่างกัน 2 ตัวเป็นตัวอย่าง ตอนนี้คลิกสร้าง
- รหัส MATLAB จะถูกสร้างโดยอัตโนมัติเมื่อคุณสร้างภาพข้อมูล แต่คุณต้องแก้ไข field id อ่าน channel id สามารถตรวจสอบรูปต่อไปนี้
- จากนั้นบันทึกและเรียกใช้รหัส
- คุณจะเห็นโครงเรื่อง
แนะนำ:
ESP32 Lora Thingspeak Gateway พร้อมโหนดเซ็นเซอร์: 9 ขั้นตอน
ESP32 Lora Thingspeak Gateway พร้อมโหนดเซ็นเซอร์: ในโครงการ IoT นี้ ฉันออกแบบ ESP32 LoRa Gateway & รวมถึง ESP32 LoRa Sensor Node เพื่อตรวจสอบการอ่านเซ็นเซอร์แบบไร้สายจากระยะทางไม่กี่กิโลเมตร ผู้ส่งจะอ่านข้อมูลความชื้นและอุณหภูมิโดยใช้เซ็นเซอร์ DHT11 แล้วจะถ่ายทอด
Alert-using-ThingSpeak+ESP32-Wireless-Temp- Humidity-Sensor: 7 ขั้นตอน
Alert-using-ThingSpeak+ESP32-Wireless-Temp- Humidity-Sensor: ในบทช่วยสอนนี้ เราจะวัดข้อมูลอุณหภูมิและความชื้นต่างๆ โดยใช้เซ็นเซอร์อุณหภูมิและความชื้น คุณจะได้เรียนรู้วิธีการส่งข้อมูลนี้ไปยัง ThingSpeak เพื่อให้คุณสามารถสร้างการแจ้งเตือนชั่วคราวในอีเมลของคุณตามค่าที่กำหนด
ThingSpeak-IFTTT-ESP32-Predictive-Machine-Monitoring: 10 ขั้นตอน
ThingSpeak-IFTTT-ESP32-Predictive-Machine-Monitoring: ในโครงการนี้ เราจะวัดการสั่นและอุณหภูมิโดยใช้การสั่นของ NCD และเซ็นเซอร์อุณหภูมิ, ESP32 และ ThingSpeak นอกจากนี้ เราจะส่งการอ่านค่าอุณหภูมิและการสั่นสะเทือนที่แตกต่างกันไปยัง Google ชีตโดยใช้ ThingSpeak และ IFTTT สำหรับวิเคราะห์การสั่น
IoT - ThingSpeak - ESP32-Long-Range-Wireless-Vibration-And-Temp: 6 ขั้นตอน
IoT - ThingSpeak - ESP32-Long-Range-Wireless-Vibration-And-Temp: ในโครงการนี้ เราจะวัดการสั่นและอุณหภูมิโดยใช้เซ็นเซอร์ตรวจจับการสั่นสะเทือนและอุณหภูมิของ NCD, Esp32, ThingSpeak การสั่นเป็นการเคลื่อนไหวแบบไปๆ มาๆ - หรือการสั่น - ของเครื่องจักรและส่วนประกอบในอุปกรณ์แบบใช้มอเตอร์ การสั่นสะเทือนในไอ
เริ่มต้นใช้งาน ESP32 - การติดตั้งบอร์ด ESP32 ใน Arduino IDE - ESP32 Blink Code: 3 ขั้นตอน
เริ่มต้นใช้งาน ESP32 | การติดตั้งบอร์ด ESP32 ใน Arduino IDE | รหัสการกะพริบของ ESP32: ในคำแนะนำนี้ เราจะดูวิธีการเริ่มทำงานกับ esp32 และวิธีการติดตั้งบอร์ด esp32 ลงใน Arduino IDE และเราจะตั้งโปรแกรม esp 32 เพื่อเรียกใช้โค้ดกะพริบโดยใช้ arduino ide