Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Raspbian OS Raspberry Pi Zero W, LED tasmasi, OLED -displey va maxsus PCB bilan raqamli LED termometrini qanday yaratganimni bilib oling.
U avtomatik ravishda shaharlarning ro'yxatini tuzadi va OLED -displeyda haroratni ko'rsatadi. Lekin siz qo'lda ko'rsatiladigan shaharni tanlashingiz mumkin, yon tomonidagi tugmalar. Buning ustiga, agar u bir necha daqiqa harakatsiz bo'lsa, LED va OLED -ni o'chirib qo'yadi va agar yorug'lik sezilarli o'zgarishini aniqlasa (LDR tomonidan boshqariladi) qayta yoqiladi.
Ta'minotlar
- Raspbian Pi Zero W va SD-karta, Raspbian OS bilan
- Waveshare tomonidan 1,5 dyuymli OLED moduli
- Raspberry Pi uchun 5V 2.4A quvvat manbai
- 5 m WS2812B LED tasmasi, 30 LED/m
- vintlar, yuvgichlar, murvat va tiqinlar.
- Maxsus PCB, tugmachalari, kommutatori, ldr, pin-sarlavhalari va boshqalar
- Lehimlash temir va lehim
- Issiq elim
- Yog'och elim
- 4 mm va 6 mm kontrplak
- 3 mm oq akril
1 -qadam: Ob -havo ma'lumoti
Pythonda JSON ob -havo ma'lumotlarini o'qish kodi uchun StuffWithKirbyga kredit.
Men OpenWeatherMap.org saytidan ob -havo ma'lumotlarini bepul yig'aman, ular ko'plab mamlakatlarning ko'plab yirik shaharlaridan ob -havo ma'lumotlarini etkazib berishadi.
1. OpenWeatherMap.org saytida BEPUL hisob qaydnomasini yaratish bilan boshlang.
2. Keyin api-kalitingizni keyinroq ishlatish uchun nusxa ko'chiring.
3. Endi city.list.json.gz faylini yuklab oling, oching va oching va ko'rsatmoqchi bo'lgan shaharlarni qidiring va keyinroq shahar identifikatorlarini nusxa ko'chiring.
2 -qadam: RPi -ni o'rnatish va kodni yozish
Birinchidan, men OLED -ni Pi -ga uladim va ishlab chiqaruvchi tomonidan ta'riflanganidek, OLED uchun kerakli kutubxonalarni o'rnatdim.
RPi Internetga ulanganligiga ishonch hosil qiling
1. Interfacing Options ostida raspi-configda I2C va SPI funktsiyasini yoqing. Chiqish va qayta yuklash.
2. Buni yangilash uchun ishga tushiring:
sudo apt-get yangilanishi
3. Kerakli kutubxonalarni o'rnatish uchun quyidagi buyruqlarni bajaring:
sudo apt-get install python-dev
sudo apt-get install python-smbus sudo apt-get install python-serial sudo apt-get install python-Imaging
4. Konfiguratsiya faylini ochish uchun quyidagi buyruqni bajaring:
sudo nano /etc /modullari
Quyidagi ikkita satr konfiguratsiya faylida ekanligiga ishonch hosil qiling, so'ng chiqib, qayta ishga tushiring:
i2c-bcm2708
i2c-dev
5. Endi buni GitHub repo -ni klonlash uchun ishga tushiring:
git klon https://github.com/Anders644PI/1.5inch-OLED-with-RPi.git
6. Yangi papkaga o'ting va RPi_GPIO-0_6_5.zip-ni oching:
ochish RPi_GPIO-0_6_5.zip
Kutubxonani o'rnatish uchun buni ishga tushiring:
CD RPi_GPIO-0_6_5
sudo python setup.py ni o'rnating
7. Asosiy papkaga qayting, yozib yozing:
cd /home/pi/1.5inch-OLED-with-RPi/
Yoki
CD..
Keyin spidev-3_2.zip bilan bir oz qiling.
8. Keyin wiringPi.zip -ni oching:
simni ochishPi
CD simiPi
Va bu buyruqlarni bajaring:
chmod 777 qurish
./qurmoq
O'rnatishni tekshiring:
gpio - v
9. Asosiy papkaga qayting va bcm2835-1_45.zip-ni oching
bcm2835-1_45.zip-ni oching
CD bcm2835-1_45
10. Keyin kutubxonani o'rnatish uchun quyidagini bajaring:
./ sozlash
make sudo make check sudo make install
11. Yana /home/pi/1.5inch-OLED-with-RPi/ sahifasiga qayting va OLEDni sinab ko'rish uchun uni ishga tushiring:
cd/Demo_Code/Python/
sudo python main.py
Keyin men ushbu qo'llanmaga binoan WS2812B LED tasmasi uchun kutubxonalarni o'rnatishga majbur bo'ldim.
Shundan keyingina, kodni yozish kifoya edi, u boshidan oxirigacha bir necha oy davom etdi, uni yoqish va o'chirish. Mening kodimni GitHub -da topish mumkin.
3 -qadam: Weather API -ni sozlash
1. CD_Thermometer_Code_and_OLED_driver -ga:
cd LED_Thermometer_Code_and_OLED_driver
2. Keyin Official_Digital_LED_Thermometer_v1-0.py-ni oching:
nano rasmiy_Digital_LED_Termometr_v1-0.py
Keyin yuqoridagi rasmda ko'rsatilgandek, openweathermap.org saytidan api kalitini api kalitiga pastga aylantiring va tahrirlang. Shuningdek, shahar identifikatorlari va shahar nomlarini kerakli joylarga o'zgartiring.
4 -qadam: Maxsus PCB
Raspberry Pi tanlovining ikkinchi mukofoti 2020