Mündəricat:

Paylaşılan Smartbike: 12 addım (şəkillərlə)
Paylaşılan Smartbike: 12 addım (şəkillərlə)

Video: Paylaşılan Smartbike: 12 addım (şəkillərlə)

Video: Paylaşılan Smartbike: 12 addım (şəkillərlə)
Video: Yapay Zeka, Kodlama ve Halocode 2024, Iyul
Anonim
Paylaşılan Smartbike
Paylaşılan Smartbike
Paylaşılan Smartbike
Paylaşılan Smartbike

Velosipedimi hər dəfə istifadə edəndə qaranlıq düşəndə işıqlarımı yandırmağı unuturam. Həm də velosipedimdə nə qədər sürətlə getdiyimi bilməyə imkanım yoxdur.

Buna görə aşağıdakıları izləyən paylaşılan bir ağıllı velosiped hazırlamaq qərarına gəldim.

  • Sürət
  • Yer
  • Velosipeddən nə qədər istifadə edirsən

Həm də avtomatik olaraq işıqları yandırır və ya söndürür. RFID skanerindən istifadə etdim ki, başqası məlumatımı dəyişmədən velosipeddən istifadə edə bilsin.

Github -a bağlantı.

Təchizat

  • Raspberry Pi 3 (32, 49 avro)
  • SD Kart (RPi üçün) (€ 13, 99)
  • GPS NEO 6M (sürət və yer üçün) (15, 99 avro)
  • Anker PowerCore 10400mAh (29, 99 avro)
  • RFID RC522 (5, 49 avro)
  • 16x2 LCD (9, 99 €)
  • Elegoo Uno R3 Board (9, 34 avro)
  • LDR (1, 50 avro)
  • MCP3008 (ADC) (5, 98 avro)
  • Yenidən işlənmiş işıq
  • Mənzil üçün taxta (~ 15 €, 00)
  • Kabellər (~ 6 €, 00)

Ümumi qiymət etiketi: 145.76 €

Addım 1: Dövrə edin

Dövrə edin
Dövrə edin
Dövrə edin
Dövrə edin

Əvvəlcə hər şeyi bir yerə yığmalısınız. Darıxdırıcı bir sxem daxil etdim.

Qeyd: RFID skaneri kimi bəzi komponentlərin lehimlənməsi lazımdır.

Addım 2: Python qurun

Python qurun
Python qurun

Bu layihə üçün python 3 istifadə edəcəyəm və kodu bir python serveri ilə işlədəcəyəm. Githubumu kodumla əlaqələndirəcəyəm.

Əvvəlcə Raspberry Pi ilə Ayarlar> Quraşdırma, Çıxarma, Yerləşdirmə> Dağıtım vasitəsilə əlaqə qurmalısınız. Sonra tələb olunan bütün paketləri olan bir tərcüməçi hazırlamalısınız. Raspberry Pi -də python 3.5 istifadə edirəm.

Tərcüməçi etdikdən sonra yeni bir layihə hazırlaya və yeni layihə üçün hazırladığınız tərcüməçini seçə bilərsiniz. Sonra PC və RPi üzərindəki faylları harada saxlayacağınızı seçməlisiniz.

Addım 3: Məlumatları oxuyun

Məlumatları oxuyun
Məlumatları oxuyun

Dövrəni və bütün komponentləri işlədikdən sonra sensorlardakı məlumatları oxumalısınız. Layihəm Python 3 istifadə edilərək hazırlanmışdır. Pythonda siniflərdən istifadə edərək sensorlardakı məlumatların çoxunu oxudum.

  • RFID skaneri arduino ilə birlikdə istifadə olunur (burada necə istifadə ediləcəyi haqqında ən çox məlumat). Arduino ilə skanerdəki məlumatları oxudum və Serial USB ilə RPi -yə göndərdim.
  • GPS modulu eyni zamanda seriyalı rabitədən də istifadə edir. GPS -in RPi -yə göndərdiyi məlumatlar o qədər də yaxşı formatlanmamışdır ki, məlumatları təhlil etmək və istifadə etməyi çox asanlaşdırmaq üçün kitabxanadan istifadə etmişəm. (GPS məlumatları haqqında daha çox məlumat).
  • LDR -dən analoq dəyərlər mcp3008 (adc) istifadə edərək çevrilir, sonra dəyəri faizə çevirirəm.

Qeyd: Bir python serveri işləyərkən daim məlumat əldə etmək üçün pythonda 'while loops' istifadə etmək istəyirsinizsə. İş parçacığı istifadə etməlisiniz (işləmə haqqında daha çox məlumat). Yivdən istifadə etmək asandır.

Addım 4: verilənlər bazası (mySQL)

Verilənlər bazası (mySQL)
Verilənlər bazası (mySQL)

Məlumatlarınızı sensorlardan aldığınız üçün məlumatları saxlamaq üçün bir yerə ehtiyacınız var. Məlumatları mySQL -də əlaqəli bir verilənlər bazasında saxlayacağıq.

Bunun üçün RPi -də verilənlər bazasını işə salıram ki, mənim RPi -də mariaDB quraşdırılsın. MariaDB qurduqdan və qurduqdan sonra RPi üzərindəki verilənlər bazası ilə əlaqə qurmaq üçün kompüterinizdəki mySQL iş masasından istifadə edə bilərsiniz.

PC -də ERD etməlisiniz; irəli mühəndis ERD və verilənlər bazasını ixrac. Daha sonra mySQL iş tezgahı vasitəsilə RPi üzərindəki zibili (sxem yaratmağı unutmayın) idxal edə bilərsiniz.

Qeyd: 'Bike_has_User' cədvəli tələb olunmur və yalnız birdən çox velosiped istifadə etməyi planlaşdırırsınızsa istifadə ediləcək. 'Bike_has_User' cədvəlini ata və İstifadəçi cədvəlini 'Məlumat Tarixi' ilə əlaqələndirə bilərsiniz.

Addım 5: Python -u məlumat bazası ilə əlaqələndirin

Python -u məlumat bazası ilə əlaqələndirin
Python -u məlumat bazası ilə əlaqələndirin

Veritabanınızı qurduqdan sonra pythonunuzu verilənlər bazası ilə əlaqələndirə bilərsiniz. Verilənlər bazasına (ekranın sağında) vurun və yeni bir məlumat mənbəyi əlavə edin.

Verilənlər bazası və python skripti RPi üzərində işləyir, buna görə localhost IP -dən istifadə edin. MariaDB qurarkən əvvəllər yaratdığınız istifadəçidən istifadə edin.

Addım 6: Məlumatları Verilənlər Bazasına göndərin

Verilənlər Bazasına Məlumat Göndərin
Verilənlər Bazasına Məlumat Göndərin

Hər şeyi qurduqdan sonra məlumat bazasına məlumat göndərməyə başlaya bilərsiniz. Bunun üçün bir sinif köməkçilərindən istifadə etdim. Bunun üçün pythonda verilənlər bazası (githubuma baxın).

Fotoşəkildə bəzi kod nümunələri göstərilir.

Addım 7: Məlumatlardan istifadə edin

Məlumatlardan istifadə edin
Məlumatlardan istifadə edin

Sinif köməkçiləri. Database ilə verilənlər bazasına məlumat daxil edə və ya verilənlər bazasından məlumat əldə edə bilərsiniz.

İndi hər şey işlədiyi üçün verilənlər bazasındakı məlumatları bir veb saytında və ya istədiyiniz yerdə göstərmək üçün istifadə edə bilərsiniz.

Addım 8: Mənzil: Alt

Mənzil: Alt
Mənzil: Alt

Mənzil haqqında

Nəhayət, bu layihə üçün korpus ağacdan hazırlanmışdır (310x130x110 mm). Powerbank və çörək taxtası istisna olmaqla, əksər komponentlər taxta ilə vidalanmışdır.

Komponentləri lehimləsəniz, korpusu daha kiçik edə bilərsiniz. Korpusu velosipedə etibarlı şəkildə bağlamaq üçün bir yol daxil etmədim, amma bir çox variant var.

Mənzilin hazırlanması

Mənzilin alt hissəsini düzəltməklə başlamalısınız. Taxta bir parça gördüm (130x310 mm). Sonra RPi vida ilə bağlayın və çörək taxtasını alt hissəyə yapışdırın.

Qeyd: Korpusun üst hissəsi üçün eyni hissəni düzəldə bilərsiniz

Addım 9: Mənzil: Kiçik Tərəflər

Mənzil: Kiçik tərəflər
Mənzil: Kiçik tərəflər

Alt hissəni bitirdikdə. Yan hissələri kəsməyə başlaya bilərsiniz. Kiçik tərəfləri düzəltməklə başlayın.

Əvvəlcə kiçik tərəfləri yapışdırmalısınız. Bütün hissələri birləşdirmək üçün əlavə bir taxta parçası istifadə etdim, bu əlavə parça işi asanlaşdırır.

Addım 10: Mənzil: Böyük tərəflər

Mənzil: Böyük tərəflər
Mənzil: Böyük tərəflər

İndi daha böyük tərəfləri düzəltməlisiniz. Yanları bir daha gördük və əlavə ağac parçası istifadə edərək alt hissəyə yapışdırın.

Addım 11: LCD və LDR üçün bir delik əlavə edin

LCD və LDR üçün bir delik əlavə edin
LCD və LDR üçün bir delik əlavə edin

IP ünvanını görə biləcəyiniz və istifadəçinin tarayıb -axtarmadığını göstərə biləcəyiniz üçün LCD üçün dəlik açmalısınız.

Çuxurun nə qədər böyük olacağına qərar vermək üçün LCD ölçülərindən istifadə edin.

LCD -ni taxdıqdan sonra LDR -nin korpusdan kənarda olduğundan əmin olmalısınız. Kiçik bir çuxur istifadə etdim ki, LDR gün işığını görə bilsin.

Addım 12: Arduino və RFID Skanerini Yan tərəfə bağlayın

Arduino və RFID Skanerini yan tərəfə bağlayın
Arduino və RFID Skanerini yan tərəfə bağlayın

Korpus tamamlandıqdan sonra yenə də arduino və RFID skanerini bağlamalısınız. Otağınız olan hər yerə yapışdıra bilərsiniz. İstifadəçinin taradığını və ya çıxdığını görə bilməsi üçün RFID skanerini LCD altına bağlamağı məsləhət görürəm.

Tövsiyə: