🕑 Rejestr zmian 🎁 Podziękowania
- DS18B20 (temperatura)
- DHT11 (wilgotność)
- Pomiar bieżącej temperatury i wilgotności
- Zapis temperatury i wilgotności do bazy danych
- Prosta strona z bieżącymi odczytami
-
Podłącz czujniki DS18B20 i DHT11 do Raspberry Pi.
-
Sklonuj repozytorium
git clone https://github.com/bartekl1/rpi-thermometer cd rpi-thermometer
-
Utwórz bazę danych i zaimportuj jej strukturę z pliku
thermometer.sql
. -
Utwórz plik konfiguracyjny o nazwie
configs.json
z poniższą zawartością.{ "host": "0.0.0.0", "mysql_user": "<mysql_user>", "mysql_password": "<mysql_password>", "mysql_database": "<mysql_database>" }
Zamień
<mysql_user>
,<mysql_password>
i<mysql_database>
na prawidłowe dane logowania. -
Zainstaluj zależności PIP.
pip install -r requirements.txt
-
Utwórz plik
/etc/systemd/system/thermometer.service
z poniższą zawartością.[Unit] Description=Thermometer After=network.target [Service] WorkingDirectory=<PATH> ExecStart=/usr/bin/python3 <PATH>/app.py Restart=always User=<USERNAME> [Install] WantedBy=multi-user.target
Zamień
<PATH>
na ścieżkę do sklonowanego repozytorium i<USERNAME>
na systemową nazwę użytkownika. -
Uruchom i włącz automatyczne uruchamianie utworzonej usługi.
sudo systemctl start thermometer sudo systemctl enable thermometer
-
Dodaj poniższą linię do crontab (edytuj za pomocą polecenia
crontab -e
).*/10 * * * * cd "<PATH>" && python3 save_to_database.py
Zamień
<PATH>
na ścieżkę do sklonowanego repozytorium. Możesz zmienić wyrażenie cron, aby zmienić częstotliwość.