สารบัญ:

IoT Gas Sensor: 7 ขั้นตอน
IoT Gas Sensor: 7 ขั้นตอน

วีดีโอ: IoT Gas Sensor: 7 ขั้นตอน

วีดีโอ: IoT Gas Sensor: 7 ขั้นตอน
วีดีโอ: แนะนำ MQ-7 Gas Sensor Module (Carbon Monoxide Gas) 2024, พฤศจิกายน
Anonim
Image
Image
แนวคิด
แนวคิด

ฉันต้องการสร้าง Gas Sensor ที่สามารถตรวจจับการรั่วไหลของก๊าซในบ้านได้ การใช้งานจริงเพื่อให้แน่ใจว่าคุณไม่ได้เปิดเตาทิ้งไว้โดยไม่มีไฟ ส่งผลให้เกิดแก๊สพิษ อีกวิธีหนึ่งคือทำให้แน่ใจว่าคุณไม่ได้ทำอาหารมากเกินไปหรือปล่อยให้กระทะติดไฟนานเกินไปซึ่งส่งผลให้อาหารเป็นถ่าน วิธีหลังดูเหมือนยากกว่าในทางปฏิบัติ และจำเป็นต้องมีความคิดเพิ่มเติมในเรื่องนี้ ดังนั้นฉันจึงนำแนวคิดที่คล้ายคลึงกันกลับมาใช้ใหม่กับเซ็นเซอร์อุณหภูมิ IoT เพื่อสร้างข้อมูลบนเว็บเซิร์ฟเวอร์ในภายหลัง เพื่อหลีกเลี่ยงความยุ่งยากในการเปิดพอร์ตบนเราเตอร์

ขั้นตอนที่ 1: แนวคิด

แนวคิดคือเชื่อมต่อเซ็นเซอร์กับ ESP8266 และตรวจสอบปริมาณก๊าซในอากาศ เมื่อปริมาณก๊าซถึงเกณฑ์ที่กำหนด ระบบจะส่งสัญญาณเตือน (Buzzer) ข้อมูลก๊าซจะถูกอัปโหลดเป็นระยะ ๆ ไปยังคลาวด์ (เว็บเซิร์ฟเวอร์) ซึ่งช่วยให้สามารถเข้าถึงและตรวจสอบก๊าซได้จากระยะไกล หากข้อมูลถูกบันทึกไว้ในฐานข้อมูลในช่วงเวลานั้น สามารถลงจุดบนกราฟเพื่อแสดงแนวโน้มได้

ขั้นตอนที่ 2: วัสดุที่ใช้

วัสดุที่ใช้
วัสดุที่ใช้
วัสดุที่ใช้
วัสดุที่ใช้
วัสดุที่ใช้
วัสดุที่ใช้

นี่คือรายการวัสดุที่ใช้ในงานสร้างนี้:

- ESP8266 - นี่จะเป็นสมองที่ช่วยให้เราเชื่อมต่อสิ่งต่างๆ กับอินเทอร์เน็ตได้

- เซ็นเซอร์แก๊ส MQ-5

- Buzzer

ESP8266 เป็นโมดูลที่ยอดเยี่ยมที่ช่วยให้สามารถเชื่อมต่ออินเทอร์เน็ตได้ เซ็นเซอร์แก๊สที่ใช้ MQ5 ช่วยให้ทำงานได้ 2 โหมด ได้แก่ โหมดดิจิตอลและโหมดอนาล็อก นอกจากนี้ยังช่วยให้เราปรับความไวของแก๊สผ่านตัวต้านทานแบบปรับได้บนบอร์ดของเซ็นเซอร์

ขั้นตอนที่ 3: แผนภาพการเชื่อมต่อ

แผนภาพการเชื่อมต่อ
แผนภาพการเชื่อมต่อ
แผนภาพการเชื่อมต่อ
แผนภาพการเชื่อมต่อ

เรากำลังเชื่อมต่อเซ็นเซอร์ก๊าซ MQ-5 กับอินพุตแบบอะนาล็อก (AD0) ของ ESP8266 ตามที่แสดงในแผนภาพ ออดเชื่อมต่อกับ Pin GND และ D3

ในตัวอย่างนี้ เรากำลังใช้เอาต์พุตแบบอะนาล็อกของเซ็นเซอร์ ซึ่งช่วยให้เราตรวจสอบช่วงก๊าซที่กว้างกว่าได้มาก สามารถใช้เอาต์พุตดิจิตอลของเซ็นเซอร์ได้ แต่ต้องปรับเทียบอย่างถูกต้องเพื่อให้แน่ใจว่าจะให้ทริกเกอร์ที่ต้องการเมื่อตรวจพบองค์ประกอบบางอย่างของก๊าซ

ภาพที่สองแสดงการเชื่อมต่อโดยใช้บอร์ดต้นแบบ เราเชื่อมต่อเซ็นเซอร์กับออด ESP8266 ใช้พลังงาน 3.3 V. บอร์ดอนุญาตให้เชื่อมต่อ USB ซึ่งลงแปลง 5V เป็น 3.3 V ที่ใช้โดยบอร์ด

