İçindekiler:

Paylaşılabilir Akıllı Bisiklet: 12 Adım (Resimlerle)
Paylaşılabilir Akıllı Bisiklet: 12 Adım (Resimlerle)

Video: Paylaşılabilir Akıllı Bisiklet: 12 Adım (Resimlerle)

Video: Paylaşılabilir Akıllı Bisiklet: 12 Adım (Resimlerle)
Video: BİSİKLET HEDİYE ALAN ÇOCUGUN MUTLULUĞU 2024, Temmuz
Anonim
Paylaşılabilir Akıllı Bisiklet
Paylaşılabilir Akıllı Bisiklet
Paylaşılabilir Akıllı Bisiklet
Paylaşılabilir Akıllı Bisiklet

Bisikletimi ne zaman kullansam hava karardığında ışıkları açmayı unutuyorum. Ayrıca bisikletimde ne kadar hızlı gittiğimi bilmenin bir yolu yok.

Bu yüzden aşağıdakileri takip eden paylaşılabilir bir akıllı bisiklet yapmaya karar verdim:

  • Hız
  • Konum
  • bisikleti ne kadar süredir kullanıyorsun

Ayrıca ışıkları otomatik olarak açar veya kapatır. Bir başkasının verilerimi değiştirmeden bisikleti kullanabilmesi için bir RFID tarayıcı kullandım.

Github'uma bağlantı.

Gereçler

  • Ahududu Pi 3 (32 €, 49)
  • SD Kart (RPi için) (13, 99 €)
  • GPS NEO 6M (hız ve konum için) (15, 99 €)
  • Anker PowerCore 10400mAh (29, 99 €)
  • RFID RC522 (5 €, 49)
  • 16x2 LCD (9, 99 €)
  • Elegoo Uno R3 Board (9 €, 34)
  • LDR (1, 50 €)
  • MCP3008 (ADC) (5 €, 98)
  • Geri dönüştürülmüş ışık
  • Konut için ahşap (~15, 00€)
  • Kablolar (~ €6, 00)

Toplam fiyat etiketi: 145,76 €

Adım 1: Devreyi Yapın

Devreyi Yap
Devreyi Yap
Devreyi Yap
Devreyi Yap

İlk önce her şeyi bir araya getirmeniz gerekecek. Bir fritzing şeması ekledim.

Not: RFID tarayıcı gibi bazı bileşenlerin lehimlenmesi gerekir.

2. Adım: Python'u Kurun

Python'u Kur
Python'u Kur

Bu proje için python 3 kullanacağım ve kodu bir python sunucusuyla çalıştıracağım. Github'ımı kodumla bağlayacağım.

Öncelikle Raspberry Pi'niz ile Ayarlar > Oluştur, Yürüt, Dağıt > Dağıtım yoluyla bağlantı kurmanız gerekir. Ardından, gerekli tüm paketlerle bir tercüman yapmanız gerekir. Raspberry Pi'mde python 3.5 kullanıyorum.

Tercümanı yaptığınızda yeni bir proje yapabilir ve proje için yeni yaptığınız tercümanı seçebilirsiniz. Ardından, PC'nizde ve RPi'nizde dosyaları nereye kaydedeceğinizi seçmeniz gerekir.

3. Adım: Verileri Okuyun

Verileri Okuyun
Verileri Okuyun

Devreyi yaptıktan ve her bileşen çalıştıktan sonra sensörlerden gelen verileri okumanız gerekir. Projem Python 3 kullanılarak yapıldı. Python'da sensörlerden gelen verilerin çoğunu sınıfları kullanarak okudum.

  • RFID tarayıcı, arduino ile birlikte kullanılır (burada nasıl kullanılacağına dair çoğu bilgi). Arduino ile tarayıcıdan gelen verileri okuyup Seri USB ile RPi'ye gönderiyorum.
  • GPS modülü de seri iletişim kullanıyor. GPS'in RPi'ye gönderdiği veriler o kadar iyi biçimlendirilmemiş Verileri ayrıştırmak ve kullanımı çok daha kolay hale getirmek için bir kitaplık kullandım. (GPS verileri hakkında biraz daha bilgi).
  • LDR'den gelen analog değerler, mcp3008 (bir adc) kullanılarak dönüştürülür, ardından değeri yüzdeye dönüştürürüm.

Not: Bir python sunucusunu çalıştırırken sürekli veri almak için python'da 'while döngüleri' kullanmak istiyorsanız. Diş çekme kullanmanız gerekecek (diş açma hakkında daha fazla bilgi). Diş açma kullanımı kolaydır.

Adım 4: Veritabanı (mySQL)

Veritabanı (mySQL)
Veritabanı (mySQL)

Artık sensörlerden verileriniz olduğuna göre, verileri depolamak için bir yere ihtiyacınız var. Verileri mySQL'de ilişkisel bir veritabanında saklayacağız.

Bunun çalışması için veritabanını RPi'mde çalıştırıyorum, mariaDB'nin RPI'mda kurulu olması gerekiyor. MariaDB'yi kurduktan ve kurduktan sonra, RPi'deki veritabanınıza bağlanmak için PC'nizdeki mySQL tezgahını kullanabilirsiniz.

ERD'yi PC'de yapmanız gerekecek; ERD'yi ileri mühendisliğe tabi tutun ve veritabanını dışa aktarın. Ardından, mySQL tezgahı aracılığıyla RPi'deki dökümü (şema oluşturmayı unutmayın) içe aktarabilirsiniz.

Not: 'Bike_has_User' tablosu gerekli değildir ve yalnızca birden fazla bisiklet kullanmayı planlıyorsanız kullanılacaktır. 'Bike_has_User' tablosunu bırakabilir ve User tablosunu 'Datahistory' ile bağlayabilirsiniz.

Adım 5: Python'unuzu Veritabanına Bağlayın

Python'unuzu Veritabanına Bağlayın
Python'unuzu Veritabanına Bağlayın

Artık veritabanınızı kurduğunuza göre, python'unuzu veritabanına bağlayabilirsiniz. Veritabanına tıklayın (ekranın sağında) ve yeni bir veri kaynağı ekleyin.

Veritabanı ve python betiği RPi üzerinde çalışır, bu nedenle localhost IP'sini kullanın. MariaDB'yi kurarken daha önce oluşturduğunuz kullanıcıyı kullanın.

Adım 6: Veri Tabanına Veri Gönderin

Veritabanına Veri Gönder
Veritabanına Veri Gönder

Her şeyi ayarladığınızda, veri tabanına veri göndermeye başlayabilirsiniz. Bunun için python'da bir helpers. Database sınıfı kullandım (bkz. github).

Fotoğrafta bazı örnek kodlar gösterilmektedir.

7. Adım: Verileri Kullanın

Verileri Kullan
Verileri Kullan

helpers. Database sınıfı ile veri tabanına veri ekleyebilir veya veri tabanından veri alabilirsiniz.

Artık her şey çalıştığına göre, veritabanındaki verileri bir web sitesinde veya istediğiniz yerde görüntülemek için kullanabilirsiniz.

Adım 8: Muhafaza: Alt

Konut: Alt
Konut: Alt

konut hakkında

Son olarak bu projenin gövdesi ahşaptan yapılmıştır (310x130x110 mm). Güç bankası ve devre tahtası dışındaki bileşenlerin çoğu ahşaba vidalanmıştır.

Bileşenleri lehimlerseniz muhafazayı küçültebilirsiniz. Muhafazayı bisiklete güvenli bir şekilde bağlamanın bir yolunu eklemedim, ancak birçok seçenek var.

konut yapmak

Muhafazanın alt kısmını yaparak başlamanız gerekecek. Bir tahta parçası gördüm (130x310 mm). Ardından RPi'yi vida ile tutturun ve breadboard'u alt kısma yapıştırın.

Not: Muhafazanın üst kısmı için aynı parçayı yapabilirsiniz.

Adım 9: Muhafaza: Küçük Taraflar

Konut: Küçük Taraflar
Konut: Küçük Taraflar

Alt kısmı bitirdiğinizde. Yan kısımları kesmeye başlayabilirsiniz. Daha küçük tarafları yaparak başlayın.

İlk önce daha küçük kenarları tutturmanız gerekecek. Tüm parçaları birbirine bağlamak için fazladan bir tahta parçası kullandım, bu ekstra parça işi kolaylaştırıyor.

Adım 10: Muhafaza: Geniş Taraflar

Muhafaza: Geniş Taraflar
Muhafaza: Geniş Taraflar

Şimdi daha büyük tarafları yapmanız gerekecek. Kenarları bir kez daha kesin ve ekstra tahta parçası kullanarak alt kısma tutturun.

Adım 11: LCD ve LDR için Delik Ekleme

LCD ve LDR için Delik Ekleme
LCD ve LDR için Delik Ekleme

Ayrıca, IP adresini görebilmeniz ve bir kullanıcının içeri mi yoksa dışarı mı taradığını görüntüleyebilmeniz için LCD için bir delik açmanız gerekecektir.

Deliğin ne büyüklükte olacağına karar vermek için LCD'nin ölçümlerini kullanın.

LCD'yi yerleştirdikten sonra, LDR'nin muhafazanın dışında olduğundan emin olmanız gerekir. LDR'nin gün ışığını görebilmesi için küçük bir delik kullandım.

Adım 12: Arduino ve RFID Tarayıcıyı Yan Tarafa Takın

Arduino ve RFID Tarayıcıyı Yan Tarafa Takın
Arduino ve RFID Tarayıcıyı Yan Tarafa Takın

Muhafaza tamamlandıktan sonra, yine de arduino ve RFID tarayıcıyı takmanız gerekir. Bunları yeriniz olan her yere yapıştırabilirsiniz. Ancak, kullanıcının içeri mi yoksa dışarı mı taradığını görebilmesi için RFID tarayıcıyı LCD'nin altına takmanızı öneririm.

Önerilen: