Daftar Isi:
- Langkah 1: Persyaratan
- Langkah 2: Solder / Pengkabelan
- Langkah 3: Pengaturan Raspberry Pi
- Langkah 4: Pengaturan Basis Data
- Langkah 5: Kode
- Langkah 6: Hubungkan
Video: WeatherCar: 6 Langkah
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-10 13:47
WeatherCar, proyek kecil buatan rumah yang dapat mengemudi sambil mengumpulkan data yang berguna!
Saya membuat proyek ini sebagai final untuk tahun pertama saya di Howest of Kortrijk. Proyek ini belum selesai dengan baik tetapi dokumen ini membahas semua bagian dalam mobil ini, tanpa membuat bingkai penuh.
Langkah 1: Persyaratan
Anda akan membutuhkan semua komponen ini untuk proyek ini:
- PI raspberry
- 2 x motor (12v)
- Servo
- DHT11
- BMP280
- Modul GPS GY-NEO6MV2
- 4 x Transistor NPN
- 2 x Resistor (1k dan 2k)
- Pengemudi motor
- 2 x 6v baterai
- Papan prototipe
- Pengatur tegangan step-down
- Kawat tembaga terisolasi
- Kabel datar
- Kabel Micro-USB lama
- Kayu lapis
Langkah 2: Solder / Pengkabelan
Untuk langkah pertama kita akan langsung menghubungkan semua kabel. (PS. Anda dapat menggunakan papan tempat memotong roti untuk pengujian sebelum menyolder semuanya)
Saya memberikan skema yang menunjukkan kepada Anda bagaimana saya menghubungkan semuanya, meskipun saya tidak dapat menemukan bagian yang tepat untuk driver motor saya. Untuk driver motor saya, saya menggunakan 4 transistor NPN untuk mengubah sinyal 3.3v saya menjadi sinyal 12v untuk mengontrol driver motor. Ini karena yang saya gunakan hanya mendukung 1 tegangan (12v karena motor saya 12v).
Langkah 3: Pengaturan Raspberry Pi
Jika Anda belum memiliki penyiapan, Anda harus melakukannya terlebih dahulu, jika tidak, Anda dapat melewati langkah ini jika Anda memiliki program yang diperlukan dari cuplikan kode terakhir di langkah ini.
Pertama-tama Anda harus mengunduh versi desktop Raspbian, yang dapat ditemukan di sini:
Setelah Anda mengunduh ini, Anda harus menggunakan Etcher atau WinDiskImager untuk meletakkan file gambar ke kartu SD dari raspberry Pi Anda. (Ini bisa memakan waktu cukup lama).
Ketika program selesai, buka file explorer dan buka drive yang disebut "boot". Di sini Anda akan menemukan file teks "cmdline.txt". Buka ini dan tambahkan ip=169.254.10.1 ke akhir file. Berhati-hatilah untuk tidak menambahkan entri apa pun ke file karena ini dapat menyebabkan masalah.
Sekarang PI memiliki alamat ip default, kita masih perlu mengaktifkan SSH untuk dapat terhubung ke sana. Anda dapat melakukan ini dengan membuat file baru bernama "SSH" tanpa ekstensi apa pun, ini akan memberi tahu raspberry pi untuk mengaktifkan ssh pada boot pertama.
Dengan ini kita sekarang dapat terhubung ke raspberry pi menggunakan kabel ethernet. Hubungkan kabel antara pc Anda dan raspberry PI. Sekarang kita membutuhkan klien SSH. Untuk ini saya menggunakan dempul (https://www.putty.org/). Buka dempul dan masukkan 169.254.10.1 sebagai nama host. Mungkin perlu beberapa saat sebelum Anda dapat terhubung.
Setelah Anda terhubung, masuk dengan kredensial ini:
Masuk: piKata sandi: raspberry
Sekarang kita dapat mengatur koneksi internet, untuk melakukan ini. Jalankan perintah ini dan ganti SSID dan kata sandi Jaringan dengan nama dan kata sandi wifi Anda.
gema "kata sandi" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant/wpa_supplicant.conf
wpa_cli -i wlan0 mengkonfigurasi ulang
Sekarang kita memiliki koneksi internet, kita dapat menginstal python dan program lain yang diperlukan menggunakan perintah berikut:
sudo apt update
sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
python3 -m pip install --upgrade pip setuptools wheel virtualenv
mkdir weathercar && cd weathercar
python3 -m venv --system-site-packages env
sumber env/bin/aktifkan
python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib flask-socketio
Langkah 4: Pengaturan Basis Data
Sekarang raspberry pi Anda memiliki semua program yang diperlukan, kita masih perlu mengkonfigurasi database. Yang dapat kita lakukan dengan terlebih dahulu memulai Mysql
sudo mariadb
lalu
BUAT PENGGUNA 'project1-admin'@'localhost' DIIDENTIFIKASI DENGAN 'adminpassword';BUAT PENGGUNA 'project1-web'@'localhost' DIIDENTIFIKASI DENGAN 'webpassword';BUAT PENGGUNA 'project1-sensor'@'localhost' DIIDENTIFIKASI OLEH 'sensorpassword';
BUAT DATABASE weathercar_db;
HIBAH SEMUA HAK ISTIMEWA DI weathercar.* ke 'project1-admin'@'localhost' DENGAN GRANT OPTION;GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-web'@'localhost';GRANT SELECT, INSERT, UPDATE, HAPUS PADA project1.* KE 'project1-sensor'@'localhost';HAK ISTIMEWA;
Langkah 5: Kode
Pada langkah ini kita akan mengkloning kode yang dibutuhkan ke raspberry pi Anda. Ini akan kita lakukan dengan melakukan ini:
Pertama-tama pastikan Anda berada di direktori home Anda dengan memasukkan "cd"
CD
sekarang kita akan mengkloning repositori menggunakan
git clone
Sekarang kita dapat mengimpor pengaturan database menggunakan:
sudo mariadb weathercar_db < /weathercar/sql/weathercar_db_historiek.sql sudo mariadb weathercar_db < /weathercar/sql/weathercar_db_sensoren.sql
Sekarang setelah kami menyelesaikan database, kami dapat melanjutkan dan mengatur layanan kami
sudo cp weathercar/conf/project1-*.service /etc/systemd/system/sudo systemctl daemon-reloadsudo systemctl start project1-*sudo systemctl enable project1-*
Langkah 6: Hubungkan
Kita hampir sampai, tinggal satu langkah lagi. Dan itu mendapatkan alamat ip yang diberikan wifi kepada kami.
Kami akan melakukan ini dengan menempatkan
alamat IP
sekelompok omong kosong akan muncul, tetapi Anda harus dapat menemukan "wlan0" dan kemudian beberapa baris lebih lanjut "inet 192.168.x.x"
masukkan alamat ip itu ke dalam browser Anda dan pergilah. Anda terhubung ke situs web.