Përmbajtje:
- Hapi 1: Kërkesat
- Hapi 2: Saldim / instalime elektrike
- Hapi 3: Konfigurimi i Raspberry Pi
- Hapi 4: Konfigurimi i bazës së të dhënave
- Hapi 5: Kodi
- Hapi 6: Lidhu
Video: WeatherCar: 6 hapa
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-10 13:48
WeatherCar, një projekt i vogël i bërë nga shtëpia që mund të drejtojë ndërsa mbledh edhe të dhëna të dobishme!
Unë e bëra këtë projekt si një finale për vitin e parë në Howest të Kortrijk. Ky projekt nuk ka ende një përfundim të mirë, por ky dokument flet për të gjitha pjesët e brendshme të kësaj makine, pa bërë kornizën e plotë.
Hapi 1: Kërkesat
Ju do të keni nevojë për të gjithë këta përbërës për këtë projekt:
- Mjedra PI
- 2 x motor (12v)
- Servo
- DHT11
- BMP280
- Moduli GPS GY-NEO6MV2
- 4 x Transistorë NPN
- 2 x Rezistorë (1k dhe 2k)
- Shoferi i motorit
- Paketa baterie 2 x 6v
- Tabela e prototipimit
- Rregullatori i uljes së tensionit
- Teli bakri i izoluar
- Kabllo e sheshtë
- Kabllo e vjetër Micro-USB
- Kompensatë
Hapi 2: Saldim / instalime elektrike
Për hapin e parë ne do të shkojmë drejtpërdrejt në lidhjen e të gjitha telave. (PS. Ju mund të përdorni një tabelë buke për testim para se të bashkoni gjithçka)
Unë ofrova një skemë që ju tregon se si lidhja gjithçka, megjithëse nuk mund të gjeja pjesën e duhur për motorin tim. Për motordriverin tim kam përdorur 4 transistorët NPN për të kthyer sinjalin tim 3.3v në një sinjal 12v për të kontrolluar drejtuesin e motorit. Kjo sepse ai që kam përdorur mbështet vetëm 1 tension (12v sepse motorët e mi janë 12v).
Hapi 3: Konfigurimi i Raspberry Pi
Nëse nuk keni një konfigurim tashmë, do t'ju duhet ta bëni këtë së pari, përndryshe mund ta kaloni këtë hap nëse keni programet e kërkuara nga pjesa e fundit e kodit në këtë hap.
Së pari ju do të duhet të shkarkoni versionin desktop të Raspbian, i cili mund të gjendet këtu:
Pasi ta keni shkarkuar këtë do të duhet të përdorni Etcher ose WinDiskImager për të vendosur skedarin e imazhit në kartën SD nga mjedra Pi juaj. (Kjo mund të zgjasë pak).
Kur programi të ketë mbaruar, hapni skedarin explorer dhe hapeni diskun e quajtur "boot". Këtu do të gjeni një skedar teksti "cmdline.txt". Hapeni këtë dhe shtoni ip = 169.254.10.1 në fund të skedarit. Kini kujdes të mos shtoni ndonjë hyrje në skedar pasi kjo mund të çojë në telashe.
Tani që PI ka një adresë IP të paracaktuar, do të na duhet akoma të aktivizojmë SSH që të jetë në gjendje të lidhet me të. Ju mund ta bëni këtë duke bërë një skedar të ri të quajtur "SSH" pa asnjë shtrirje, kjo do t'i thotë mjedrës pi të aktivizojë ssh në nisjen e parë.
Me këtë tani mund të lidhemi me mjedrën pi duke përdorur një kabllo ethernet. Lidhni kabllon midis kompjuterit tuaj dhe PI të mjedrës. Tani do të na duhet një klient SSH. Për këtë kam përdorur stuko (https://www.putty.org/). Hapni stuko dhe vendosni 169.254.10.1 si emër hosti. Mund të duhet pak kohë para se të jeni në gjendje të lidheni.
Pasi të jeni lidhur, regjistrohuni me këto kredenciale:
Login: piPassword: mjedër
Tani ne jemi në gjendje të krijojmë një lidhje interneti, për ta bërë këtë. Ekzekutoni këtë komandë dhe zëvendësoni fjalëkalimin SSID dhe Rrjetin me emrin dhe fjalëkalimin e wifi -t tuaj.
jehonë "fjalëkalimi" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant/wpa_supplicant.conf
wpa_cli -i wlan0 rikonfiguro
Tani që kemi një lidhje interneti mund të instalojmë python dhe programe të tjera të nevojshme duke përdorur komandat e mëposhtme
sudo apt përditësim
sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
python3 -m pip install -përditëso pip setuptools wheel virtualenv
mkdir weathercar && cd weathercar
python3 -m venv --system-site-paketat env
burimi env/bin/aktivizo
python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib flask-socketio
Hapi 4: Konfigurimi i bazës së të dhënave
Tani që ju jeni mjedër pi ka të gjitha programet e nevojshme, ne ende do të kemi nevojë të konfigurojmë bazën e të dhënave. Të cilën mund ta bëjmë duke filluar së pari Mysql
sudo mariadb
dhe pastaj
CREATE USER 'project1-admin'@'localhost' IDENTIFIKUAR NGA 'adminpassword'; CREATE USER 'project1-web'@'localhost' IDENTIFIED BY 'webpassword'; CREATE USER 'project1-sensor'@'localhost' IDENTIFIED BY 'sensorpassword';
KRIJO BAZ T DHATNAVE weathercar_db;
DHANTNI T ALL GJITHA PRIVILEGJET N weather motin e motit.* Në 'project1-admin'@'localhost' ME GRANT OPTION; GRANT SELECT, INSERT, PPRDITSIM, FSHIJ N ON projektin 1.* TO 'project1-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, FSHIJ P ONR projektin 1.. P TOR 'projekt1-sensor'@'localhost';
Hapi 5: Kodi
Në këtë hap ne do të klonojmë kodin e nevojshëm në pi tuaj të mjedrës. Këtë do ta bëjmë duke bërë këtë:
Para së gjithash sigurohuni që jeni në drejtorinë tuaj të shtëpisë duke futur "cd"
cd
tani ne do të klonojmë depon duke përdorur
git klon
Tani mund të importojmë cilësimet e bazës së të dhënave duke përdorur:
sudo mariadb weathercar_db </weathercar/sql/weathercar_db_historiek.sql sudo mariadb weathercar_db </weathercar/sql/weathercar_db_sensoren.sql
Tani që kemi përfunduar bazën e të dhënave, mund të vazhdojmë dhe të konfigurojmë shërbimin tonë
sudo cp weathercar/conf/project1-*. service/etc/systemd/system/sudo systemctl daemon-reloadsudo systemctl fillimi i projektit1-*sudo systemctl aktivizo projektin1-*
Hapi 6: Lidhu
Ne jemi pothuajse atje, vetëm një hap më shumë. Dhe kjo është marrja e adresës IP që na dha wifi.
Ne do ta bëjmë këtë duke vënë
ip addr
do të shfaqen një mori mut, por ju duhet të jeni në gjendje të gjeni "wlan0" dhe pastaj disa rreshta më tej "inet 192.168.x.x"
vendosni atë adresë IP brenda shfletuesit tuaj dhe shkoni jashtë. Ju jeni lidhur me faqen e internetit.