Sommario:
- Passaggio 1: lampeggiamento del disco rigido di RaspberriPi / installazione del software richiesto (utilizzando Ubuntu Linux)
- Passaggio 2: materiali di consumo necessari
- Passaggio 3: costruire e collegare il dispositivo
- Passaggio 4: utilizzare una stampante 3D, stampare la copertina, la scatola e i pannelli posteriori
- Passaggio 5: cablaggio dei componenti
- Passaggio 6: collegare i componenti al robot
- Passaggio 7: verifica della configurazione I2C
- Passaggio 8: installazione di DHT11
- Passaggio 9: clona repository
- Passaggio 10: aggiungere l'API Pushbullet (usando Python 3.5)
- Passaggio 11: aggiungi lo script per iniziare all'avvio della dashboard e riavvia la dashboard Pi
- Passaggio 12: FACOLTATIVO: creare le tue immagini Nintendo da visualizzare sul display
- Passaggio 13: finito
Video: RAPINARE. Assistente di notifica del telefono: 13 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Di khinds10www.kevinhinds.comSegui di più dell'autore:
Informazioni su: stampa 3D e progettazione di progetti RaspberryPI da alcuni anni a questa parte Maggiori informazioni su khinds10 »
Assistente di notifica del telefono desktop dotato di (R. O. B.) Compagno operativo robotico
Passaggio 1: lampeggiamento del disco rigido di RaspberriPi / installazione del software richiesto (utilizzando Ubuntu Linux)
Crea il tuo nuovo disco rigido per DashboardPI
Inserisci la microSD sul tuo computer tramite l'adattatore USB e crea l'immagine del disco usando il comando dd
Individua la scheda microSD inserita tramite il comando df -h, smontala e crea l'immagine del disco con il comando disk copy dd
$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678
$ umount /dev/sdb1
Attenzione: assicurati che il comando sia completamente preciso, puoi danneggiare altri dischi con questo comando
if=posizione del file immagine RASPBIAN JESSIE LITE of=posizione della tua scheda microSD
$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (nota: in questo caso, è /dev/sdb, /dev/sdb1 era una partizione di fabbrica esistente sul microSD)
Configura il tuo RaspberriPi
Inserisci la tua nuova scheda microSD nel raspberrypi e accendilo con un monitor collegato alla porta HDMI
Login
utente: pi pass: lampone
Cambia la password del tuo account per sicurezza
sudo passwd più
Abilita le opzioni avanzate di RaspberriPi
sudo raspi-config
Scegliere:
1 Espandi il file system
9 Opzioni avanzate
A2 Hostname cambialo in "RobbieAssistant"
A4 SSH Abilita server SSH
A7 I2C Abilita interfaccia i2c
Abilita la tastiera inglese/americana
sudo nano /etc/default/keyboard
Modifica la seguente riga: XKBLAYOUT="us"
Riavvia PI per modifiche al layout della tastiera / ridimensionamento del file system per avere effetto
$ sudo shutdown -r now
Connessione automatica al tuo WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Aggiungi le seguenti righe per far connettere automaticamente il tuo raspberrypi al WiFi di casa (se la tua rete wireless si chiama "linksys", ad esempio, nell'esempio seguente)
network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Riavvia PI per connetterti alla rete WiFi
$ sudo shutdown -r now
Ora che il tuo PI è finalmente sulla rete locale, puoi accedere in remoto tramite SSH. Ma prima devi ottenere l'indirizzo IP che ha attualmente.
$ ifconfig Cerca "inet addr: 192.168. XXX. XXX" nell'output del comando seguente per l'indirizzo IP del tuo PI
Vai su un'altra macchina e accedi al tuo raspberrypi tramite ssh
$ ssh [email protected]. XXX. XXX
Avvia l'installazione dei pacchetti richiesti
$ 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-devpi libncurses5-dev-devreadline3 python3-requests python3-setuptools python3-urllib python3-urllib3 python3-requests vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpython-gpython-pithon-gpython-pithon-dev python-gpython-ppython 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-pip python-dev rpyon-dev -gpiozero python-psutil xz-utils
$ sudo pip richieste di installazione
Aggiorna le impostazioni del fuso orario locale
$ sudo dpkg-reconfigure tzdata
seleziona il tuo fuso orario utilizzando l'interfaccia
Imposta il comando semplice directory l [opzionale]
vi ~/.bashrc
aggiungi la seguente riga:
alias l='ls -lh'
sorgente ~/.bashrc
Correggi l'evidenziazione della sintassi predefinita di VIM [opzionale]
sudo vi /etc/vim/vimrc
decommenta la seguente riga:
sintassi attiva
crea la cartella dei log in modo che l'applicazione esegua mkdir /home/pi/RobbieAssistant/logs
chmod 777 /home/pi/RobbieAssistant/logs
Configura l'applicazione per l'esecuzione corretta nel file di configurazione settings.py Trova il file settings-shadow.py nella cartella /includes/ del progetto e copialo in settings.py e regola le tue impostazioni correnti
# chiave API forecast.io per informazioni meteo locali
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'LA TUA CHIAVE API PER FORECAST. IO'
# opzionale per l'esecuzione del registratore di temperatura/umidità remoto
dashboardServer = 'mydevicelogger.com'
# cerca su google per ottenere la latitudine/longitudine per la tua posizione di casa
latitudine = 41.4552578
longitudine = -72.1665444
Passaggio 2: materiali di consumo necessari
LamponiPi Zero
DHT11 Umidostato
Luci LED (x4) Verde/Giallo/Blu/RossoDisplay Digole da 2,6"
Passaggio 3: costruire e collegare il dispositivo
Prepara il display Digole per i2C
Sul retro del Digole Display, saldare il jumper per assegnare al display l'utilizzo del protocollo i2c
Passaggio 4: utilizzare una stampante 3D, stampare la copertina, la scatola e i pannelli posteriori
Utilizzando i seguenti file X STL nella cartella 3DPrint, R. O. B. Robot, cablaggio LED e supporto per display
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-harness-final.stl
MiniNintendoROB.zip
Stampa robot di: Mini Nintendo R. O. B. - di RabbitEngineering
www.thingiverse.com/thing:1494964
Ho usato la burocrazia per far arrossire gli occhi con lo sfondo nero della visiera
Passaggio 5: cablaggio dei componenti
Digole Display
GND -> GND
DATI -> SDA
CLK -> SCL
VCC -> 3V
DHT11 Umidostato
VCC -> 5V
GND -> GND
DATI -> GPIO 25
Resistenza BLU
VCC -> GPIO 17 (con resistenza da 270ohm)
GND -> GND
Resistenza GIALLA
VCC -> GPIO 13 (con resistenza da 270ohm)
GND -> GND
Resistenza VERDE
VCC -> GPIO 6 (con resistenza da 270ohm)
GND -> GND
Resistenza ROSSA
VCC -> GPIO 12 (con resistenza da 270ohm)
GND -> GND
Pulsante momentaneo ROSSO
VCC -> GPIO 16 (con resistenza da 270ohm)
GND -> GND
Pulsante momentaneo BLU
VCC -> GPIO 26 (con resistenza da 270ohm)
GND -> GND
Passaggio 6: collegare i componenti al robot
Dopo aver stampato il porta schermo, collegalo al display digole
Collega il display all'RPi con un cablaggio sufficiente per incollare l'RPi sul retro del robot
Stampa il controller e collega i pulsanti con un cablaggio sufficiente per arrivare sul retro del robot
Finitura Cablaggio e assemblaggio del robot con l'RPi collegato sul retro e il DHT11 incollato sul fondo
Passaggio 7: verifica della configurazione I2C
Avvia il tuo RaspberryPi e assicurati che il bus I2C riconosca tutti i tuoi display a 7/14 segmenti collegati. [a ciascun display viene assegnato un indirizzo univoco descritto sopra da come si saldano i ponticelli di ciascun display in diverse combinazioni]
Se hai il display con il ponticello saldato correttamente, dovresti avere il seguente output per il comando i2cdetect:
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: -- -- -- -- -- -- -- --
Passaggio 8: installazione di DHT11
$ cd ~
$ git clone
$ cd Adafruit_Python_DHT/
$ sudo python setup.py install
$ sudo python ez_setup.py
$ cd esempi/
$ vi simpletest.pyCambia la seguente riga:
sensore = Adafruit_DHT. DHT11
Commenta la riga fuori
pin = 'P8_11'
Decommenta la riga e cambia il numero pin in 16
perno = 25
Esegui il test
python simpletest.py
Dovresti vedere una lettura metrica di Temp e Umidità visualizzata sulla riga di comando.
Passaggio 9: clona repository
$ cd ~$ git clone
Passaggio 10: aggiungere l'API Pushbullet (usando Python 3.5)
Usando l'app pushbullet per il tuo telefono, registrati per ricevere una chiave API per avere un semplice script python in grado di acquisire e inviare notifiche hub dati e indicatori
Installa Python 3.5 per la funzionalità asyncio
$ 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 libss sudo apt-get install libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev Se non è possibile trovare uno dei pacchetti, provare un numero di versione più recente (ad es. libdb5.4-dev invece di 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 idle35="/usr/local/opt/python-3.5.2/bin/python3.5"' >>.bashrc Installa le dipendenze di python3
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 install request Modo opzionale Scarica il repository python direttamente per ottenere le dipendenze python senza l'uso di pip installandolo
git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Visita la pagina delle impostazioni pushbullet nel tuo account per generare un Chiave API da utilizzare
Configura il tuo script pushbullet-listener.py per avere l'API corretta e l'host centrale della dashboard
# la tua chiave API da PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"
# host del server centrale dashboard dashboardServer = 'MY-SERVER-HERE.com'
Passaggio 11: aggiungi lo script per iniziare all'avvio della dashboard e riavvia la dashboard Pi
$ 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
Passaggio 12: FACOLTATIVO: creare le tue immagini Nintendo da visualizzare sul display
Carica il tuo file 128x128 al seguente URL:
www.digole.com/tools/PicturetoC_Hex_converter.php
Scegli il tuo file immagine da caricare, aggiungi la dimensione che vuoi che sia sullo schermo (larghezza/altezza)
Seleziona "256 colori per OLED/LCD a colori (1 byte/pixel)" nel menu a discesa "Utilizzato per"
Ottieni l'output esadecimale.
Aggiungi l'output esadecimale a un file display/build/header (.h), usa gli altri come guide per la sintassi.
Includere il nuovo file nel file digole.c #include myimage.h
Includere un nuovo hook della riga di comando al file immagine nel file. Nota: il comando seguente dice di disegnare la tua immagine in posizione 10 pixel su 10 pixel in basso. Puoi cambiarlo in diverse coordinate X, Y, puoi anche cambiare i valori 128, 128 a qualsiasi dimensione sia effettivamente la tua nuova immagine.
} else if (strcmp(digoleCommand, "myimage") == 0) { drawBitmap256(10, 10, 128, 128, &myimageVariableHere, 0); // myimageVariableHere è definito nel tuo file (.h) }
Ora ricostruisci (ignora gli errori) di seguito per visualizzare la tua nuova immagine con il seguente comando.
$./digole miaimmagine
Ricostruzione [Incluso] Digole Display Driver per le tue modifiche opzionali
$ visualizzazione/costruzione di cd
$ gcc digole.c
$ mv a.out../../digole
$ chmod +x../../digole
Passaggio 13: finito
Hai finito!
Consigliato:
Notifica dei visitatori del sito Web con IFTTT: 6 passaggi
Notifica dei visitatori del sito Web con IFTTT: in questo istruibile, riceverai una notifica Android quando qualcuno visita il tuo sito Web. Quindi per questo devi avere un po 'di conoscenza del linguaggio di programmazione PHP e conoscenza di base del linguaggio C semplice per sapere come funziona questa app IFTTT lavori (
Notifica e-mail di rilevamento del movimento per DVR o NVR: 4 passaggi
Notifica e-mail di rilevamento del movimento per DVR o NVR: In questo tutorial ti mostreremo come impostare le notifiche e-mail di rilevamento del movimento sul tuo DVR o NVR. Quasi chiunque irrompe in un edificio sa che le persone hanno fatto ricorso all'installazione di sistemi di videosorveglianza per proteggere la propria appartenenza
Sistema di notifica automatico del caffè: 7 passaggi (con immagini)
Sistema di notifica automatica del caffè: in questo progetto rendo intelligente una caffettiera da ufficio, costruendo un sistema di avviso del caffè che invia notifiche Slack quando qualcuno prepara una tazza di caffè fresca. Il codice può essere modificato per inviare un'e-mail o un messaggio di testo. Questo progetto è costruito su un R
Avviso lavatrice Arduino - Notifica push al telefono con Blynk: 5 passaggi (con immagini)
Avviso lavatrice Arduino - Invia notifica al telefono con Blynk: la nostra lavatrice è in garage e non possiamo sentire i segnali acustici per indicare che il lavaggio è completo. Volevo trovare un modo per essere avvisato, ovunque ci trovassimo in casa, quando il ciclo era finito. Ho armeggiato con Arduino, ESP8266 WiFi
Notifica push IoT utilizzando Nodemcu sul telefono (per qualsiasi cosa): 5 passaggi (con immagini)
Notifica push IoT utilizzando Nodemcu sul telefono (per qualsiasi cosa): l'invio di notifiche per messaggi, e-mail è vecchio stile… Quindi facciamo qualcosa di nuovo che sia molto facile e semplice NESSUN HOSTING PHP LATO SERVER COMPLICATO O ALTRE COMPLICAZIONI… Domotica, livello della pompa dell'acqua, irrigazione del giardino, pet f