Sisällysluettelo:
- Vaihe 1: Komponentit
- Vaihe 2: Johdotus
- Vaihe 3: Tietokantajärjestelmä
- Vaihe 4: Määritä Arduino Nano
- Vaihe 5: Määritä Raspberry Pi
- Vaihe 6: Asunto + Hall
- Asuminen
- Hall -tehosteanturi
- Vaihe 7: Sovelluksen käynnistäminen
Video: Skate-o-Meter: 7 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Olen Howest Kortrijkin opiskelija. Osoittaaksemme taitomme projektin rakentamiseen tarvittaville luennoitsijoille, päätin luoda matkamittarin ja nopeusmittarin rullalautaani RFID -skannerilla. Tässä ohjeessa haluan kertoa, miten tein tämän projektin.
Sain tämän idean, koska pidän luistelusta ja risteilystä. Risteilyn aikana olisi kätevää nähdä kuinka paljon olen matkustanut ja nähdä nopeuteni.
Muista, että tämä on prototyyppi.
Vaihe 1: Komponentit
Komponentit
Tämän projektin luomiseen käytin seuraavia komponentteja:
- Rullalauta
- Potentiometri
- LCD -näyttö
- Hall -tehosteanturi
- 10 k ohmin vastus
- Vadelma pi
- Arduino Nano
- Hyppyjohdin (naaras -uros)
- Hyppyjohdin (Raspberry Pi)
- Hyppyjohdin (uros -uros)
- PCB
- RFID -skanneri
- RFID -tunnus
- Powerbank
Katso linkit ja hinta BillOfMaterialsista
Vaihe 2: Johdotus
Hallissa on 3 nastaa: VCC, GND ja lähtö, maa menee GND: lle. VCC on 3,3 V ja lähtö tässä esimerkissä menee GPIO 26. 10 K ohmin vastus nostaa lähdön korkealle.
Käytän sarjaliikennettä USB: n kautta vadelma pi: n ja arduino nanon välillä lukeakseni merkkejä. Tämä ei ole kuvassa, mutta pakollinen!
D9 RST (nollaus) D10 SDA (SS) (SPI SS) D11 MOSI (SPI MOSI) D12 MISO (SPI MISO) D13 SCK (SPI SCK) GND GND3.3V 3.3V
Vaihe 3: Tietokantajärjestelmä
Tietokannassani on 3 taulukkoa:
- Käyttäjät
- Istunto
- Tiedot
Jokainen käyttäjä voi seurata tietoja erikseen. Istunto sisältää tietoja, joten tiedät kuinka nopeasti etenit tietyissä kohdissa istunnon aikana.
Vaihe 4: Määritä Arduino Nano
Aseta ensin arduino nano tietokoneeseen USB -kaapelin kautta. Valitse ladattava oikea arduino ja oikea USB -portti.
Seuraavaksi meidän on lisättävä kirjasto, jota käytän RFID -tunnuksen lukemiseen. Lataa 'rfid-master' ja siirry luonnokseen, sisälly kirjastoon ja lisää sitten. ZIP-kirjasto. Siirry juuri lataamaasi zip -tiedostoon ja käytä tätä, se asennetaan automaattisesti. Lataa sen jälkeen muokattu 'RFID_Read.ino' painamalla ctrl + O lisää sama aika ja siirry tähän tiedostoon ja avaa se.
Jos teit kaikki edellä mainitut vaiheet, voit vahvistaa tiedoston. Jos se vikaantuu ensimmäistä kertaa, kokeile sitä vielä kerran. Jos tämä onnistuu, voit ladata sen arduinoosi. Voit avata sarjamonitorin käyttämällä pikanäppäintä ctrl+shift+m. Voit testata tiedoston täällä. Jos testi onnistuu, voit irrottaa arduinon ja kytkeä sen vadelmapi: n USB -porttiin
Vaihe 5: Määritä Raspberry Pi
Näissä vaiheissa asetamme vadelma pi -tietokannan ja verkkopalvelimen.
TÄMÄN ESIMERKIN KÄYTÄN KÄYTTÄJÄ "minä", JOS KÄYTÄT TOISTA KÄYTTÄJÄÄ, JOS TARVITSET MUUTTAA KONFIGUURITIEDOSTOJA, SÄILYTÄ TÄMÄ!
1. Luo käyttäjä:
Luo muuttuja
pieter@rpipieter: ~ $ user = minä
Käyttäjän sudo tekeminen ja lisääminen kaikkiin ryhmiin
ryhmät = $ (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}
Kirjaudu tilille
pieter@rpipieter: ~ $ su - minä
Salasana: minä@my-rpi: ~ $
2. Muodosta yhteys WiFi -verkkoon
me@rpipieter: ~ $ sudo -iroot@rpipieter: ~# echo 'Salasana' | wpa_passphrase 'Verkon nimi' >> /etc/wpa_supplicant/wpa_supplicant.conf root@rpipieter: ~# wpa_cli -i wlan0 määritä root uudelleen@rpipieter: ~# logout
Tarkista toimiiko Internet
root@rpipieter: ~# wget google.com
3. Raspberry pi: n ajantasaistaminen ja tarvittavien pakettien asentaminen
me@my-rpi: ~ $ sudo apt päivitys
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 käynnistä uudelleen -h nyt
4. Kloonaa github -arkistoni
minä@rpipieter: ~ $ git klooni
me@rpipieter: ~ $ cd skate-o-meter/skateometer/
5. Virtuaalisen ympäristön luominen
Vaikka näitä komentoja suoritetaan, asennetaan paljon paketteja, tämä voi kestää jonkin aikaa.
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-paketit env (env) me@rpipieter: ~/skate-o-meter/skateometer $ python -m pip install mysql- liitin-python argon2-cffi Pullo-pullo-HTTPAuth-pullo-MySQL mysql-liitin-python passlib pyserial pyjwt RPi. GPIO
6. Tietokannan ja käyttäjien luominen
Käytämme mysql -tietokantaa
pieter@rpipieter: ~/skate-o-meter/skateometer $ cd
pieter@rpipieter: ~ $ sudo mysql
Kopioi ja liitä tämä
GRANT SELECT, INSERT, UPDATE, DELETE ON *. * TO 'som-data'@'localhost'; SET PASSWORD for 'som-data'@'localhost' = SALASANA ('sensor9810'); valitse * mysql.userista; LUO KÄYTTÄJÄ 'som-admin'@'localhost' TUNNISTAA 'admin9810'; LUO KÄYTTÄJÄ 'som-web'@'localhost' TUNNISTAA 'web9810'; LUO KÄYTTÄJÄ 'som-sensor'@'localhost' TUNNISTAA 'sensor9810'; LUO DATABASE skateometerdb; ANNA KAIKKI EDUT skateometerdb: ssä. GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-sensor'@'localhost'; Huuhteluoikeudet;
Seuraavaksi aiomme lisätä olemassa olevan tietokantamallin suhteilla.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo mysql <sql/skateometerdb_dump-withoutdata.sql
7. Palvelut
Täällä kopioimme asetustiedostot ja lataamme kansion uudelleen, jotta voimme ottaa palvelut käyttöön
me@rpipieter: ~/skate-o-meter/skateometer $ sudo cp conf/som-*. service/etc/systemd/systemme@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl daemon-reload
Nyt aiomme ottaa palvelut käyttöön niin, että aina kun aloitamme vadelmapi, ne käynnistyvät automaattisesti sen kanssa.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl enable som-flask.service
Luotu 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 Luotu symlink /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 -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 Käynnistä nginx.service uudelleen
Vaihe 6: Asunto + Hall
Asuminen
Tein ensin reiän rullalautaani nestekidenäyttöä, potentiometriä ja summeria varten. Sen jälkeen juotin LCD -näytön, potentiometrin ja summerin piirilevylle. Sitten käytin RPI: lle hyppylankaa, joka on 40 nastaa. Laitoin toisen puolen vadelma pi: hen ja toisen puolikkaan leikkasin, tämän puolen aiomme käyttää juottamiseen. Tiedostosta 'rpi-kaapeli' näet, mihin johdotus sinun täytyy juottaa.
Kotelossa käytin vanhaa kaarevaa laatikkoa, laitoin siihen joitakin reikiä ethernet -kaapelille ja hyppyjohdolle.
Pidän laatikon rullalaudan alla ruuvilla. Laatikon sisällä järjestin kaiken, joten se sopisi ja käytin myös ruuveja ja joitain kumia pitämään kaikki paikallaan. Tämä helpottaa tavaroiden poistamista.
RFID on asennettu laatikon valaistukseen ja sitä pidetään paikallaan vetoketjuilla. Yksi ongelma, jonka kohtasin, oli se, että joskus se ei skannannut, mutta muutamalla muutoksella sain sen toimimaan.
Hall -tehosteanturi
Porasin ensin reiän pyörääni ja laitoin siihen magneetin.
Sali on käytetty 3 hyppylankaa (uros -uros) tein ne PCB: lleni myös itse saliin. Asensin hallin anturin kuorma -autooni muutamalla vetoketjulla. Varmista, että magneetti ja anturi ovat kohdakkain, muuten se ei aina rekisteröi pulssia.
Vaihe 7: Sovelluksen käynnistäminen
Vaihe 1:
Kytke vadelma ja virtapankki.
Vaihe 2:
Odota, kunnes ohjelma käynnistyy, voit seurata tätä nestekidenäytöstä. Näet IP-osoitteen, siirry tähän IP-osoitteeseen.
Vaihe 3:
Luo käyttäjä, voit tehdä sen rekisteröitymällä. Sinun on skannattava merkki, jotta näet UID -tunnuksen nestekidenäytössä.
Vaihe 4:
Jos olet luonut käyttäjän, voit skannata tunnuksesi ja istunto alkaa.
Vaihe 5:
Lähde risteilylle
Vaihe 6:
Lopeta istunto skannaamalla merkki uudelleen
Vaihe 7:
Kirjaudu sisään nähdäksesi istuntosi ja yksityiskohtaiset tiedot istunnosta
Suositeltava:
DIY 37 Leds Arduino -rulettipeli: 3 vaihetta (kuvilla)
DIY 37 Leds Arduino Roulette Peli: Ruletti on kasinopeli, joka on nimetty ranskalaisen sanan mukaan, joka tarkoittaa pientä pyörää
Covid -suojakypärä, osa 1: johdanto Tinkercad -piireihin!: 20 vaihetta (kuvilla)
Covid -suojakypärä, osa 1: johdanto Tinkercad -piireihin!: Hei, ystävä! Tässä kaksiosaisessa sarjassa opimme käyttämään Tinkercadin piirejä - hauskaa, tehokasta ja opettavaista työkalua piirien toiminnasta! Yksi parhaista tavoista oppia on tehdä. Joten suunnittelemme ensin oman projektimme: th
Kuinka tehdä LED ICE SKATE: 6 vaihetta (kuvilla)
Kuinka tehdä LED ICE SKATE: Laitoin neopixel -LEDit luistimelleni. Joka kerta, kun Arduino -korttiin liitetty mikrofoni kuulee melua. Se lähettää erilaisia signaaleja LEDeille. Se on helppo tehdä, jopa aloittelijoille. Jaoin koodit ja ohjeet. Kokeillaan
Skate koko matkan!: 4 askelta
Skate koko matkan !: Johdanto: Kuten useimmat teistä rakastavat luistamista ja tiedämme, että luistelu on melko vaikeaa. Sinun on tasapainotettava itsesi, jotta voit ajaa laudalla, ja tarvitset myös paljon voimaa rullalaudan työntämiseen vasemmalla tai oikealla jalalla. Tässä sukupolvessa
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite