Inhaltsverzeichnis:

Teilbares Smartbike - Gunook
Teilbares Smartbike - Gunook

Video: Teilbares Smartbike - Gunook

Video: Teilbares Smartbike - Gunook
Video: Teilbares Rollstuhl Rad Neuheit 2024, Juli
Anonim
Teilbares Smartbike
Teilbares Smartbike
Teilbares Smartbike
Teilbares Smartbike

Wenn ich mein Fahrrad fahre, vergesse ich oft, das Licht einzuschalten, wenn es dunkel wird. Auch auf meinem Rad habe ich keine Möglichkeit zu wissen, wie schnell ich fahre.

Also habe ich beschlossen, ein teilbares Smartbike zu entwickeln, das den Überblick behält:

  • Geschwindigkeit
  • Standort
  • Wie lange nutzt du das Fahrrad schon

Außerdem schaltet es das Licht automatisch ein oder aus. Ich habe einen RFID-Scanner verwendet, damit jemand anderes das Fahrrad benutzen kann, ohne meine Daten zu ändern.

Link zu meinem Github.

Lieferungen

  • Raspberry Pi 3 (32, 49 €)
  • SD-Karte (für RPi) (€ 13,99)
  • GPS NEO 6M (für Geschwindigkeit und Standort) (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 €)
  • Ein recyceltes Licht
  • Holz für das Gehäuse (~15,00 €)
  • Kabel (~ 6, 00 €)

Gesamtpreis: 145,76 €

Schritt 1: Machen Sie die Schaltung

Mach den Kreislauf
Mach den Kreislauf
Mach den Kreislauf
Mach den Kreislauf

Zuerst musst du alles zusammenbauen. Ich habe ein Fritzing-Schema eingefügt.

Hinweis: Einige der Komponenten wie der RFID-Scanner müssen gelötet werden.

Schritt 2: Python einrichten

Python einrichten
Python einrichten

Für dieses Projekt verwende ich Python 3 und führe den Code mit einem Python-Server aus. Ich werde meinen Github mit meinem Code verlinken.

Zuerst müssen Sie über Einstellungen > Build, Ausführung, Bereitstellung > Bereitstellung eine Verbindung zu Ihrem Raspberry Pi herstellen. Dann müssen Sie einen Dolmetscher mit allen erforderlichen Paketen erstellen. Auf meinem Raspberry Pi verwende ich Python 3.5.

Wenn Sie den Dolmetscher erstellt haben, können Sie ein neues Projekt erstellen und den soeben erstellten Dolmetscher für das Projekt auswählen. Dann müssen Sie auswählen, wo die Dateien auf Ihrem PC und RPi gespeichert werden sollen.

Schritt 3: Lesen Sie die Daten

Lesen Sie die Daten
Lesen Sie die Daten

Nachdem Sie die Schaltung erstellt haben und alle Komponenten funktionieren, müssen Sie die Daten von Sensoren lesen. Mein Projekt wurde mit Python 3 erstellt. In Python lese ich die meisten Daten der Sensoren mithilfe von Klassen aus.

  • Der RFID-Scanner wird mit dem Arduino verwendet (die meisten Informationen zur Verwendung hier). Ich lese die Daten mit dem Arduino aus dem Scanner aus und sende sie mit Serial USB an das RPi.
  • Das GPS-Modul verwendet auch eine serielle Kommunikation. Die Daten, die das GPS an das RPi sendet, sind nicht so gut formatiert. Ich habe eine Bibliothek verwendet, um die Daten zu analysieren und die Verwendung zu vereinfachen. (Einige weitere Informationen zu GPS-Daten).
  • Die Analogwerte aus dem LDR werden mit dem mcp3008 (einem ADC) umgewandelt, dann transformiere ich den Wert in einen Prozentsatz.

Hinweis: Wenn Sie 'while-Schleifen' in Python verwenden möchten, um während der Ausführung eines Python-Servers ständig Daten abzurufen. Sie benötigen Threading (weitere Informationen zum Threading). Das Einfädeln ist einfach zu bedienen.

Schritt 4: Die Datenbank (mySQL)

Die Datenbank (mySQL)
Die Datenbank (mySQL)

Da Sie nun Ihre Daten von den Sensoren haben, benötigen Sie einen Ort zum Speichern der Daten. Wir werden die Daten in einer relationalen Datenbank in mySQL speichern.

Ich führe die Datenbank auf meinem RPi aus, damit dies funktioniert. Ich muss mariaDB auf meinem RPi installiert haben. Sobald Sie mariaDB installiert und eingerichtet haben, können Sie die mySQL-Workbench auf Ihrem PC verwenden, um sich mit Ihrer Datenbank auf dem RPi zu verbinden.

Sie müssen die ERD auf dem PC erstellen. Forward-Engineering des ERD und Export der Datenbank. Anschließend können Sie den Dump (Schema erstellen nicht vergessen) auf dem RPi über die mySQL-Workbench importieren.

Hinweis: Die Tabelle 'Bike_has_User' ist nicht erforderlich und wird nur verwendet, wenn Sie mehrere Fahrräder verwenden möchten. Sie können die Tabelle 'Bike_has_User' löschen und die Tabelle User mit 'Datahistory' verknüpfen.

Schritt 5: Verknüpfen Sie Ihr Python mit der Datenbank

Verknüpfen Sie Ihr Python mit der Datenbank
Verknüpfen Sie Ihr Python mit der Datenbank

Nachdem Sie Ihre Datenbank installiert haben, können Sie Ihr Python mit der Datenbank verknüpfen. Klicken Sie auf Datenbank (rechts im Bildschirm) und fügen Sie eine neue Datenquelle hinzu.

Die Datenbank und das Python-Skript laufen auf dem RPi, verwenden Sie also die localhost-IP. Verwenden Sie den Benutzer, den Sie zuvor erstellt haben, während Sie mariaDB eingerichtet haben.

Schritt 6: Daten an die Datenbank senden

Daten an die Datenbank senden
Daten an die Datenbank senden

Wenn Sie alles eingerichtet haben, können Sie mit dem Senden von Daten an die Datenbank beginnen. Ich habe dafür eine Klasse helpers. Database in Python verwendet (siehe mein Github).

Das Foto zeigt einen Beispielcode.

Schritt 7: Verwenden Sie die Daten

Verwenden Sie die Daten
Verwenden Sie die Daten

Mit der Klasse helpers. Database können Sie Daten in die Datenbank einfügen oder Daten aus der Datenbank holen.

Nun, da alles funktioniert, können Sie die Daten aus der Datenbank verwenden, um sie auf einer Website oder wo immer Sie möchten, anzuzeigen.

Schritt 8: Das Gehäuse: Unten

Das Gehäuse: Unten
Das Gehäuse: Unten

Über das Gehäuse

Schließlich besteht das Gehäuse für dieses Projekt aus Holz (310x130x110 mm). Die meisten Komponenten sind mit Ausnahme der Powerbank und des Steckbretts mit dem Holz verschraubt.

Sie können das Gehäuse kleiner machen, wenn Sie die Komponenten verlöten. Ich habe keine Möglichkeit angegeben, das Gehäuse sicher mit dem Fahrrad zu verbinden, aber es gibt viele Möglichkeiten.

Das Gehäuse herstellen

Sie müssen mit der Herstellung des unteren Teils des Gehäuses beginnen. Sägen Sie ein Stück Holz (130x310 mm) aus. Dann das RPi mit Schraube befestigen und das Steckbrett auf das Unterteil kleben.

Hinweis: Sie können ein identisches Teil für die Oberseite des Gehäuses herstellen

Schritt 9: Das Gehäuse: Kleine Seiten

Das Gehäuse: Kleine Seiten
Das Gehäuse: Kleine Seiten

Wenn Sie den unteren Teil fertig haben. Sie können mit dem Sägen der Seitenteile beginnen. Beginnen Sie mit der Herstellung der kleineren Seiten.

Zuerst müssen Sie die kleineren Seiten anbringen. Ich habe ein zusätzliches Stück Holz verwendet, um alle Teile miteinander zu verbinden, dieses zusätzliche Stück macht es einfacher.

Schritt 10: Das Gehäuse: Große Seiten

Das Gehäuse: Große Seiten
Das Gehäuse: Große Seiten

Jetzt müssen Sie die größeren Seiten machen. Sägen Sie noch einmal die Seiten und befestigen Sie sie mit dem zusätzlichen Holzstück am unteren Teil.

Schritt 11: Hinzufügen eines Lochs für das LCD & LDR

Hinzufügen eines Lochs für das LCD & LDR
Hinzufügen eines Lochs für das LCD & LDR

Sie müssen auch ein Loch für das LCD bohren, damit Sie die IP-Adresse sehen und anzeigen können, ob ein Benutzer ein- oder ausscannt.

Verwenden Sie die Messungen des LCD, um zu entscheiden, wie groß das Loch sein wird.

Nachdem Sie das LCD eingesetzt haben, müssen Sie sicherstellen, dass sich der LDR außerhalb des Gehäuses befindet. Ich habe ein kleines Loch verwendet, damit der LDR Tageslicht sehen kann.

Schritt 12: Befestigen Sie den Arduino & RFID-Scanner an der Seite

Befestigen Sie den Arduino & RFID-Scanner an der Seite
Befestigen Sie den Arduino & RFID-Scanner an der Seite

Nachdem das Gehäuse fertig ist, müssen Sie noch den Arduino- und RFID-Scanner anbringen. Sie können sie überall dort anbringen, wo Sie Platz haben. Ich empfehle jedoch, den RFID-Scanner unter dem LCD anzubringen, damit der Benutzer sehen kann, ob er ein- oder ausgelesen hat.