Inhaltsverzeichnis:

RAUBEN. Telefonbenachrichtigungsassistent - Gunook
RAUBEN. Telefonbenachrichtigungsassistent - Gunook

Video: RAUBEN. Telefonbenachrichtigungsassistent - Gunook

Video: RAUBEN. Telefonbenachrichtigungsassistent - Gunook
Video: Reuben - Yaweh Mwende (Official Music Video) 2024, November
Anonim
RAUBEN. Assistent für Telefonbenachrichtigungen
RAUBEN. Assistent für Telefonbenachrichtigungen

Von khinds10www.kevinhinds.comFolgen Sie mehr vom Autor:

Unzerstörbare Kindercouch!
Unzerstörbare Kindercouch!
Unzerstörbare Kindercouch!
Unzerstörbare Kindercouch!
Schnelle und einfache PCs zur Wandmontage
Schnelle und einfache PCs zur Wandmontage
Schnelle und einfache PCs zur Wandmontage
Schnelle und einfache PCs zur Wandmontage
Digitaler Kaminbildschirm
Digitaler Kaminbildschirm
Digitaler Kaminbildschirm
Digitaler Kaminbildschirm

About: 3D-Druck und Design von RaspberryPI-Projekten seit einigen Jahren Mehr über khinds10 »

Desktop Phone Notification Assistant mit (R. O. B.) Robotic Operating Buddy

Schritt 1: Flashen der RaspberriPi-Festplatte / Installieren der erforderlichen Software (unter Verwendung von Ubuntu Linux)

Erstellen Sie Ihre neue Festplatte für DashboardPI

Legen Sie die microSD über einen USB-Adapter in Ihren Computer ein und erstellen Sie das Disk-Image mit dem Befehl dd

Suchen Sie Ihre eingelegte microSD-Karte über den Befehl df -h, unmounten Sie sie und erstellen Sie das Disk-Image mit dem Befehl disk copy dd

$ df -h /dev/sdb1 7,4G 32K 7,4G 1 % /media/XXX/1234-5678

$ umount /dev/sdb1

Achtung: Stellen Sie sicher, dass der Befehl absolut korrekt ist, Sie können mit diesem Befehl andere Festplatten beschädigen

if=Speicherort der RASPBIAN JESSIE LITE-Bilddatei of=Speicherort Ihrer microSD-Karte

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (Hinweis: in diesem Fall ist es /dev/sdb, /dev/sdb1 war eine vorhandene Werkspartition auf dem microSD)

Einrichten Ihres RaspberriPi

Legen Sie Ihre neue microSD-Karte in das Raspberrypi ein und schalten Sie es mit einem Monitor ein, der an den HDMI-Anschluss angeschlossen ist

Anmeldung

Benutzer: Pi-Pass: Himbeere

Ändern Sie aus Sicherheitsgründen Ihr Kontopasswort

sudo passwd pi

Aktivieren Sie die erweiterten RaspberriPi-Optionen

sudo raspi-config

Wählen:

1 Erweitern Sie das Dateisystem

9 Erweiterte Optionen

A2 Hostname ändern Sie ihn in "RobbieAssistant"

A4 SSH SSH-Server aktivieren

A7 I2C i2c-Schnittstelle aktivieren

Aktivieren Sie die englische/US-Tastatur

sudo nano /etc/default/tastatur

Ändern Sie die folgende Zeile: XKBLAYOUT="us"

Starten Sie PI neu, damit Änderungen am Tastaturlayout/Größe des Dateisystems wirksam werden

$ sudo shutdown -r now

Automatische Verbindung zu Ihrem WLAN

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Fügen Sie die folgenden Zeilen hinzu, damit sich Ihr Himbeerpi automatisch mit Ihrem Heim-WLAN verbindet (wenn Ihr drahtloses Netzwerk im folgenden Beispiel beispielsweise "linksys" heißt)

network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Starten Sie PI neu, um eine Verbindung zum WLAN-Netzwerk herzustellen

$ sudo shutdown -r now

Nachdem sich Ihr PI nun endlich im lokalen Netzwerk befindet, können Sie sich per SSH remote bei ihm anmelden. Aber zuerst müssen Sie die IP-Adresse abrufen, die es derzeit hat.

$ ifconfig Suchen Sie in der Ausgabe des folgenden Befehls nach "inet addr: 192.168. XXX. XXX" für die IP-Adresse Ihres PI

Gehen Sie zu einem anderen Computer und melden Sie sich über ssh. an Ihrem Raspberrypi an

$ ssh [email protected]. XXX. XXX

Beginnen Sie mit der Installation der erforderlichen Pakete

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install build-essential tk-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libncurses5-dev libncursesw5-dev libreadthon6-dev python3-requests python3-setuptools python3-urllib python3-urllib3 python3-requests vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python-pythonpip python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tools python-imaging python-smbus build-essential python3- pythonp3 -gpiozero python-psutil xz-utils

$ sudo pip Installationsanfragen

Lokale Zeitzoneneinstellungen aktualisieren

$ sudo dpkg-reconfigure tzdata

Wählen Sie Ihre Zeitzone über die Benutzeroberfläche aus

Richten Sie den einfachen Befehl für das Verzeichnis l ein [optional]

vi ~/.bashrc

füge die folgende Zeile hinzu:

Alias l='ls -lh'

Quelle ~/.bashrc

Hervorhebung der VIM-Standardsyntax behoben [optional]

sudo vi /etc/vim/vimrc

Entkommentieren Sie die folgende Zeile:

Syntax an

Erstellen Sie den logs-Ordner für die Anwendung zum Ausführen von mkdir /home/pi/RobbieAssistant/logs

chmod 777 /home/pi/RobbieAssistant/logs

Konfigurieren Sie die Anwendung so, dass sie in der Konfigurationsdatei settings.py korrekt ausgeführt wird. Suchen Sie die Datei settings-shadow.py im Ordner /includes/ des Projekts, kopieren Sie sie nach settings.py und passen Sie sie an Ihre aktuellen Einstellungen an

# Forecast.io API-Schlüssel für lokale Wetterinformationen

WetterAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'IHR API-SCHLÜSSEL FÜR FORECAST. IO'

# optional für den Betrieb des externen Temperatur-/Feuchtigkeitsloggers

DashboardServer = 'mydevicelogger.com'

# Google durchsuchen, um den Breiten-/Längengrad für Ihren Heimatort zu erhalten

Breitengrad = 41.4552578

Längengrad = -72.1665444

Schritt 2: Benötigtes Zubehör

Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht

RaspberryPi Zero

DHT11 Feuchtigkeitsregler

LED-Leuchten (x4) Grün / Gelb / Blau / Rot2.6 Digole-Display

Schritt 3: Bauen und verdrahten Sie das Gerät

Bauen und verdrahten Sie das Gerät
Bauen und verdrahten Sie das Gerät

Bereiten Sie das Digile-Display für i2C vor

Löten Sie auf der Rückseite des Digole-Displays den Jumper, um dem Display die Verwendung des i2c-Protokolls zuzuweisen

Schritt 4: Drucken Sie mit einem 3D-Drucker das Cover, die Box und die Rückseiten

Mit einem 3D-Drucker das Cover, die Box und die Rückseiten drucken
Mit einem 3D-Drucker das Cover, die Box und die Rückseiten drucken

Mit den folgenden X STL-Dateien im 3DPrint-Ordner kann R. O. B. Roboter, LED-Kabelbaum und Displayhalterung

buttonContainer-base.stl

buttonContainer-Deckel.stl

displaymount-final.stl

led-geschirr-final.stl

MiniNintendoROB.zip

Roboterdruck von: Mini Nintendo R. O. B. - von RabbitEngineering

www.thingiverse.com/thing:1494964

Ich habe Bürokratie verwendet, um die Augen mit dem schwarzen Visierhintergrund rot zu machen

Schritt 5: Komponentenverdrahtung

Komponentenverkabelung
Komponentenverkabelung

Digile-Anzeige

GND -> GND

DATEN -> SDA

CLK -> SCL

VCC -> 3V

DHT11 Feuchtigkeitsregler

VCC -> 5V

GND -> GND

DATEN -> GPIO 25

BLAUER Widerstand

VCC -> GPIO 17 (mit 270 Ohm Widerstand)

GND -> GND

GELBER Widerstand

VCC -> GPIO 13 (mit 270 Ohm Widerstand)

GND -> GND

GRÜNER Widerstand

VCC -> GPIO 6 (mit 270 Ohm Widerstand)

GND -> GND

ROTER Widerstand

VCC -> GPIO 12 (mit 270 Ohm Widerstand)

GND -> GND

ROTER Taster

VCC -> GPIO 16 (mit 270 Ohm Widerstand)

GND -> GND

BLAU Taster

VCC -> GPIO 26 (mit 270 Ohm Widerstand)

GND -> GND

Schritt 6: Komponenten an den Roboter anschließen

Komponenten mit dem Roboter verbinden
Komponenten mit dem Roboter verbinden
Komponenten mit dem Roboter verbinden
Komponenten mit dem Roboter verbinden
Verbinden von Komponenten mit dem Roboter
Verbinden von Komponenten mit dem Roboter

Nachdem Sie den Bildschirmhalter ausgedruckt haben, verbinden Sie ihn mit dem Digol-Display

Verbinden Sie das Display mit dem RPi mit genügend Kabel, um das RPi an der Rückseite des Roboters zu kleben

Drucken Sie den Controller aus und verdrahten Sie die Tasten mit genügend Kabeln, um sie auf die Rückseite des Roboters zu bringen

Beenden Sie die Verkabelung und den Zusammenbau des Roboters mit dem RPi an der Rückseite und dem DHT11 an der Unterseite geklebt

Schritt 7: I2C-Konfiguration prüfen

Starten Sie Ihren RaspberryPi und stellen Sie sicher, dass der I2C-Bus alle Ihre angeschlossenen 7/14-Segment-Anzeigen erkennt. [Jedes Display erhält eine oben beschriebene eindeutige Adresse, indem Sie die Jumper jedes Displays in verschiedenen Kombinationen verlöten]

Wenn Sie das Display mit korrekt verlötetem Jumper haben, sollten Sie für den Befehl i2cdetect folgende Ausgabe haben:

sudo i2cdetect -y 1

0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- --

10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

20: -- -- -- -- -- -- -- 27 -- -- -- -- -- -- -- --

30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

70: -- -- -- -- -- -- -- --

Schritt 8: DHT11 installieren

$ cd ~

$git-Klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py install

$ sudo python ez_setup.py

$ cd-Beispiele/

$ vi simpletest.pyÄndern Sie die folgende Zeile:

Sensor = Adafruit_DHT. DHT11

Kommentiere die Zeile aus

Stift = 'P8_11'

Entkommentieren Sie die Zeile und ändern Sie die PIN-Nummer auf 16

Stift = 25

Führen Sie den Test durch

python simpletest.py

In der Befehlszeile sollte ein Messwert von Temp und Luftfeuchtigkeit angezeigt werden.

Schritt 9: Repository klonen

$ cd ~$ git clone

Schritt 10: Pushbullet-API hinzufügen (mit Python 3.5)

Melden Sie sich mit der Pushbullet-App für Ihr Telefon an, um einen API-Schlüssel zu erhalten, damit ein einfaches Python-Skript Daten-Hub-Benachrichtigungen und Indikator-Flags erfassen und pushen kann

Installieren Sie Python 3.5 für die Asyncio-Funktionalität

$ sudo apt-get update sudo apt-get install build-essential tk-dev sudo apt-get install libncurses5-dev libncursesw5-dev libreadline6-dev sudo apt-get install libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev sudo apt-get install libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev Wenn eines der Pakete nicht gefunden werden kann, versuchen Sie es mit einer neueren Versionsnummer (zB libdb5.4-dev statt libdb5.3-dev).

$ wget https://www.python.org/ftp/python/3.5.2/Python-3…. tar zxvf Python-3.5.2.tgz cd Python-3.5.2./configure --prefix=/usr/local/opt/python-3.5.2 make sudo make install sudo ln -s /usr/local/opt/python -3.5.2/bin/pydoc3.5 /usr/bin/pydoc3.5 sudo ln -s /usr/local/opt/python-3.5.2/bin/python3.5 /usr/bin/python3.5 sudo ln -s /usr/local/opt/python-3.5.2/bin/python3.5m /usr/bin/python3.5m sudo ln -s /usr/local/opt/python-3.5.2/bin/pyvenv-3.5 /usr/bin/pyvenv-3.5 sudo ln -s /usr/local/opt/python-3.5.2/bin/pip3.5 /usr/bin/pip3.5 cd ~ echo 'alias python35="/usr/local /opt/python-3.5.2/bin/python3.5"' >>.bashrc echo 'alias empty35="/usr/local/opt/python-3.5.2/bin/python3.5"' >>.bashrc Installieren Sie die Python3-Abhängigkeiten

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 Installationsanfragen Optionale Möglichkeit Laden Sie das Python-Repository direkt herunter, um die Python-Abhängigkeiten ohne die Verwendung von pip zu installieren

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Besuchen Sie die Pushbullet-Einstellungsseite in Ihrem Konto, um eine API-Schlüssel zur Verwendung von

Konfigurieren Sie Ihr pushbullet-listener.py-Skript so, dass es den richtigen API- und Dashboard-Zentralhost hat

# Ihr API-Schlüssel von PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

# Dashboard-Zentralserver-Host DashboardServer = 'MY-SERVER-HERE.com'

Schritt 11: Fügen Sie das Skript hinzu, um beim Dashboard-Boot zu starten und starten Sie Ihr Dashboard neu

$ crontab -e

@reboot nohup /usr/local/opt/python-3.5.2/bin/python3.5 /home/pi/PushBullet/pushbullet-listener.py >/dev/null 2>&1

@reboot nohup /usr/local/opt/python-3.5.3/bin/python3.5 /home/pi/RobbieAssistant/PushBullet/pushbullet-listener.py > /dev/null 2>&1

@reboot nohup python /home/pi/RobbieAssistant/Robbie.py > /dev/null 2>&1

@reboot nohup python /home/pi/RobbieAssistant/Temp.py > /dev/null 2>&1

@reboot nohup python /home/pi/RobbieAssistant/Weather.py > /dev/null 2>&1

Schritt 12: OPTIONAL: Erstellen eigener Nintendo-Bilder zum Rendern auf dem Display

Laden Sie Ihre eigene 128x128-Datei unter die folgende URL hoch:

www.digole.com/tools/PicturetoC_Hex_converter.php

Wählen Sie Ihre Bilddatei zum Hochladen aus, fügen Sie die gewünschte Größe auf dem Bildschirm hinzu (Breite/Höhe)

Wählen Sie "256 Farbe für Farb-OLED/LCD (1 Byte/Pixel)" in der Dropdown-Liste "Verwendet für" aus

Rufen Sie die Hex-Ausgabe ab.

Fügen Sie die Hex-Ausgabe zu einer Display/Build/Header-Datei (.h) hinzu, verwenden Sie die anderen als Richtlinien für die Syntax.

Fügen Sie die neue Datei in die Datei digole.c ein #include myimage.h

Fügen Sie einen neuen Befehlszeilen-Hook in Ihre Bilddatei ein. Hinweis: Der folgende Befehl besagt, dass Sie Ihr Bild an der Position 10 Pixel über 10 Pixel nach unten zeichnen. Sie können es in andere X-, Y-Koordinaten ändern, Sie können auch die Werte 128, 128 auf die Größe Ihres neuen Bildes ändern.

aufrechtzuerhalten. Sonst if (strcmp(digoleCommand, "myimage") == 0) { drawBitmap256(10, 10, 128, 128, &myimageVariableHere, 0); // myimageVariableHere ist in Ihrer (.h) Datei definiert }

Erstellen Sie nun die folgenden Fehler neu (ignorieren Sie die Fehler), damit Ihr neues Bild mit dem folgenden Befehl gerendert wird.

$./digole myimage

Neuerstellung des [Enthaltenen] Digile-Anzeigetreibers für Ihre optionalen Änderungen

$ CD-Anzeige/Build

$ gcc digole.c

$ mv a.out../../digole

$ chmod +x../../digole

Schritt 13: Fertig

Du bist fertig!