Obsah:
- Krok 1: Blikající pevný disk RaspberriPi / instalace požadovaného softwaru (pomocí Ubuntu Linux)
- Krok 2: Potřebné zásoby
- Krok 3: Sestavte a zapojte zařízení
- Krok 4: Pomocí 3D tiskárny vytiskněte kryt, rámeček a zadní panely
- Krok 5: Zapojení komponent
- Krok 6: Připojte součásti k robotu
- Krok 7: Zkontrolujte konfiguraci I2C
- Krok 8: Instalace DHT11
- Krok 9: Klonovat úložiště
- Krok 10: Přidejte Pushbullet API (pomocí Pythonu 3.5)
- Krok 11: Přidejte skript na začátek při spouštění řídicího panelu a restartujte řídicí panel Pi
- Krok 12: VOLITELNÉ: Vytvoření vlastních obrázků Nintendo k vykreslení na displeji
- Krok 13: Hotovo
Video: OKRÁST. Asistent upozornění na telefon: 13 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Od khinds10www.kevinhinds.comDalší od autora:
O: 3D tisk a navrhování projektů RaspberryPI již několik let Více o khinds10 »
Asistent upozornění na stolní telefon (R. O. B.) Robotický provozní kamarád
Krok 1: Blikající pevný disk RaspberriPi / instalace požadovaného softwaru (pomocí Ubuntu Linux)
Vytvořte nový pevný disk pro DashboardPI
Vložte microSD do počítače pomocí USB adaptéru a vytvořte obraz disku pomocí příkazu dd
Vyhledejte vloženou kartu microSD pomocí příkazu df -h, odpojte ji a vytvořte obraz disku pomocí příkazu dd copy copy
$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/média/XXX/1234-5678
$ umount /dev /sdb1
Upozornění: ujistěte se, že je příkaz zcela přesný, můžete tímto příkazem poškodit jiné disky
if = umístění obrazového souboru RASPBIAN JESSIE LITE = umístění vaší karty microSD
$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (poznámka: v tomto případě je to/dev/sdb,/dev/sdb1 byl existující tovární oddíl na microSD)
Nastavení RaspberriPi
Vložte novou kartu microSD do Raspberrypi a zapněte ji monitorem připojeným k portu HDMI
Přihlásit se
uživatel: pi pass: malina
Z bezpečnostních důvodů změňte heslo k účtu
sudo passwd pi
Povolte rozšířené možnosti RaspberriPi
sudo raspi-config
Vybrat:
1 Rozbalte Systém souborů
9 Pokročilé možnosti
A2 Název hostitele jej změňte na „RobbieAssistant“
A4 SSH Povolte server SSH
A7 I2C Povolit rozhraní i2c
Povolte anglickou/americkou klávesnici
sudo nano/etc/default/keyboard
Změňte následující řádek: XKBLAYOUT = "nás"
Restartujte PI pro změny rozložení klávesnice / změnu velikosti systému souborů, aby se projevily
$ sudo shutdown -r nyní
Automatické připojení k WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Přidejte následující řádky, aby se váš raspberrypi automaticky připojil k vaší domácí WiFi (pokud se vaše bezdrátová síť v následujícím příkladu jmenuje například „linksys“)
network = {ssid = "linksys" psk = "BEZDRÁTOVÉ HESLO ZDE"} Restartováním PI se připojíte k síti WiFi
$ sudo shutdown -r nyní
Nyní, když je váš PI konečně v místní síti, můžete se do něj vzdáleně přihlásit pomocí SSH. Nejprve však musíte získat IP adresu, kterou aktuálně má.
$ ifconfig Hledejte „inet addr: 192.168. XXX. XXX“ve výstupu následujícího příkazu pro IP adresu vašeho PI
Přejděte na jiný počítač a přihlaste se ke svému raspberrypi pomocí ssh
$ ssh [email protected]. XXX. XXX
Začněte instalovat požadované balíčky
$ 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-požadavky python3-setuptools python3-urllib python3-urllib3 python3-požadavky vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip vim git python-smbus i2c-tools 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
$ sudo pip install requests
Aktualizujte nastavení místního časového pásma
$ sudo dpkg-reconfigure tzdata
vyberte své časové pásmo pomocí rozhraní
Nastavte jednoduchý příkaz l adresáře [volitelně]
vi ~/.bashrc
přidejte následující řádek:
alias l = 'ls -lh'
zdroj ~/.bashrc
Opravit zvýraznění výchozí syntaxe VIM [volitelně]
sudo vi/etc/vim/vimrc
odkomentujte následující řádek:
syntaxe zapnuta
vytvořte pro aplikaci složku logů pro spuštění mkdir/home/pi/RobbieAssistant/logs
chmod 777/home/pi/RobbieAssistant/protokoly
Nakonfigurujte aplikaci tak, aby běžela správně v konfiguračním souboru settings.py Najděte soubor settings-shadow.py ve složce / includes / projektu a zkopírujte jej do settings.py a upravte podle aktuálního nastavení
# prognóza.io Klíč API pro místní informace o počasí
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'VÁŠ KLÍČ API PRO FORECAST. IO'
# volitelné pro spuštění vzdáleného záznamníku teploty/vlhkosti
dashboardServer = 'mydevicelogger.com'
# hledejte na Googlu a získejte zeměpisnou šířku/délku pro své domovské místo
zeměpisná šířka = 41,4552578
zeměpisná délka = -72,1665444
Krok 2: Potřebné zásoby
RaspberriPi Zero
DHT11 Humidistat
LED světla (x4) zelená / žlutá / modrá / červená 2,6 displej Digole
Krok 3: Sestavte a zapojte zařízení
Připravte si displej Digole pro i2C
Na zadní straně displeje Digole pájením propojky přiřaďte zobrazení k použití protokolu i2c
Krok 4: Pomocí 3D tiskárny vytiskněte kryt, rámeček a zadní panely
Pomocí následujících souborů X STL ve složce 3DPrint R. O. B. Robot, LED svazek a držák displeje
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-harness-final.stl
MiniNintendoROB.zip
Robot Print od: Mini Nintendo R. O. B. - od RabbitEngineering
www.thingiverse.com/thing:1494964
Použil jsem byrokracii, aby byly oči červené s pozadím černého hledí
Krok 5: Zapojení komponent
Displej Digole
GND -> GND
DATA -> SDA
CLK -> SCL
VCC -> 3V
DHT11 Humidistat
VCC -> 5V
GND -> GND
DATA -> GPIO 25
MODRÝ rezistor
VCC -> GPIO 17 (s odporem 270 ohmů)
GND -> GND
ŽLUTÝ odpor
VCC -> GPIO 13 (s odporem 270 ohmů)
GND -> GND
ZELENÝ odpor
VCC -> GPIO 6 (s odporem 270 ohmů)
GND -> GND
ČERVENÝ odpor
VCC -> GPIO 12 (s odporem 270 ohmů)
GND -> GND
ČERVENÉ chvilkové tlačítko
VCC -> GPIO 16 (s odporem 270 ohmů)
GND -> GND
MODRÉ momentální tlačítko
VCC -> GPIO 26 (s odporem 270 ohmů)
GND -> GND
Krok 6: Připojte součásti k robotu
Jakmile vytisknete držák obrazovky, připojte jej k displeji digole
Připojte displej k RPi pomocí dostatečného zapojení, aby bylo možné RPi přilepit k zadní části robota
Vytiskněte ovladač a propojte tlačítka dostatečným kabelem, aby se dostal do zadní části robota
Dokončete zapojení a sestavení robota tak, aby byl RPi připojen k zadní části a DHT11 přilepený ke dnu
Krok 7: Zkontrolujte konfiguraci I2C
Spusťte RaspberryPi a ujistěte se, že sběrnice I2C rozpoznává všechny připojené segmentové displeje 7/14. [každý displej má jedinečnou adresu popsanou výše podle toho, jak pájíte propojky každého displeje v různých kombinacích]
Pokud máte displej s propojkou správně připájený, měli byste mít pro příkaz i2cdetect následující výstup:
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: -- -- -- -- -- -- -- --
Krok 8: Instalace DHT11
$ cd ~
$ git klon
$ cd Adafruit_Python_DHT/
$ sudo python setup.py install
$ sudo python ez_setup.py
$ cd příklady/
$ vi simpletest.py Změňte následující řádek:
senzor = Adafruit_DHT. DHT11
Komentujte řádek
pin = 'P8_11'
Odkomentujte řádek a změňte číslo PINu na 16
kolík = 25
Spusťte test
python simpletest.py
Na příkazovém řádku byste měli vidět metrické hodnoty teploty a vlhkosti.
Krok 9: Klonovat úložiště
$ cd ~ $ git klon
Krok 10: Přidejte Pushbullet API (pomocí Pythonu 3.5)
Pomocí aplikace pushbullet pro váš telefon se zaregistrujte a získejte klíč API, abyste měli jednoduchý skript pythonu, který dokáže zachytit a zasílat oznámení a indikátory příznaků datového centra
Nainstalujte Python 3.5 pro funkci 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 Pokud některý z balíků nelze najít, zkuste použít novější číslo verze (např. libdb5.4-dev místo 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 Nainstalujte závislosti pythonu3
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 install requests Optional way Download the python repository directly to obtain the python dependencieses without the use of pip installing it
git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Navštivte stránku nastavení pushbullet ve svém účtu a vygenerujte Klíč API k použití
Nakonfigurujte skript pushbullet-listener.py tak, aby měl správné hostitelské rozhraní API a řídicí panel
# váš klíč API z PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"
# dashboard central server host dashboardServer = 'MY-SERVER-HERE.com'
Krok 11: Přidejte skript na začátek při spouštění řídicího panelu a restartujte řídicí panel 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
Krok 12: VOLITELNÉ: Vytvoření vlastních obrázků Nintendo k vykreslení na displeji
Nahrajte vlastní soubor 128x128 na následující adresu URL:
www.digole.com/tools/PicturetoC_Hex_converter.php
Vyberte soubor s obrázkem, který chcete nahrát, přidejte velikost, kterou chcete mít na obrazovce (šířka/výška)
V rozevíracím seznamu „Použito pro“vyberte „256 barev pro barevný OLED/LCD (1 bajt/pixel)“
Získejte hexadecimální výstup.
Přidejte šestnáctkový výstup do souboru zobrazení/ sestavení/ záhlaví (.h), ostatní použijte jako vodítka pro syntaxi.
Zahrnout nový soubor do souboru digole.c #include myimage.h
Zahrňte do souboru obrázku nový háček příkazového řádku. Poznámka: níže uvedený příkaz říká, nakreslete svůj obrázek na pozici 10 pixelů přes 10 pixelů dolů. Můžete jej změnit na různé souřadnice X, Y, můžete také změnit hodnoty 128, 128 na jakoukoli velikost vašeho nového obrázku ve skutečnosti je.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere je definován ve vašem (.h) souboru}
Nyní znovu vytvořte (ignorujte chyby) níže, aby se váš nový obrázek vykreslil pomocí následujícího příkazu.
$./digole myimage
Přestavba [zahrnuto] Digole Display Driver pro vaše volitelné změny
$ cd zobrazení/sestavení
$ gcc digole.c
$ mv a.out../../digole
$ chmod +x../../digole
Krok 13: Hotovo
Jste hotovi!
Doporučuje:
Upozornění na vodu - zařízení, které zachrání vaši loď: 5 kroků (s obrázky)
Varování před vodou - zařízení, které zachrání vaši loď: Pokud jste majitelem lodi, je tu naprosté pohodlí, když konečně dostanete loď na suchou zemi. Nemůže se tam potopit. Všude jinde stojí před neustálou bitvou o překonání tendence sklouznout pod vlny a zmizet. Během zimy tady na Aljašce
Systém upozornění na počasí: 6 kroků
Weather Alert Light System: Systém upozornění na počasí mění osvětlení tak, aby indikoval různá varování o počasí nebo hodinky. Tento systém využívá volně přístupná data o počasí k provedení změny osvětlení pro indikaci stavu počasí. Raspberry pi (přes node-red) kontroluje
Upozornění na teplotu a vlhkost pomocí AWS a ESP32: 11 kroků
Upozornění na teplotu a vlhkost pomocí AWS a ESP32: V tomto tutoriálu budeme měřit různé údaje o teplotě a vlhkosti pomocí teplotního a vlhkostního senzoru. Dozvíte se také, jak tato data odeslat do AWS
Vytváření upozornění pomocí senzoru teploty a vlhkosti Ubidots-ESP32+: 9 kroků
Vytvoření výstrahy pomocí Ubidots-ESP32+snímač teploty a vlhkosti: V tomto tutoriálu změříme různé údaje o teplotě a vlhkosti pomocí snímače teploty a vlhkosti. Dozvíte se také, jak tato data odeslat do Ubidots. Takže jej můžete analyzovat odkudkoli pro různé aplikace. Také vytvořením emai
Upozornění na sušičku Arduino - push notifikace na telefon s Blynkem: 5 kroků (s obrázky)
Upozornění na pračku a sušičku Arduino - push notifikace na telefon s Blynkem: Naše pračka je v garáži a neslyšíme pípnutí, která ukazují, že praní je dokončeno. Chtěl jsem najít způsob, jak dostat oznámení, ať jsme kdekoli v domě, když byl cyklus dokončen. Pohrával jsem si s Arduino, ESP8266 WiFi