Sadržaj:
- Korak 1: Bljeskanje RaspberriPi tvrdog diska / instaliranje potrebnog softvera (pomoću Ubuntu Linuxa)
- Korak 2: Klonirajte projekt / instalirajte upravljačke programe za softver
- Korak 3: Potrebne zalihe
- Korak 4: Povežite uređaj s žicom
- Korak 5: Izgradite uređaj
- Korak 6: Izgradite uređaj (nastavak …)
- Korak 7: Konfigurirajte aplikaciju za ispravno pokretanje u datoteci Settings.py Config
- Korak 8: Postavljanje planiranih skripti
- Korak 9: NEOBVEZNO: Stvaranje vlastitih vremenskih slika za iscrtavanje na zaslonu
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
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
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
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
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 …)
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