Inhaltsverzeichnis:
- Schritt 1: Flashen der RaspberriPi-Festplatte / Installieren der erforderlichen Software (unter Verwendung von Ubuntu Linux)
- Schritt 2: Benötigtes Zubehör
- Schritt 3: Bauen und verdrahten Sie das Gerät
- Schritt 4: Drucken Sie mit einem 3D-Drucker das Cover, die Box und die Rückseiten
- Schritt 5: Komponentenverdrahtung
- Schritt 6: Komponenten an den Roboter anschließen
- Schritt 7: I2C-Konfiguration prüfen
- Schritt 8: DHT11 installieren
- Schritt 9: Repository klonen
- Schritt 10: Pushbullet-API hinzufügen (mit Python 3.5)
- Schritt 11: Fügen Sie das Skript hinzu, um beim Dashboard-Boot zu starten und starten Sie Ihr Dashboard neu
- Schritt 12: OPTIONAL: Erstellen eigener Nintendo-Bilder zum Rendern auf dem Display
- Schritt 13: Fertig
Video: RAUBEN. Telefonbenachrichtigungsassistent - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Von khinds10www.kevinhinds.comFolgen Sie mehr vom Autor:
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
RaspberryPi Zero
DHT11 Feuchtigkeitsregler
LED-Leuchten (x4) Grün / Gelb / Blau / Rot2.6 Digole-Display
Schritt 3: 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 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
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
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!