สารบัญ:

สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22: 11 ขั้นตอน
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22: 11 ขั้นตอน

วีดีโอ: สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22: 11 ขั้นตอน

วีดีโอ: สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22: 11 ขั้นตอน
วีดีโอ: DIY ESP8266 HOMEKIT MULTI SENSOR - Motion, Temperature & Humidity 2024, พฤศจิกายน
Anonim
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22
สร้างอุปกรณ์ Apple HomeKit Temperature Sensor (DHT22) โดยใช้ RaspberryPI และ DHT22

ฉันกำลังมองหาเซ็นเซอร์อุณหภูมิ/ความชื้นราคาถูก ฉันสามารถใช้เพื่อตรวจสอบสิ่งที่เกิดขึ้นในพื้นที่รวบรวมข้อมูลของฉันได้ เนื่องจากฉันพบว่าสปริงนี้เปียกมากและมีความชื้นมาก ดังนั้นฉันจึงมองหาเซ็นเซอร์ราคาสมเหตุสมผลที่สามารถวางลงที่นั่นและตรวจสอบจากระยะไกลได้ หลังจากทำการขุดบนเน็ตเพื่อหาสิ่งที่มีอยู่ในเครื่องและแสดงให้เห็นว่าใช้งานได้กับ RaspBerry PI และ NodeMCU (เพิ่มเติมเกี่ยวกับเรื่องนี้ในภายหลัง) ฉันตัดสินใจเลือกเซ็นเซอร์ DHT22 ราคาถูกมีทั้งอุณหภูมิและความชื้นและมีจำหน่ายในท้องถิ่น

อัปเดตเมษายน 2019 - หลังจากใช้ห้องสมุด pigpiod มาหลายปี ฉันได้เปลี่ยนไปใช้ห้องสมุด bcm2835 และได้เผยแพร่คำแนะนำใหม่ที่นี่

อัปเดตธันวาคม 2559 - หลังจากใช้งานมาสองสามเดือนแล้ว ฉันพบว่าความแม่นยำของเซ็นเซอร์ความชื้นแตกต่างกันอย่างมากเมื่อเวลาผ่านไป และหยุดไว้วางใจสิ่งเหล่านี้สำหรับข้อมูลความชื้นที่แม่นยำพอสมควร และกำลังเปลี่ยนอุปกรณ์ทั้งหมดของฉันเป็นเซ็นเซอร์อุณหภูมิ/ความชื้น/ความดันบรรยากาศ BME280 ของ Bosch ดังนั้นฉันจึงได้สร้างคำสั่งใหม่ที่แสดงวิธีเชื่อมต่อเซ็นเซอร์นี้กับ RaspberryPI (เชื่อมต่อ RaspberryPI ของคุณกับอุณหภูมิ BME280 และ NodeMCU/ESP8266 (Homebridge-MCUIOT)

ขั้นตอนที่ 1: รายการชิ้นส่วน

ฉันก็เลยไปร้านอะไหล่ใกล้บ้านและซื้อ

1 - DHT22 / AM2303 เซ็นเซอร์อุณหภูมิ / ความชื้น

1 - ตัวต้านทาน 4.7K

หัวต่อตัวเมีย 4 ขา (ด้านเซนเซอร์)

หัวต่อตัวเมีย 5 ขา (ด้าน RPI)

ท่อหดความร้อนแคบและกว้าง

เมาส์ซีเรียลรุ่นเก่า

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

ขั้นตอนที่ 2: เตรียม RPI End ของ Cable

เตรียมปลาย RPI ของสายเคเบิล
เตรียมปลาย RPI ของสายเคเบิล

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

หลังจากบัดกรีหมุดแล้ว ฉันก็เสียบมันเข้าไปในส่วนหัวของตัวเมีย 5 พิน โดยมีสีแดงใน 1 สีเหลืองใน 4 และสีดำใน 5

การเชื่อมต่อ RPI ต่อสายแบบนี้

RPI -> 5 Pin Header -> Description -> Wire Color

1 -> 1 -> 3.3 VDC กำลังไฟ -> สีแดง

7 -> 4 -> GPIO4 -> สีเหลือง

9 -> 5 -> พื้นดิน -> สีดำ

ขั้นตอนที่ 3: ปลายเซ็นเซอร์ของสายเคเบิล

ปลายสายเซนเซอร์
ปลายสายเซนเซอร์
ปลายสายเซนเซอร์
ปลายสายเซนเซอร์
ปลายสายเซนเซอร์
ปลายสายเซนเซอร์
ปลายสายเซนเซอร์
ปลายสายเซนเซอร์

ในตอนท้ายนี้ เราใช้ส่วนหัวของตัวเมีย 4 พิน ตัวต้านทาน และท่อหดด้วยความร้อน

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

1 - สีแดง

2 - สีเหลือง

3 - ว่างเปล่า

4 - สีดำ

จากนั้นหุ้มสายไฟด้วยท่อหดแบบใช้ความร้อนที่ใหญ่กว่า

ขั้นตอนที่ 4: การเชื่อมต่อสายเคเบิล

การเชื่อมต่อสายเคเบิล
การเชื่อมต่อสายเคเบิล
การเชื่อมต่อสายเคเบิล
การเชื่อมต่อสายเคเบิล

เมื่อปิด RPI แล้ว ให้เชื่อมต่อตัวเมีย 5 พินกับการเชื่อมต่อ GPIO อย่างระมัดระวัง โดยให้สายสีแดงในพิน 1 เรียงต่อกับพิน 1 บนขั้วต่อ GPIO ส่วนหัวควรครอบคลุมเฉพาะหมุด GPU ที่มีเลขคี่ 5 ตัวแรกเท่านั้น

สำหรับด้านเซ็นเซอร์ ให้จัดหมุดบนเซ็นเซอร์ให้ตรงกับส่วนหัว และตรวจสอบให้แน่ใจว่าพิน 1 ของเซ็นเซอร์ (ทางด้านซ้าย) เชื่อมต่อกับพิน 1 ของส่วนหัว (ด้วยสายสีแดง)

พอประคบร้อนก็ไม่เห็นสีลวดแล้ว เลยใช้ที่แหลมคม

ขั้นตอนที่ 5: การติดตั้งซอฟต์แวร์โฮมบริดจ์

เนื่องจากเป็นแนวทางอื่น ๆ มากมายสำหรับการตั้งค่า raspberry pi ฉันจะไม่ทำซ้ำที่นี่ แต่สมมติว่าคุณมีการตั้งค่า RPI ของคุณกับ Raspbian Jessie โดยที่ติดตั้ง Node. JS และโฮมบริดจ์ที่ทำงานอยู่ พวกเขามีคู่มือการเริ่มต้นใช้งานโฮมบริดจ์จำนวนมากซึ่งครอบคลุมเรื่องนี้อยู่แล้ว

ขั้นตอนที่ 6: ติดตั้ง Homebridge-dht

1. ติดตั้ง homebridge-dht ด้วยคำสั่ง

sudo npm install -g homebridge-dht

2. อัปเดตไฟล์ config.json ของคุณใน ~/.homebridge ดังต่อไปนี้

{ "สะพาน": {

"name": "Penny", "username": "CC:22:3D:E3:CD:33", "port": 51826, "pin": "031-45-154" }, "description": " HomeBridge", "platforms": , "accessories": [{ "accessory": "Dht", "name": "dht22", "name_temperature": "Temperature", "name_humidity": "Humidity", "service" ": "dht22" }]}

ขั้นตอนที่ 7: การติดตั้ง PIGPIO

1. ติดตั้งไลบรารี่ pigpiod โดยใช้คำสั่งเหล่านี้

sudo apt-get update

sudo apt-get ติดตั้ง pigpio python-pigpio python3-pigpio

2. คัดลอก dht22 ไปยัง /usr/local/bin/dht22 และทำให้สามารถเรียกใช้งานได้

ด้วยการติดตั้งบน RPI ของฉัน จะอยู่ใน /usr/lib/node_modules/homebridge-dht การติดตั้งของคุณอาจวางไว้ในตำแหน่งอื่น กรุณาตรวจสอบกับ

ls -l /usr/lib/node_modules/homebridge-dht/dh22

sudo cp /usr/lib/node_modules/homebridge-dht/ dht22 /usr/local/bin/dht22

sudo chmod a+x /usr/local/bin/dht22

3. ณ จุดนี้คุณควรจะสามารถทดสอบเซ็นเซอร์ DHT22 ของคุณด้วยคำสั่ง

dht22

และควรตอบสนองด้วย

0 18.4 ค 51.0%

ขั้นตอนที่ 8: การตรวจสอบอุณหภูมิ CPU Raspberry PI CPU - ตัวเลือก

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

1. สร้างไฟล์ใน /usr/local/bin/cputemp ที่มี

#!/bin/bashcpuTemp0=$(cat /sys/class/thermal/thermal_zone0/temp) cpuTemp1=$(($cpuTemp0/1000)) cpuTemp2=$(($cpuTemp0/100)) cpuTempM=$(($cpuTemp2 % $cpuTemp1)) เสียงสะท้อน $cpuTemp1" C"

2. ทำให้ไฟล์ปฏิบัติการได้

chmod a+x /usr/local/bin/cputemp

3. อัปเดตไฟล์ config.json ของคุณใน ~/.homebridge และแทนที่ส่วนอุปกรณ์เสริมด้วยสิ่งต่อไปนี้:

"เครื่องประดับ": [{ "อุปกรณ์เสริม": "Dht", "ชื่อ": "cputemp", "บริการ": "อุณหภูมิ" }, { "อุปกรณ์เสริม": "Dht", "ชื่อ": "เซ็นเซอร์อุณหภูมิ/ความชื้น", "บริการ": "dht22" }]

ขั้นตอนที่ 9: เริ่ม Homebridge

เริ่มโฮมบริดจ์และไฟล์บันทึกของคุณควรมีลักษณะดังนี้

[6/21/2016, 21:37:31 PM] ปลั๊กอินที่โหลดแล้ว: homebridge-dht [6/21/2016, 21:37:31 PM] การลงทะเบียนอุปกรณ์เสริม 'homebridge-dht. Dht'

[6/21/2559, 21:37:31 น.] ---

[6/21/2016, 21:37:31 PM] โหลด config.json พร้อมอุปกรณ์เสริม 2 รายการและ 0 แพลตฟอร์ม

[6/21/2559, 21:37:31 น.] ---

[6/21/2016, 21:37:32 น.] กำลังโหลด 0 แพลตฟอร์ม…

[6/21/2016, 21:37:32 PM] กำลังโหลดอุปกรณ์เสริม 2 ชิ้น…

[6/21/2016, 21:37:32 PM] [cputemp] กำลังเริ่มต้นอุปกรณ์เสริม Dht…

[6/21/2559, 21:37:32 น.] [cputemp] INIT: cputemp

[6/21/2016, 21:37:32 PM] [Temp/Humidity Sensor] กำลังเริ่มต้นอุปกรณ์เสริม Dht…

[6/21/2559, 21:37:32 น.] [เซ็นเซอร์อุณหภูมิ/ความชื้น] INIT: เซ็นเซอร์อุณหภูมิ/ความชื้น

สแกนรหัสนี้ด้วยแอป HomeKit บนอุปกรณ์ iOS เพื่อจับคู่กับ Homebridge:

┌────────────┐

│ 031-45-154 │

└────────────┘

[6/21/2016, 21:37:32 PM] Homebridge ทำงานบนพอร์ต 51826

ขั้นตอนที่ 10: ทดสอบด้วย Home Kit

การทดสอบด้วยชุดโฮม
การทดสอบด้วยชุดโฮม

เปิดไฟไคลเอนต์ homekit ที่คุณชื่นชอบและจับคู่กับอุปกรณ์เสริมใหม่ของคุณ จากนั้นคุณควรเห็นเซ็นเซอร์อุณหภูมิ/ความชื้นใหม่

หากคุณมีปัญหาหรือปัญหา โปรดแจ้งปัญหาใน GitHub

ขั้นตอนที่ 11: บทโบนัส - เซ็นเซอร์คู่

บทที่โบนัส - เซ็นเซอร์คู่
บทที่โบนัส - เซ็นเซอร์คู่

หลังจากมีคนถามหลายคน ฉันคิดว่าฉันจะรวมบันทึกที่จำเป็นในการเพิ่มเซ็นเซอร์ตัวที่สองด้วย

สำหรับการเดินสาย ให้ดูที่ภาพที่แนบมา นี่คือภาพที่ฉันแชร์กับ Hector305 เพื่อเชื่อมต่อเซ็นเซอร์ตัวที่สอง

และสำหรับไฟล์กำหนดค่าที่อัปเดต นี่คือ config.json สำหรับสิ่งนั้น

{ "อุปกรณ์เสริม": "Dht", "name": "dht22 - indoor", "name_temperature": "Indoor Temperature", "name_humidity": "Indoor Humdity", "gpio": "4", "service": "dht22" }, { "accessory": "Dht", "name": "dht22 - outdoor", "name_temperature": "Outdoor Temperature", "name_humidity": "Outdoor Humdity", "gpio": "2", "service": "dht22" }

แนะนำ: