Cuprins:
- Pasul 1: Gama de culori de la 0 la 100 * F
- Pasul 2: Hard disk-ul RaspberriPi intermitent / Instalarea software-ului necesar (folosind Ubuntu Linux)
- Pasul 3: consumabile necesare
- Pasul 4: Construirea WeatherJar
- Pasul 5: Construiește lumânarea
- Pasul 6: Crearea API-ului de temperatură
- Pasul 7: Configurați RPi Cronjob pentru ca Lumânarea să funcționeze
- Pasul 8: Finalizat
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Folosind această lumânare magică, puteți spune instantaneu temperatura și condițiile actuale
Pasul 1: Gama de culori de la 0 la 100 * F
Pasul 2: Hard disk-ul RaspberriPi intermitent / Instalarea software-ului necesar (folosind Ubuntu Linux)
Descărcați „RASPBIAN JESSIE LITE”
Creați noul dvs. hard disk pentru DashboardPI
Introduceți microSD-ul pe computerul dvs. prin adaptor USB și creați imaginea discului folosind comanda dd
Localizați cardul microSD introdus prin comanda df -h, demontați-l și creați imaginea discului cu comanda dd copy copy dd
$ df -h / dev / sdb1 7.4G 32K 7.4G 1% / media / XXX / 1234-5678
$ umount / dev / sdb1
Atenție: asigurați-vă că comanda este complet precisă, cu această comandă puteți deteriora alte discuri
if = locația fișierului imagine RASPBIAN JESSIE LITE a = locația cardului dvs. microSD
$ sudo dd bs = 4M if = / path / to / raspbian-jessie-lite.img of = / dev / sdb (notă: în acest caz, este / dev / sdb, / dev / sdb1 era o partiție fabrică existentă pe microSD)
Configurarea RaspberriPi
Introduceți noul card microSD în raspberrypi și porniți-l cu un monitor conectat la portul HDMI
Autentificare
utilizator: pi
trece: zmeură
Schimbați parola contului pentru securitate
sudo passwd pi
Activați RaspberriPi
Opțiuni avansate
sudo raspi-config
Alegeți: 1 Extindeți sistemul de fișiere
9 Opțiuni avansate
Numele gazdei A2 schimbați-l în „WeatherJar”
A4 SSH Activați serverul SSH
A7 I2C Activați interfața i2c
Activați tastatura engleză / SUA
sudo nano / etc / implicit / tastatură
Schimbați următoarea linie: XKBLAYOUT = "noi"
Reporniți PI pentru modificările aspectului tastaturii / redimensionarea sistemului de fișiere pentru a intra în vigoare
$ sudo shutdown -r acum
Conectare automată la WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Adăugați următoarele linii pentru ca raspberrypi-ul dvs. să se conecteze automat la WiFi-ul de acasă (dacă rețeaua fără fir este denumită „linksys”, de exemplu, în exemplul următor)
network = {ssid = "linksys" psk = "PAROLĂ WIRELESS AICI"}
Reporniți PI pentru a vă conecta la rețeaua WiFi
$ sudo shutdown -r acum
Acum că PI-ul dvs. se află în sfârșit în rețeaua locală, vă puteți conecta la acesta de la distanță prin SSH. Dar mai întâi trebuie să obțineți adresa IP pe care o are în prezent.
$ ifconfig Căutați "inet addr: 192.168. XXX. XXX" în următoarea ieșire a comenzii pentru adresa IP a PI-ului dvs.
Mergeți la o altă mașină și conectați-vă la raspberrypi prin ssh
$ ssh [email protected]. XXX. XXX
Începeți instalarea pachetelor necesare
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install memcached vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip python-memcache
** Actualizați setările pentru fusul orar local
$ sudo dpkg-reconfigure tzdata
selectați fusul orar utilizând interfața
Configurați comanda directorului simplu l [opțional]
vi ~ /.bashrc
adăugați următoarea linie:
alias l = 'ls -lh'
sursa ~ /.bashrc
Remediați evidențierea implicită a sintaxei VIM [opțional]
sudo vi / etc / vim / vimrc
decomentați următoarea linie:
sintaxă activată
Instalați driverele Python i2c
Instalați driverul NeoPixel după cum urmează
sudo apt-get install build-essential python-dev git scons swig
sudo pip3 install --upgrade setuptools
sudo pip3 instalează rpi_ws281x
cd rpi_ws281x
scons
cd python
sudo python setup.py instalare
exemple cd /
sudo python strandtest.py
Pasul 3: consumabile necesare
RaspberryPi Zero
USB WIFI (dacă nu un PiZero W)
Inel NeoPixel
Abajur înghețat
Pasul 4: Construirea WeatherJar
Lipiți cablurile pentru a conecta inelul NeoPixel la Pi, are nevoie de 5V, GND și pinul GPIO 18 conectat
* Notă: întrucât folosim un singur inel, care nu arată niciodată luminozitate completă / culori albe strălucitoare, ne putem baza pe sursa de alimentare a RPi în sine. În mod obișnuit, aceștia recomandă pixesl 5050 RGB ca aceștia să aibă propria sursă de alimentare.
Cablarea componentelor Conectați NeoPixel la 5v și GND pe RPi, conectați pinul „in” de pe inelul NeoPixel la pinul GPIO # 18
Imprimarea carcasei În dosarul 3D-Print / al acestui proiect, imprimați capacul și baza lumânării pentru a conține dispozitivul.
Pasul 5: Construiește lumânarea
Folosind un pistol de lipit fierbinte, lipiți pi zero în partea inferioară a bazei lumânării
Găuriți o gaură pentru a permite intrarea cablului USB de alimentare.
Am folosit o bandă simplă pentru a ține inelul NeoPixel de butonul lumânării, împingând firele pentru a se asigura că lumina este blocată de orice umbră ciudată din interior.
Pasul 6: Crearea API-ului de temperatură
API Python Flash pentru afișarea temperaturilor ca instrucțiuni de instalare cu gradiente de culoare
Instalare Clonați folderul serverului web al proiectului local pe serverul dvs. web din acest proiect [/var / www]
Creați configurația Apache pentru a indica acest proiect (Python Flask API)
Pachete necesare pentru Python Flash pe Apache
$> sudo apt-get install libapache2-mod-wsgi python-dev python-pip python-pil
$> sudo a2enmod wsgi
$> sudo service apache2 reporniți
$> pip instalare balon
mytempuratureapi.com/neopixel?temperature=7…
Pasul 7: Configurați RPi Cronjob pentru ca Lumânarea să funcționeze
Setați utilizatorul pi crontab
Introduceți următoarea linie pentru crontab minut cu minut
$ crontab -e
* / 1 * * * * python /home/pi/WeatherJar/weather.py
Setați utilizatorul rădăcină crontab (această bibliotecă necesită acces la rădăcină) Setați „la repornire” pentru a rula pentru totdeauna scriptul python candle
$ sudo su
$ crontab -e
@reboot python /home/pi/WeatherJar/candle.py
Pasul 8: Finalizat
Asigurați-vă că plasați această nouă adresă URL pe care ați generat-o în setările proiectului, astfel încât să puteți face acum ca vasul meteorologic să răspundă la temperaturile dvs. exterioare actuale.