สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ในบทช่วยสอนนี้ เราจะวัดข้อมูลอุณหภูมิและความชื้นต่างๆ โดยใช้เซ็นเซอร์อุณหภูมิและความชื้น คุณจะได้เรียนรู้วิธีส่งข้อมูลนี้ไปยัง AWS
ขั้นตอนที่ 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 โมเด็มตาข่ายไร้สายระยะไกลพร้อมอินเทอร์เฟซ USB
ซอฟต์แวร์ที่ใช้:
- Arduino IDE
- AWS
ห้องสมุดที่ใช้:
- PubSubClient Library
- Wire.h
- AWS_IOT.h
ขั้นตอนที่ 2: การอัปโหลดรหัสไปยัง ESP32 โดยใช้ Arduino IDE:
เนื่องจาก esp32 เป็นส่วนสำคัญในการเผยแพร่ข้อมูลอุณหภูมิและความชื้นของคุณไปยัง AWS
- ดาวน์โหลดและรวม PubSubClient Library, Wire.h Library, AWS_IOT.h, Wifi.h.
- ดาวน์โหลดไฟล์ Zip ของ AWS_IoT จากลิงค์ที่ให้มา และหลังจากแตกไฟล์แล้ว ให้วางไลบรารี่ในโฟลเดอร์ไลบรารี Arduino ของคุณ
#รวม
#include<AWS_IOT.h #include #include #include
- คุณต้องกำหนด AWS MQTT_TOPIC, AWS_HOST, SSID (ชื่อ WiFi) และรหัสผ่านเฉพาะของเครือข่ายที่พร้อมใช้งาน
- หัวข้อ MQTT และ AWS HOST สามารถเข้าไปภายใน Things-Interact ได้ที่คอนโซล AWS-IoT
#define WIFI_SSID "xxxxx" // wifi ssid ของคุณ
#define WIFI_PASSWD "xxxxx" //รหัสผ่าน wifi ของคุณ #define CLIENT_ID "xxxxx"// ID ที่ไม่ซ้ำของสิ่งใดก็ตาม สามารถเป็น ID เฉพาะใดๆ ก็ได้ #define MQTT_TOPIC "xxxxxx" //หัวข้อสำหรับข้อมูล MQTT #define AWS_HOST "xxxxxx" // ของคุณ โฮสต์สำหรับอัพโหลดข้อมูลไปยัง AWS
กำหนดชื่อตัวแปรที่จะส่งข้อมูลไปยัง AWS
อุณหภูมิภายใน;
ความชื้นสัมพัทธ์;
รหัสสำหรับเผยแพร่ข้อมูลไปยัง AWS:
if (temp == NAN || Humidity == NAN) { // NAN หมายถึงไม่มีข้อมูล
Serial.println("การอ่านล้มเหลว"); } else { //สร้างส่วนของข้อมูลสตริงสำหรับเผยแพร่ String temp_humidity = "Temperature:"; temp_humidity += สตริง (อุณหภูมิ); temp_humidity += " °C ความชื้น: "; temp_humidity += String(ความชื้น); temp_humidity += " %";
temp_humidity.toCharArray (เพย์โหลด 40);
Serial.println("กำลังเผยแพร่:- "); Serial.println (เพย์โหลด); if (aws.publish (MQTT_TOPIC, payload) == 0) { // เผยแพร่ payload และคืนค่า 0 เมื่อสำเร็จ Serial.println ("Success\n"); } อื่น ๆ { Serial.println("ล้มเหลว!\n"); } }
- รวบรวมและอัปโหลดโค้ด ESP32_AWS.ino
- หากต้องการตรวจสอบการเชื่อมต่อของอุปกรณ์และข้อมูลที่ส่ง ให้เปิดจอภาพอนุกรม หากไม่เห็นการตอบสนอง ให้ลองถอดปลั๊ก ESP32 แล้วเสียบใหม่อีกครั้ง ตรวจสอบให้แน่ใจว่าอัตราบอดของจอภาพแบบอนุกรมถูกตั้งค่าเป็นอัตราเดียวกับที่ระบุไว้ในรหัส 115200 ของคุณ
ขั้นตอนที่ 3: เอาต์พุตมอนิเตอร์แบบอนุกรม
ขั้นตอนที่ 4: ทำให้ AWS ทำงานได้
สร้างสิ่งของและรับรอง
THING: มันคือการแสดงเสมือนของอุปกรณ์ของคุณ
CERTIFICATE: ตรวจสอบตัวตนของ THING
- เปิด AWS-IoT
- คลิกที่จัดการ -THING -ลงทะเบียน THING
- คลิกที่สร้างสิ่งเดียว
- ระบุชื่อและประเภท Thing
- คลิกถัดไป
- ตอนนี้หน้าใบรับรองของคุณจะเปิดขึ้น คลิกที่สร้างใบรับรอง
- ดาวน์โหลดใบรับรองเหล่านี้ ซึ่งส่วนใหญ่เป็นคีย์ส่วนตัว ใบรับรองสำหรับสิ่งนี้ และ root_ca และเก็บไว้ในโฟลเดอร์แยกต่างหาก ภายในใบรับรอง root_ca ให้คลิกที่ Amazon root CA1-คัดลอกและวางลงในแผ่นจดบันทึกและบันทึกเป็นไฟล์ root_ca.txt ในไฟล์ของคุณ โฟลเดอร์ใบรับรอง
ขั้นตอนที่ 5: สร้างนโยบาย
กำหนดการดำเนินการที่อุปกรณ์หรือผู้ใช้สามารถเข้าถึงได้
- ไปที่อินเทอร์เฟซ AWS-IoT คลิกที่นโยบายการรักษาความปลอดภัย
- คลิกที่สร้าง
- กรอกรายละเอียดที่จำเป็นทั้งหมด เช่น ชื่อนโยบาย คลิกสร้าง
- กลับไปที่อินเทอร์เฟซ AWS-IoT คลิกที่ Secure-Certificates และแนบนโยบายที่สร้างขึ้นเมื่อสักครู่นี้
ขั้นตอนที่ 6: เพิ่มคีย์ส่วนตัว ใบรับรอง และ Root_CA ลงในโค้ด
- เปิดใบรับรองที่ดาวน์โหลดในโปรแกรมแก้ไขข้อความ (Notepad ++) ซึ่งส่วนใหญ่เป็นคีย์ส่วนตัว root_CA และใบรับรองของสิ่งต่างๆ แล้วแก้ไขตามที่ระบุด้านล่าง
- ตอนนี้เปิดโฟลเดอร์ AWS_IoT ในไลบรารี Arduino -My Document ไปที่ C:\Users \xyz\Documents\Arduino\libraries\AWS_IOT\src คลิกที่ aws_iot_certficates.c เปิดในโปรแกรมแก้ไข และวางใบรับรองที่แก้ไขแล้วทั้งหมดที่อยู่ในตำแหน่งที่ต้องการ บันทึก
ขั้นตอนที่ 7: รับผลลัพธ์ -
- ไปที่การทดสอบในคอนโซล AWS_IoT
- กรอกหัวข้อ MQTT ของคุณเป็นหัวข้อการสมัครสมาชิกในข้อมูลรับรองการทดสอบของคุณ
- ตอนนี้คุณสามารถดูข้อมูลอุณหภูมิและความชื้นของคุณ