เมื่อเชื่อมต่อแล้ว คุณสามารถเชื่อมต่อการเชื่อมต่อ USB กับ PC หรือ Mac เพื่ออนุญาตให้อัปโหลดโค้ดผ่าน Arduino IDE หากคุณไม่คุ้นเคยกับ Arduino IDE คุณสามารถตรวจสอบโพสต์ Instructables อื่น ๆ ของฉันที่สามารถช่วยคุณเริ่มต้นได้

ขั้นตอนที่ 4: การตั้งค่าเว็บเซิร์ฟเวอร์

การตั้งค่าเว็บเซิร์ฟเวอร์
การตั้งค่าเว็บเซิร์ฟเวอร์

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

ดาวน์โหลดไฟล์ "IoTGasSensorWebserver.zip" และแตกไฟล์นี้ไปที่รูทของเว็บเซิร์ฟเวอร์ของคุณโดยใช้ซอฟต์แวร์ ftp ที่คุณชื่นชอบ หรือลงในไดเร็กทอรีเสมือนที่คุณต้องการ ในตัวอย่างนี้ ฉันสมมติว่าเว็บเซิร์ฟเวอร์คือ "https://arduinotestbed.com"

สคริปต์ php ที่ ESP8266 จะเรียกใช้เรียกว่า "gasdata_store.php" ในตัวอย่างนี้ สมมติว่าพาธแบบเต็มไปยังไฟล์นี้คือ "https://arduinotestbed.com/gasdata_store.php"

หากคุณได้อัปโหลดไฟล์อย่างถูกต้อง คุณสามารถทดสอบว่าทุกอย่างทำงานได้โดยชี้เว็บเบราว์เซอร์ของคุณไปที่ลิงก์ต่อไปนี้ "https://arduinotestbed.com/GasData.php"

คุณควรนำเสนอไซต์ที่คล้ายกับภาพด้านบนด้วยปุ่มหมุนข้อมูลแก๊ส

อีกอย่างหนึ่งที่คุณต้องทำให้แน่ใจว่าไฟล์ “gas.txt” นั้นต้องสามารถเขียนได้ ดังนั้นคุณต้องตั้งค่าการอนุญาตของไฟล์นี้เป็น “666” โดยใช้คำสั่ง unix ต่อไปนี้:

chmod 666 gas.txt

ซึ่งสามารถทำได้โดยใช้ซอฟต์แวร์ ftp หรือตัวจัดการไฟล์ในเว็บโฮสติ้งของคุณ

ไฟล์นี้เป็นที่ที่ ESP8266 จะอัพโหลดข้อมูลเซ็นเซอร์เข้าไป

ขั้นตอนที่ 5: รหัส

รหัส
รหัส

เมื่อคุณได้รับการตั้งค่าทั้งหมดแล้ว คุณสามารถเปิด Arduino IDE และดาวน์โหลดแบบร่างด้านบนได้ แตกไฟล์ zip และคุณควรมีทั้งหมด 2 ไฟล์:

- ESP8266GasSensor.ino

- mainPage.h

- settings.h

ใส่ทั้งหมดลงในโฟลเดอร์เดียวกันและเปิด "ESP8266GasSensor.ino" ใน Arduino IDE จากนั้นทำการปรับเปลี่ยนโค้ดเล็กน้อยเพื่อชี้ไปยังตำแหน่งเว็บเซิร์ฟเวอร์ที่ถูกต้องที่แสดงในภาพด้านบน

แก้ไขบรรทัดต่อไปนี้เพื่อให้ตรงกับไฟล์ในตำแหน่งเว็บเซิร์ฟเวอร์ของคุณ

สตริง weburi = "/gasdata_store.php"

จากนั้นรวบรวมร่างโดยเลือกปุ่ม "ติ๊ก" ที่ด้านบนของ Arduino IDE ถ้าทุกอย่างเป็นไปด้วยดี โค้ดของคุณควรคอมไพล์สำเร็จ

ขั้นตอนต่อไปคือการอัปโหลดโค้ดไปยัง ESP8266 โดยคลิกที่ปุ่ม "=>" บนอินเทอร์เฟซ Arduino ซึ่งควรโหลดโค้ดของคุณลงใน ESP8266 หากทุกอย่างเป็นไปด้วยดี คุณควรมี AP (Access point) ที่ใช้งานได้จาก ESP8266 ในครั้งแรกที่คุณเรียกใช้งานนี้ ชื่อของ AP เรียกว่า “ESP-GasSensor”

ลองเชื่อมต่อกับ AP นี้โดยใช้แล็ปท็อปหรือโทรศัพท์มือถือของคุณ จากนั้นค้นหาที่อยู่ IP ที่กำหนดให้คุณ ซึ่งสามารถทำได้โดยใช้คำสั่ง "ipconfig" ใน windows หรือคำสั่ง "ifconfig" หากคุณอยู่ใน linux หรือ mac. หากคุณใช้ iPhone คุณสามารถคลิกที่ปุ่ม "i" ถัดจาก ESP-GasSensor ที่คุณเชื่อมต่ออยู่ เปิดเว็บเบราว์เซอร์ของคุณและชี้ไปที่ที่อยู่ IP ของ ESP-GasSensor หากคุณถูกกำหนดให้เป็น 192.168.4.10 ขึ้นไป ESP-GasSensor จะมี IP 192.168.4.1 ดังนั้นคุณสามารถชี้เว็บเบราว์เซอร์ของคุณไปที่ http:/ /192.168.4.1 คุณควรได้รับหน้าการตั้งค่าที่คุณสามารถป้อนการกำหนดค่า wifi ของคุณได้ เมื่อคุณป้อนจุดเชื่อมต่อ WiFi ที่เชื่อมต่อกับอินเทอร์เน็ตแล้ว ให้ทำเครื่องหมายที่ช่อง "อัปเดต Wifi Config" แล้วคลิก "อัปเดต" เพื่อบันทึกการตั้งค่าไปยัง ESP8266

ตอนนี้ ESP8266 จะรีสตาร์ทและพยายามเชื่อมต่อกับเราเตอร์ WiFi ของคุณ หากทุกอย่างเป็นไปด้วยดี คุณควรเห็นข้อมูลแก๊สถูกอัปเดตไปยังเว็บเซิร์ฟเวอร์ของคุณเป็นระยะๆ ในตัวอย่างนี้ คุณสามารถชี้เบราว์เซอร์ของคุณไปที่ "https://arduinotestbed.com/GasData.php"

ยินดีด้วย!! ถ้าคุณจัดการไปถึงส่วนนี้ คุณควรตบหลังตัวเอง ตอนนี้คุณสามารถบอกเพื่อนของคุณเกี่ยวกับเซ็นเซอร์ก๊าซที่คุณมีได้

ขั้นตอนที่ 6: มีอะไรต่อไป

อะไรต่อไป
อะไรต่อไป

คุณอาจต้องการปรับเทียบสัญญาณเตือนเซ็นเซอร์ใหม่เพื่อให้เหมาะกับความต้องการของคุณ

นี่ไม่ใช่แค่การแสดงเท่านั้น แต่ควรกระตุ้นและเตือนเมื่อระดับก๊าซถึงระดับหนึ่ง ขึ้นอยู่กับประเภทของเซ็นเซอร์ที่คุณใช้ คุณจะต้องสอบเทียบสิ่งนี้ ไปหยิบไฟแช็กแล้วชี้ไฟแช็กไปทางเซ็นเซอร์ และไม่ต้องจุดไฟแช็ก ให้กดปุ่มปล่อยแก๊สที่ไฟแช็ก เพื่อให้แก๊สไหลไปยังเซ็นเซอร์ สิ่งนี้ควรหยุดเสียงกริ่ง ถ้าไม่เช่นนั้นคุณต้องตรวจสอบว่าการอ่านเพิ่มขึ้นหรือไม่โดยดูที่เว็บเซิร์ฟเวอร์ หากวิธีนี้ใช้ไม่ได้ผล คุณต้องตรวจสอบการเชื่อมต่อ เซ็นเซอร์ และเสียงเตือน ถ้าทุกอย่างเป็นไปด้วยดี ออดควรจะส่งเสียง

เกณฑ์ในรหัสถูกตั้งค่าเป็น 100 คุณควรจะสามารถค้นหาได้ในส่วนต่อไปนี้ของรหัส:

เกณฑ์สองเท่า = 100;

อย่าลังเลที่จะเปลี่ยนเกณฑ์ให้สูงขึ้นหรือต่ำลงขึ้นอยู่กับความต้องการของคุณ

ฉันหวังว่าคุณจะชอบโครงการนี้ หากคุณสนใจ โปรดส่งข้อความหาฉันและโหวตให้ฉันในการแข่งขัน IoT และสมัครรับข้อมูลจากบล็อกของฉันสำหรับโครงการ Arduino ที่ง่ายกว่านี้

ความคิดสุดท้าย คุณสามารถบันทึกการอ่านก๊าซลงในฐานข้อมูลโดยใช้ sqllite หรือสิ่งที่มีประสิทธิภาพมากกว่า ซึ่งจะทำให้คุณสามารถพล็อตกราฟที่คล้ายกับด้านบน ไม่เพียงเพื่อให้ดูเรียบร้อย แต่ยังช่วยคุณปรับเทียบเซ็นเซอร์ด้วย ตัวอย่างเช่น หากคุณต้องการใช้สิ่งนี้เพื่อตรวจสอบการรั่วไหลของก๊าซบนเตาของคุณ คุณอาจต้องการปล่อยให้มันอ่านค่าที่วัดได้สองสามวัน แล้วดาวน์โหลดค่าที่อ่านเพื่อดูว่ารูปแบบการใช้งานปกติเป็นอย่างไร จากนั้นคุณสามารถตั้งค่าทริกเกอร์สำหรับข้อยกเว้นสำหรับกฎเมื่อการอ่านอยู่นอกปกติ

แนะนำ: