Sisukord:

Skate-o-Meter: 7 sammu (piltidega)
Skate-o-Meter: 7 sammu (piltidega)

Video: Skate-o-Meter: 7 sammu (piltidega)

Video: Skate-o-Meter: 7 sammu (piltidega)
Video: Перевал Дятлова. Дятловцы были сотрудниками КГБ? Версия Ракитина. 2024, November
Anonim
Skate-o-Meter
Skate-o-Meter

Olen Howest Kortrijki õpilane. Et näidata oma oskusi õppejõududele, keda me projekti ülesehitamiseks vajasime, otsustasin luua oma rulale RFID -skanneriga läbisõidumõõdiku ja spidomeetri. Selles juhendis tahan öelda, kuidas ma selle projekti tegin.

Tulin selle idee peale, sest mulle meeldib uisutada ja ringi tiirutada. Reisi ajal oleks mugav näha, kui palju ma olen läbinud, ja näha oma kiirust.

Pidage meeles, et see on prototüüp.

Samm: komponendid

Komponendid

Selle projekti loomiseks kasutasin järgmisi komponente:

  • Rula
  • Potentsiomeeter
  • LCD
  • Halli efekti andur
  • 10k oomi takisti
  • Vaarika pi
  • Arduino Nano
  • Jumper traat (emane kuni mees)
  • Jumper traat (Raspberry Pi)
  • Jumper traat (meessoost isane)
  • PCB
  • RFID -skanner
  • RFID -märk
  • Akupank

Vaadake linke ja hinda BillOfMaterialsist

2. samm: juhtmestik

Juhtmestik
Juhtmestik

Saalis on 3 tihvti: VCC, GND ja väljund. Maa läheb GND -le. VCC to 3.3V ja selle näite väljund läheb GPIO 26. 10K oomi takisti tõmbab väljundi kõrgele.

Märkide lugemiseks kasutan USB kaudu jadaühendust vaarika pi ja arduino nano vahel. Seda pole pildil, kuid see on kohustuslik!

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

3. samm: andmebaasiskeem

Andmebaasiskeem
Andmebaasiskeem

Minu andmebaasis on 3 tabelit:

  • Kasutajad
  • Sessioon
  • Andmed

Iga kasutaja saab andmeid eraldi jälgida. Seansil on andmeid, nii et teate, kui kiiresti te teatud punktides seansi toimumise ajal liikusite.

Samm: seadistage Arduino Nano

Seadistage Arduino Nano
Seadistage Arduino Nano
Seadistage Arduino Nano
Seadistage Arduino Nano
Seadistage Arduino Nano
Seadistage Arduino Nano

Kõigepealt pange oma arduino nano USB -kaabli kaudu arvutisse. Valige üleslaadimiseks õige arduino ja õige USB -port.

Järgmisena peame lisama kogu, mida kasutan RFID -märgi lugemiseks. Laadige alla rfid-master ja minge visandile, lisage raamatukogu ja lisage seejärel. ZIP-kogu. Minge äsja alla laaditud ZIP -faili ja kasutage seda, see installitakse automaatselt. Pärast seda laadige alla minu redigeeritud 'RFID_Read.ino', vajutage ctrl + O, lisage sama aeg ja minge sellele failile ning avage see.

Kui tegite kõik ülaltoodud toimingud, saate faili kontrollida. Kui see esmakordselt viga tekitab, proovige seda uuesti. Kui see õnnestub, saate selle oma arduinole üles laadida. Kiirklahvi ctrl+shift+m abil saate avada jadamonitori. Faili saate testida siin. Kui test õnnestub, saate arduino vooluvõrgust lahti ühendada ja ühendada see vaarika pi USB -porti

Samm: konfigureerige Raspberry Pi

Nendes sammudes seadistame vaarika pi andmebaasi ja veebiserveriks.

SELLES NÄITES KASUTAN KASUTAJAT "mina", KUI KASUTATE TEIST KASUTAJAT, KUI VAJATE KONFIGURAATSEFILI MUUDATA, JÄTKE SEDA MEELES!

1. Looge kasutaja:

Loo muutuja

pieter@rpipieter: ~ $ user = mina

Kasutaja sudo tegemine ja kõikidesse rühmadesse lisamine

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}

Logige kontole sisse

pieter@rpipieter: ~ $ su - mina

Parool: mina@my-rpi: ~ $

2. Ühendage WiFi -ga

mina@rpipieter: ~ $ sudo -iroot@rpipieter: ~# echo 'Parool' | wpa_passphrase 'Võrgunimi' >> /etc/wpa_supplicant/wpa_supplicant.conf root@rpipieter: ~# wpa_cli -i wlan0 juure ümberkonfigureerimine@rpipieter: ~# logout

Kontrollige, kas Internet töötab

root@rpipieter: ~# wget google.com

3. Vaarika pi ajakohastamine ja vajalike pakettide installimine

me@my-rpi: ~ $ sudo apt uuendus

me@my-rpi: ~ $ sudo apt upgrade me@rpipieter: ~ $ sudo apt install -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 gitme@my-rpi: ~ $ sudo taaskäivita -h kohe

4. Kloonige minu githubi hoidla

mina@rpipieter: ~ $ git kloon

mina@rpipieter: ~ $ cd skate-o-meter/skateometer/

5. Virtuaalse keskkonna loomine

Nende käskude täitmisel installitakse palju pakette, kuid see võib võtta aega.

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

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

6. Andmebaasi ja kasutajate loomine

Kasutame mysql andmebaasi

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

pieter@rpipieter: ~ $ sudo mysql

Seejärel kopeerige ja kleepige see

GRANT SELECT, INSERT, UPDATE, DELETE ON *. * TO 'som-data'@'localhost'; SET-SOS-data '@' localhost '= PASSWORD (' sensor9810 '); vali * saidilt mysql.user; CREATE USER 'som-admin'@'localhost' IDENTIFITEERITUD 'admin9810'; CREATE USER 'som-web'@'localhost' TUNNISTAJA 'web9810'; CREATE USER 'som-sensor'@'localhost' IDENTIFITEERITUD 'sensor9810'; CREATE DATABASE skateometerdb; TOETAGE KÕIK PRIILIID skateometerdb'is.* SOM-admin'ile@'localhost' TOETUSVALIKUGA; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-sensor'@'localhost'; FLUSHI privileegid;

Järgmisena lisame olemasoleva andmebaasiskeemi suhetega.

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

7. Teenused

Siin kopeerime oma konfiguratsioonifailid ja laadime kausta uuesti, et saaksime teenused lubada

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

Nüüd lubame teenused nii, et iga kord, kui vaarika pi käivitame, käivituvad need automaatselt.

me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl lubage som-kolb. teenus

Loodud 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 Loodud symlink /etc/systemd/system/multi-user.target.wants/som-data.service →/etc/systemd/ system/som-data.service. mina@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

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

6. samm: eluase + saal

Eluase + saal
Eluase + saal

Eluase

Kõigepealt tegin oma rulale augu LCD, potentsiomeetri ja helisignaali jaoks. Pärast seda jootsin trükkplaadil LCD -ekraani, potentsiomeetri ja summeri. Seejärel kasutasin RPI jaoks hüppaja, 40 tihvtiga. Panin ühe külje vaarika pi sisse ja teise poole lõikasin, seda külge hakkame jootma. Failis „rpi-kaabel” näete, kus peate millise juhtme jootma.

Korpuse jaoks kasutasin vana kõverduskarbi, panin sinna mõned augud Ethernet -kaabli jaoks ja hüppaja jaoks karbis.

Hoian kasti mingi kruviga rula all. Karbi sees korraldasin kõik, nii et see sobiks ja kasutasin ka kruvisid ja mõnda kummi, et kõik paigas hoida. See muudab asjade väljavõtmise lihtsamaks.

RFID on paigaldatud kasti valgustusse ja seda hoitakse lukuga kinni, üks probleem, millega ma kokku puutusin, oli see, et mõnikord ei skannitud, kuid mõne muudatusega panin selle tööle.

Halli efekti andur

Kõigepealt puurisin ratta sisse augu ja panin magneti sisse.

Saali jaoks on kasutatud 3 hüppajat (isas -isane), jootsin need oma PCB -le ja ka saalile endale. Paigaldasin saali anduri mõnele tõmblukuga oma veoautole. Veenduge, et magnet ja andur on hästi joondatud, vastasel juhul ei registreeri see alati pulssi.

Samm: rakenduse käivitamine

Samm 1:

Ühendage vaarika- ja elektripank.

2. samm:

Oodake, kuni programm käivitub, saate seda LCD -ekraanil jälgida. Näete IP-aadressi, minge sellele IP-aadressile.

3. samm:

Looge kasutaja, saate seda teha registreerudes. Märgi skannimiseks peate märgi UID -d LCD -ekraanil nägema.

4. samm:

Kui lõite kasutaja, saate oma märgi skannida ja seanss algab.

5. samm:

Minge ringi kruiisima

6. samm:

Sessiooni peatamiseks skannige märki uuesti

7. samm:

Seansi ja seansi üksikasjalike andmete vaatamiseks logige sisse

Soovitan: