Daftar Isi:

Skate-o-Meter: 7 Langkah (dengan Gambar)
Skate-o-Meter: 7 Langkah (dengan Gambar)

Video: Skate-o-Meter: 7 Langkah (dengan Gambar)

Video: Skate-o-Meter: 7 Langkah (dengan Gambar)
Video: World Games 2017 - Speed Skating - Final - Men 1000M 2024, Juli
Anonim
Skate-o-Meter
Skate-o-Meter

Saya seorang mahasiswa di Howest Kortrijk. Untuk menunjukkan keahlian kami kepada lektor yang kami butuhkan untuk membangun sebuah proyek, saya memilih untuk membuat odometer dan speedometer untuk skateboard saya dengan pemindai RFID. Dalam instruksi ini saya akan mengatakan bagaimana saya membuat proyek ini.

Saya datang dengan ide ini karena saya suka meluncur dan berlayar. Saat saya berlayar, akan berguna untuk melihat seberapa jauh jarak yang telah saya tempuh dan melihat kecepatan saya.

Perlu diingat ini adalah prototipe.

Langkah 1: Komponen

Komponen

Saya menggunakan komponen berikut untuk membuat proyek ini:

  • Skateboard
  • Potensiometer
  • LCD
  • Sensor efek hall
  • Resistor 10k Ohm
  • Raspberry pi
  • Arduino Nano
  • Kawat jumper (Wanita ke pria)
  • Kawat jumper (Raspberry Pi)
  • Kawat jumper (Pria ke pria)
  • PCB
  • Pemindai RFID
  • lencana RFID
  • Bank Daya

Lihat BillOfMaterials untuk tautan dan harga

Langkah 2: Pengkabelan

Pengkabelan
Pengkabelan

Aula memiliki 3 pin: VCC, GND dan output. Ground menuju ke GND. VCC ke 3.3V dan output dalam contoh ini menuju ke GPIO 26. Sebuah resistor 10K Ohm menarik output tinggi.

Saya menggunakan komunikasi serial melalui USB antara raspberry pi dan arduino nano untuk membaca lencana. Ini tidak ada dalam gambar, tetapi diperlukan!

D9 RST (Reset)D10 SDA(SS) (SPI SS)D11 MOSI (SPI MOSI)D12 MISO (SPI MISO)D13 SCK (SPI SCK)GND GND3.3V 3.3V

Langkah 3: Skema Basis Data

Skema Basis Data
Skema Basis Data

Database saya memiliki 3 tabel:

  • Pengguna
  • Sidang
  • Data

Setiap pengguna dapat melacak data secara terpisah. Sesi memiliki data sehingga Anda tahu seberapa cepat Anda mencapai titik tertentu saat sesi berlangsung.

Langkah 4: Konfigurasikan Arduino Nano

Konfigurasikan Arduino Nano
Konfigurasikan Arduino Nano
Konfigurasikan Arduino Nano
Konfigurasikan Arduino Nano
Konfigurasikan Arduino Nano
Konfigurasikan Arduino Nano

Pertama masukkan arduino nano Anda di pc Anda melalui kabel usb. Pilih arduino kanan dan port usb kanan untuk mengunggah.

Selanjutnya kita perlu menambahkan perpustakaan yang saya gunakan untuk membaca lencana RFID. Unduh 'rfid-master' dan buka sketsa, sertakan perpustakaan dan kemudian tambahkan perpustakaan. ZIP. Buka zip yang baru saja Anda unduh dan gunakan yang ini, itu akan menginstal secara otomatis. Setelah itu unduh 'RFID_Read.ino' yang telah saya edit tekan ctrl + O tambahkan waktu yang sama dan buka file ini dan buka.

Jika Anda melakukan semua langkah di atas, Anda dapat memverifikasi file. Jika bug pertama kali, coba saja sekali lagi. Jika ini berhasil, Anda dapat mengunggahnya ke arduino Anda. Dengan menggunakan shortcut ctrl+shift+m Anda dapat membuka serial monitor. Anda dapat menguji file di sini. Jika tes berhasil, Anda dapat mencabut arduino dan mencolokkannya di port usb raspberry pi

Langkah 5: Konfigurasikan Raspberry Pi

Dalam langkah-langkah ini kita akan mengatur raspberry pi sebagai database dan server web.

DALAM CONTOH INI SAYA MENGGUNAKAN PENGGUNA 'saya' JIKA ANDA MENGGUNAKAN PENGGUNA LAIN ANDA PERLU MENGUBAH FILE KONFIGURASI, PERHATIKAN INI!

1. Buat pengguna:

Buat variabel

pieter@rppieter:~ $ pengguna=saya

Membuat pengguna sudo dan menambahkan ke semua grup

groups=$(id pi -Gn | sed 's/^pi //g' | sed 's/ /, /g')sudo useradd ${user} -s /bin/bash -m -G ${groups} sudo sed "s/^pi/${user}/" /etc/sudoers.d/010_pi-nopasswd | sudo tee "/etc/sudoers.d/011_${user}-nopasswd" sudo passwd ${user}

Masuk ke akun

pieter@rppieter:~ $ su - saya

Kata sandi: saya@rpi-saya:~$

2. Terhubung dengan WiFi

me@rppieter:~ $ sudo -iroot@rppieter:~# echo 'Kata Sandi' | wpa_passphrase 'Networkname' >> /etc/wpa_supplicant/wpa_supplicant.conf root@rpipieter:~# wpa_cli -i wlan0 konfigurasi ulang root@rpipieter:~# logout

Periksa apakah internet berfungsi

root@rppieter:~# wget google.com

3. Membuat raspberry pi mutakhir dan menginstal paket yang dibutuhkan

me@my-rpi:~$ sudo apt update

me@my-rpi:~$ sudo apt upgrade me@rppieter:~ $ sudo apt install -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 gitme@my-rpi:~$ sudo reboot -h sekarang

4. Kloning repositori github saya

me@rppieter:~ $ git clone

saya@rppieter:~ $ cd skate-o-meter/skateometer/

5. Membuat lingkungan virtual

Saat melakukan perintah ini akan ada banyak paket yang diinstal, ini mungkin memakan waktu.

me@rppieter:~/skate-o-meter/skateometer $ python3 -m pip install --upgrade pip setuptools wheel virtualenv

me@rpipieter:~/skate-o-meter/skateometer $ python3 -m venv --system-site-packages env (env) me@rppieter:~/skate-o-meter/skateometer $ python -m pip install mysql- konektor-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib pyserial pyjwt RPi. GPIO

6. Membuat database dan pengguna

Kami menggunakan database mysql

pieter@rppieter:~/skate-o-meter/skateometer $ cd

pieter@rppieter:~ $ sudo mysql

Kemudian salin, tempel ini

GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO 'som-data'@'localhost';SET PASSWORD FOR 'som-data'@'localhost' = PASSWORD('sensor9810'); pilih * dari mysql.user; BUAT PENGGUNA 'som-admin'@'localhost' DIIDENTIFIKASI OLEH 'admin9810'; BUAT PENGGUNA 'som-web'@'localhost' DIIDENTIFIKASI DENGAN 'web9810'; BUAT PENGGUNA 'som-sensor'@'localhost' DIIDENTIFIKASI DENGAN 'sensor9810'; BUAT DATABASE skateometerdb; HIBAH SEMUA HAK ISTIMEWA DI skateometerdb.* ke 'som-admin'@'localhost' DENGAN GRANT OPTION; GRANT SELECT, INSERT, UPDATE, DELETE PADA skateometerdb.* KE 'som-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE PADA skateometerdb.* UNTUK 'som-sensor'@'localhost'; HAK ISTIMEWA;

Selanjutnya kita akan menambahkan skema database yang ada dengan relasi.

me@rppieter:~/skate-o-meter/skateometer $ sudo mysql < sql/skateometerdb_dump-withoutdata.sql

7. Layanan

Di sini kami menyalin file konfigurasi kami dan memuat ulang folder sehingga kami dapat mengaktifkan layanan

me@rpipieter:~/skate-o-meter/skateometer $ sudo cp conf/som-*.service /etc/systemd/systemme@rppieter:~/skate-o-meter/skateometer $ sudo systemctl daemon-reload

Sekarang kita akan mengaktifkan layanan sehingga setiap kali kita memulai raspberry pi ini akan secara otomatis memulainya.

me@rppieter:~/skate-o-meter/skateometer $ sudo systemctl aktifkan som-flask.service

Membuat symlink /etc/systemd/system/multi-user.target.wants/som-flask.service → /etc/systemd/system/som-flask.service. me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl enable som-data.service Membuat symlink /etc/systemd/system/multi-user.target.wants/som-data.service → /etc/systemd/ sistem/som-data.service. me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl start som-data.service me@rpipieter:~/skate-o-meter/skateometer $ sudo systemctl start som-flask.service

8. NGINX

me@rpipieter:~/skate-o-meter/skateometer $ sudo cp conf/nginx /etc/nginx/sites-available/skateometerme@rppieter:~/skate-o-meter/skateometer $ sudo rm /etc/nginx/sites -enabled/default me@rpipieter:~/skate-o-meter/skateometer $ sudo ln -s /etc/nginx/sites-available/skateometer /etc/nginx/sites-enabled/skateometerme@rpipieter:~/skate-o -meter/skateometer $ sudo systemctl restart nginx.service

Langkah 6: Perumahan + Aula

Perumahan + Aula
Perumahan + Aula

Perumahan

Pertama saya membuat lubang di skateboard saya untuk LCD, potensiometer dan bel. Setelah itu saya melakukan solder LCD, potensiometer dan buzzer pada PCB. Kemudian saya menggunakan jumperwire untuk RPI, yang memiliki 40 pin. Saya meletakkan satu sisi di raspberry pi dan setengah lainnya saya potong, sisi ini akan kita gunakan untuk menyolder. Di file 'rpi-cable' Anda dapat melihat di mana Anda perlu menyolder kawat mana.

Untuk casing saya menggunakan kotak tuas yang melengkung, saya membuat beberapa lubang di dalamnya untuk eternit dan untuk kabel jumper untuk masuk ke dalam kotak.

Saya menyimpan kotak di bawah skateboard dengan beberapa sekrup. Di dalam kotak saya mengatur semuanya, sehingga cocok dan juga menggunakan sekrup dan beberapa karet untuk menjaga semuanya tetap di tempatnya. Hal ini membuat mengambil barang lebih mudah.

RFID dipasang ke kotak yang menyala dan ditahan dengan ritsleting, satu masalah yang saya temui adalah kadang-kadang tidak memindai, tetapi dengan beberapa perubahan saya membuatnya berfungsi.

Sensor efek hall

Pertama saya mengebor lubang di roda saya dan menaruh magnet di dalamnya.

Untuk aula digunakan 3 kabel jumper (jantan ke jantan) saya menyoldernya di PCB saya juga di aula itu sendiri. Saya memasang sensor hall di truk saya dengan beberapa ritsleting. Pastikan magnet dan sensor sejajar dengan baik, jika tidak maka tidak akan selalu mencatat pulsa.

Langkah 7: Memulai Aplikasi

Langkah 1:

Colokkan raspberry dan bank daya.

Langkah 2:

Tunggu hingga program dimulai, Anda dapat mengikuti ini di LCD. Anda akan melihat alamat IP, buka alamat IP ini.

Langkah 3:

Buat pengguna, Anda dapat melakukannya dengan mendaftar. Anda perlu memindai lencana untuk melihat UID lencana Anda di LCD.

Langkah 4:

Jika Anda membuat pengguna, Anda dapat memindai lencana Anda dan sesi akan dimulai.

Langkah 5:

Pergi berlayar keliling

Langkah 6:

Pindai lencana lagi untuk menghentikan sesi

Langkah 7:

Masuk untuk melihat sesi Anda dan data terperinci dari sesi

Direkomendasikan: