Isi kandungan:
- Langkah 1: Pendawaian Perkakasan ke Pi
- Langkah 2: Pengekodan Program Utama
- Langkah 3: Membuat Pangkalan Data
- Langkah 4: Pengekodan Perkakasan
Video: Beargardian: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Hai kawan-kawan untuk sekolah saya memerlukan idea untuk projek. Oleh itu, saya berfikir, ia mesti menjadi projek dengan raspberry pi dan ia bersifat tempatan. Tiba-tiba saya mempunyai idea hebat dan tidak bertanya bagaimana saya mendapat idea itu tetapi saya memikirkan peningkatan untuk monitor bayi. Fikirkan sebentar mengenai idea itu, kebanyakan monitor bayi hanya mempunyai fungsi untuk mendengar bilik bayi.
Keistimewaannya
- Pertunjukan cahaya sedikit dengan warna yang boleh disesuaikan
- Kamera yang menunjukkan gambar langsung kepada anda
- Pembesar suara untuk memainkan muzik
- Sensor untuk menangkap bayi yang bergerak
- Semua itu dipaparkan di laman web
Maklumat ringkas
Mari kita jelaskan ini dalam versi pendek. Oleh itu, kami memerlukan laman web dan untuk projek ini saya menggunakan Flask, kami juga memerlukan pangkalan data dan saya menggunakan mysql, juga skrip yang menjalankan perkakasan dan ini dengan python (3) dan yang terakhir kami memerlukan persediaan pelayan itu akan menjadi nginx pada PI.
Apa yang kita perlukan
- Raspberry Pi 3
- Motor tiri 28BYJ
- Modul stepper motorchip ULN2003 stepper
- Rgb dipimpin dengan 3 perintang 330Ohm
- Kamera Pi NoIR V2
- Sensor ultrasonik HC-SR04
- Modul mikro dari ardiuno
- MAX98357A
- Pembesar suara 8Ohm
- Dan jangan lupa membeli beruang
Sediakan pi raspberry ----------------------------------------------- -------------------------------------------------- --------------------------
Pada mulanya kita perlu menyiapkan Pi. Mulailah sudah masuk melalui dempul, jika anda tidak mempunyai dempul, saya cadangkan anda memuat turun ini, cukup taip ip statik Pi anda dengan ssh dan anda terus menggunakannya. Sekiranya anda perlu memasang Raspberry Pi anda maka saya mendapat berita buruk, saya tidak menerangkannya dalam projek ini.
Pasang pakej
sudo apt kemas kini
sudo apt install -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3
Persekitaran maya
python3 -m pip memasang - tingkatkan pemasangan setuptools wheel virtualenv
mkdir {nama folder projek anda} && cd {nama folder projek anda} python3 -m venv --sistem-laman-pakej env sumber env / bin / aktifkan python -m pip pasang mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask- MySQL mysql-penyambung-python passlib
Sekarang anda harus mengklon git repositori di folder projek anda
github.com/NMCT-S2-Project-I/Project-I.git
Sekiranya anda melihat di folder projek anda, anda mesti melihat 5 folder
- pengesahan
- env
- sensor
- sql
- laman web
Pangkalan data
sudo systemctl status mysql
ss -lt | grep mysql sudo mysql
buat pengguna dalam pangkalan data dengan semua keistimewaan dan buat pangkalan data anda
buat pengguna 'user' @ 'localhost' yang dikenal pasti dengan 'password';
buat pangkalan data nama anda; berikan semua keistimewaan pada nama data anda. * kepada 'user' @ 'localhost' dengan pilihan hibah;
Fail konfigurasi untuk pelayan
Di uwsgi-flask.ini anda menukar 'module = …' menjadi 'module = web: app' dan jalan ke virtualenv yang anda buat. Dalam fail lain, anda perlu menukar jalan ke jalur mutlak sebenar direktori anda.
Setelah anda mengetahui bahawa anda boleh menetapkan fail di tempat yang betul.
sudo cp conf / project1 - *. service / etc / systemd / system /
sudo systemctl daemon-reload sudo systemctl memulakan projek1- * projek status sudo systemctl1- *
sekarang kita harus menetapkan ini tersedia
sudo cp conf / nginx / etc / nginx / sites-available / projek1
sudo rm / etc / nginx / sites-enabled / default sudo ln -s / etc / nginx / sites-available / project1 / etc / nginx / sites-enabled / project1 sudo systemctl restart nginx.service sudo nginx -t
Sekiranya semuanya berjalan lancar, anda pasti mendapat salam dari perintah ini
wget -qO - localhost
Selesai! Baiklah untuk membiarkan sistem anda berjalan di…
Langkah 1: Pendawaian Perkakasan ke Pi
menggunakan BCM
audio MAX98357A
- BCK hingga GPIO 18
- Data ke GPIO 21
- LRCK ke GPIO 19
cahaya
- merah ke GPIO 17
- hijau ke GPIO 27
- biru ke GPIO 22
modul motor ULN2003
- pin 1 ke GPIO 5
- pin 2 ke GPIO 6
- pin 3 ke GPIO 13
- pin 4 ke GPIO 26
mikro
D0 hingga GPIO 21
sensor ultrasonik
- trig ke GPIO 16
- gema ke GPIO 20
Langkah 2: Pengekodan Program Utama
Saya tidak mendapat maklumat terperinci di sini tetapi anda boleh melihat kod saya di github.
Sebagai permulaan saya membuat html dan css saya, indeks, log masuk, daftar, skrin utama, muzik, addmusic, addbear, cahaya, kamera, pengaturan kamera, sensor, halaman papan pemuka. Fail html mesti ada dalam templat dan fail css dalam folder statik / css. Anda boleh menyesuaikan css sepenuhnya seperti yang anda mahukan.
Sekiranya anda melakukan bahagian ini, anda perlu menyiapkan termos anda. Flask mudah digunakan hanya sebagai contoh dunia hello
# kelalang import pada mulanya
dari flask import * @ app.route ('/') def index (): return render_template ('index.html')
Sekarang dalam kod saya ini sudah diisi, satu-satunya perkara yang perlu anda lakukan ialah menukar pengguna pangkalan data dan kata laluan dari anda dan tentu saja membuat pangkalan data yang sama yang anda juga dapati di github.
Langkah 3: Membuat Pangkalan Data
Untuk peminat sebenar saya akan memberitahu anda bagaimana membuat pangkalan data yang sama.
Oleh itu, pertama kita perlu membuat pangkalan data jika anda tidak berada di langkah pertama.
buat beargardian pangkalan data;
Sebaik sahaja anda melakukan ini, anda akan membuat jadual di meja kerja mysql atau phpadmin
jadual pengguna mempunyai
- ID Pengguna
- nama pertama
- nama terakhir
- e-mel
- nama bayi
- kata laluan dengan sha1
- folder pengguna
- playmusic (int)
- lampu main (int)
- rakaman main (int)
meja muzik mempunyai
- musicID
- lagu
- jalan
- folder pengguna
- status
- isi padu
meja rakaman mempunyai
- rakamanID
- jalan
- folder pengguna
- masa
- hari
jadual warna mempunyai
- colorID
- merah
- hijau
- biru
- kecerahan
- ID Pengguna
meja beruang mempunyai
- bearID (perpuluhan (8))
- nol lalai penggunaID
- bearname
jadual sensor mempunyai
- sensorID
- jarak
- mikro
- bearID
- masa
- hari
- masa tidur
Jadi sekarang anda berjaya membuat pangkalan data, mari kita pergi ke perkakasan.
Langkah 4: Pengekodan Perkakasan
Saya akan menunjukkan sedikit kod dan memberitahu anda mengapa saya melakukannya dengan cara itu.
Sebagai permulaan saya menggunakan threading, apa yang mesti ada dalam projek ini. Apa itu threading, hmmm soalan yang bagus! Mengancam dengan baik dalam python adalah menjalankan banyak program sekaligus. Jadi jika anda misalnya menukar warna anda juga boleh merakam. Mudah digunakan jangan risau.
import _threaddef function_name (sesuatu, sesuatu_else): kod untuk dijalankan
_thread.start_new_thread (fungsi_nama, tuple_with_the_functions_variables)
Sekiranya anda melihat program saya, anda melihat logger.info ('…'). Ini adalah fungsi mencetak tetapi jauh lebih baik, kerana pada Pi anda tidak dapat mencetak barang jadi saya membuat fail dan mencetaknya di sana. Yoe boleh menetapkan fail log dengan kod ini.
logger = logging.getLogger (_ name _) logger.setLevel (logging. INFO) # buat pengendali pengendali fail = logging. FileHandler ('logger.log') handler.setLevel (logging. INFO)
# buat format pembalakan
formatter = logging. Formatter ('% (asctime) s -% (name) s -% (message) s') pengendali.setFormatter (formatter)
# tambahkan pengendali ke logger
logger.addHandler (pengendali)
logger.info ('memulakan perkakasan / n ---------------------------------------')
lebih jauh dalam kod itu sendiri saya menerangkan semuanya.
Disyorkan:
Sistem Makluman Tempat Letak Balik Kereta Arduino - Langkah demi Langkah: 4 Langkah
Sistem Makluman Tempat Letak Balik Kereta Arduino | Langkah demi Langkah: Dalam projek ini, saya akan merancang Litar Sensor Tempat Letak Kereta Berbalik Arduino yang ringkas menggunakan Sensor Ultrasonik Arduino UNO dan HC-SR04. Sistem amaran Car Reverse berasaskan Arduino ini dapat digunakan untuk Navigasi Autonomi, Robot Ranging dan rangkaian lain
Langkah demi Langkah Pembinaan PC: 9 Langkah
Langkah demi Langkah Pembinaan PC: Persediaan: Perkakasan: MotherboardCPU & CPU cooler PSU (Unit bekalan kuasa) Penyimpanan (HDD / SSD) RAMGPU (tidak diperlukan) Alat kes: Pemutar skru Gelang ESD / tampal matsthermal dengan aplikator
Tiga Litar Pembesar Suara -- Tutorial Langkah demi Langkah: 3 Langkah
Tiga Litar Pembesar Suara || Tutorial Langkah-demi-Langkah: Loudspeaker Circuit menguatkan isyarat audio yang diterima dari persekitaran ke MIC dan menghantarnya ke Speaker dari tempat audio diperkuat dihasilkan. Di sini, saya akan menunjukkan kepada anda tiga cara berbeza untuk membuat Loudspeaker Circuit ini menggunakan:
Pendidikan Langkah demi Langkah dalam Robotik Dengan Kit: 6 Langkah
Pendidikan Langkah-demi-Langkah dalam Robotik Dengan Kit: Setelah beberapa bulan membina robot saya sendiri (sila rujuk semua ini), dan setelah dua kali bahagian gagal, saya memutuskan untuk mengambil langkah mundur dan memikirkan semula strategi dan arahan. Pengalaman selama beberapa bulan kadang-kadang sangat bermanfaat, dan
Pengangkatan Akustik Dengan Arduino Uno Langkah demi Langkah (8-langkah): 8 Langkah
Acoustic Levitation With Arduino Uno Step-by Step (8-step): transduser suara ultrasonik L298N Dc power adaptor wanita dengan pin dc lelaki Arduino UNOBreadboardBagaimana ini berfungsi: Pertama, anda memuat naik kod ke Arduino Uno (ia adalah mikrokontroler yang dilengkapi dengan digital dan port analog untuk menukar kod (C ++)