Mundarija:

Ob -havo soati: 15 qadam (rasmlar bilan)
Ob -havo soati: 15 qadam (rasmlar bilan)

Video: Ob -havo soati: 15 qadam (rasmlar bilan)

Video: Ob -havo soati: 15 qadam (rasmlar bilan)
Video: Номозни масхара килган шайтон жазосини олди 🙀 2024, Iyul
Anonim
Ob -havo soati
Ob -havo soati

Sana va ob -havo ko'rsatiladigan ajoyib ko'rinadigan ish stoli.

1 -qadam: RaspberryPI uchun dasturiy ta'minotni yuklab oling va o'rnating

RaspberryPI uchun dasturiy ta'minotni yuklab oling va o'rnating
RaspberryPI uchun dasturiy ta'minotni yuklab oling va o'rnating

"RASPBIAN JESSIE LITE" ni yuklab oling

DashboardPI uchun yangi qattiq diskni yarating

USB adapter orqali microSD -ni kompyuterga joylashtiring va dd buyrug'i yordamida disk tasvirini yarating

O'rnatilgan microSD kartani df -h buyrug'i orqali toping, ajratib oling va dd buyrug'i yordamida disk tasvirini yarating.

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678

$ umount /dev /sdb1

E'tibor bering: buyruq to'liq aniqligiga ishonch hosil qiling, siz bu buyruq bilan boshqa disklarga zarar etkazishingiz mumkin

if = RASPBIAN JESSIE LITE rasm faylining joylashuvi = microSD kartangiz joylashuvi

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of//dev/sdb (eslatma: bu holda, bu/dev/sdb,/dev/sdb1 bu zavod bo'limi edi microSD)

RaspberriPi -ni sozlash

Yangi microSD kartangizni malinaga joylashtiring va HDMI portiga ulangan monitor bilan yoqing

Kirish

foydalanuvchi: pi pass: malina Xavfsizlik uchun hisob parolingizni o'zgartiring

sudo passwd pi RaspberriPi kengaytirilgan parametrlarini yoqish

sudo raspi-config ni tanlang: 1 Fayl tizimini kengaytiring

9 Kengaytirilgan imkoniyatlar

A2 xost nomi uni "EnvironmentClock" ga o'zgartiradi.

A4 SSH SSH serverini yoqish

A7 I2C i2c interfeysini yoqish Ingliz/AQSh klaviaturasini yoqish

sudo nano /etc /default /klaviatura Quyidagi qatorni o'zgartiring: XKBLAYOUT = "us" Klaviatura tartibini o'zgartirish uchun PIni qayta ishga tushirish /fayl tizimining hajmini o'zgartirish.

$ sudo shutdown -r endi WiFi -ga avtomatik ulanish

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf raspberrypi avtomatik ravishda uy Wi -Fi tarmog'iga ulanishi uchun quyidagi qatorlarni qo'shing (agar simsiz tarmog'ingiz "linksys" deb nomlangan bo'lsa, masalan)

tarmoq = {ssid = "linksys" psk = "Bu yerda simsiz parol"} Wi -Fi tarmog'iga ulanish uchun PIni qayta yoqing.

$ sudo yopilishi -r

Endi sizning PI mahalliy tarmoqda, siz unga SSH orqali masofadan kirishingiz mumkin. Lekin avval siz hozirda mavjud bo'lgan IP -manzilni olishingiz kerak.

$ ifconfig PI IP -manzili uchun quyidagi buyruqlar chiqishida "inet addr: 192.168. XXX. XXX" ni qidiring Boshqa mashinaga o'ting va ssh orqali raspberrypi -ga kiring.

$ ssh [email protected]. XXX. XXX Kerakli paketlarni o'rnatishni boshlang

$ sudo apt-get yangilanishi

$ sudo apt-get yangilanishi

$ sudo apt-get install vim git python-python-smbus i2c-tools python-tasvirlash python-smbus build-muhim python-dev rpi.gpio python3 python3-pip libi2c-dev

Mahalliy vaqt mintaqasi sozlamalarini yangilang

$ sudo dpkg-konfiguratsiya tzdata interfeysi yordamida vaqt mintaqangizni tanlang l katalogini o'rnating [ixtiyoriy]

$ vi ~/.bashrc

quyidagi qatorni qo'shing:

$ taxallus l = 'ls -lh'

$ source ~/.bashrc VIM standart sintaksisini ajratib ko'rsatish [ixtiyoriy]

$ sudo vi/etc/vim/vimrc

quyidagi qatorga izoh qoldiring:

Clone Clock omboridagi sintaksis

$ CD ~

$ git clone https://github.com/khinds10/EnvironmentClock.git i2c Backpack Python drayverlarini o'rnating

$ CD ~

$ git klon

$ cd Adafruit_Python_LED_Backpack/

$ sudo python setup.py DHT11 ni o'rnating

$ CD ~

$ git klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py ni o'rnating

$ sudo python ez_setup.py

$ CD misollar/

$ vi simpletest.py Quyidagi qatorni o'zgartiring:

sensor = Adafruit_DHT. DHT11 Chiziqqa izoh bering

pin = 'P8_11' Chiziqni sharhlamang va pin raqamini 16 ga o'zgartiring

pin = 16 Sinovni ishga tushiring

python simpletest.py

Buyruqning satrida harorat va namlikning metrik ko'rsatkichini ko'rishingiz kerak.

2 -qadam: Kerakli materiallar: 1,2 dyuymli LED displey

Kerakli materiallar: 1,2 dyuymli LED displey
Kerakli materiallar: 1,2 dyuymli LED displey

3 -qadam: Kerakli materiallar: DHT11 namlagichi

Kerakli materiallar: DHT11 namlagichi
Kerakli materiallar: DHT11 namlagichi

4 -qadam: Kerakli materiallar: 2,6 dyuymli displey

Kerakli materiallar: 2.6
Kerakli materiallar: 2.6
Kerakli materiallar: 2.6
Kerakli materiallar: 2.6

5 -qadam: Kerakli materiallar: RaspberriPi Zero (yoki oddiy RaspberriPi ishlashi kerak)

6 -qadam: Displeyni yarating va simlang

Displeyni yarating va simlang
Displeyni yarating va simlang

I2C uchun Digole displeyini tayyorlang

Digole displeyining orqa tomonida, o'tish joyini lehimlang, i2c protokolidan foydalanish uchun displeyni tayinlang

7 -qadam: Loyiha muhofazasini chop eting

Loyiha muhofazasini chop eting
Loyiha muhofazasini chop eting

3D printer yordamida "enclosure/" papkasida joylashgan fayllarni chop eting..x3g fayllari MakerBot -ga mos keladi. Dizaynni yaxshilash va o'zgartirish uchun.stl va.blend (Blender dasturi) fayllaridan ham foydalanishingiz mumkin.

4 ta vint yordamida old panelni (2 teshikli) 4 qirrali korpusga burg'ulang va mahkamlang. Keyin displeylarni har bir teshikka joylashtiring.

8 -qadam: Issiq yopishtiruvchi tabancadan foydalanib, ularni ushlab turish uchun 7 -segment va digolli displeyni ulang

Ularni joyida ushlab turish uchun 7 ta segment va Digole displeyini issiq yopishtiruvchi qurol yordamida ulang
Ularni joyida ushlab turish uchun 7 ta segment va Digole displeyini issiq yopishtiruvchi qurol yordamida ulang

9 -qadam: simlarni ulanishga tayyorlang

Ulanish uchun simlarni tayyorlang
Ulanish uchun simlarni tayyorlang

Men simlarning o'rtasida ipni yalang'och qilib tashlash uchun standart sakrash simlari va sim kesgichdan foydalanaman, shunda bir dastani issiq yopishtiruvchi qurol bilan yopishtirib olaman. (Quyidagi rasmda mening 5V / GND / SCA / va SCL simlari guruhlangan.)

10 -qadam:

Rasm
Rasm

Qo'llanma sifatida quyidagi simlar sxemasidan foydalanib, qurilmani simga ulang.

7 segmentli displey D -> SDA C -> SCL + -> 5v GND -> GND IO -> 5v Digole Display GND -> GND DATA -> SDA CLK -> SCL VCC -> 3V DHT11 Humidistat VCC -> 5V GND - > GND DATA -> GPIO 16 / PIN 36

11 -qadam: Barcha qismlarni bosma sumkaning ichiga ulang

Chop etilgan qutining ichidagi barcha qismlarni ulang
Chop etilgan qutining ichidagi barcha qismlarni ulang

12 -qadam: Barcha qismlarni bosma sumka ichiga ulang

Chop etilgan qutining ichidagi barcha qismlarni ulang
Chop etilgan qutining ichidagi barcha qismlarni ulang

13 -qadam: Qurilishni tugating

Qurilishni tugating
Qurilishni tugating

Qurilmani quvvatlantirish uchun namlagichni orqa panelga yopishtiring va boshqa orqa panel teshigidan USB kabelini o'tkazing. Ta'mirlash uchun demontaj qilish kerak bo'lsa, orqa qismini faqat 2 vint bilan mahkamlang.

14 -qadam: Ishga tushirish skriptlarini o'rnating

Settings.py konfiguratsiya faylida ilovaning to'g'ri ishlashini sozlang. Settings.py faylini toping va joriy sozlamalaringizga moslang.

Mahalliy ob -havo ma'lumoti uchun # prognoz.io API kalitiweatherAPIURL = 'https://api.forecast.io/forecast/'weatherAPIKey =' FOREXAST. IO uchun API kalitingiz '

# masofaviy harorat/namlik loggerdeviceLoggerAPI = 'mydevicelogger.com' ni ishga tushirish uchun ixtiyoriy emas.

Uyingizni joylashuvining kengligi/uzunligini bilish uchun google -dan qidiring

$ crontab -e

Quyidagi qatorlarni qo'shing:

@reboot nohup python /home/pi/EnvironmentClock/clock.py>/dev/null 2> & 1

@reboot nohup python /home/pi/EnvironmentClock/display.py>/dev/null 2> & 1

Qayta yuklashda displey ishlay boshlaganiga ishonch hosil qiling

$ sudo reboot OPTIONAL: API skriptiga har 10 daqiqada Temp Logger

$ crontab -e quyidagi qatorlarni qo'shing:

*/10 * * * * python /home/pi/EnvironmentClock/temp-check.py

Ixtiyoriy: displeyda ko'rsatish uchun ob -havo rasmlarini yaratish

O'zingizning 128x128 faylingizni quyidagi URL manziliga yuklang:

www.digole.com/tools/PicturetoC_Hex_convert…

Yuklash uchun rasm faylini tanlang, ekranga kerakli o'lchamni qo'shing (Kenglik/Balandlik)

Ochilgan menyuda "OLED/LCD rangli 256 rang (1 bayt/piksel)" -ni tanlang.

Olti burchakli chiqishni oling.

Olti burchakli chiqishni display/ build/ header (.h) fayliga qo'shing, qolganlarini sintaksis uchun qo'llanma sifatida ishlating.

Yangi faylni digole.c fayliga qo'shing #include myimage.h

Rasm fayliga yangi buyruq qatori kancasini qo'shing. Eslatma: Quyidagi buyruq sizning rasmingizni 10 piksel ustidan 10 piksel pastda chizish. Siz uni turli xil X, Y koordinatalariga o'zgartirishingiz mumkin, shuningdek, 128, 128 qiymatlarini yangi tasviringiz qanchalik katta bo'lsa, o'zgartirishingiz mumkin.

} if if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere sizning (.h) faylda aniqlangan}

Quyidagi buyruq yordamida yangi rasmni ko'rsatish uchun quyida qayta tuzing (xatolarga e'tibor bermang).

$./digole myimage Qayta qurish [Qo'shilgan] Digole displey drayveri sizning ixtiyoriy o'zgartirishlaringiz uchun

$ CD ko'rsatish/qurish $ gcc digole.c $ mv a.out../../digole $ chmod +x../../digole

Tavsiya: