INHOUDSOPGAWE:
- Stap 1: Komponente
- Stap 2: Bedrading
- Stap 3: Databasiskema
- Stap 4: Stel Arduino Nano op
- Stap 5: Stel die Raspberry Pi op
- Stap 6: Behuising + saal
- Behuising
- Hall effek sensor
- Stap 7: Begin die app
Video: Skate-o-Meter: 7 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Ek is 'n student aan Howest Kortrijk. Om ons vaardighede te wys aan die lektore wat ons nodig gehad het om 'n projek te bou, het ek gekies om 'n kilometerteller en snelheidsmeter vir my skaatsplank te maak met 'n RFID -skandeerder. In hierdie instruksies wil ek sê hoe ek hierdie projek gemaak het.
Ek het hierdie idee gekry omdat ek daarvan hou om te skate en rond te vaar. Terwyl ek vaar, sal dit handig wees om te sien hoeveel ek afgelê het en my spoed sien.
Hou in gedagte dat dit 'n prototipe is.
Stap 1: Komponente
Komponente
Ek het die volgende komponente gebruik om hierdie projek te skep:
- Skaatsplank
- Potensiometer
- LCD
- Hall effek sensor
- Weerstand van 10k Ohm
- Framboos pi
- Arduino Nano
- Jumperdraad (vroulik tot manlik)
- Jumperdraad (Framboos Pi)
- Jumperdraad (manlik tot manlik)
- PCB
- RFID skandeerder
- RFID -kenteken
- Krag bank
Sien BillOfMaterials vir skakels en prys
Stap 2: Bedrading
Die saal het 3 penne: 'n VCC, 'n GND en 'n output. The grond gaan na 'n GND. Die VCC tot 3.3V en die uitset in hierdie voorbeeld gaan na GPIO 26. 'n Weerstand van 10K Ohm trek die uitset hoog.
Ek gebruik seriële kommunikasie via die USB tussen die framboospi en arduino nano om die kentekens te lees. Dit is nie op die foto nie, maar dit is nodig!
D9 RST (Herstel) D10 SDA (SS) (SPI SS) D11 MOSI (SPI MOSI) D12 MISO (SPI MISO) D13 SCK (SPI SCK) GND GND3.3V 3.3V
Stap 3: Databasiskema
My databasis het 3 tabelle:
- Gebruikers
- Sessie
- Data
Elke gebruiker kan data afsonderlik opspoor. 'N Sessie bevat data, sodat u weet hoe vinnig u op sekere punte gegaan het terwyl die sessie aan die gang was.
Stap 4: Stel Arduino Nano op
Plaas eers u arduino nano via u usb -kabel in u rekenaar. Kies die regte arduino en die regte usb -poort om op te laai.
Vervolgens moet ons die biblioteek byvoeg wat ek gebruik om die RFID -kenteken te lees. Laai 'rfid-master' af en gaan na skets, sluit biblioteek in en voeg dan. ZIP-biblioteek by. Gaan na die zip wat u pas afgelaai het en gebruik hierdie een, dit word outomaties geïnstalleer. Na die aflaai van my geredigeerde 'RFID_Read.ino', druk ctrl + O, voeg dieselfde tyd by en gaan na hierdie lêer en maak dit oop.
As u al die bogenoemde stappe gedoen het, kan u die lêer verifieer. As dit die eerste keer fout is, probeer dit net nog een keer. As dit slaag, kan u dit na u arduino oplaai. Deur die kortpad ctrl+shift+m te gebruik, kan u die seriële monitor oopmaak. U kan die lêer hier toets. As die toets slaag, kan u die arduino ontkoppel en dit in 'n usb -poort van die framboos pi aansluit
Stap 5: Stel die Raspberry Pi op
In hierdie stappe stel ons die framboos pi op as databasis en webserver.
IN HIERDIE VOORBEELD GEBRUIK EK DIE GEBRUIKER 'my' AS JY 'N ANDER GEBRUIKER GEBRUIK, MOET JY CONFIG -LêERS VERANDER, HOU DIT ONDERHOUDIG!
1. Skep 'n gebruiker:
Skep 'n veranderlike
pieter@rpipieter: ~ $ gebruiker = ek
Maak die gebruiker sudo en voeg by alle groepe
groepe = $ (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}
Teken in op die rekening
pieter@rpipieter: ~ $ su - me
Wagwoord: ek@my-rpi: ~ $
2. Maak verbinding met die WiFi
ek@rpipieter: ~ $ sudo -iroot@rpipieter: ~# echo 'Wagwoord' | wpa_passphrase 'Netwerknaam' >> /etc/wpa_supplicant/wpa_supplicant.conf root@rpipieter: ~# wpa_cli -i wlan0 herkonfigureer root@rpipieter: ~# afmeld
Kyk of die internet werk
root@rpipieter: ~# wget google.com
3. Maak die framboos-pi op datum en installeer die nodige pakkette
ek@my-rpi: ~ $ sudo apt update
my@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 herlaai -h nou
4. Kloon my github -bewaarplek
ek@rpipieter: ~ $ git kloon
me@rpipieter: ~ $ cd skate-o-meter/skateometer/
5. Maak die virtuele omgewing
Terwyl u hierdie opdragte uitvoer, sal daar baie pakkette geïnstalleer word, dit kan tyd neem.
me@rpipieter: ~/skate-o-meter/skateometer $ python3 -m pip install-upgrade pip setuptools wiel virtualenv
me@rpipieter: ~/skate-o-meter/skateometer $ python3 -m venv --system-site-packages env (env) me@rpipieter: ~/skate-o-meter/skateometer $ python -m pip installeer mysql- connector-python argon2-cffi Fleskolf-HTTPAuth-fles-MySQL mysql-connector-python passlib pyseriale pyjwt RPi. GPIO
6. Die skep van die databasis en gebruikers
Ons gebruik mysql databasis
pieter@rpipieter: ~/skate-o-meter/skateometer $ cd
pieter@rpipieter: ~ $ sudo mysql
Kopieer dan, plak dit
TOEEKEN SELECT, INSERT, UPDATE, DELETE ON *. * TO 'som-data'@'localhost'; STEL WOORDWOORD VIR 'som-data'@'localhost' = PASSWORD ('sensor9810'); kies * uit mysql.user; SKEP GEBRUIKER 'som-admin'@'localhost' IDENTIFIED BY 'admin9810'; SKEP GEBRUIKER 'som-web'@'localhost' IDENTIFICED BY 'web9810'; SKEP GEBRUIKER 'som-sensor'@'localhost' IDENTIFIED BY 'sensor9810'; SKEP DATABASIS skateometerdb; TOEEN ALLE VOORREGTE OP skateometerdb.* Aan 'som-admin'@'localhost' MET TOELATINGSOPTIE; TOEEKEN SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-web'@'localhost'; TOEEKEN SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-sensor'@'localhost'; FLUSH VOORREGTE;
Vervolgens gaan ons die bestaande databasiskema met verhoudings byvoeg.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo mysql <sql/skateometerdb_dump-withoutdata.sql
7. Dienste
Hier kopieer ons ons konfigurasielêers en herlaai ons die gids, sodat ons die dienste kan aktiveer
me@rpipieter: ~/skate-o-meter/skateometer $ sudo cp conf/som-*. service/etc/systemd/systemme@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl daemon-herlaai
Nou gaan ons die dienste aktiveer, sodat elke keer as ons met die framboos pi begin, dit outomaties begin.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl aktiveer som-flask.service
Geskep 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 aktiveer som-data.service Geskep symlink /etc/systemd/system/multi-user.target.wants/som-data.service →/etc/systemd/ stelsel/som-data.service. me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl begin som-data.service me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl begin 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 herlaai nginx.service
Stap 6: Behuising + saal
Behuising
Eers het ek 'n gat in my skaatsplank gemaak vir die LCD, die potensiometer en die zoemer. Daarna het ek die LCD, die potensiometer en die zoemer op die printplaat soldeer. Toe gebruik ek 'n jumperwire vir die RPI, die een met 40 penne. Ek sit die een kant in die framboos pi en die ander helfte sny ek, hierdie kant gaan ons gebruik om te soldeer. In die lêer 'rpi-kabel' kan u sien waar u die draad moet soldeer.
Vir die omhulsel het ek 'n ou buisboks gebruik, ek het 'n paar gate daarin gesit vir 'n ethernetkabel en vir die jumperwire in die boks.
Ek hou die boks onder die skaatsplank met 'n skroef. Binne -in die boks het ek alles gereël, sodat dit pas, en ek het ook skroewe en 'n paar rubbers gebruik om alles in plek te hou. Dit maak dit makliker om dinge uit te haal.
Die RFID is op die verpakking van die boks gemonteer en word met ritsbande vasgehou; een probleem wat ek ondervind het, was dat dit soms nie geskandeer het nie, maar met 'n paar veranderinge het ek dit laat werk.
Hall effek sensor
Eers het ek 'n gat in my wiel geboor en 'n magneet daarin gesit.
Vir die saal word 3 jumperwires (manlik tot manlik) gebruik; ek het dit ook op my PCB gesoldeer, asook op die saal self. Ek het die gangsensor op my vragmotor gemonteer met 'n paar ritsbande. Maak seker dat die magneet en die sensor goed in lyn is, anders registreer dit nie altyd die pols nie.
Stap 7: Begin die app
Stap 1:
Koppel die framboos en kragbank aan.
Stap 2:
Wag totdat die program begin, u kan dit op die LCD volg. U sal die IP-adres sien, gaan na hierdie IP-adres.
Stap 3:
Skep 'n gebruiker, u kan dit doen deur te registreer. U moet die kenteken skandeer om u UID van die kenteken op die LCD te sien.
Stap 4:
As u 'n gebruiker geskep het, kan u u kenteken skandeer en 'n sessie sal begin.
Stap 5:
Gaan rondvaart
Stap 6:
Skandeer die kenteken weer om die sessie te stop
Stap 7:
Meld aan om u sessie en gedetailleerde data van die sessie te sien
Aanbeveel:
Neem wonderlike foto's met 'n iPhone: 9 stappe (met foto's)
Neem wonderlike foto's met 'n iPhone: die meeste van ons dra deesdae 'n slimfoon oral, daarom is dit belangrik om te weet hoe u u slimfoonkamera kan gebruik om fantastiese foto's te neem! Ek het net 'n paar jaar 'n slimfoon gehad, en ek hou daarvan om 'n ordentlike kamera te hê om dinge te dokumenteer wat ek
Howto: Raspberry PI 4 Headless (VNC) installeer met Rpi-imager en foto's: 7 stappe (met foto's)
Howto: Raspberry PI 4 Headless (VNC) installeer met Rpi-imager en foto's: ek is van plan om hierdie Rapsberry PI te gebruik in 'n klomp prettige projekte in my blog. Kyk gerus daarna. Ek wou weer my Raspberry PI gebruik, maar ek het nie 'n sleutelbord of muis op my nuwe plek gehad nie. Dit was 'n rukkie sedert ek 'n Framboos opgestel het
Hoe om LED ICE SKATE te maak: 6 stappe (met foto's)
Hoe om LED -ysskaats te maak: ek sit neopixel -LED's op my ysskaats. Elke keer as die mikrofoon, wat met die Arduino -bord verbind is, 'n raserige geluid hoor. Dit stuur verskillende seine na LED's. Dit is maklik om te maak, selfs vir beginners. Ek het kodes en instruksies gedeel. Kom ons probeer
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino - Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter - Rc Helikopter - Rc -vliegtuig met Arduino: 5 stappe (met foto's)
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino | Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter | Rc Helikopter | Rc -vliegtuig met Arduino: om 'n Rc -motor te bestuur | Quadcopter | Drone | RC -vliegtuig | RC -boot, ons het altyd 'n ontvanger en sender nodig, veronderstel dat ons vir RC QUADCOPTER 'n 6 -kanaals sender en ontvanger nodig het en dat die tipe TX en RX te duur is, so ons maak een op ons
Hoe om 'n rekenaar met maklike stappe en foto's uitmekaar te haal: 13 stappe (met foto's)
Hoe om 'n rekenaar uitmekaar te haal met eenvoudige stappe en foto's: dit is 'n instruksie oor hoe om 'n rekenaar uitmekaar te haal. Die meeste basiese komponente is modulêr en kan maklik verwyder word. Dit is egter belangrik dat u daaroor georganiseerd is. Dit sal u verhinder om onderdele te verloor, en ook om die montering weer