Obsah:

R.O.B. Asistent oznámenia telefónu: 13 krokov
R.O.B. Asistent oznámenia telefónu: 13 krokov

Video: R.O.B. Asistent oznámenia telefónu: 13 krokov

Video: R.O.B. Asistent oznámenia telefónu: 13 krokov
Video: Беслан. Помни / Beslan. Remember (english & español subs) 2024, November
Anonim
R. O. B. Asistent upozornení na telefón
R. O. B. Asistent upozornení na telefón

Od khinds10www.kevinhinds.com Nasledovať viac od autora:

Nezničiteľná detská pohovka!
Nezničiteľná detská pohovka!
Nezničiteľná detská pohovka!
Nezničiteľná detská pohovka!
Rýchle a jednoduché počítače na stenu
Rýchle a jednoduché počítače na stenu
Rýchle a jednoduché počítače na stenu
Rýchle a jednoduché počítače na stenu
Digitálna krbová obrazovka
Digitálna krbová obrazovka
Digitálna krbová obrazovka
Digitálna krbová obrazovka

O: 3D tlač a navrhovanie projektov RaspberryPI už niekoľko rokov Viac o khinds10 »

Asistent oznámenia stolného telefónu (R. O. B.) Robotický prevádzkový kamarát

Krok 1: Blikanie pevného disku RaspberriPi / inštalácia požadovaného softvéru (pomocou systému Ubuntu Linux)

Vytvorte si nový pevný disk pre DashboardPI

Vložte kartu microSD do počítača pomocou adaptéra USB a vytvorte obraz disku pomocou príkazu dd

Nájdite vloženú kartu microSD pomocou príkazu df -h, odpojte ju a vytvorte obraz disku pomocou príkazu dd copy copy

$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/médiá/XXX/1234-5678

$ umount /dev /sdb1

Pozor: uistite sa, že je príkaz úplne presný, môžete týmto príkazom poškodiť ostatné disky

if = umiestnenie obrázkového súboru RASPBIAN JESSIE LITE z = umiestnenie vašej karty microSD

$ sudo dd bs = 4M if =/cesta/do/raspbian-jessie-lite.img of =/dev/sdb (poznámka: v tomto prípade je to/dev/sdb,/dev/sdb1 bol existujúcim továrenským oddielom na microSD)

Nastavenie RaspberriPi

Vložte novú kartu microSD do Raspberrypi a zapnite ju monitorom pripojeným k portu HDMI

Prihlásiť sa

užívateľ: pi pass: malina

Z bezpečnostných dôvodov si zmeňte heslo k účtu

sudo passwd pi

Povoľte rozšírené možnosti RaspberriPi

sudo raspi-config

Vyberte si:

1 Rozbaľte Systém súborov

9 Rozšírené možnosti

A2 Hostname zmeňte na „RobbieAssistant“

A4 SSH Povoliť server SSH

A7 I2C Povoliť rozhranie i2c

Povoliť anglickú/americkú klávesnicu

sudo nano/etc/default/keyboard

Zmeňte nasledujúci riadok: XKBLAYOUT = „my“

Reštartujte PI, aby sa prejavili zmeny rozloženia klávesnice / zmena veľkosti systému súborov

$ sudo shutdown -r teraz

Automatické pripojenie k WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Pridajte nasledujúce riadky, aby sa váš raspberrypi automaticky pripojil k vášmu domácemu WiFi (ak je napríklad vaša bezdrôtová sieť v nasledujúcom príklade pomenovaná „linksys“)

network = {ssid = "linksys" psk = "BEZDRÔTOVÉ HESLO TU"} Reštartovaním PI sa pripojíte k sieti WiFi

$ sudo shutdown -r teraz

Teraz, keď je váš PI konečne v lokálnej sieti, môžete sa k nemu vzdialene prihlásiť pomocou SSH. Najprv však musíte získať IP adresu, ktorú momentálne má.

$ ifconfig Hľadaj vo výstupe nasledujúceho príkazu pre IP adresu PI „inet addr: 192.168. XXX. XXX“

Prejdite na iný počítač a prihláste sa do svojho raspberrypi pomocou ssh

$ ssh [email protected]. XXX. XXX

Začnite s inštaláciou požadovaných balíkov

$ sudo apt-get aktualizácia

$ 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žiadavky python3-setuptools python3-urllib python3-urllib3 python3-požiadavky 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 požiadavky na inštaláciu

Aktualizujte nastavenia miestneho časového pásma

$ sudo dpkg-reconfigure tzdata

vyberte svoje časové pásmo pomocou rozhrania

Nastavte príkaz jednoduchého adresára l [voliteľné]

vi ~/.bashrc

pridajte nasledujúci riadok:

alias l = 'ls -lh'

zdroj ~/.bashrc

Opraviť zvýraznenie predvolenej syntaxe VIM [voliteľné]

sudo vi/etc/vim/vimrc

odkomentujte nasledujúci riadok:

syntax zapnutá

vytvorte priečinok s protokolmi pre aplikáciu na spustenie protokolov mkdir/home/pi/RobbieAssistant/

chmod 777/home/pi/RobbieAssistant/logy

Nakonfigurujte aplikáciu, aby správne bežala v konfiguračnom súbore settings.py Nájdite súbor settings-shadow.py v priečinku / includes / projektu a skopírujte ho na adresu settings.py a upravte podľa aktuálnych nastavení

# prognóza.io Kľúč API pre miestne informácie o počasí

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

weatherAPIKey = 'KĽÚČ VAŠEHO API pre PREDBEŽNÚ IO'

# voliteľné na spustenie vzdialeného záznamníka teploty/vlhkosti

dashboardServer = 'mydevicelogger.com'

# vyhľadajte na Googli a získajte zemepisnú šírku/dĺžku pre svoju domovskú polohu

zemepisná šírka = 41,4552578

zemepisná dĺžka = -72,1665444

Krok 2: Potrebné zásoby

Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby

RaspberriPi Zero

Humidistat DHT11

LED svetlá (x4) zelená / žltá / modrá / červená 2,6 palcový displej Digole

Krok 3: Zostavte a zapojte zariadenie

Zostavte a zapojte zariadenie
Zostavte a zapojte zariadenie

Pripravte si displej Digole pre i2C

Na zadnej strane displeja Digole spájkujte prepojku, aby sa priradil displej tak, aby používal protokol i2c

Krok 4: Pomocou 3D tlačiarne vytlačte kryt, škatuľu a zadný panel

Pomocou 3D tlačiarne vytlačte kryt, škatuľu a zadné panely
Pomocou 3D tlačiarne vytlačte kryt, škatuľu a zadné panely

Pomocou nasledujúcich súborov X STL v priečinku 3DPrint R. O. B. Robot, LED zväzok a držiak na displej

buttonContainer-base.stl

tlačidloKontejner-veko.stl

displaymount-final.stl

led-harness-final.stl

MiniNintendoROB.zip

Robot Print: Mini Nintendo R. O. B. - od RabbitEngineering

www.thingiverse.com/thing:1494964

Pomocou červenej pásky som urobil oči červené s pozadím čierneho šiltu

Krok 5: Zapojenie komponentov

Zapojenie komponentov
Zapojenie komponentov

Displej Digole

GND -> GND

ÚDAJE -> SDA

CLK -> SCL

VCC -> 3V

Humidistat DHT11

VCC -> 5V

GND -> GND

DATA -> GPIO 25

MODRÝ rezistor

VCC -> GPIO 17 (s odporom 270 ohmov)

GND -> GND

ŽLTÝ odpor

VCC -> GPIO 13 (s odporom 270 ohmov)

GND -> GND

ZELENÝ odpor

VCC -> GPIO 6 (s odporom 270 ohmov)

GND -> GND

ČERVENÝ odpor

VCC -> GPIO 12 (s odporom 270 ohmov)

GND -> GND

ČERVENÉ chvíľkové tlačidlo

VCC -> GPIO 16 (s odporom 270 ohmov)

GND -> GND

MODRÉ chvíľkové tlačidlo

VCC -> GPIO 26 (s odporom 270 ohmov)

GND -> GND

Krok 6: Pripojte komponenty k robotu

Pripojte komponenty k robotu
Pripojte komponenty k robotu
Pripojte komponenty k robotu
Pripojte komponenty k robotu
Pripojte komponenty k robotu
Pripojte komponenty k robotu

Keď vytlačíte držiak obrazovky, pripojte ho k displeju digole

Pripojte displej k RPi pomocou dostatočného zapojenia, aby bolo možné RPi prilepiť k zadnej časti robota

Vytlačte ovládač a prepojte tlačidlá dostatočným zapojením, aby sa dostal k zadnej časti robota

Dokončite zapojenie a zostavenie robota tak, aby bol RPi pripojený k zadnej časti a DHT11 prilepený k spodnej časti

Krok 7: Skontrolujte konfiguráciu I2C

Spustite RaspberryPi a uistite sa, že zbernica I2C rozpoznáva všetky vaše pripojené segmentové displeje 7/14. [každý displej má jedinečnú adresu, ako je popísané vyššie, podľa toho, ako spájkujete prepojky každého displeja v rôznych kombináciách]

Ak máte displej s prepojkou prepojený správne, mali by ste mať nasledujúci príkaz pre príkaz 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: -- -- -- -- -- -- -- --

Krok 8: Inštalácia DHT11

$ cd ~

$ git klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py install

$ sudo python ez_setup.py

$ cd príklady/

$ vi simpletest.pyZmeňte nasledujúci riadok:

senzor = Adafruit_DHT. DHT11

Komentujte riadok

pin = 'P8_11'

Odkomentujte riadok a zmeňte číslo PIN na 16

kolík = 25

Spustite test

python simpletest.py

Na príkazovom riadku by ste mali vidieť metrické hodnoty teploty a vlhkosti.

Krok 9: Klonovacie úložisko

$ cd ~ $ git klon

Krok 10: Pridajte rozhranie Pushbullet API (pomocou Pythonu 3.5)

Pomocou aplikácie pushbullet vo svojom telefóne sa zaregistrujte a získajte kľúč API, aby jednoduchý skript v jazyku Python dokázal zachytávať a odosielať oznámenia a indikátory indikátorov dátového centra

Nainštalujte si Python 3.5, aby fungoval 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 Ak jeden z balíkov nemožno nájsť, skúste použiť novšie číslo verzie (napr. libdb5.4-dev namiesto 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 Nainštalujte závislosti python3

USD

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Navštívte stránku nastavení pushbullet vo svojom účte a vygenerujte Kľúč API na použitie

Nakonfigurujte svoj skript pushbullet-listener.py tak, aby mal správneho hostiteľa rozhrania API a hlavného panela

# váš kľúč API od PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

# hostiteľ centrálneho servera hostiteľ dashboardServer = 'MY-SERVER-HERE.com'

Krok 11: Pridajte skript na začiatok pri spustení hlavného panela a reštartujte ovládací 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: VOLITEĽNÉ: Vytvorenie vlastných obrázkov Nintendo na vykreslenie na displeji

Nahrajte svoj vlastný súbor 128 x 128 na nasledujúcu adresu URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Vyberte súbor s obrázkom, ktorý chcete nahrať, a zadajte, akú veľkosť má mať na obrazovke (šírka/výška)

V rozbaľovacom zozname „Použité na“zvoľte „256 farieb pre farebný OLED/LCD (1 bajt/pixel)“

Získajte hexadecimálny výstup.

Pridajte hexadecimálny výstup do súboru display/ build/ header (.h), ostatné použite ako sprievodcu syntaxou.

Zahrňte nový súbor do súboru digole.c #include myimage.h

Zahrňte nový háčik príkazového riadka do súboru s obrázkom do súboru. Poznámka: nižšie uvedený príkaz hovorí, nakreslite svoj obrázok na pozíciu 10 pixelov nad 10 pixelov nadol. Môžete ho zmeniť na rôzne súradnice X, Y, alebo tiež môžete zmeniť hodnoty 128, 128 na akúkoľvek veľkosť, ktorou nový obrázok v skutočnosti je.

} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere je definovaná vo vašom (.h) súbore}

Teraz znova vytvorte (ignorujte chyby), aby sa váš nový obrázok vykreslil pomocou nasledujúceho príkazu.

$./digole myimage

Prestavba [v cene] Ovládač displeja Digole pre vaše voliteľné zmeny

$ cd zobrazenie/zostava

$ gcc digole.c

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

$ chmod +x../../digole

Krok 13: Hotovo

Skončil si!

Odporúča: