สารบัญ:

ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ: 6 ขั้นตอน (พร้อมรูปภาพ)
ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: เต้ารับอัจฉริยะ Wall Socket เปลี่ยนโคตรง่าย ทำงานอัตโนมัติ Zigbee/WiFi Smart Home Automation 2024, พฤศจิกายน
Anonim
ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ
ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ
ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ
ระบบอัตโนมัติภายในบ้าน WiFi พลังงานต่ำพิเศษ

ในโครงการนี้ เราจะแสดงวิธีสร้างระบบอัตโนมัติภายในบ้านขั้นพื้นฐานในไม่กี่ขั้นตอน เราจะใช้ Raspberry Pi ซึ่งจะทำหน้าที่เป็นอุปกรณ์ WiFi ส่วนกลาง สำหรับ end nodes เราจะใช้ IOT Cricket เพื่อสร้างอุปกรณ์ WiFi ที่ใช้พลังงานจากแบตเตอรี่เช่น เซ็นเซอร์อุณหภูมิและเชื่อมต่อกับ RPi โดยไม่ต้องเขียนโค้ดบรรทัดเดียว

ระบบของเราจะใช้โปรโตคอลการสื่อสาร MQTT ซึ่งถูกนำไปใช้อย่างมหาศาลในระบบอัตโนมัติภายในบ้านส่วนใหญ่ ในการตั้งค่า เราเลือกโบรกเกอร์ Mosquitto MQTT (เซิร์ฟเวอร์) และติดตั้งบน Raspberry Pi (ศูนย์กลางของเรา)

IOT Cricket ยังมาพร้อมกับการสนับสนุนโปรโตคอล HTTP(S) และ MQTT เรากำหนดค่าให้ใช้ MQTT เพื่อสื่อสารโดยตรงกับนายหน้า RPi MQTT ของเรา

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

เสบียง:

  • Raspberry Pi (เราใช้ ver. 3 สำหรับโครงการนี้)
  • โมดูล IOT Cricket WiFi
  • ที่ใส่แบตเตอรี่ 2xAAA
  • แบตเตอรี่ AAA 2 ก้อน

ขั้นตอนที่ 1: MQTT คืออะไร

โปรโตคอล MQTT ให้วิธีการที่มีน้ำหนักเบาในการดำเนินการส่งข้อความโดยใช้รูปแบบการเผยแพร่/สมัครรับข้อมูล ทำให้เหมาะสำหรับการส่งข้อความทางอินเทอร์เน็ตของสรรพสิ่ง เช่น เซ็นเซอร์พลังงานต่ำหรืออุปกรณ์พกพา เช่น โทรศัพท์ คอมพิวเตอร์แบบฝัง หรือไมโครคอนโทรลเลอร์ (ที่มา: mosquitto.org)

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

ขั้นตอนที่ 2: การติดตั้ง MQTT Broker บน Raspberry Pi

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

ก่อนที่เราจะเริ่มการติดตั้ง คุณควรอัปเดตส่วนประกอบของระบบก่อน:

$ sudo apt-get update$ sudo apt-get upgrade

ติดตั้งนายหน้า Mosquitto เปิดเทอร์มินัลแล้วพิมพ์คำสั่งต่อไปนี้:

$ sudo apt-get ติดตั้ง mosquitto -y

กำหนดค่านายหน้า Mosquitto แก้ไขไฟล์กำหนดค่า:

$ sudo vi /etc/mosquitto/mosquitto.conf

และเพิ่มบรรทัดต่อไปนี้ที่ด้านบน:

พอร์ต 1883allow_anonymous จริง

รีสตาร์ท RPi เพื่อใช้การเปลี่ยนแปลง:

$ sudo รีบูต

แค่นั้นแหละ! โบรกเกอร์ MQTT ของเราพร้อมให้บริการแล้ว!

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

ตอนนี้ เราแค่ต้องการรับที่อยู่ IP เพื่อให้เราสามารถส่งข้อความไปยังนายหน้า Mosquitto ของเราจากอุปกรณ์อื่นในเครือข่าย:

รับที่อยู่ IP:

$ ชื่อโฮสต์ -I

your_RPi_IP_address (เช่น 192.168.1.10)

ขั้นตอนที่ 3: เชื่อมต่อ IOT Cricket กับ RaspberryPi ผ่าน MQTT

เชื่อมต่อ IOT Cricket กับ RaspberryPi ผ่าน MQTT
เชื่อมต่อ IOT Cricket กับ RaspberryPi ผ่าน MQTT
เชื่อมต่อ IOT Cricket กับ RaspberryPi ผ่าน MQTT
เชื่อมต่อ IOT Cricket กับ RaspberryPi ผ่าน MQTT

ในโครงการนี้ เราใช้โมดูล IOT Cricket WiFi สำหรับเซ็นเซอร์อย่างง่ายเพื่อรายงานอุณหภูมิทุกๆ 30 วินาทีไปยังระบบของเรา มันจะทำงานโดยใช้แบตเตอรี่เพื่อให้เราสามารถติดได้ทุกที่ที่บ้านหรือในสวน หลังจากนั้น คุณสามารถใช้ IOT Cricket เพื่อสร้างเซ็นเซอร์ที่ใช้พลังงานจากแบตเตอรี่ การเตือน ปุ่ม สวิตช์ และเชื่อมต่อเข้ากับโบรกเกอร์ RPi MQTT ของเราตั้งแต่แกะกล่อง

ในขั้นตอนแรกให้เชื่อมต่อแบตเตอรี่กับคริกเก็ต

คริกเก็ตมาพร้อมกับเซ็นเซอร์อุณหภูมิในตัว เราเพียงแค่ต้องกำหนดค่าให้ส่งค่าอุณหภูมิไปยังโบรกเกอร์ MQTT ของเราโดยการตั้งค่าที่อยู่ IP RPi เพื่อเปิดแผงการกำหนดค่าของ Cricket (ดูขั้นตอนที่นี่) และใช้การตั้งค่าต่อไปนี้ (ดังแสดงในภาพด้านล่าง) ปรับที่อยู่ IP ในกล่อง "url" เป็น RPi ของคุณ)

ตอนนี้เราสามารถออกจากโหมดการกำหนดค่าได้ อุปกรณ์พร้อม! คริกเก็ตส่งข้อมูลไปยังโบรกเกอร์ MQTT ของเราทุก ๆ 30 วินาทีแล้ว

ขั้นตอนที่ 4: ตรวจสอบข้อความ MQTT

ตรวจสอบข้อความ MQTT
ตรวจสอบข้อความ MQTT

ในการดู/รับข้อความที่ส่งไปยังโบรกเกอร์ MQTT ของเรา เราสามารถใช้เครื่องมือต่างๆ

วิธีที่ง่ายที่สุดคือเครื่องมือบรรทัดคำสั่ง mosquitto_sub เราสามารถติดตั้งบนคอมพิวเตอร์เครื่องใดก็ได้ในเครือข่ายของเราหรือบน RPi ของเราด้วยคำสั่งนี้:

$ sudo apt-get ติดตั้ง mosquitto-clients -y

ตอนนี้ เราสามารถรันคำสั่งต่อไปนี้เพื่อฟังหัวข้อและข้อความทั้งหมดที่ส่งผ่านโบรกเกอร์ MQTT ของเรา:

$ mosquitto_sub -v -h your_RPi_IP_address -p 1883 -t '#'

… / 59A98F494C / device_name MyTemperatureDev / 59A98F494C / device_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enabled 3763 / 59A98F494C / hwc_message_sent 3664 / 59A98F494C / อุณหภูมิ 26.0 / 59A98F494C / io1_wake_up 0 / 59A98F494C / rtc_wake_up 1 …

ข้างต้นเป็นตัวอย่างผลลัพธ์ของสิ่งที่ IOT Cricket ส่งไปยังโบรกเกอร์ของเรา ท่ามกลางข้อมูลอื่น ๆ เราสามารถเห็นได้ว่ามีอุณหภูมิ:

/59A98F494C/อุณหภูมิ 26.0

ความสวยงามของ MQTT คือทำให้เราสามารถสมัครรับเฉพาะหัวข้อที่เราสนใจเท่านั้น หากเราต้องการรับเพียงอุณหภูมิ เราสามารถสมัครรับหัวข้อ /59A98F494C/temp โดยใช้คำสั่งต่อไปนี้:

$ mosquitto_sub -h your_RPi_IP_address -t '/59A98F494C/ชั่วคราว'

…26.126.527.227.6…

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

สรุป
สรุป

เราได้แสดงให้เห็นในโครงการนี้ถึงฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็นในการเริ่มสร้างระบบอัตโนมัติภายในบ้านที่ใช้พลังงานต่ำ ประหยัดพลังงาน โดยใช้ WiFi MQTT เป็นหัวใจสำคัญในการสร้างระบบที่ซับซ้อนยิ่งขึ้น

ระบบนิเวศของซอฟต์แวร์และบริการที่สามารถรวมเข้ากับ MQTT นั้นใหญ่มาก! มีระบบที่ยอดเยี่ยมมากมาย เช่น Home Assistant, Node RED, Grafana เป็นต้น เพื่อให้คุณได้สัมผัสกับประสบการณ์ผู้ใช้ที่ยอดเยี่ยมของระบบของคุณเอง ไม่เพียงแต่เราสามารถพิมพ์อุณหภูมิอย่างง่ายๆ เท่านั้น แต่เราสามารถมีแดชบอร์ดที่ยอดเยี่ยมที่แสดงข้อมูลและจัดการอุปกรณ์ของคุณได้

เนื่องจากเรามีโครงสร้างพื้นฐานของระบบพื้นฐานอยู่แล้ว ท้องฟ้าจึงเป็นขีดจำกัดของอุปกรณ์ WiFi อื่นๆ ที่เราสามารถสร้างได้โดยใช้โมดูล IOT Cricket และเพิ่มลงในระบบอัตโนมัติในบ้านของเรา

ขอบคุณสำหรับการมาถึงที่นี่ เราหวังว่าคุณจะสนุกกับการกวดวิชานี้!

ทีมงาน Things On Edge

ขั้นตอนที่ 6: เกี่ยวกับเรา

Things On Edge เป็นบริษัทที่ตั้งอยู่ในเมืองเคมบริดจ์ สหราชอาณาจักร เราออกแบบโมดูล Cricket Wi-Fi ที่ใช้พลังงานแบตเตอรี่ต่ำเป็นพิเศษ เพื่อให้คุณเชื่อมต่ออุปกรณ์อิเล็กทรอนิกส์ต่างๆ กับสมาร์ทโฟนหรือบริการอินเทอร์เน็ตอื่นๆ ได้อย่างแท้จริงในเวลาไม่กี่นาที ไม่ต้องการการเขียนโปรแกรมและการเข้ารหัสใด ๆ ช่วยให้คุณสามารถรวมอุปกรณ์ของคุณเข้ากับบริการระบบนิเวศ IOT ขนาดใหญ่ผ่าน MQTT และ HTTP apis

แนะนำ: