Sadržaj:
- Korak 1: Komponente
- Korak 2: Ožičenje
- Korak 3: Šema baze podataka
- Korak 4: Konfigurirajte Arduino Nano
- Korak 5: Konfigurirajte Raspberry Pi
- Korak 6: Stanovanje + hodnik
- Stanovanje
- Senzor Hall efekta
- Korak 7: Pokretanje aplikacije
Video: Skate-o-metar: 7 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Student sam Howest Kortrijka. Kako bih pokazao svoje vještine lektorima koji su nam bili potrebni za izradu projekta, odlučio sam stvoriti brojač kilometara i brzinomjer za svoju skejtbord sa RFID skenerom. U ovom uputstvu ću reći kako sam napravio projekat.
Na ovu sam ideju došao jer volim klizati i krstariti. Dok krstarim bilo bi zgodno vidjeti koliko sam udaljenosti prešao i vidjeti moju brzinu.
Imajte na umu da je ovo prototip.
Korak 1: Komponente
Komponente
Koristio sam sljedeće komponente za kreiranje ovog projekta:
- Skateboard
- Potenciometar
- LCD
- Senzor Hall efekta
- 10k Ohm otpornik
- Malina pi
- Arduino Nano
- Žica za spajanje (ženski na muški)
- Žica za spajanje (Raspberry Pi)
- Žica za spajanje (muški na muški)
- PCB
- RFID skener
- RFID značka
- Powerbank
Za linkove i cijenu pogledajte BillOfMaterials
Korak 2: Ožičenje
Dvorana ima 3 pina: VCC, GND i izlaz. Uzemljenje ide do GND -a. VCC na 3.3V i izlaz u ovom primjeru ide na GPIO 26. Otpornik od 10K Ohma podiže izlaz visoko.
Koristim serijsku komunikaciju preko USB -a između malina pi i arduino nano za čitanje znački. Ovo nije na slici, ali je obavezno!
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
Korak 3: Šema baze podataka
Moja baza podataka ima 3 tabele:
- Korisnici
- Session
- Podaci
Svaki korisnik može zasebno pratiti podatke. Sesija ima podatke tako da znate koliko ste brzo prošli određene tačke dok je sesija trajala.
Korak 4: Konfigurirajte Arduino Nano
Prvo umetnite svoj arduino nano u računalo putem USB kabela. Odaberite odgovarajući arduino i pravi USB port za učitavanje.
Zatim moramo dodati biblioteku koju koristim za čitanje RFID značke. Preuzmite 'rfid-master' i idite na skicu, uključite biblioteku, a zatim dodajte. ZIP biblioteku. Idite na zip koji ste upravo preuzeli i upotrijebite ovaj, automatski će se instalirati. Nakon toga preuzmite uređeni 'RFID_Read.ino' pritisnite ctrl + O, dodajte isto vrijeme i idite na ovu datoteku i otvorite je.
Ako ste izvršili sve gore navedene korake, možete provjeriti datoteku. Ako se prvi put javi greška, pokušajte još jednom. Ako je ovo uspješno, možete ga prenijeti na svoj arduino. Pomoću prečice ctrl+shift+m možete otvoriti serijski monitor. Datoteku možete testirati ovdje. Ako je test uspješan, možete isključiti arduino i priključiti ga u USB port maline pi
Korak 5: Konfigurirajte Raspberry Pi
U ovim koracima postavit ćemo malinu pi kao bazu podataka i web poslužitelj.
U OVOM PRIMJERU KORISTIM KORISNIKA „ja“AKO KORISTITE DRUGOG KORISNIKA KOJI MORATE MIJENJATI KONFIGURACIJSKE DATOTEKE, IMAJTE U VIDU OVO!
1. Kreirajte korisnika:
Kreirajte varijablu
pieter@rpipieter: ~ $ user = ja
Pravljenje korisnika sudo i dodavanje u sve grupe
grupe = $ (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}
Prijavite se na račun
pieter@rpipieter: ~ $ su - ja
Lozinka: me@my-rpi: ~ $
2. Povežite se s WiFi mrežom
me@rpipieter: ~ $ sudo -iroot@rpipieter: ~# echo 'Lozinka' | wpa_passphrase 'Networkname' >> /etc/wpa_supplicant/wpa_supplicant.conf root@rpipieter: ~# wpa_cli -i wlan0 ponovno konfigurirajte root@rpipieter: ~# odjava
Provjerite radi li internet
root@rpipieter: ~# wget google.com
3. Ažuriranje maline pi i instaliranje potrebnih paketa
me@my-rpi: ~ $ sudo apt update
me@my-rpi: ~ $ sudo apt nadogradi me@rpipieter: ~ $ sudo apt instaliraj -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 gitme@my-rpi: ~ $ sudo ponovo pokrenite -h sada
4. Kloniraj moje github spremište
ja@rpipieter: ~ $ git klon
me@rpipieter: ~ $ cd skate-o-meter/skateometer/
5. Stvaranje virtualnog okruženja
Dok radite ove naredbe bit će instalirano mnogo paketa, to može potrajati.
me@rpipieter: ~/skate-o-meter/skateometer $ python3 -m pip install-nadogradnja pip setuptools kotač virtualenv
me@rpipieter: ~/skate-o-meter/skateometer $ python3 -m venv --system-site-packages env (env) me@rpipieter: ~/skate-o-meter/skateometer $ python -m pip install mysql- konektor-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-konektor-python passlib pyserial pyjwt RPi. GPIO
6. Kreiranje baze podataka i korisnika
Koristimo mysql bazu podataka
pieter@rpipieter: ~/skate-o-meter/skateometer $ cd
pieter@rpipieter: ~ $ sudo mysql
Zatim kopirajte, zalijepite ovo
GRANT SELECT, INSERT, UPDATE, DELETE ON *. * NA 'som-data'@'localhost'; odaberite * iz mysql.user; CREATE USER 'som-admin'@'localhost' IDENTIFIKOVANO OD 'admin9810'; CREATE USER 'som-web'@'localhost' IDENTIFIKIRANO 'web9810'; CREATE USER 'som-sensor'@'localhost' IDENTIFIKOVANO sa 'sensor9810'; CREATE DATABASE skateometerdb; ODOBRITE SVE PRIVILEGIJE NA skateometerdb.* Na 'som-admin'@'localhost' SA OPCIJOM GRANTA; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-sensor'@'localhost'; FLUSH PRIVILEGES;
Zatim ćemo dodati postojeću shemu baze podataka s relacijama.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo mysql <sql/skateometerdb_dump-withoutdata.sql
7. Usluge
Ovdje kopiramo naše konfiguracijske datoteke i ponovno učitavamo mapu kako bismo mogli omogućiti usluge
me@rpipieter: ~/skate-o-meter/skateometer $ sudo cp conf/som-*. service/etc/systemd/systemme@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl daemon-reload
Sada ćemo omogućiti usluge tako da se svaki put kada pokrenemo malinu pi automatski pokreću s njom.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl omogući som-flask.service
Kreirana simetrična veza /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 Kreirana simolinka /etc/systemd/system/multi-user.target.wants/som-data.service →/etc/systemd/ system/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@rpipieter: ~/skate-o-meter/skateometer $ sudo rm/etc/nginx/sites -mogućeno/zadano me@rpipieter: ~/skate-o-meter/skateometer $ sudo ln -s/etc/nginx/sites-available/skateometer/etc/nginx/sites-enabled/skateometerme@rpipieter: ~/skate-o -metar/skateometar $ sudo systemctl restart nginx.service
Korak 6: Stanovanje + hodnik
Stanovanje
Prvo sam napravio skelet na svom LCD ekranu, potenciometru i zujalici. Nakon toga sam lemio LCD, potenciometar i zujalicu na PCB -u. Zatim sam koristio kratkospojnik za RPI, onaj sa 40 pinova. Stavio sam jednu stranu u malinu pi, a drugu polovicu sam izrezao, ovu ćemo stranu koristiti za lemljenje. U datoteci 'rpi-cable' možete vidjeti gdje trebate lemiti koju žicu.
Za kućište sam koristio staru kutiju za zakrivljavanje, stavio sam u nju neke rupe za kabel za Ethernet i da kratkospojnik dođe u kutiju.
Držim kutiju ispod skejtborda nekim vijkom. Unutar kutije sam sve rasporedio, tako da stane, a koristio sam i vijke i gumu kako bi sve ostalo na mjestu. Ovo olakšava vađenje stvari.
RFID je montiran na osvijetljenu kutiju i pričvršćen je patentnim zatvaračima. Jedan problem na koji sam naišao bio je taj što ponekad nije skenirao, ali s nekim promjenama sam uspio.
Senzor Hall efekta
Prvo sam izbušio rupu na kotaču i stavio magnet u nju.
Za dvoranu se koriste 3 kratkospojnika (muški na muški). Zalemio sam ih na PCB -u, kao i na samoj hali. Postavio sam Hall senzor na svoj kamion sa nekoliko patentnih zatvarača. Uvjerite se da su magnet i senzor dobro poravnati, inače neće uvijek registrirati puls.
Korak 7: Pokretanje aplikacije
Korak 1:
Uključite malinu i napajanje.
Korak 2:
Pričekajte da se program pokrene, to možete pratiti na LCD -u. Vidjet ćete IP adresu, idite na ovu IP adresu.
Korak 3:
Kreirajte korisnika, to možete učiniti registracijom. Morate skenirati značku da vidite svoj UID značke na LCD -u.
Korak 4:
Ako ste stvorili korisnika, možete skenirati svoju značku i sesija će započeti.
Korak 5:
Idite na krstarenje
Korak 6:
Ponovo skenirajte značku da prekinete sesiju
Korak 7:
Prijavite se da vidite svoju sesiju i detaljne podatke sa sesije
Preporučuje se:
Kako: Instaliranje Raspberry PI 4 bez glave (VNC) sa Rpi-imagerom i slikama: 7 koraka (sa slikama)
Kako: Instaliranje Raspberry PI 4 Headless (VNC) s Rpi-imagerom i slikama: Planiram koristiti ovaj Rapsberry PI u hrpi zabavnih projekata na svom blogu. Slobodno provjerite. Htio sam se vratiti korištenju svog Raspberry PI -a, ali nisam imao tipkovnicu ili miš na novoj lokaciji. Prošlo je dosta vremena od postavljanja maline
Kako napraviti brojač koraka?: 3 koraka (sa slikama)
Kako napraviti brojač koraka?: Nekada sam se dobro snašao u mnogim sportovima: hodanje, trčanje, vožnja bicikla, igranje badmintona itd. Volim jahanje da bih brzo putovao. Pa, pogledaj moj trbušni trbuh … Pa, u svakom slučaju, odlučujem ponovo početi vježbati. Koju opremu treba pripremiti?
Brojač koraka - Mikro: Bit: 12 koraka (sa slikama)
Brojač koraka - Micro: Bit: Ovaj projekat će biti brojač koraka. Za mjerenje koraka koristit ćemo senzor akcelerometra koji je ugrađen u Micro: Bit. Svaki put kada se Micro: Bit protrese, broju ćemo dodati 2 i prikazati ga na ekranu
Atari Punk konzola s bebom Sekvencer za 8 koraka: 7 koraka (sa slikama)
Atari Punk konzola sa Baby Step Sequencer-om: Ova srednja verzija je sve-u-jednom Atari Punk Console i Baby 8 Step Sequencer koju možete glodati na stolnoj PCB glodalici Bantam Tools. Sastoji se od dvije ploče: jedna je ploča korisničkog sučelja (UI), a druga je pomoćna bo
Kako rastaviti računar jednostavnim koracima i slikama: 13 koraka (sa slikama)
Kako rastaviti računar jednostavnim koracima i slikama: Ovo uputstvo o tome kako rastaviti računar. Većina osnovnih komponenti je modularna i lako se uklanja. Međutim, važno je da se oko toga organizirate. To će vam pomoći da izbjegnete gubitak dijelova, a također i prilikom ponovnog sastavljanja