Inhaltsverzeichnis:

Intelligenter Wecker - Gunook
Intelligenter Wecker - Gunook

Video: Intelligenter Wecker - Gunook

Video: Intelligenter Wecker - Gunook
Video: TuckTack - Intelligenter Wecker 2024, November
Anonim
Intelligenter Wecker
Intelligenter Wecker

Hallo, mein Name ist Alexandra Christiaens und ich studiere Medien- und Kommunikationstechnologie an der Howest in Kortrijk, Belgien.

Als Schulaufgabe mussten wir ein IoT-Gerät herstellen. Wir wurden ermutigt, etwas zu tun, das entweder in unserem eigenen Leben oder im Leben von Menschen, die wir kennen, einen Unterschied macht. Ich fand es ziemlich schwierig, ein Projekt zu finden und bei der Suche nach einem passenden Projekt dachte ich oft: „Dafür bin ich zu müde.“Irgendwann wurde mir also klar, dass dies mein Projekt sein könnte: Ich würde einen intelligenten Wecker bauen, der mir sowohl beim Aufstehen am Morgen als auch beim rechtzeitigen Zubettgehen am Abend hilft. Da die Anforderungen für diese Aufgabe vorschrieben, dass wir einen Raspberry Pi verwenden sollten, um alles darauf auszuführen, beschloss ich, mein Gerät als Wortspiel „Sleepi“zu nennen.

Wenn Sie dieses Gerät selbst herstellen und eine anständige Schlafroutine wie ich erhalten möchten, lesen Sie diese praktische Anleitung, die ich unten geschrieben habe. Wenn Sie mehr über mich und andere Projekte wissen möchten, die ich gemacht habe oder machen werde, schauen Sie sich mein Portfolio an.

Schritt 1: Schritt 1: Sammeln der Komponenten

Schritt 1: Sammeln der Komponenten
Schritt 1: Sammeln der Komponenten
Schritt 1: Sammeln der Komponenten
Schritt 1: Sammeln der Komponenten
Schritt 1: Sammeln der Komponenten
Schritt 1: Sammeln der Komponenten

Also, das Wichtigste zuerst, stellen wir sicher, dass wir alles haben, was wir brauchen, bevor wir mit dem Bauen beginnen. Ich habe eine Liste mit den wichtigsten Komponenten erstellt. Darunter finden Sie ein pdf mit genaueren Informationen zu den Komponenten.

- 1 x Raspberry Pi 3 Modell B

- 1 x (leer) microSD-Karte und Adapter (ich habe eine 16GB-Karte, aber 8GB reichen)

- 1 x 5V Netzteil für Raspberry Pi

- 1 x Ethernet-Kabel

- 2 x 9V-Batterien

- 2 x 9V Batterieklemmen

- 1 x GPIO 40-Pin-Erweiterungsplatine und Rainbow-Kabel

- 2 x BB830 lötfreies Steckbrett

- 1 x Arduino Uno

- 1 x 0,56 Zoll 4 * 7-Segment-Anzeige

- 1x DS18B20 Temperatursensor

- 1 x Helligkeitssensor TSL2561

- 1 x 1602A LCD-Bildschirm

- 1 x Pegelwandler

- 1 x SN74HC595N Schieberegister

- 1 x Drehgeber

- 1 x Potentiometer

- 1 x Power-RGB-LED

- 1 x Lautsprecher

- 4 x 337B Transistoren

- 1 x Diode

- 1 x Knopf

- 3 x xl4005 31 LED-Treiber

- 7 x Widerstände (2 x 10k Ohm, 4 x 1k Ohm, 1 x 470 Ohm)

- Verschiedene Überbrückungskabel (männlich zu männlich und männlich zu weiblich)

Optional:

- 1 x Multiplex-Holzplatte (ich habe eine mit den folgenden Maßen verwendet, die mehr als genug waren: 860mm x 860mm x 5mm)

- Diverse Werkzeuge für die Holzbearbeitung

- Acrylfarbe in einer Farbe, die Sie mögen

Schritt 2: Schritt 2: Schaltpläne

Schritt 2: Schaltpläne
Schritt 2: Schaltpläne

Nachdem ich alle Komponenten gesammelt hatte, konnte ich alles anschließen. Zuerst habe ich einen Fritzing-Schema erstellt, um sicherzustellen, dass ich keine Komponenten braten würde, indem ich sie falsch anschließe. Nach einigen Rückmeldungen meiner Lehrer habe ich einige Korrekturen vorgenommen, die zu folgendem Schaltplan und Schaltplan geführt haben:

Die meisten GPIO-Pins sind austauschbar, sodass Sie einige davon wechseln können, wenn Sie möchten. Vergessen Sie jedoch nicht, die PIN-Nummern im Code entsprechend zu ändern.

Einige Elemente müssen jedoch mit bestimmten Pins verbunden werden. Stellen Sie sicher, dass der Helligkeitssensor an GPIO 23 (SDA) bzw. GPIO 24 (SCL) angeschlossen ist. Warum das wichtig ist, erkläre ich in Schritt 5.

Schritt 3: Schritt 3: Raspberry Pi-Setup

Jetzt ist es an der Zeit, unseren Pi einzurichten:

1. Stecken Sie Ihre microSD-Karte in den Adapter und stecken Sie sie in Ihren PC.

Wenn Ihre microSD-Karte nicht leer ist, formatieren Sie sie zuerst mit Ihrer bevorzugten Methode.

2. Installieren Sie die Raspbian OS-Software von der Raspberry Pi-Website.

Laden Sie die ZIP-Datei herunter und entpacken Sie sie an einen gewünschten Ort.

3. Laden Sie den Win32-Disk-Manager herunter.

Klicken Sie auf das Ordnersymbol, um das Bild auszuwählen Wählen Sie Ihre microSD unter "Gerät" Klicken Sie auf "Schreiben"

Wenn das Bild auf Ihre MicroSD-Karte geschrieben wurde, können Sie es im Windows Explorer öffnen.

Öffnen Sie die Datei "cmdline.txt" Fügen Sie am Ende der Datei die folgende Textzeile hinzu: ip=169.254.10.1 Stellen Sie sicher, dass sich alles in derselben Zeile befindet. Speicher die Datei.

Werfen Sie nun die MicroSD-Karte aus Ihrem Computer aus. Stellen Sie sicher, dass Ihr Pi ausgeschaltet ist und stecken Sie die Karte in Ihren Raspberry Pi.

Verbinden Sie ein Ethernet-Kabel mit Ihrem Pi und Ihrem Computer.

Versorgen Sie Ihren Pi mit einem 5, 2V-Netzteil mit Strom.

Schritt 4: Schritt 4: Raspberry Pi anschließen

Schritt 4: Raspberry Pi anschließen
Schritt 4: Raspberry Pi anschließen

Verbinden

dem Pi mit unserem Computer verwenden wir Putty.

1. Installieren Sie Putty und öffnen Sie es.

2. Geben Sie die IP-Adresse und den Port wie im Bild gezeigt ein und klicken Sie auf „Öffnen“.

3. Melden Sie sich mit den folgenden Standardeinstellungen an:

A. Benutzername: pi

B. Passwort: Himbeere

4. So richten Sie das WLAN ein:

A. Sudo nano /etc/wpa_supllicant/wpa_supllicant.conf

B. Fügen Sie am Ende der Datei diese Zeilen hinzu:

ich. Netzwerk = {

ii. ssid=”Namen Ihres drahtlosen Netzwerks eingeben”

iii. psk="Geben Sie das Passwort Ihres drahtlosen Netzwerks ein"

NS. }

C. Schließen Sie die Datei und speichern Sie sie

5. Geben Sie den folgenden Befehl ein, um die IP-Adresse Ihres Pi herauszufinden: ifconfig wlan0

6. Mit dieser IP-Adresse können Sie nun in Putty eine WLAN-Verbindung herstellen (siehe oben).

Schritt 5: Schritt 5: Einstellungen mit Raspi-config ändern

Jetzt müssen wir sicherstellen, dass der Pi mit allen unseren Komponenten kommunizieren kann.

Wir werden einige Einstellungen in raspi-config ändern

Öffnen Sie raspi-config mit dem Befehl:

sudo raspi-config

2. Wählen Sie 4 Lokalisierungsoptionen.

3. Wählen Sie I2 Zeitzone ändern.

4. Ändern Sie die Zeitzone in Ihre lokale Zeitzone und beenden Sie, um zur raspi-config zurückzukehren.

5. Wählen Sie 5 Schnittstellenoptionen.

6. Wählen Sie P5 I2C.

7. Aktivieren Sie die I2C-Kommunikation.

8. Wählen Sie 5 Schnittstellenoptionen

9. Wählen Sie P6 Serial

10. Deaktivieren Sie die Login-Shell.

11. Aktivieren Sie die serielle Kommunikation

Schritt 6: Schritt 6: Einstellungen in /boot/config.txt ändern

Jetzt müssen wir einige Dinge in der Datei /boot/config.txt neu konfigurieren

1. Greifen Sie auf die Datei zu:

sudo nano /boot/config.txt

2. Unten sollten Sie sehen:

enable_uart=1

Dies liegt daran, dass wir den seriellen Port zuvor aktiviert haben.

3. Fügen Sie die folgenden zwei Zeilen hinzu:

dtoverlay=pi3-miniuart-bt

dtoverlay=i2c-gpio, bus=3

Der Raspberry Pi 3 hat 2 serielle Ports: einen seriellen Hardware-Port und einen seriellen Software-Port. Mit dem ersten Befehl weisen wir den seriellen Software-Port der Bluetooth-Funktion zu und weisen den seriellen Hardware-Port den Rx- und Tx-Pins zu, die wir für die Kommunikation mit dem Arduino verwenden.

Die zweite Zeile aktiviert einen Software-I²C-Bus auf dem Pi. Dies liegt daran, dass der Hardware-I²C-Bus manchmal Fehler ausgibt, wenn der an diesen I²C-Bus angeschlossene Sensor Clock-Stretching verwendet. Der Software-I²C-Bus wird automatisch auf GPIO 23 (SDA) und GPIO 4 (SCL) aktiv, weshalb es so wichtig war, den Helligkeitssensor, der I²C zum Senden von Daten verwendet, korrekt anzuschließen.

Schritt 7: Schritt 7: Fügen Sie den Benutzer zu den richtigen Gruppen hinzu

Fügen Sie den Benutzer schließlich zu einigen Gruppen hinzu:

1. Prüfen Sie, zu welchen Gruppen Ihr aktueller Benutzer gehört:

gruppiert dein_Benutzername

2. Damit alle Funktionen funktionieren, muss der Benutzer zu den folgenden Gruppen gehören:

adm dialout sudo input netdev gpio i2c spi ·

Fügen Sie den Benutzer bei Bedarf zu den entsprechenden Gruppen hinzu:

sudo adduser dein_username Gruppenname

Schritt 8: Schritt 8: Datenbank

Schritt 8: Datenbank
Schritt 8: Datenbank
Schritt 8: Datenbank
Schritt 8: Datenbank
Schritt 8: Datenbank
Schritt 8: Datenbank

Um die unterschiedlichen vom Benutzer eingestellten Weckzeiten und die unterschiedlichen Werte der Sensoren speichern zu können, musste ich eine Datenbank erstellen. Sie können das Datenbankschema oben sehen.

Um die Datenbank zum Raspberry Pi hinzuzufügen, gehen Sie wie folgt vor:

1. Stellen Sie eine Verbindung über Putty. her

2. MySQL aktualisieren

sudo apt-get update

sudo apt-get install mysql-server --fix-missing -y

sudo neu starten

3. Sichern Sie MariaDB

sudo mysql_secore_installation

4. Melden Sie sich bei MariaDB an

sudo mysql -u root

5. Die Datenbank hat derzeit keine Benutzer. Wir verwenden diesen Code, um einen Benutzer zu erstellen, Sie müssen nur den Benutzer und das Passwort eingeben:

GEWÄHRLEISTEN SIE ALLE PRIVILEGES ON *.* TO ‘fill_in_your_chosen_username’@’%’

IDENTIFIZIERT DURCH „fill_in_your_chosen_password“MIT GRANT-OPTION;

FLUSH PRIVILEGIEN;BEENDEN;

6. Laden Sie die Datenbank von Github herunter.

7. Installieren Sie die Werkbank.

8. Stellen Sie in der Workbench eine Verbindung mit Ihrem Pi her und führen Sie die Datei aus.

Schritt 9: Schritt 9: Python-Code

1. Laden Sie die Python-Dateien von Github herunter und speichern Sie sie.

2. Laden Sie Pycharm herunter und öffnen Sie es.

3. Erstellen Sie eine für Ihren Raspberry Pi geeignete Interpreter- und Bereitstellungskonfiguration.

4. Bearbeiten Sie die Datei mainCode1.py in Pycharm und ändern Sie die PIN-Nummern und Datenbankeinstellungen auf Ihre persönlichen Einstellungen aus den vorherigen Schritten.

Schritt 10: Schritt 10: Führen Sie den Python-Code automatisch aus

Schritt 10: Führen Sie den Python-Code automatisch aus
Schritt 10: Führen Sie den Python-Code automatisch aus

1. Stellen Sie eine Putty-Verbindung mit Ihrem Pi her.

2. Öffnen Sie die Datei /etc/rc.local:

sudo nano /etc/rc.local

3. Fügen Sie vor dem Beenden die folgenden Zeilen hinzu:

Schlaf 60

python3 /path_from_root_to_your_pythonfile/name_of_your_pythonfile.py

Schritt 11: Schritt 11: Arduino-Code

1. Laden Sie die.ino-Datei von Github herunter und speichern Sie sie.

2. Verbinden Sie Ihr Arduino über USB mit Ihrem Laptop.

3. Trennen Sie die Rx- und Tx-Kabel, die das Arduino mit dem Raspberry Pi verbinden.

4. Öffnen Sie die Datei und laden Sie sie auf den Arduino hoch.

5. Trennen Sie das Arduino von Ihrem Laptop und schließen Sie die Rx- und Tx-Kabel wieder richtig an.

6. Geben Sie dem Arduino Macht. Die 4*7-Segment-Anzeige sollte jetzt 12:34. anzeigen

Schritt 12: Schritt 12: Webserver

Schritt 12: Webserver
Schritt 12: Webserver

1. Apache installieren:

sudo apt install apache2 -y

2. Werden Sie Eigentümer des Verzeichnisses /var/www/html:

sudo chown pi /var/www/html

3. Gehen Sie in das Verzeichnis:

cd /var/www/html

4. Überprüfen Sie, ob Sie der Eigentümer und nicht Root sind:

ls -al

5. Laden Sie Filezilla herunter und öffnen Sie es

6. Stellen Sie eine Verbindung mit Ihrem Pi her, wie im Bild gezeigt. (entweder 169.254.10.1 und ein Ethernet-Kabel verwenden oder über Wi-Fi verbinden)

A. Gehen Sie in das Verzeichnis /var/www/html

B. Löschen Sie die Standardseite index.html

C. Verschiebe alle Frontend-Dateien in dieses Verzeichnis

Schritt 13: Schritt 13: Aufbau der Außenseite

Schritt 13: Aufbau der Außenseite
Schritt 13: Aufbau der Außenseite
Schritt 13: Aufbau der Außenseite
Schritt 13: Aufbau der Außenseite
Schritt 13: Aufbau der Außenseite
Schritt 13: Aufbau der Außenseite

Sie können die Außenseite des Weckers nach Belieben gestalten! Ich habe eine Box für meinen Wecker mit einer Multiplex-Holzplatte mit einer Breite von 5 mm gemacht. Wenn Sie etwas Ähnliches machen möchten, sind dies die Schritte für die genannte Box:

1. Zeichnen Sie die folgenden Formen auf die Multiplexplatte:

Seiten: 2 x quadratisch (180 mm x 180 mm)

Oben und unten: 2 x Rechteck (180 mm x 300 mm)

Vorder- und Rückseite: 2 x Rechteck (170 mm x 300 mm)

2. Sägen und schleifen Sie jede Form quadratisch und rechteckig

3. Holen Sie sich etwas Ersatzholz und machen Sie kleine Bretter von 20 mm Höhe und 20 mm Breite.

4. Schrauben Sie die kleinen Bretter an die Innenseiten (unten, vorne und hinten) des Multiplex wie auf den Fotos zu sehen.

5. Entscheiden Sie, wo Sie die entsprechenden Löcher für LCD-Bildschirm, 4*7-Segment-Anzeige, Lautsprecher, Helligkeitssensor, RGB-LED, Drehgeber und Taste anbringen möchten.

6. Messen Sie jedes Bauteil, das Sie außen zeigen möchten, und zeichnen Sie entsprechend große Formen auf das Multiplex.

7. Schneiden Sie die notwendigen Teile aus.

8. Bringen Sie einige Scharniere an der Außenseite der Box an, um die Ober- und Rückseite zu verbinden.

9. Befestigen Sie einen Magneten an der Innenseite der Front und eine kleine Metallplatte an der Innenseite der Oberseite.

10. Schrauben oder kleben Sie alles, wo Sie es wollen.

11. Bauen Sie die Box zusammen, indem Sie alle Außenseiten zusammenschrauben (außer der Oberseite).

Sie können 3 und 4 überspringen, wenn Sie kleinere Schrauben verwenden (ich habe 12 mm Schrauben verwendet). Die Verwendung kleinerer Schrauben mindert jedoch die Stabilität der Box etwas.

Empfohlen: