สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: ข้อมูลสภาพอากาศ
- ขั้นตอนที่ 2: การตั้งค่า RPi และการเขียนโค้ด
- ขั้นตอนที่ 3: การกำหนดค่า Weather API
- ขั้นตอนที่ 4: PCB แบบกำหนดเอง
วีดีโอ: Digital RPi LED Thermometer: 6 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
Raspbian OSเรียนรู้วิธีที่ฉันสร้าง Digital LED Thermometer ด้วย Raspberry Pi Zero W, แถบ LED, จอแสดงผล OLED และ PCB แบบกำหนดเอง
โดยจะหมุนเวียนรายชื่อเมืองโดยอัตโนมัติ และแสดงอุณหภูมิบนจอแสดงผล OLED และ LED แต่คุณยังสามารถเลือกเมืองที่จะแสดงด้วยตนเองได้ด้วยปุ่มที่ด้านข้าง ยิ่งไปกว่านั้น มันจะปิด LED และ OLED หากไม่ได้ใช้งานเป็นเวลาสองสามนาที และจะเปิดขึ้นอีกครั้งหากตรวจพบการเปลี่ยนแปลงของแสงที่มีนัยสำคัญ (ควบคุมโดย LDR)
เสบียง
- การ์ด Raspberry Pi Zero W และ SD พร้อม Raspbian OS
- โมดูล OLED ขนาด 1.5 นิ้วโดย Waveshare
- แหล่งจ่ายไฟ 5V 2.4A สำหรับ Raspberry Pi
- แถบ LED WS2812B ยาว 5 ม., 30 LEDs/m
- สกรู แหวนรอง โบลท์ และสแตนออฟ
- PCB แบบกำหนดเอง พร้อมปุ่ม สวิตช์ ldr ส่วนหัวพิน และอื่นๆ
- หัวแร้งและหัวแร้ง
- กาวร้อน
- กาวไม้
- ไม้อัดหนา 4 มม. และ 6 มม.
- อะครีลิคสีขาว 3 มม.
ขั้นตอนที่ 1: ข้อมูลสภาพอากาศ
มอบเครดิตให้กับ StuffWithKirby สำหรับรหัสของเขาในการอ่านข้อมูลสภาพอากาศ JSON ใน python
ฉันรวบรวมข้อมูลสภาพอากาศฟรีจาก OpenWeatherMap.org ซึ่งให้ข้อมูลสภาพอากาศจากเมืองใหญ่ๆ มากมายในหลายประเทศ
1. เริ่มต้นด้วยการสร้างบัญชีฟรีบน OpenWeatherMap.org
2. จากนั้นคัดลอก api-key ของคุณเพื่อใช้ในภายหลัง
3. ตอนนี้ ดาวน์โหลด แตกไฟล์ และเปิดไฟล์ city.list.json.gz และค้นหาเมืองที่คุณต้องการให้แสดง แล้วคัดลอกรหัสเมืองไว้ดูภายหลัง
ขั้นตอนที่ 2: การตั้งค่า RPi และการเขียนโค้ด
ก่อนอื่น ฉันเชื่อมต่อ OLED กับ Pi และติดตั้งไลบรารีที่จำเป็นสำหรับ OLED ตามที่ผู้ผลิตอธิบายไว้ที่นี่
ตรวจสอบให้แน่ใจว่า RPi เชื่อมต่อกับอินเทอร์เน็ต
1. เปิดใช้งานฟังก์ชัน I2C และ SPI ใน raspi-config ภายใต้ Interfacing Options ออกและรีบูต
2. เรียกใช้สิ่งนี้เพื่ออัปเดต:
sudo apt-get update
3. เรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้งไลบรารีที่จำเป็น:
sudo apt-get ติดตั้ง python-dev
sudo apt-get ติดตั้ง python-smbus sudo apt-get ติดตั้ง python-serial sudo apt-get ติดตั้ง python-imaging
4. เรียกใช้คำสั่งต่อไปนี้เพื่อเปิดไฟล์การกำหนดค่า:
sudo nano /etc/modules
ตรวจสอบให้แน่ใจว่าสองบรรทัดต่อไปนี้อยู่ในไฟล์การกำหนดค่า จากนั้นออกและรีบูต:
i2c-bcm2708
i2c-dev
5. รันสิ่งนี้เพื่อโคลน GitHub repo ของฉัน:
โคลน git https://github.com/Anders644PI/1.5inch-OLED-with-RPi.git
6. ไปที่โฟลเดอร์ใหม่และเปิดเครื่องรูด RPi_GPIO-0_6_5.zip:
เปิดเครื่องรูด RPi_GPIO-0_6_5.zip
เรียกใช้สิ่งนี้เพื่อติดตั้งไลบรารี:
cd RPi_GPIO-0_6_5
sudo python setup.py ติดตั้ง
7. กลับไปที่โฟลเดอร์หลักโดยพิมพ์โดยพิมพ์:
cd /home/pi/1.5inch-OLED-with-RPi/
หรือ
ซีดี..
จากนั้นทำบางอย่างด้วย spidev-3_2.zip
8. จากนั้นเปิดเครื่องรูดสายไฟPi.zip:
เปิดเครื่องรูดสายไฟPi
cdสายไฟPi
และรันคำสั่งเหล่านี้:
chmod 777 build
./สร้าง
ตรวจสอบการติดตั้งด้วย:
gpio –v
9. กลับไปที่โฟลเดอร์หลักและคลายซิป bcm2835-1_45.zip
เปิดเครื่องรูด bcm2835-1_45.zip
cd bcm2835-1_45
10. จากนั้นเรียกใช้เพื่อติดตั้งไลบรารี:
./configure
ทำ sudo ให้ตรวจสอบ sudo make install
11. กลับไปที่ /home/pi/1.5inch-OLED-with-RPi/ อีกครั้งและเรียกใช้สิ่งนี้เพื่อทดสอบ OLED:
cd /Demo_Code/Python/
sudo python main.py
จากนั้นฉันยังต้องติดตั้งไลบรารีสำหรับแถบ LED WS2812B ตามคู่มือนี้
หลังจากนั้นก็เป็นเพียงเรื่องของการเขียนโค้ด ซึ่งใช้เวลาประมาณสองสามเดือนตั้งแต่ต้นจนจบในการดำเนินการเปิดและปิด รหัสของฉันมีอยู่ใน GitHub ของฉันที่นี่
ขั้นตอนที่ 3: การกำหนดค่า Weather API
1. ซีดีลงใน LED_Thermometer_Code_and_OLED_driver:
cd LED_Thermometer_Code_and_OLED_driver
2. จากนั้นเปิด Official_Digital_LED_Thermometer_v1-0.py:
nano Official_Digital_LED_Thermometer_v1-0.py
จากนั้นเลื่อนลงและแก้ไขคีย์ api ไปยังคีย์ api ของคุณจาก openweathermap.org ดังที่แสดงในภาพด้านบน เปลี่ยนชื่อเมืองและชื่อเมืองเป็นตำแหน่งที่คุณต้องการด้วย
ขั้นตอนที่ 4: PCB แบบกำหนดเอง
รางวัลที่สองในการประกวด Raspberry Pi 2020
แนะนำ:
Arduino Laser Infrared Thermometer: 7 ขั้นตอน (พร้อมรูปภาพ)
Arduino Laser Infrared Thermometer: ในโปรเจ็กต์นี้ ฉันจะแสดงให้คุณเห็นถึงวิธีการสร้างเทอร์โมมิเตอร์อินฟราเรดแบบเลเซอร์ด้วยเลเซอร์พร้อมกล่องพิมพ์ 3 มิติแบบกำหนดเอง
Arduino Infrared Thermometer Gun MDF Case: 4 ขั้นตอน (พร้อมรูปภาพ)
Arduino Infrared Thermometer Gun MDF Case: โครงการนี้มีไว้สำหรับทำเทอร์โมมิเตอร์อินฟราเรดกับ Arduino วงจรนี้ใส่ในกล่อง MDF ดูเหมือนเครื่องวัดอุณหภูมิอินฟราเรดทางการแพทย์ในตลาด เซนเซอร์อินฟราเรดเทอร์โมมิเตอร์ GY-906 ใช้สำหรับวัดอุณหภูมิวัตถุโดยไม่ต้องสัมผัส มันสามารถหมายถึง
DIY Logging Thermometer พร้อมเซ็นเซอร์ 2 ตัว: 3 ขั้นตอน (พร้อมรูปภาพ)
DIY Logging Thermometer พร้อมเซ็นเซอร์ 2 ตัว: โครงการนี้เป็นการปรับปรุงโครงการก่อนหน้านี้ของฉัน "DIY Logging Thermometer" โดยจะบันทึกการวัดอุณหภูมิลงในการ์ด micro SD การเปลี่ยนแปลงฮาร์ดแวร์ฉันได้เพิ่มเซ็นเซอร์อุณหภูมิ DS18B20 ลงในโมดูลนาฬิกาแบบเรียลไทม์ โดยจะมีปร
Acme Digital Thermometer W/ DS18B20 Temp Probe & I2C LCD: 5 ขั้นตอน
Acme Digital Thermometer W/ DS18B20 Temp Probe & I2C LCD: นี่เป็นโครงการที่ง่ายมากที่ไม่เสียค่าใช้จ่ายมากนักและจะใช้เวลาไม่นาน ฉันใส่มันในกล่อง Amazon เพราะมันอยู่ที่นั่น แต่สามารถติดตั้งได้แทบทุกอย่าง
Arduino DIY Analog Thermometer: 7 ขั้นตอน (พร้อมรูปภาพ)
Arduino DIY Analog Thermometer: เรียนเพื่อน ๆ ยินดีต้อนรับสู่บทช่วยสอนอื่น! วันนี้เราจะมาเรียนรู้วิธีการใช้โวลต์มิเตอร์แบบแอนะล็อกนี้กับ Arduino และทำให้แสดงอุณหภูมิแทนแรงดันไฟ อย่างที่คุณเห็น ในโวลต์มิเตอร์ที่ดัดแปลงนี้ เราจะเห็นอุณหภูมิเป็นเด