Inhaltsverzeichnis:
- Schritt 1: Benötigte Materialien
- Schritt 2: Die Schaltung
- Schritt 3: Erstellen Sie eine Datenbank
- Schritt 4: Codieren Sie es
- Schritt 5: Machen Sie es schön
Video: Ehefrauen - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Ich bin Stephanie Minne und studiere New Media and Communication Technology (NMCT) an der Howest (Kortrijk, Belgien). In der Schule bekamen wir den Auftrag, ein Gerät mit einer Webseite zu erstellen. Sie können sich mein Portfolio anschauen.
Ich habe mich entschieden, einen Zugsitz mit einem Sensor zu machen. Der Sensor erkennt, ob eine Person auf dem Sitz sitzt.
Schritt 1: Benötigte Materialien
Für dieses Projekt werden mehrere Materialien benötigt.
Drucksensor (fsr 400) = 9, 20 €/St.
Raspberry Pi 3 = 37 €, 95
RGB-LEDs = 0,5 € /Einheit
Widerstand (470 Ohm) = 0,10 € /Einheit
LCD-Display = 2,44 € /Einheit
MCP 3008 = 29, 00 € /Einheit
Sn74hc595n = 1,20 € /Einheit
Potentiometer = 1,15 €
Schritt 2: Die Schaltung
Die Hardware ist ziemlich einfach.
Wie auf dem Schaltplan zu sehen ist, habe ich eine 74HC47 für meine LEDs verwendet. Der Grund dafür ist, dass mein Himbeer-Pi nicht viele Pins hat. Der Nachteil dabei ist, dass Sie nur die LED rot oder grün machen können. Sie haben kein PWM-Signal, um verschiedene Farben zu erstellen.
Der Raspberry Pi hat keine analogen Eingangspins. Also brauche ich einen mcp 3008. Dieser wandelt ein analoges Signal in ein digitales um. Der Druckgeber wird auf die Kanäle des mcp 3008 gesteckt.
Schritt 3: Erstellen Sie eine Datenbank
In diesem Projekt wurde ein MySQL als Datenbankserver verwendet.
Die Tischbelegung enthält Informationen zu den Sensoren. Es erfasst, wo eine Person auf einem Zugsitz sitzt. Sobald eine Person auf dem Sitz sitzt, werden die ersten Daten in die Tabelle geschrieben. Alle Daten werden mit Ausnahme von datetimeEnd in die Tabelle geschrieben.
In der Tabelle Route werden Daten zu den verschiedenen Routen angezeigt, die ein Zug zurücklegt.
Die Tabelle hat zwei Werte: einen für die normale Datumszeit und einen anderen für die echte Datumszeit.
Die datetime normal ist die Zeit, zu der der Zug theoretisch an einem Halt ist. Die Datetime Real ist die Uhrzeit, zu der der Zug wirklich an einer Haltestelle ist. Diese Zeit ist inklusive Verspätung.
Jeder Zug hat eine eindeutige und eindeutige Referenz, die sich aus Buchstaben (z. B. IC steht für Intercity-Zug) und Zahlen zusammensetzt (z. B. 4565 ist der Zug von Brüssel nach Antwerpen).
Und jeder Typ hat seine eigene Unterkunft. Zum Beispiel Tische, Mülleimer.
Schritt 4: Codieren Sie es
Der Basiscode der Sensoren ist in Python geschrieben. Es gibt
2 Arten von Code. Der erste ist für die Sensoren. Der zweite ist für die Webseite. Die Webseitendaten sind in Python, Flask, JavaScript, HTML und CSS geschrieben.
Der Sensor
Jede Komponente hat ihre eigene Klasse. Alle verschiedenen Klassen werden in der test.py verwendet.
Das Netz
Der Webcode ist in Python und Flask geschrieben. Für den Header wird eine Vorlage verwendet. Der andere Teil der Seite hat eine eigene HTML-Seite.
Die Dateistruktur
- Die Testdatei finden Sie im Verzeichnis sensor.
- Die Klassen befinden sich in den Verzeichnismodellen.
- Das Verzeichnis sql enthält den Dump der Zugdatenbank.
- Das Verzeichnis web enthält die index.py. Dies ist die Flask-Seite. Diese Datei muss ausgeführt werden, um die Webseite auszuführen.
- Das Vorlagenverzeichnis enthält die HTML-Seiten.
- Das Verzeichnis static enthält Bilder, Schriftarten und die CSS-Dateien.
Schritt 5: Machen Sie es schön
Es gibt verschiedene Möglichkeiten, einen schönen Zug zu machen. ich habe mich entschieden
um einen 3D-Druck eines Zuges zu machen.
Die Sitze.
Im Sitz muss ein kleines Loch vorgesehen werden, da der Sensor auf dem Sitz angebracht werden muss. Die LEDs sind oben auf dem Sitz befestigt.
Der Wagen.
Es gibt ein paar wichtige Funktionen im Wagen. Zuerst müssen kleine Löcher im Boden sein, wo die Sitze kommen.
- Der Sensor und die Kabel der LEDs sollten durch diese Löcher gehen.
- In der Seitenwand befindet sich ein Loch zur Befestigung des LCD-Displays mit der Angabe der IP-Adresse und der Anzahl der freien Plätze.
- Der Raspberry Pi sollte sich auf der Rückseite außer Sichtweite befinden.
!Achtung: Der 3D-Druck ist etwas kleiner gedruckt, daher müssen 3 oder 4 mm extra für die Löcher eingeplant werden!