Mündəricat:
- Addım 1: Komponentlər
- Addım 2: Kabel çəkmə
- Addım 3: Veritabanı Sxemi
- Addım 4: Arduino Nanonu konfiqurasiya edin
- Addım 5: Raspberry Pi -ni konfiqurasiya edin
- Addım 6: Mənzil + Salon
- Mənzil
- Hall effekti sensoru
- Addım 7: Tətbiqi işə salın
Video: Skate-o-Meter: 7 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Howest Kortrijk tələbəsiyəm. Bir layihə qurmaq üçün lazım olan müəllimlərə bacarıqlarımızı göstərmək üçün, RFID skaneri olan skeytbordum üçün odometr və sürətölçən yaratmağı seçdim. Bu təlimatda bu layihəni necə hazırladığımı söyləyəcəyəm.
Bu fikri düşündüm, çünki konki sürməyi və gəzməyi sevirəm. Gəzərkən, nə qədər məsafə qət etdiyimi və sürətimi görmək mənim üçün əlverişli olardı.
Bunun bir prototip olduğunu unutmayın.
Addım 1: Komponentlər
Komponentlər
Bu layihəni yaratmaq üçün aşağıdakı komponentlərdən istifadə etdim:
- Skeytbord
- Potensialiometr
- LCD
- Hall effekti sensoru
- 10k Ohm rezistor
- Moruq pi
- Arduino Nano
- Jumper teli (Dişi -kişi)
- Jumper teli (Raspberry Pi)
- Jumper teli (kişidən kişiyə)
- PCB
- RFID skaner
- RFID nişanı
- Powerbank
Bağlantılar və qiymət üçün BillOfMateriallara baxın
Addım 2: Kabel çəkmə
Zalda 3 pin var: VCC, GND və çıxış. Zəmin GND -ə gedir. VCC 3.3V -ə qədərdir və bu nümunədəki çıxış GPIO 26 -ya gedir. 10K Ohm rezistor çıxışı yüksək çəkir.
Nişanları oxumaq üçün moruq pi və arduino nano arasında USB üzərindən serial ünsiyyətdən istifadə edirəm. Bu şəkil yoxdur, amma tələb olunur!
D9 RST (Sıfırla) D10 SDA (SS) (SPI SS) D11 MOSI (SPI MOSI) D12 MISO (SPI MISO) D13 SCK (SPI SCK) GND GND3.3V 3.3V
Addım 3: Veritabanı Sxemi
Verilənlər bazamda 3 cədvəl var:
- İstifadəçilər
- Sessiya
- Məlumat
Hər bir istifadəçi məlumatları ayrı -ayrılıqda izləyə bilər. Bir seansın məlumatları var, buna görə sessiya davam edərkən müəyyən nöqtələrə nə qədər sürətli getdiyinizi bilirsiniz.
Addım 4: Arduino Nanonu konfiqurasiya edin
Əvvəlcə USB kabel vasitəsilə arduino nanonu kompüterinizə qoyun. Yükləmək üçün doğru arduino və doğru usb portunu seçin.
Sonra RFID nişanını oxumaq üçün istifadə etdiyim kitabxananı əlavə etməliyik. 'Rfid-master' yükləyin və eskizə keçin, kitabxananı daxil edin və sonra. ZIP kitabxana əlavə edin. Yeni yüklədiyiniz zipə gedin və bundan istifadə edin, avtomatik quraşdırılacaq. Bundan sonra redaktə etdiyim 'RFID_Read.ino' düyməsini basın ctrl + O eyni vaxt əlavə edin və bu fayla gedin və açın.
Yuxarıda göstərilən bütün addımları yerinə yetirmiş olsanız, faylı yoxlaya bilərsiniz. İlk dəfə səhv edirsə, bir daha cəhd edin. Bu uğurlu olarsa, arduino -ya yükləyə bilərsiniz. Ctrl+shift+m qısayolundan istifadə edərək seriyalı monitoru aça bilərsiniz. Faylı burada sınaya bilərsiniz. Test müvəffəqiyyətli olarsa, arduino -nu çıxarıb moruq pi -nin usb portuna qoşa bilərsiniz.
Addım 5: Raspberry Pi -ni konfiqurasiya edin
Bu addımlarda, moruq pi -ni verilənlər bazası və veb -server olaraq quracağıq.
BU NÜMUNƏDƏ İSTİFADƏÇİ 'MƏNİ' İSTİFADƏ ETDİRİRSİNİZ KONFİG DOSYALARINI DƏYİŞTİRMƏK GERƏKDİR, BU ŞƏHƏRDƏ SAXLAYIN!
1. İstifadəçi yaradın:
Bir dəyişən yaradın
pieter@rpipieter: ~ $ user = mən
İstifadəçini sudo etmək və bütün qruplara əlavə etmək
qruplar = $ (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}
Hesaba daxil olun
pieter@rpipieter: ~ $ su - mən
Şifrə: me@my-rpi: ~ $
2. WiFi ilə qoşulun
me@rpipieter: ~ $ sudo -iroot@rpipieter: ~# echo 'Şifrə' | wpa_passphrase 'Şəbəkə Adı' >> /etc/wpa_supplicant/wpa_supplicant.conf root@rpipieter: ~# wpa_cli -i wlan0 root@rpipieter'i yenidən konfiqurasiya edin: ~# çıxış
İnternetin işlədiyini yoxlayın
kök@rpipieter: ~# wget google.com
3. Moruq pi-ni müasir etmək və lazım olan paketləri quraşdırmaq
me@my-rpi: ~ $ sudo apt yeniləmə
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 yenidən başladın -h indi
4. Github depomu klonlaşdırın
me@rpipieter: ~ $ git klonu
me@rpipieter: ~ $ cd skate-o-meter/skateometer/
5. Virtual mühitin yaradılması
Bu əmrləri yerinə yetirərkən bir çox paket qurulacaq, buna bir az vaxt lazım ola bilər.
me@rpipieter: ~/skate-o-meter/skateometer $ python3 -m pip quraşdırın-pip setuptools təkərini təkmilləşdirin 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- bağlayıcı-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib pyserial pyjwt RPi. GPIO
6. Verilənlər bazasının və istifadəçilərin yaradılması
MySQL verilənlər bazasından istifadə edirik
pieter@rpipieter: ~/skate-o-meter/skateometer $ cd
pieter@rpipieter: ~ $ sudo mysql
Sonra kopyalayın, yapışdırın
GRANT SELECT, INSERT, UPDATE, DELETE ON *. * TO 'som-data'@'localhost'; 'Som-data'@'localhost' = PASSWORD ('sensor9810') ÜÇÜN PAROLU AYARLAYIN; mysql.user -dən * seçin; 'Som9 admin'@'localhost' İSTİFADƏÇİSİ YARADIN 'admin9810'; 'Som9-web'@'localhost' İSTİFADƏÇİSİNİ 'web9810' tərəfindən təyin edin; İstifadəçi yarat 'som-sensor'@'localhost' IDENTIFIED BY 'sensor9810'; DATABASE CREATE skateometerdb; Skateometerdb-də BÜTÜN İSTİFADƏLƏRİ Qrant edin.* QRANT SEÇİMİ İLƏ 'som-admin'@'localhost' a; GRATE SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb.* TO 'som-sensor'@'localhost'; FLUSH İSTİFADƏLƏRİ;
Sonra əlaqələr ilə mövcud verilənlər bazası sxemini əlavə edəcəyik.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo mysql <sql/skateometerdb_dump-withoutdata.sql
7. Xidmətlər
Burada konfiqurasiya sənədlərimizi kopyalayırıq və qovluqları yenidən yükləyirik ki, xidmətləri təmin edək
me@rpipieter: ~/skate-o-meter/skateometer $ sudo cp conf/som-*. service/etc/systemd/systemme@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl daemon-reload
İndi xidmətləri işə salacağıq ki, hər dəfə moruq pi -yə başlayanda avtomatik olaraq onunla işə başlayaq.
me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl som-flask.service imkan verir
Symetlink /etc/systemd/system/multi-user.target.wants/som-flask.service → /etc/systemd/system/som-flask.service yaradıldı. me@rpipieter: ~/skate-o-meter/skateometer $ sudo systemctl som-data.service-ə imkan yaradır. 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@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 -metr/skateometer $ sudo systemctl nginx.service'i yenidən başladın
Addım 6: Mənzil + Salon
Mənzil
Əvvəlcə skeytbordumda LCD, potansiometr və səs siqnalı üçün bir deşik etdim. Bundan sonra, PCB -də LCD, potansiometr və səs siqnalı lehim etdim. Sonra 40 pinli RPI üçün bir keçid teli istifadə etdim. Bir tərəfini moruq pi və digər yarısını kəsdim, bu tərəfi lehimləmək üçün istifadə edəcəyik. 'Rpi-kabel' faylında hansı teli lehimləmək lazım olduğunu görə bilərsiniz.
Köhnə bir əyri qutudan istifadə etdiyim korpus üçün, bir ethernetcable üçün bir neçə deşik qoydum və jumper telinin qutuya girməsi üçün.
Qutunu skeytbordun altında bir az vida ilə saxlayıram. Qutunun içərisində hər şeyi düzəltdim, buna görə də hər şeyi yerində saxlamaq üçün vintlər və bəzi rezinlərdən istifadə edərdim. Bu, əşyaların çıxarılmasını asanlaşdırır.
RFID qutunun işığına quraşdırılmışdır və ziptires ilə yerində saxlanılır, qarşılaşdığım bir problem bəzən taramaması idi, amma bəzi dəyişikliklərlə onu işə saldım.
Hall effekti sensoru
Əvvəlcə təkərimdə bir deşik açdım və içinə maqnit qoydum.
Zal üçün 3 tullanan tel istifadə olunur (kişidən kişiyə), onları PCB -də, həm də salonun özündə lehimləmişəm. Zal sensorunu yük maşınıma bir az ziptir ilə bağladım. Maqnit və sensorun yaxşı hizalandığından əmin olun, əks halda nəbzi həmişə qeyd etməyəcək.
Addım 7: Tətbiqi işə salın
Addım 1:
Moruq və güc bankını qoşun.
Addım 2:
Proqram başlayana qədər gözləyin, bunu LCD -də izləyə bilərsiniz. IP ünvanını görəcəksiniz, bu IP ünvanına gedin.
Addım 3:
İstifadəçi yaradın, qeydiyyatdan keçərək bunu edə bilərsiniz. Nişanın UID -ini LCD -də görmək üçün nişanı skan etməlisiniz.
Addım 4:
Bir istifadəçi yaratmısınızsa, nişanınızı skan edə bilərsiniz və bir sessiya başlayacaq.
Addım 5:
Ətrafınızda gəzintiyə çıxın
Addım 6:
Sessiyanı dayandırmaq üçün nişanı yenidən tarayın
Addım 7:
Sessiyanızı və sessiyadan ətraflı məlumatları görmək üçün daxil olun
Tövsiyə:
Bir addım sayğacı necə etmək olar ?: 3 addım (şəkillərlə)
Addım Sayğacı Necə Hazırlanır ?: Bir çox idman növlərində yaxşı çıxış edirdim: gəzmək, qaçmaq, velosiped sürmək, badminton oynamaq və s. Yaxşı, qarın qarnına baxın …… Yaxşı, hər halda, məşq etmək üçün yenidən başlamağa qərar verdim. Hansı avadanlıqları hazırlamalıyam?
LED Buz Skate necə hazırlanır: 6 addım (şəkillərlə)
LED Buz Pateni Necə Hazırlanır: Buz patenimin üstünə neopixel LEDlər qoyuram. Arduino lövhəsi ilə əlaqəli mikrofon hər dəfə səs -küylü bir səs eşidir. LED -lərə müxtəlif siqnallar göndərir. Hətta yeni başlayanlar üçün də hazırlamaq asandır. Kodları və təlimatları paylaşdım. Gəlin cəhd edək
Addım sayğacı - Mikro: Bit: 12 addım (şəkillərlə)
Step Counter - Micro: Bit: Bu layihə bir addım sayğacı olacaq. Addımlarımızı ölçmək üçün Micro: Bit -ə quraşdırılmış akselerometr sensorundan istifadə edəcəyik. Micro: Bit hər dəfə silkələnəndə sayına 2 əlavə edəcəyik və ekranda göstərəcəyik
Arduino Uno ilə Akustik Levitasiya Addım-addım (8 addım): 8 addım
Arduino Uno ilə Akustik Levitasiya Adım Adım (8 addım): ultrasəs səs ötürücüləri L298N Dc dişi qadın adapteri kişi dc pinli Arduino UNOBreadboard Bu necə işləyir: Əvvəlcə Arduino Uno-ya kod yükləyirsiniz (rəqəmsal ilə təchiz edilmiş bir mikro nəzarətçidir) və kodu çevirmək üçün analog portlar (C ++)
Asan addımlar və şəkillərlə kompüteri necə sökmək olar: 13 addım (şəkillərlə)
Asan Adımlar və Şəkillərlə Kompüteri Sökmək Necə: Bu, kompüterin sökülməsi ilə bağlı təlimatdır. Əsas komponentlərin çoxu moduldur və asanlıqla çıxarılır. Bununla birlikdə, bu mövzuda təşkilatlanmanız vacibdir. Bu, hissələri itirməməyinizə və eyni zamanda montajı asanlaşdırmağa kömək edəcək