Sadržaj:

AtticTemp - Zapisnik temperature / klime: 10 koraka (sa slikama)
AtticTemp - Zapisnik temperature / klime: 10 koraka (sa slikama)

Video: AtticTemp - Zapisnik temperature / klime: 10 koraka (sa slikama)

Video: AtticTemp - Zapisnik temperature / klime: 10 koraka (sa slikama)
Video: Красивая история о настоящей любви! Мелодрама НЕЛЮБОВЬ (Домашний). 2024, Studeni
Anonim
AtticTemp - Zapisnik temperature / klime
AtticTemp - Zapisnik temperature / klime

Mjerač temperature i klima uređaj za visoku toleranciju za vaše potkrovlje ili druge vanjske građevine

Korak 1: Bljeskanje RaspberriPi tvrdog diska / instaliranje potrebnog softvera (pomoću Ubuntu Linuxa)

Preuzmite "RASPBIAN JESSIE LITE"

Izradite svoj novi tvrdi disk za DashboardPI

Umetnite microSD u računalo putem USB adaptera i stvorite sliku diska pomoću naredbe dd

Pronađite umetnutu microSD karticu pomoću naredbe df -h, isključite je i stvorite sliku diska pomoću naredbe za kopiranje diska dd

$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/mediji/XXX/1234-5678

$ umount /dev /sdb1

Oprez: provjerite je li naredba potpuno točna, ovom naredbom možete oštetiti druge diskove

if = lokacija slikovne datoteke RASPBIAN JESSIE LITE = mjesto vaše microSD kartice

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (napomena: u ovom slučaju to je/dev/sdb,/dev/sdb1 je bila postojeća tvornička particija na microSD)

Postavljanje vašeg RaspberriPi -ja

Umetnite svoju novu microSD karticu u raspberrypi i uključite je s monitorom spojenim na HDMI priključak

Prijaviti se

korisnik: pi pass: malina

Iz sigurnosnih razloga promijenite lozinku računa

sudo passwd pi

Omogućite RaspberriPi napredne opcije

sudo raspi-config

Odaberite: 1 Proširite datotečni sustav

9 Napredne opcije

A2 naziv hosta promijenite u "AtticTemp"

A4 SSH Omogući SSH poslužitelj

A7 I2C Omogući i2c sučelje

Omogućite englesku/američku tipkovnicu

sudo nano/etc/default/keyboard

Promijenite sljedeći redak: XKBLAYOUT = "mi"

Ponovno pokrenite PI za promjene izgleda tipkovnice / promjenu veličine datotečnog sustava kako bi stupile na snagu

$ sudo shutdown -r sada

Automatsko povezivanje na WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Dodajte sljedeće retke kako bi se vaš raspberrypi automatski povezao s kućnom WiFi mrežom (ako je vaša bežična mreža nazvana "linksys", na primjer, u sljedećem primjeru)

network = {ssid = "linksys" psk = "BEŽIČNA LOZINKA OVDJE"} Ponovo pokrenite PI za povezivanje na WiFi mrežu

$ sudo shutdown -r sada

Sada kada je vaš PI konačno na lokalnoj mreži, možete se daljinski prijaviti na njega putem SSH -a. Ali prvo morate dobiti IP adresu koju trenutno ima.

$ ifconfig Potražite "inet addr: 192.168. XXX. XXX" u ispisu sljedeće naredbe za IP adresu vašeg PI -ja

Idite na drugi stroj i prijavite se na svoj raspberrypi putem ssh -a

$ ssh [email protected]. XXX. XXX

Počnite instalirati potrebne pakete

$ sudo apt-get ažuriranje

$ sudo apt-get nadogradnja

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

Ažurirajte postavke lokalne vremenske zone

$ sudo dpkg-ponovno konfigurirajte tzdata

odaberite svoju vremensku zonu pomoću sučelja

Postavite jednostavnu naredbu l direktorija [izborno]

$ vi ~/.bashrc

dodajte sljedeći redak:

$ alias l = 'ls -lh'

$ izvor ~/.bashrc

Popravite isticanje zadane sintakse VIM -a [nije obavezno]

$ sudo vi/etc/vim/vimrc

raskomentirajte sljedeći redak:

sintaksa uključena

Korak 2: Klonirajte projekt / instalirajte upravljačke programe za softver

Kloniraj spremište projekata

$ cd ~

klon $ git

DHT22 Instaliraj

$ cd ~

klon $ git

$ cd Adafruit_Python_DHT/

$ sudo python setup.py install

$ sudo python ez_setup.py

$ cd primjeri/

$ vi simpletest.py

Promijenite sljedeći redak:

senzor = Adafruit_DHT. DHT22

Komentirajte liniju

pin = 'P8_11'

Dekomentirajte liniju i promijenite pin broj na 16

pin = 18

Pokrenite test

python simpletest.py

Trebali biste vidjeti metričko očitanje temperature i vlažnosti prikazano u naredbenom retku.

Instalirajte SSD1306

Raspakirajte upravljačke programe/SSD1306.zip u mapu projekta

Instalirajte upravljački program

$ cd ssd1306/ $ sudo python setup.py install

Potvrdite registre uređaja, obično je / 0x3c na sabirnici i2c

$ sudo i2cdetect -y 1

0 1 2 3 4 5 6 7 8 9 abcdef 00: - - - - - - - - - - - - - - 10: - - - - - - - - - - - - - - - - - - 20: - - - - - - - - - - - - - - - - - - 30: - - - - - - - - - - - - 3c - - - 40: - - - - -------------50:-------------- ----60:-----------------70:--- ----- Pokrenite demo kako biste provjerili radi li vaš zaslon

$ cd examples/ $ python demo.py

Korak 3: Potrebne zalihe

Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe

RaspberriPi nula

Senzor temperature i vlažnosti DHT22

0,96 I2C IIC SPI serijski 12864 OLED LCD LED bijeli modul zaslona

2.4 400x240 16: 9 Serijski: UART/I2C/SPI TFT Zaslon osjetljiv na dodir

Korak 4: Povežite uređaj s žicom

Ožičite uređaj
Ožičite uređaj
Ožičite uređaj
Ožičite uređaj

Zaslon SSD1306

GND -> GND

PODACI -> SDA

CLK -> SCL

VCC -> 3V

Digole zaslon

GND -> GND

PODACI -> SDA

CLK -> SCL

VCC -> 3V

DHT22 Ovlaživač zraka

VCC -> 5V

GND -> GND

PODACI -> GPIO 18 / PIN 12

Korak 5: Izgradite uređaj

Napravite uređaj
Napravite uređaj
Napravite uređaj
Napravite uređaj

Izrežite pleksiglas tako da stane na prednju stranu uređaja ispod 3D ispisanog okvira

Montirajte staklo vijcima kroz 3D ispisani okvir

Korak 6: Izgradite uređaj (nastavak …)

Napravite uređaj (nastavak …)
Napravite uređaj (nastavak …)
Napravite uređaj (nastavak …)
Napravite uređaj (nastavak …)
Napravite uređaj (nastavak …)
Napravite uređaj (nastavak …)

Komponente vrućeg ljepila na prednjoj ploči

Unutrašnja žičana jedinica

Montirajte stražnju stranu i trebala bi biti spremna za polazak

Korak 7: Konfigurirajte aplikaciju za ispravno pokretanje u datoteci Settings.py Config

Pronađite datoteku settings.py i prilagodite se trenutnim postavkama

# weather.io API ključ za lokalne vremenske informacije

weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'VAŠ API KLJUČ ZA PROGNOZU. IO'

# izborno za pokretanje daljinskog zapisnika temp./vlažnosti

deviceLoggerAPI = 'mydevicelogger.com'

# pretražite google da biste dobili zemljopisnu širinu/dužinu za svoju kućnu lokaciju

zemljopisna širina = 41,4552578

zemljopisna dužina = -72,1665444

Korak 8: Postavljanje planiranih skripti

$ crontab -e

Dodajte sljedeće retke: */7 * * * * python /home/pi/AtticTemp/displays.py

NEOBVEZNO: Temp Logger prema API skripti svakih 10 minuta

$ crontab -e

Dodajte sljedeće retke: */10 * * * * python /home/pi/EnvironmentClock/temp-check.py

Korak 9: NEOBVEZNO: Stvaranje vlastitih vremenskih slika za iscrtavanje na zaslonu

Prenesite vlastitu datoteku 128x128 na sljedeći URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Odaberite slikovnu datoteku za prijenos, dodajte željenu veličinu na zaslonu (širina/visina)

Odaberite "256 boja za OLED/LCD u boji (1 bajt/piksel)" u padajućem izborniku "Koristi se za"

Dobijte šesterokutni izlaz

Dodajte heksadecimalni izlaz u datoteku display/ build/ header (.h), a ostale koristite kao vodiče za sintaksu.

Uključite novu datoteku u datoteku digole.c #include myimage.h

Uključite novu udicu naredbenog retka u datoteku slike u. Napomena: naredba u nastavku kaže da nacrtajte svoju sliku na položaju 10 piksela preko 10 piksela prema dolje. Možete ga promijeniti u različite X, Y koordinate, također možete promijeniti vrijednosti 128, 128 u bilo koju veličinu vaše nove slike.

} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere je definirano u vašoj (.h) datoteci}

Sada obnovite (zanemarite pogreške) u nastavku kako bi se vaša nova slika iscrtala sa sljedećom naredbom.

$./digole moja slika

Ponovna izgradnja [Uključeno] Digole upravljačkog programa za vaše izborne izmjene

$ cd prikaz/izrada

$ gcc digole.c

$ mv a.out../../digole

$ chmod +x../../digole

Preporučeni: