
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12

ระบบตรวจสอบอุณหภูมิให้ข้อมูลเชิงลึกอันมีค่าในสภาพแวดล้อมเชิงพาณิชย์และอุตสาหกรรม เพื่อลดความไร้ประสิทธิภาพหรือรักษาคุณภาพของผลิตภัณฑ์และคุณภาพของผลิตภัณฑ์ จะเกิดอะไรขึ้นถ้าฉันบอกคุณว่าคุณสามารถตรวจสอบอุณหภูมิของห้องเก็บไวน์ที่สร้างขึ้นเองหรือในพิพิธภัณฑ์สัตว์น้ำของครอบครัวได้ที่บ้านโดยใช้อุปกรณ์เดียวกัน นอกจากนี้ จะเกิดอะไรขึ้นถ้าฉันบอกคุณว่าสามารถใช้อุปกรณ์เดียวกันเพื่อตรวจสอบอุณหภูมิอากาศและของเหลวของของเหลวที่โรงงานของคุณได้เช่นกัน ผู้สร้างโลกของเราได้ทำให้สิ่งนี้เป็นไปได้ และคู่มือนี้มีไว้เพื่อช่วยเริ่มต้นความคิดริเริ่มของคุณเองที่บ้านหรือที่หน้าร้าน
คู่มือนี้จะเป็นบทช่วยสอนของคุณเกี่ยวกับระบบตรวจสอบอุณหภูมิ DIY แบบง่ายๆ ที่สามารถกันน้ำในการบูตได้ การใช้ Raspberry Pi และ Ubidots เราจะแสดงวิธีเชื่อมต่อ Pi ของคุณและแสดงเมตริกของระบบอุณหภูมิแบบเรียลไทม์ เมื่อใช้ Ubidots คุณสามารถสร้างอีเมลหรือกิจกรรม SMS เพื่อให้แน่ใจว่า "ตัวแปร" ของคุณ (ในกรณีนี้คืออุณหภูมิ) ยังคงอยู่ภายในชุดของขีดจำกัดที่กำหนดโดยคุณ เพื่อให้มั่นใจในคุณภาพและประสิทธิภาพของเงื่อนไขระบบของคุณ
สำหรับโครงการนี้ เราจะใช้เซ็นเซอร์ DS18B20 แบบมีสายและแบบกันน้ำ 1 สาย 1-wire คืออะไร? เป็นโปรโตคอลการสื่อสารที่ทำให้การเชื่อมต่อเซ็นเซอร์ IoT ของคุณง่ายขึ้นโดยการรวมสายเคเบิลทั้งหมดเข้าด้วยกันเป็นสายเส้นเดียว (…อันที่จริงคือสาม สองเป็นการเชื่อมต่อกราวด์และพลังงานสำหรับพลังงาน ส่วนที่สามคือ 1 สายสำหรับการส่งข้อมูล)
หมายเหตุสำคัญ: เซ็นเซอร์อุณหภูมิ 1-Wire มีรุ่นจำหน่ายต่างกัน ตัวหนึ่งมีตัวต้านทานรวมอยู่ในเซ็นเซอร์และอีกตัวไม่มี เมื่อซื้อหรือตั้งค่าฮาร์ดแวร์ ควรตรวจสอบให้แน่ใจว่าอุปกรณ์และเซ็นเซอร์ของคุณสามารถทำงานร่วมกันได้ก่อนที่จะดำเนินการต่อไปในบทช่วยสอนนี้
ขั้นตอนที่ 1: ข้อกำหนด
- รุ่น Raspberry Pi 3 (กำหนดค่าแล้ว)
- เซ็นเซอร์อุณหภูมิ OneWire - DS18B20
- บัญชี Ubidots - หรือ - ใบอนุญาต STEM
ขั้นตอนที่ 2: ตั้งค่าการเดินสาย



ดังที่ได้กล่าวไว้ก่อนหน้านี้ เซ็นเซอร์อุณหภูมิ OneWire จำหน่ายพร้อมตัวต้านทานหลายรุ่น สำหรับบทช่วยสอนนี้ เราจะอธิบายทั้งสองเวอร์ชัน – ทั้งแบบมีและไม่มีตัวต้านทาน ไม่ว่าคุณจะเลือกระบบใดสำหรับระบบของคุณ อย่าลืมตรวจสอบการเชื่อมต่ออีกครั้งว่าถูกต้องตามไดอะแกรมและภาพถ่ายด้านล่าง
พร้อมตัวต้านทานในตัว - พร้อมขั้วต่อโกรฟ
โปรดทำตามตารางและภาพด้านบนเพื่อทำการเชื่อมต่อที่ถูกต้องสำหรับเซ็นเซอร์อุณหภูมิ OneWire พร้อมตัวต้านทาน
เคล็ดลับ: Arduberry เป็นแคมเปญใหม่ใน Kickstarter ซึ่งเป็นวิธีที่ง่ายและราคาไม่แพงในการนำ Arduino shields มาสู่ Raspberry Pi ตัวเลือกที่น่าทึ่งนี้เป็นวิธีที่ง่ายในการเริ่มต้นเชื่อมต่อเซ็นเซอร์โกรฟของคุณโดยใช้ Arduino Grove shield สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ โปรดอ้างอิงถึงการตั้งแคมป์:)
ไม่มีตัวต้านทานในตัว- ไม่มีขั้วต่อโกรฟ
ตัวต้านทานในการตั้งค่านี้ใช้เป็นตัวดึงข้อมูลสำหรับสายข้อมูล และควรเชื่อมต่อระหว่างสายข้อมูลกับสายไฟ เพื่อให้แน่ใจว่าสายข้อมูลอยู่ที่ระดับตรรกะที่กำหนดไว้ และจำกัดการรบกวนจากสัญญาณรบกวนทางไฟฟ้าหากหมุดของเราลอยอยู่
ใช้ตัวต้านทาน4.7kΩ (หรือ10kΩ) และทำตามแผนภาพด้านบนเพื่อทำการเชื่อมต่อที่ถูกต้อง โปรดทราบว่าหมุดที่เชื่อมต่อใน Raspberry Pi จะเหมือนกับที่ใช้ในตาราง
ขั้นตอนที่ 3: การตั้งค่าเซนเซอร์


1. เมื่อ Raspberry Pi เชื่อมต่อกับอินเทอร์เน็ต ให้ตรวจสอบที่อยู่ IP ที่กำหนดให้กับการเข้าถึงบอร์ดโดยใช้ ssh ในเทอร์มินัลของคอมพิวเตอร์ของคุณ:
ssh pi@{IP_Address_assigned}
หากคุณยังไม่ได้กำหนดค่าข้อมูลรับรองของ Raspberry Pi โปรดทราบว่าคุณจะต้องใช้ข้อมูลรับรองเริ่มต้นที่ให้มา:
- Username: pi
- รหัสผ่าน: ราสเบอร์รี่
เมื่อ pi ของคุณได้รับการกำหนดค่าและเชื่อมต่ออย่างถูกต้อง ผู้ใช้เทอร์มินัลของคุณจะแสดงเป็น: pi@raspberrypi
2. ตอนนี้ มาอัพเกรดแพ็คเกจและติดตั้ง pip ซึ่งเป็นตัวจัดการแพ็กเก็ตของ Python คัดลอกและวางคำสั่งด้านล่างลงในเทอร์มินัลแล้วกด "Enter" หลังแต่ละคำสั่งเพื่อเรียกใช้คำสั่ง
sudo apt-get update> sudo apt-get upgrade
sudo apt-get install python-pip python-dev build-essential
3. จากนั้น ติดตั้ง Request Library ซึ่งเป็นไลบรารี Python ยอดนิยมที่ทำให้การขอ HTTP ง่ายขึ้น คัดลอกและวางคำสั่งด้านล่างลงในเทอร์มินัลแล้วกด "Enter" เรียกใช้คำสั่ง
$ pip คำขอติดตั้ง
4. Raspberry Pi มาพร้อมกับไดรเวอร์มากมายสำหรับการเชื่อมต่อ ในกรณีนี้ เพื่อให้สามารถโหลดไดรเวอร์ของเซ็นเซอร์ 1-Wire บนพิน GPIO เราต้องใช้ไดรเวอร์สองตัวด้านล่างนี้ ไดรเวอร์เหล่านี้จึงถูกจัดเก็บเป็นโมดูลที่โหลดได้ และคำสั่ง modprobe ถูกใช้เพื่อบูตเข้าสู่เคอร์เนล Linux เมื่อจำเป็น
เรียกใช้คำสั่งด้านล่าง:
$ sudo modprobe w1-gpio> $ sudo modprobe w1-therm
5. ตอนนี้ เราต้องเปลี่ยนไดเร็กทอรีไปยังโฟลเดอร์อุปกรณ์ 1-Wire ของเรา และแสดงรายการอุปกรณ์เพื่อให้แน่ใจว่าเซ็นเซอร์ของเราโหลดอย่างถูกต้อง คัดลอกและวางคำสั่งด้านล่างลงในเทอร์มินัลแล้วกด "Enter" หลังแต่ละคำสั่งเพื่อเรียกใช้คำสั่ง
$ cd /sys/bus/w1/devices/> $ ls
ในขณะนี้ คุณได้ประกอบและเชื่อมต่อเซ็นเซอร์แล้ว และควรแสดงรายการเป็นชุดตัวเลขและตัวอักษร ในกรณีของเรา อุปกรณ์ได้รับการลงทะเบียนเป็น 28-00000830fa90 แต่กรณีของคุณจะเป็นชุดตัวอักษรและตัวเลขที่แตกต่างกัน ดังนั้นให้แทนที่หมายเลขซีเรียลของเราด้วยหมายเลขของคุณเองและเรียกใช้คำสั่ง
$ cd 28-00000830fa90
เซ็นเซอร์จะเขียนไปยังไฟล์ w1_slave เป็นระยะ เพื่ออ่านเซ็นเซอร์อุณหภูมิของคุณ โปรดเรียกใช้คำสั่งด้านล่าง:
$ cat w1_slave
คำสั่งนี้จะแสดงข้อความสองบรรทัดพร้อมผลลัพธ์ t= แสดงอุณหภูมิเป็นองศาเซลเซียส โปรดทราบว่าควรวางจุดทศนิยมหลังตัวเลขสองหลักแรก (ซึ่งระบุไว้ในรหัสสุดท้าย - ไม่ต้องกังวล) ตัวอย่างเช่น ค่าอุณหภูมิที่เราได้รับคือ 29.500 องศาเซลเซียส
เมื่อคุณอ่านค่าอุณหภูมิได้แล้ว ก็ถึงเวลาโพสต์ไปที่ Ubidots!
ขั้นตอนที่ 4: การส่งข้อมูลไปยัง Ubidots สำหรับการแสดงภาพ



ตอนนี้ได้เวลาเขียนโค้ดแล้ว!:)สร้างและเรียกใช้สคริปต์ Python ในเทอร์มินัลของคอมพิวเตอร์ของคุณ:
$ nano onewire_temp_ubidots.py
จากนั้นวางและบันทึกรหัสต่อไปนี้ลงในเทอร์มินัลของคุณ: กดที่นี่เพื่อรับรหัส
อย่าลืมแทนที่หมายเลขซีเรียล 28-00000830fa90 ด้วยของคุณ และกำหนดโทเค็นบัญชี Ubidots ของคุณใน URL คำขอ หากคุณไม่ทราบวิธีรับ Ubidots Token ของคุณ โปรดอ้างอิงบทความด้านล่างเพื่อขอความช่วยเหลือ:
ค้นหา TOKEN ของคุณจากบัญชี Ubidots ของคุณ
ตอนนี้เรามาทดสอบสคริปต์กัน วางและเรียกใช้สคริปต์ด้านล่างในเทอร์มินัลของคอมพิวเตอร์ของคุณ
หลาม onewire_temp_ubidots.py
หากทำงานอย่างถูกต้อง คุณจะเห็นอุปกรณ์ใหม่ในบัญชี Ubidots ของคุณพร้อมตัวแปรสองตัว: temp_celsius และ temp_fahrenheit
ขั้นตอนที่ 5: ขั้นตอนเพิ่มเติม: เปลี่ยนชื่ออุปกรณ์และตัวแปร


ชื่อของตัวแปรที่สร้างขึ้นเหมือนกับป้ายกำกับ API ซึ่งเป็น ID ที่ API ใช้ ไม่ได้หมายความว่าไม่สามารถเปลี่ยนชื่อได้ ดังนั้นจึงแนะนำให้เปลี่ยนชื่ออุปกรณ์และตัวแปรเพื่อให้เป็นมิตรกับระบบการตั้งชื่อของคุณ หากต้องการเรียนรู้วิธีเปลี่ยนชื่อตัวแปรของคุณ ดูด้านล่าง:
วิธีปรับชื่ออุปกรณ์และชื่อตัวแปร
คุณยังสามารถเพิ่มและปรับหน่วยของตัวแปรแต่ละตัวได้จากรายการตัวเลือกของคุณ
ดังที่คุณเห็นด้านบน เราได้กำหนดหน่วยต่างๆ ให้กับตัวแปรแต่ละตัว และยังกำหนดชื่อที่เข้าใจง่ายขึ้นเพื่อให้เข้ากับระบบการตั้งชื่อโครงการของเรา ขอแนะนำอย่างยิ่งสำหรับผู้ใช้ที่ต้องการปรับใช้ 100s หรืออุปกรณ์
ขั้นตอนที่ 6: การตั้งค่าเหตุการณ์
เหตุการณ์ (หรือการแจ้งเตือน) คือการกระทำใดๆ ที่ทริกเกอร์เมื่อข้อมูลเป็นไปตามหรือเกินกฎการออกแบบ ตัวอย่างเช่น คุณสามารถส่งอีเมลหรือข้อความ SMS ได้ทุกเมื่อที่เซ็นเซอร์หยุดส่งข้อมูลหรืออุณหภูมิเกินขีดจำกัดสูงสุดหรือต่ำสุด
หากต้องการสร้างกิจกรรม โปรดอ้างอิงบทความด้านล่าง:
เหตุการณ์: การสร้างเหตุการณ์ข้อความ (SMS อีเมลและโทรเลข)
ขั้นตอนที่ 7: ผลลัพธ์
ในเวลาเพียงไม่กี่นาที คุณได้สร้างระบบตรวจสอบอุณหภูมิแบบ DIY ที่ใช้งานง่ายแล้ว ตอนนี้วางเซ็นเซอร์ของคุณในที่ที่จำเป็นและเริ่มติดตามอุณหภูมิจากอุปกรณ์ของคุณวันนี้!
มีความสุขในการแฮ็ค:)
แนะนำ:
Ubidots + ESP32- การตรวจสอบเครื่องทำนาย: 10 ขั้นตอน

Ubidots + ESP32- Predictive Machine Monitoring: การวิเคราะห์การทำนายการสั่นและอุณหภูมิของเครื่องโดยการสร้างเหตุการณ์อีเมลและบันทึกการสั่นใน Google ชีตโดยใช้ Ubidots การบำรุงรักษาเชิงคาดการณ์และการตรวจสอบสภาพเครื่องจักรการเพิ่มขึ้นของเทคโนโลยีใหม่ เช่น อินเทอร์เน็ตของสรรพสิ่ง อุตสา
NodeMCU ESP8266 - MQTT - Ubidots: 5 ขั้นตอน

NodeMCU ESP8266 - MQTT - Ubidots: MQTT เป็นโปรโตคอลการส่งข้อความมาตรฐาน OASIS สำหรับ Internet of Things (IoT) ได้รับการออกแบบมาเพื่อเผยแพร่/สมัครรับส่งข้อความที่มีน้ำหนักเบามาก ซึ่งเหมาะอย่างยิ่งสำหรับการเชื่อมต่ออุปกรณ์ระยะไกลด้วยรหัสขนาดเล็กและเครือข่ายขั้นต่ำ
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)

Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): การชาร์จแบบเหนี่ยวนำ (เรียกอีกอย่างว่าการชาร์จแบบไร้สายหรือการชาร์จแบบไร้สาย) เป็นการถ่ายโอนพลังงานแบบไร้สาย ใช้การเหนี่ยวนำแม่เหล็กไฟฟ้าเพื่อจ่ายกระแสไฟฟ้าให้กับอุปกรณ์พกพา แอปพลิเคชั่นที่พบบ่อยที่สุดคือ Qi Wireless Charging st
วิธีสร้างตัวนับผู้คนด้วย Raspberry Pi และ Ubidots: 6 ขั้นตอน

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

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