Taula de continguts:
- Pas 1: parpellejar el disc dur RaspberriPi / instal·lar el programari necessari (mitjançant Ubuntu Linux)
- Pas 2: Subministraments necessaris
- Pas 3: Creeu i connecteu el dispositiu
- Pas 4: amb una impressora 3D, imprimiu la portada, la caixa i els panells posteriors
- Pas 5: cablejat de components
- Pas 6: connecteu components al robot
- Pas 7: comproveu la configuració I2C
- Pas 8: Instal·lació de DHT11
- Pas 9: clona el dipòsit
- Pas 10: afegiu l'API Pushbullet (mitjançant Python 3.5)
- Pas 11: afegiu l'script per començar a l'arrencada del tauler i reinicieu el tauler de control Pi
- Pas 12: OPCIONAL: crear les vostres pròpies imatges de Nintendo per renderitzar-les a la pantalla
- Pas 13: acabat
Vídeo: R.O.B. Assistent de notificacions per telèfon: 13 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
Per khinds10www.kevinhinds.com Seguiu més per l'autor:
Quant a: Impressió 3D i disseny de projectes RaspberryPI des de fa uns anys Més informació sobre khinds10 »
Assistent de notificacions de telèfons d'escriptori amb un robot operatiu (R. O. B.)
Pas 1: parpellejar el disc dur RaspberriPi / instal·lar el programari necessari (mitjançant Ubuntu Linux)
Creeu el vostre nou disc dur per a DashboardPI
Introduïu la microSD a l'ordinador mitjançant un adaptador USB i creeu la imatge del disc mitjançant l'ordre dd
Localitzeu la targeta microSD inserida mitjançant l'ordre df -h, desmunteu-la i creeu la imatge del disc amb l'ordre copy copy dd
$ df -h / dev / sdb1 7.4G 32K 7.4G 1% / media / XXX / 1234-5678
$ umount / dev / sdb1
Atenció: assegureu-vos que l'ordre és completament precisa, ja que podeu danyar altres discos amb aquesta ordre
if = ubicació del fitxer d'imatge RASPBIAN JESSIE LITE de = ubicació de la vostra targeta microSD
$ sudo dd bs = 4M if = / path / to / raspbian-jessie-lite.img of = / dev / sdb (nota: en aquest cas, és / dev / sdb, / dev / sdb1 era una partició de fàbrica existent a la microSD)
Configuració del vostre RaspberriPi
Inseriu la vostra nova targeta microSD al raspberrypi i enceneu-la amb un monitor connectat al port HDMI
iniciar Sessió
usuari: pi pass: gerd
Canvieu la contrasenya del vostre compte per seguretat
sudo passwd pi
Activeu les opcions avançades de RaspberriPi
sudo raspi-config
Trieu:
1 Amplieu el sistema de fitxers
9 Opcions avançades
Nom d'amfitrió A2 canvieu-lo per "RobbieAssistant"
A4 SSH Activa el servidor SSH
A7 I2C Activa la interfície i2c
Activeu el teclat anglès / nord-americà
sudo nano / etc / default / keyboard
Canvieu la línia següent: XKBLAYOUT = "nosaltres"
Reinicieu PI per canviar el disseny del teclat / canviar la mida del sistema de fitxers perquè tingui efecte
$ sudo shutdown -r ara
Connecteu-vos automàticament al vostre WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Afegiu les línies següents per fer que el vostre raspberrypi es connecti automàticament al WiFi de casa (si la vostra xarxa sense fils es diu "linksys", per exemple, a l'exemple següent)
network = {ssid = "linksys" psk = "CONTRASENYA SENSE FIL AQUÍ"} Reinicieu PI per connectar-vos a la xarxa WiFi
$ sudo shutdown -r ara
Ara que el vostre PI es troba finalment a la xarxa local, podeu iniciar la sessió remotament mitjançant SSH. Però primer heu d’obtenir l’adreça IP que té actualment.
$ ifconfig Cerqueu "inet addr: 192.168. XXX. XXX" a la sortida de l'ordre següent per a l'adreça IP del vostre PI
Aneu a una altra màquina i inicieu sessió al vostre raspberrypi mitjançant ssh
$ ssh [email protected]. XXX. XXX
Comenceu a instal·lar els paquets necessaris
$ 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 libreadline6-dev python3-pip 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 python3 python3-pip vim git python-smbus 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 python-dev rpi.gpio python3 python3-pip python -gpiozero python-psutil xz-utils
Sol·licituds d'instal·lació de $ sudo pip
Actualitzeu la configuració de la zona horària local
$ sudo dpkg-reconfigure tzdata
seleccioneu la vostra zona horària mitjançant la interfície
Configureu l'ordre del directori simple l [opcional]
vi ~ /.bashrc
afegiu la línia següent:
àlies l = 'ls -lh'
font ~ /.bashrc
Corregiu el ressaltat de la sintaxi per defecte de VIM [opcional]
sudo vi / etc / vim / vimrc
descomenteu la línia següent:
sintaxi activada
fes la carpeta de registres perquè l'aplicació executi mkdir / home / pi / RobbieAssistant / logs
chmod 777 / home / pi / RobbieAssistant / logs
Configureu l'aplicació perquè s'executi correctament al fitxer de configuració settings.py Cerqueu el fitxer settings-shadow.py a la carpeta / includes / del projecte i copieu-lo a settings.py i ajusteu-lo a la vostra configuració actual.
Clau API #ecast.io per obtenir informació meteorològica local
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'LA SEVA CLAU D'API PER A FORECAST. IO'
# opcional per executar el registre de temperatura / humitat remot
dashboardServer = 'mydevicelogger.com'
# search google per obtenir la latitud / longitud de la ubicació de casa vostra
latitud = 41,4552578
longitud = -72,1665444
Pas 2: Subministraments necessaris
RaspberriPi Zero
Humidistat DHT11
Llums LED (x4) verd / groc / blau / vermell Pantalla Digol de 2,6"
Pas 3: Creeu i connecteu el dispositiu
Prepareu la pantalla Digole per a l’i2C
A la part posterior de la pantalla Digole, soldeu el pont per assignar la pantalla per utilitzar el protocol i2c
Pas 4: amb una impressora 3D, imprimiu la portada, la caixa i els panells posteriors
Utilitzant els fitxers X STL següents a la carpeta 3DPrint, R. O. B. Robot, arnès LED i muntatge de pantalla
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-harness-final.stl
MiniNintendoROB.zip
Robot Print de: Mini Nintendo R. O. B. - per RabbitEngineering
www.thingiverse.com/thing:1494964
Vaig fer servir la cinta vermella per fer que els ulls fossin vermells amb el fons de la visera negra
Pas 5: cablejat de components
Digole Display
GND -> GND
DADES -> SDA
CLK -> SCL
VCC -> 3V
Humidistat DHT11
VCC -> 5V
GND -> GND
DADES -> GPIO 25
Resistència BLAU
VCC -> GPIO 17 (amb resistència de 270ohm)
GND -> GND
Resistència GROC
VCC -> GPIO 13 (amb resistència de 270ohm)
GND -> GND
Resistència VERDA
VCC -> GPIO 6 (amb resistència de 270ohm)
GND -> GND
Resistència VERMELLA
VCC -> GPIO 12 (amb resistència de 270ohm)
GND -> GND
Polsador momentani VERMELL
VCC -> GPIO 16 (amb resistència de 270ohm)
GND -> GND
Polsador momentani BLAU
VCC -> GPIO 26 (amb resistència de 270ohm)
GND -> GND
Pas 6: connecteu components al robot
Després d'imprimir el suport de la pantalla, connecteu-lo a la pantalla del digol
Connecteu la pantalla al RPi amb un cablejat suficient per enganxar el RPi a la part posterior del robot
Imprimiu el controlador i connecteu els botons amb el cablejat suficient per arribar a la part posterior del robot
Acabar el cablejat i el muntatge del robot amb el RPi connectat a la part posterior i el DHT11 enganxat a la part inferior
Pas 7: comproveu la configuració I2C
Inicieu el vostre RaspberryPi i assegureu-vos que el bus I2C reconeix totes les pantalles del segment connectat 7/14. [cada pantalla té una adreça única descrita anteriorment per la manera de soldar els ponts de cada pantalla en diferents combinacions]
Si teniu la pantalla amb pont soldat correctament, hauríeu de tenir la sortida següent per a l'ordre 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: -- -- -- -- -- -- -- --
Pas 8: Instal·lació de DHT11
$ cd ~
$ git clon
$ cd Adafruit_Python_DHT /
Instal·lació de $ sudo python setup.py
$ sudo python ez_setup.py
$ cd exemples /
$ vi simpletest.py Canvieu la línia següent:
sensor = Adafruit_DHT. DHT11
Comenteu la línia
pin = 'P8_11'
Descomenteu la línia i canvieu el número del pin a 16
pin = 25
Executeu la prova
python simpletest.py
Hauríeu de veure una lectura mètrica de Temp i Humitat a la línia d'ordres.
Pas 9: clona el dipòsit
$ cd ~ $ git clon
Pas 10: afegiu l'API Pushbullet (mitjançant Python 3.5)
Mitjançant l’aplicació pushbullet per al vostre telèfon, registreu-vos per rebre una clau API per tenir un script Python senzill i poder capturar i enviar notificacions i indicadors del centre de dades
Instal·leu Python 3.5 per a la funcionalitat 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 libssl-dev sudo apt-get install libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev Si no es pot trobar un dels paquets, proveu un número de versió més recent (per exemple, libdb5.4-dev en lloc de 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 Instal·leu les dependències python3
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 peticions d'instal·lació Forma opcional Descarregueu directament el dipòsit de python per obtenir les dependències de python sense l'ús de pip que l'instal·li.
git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Visiteu la pàgina de configuració de pushbullet al vostre compte per generar un Clau API per utilitzar
Configureu el vostre script pushbullet-listener.py per tenir l'API correcta i l'amfitrió central del tauler
# your API Key from PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"
# dashboard central server host dashboardServer = 'MY-SERVER-HERE.com'
Pas 11: afegiu l'script per començar a l'arrencada del tauler i reinicieu el tauler de control 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
Pas 12: OPCIONAL: crear les vostres pròpies imatges de Nintendo per renderitzar-les a la pantalla
Pengeu el vostre propi fitxer de 128x128 a l'URL següent:
www.digole.com/tools/PicturetoC_Hex_converter.php
Trieu el fitxer d'imatge que voleu carregar, afegiu la mida que vulgueu a la pantalla (Amplada / Alçada)
Seleccioneu "256 colors per a color OLED / LCD (1 byte / píxel)" al menú desplegable "Utilitzat per"
Obteniu la sortida hexadecimal.
Afegiu la sortida hexadecimal a un fitxer display / build / header (.h), utilitzeu els altres com a guies de sintaxi.
Incloeu el fitxer nou al fitxer digole.c #include myimage.h
Incloeu un nou ganxo de línia d'ordres al fitxer d'imatge al fitxer. Nota: l'ordre següent diu dibuixar la imatge a la posició de 10 píxels per sobre de 10 píxels cap avall. Podeu canviar-lo a diferents coordenades X, Y, també podeu canviar els valors 128, 128 a la mida que tingueu realment la vostra nova imatge.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere es defineix al fitxer (.h)}
Ara torneu a crear (ignoreu els errors) que apareixen a continuació per fer que la vostra nova imatge es renderitzi amb l'ordre següent.
$./digole myimage
Reconstrucció [inclòs] Digole Display Driver per als vostres canvis opcionals
$ cd display / build
$ gcc digole.c
$ mv a.out../../digole
$ chmod + x../../digole
Pas 13: acabat
Ja has acabat!
Recomanat:
Envia notificacions de ThingSpeak a Mi Band 4: 6 Passos
Enviar notificacions de ThingSpeak a Mi Band 4: des que vaig comprar el meu Xiaomi Mi Band 4, vaig pensar en la possibilitat de fer un seguiment d'algunes dades de la meva estació meteorològica que estiguessin disponibles a ThingSpeak a través de la meva Mi Band 4. No obstant això, després d'algunes investigacions, vaig descobrir que les capacitats de Mi Band 4 ar
Rebeu notificacions per correu electrònic dels vostres projectes IoT: 6 passos
Rebeu notificacions per correu electrònic dels vostres projectes IoT: notificacions per correu electrònic del programa que connecten els vostres projectes IoT amb Adafruit IO i IFTTT. He publicat alguns projectes IoT. Espero que els hagueu vist, si no, us convido al meu perfil i els comprovo. Volia rebre algunes notificacions quan una variable
GPS Car Tracker amb notificacions per SMS i càrrega de dades Thingspeak, basat en Arduino, domòtica: 5 passos (amb imatges)
GPS Car Tracker amb notificacions per SMS i càrrega de dades Thingspeak, basat en Arduino, domòtica: Vaig fer aquest rastrejador GPS l'any passat i, ja que funciona bé, el publico ara a Instructable. Està connectat a l’endoll d’accessoris del maleter. El rastrejador GPS penja la posició del vehicle, la velocitat, la direcció i la temperatura mesurada a través d’un mòbil
Arduino per a una xarxa d’assistent per a la llar amb cable: 5 passos
Arduino per a una xarxa d’assistent per a la llar amb cable: els components Wifi com els diversos Sonoff, Tasmota i ESP8266 són molt fàcils de configurar i utilitzar, però sovint les coses no són fàcils tal com apareixen. Els components sense fils són menys rel
Enviar notificacions al telèfon des d'un ESP8266 .: 3 passos
Enviar notificacions al telèfon des d'un ESP8266 .: De tant en tant seria útil rebre notificacions per telèfon sobre els esdeveniments del vostre codi Arduino. L’aplicació ESP Notify per a Android i la corresponent biblioteca arduino us permeten aconseguir-ho amb facilitat i podeu enviar notificacions des de qualsevol ESP8266