Spisu treści:

OBRABOWAĆ. Asystent powiadomień telefonicznych: 13 kroków
OBRABOWAĆ. Asystent powiadomień telefonicznych: 13 kroków

Wideo: OBRABOWAĆ. Asystent powiadomień telefonicznych: 13 kroków

Wideo: OBRABOWAĆ. Asystent powiadomień telefonicznych: 13 kroków
Wideo: Wyłączenie sugestii Huawei P20Pro 2024, Wrzesień
Anonim
OBRABOWAĆ. Asystent powiadomień telefonicznych
OBRABOWAĆ. Asystent powiadomień telefonicznych

By khinds10www.kevinhinds.comObserwuj Więcej autora:

Niezniszczalna kanapa dla dzieci!
Niezniszczalna kanapa dla dzieci!
Niezniszczalna kanapa dla dzieci!
Niezniszczalna kanapa dla dzieci!
Komputery do szybkiego i łatwego montażu na ścianie
Komputery do szybkiego i łatwego montażu na ścianie
Komputery do szybkiego i łatwego montażu na ścianie
Komputery do szybkiego i łatwego montażu na ścianie
Cyfrowy ekran kominkowy
Cyfrowy ekran kominkowy
Cyfrowy ekran kominkowy
Cyfrowy ekran kominkowy

O firmie: Druk 3D i projektowanie projektów RaspberryPI już od kilku lat Więcej o khinds10 »

Asystent powiadomień telefonu stacjonarnego z robotem obsługującym (R. O. B.)

Krok 1: Flashowanie dysku twardego RaspberriPi / instalacja wymaganego oprogramowania (przy użyciu systemu Ubuntu Linux)

Utwórz nowy dysk twardy dla DashboardPI

Włóż kartę microSD do komputera za pomocą adaptera USB i utwórz obraz dysku za pomocą polecenia dd

Zlokalizuj włożoną kartę microSD za pomocą polecenia df -h, odmontuj ją i utwórz obraz dysku za pomocą polecenia disk copy dd

$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678

$ umount /dev/sdb1

Uwaga: upewnij się, że polecenie jest całkowicie dokładne, za pomocą tego polecenia możesz uszkodzić inne dyski

if=lokalizacja pliku obrazu RASPBIAN JESSIE LITE of=lokalizacja karty microSD

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (uwaga: w tym przypadku jest to /dev/sdb, /dev/sdb1 to istniejąca partycja fabryczna na microSD)

Konfigurowanie RaspberriPi

Włóż nową kartę microSD do raspberrypi i włącz ją za pomocą monitora podłączonego do portu HDMI

Zaloguj sie

użytkownik: pi pass: malina

Zmień hasło do konta ze względów bezpieczeństwa

sudo passwd pi

Włącz zaawansowane opcje RaspberriPi

sudo raspi-config

Wybierać:

1 Rozwiń system plików

9 opcji zaawansowanych

Nazwa hosta A2 zmień ją na „RobbieAssistant”

A4 SSH Włącz serwer SSH

A7 I2C Włącz interfejs i2c

Włącz klawiaturę angielską/amerykańską

sudo nano /etc/default/klawiatura

Zmień następujący wiersz: XKBLAYOUT="us"

Zrestartuj PI, aby zmiany układu klawiatury / zmiana rozmiaru systemu plików zaczęły obowiązywać

$ sudo zamknięcie -r teraz

Automatyczne łączenie z Wi-Fi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Dodaj następujące wiersze, aby raspberrypi automatycznie łączył się z domową siecią Wi-Fi (jeśli Twoja sieć bezprzewodowa nosi na przykład nazwę „linksys”, w poniższym przykładzie)

network={ ssid="linksys" psk="TUTAJ HASŁO BEZPRZEWODOWE" } Uruchom ponownie PI, aby połączyć się z siecią Wi-Fi

$ sudo zamknięcie -r teraz

Teraz, gdy Twoje PI jest już w sieci lokalnej, możesz zalogować się do niego zdalnie przez SSH. Ale najpierw musisz uzyskać adres IP, który obecnie posiada.

$ ifconfig Poszukaj "inet addr: 192.168. XXX. XXX" w wyniku następującego polecenia dla adresu IP twojego PI

Przejdź do innego komputera i zaloguj się do swojego raspberrypi przez ssh

$ ssh [email protected]. XXX. XXX

Rozpocznij instalację wymaganych pakietów

$ 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-pip python 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 libi2c-dev vim git python-smbus i2c-tools -gpiozero python-psutil xz-utils

$ sudo pip prośby o instalację

Zaktualizuj lokalne ustawienia strefy czasowej

$ sudo dpkg-reconfigure tzdata

wybierz swoją strefę czasową za pomocą interfejsu

Skonfiguruj proste polecenie l katalogu [opcjonalne]

vi ~/.bashrc

dodaj następujący wiersz:

alias l='ls -lh'

źródło ~/.bashrc

Napraw domyślne podświetlanie składni VIM [opcjonalne]

sudo vi /etc/vim/vimrc

odkomentuj następujący wiersz:

składnia włączona

utwórz folder logs, aby aplikacja uruchomiła mkdir /home/pi/RobbieAssistant/logs

chmod 777 /home/pi/RobbieAssistant/logs

Skonfiguruj aplikację, aby działała poprawnie w pliku konfiguracyjnym settings.py Znajdź plik settings-shadow.py w folderze /includes/ projektu i skopiuj go do pliku settings.py i dostosuj do swoich bieżących ustawień

# klucz API forecast.io do lokalnych informacji o pogodzie

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

weatherAPIKey = 'TWÓJ KLUCZ API DO FORECAST. IO'

# opcjonalnie do uruchomienia zdalnego rejestratora temperatury/wilgotności

dashboardServer = 'mydevicelogger.com'

# wyszukaj w Google, aby uzyskać szerokość/długość geograficzną dla swojej lokalizacji domowej

szerokość geograficzna = 41,4552578

długość geograficzna = -72,1665444

Krok 2: Potrzebne materiały

Potrzebne materiały
Potrzebne materiały
Potrzebne materiały
Potrzebne materiały
Potrzebne materiały
Potrzebne materiały
Potrzebne materiały
Potrzebne materiały

RaspberriPi Zero

Higrostat DHT11

Diody LED (x4) Zielony / żółty / niebieski / czerwony Wyświetlacz Digole 2,6"

Krok 3: Zbuduj i okablowaj urządzenie

Zbuduj i okablowaj urządzenie
Zbuduj i okablowaj urządzenie

Przygotuj wyświetlacz Digole dla i2C

Z tyłu wyświetlacza Digole przylutuj zworkę, aby przypisać wyświetlacz do korzystania z protokołu i2c

Krok 4: Za pomocą drukarki 3d wydrukuj okładkę, pudełko i panele tylne

Za pomocą drukarki 3d wydrukuj okładkę, pudełko i tylne panele
Za pomocą drukarki 3d wydrukuj okładkę, pudełko i tylne panele

Używając następujących plików X STL w folderze 3DPrint, R. O. B. Robot, uprząż LED i uchwyt wyświetlacza

buttonContainer-base.stl

buttonContainer-lid.stl

displaymount-final.stl

led-uprząż-final.stl

MiniNintendoROB.zip

Wydruk robota: Mini Nintendo R. O. B. - autorstwa RabbitEngineering

www.thingiverse.com/thing:1494964

Użyłem biurokracji, aby oczy były czerwone z czarnym tłem wizjera

Krok 5: Okablowanie komponentów

Okablowanie komponentów
Okablowanie komponentów

Wyświetlacz Digole

GND -> GND

DANE -> SDA

CLK -> SCL

VCC -> 3V

Higrostat DHT11

VCC -> 5V

GND -> GND

DANE -> GPIO 25

NIEBIESKI Rezystor

VCC -> GPIO 17 (z rezystorem 270ohm)

GND -> GND

ŻÓŁTY Rezystor

VCC -> GPIO 13 (z rezystorem 270ohm)

GND -> GND

ZIELONY Rezystor

VCC -> GPIO 6 (z rezystorem 270ohm)

GND -> GND

CZERWONY Rezystor

VCC -> GPIO 12 (z rezystorem 270ohm)

GND -> GND

CZERWONY przycisk chwilowy

VCC -> GPIO 16 (z rezystorem 270ohm)

GND -> GND

NIEBIESKI przycisk chwilowy

VCC -> GPIO 26 (z rezystorem 270ohm)

GND -> GND

Krok 6: Podłącz komponenty do robota

Podłącz komponenty do robota
Podłącz komponenty do robota
Podłącz komponenty do robota
Podłącz komponenty do robota
Podłącz komponenty do robota
Podłącz komponenty do robota

Po wydrukowaniu uchwytu ekranu podłącz go do wyświetlacza digole

Podłącz wyświetlacz do RPi za pomocą wystarczającego okablowania, aby przykleić RPi z tyłu robota

Wydrukuj kontroler i podłącz przyciski za pomocą wystarczającego okablowania, aby dostać się z tyłu robota

Zakończ okablowanie i montaż robota z RPi podłączonym z tyłu i DHT11 przyklejonym do spodu

Krok 7: Sprawdź konfigurację I2C

Uruchom RaspberryPi i upewnij się, że magistrala I2C rozpoznaje wszystkie podłączone wyświetlacze segmentowe 7/14. [każdy wyświetlacz otrzymuje unikalny adres opisany powyżej przez sposób lutowania zworek każdego wyświetlacza w różnych kombinacjach]

Jeśli masz wyświetlacz z prawidłowo przylutowaną zworką, powinieneś mieć następujące wyjście dla polecenia 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: Instalacja DHT11

$ cd ~

$ git clone

$ cd Adafruit_Python_DHT/

$ sudo python setup.py install

$ sudo python ez_setup.py

$ cd przykłady/

$ vi simpletest.pyZmień następujący wiersz:

czujnik = Adafruit_DHT. DHT11

Skomentuj linię out

pin = 'P8_11'

Odkomentuj linię i zmień numer pinu na 16

szpilka = 25

Uruchom test

python prostytest.py

Powinieneś zobaczyć odczyt metryczny temperatury i wilgotności wyświetlony w wierszu poleceń.

Krok 9: Klonuj repozytorium

$ cd ~ $ git clone

Krok 10: Dodaj Pushbullet API (za pomocą Pythona 3.5)

Korzystając z aplikacji pushbullet na telefon, zarejestruj się, aby otrzymać klucz API, aby prosty skrypt Pythona mógł przechwytywać i przesyłać powiadomienia centrum danych i flagi wskaźników

Zainstaluj Python 3.5, aby uzyskać funkcjonalność 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 Jeśli nie można znaleźć jednego z pakietów, wypróbuj nowszy numer wersji (np. libdb5.4-dev zamiast 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 Zainstaluj zależności python3

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 install request Opcjonalny sposób Pobierz repozytorium Pythona bezpośrednio, aby uzyskać zależności Pythona bez użycia pip instalowania go

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Odwiedź stronę ustawień pushbullet na swoim koncie, aby wygenerować Klucz API do użycia

Skonfiguruj swój skrypt pushbullet-listener.py, aby mieć poprawny interfejs API i centralny host pulpitu nawigacyjnego

# twój klucz API z PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

# pulpitu centralnego serwera hosta dashboardServer = 'MÓJ-SERWER-TUTAJ.com'

Krok 11: Dodaj skrypt, aby rozpocząć przy rozruchu pulpitu nawigacyjnego i ponownie uruchom pulpit nawigacyjny 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: OPCJONALNIE: Tworzenie własnych obrazów Nintendo do renderowania na wyświetlaczu

Prześlij własny plik 128x128 na następujący adres URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Wybierz plik obrazu do przesłania, dodaj rozmiar, jaki ma być na ekranie (szerokość/wysokość)

Wybierz „256 kolorów dla kolorów OLED/LCD (1 bajt/piksel)” w menu rozwijanym „Używane dla”

Uzyskaj wyjście szesnastkowe.

Dodaj wyjście szesnastkowe do pliku display/build/header (.h), użyj pozostałych jako przewodników po składni.

Dołącz nowy plik do pliku digole.c #include myimage.h

Dołącz nowy zaczep wiersza poleceń do pliku obrazu w pliku. Uwaga: poniższe polecenie mówi, że narysuj obraz w pozycji 10 pikseli na 10 pikseli w dół. Możesz zmienić go na różne współrzędne X, Y, możesz także zmienić wartości 128, 128 na dowolny rozmiar twojego nowego obrazu.

} else if (strcmp(digoleCommand, "myimage") == 0) { drawBitmap256(10, 10, 128, 128, &myimageVariableHere, 0); // myimageVariableHere jest zdefiniowane w twoim pliku (.h) }

Teraz przebuduj (zignoruj błędy) poniżej, aby wyrenderować nowy obraz za pomocą następującego polecenia.

$./digole mójobraz

Przebudowa [w zestawie] Digole Display Driver dla opcjonalnych zmian

$ Wyświetlacz CD/kompilacja

$ gcc digole.c

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

$ chmod +x../../digole

Krok 13: Koniec

Jesteś skończony!

Zalecana: