Mündəricat:
- Addım 1: Tələblər
- Addım 2: Lehimləmə / Kablolama
- Addım 3: Raspberry Pi Quraşdırması
- Addım 4: Verilənlər bazasının qurulması
- Addım 5: Kod
- Addım 6: Bağlayın
Video: WeatherCar: 6 addım
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-10 13:46
WeatherCar, faydalı məlumat toplayarkən idarə edə biləcək kiçik bir ev istehsalı layihədir!
Bu layihəni Howort of Kortrijkdəki ilk ilim üçün final olaraq etdim. Bu layihənin hələ yaxşı bir nəticəsi yoxdur, amma bu sənəd tam çərçivəni yaratmadan bu avtomobilin bütün daxili hissələrini əhatə edir.
Addım 1: Tələblər
Bu layihə üçün bütün bu komponentlərə ehtiyacınız olacaq:
- Moruq PI
- 2 x motor (12v)
- Servo
- DHT11
- BMP280
- GY-NEO6MV2 GPS modulu
- 4 x NPN Transistorlar
- 2 x Rezistorlar (1k və 2k)
- Motor sürücüsü
- 2 x 6v batareya dəsti
- Prototip lövhəsi
- Aşağı salınan gərginlik tənzimləyicisi
- İzolyasiya edilmiş mis tel
- Düz kabel
- Köhnə Micro-USB kabeli
- Kontrplak
Addım 2: Lehimləmə / Kablolama
İlk addım üçün bütün telləri birləşdirməyə başlayacağıq. (PS. Hər şeyi lehimləməzdən əvvəl test üçün çörək taxtasından istifadə edə bilərsiniz)
Motordriverim üçün doğru hissəni tapa bilməsəm də, hər şeyi necə bağladığımı göstərən bir sxem təqdim etdim. Motor sürücüm üçün motor sürücüsünü idarə etmək üçün 3.3v siqnalımı 12v siqnalına çevirmək üçün 4 NPN tranzistorundan istifadə etdim. İstifadə etdiyim yalnız 1 gərginliyi dəstəklədiyi üçün (motorlarım 12v olduğu üçün 12v).
Addım 3: Raspberry Pi Quraşdırması
Onsuz da bir quruluşunuz yoxdursa, əvvəlcə bunu etməlisiniz, əks halda bu addımda son kod parçasından tələb olunan proqramlarınız varsa bu addımı atlaya bilərsiniz.
Əvvəlcə burada tapa biləcəyiniz Raspbian masaüstü versiyasını yükləməlisiniz:
Yüklədikdən sonra şəkil faylını moruq Pi -dən SD karta qoymaq üçün Etcher və ya WinDiskImager istifadə etməlisiniz. (Bu bir müddət çəkə bilər).
Proqram tamamlandıqda, fayl araşdırıcısını açın və "önyükleme" adlı sürücünü açın. Burada "cmdline.txt" mətn faylı tapa bilərsiniz. Bunu açın və faylın sonuna ip = 169.254.10.1 əlavə edin. Dosyaya heç bir giriş əlavə etməmək üçün diqqətli olun, çünki bu problemə səbəb ola bilər.
İndi PI -nin standart bir ip ünvanı olduğu üçün SSH -nin ona qoşulmasını təmin etməliyik. Bunu heç bir uzantısı olmayan "SSH" adlı yeni bir fayl düzəltməklə edə bilərsiniz, bu, moruq pi -yə ilk açılışda ssh -i aktivləşdirməyi söyləyəcək.
Bununla indi bir Ethernet kabeli istifadə edərək moruq pi -yə qoşula bilərik. Kabeli kompüterinizlə moruq PI arasına bağlayın. İndi bir SSH müştərisinə ehtiyacımız olacaq. Bunun üçün macundan istifadə etdim (https://www.putty.org/). Macunu açın və ana adı olaraq 169.254.10.1 qoyun. Qoşula bilməyiniz bir müddət çəkə bilər.
Bağlandıqdan sonra bu məlumatlarla daxil olun:
Giriş: piPassword: moruq
İndi bunu etmək üçün İnternet bağlantısı qura bilərik. Bu əmri yerinə yetirin və SSID və Şəbəkə şifrəsini wifi adınız və şifrənizlə əvəz edin.
echo "parol" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant/wpa_supplicant.conf
wpa_cli -i wlan0 yenidən konfiqurasiya edin
İndi internet bağlantımız olduğu üçün aşağıdakı əmrlərdən istifadə edərək python və digər lazımi proqramları quraşdıra bilərik
sudo apt yeniləmə
sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
python3 -m pip install -pip setuptools təkərini virtualenv təkmilləşdirin
mkdir weathercar && cd weathercar
python3 -m venv --sistem-sayt-paketləri env
mənbə env/bin/activate
python -m pip mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib flask-socketio qurun
Addım 4: Verilənlər bazasının qurulması
İndi moruq pi olduğunuzda bütün lazımi proqramlar var, yenə də verilənlər bazasını konfiqurasiya etməliyik. Əvvəlcə Mysql -ı işə salmaqla nə edə bilərik
sudo mariadb
daha sonra
KULLANICI 'project1-admin'@'localhost' '' adminpassword 'tərəfindən TANIŞDIR; İSTİFADƏÇİ yarat' project1-web '@' localhost '' webpassword 'TANIŞDIR; İstifadəçi' project1-sensor '@' localhost 'IDENTIFIED BY' sensor parol 'yaradın;
MƏLUMAT BAZASI YARADIN weathercar_db;
Hava nəqliyyat vasitələrində bütün üstünlükləri ver.* QRANT SEÇİMİ İLƏ 'project1-admin'@'localhost' a; GRANT SELECT, INSERT, UPDATE, Project1 SİLİN.* 'Project1-web'@'localhost' a; GRANT SELECT, INSERT, UPDATE, Project1 ON DELETE.* TO 'project1-sensor'@'localhost' TO; FLUSH PRIVILEGES;
Addım 5: Kod
Bu addımda, lazım olan kodu moruq pi -yə klonlayacağıq. Bunu etməklə bunu edəcəyik:
Hər şeydən əvvəl "cd" yazaraq ev kataloqunuzda olduğunuzdan əmin olun.
cd
İndi depodan istifadə edərək klonlaşdıracağıq
git klonu
İndi verilənlər bazası parametrlərini idxal edə bilərik:
sudo mariadb weathercar_db </weathercar/sql/weathercar_db_historiek.sql sudo mariadb weathercar_db </weathercar/sql/weathercar_db_sensoren.sql
Verilənlər bazasını bitirdikdən sonra xidmətimizi qura bilərik
sudo cp weathercar/conf/project1-*. service/etc/systemd/system/sudo systemctl daemon-reloadsudo systemctl start project1-*sudo systemctl imkan layihə1-*
Addım 6: Bağlayın
Demək olar ki, oradayıq, bir addım daha. Və WiFi -nin bizə verdiyi ip ünvanını alırıq.
Qoyaraq bunu edəcəyik
ip əlavə edin
bir dəstə pislik görünəcək, ancaq "wlan0" və sonra bir neçə sətir "inet 192.168.x.x" tapmalısınız.
Bu IP ünvanını brauzerinizin içinə qoyun və gedin. Veb sayta bağlısınız.