Mündəricat:

R.O.B. Telefon bildiriş köməkçisi: 13 addım
R.O.B. Telefon bildiriş köməkçisi: 13 addım

Video: R.O.B. Telefon bildiriş köməkçisi: 13 addım

Video: R.O.B. Telefon bildiriş köməkçisi: 13 addım
Video: Всё про прошивку Xiaomi 2024, Noyabr
Anonim
R. O. B. Telefon bildiriş köməkçisi
R. O. B. Telefon bildiriş köməkçisi

Müəllif tərəfindən daha çoxunu izləyin: khinds10www.kevinhinds.com

Sarsılmaz Uşaq Kreslosu!
Sarsılmaz Uşaq Kreslosu!
Sarsılmaz Uşaq Koltuğu!
Sarsılmaz Uşaq Koltuğu!
Tez və Asan Divar Montajlı Kompüterlər
Tez və Asan Divar Montajlı Kompüterlər
Tez və Asan Divar Montajlı Kompüterlər
Tez və Asan Divar Montajlı Kompüterlər
Rəqəmsal Şömine Ekranı
Rəqəmsal Şömine Ekranı
Rəqəmsal Şömine Ekranı
Rəqəmsal Şömine Ekranı

Haqqında: Bir neçə ildir 3D çap və RaspberryPI layihələrinin dizaynı khinds10 haqqında daha çox »

Masaüstü Telefon Bildiriş Köməkçisi (R. O. B.) Robotik Əməliyyat Dostu

Addım 1: Flashing RaspberriPi Hard Disk / Lazımi Proqramı Qurun (Ubuntu Linux istifadə edərək)

DashboardPI üçün yeni sabit diskinizi yaradın

USB adapter vasitəsilə microSD -ni kompüterinizə daxil edin və dd əmrindən istifadə edərək disk şəkli yaradın

Daxil edilmiş microSD kartınızı df -h əmri ilə tapın, çıxarın və disk surəti dd əmri ilə disk şəkli yaradın.

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

$ umount /dev /sdb1

Diqqət: əmrin tamamilə doğru olduğundan əmin olun, bu əmrlə digər disklərə zərər verə bilərsiniz

if = RASPBIAN JESSIE LITE görüntü faylının yeri = microSD kartınızın yeri

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of//dev/sdb (Qeyd: bu halda/dev/sdb,/dev/sdb1, microSD)

RaspberriPi qurmaq

Yeni microSD kartınızı raspberrypi -yə daxil edin və HDMI portuna qoşulmuş bir monitorla açın

Daxil ol

istifadəçi: pi keçidi: moruq

Təhlükəsizlik üçün hesab şifrənizi dəyişdirin

sudo passwd pi

RaspberriPi Ətraflı Seçimləri aktiv edin

sudo raspi-config

Seçin:

1 Fayl Sistemini genişləndirin

9 Ətraflı Seçimlər

A2 Host Adı onu "RobbieAssistant" olaraq dəyişdirir

A4 SSH SSH Serverini aktiv edin

A7 I2C i2c interfeysini aktiv edin

İngilis/ABŞ Klaviaturasını aktiv edin

sudo nano/etc/default/klaviatura

Aşağıdakı sətri dəyişdirin: XKBLAYOUT = "us"

Klaviatura düzeni dəyişiklikləri / fayl sisteminin ölçüsünü dəyişdirmək üçün PI -ni yenidən başladın

$ sudo bağlanması -r indi

WiFi-yə avtomatik qoşulun

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Raspberrypi -nin ev WiFi -nə avtomatik qoşulması üçün aşağıdakı sətirləri əlavə edin (simsiz şəbəkəniz aşağıdakı linkdə "linksys" adlanırsa)

şəbəkə = {ssid = "linksys" psk = "BURADA TELSİZ ŞİFRƏ"} WiFi şəbəkəsinə qoşulmaq üçün PI -ni yenidən başladın

$ sudo bağlanması -r indi

İndi PI nəhayət yerli şəbəkədədir, SSH vasitəsilə uzaqdan daxil ola bilərsiniz. Ancaq əvvəlcə mövcud IP ünvanını almalısınız.

$ ifconfig PI -nin IP ünvanı üçün aşağıdakı əmr çıxışında "inet addr: 192.168. XXX. XXX" axtarın.

Başqa bir maşına gedin və ssh vasitəsilə raspberrypi -yə daxil olun

$ ssh [email protected]. XXX. XXX

Lazımi paketləri quraşdırmağa başlayın

$ sudo apt-get yeniləməsi

$ sudo apt-get yeniləmə

$ 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 libreadon3-pip python3-sorğu python3-setuptools python3-urllib python3-urllib3 python3-istəkləri python-smbus i2c-tools python-smbus build-essential python-dev rpi.gpio python3 python3-pip vim git python -bus python-views python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tools python-views python-smbus build-essential python-dev rpi.gpio python3 python3-pip python python-psutil xz-utils proqramı

$ sudo pip quraşdırma tələbləri

Yerli saat qurşağı parametrlərini yeniləyin

$ sudo dpkg-məlumatları yenidən konfiqurasiya edin

interfeysdən istifadə edərək vaxt qurşağınızı seçin

Sadə qovluq l əmrini qurun [isteğe bağlı]

vi ~/.bashrc

aşağıdakı sətri əlavə edin:

ləqəbi l = 'ls -lh'

mənbə ~/.bashrc

[İsteğe bağlı] vurğulayan VIM standart sintaksisini düzəldin

sudo vi/etc/vim/vimrc

aşağıdakı sətri qeyd edin:

sintaksis aktivdir

mkdir/home/pi/RobbieAssistant/logs -ı işə salmaq üçün tətbiqin qeydlər qovluğunu yaradın

chmod 777/home/pi/RobbieAssistant/logs

Settings.py konfiqurasiya faylında düzgün işləməsi üçün Proqramı konfiqurasiya edin. Layihənin / include / qovluğunda settings-shadow.py faylını tapın və settings.py-ə kopyalayın və cari parametrlərinizə uyğunlaşdırın.

Yerli hava məlumatları üçün # proqnoz.io API açarı

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

weatherAPIKey = 'FORECAST. IO ÜÇÜN API Açarınız'

# Uzaqdakı temperatur/rütubət qeydçisini işlətmək üçün isteğe bağlıdır

dashboardServer = 'mydevicelogger.com'

Ev məkanınız üçün Enlem/Boylamı əldə etmək üçün # google axtarın

Enlem = 41.4552578

Boylam = -72.1665444

Addım 2: Lazım olan təchizatlar

Ehtiyac Lazımdır
Ehtiyac Lazımdır
Ehtiyac Lazımdır
Ehtiyac Lazımdır
Ehtiyac Lazımdır
Ehtiyac Lazımdır
Ehtiyac Lazımdır
Ehtiyac Lazımdır

RaspberriPi Sıfır

DHT11 Nəmləndirici

LED işıqları (x4) Yaşıl / Sarı / Mavi / Qırmızı 2.6 Digole Ekranı

Addım 3: Cihazı Qurun və Tel Edin

Cihazı Qurun və Tel Edin
Cihazı Qurun və Tel Edin

İ2C üçün Digole Ekranı hazırlayın

Digole Ekranının arxasındakı tullanan ekranı i2c protokolundan istifadə etməyi təyin etmək üçün lehimləyin

Addım 4: Bir 3D Yazıcıdan istifadə edərək, Kapağı, Qutunu və Arxa Panelləri Yazdırın

Bir 3D Yazıcıdan istifadə edərək Kapağı, Qutunu və Arxa Panelləri Yazdırın
Bir 3D Yazıcıdan istifadə edərək Kapağı, Qutunu və Arxa Panelləri Yazdırın

3DPrint qovluğunda aşağıdakı X STL fayllarından istifadə edərək R. O. B. Robot, LED qoşqu və ekran montajı

buttonContainer-base.stl

düyməKonteyner-qapaq.stl

displaymount-final.stl

led-qoşqu-final.stl

MiniNintendoROB.zip

Robot Çap: Mini Nintendo R. O. B. - RabbitEngineering tərəfindən

www.thingiverse.com/thing:1494964

Qara visor fonunda gözləri qırmızı etmək üçün qırmızı bant istifadə etdim

Addım 5: Komponent Kablolama

Komponent naqilləri
Komponent naqilləri

Digole Ekranı

GND -> GND

VERİLƏR -> SDA

CLK -> SCL

VCC -> 3V

DHT11 Nəmləndirici

VCC -> 5V

GND -> GND

VERİLƏR -> GPIO 25

MAVİ rezistor

VCC -> GPIO 17 (270ohm müqavimət ilə)

GND -> GND

SARI Rezistor

VCC -> GPIO 13 (270ohm müqavimət ilə)

GND -> GND

YAŞIL Rezistor

VCC -> GPIO 6 (270ohm müqavimət ilə)

GND -> GND

QIRMIZI Rezistor

VCC -> GPIO 12 (270ohm müqavimət ilə)

GND -> GND

QIRMIZ ani düymə

VCC -> GPIO 16 (270ohm müqavimət ilə)

GND -> GND

Mavi ani düymə

VCC -> GPIO 26 (270ohm müqavimət ilə)

GND -> GND

Addım 6: Komponentləri Robota bağlayın

Komponentləri Robota qoşun
Komponentləri Robota qoşun
Komponentləri Robota qoşun
Komponentləri Robota qoşun
Komponentləri Robota qoşun
Komponentləri Robota qoşun

Ekran tutucusunu çap etdikdən sonra onu digole ekranına qoşun

Ekranı RPi -ni robotun arxasına yapışdırmaq üçün kifayət qədər kabel ilə RPi -yə qoşun

Nəzarətçini yazdırın və robotun arxasına keçmək üçün düymələri kifayət qədər məftil ilə bağlayın

Arxa tərəfə RPi və aşağıya yapışdırılmış DHT11 ilə robotun naqillərini və montajını bitirin.

Addım 7: I2C Konfiqurasiyasını yoxlayın

RaspberryPi -ni işə salın və I2C avtobusunun bağlı olan 7/14 seqmentli bütün displeyləri tanıdığından əmin olun. [hər ekrana yuxarıda təsvir edilən unikal bir ünvan verilir, hər bir ekranın atlayıcılarını fərqli birləşmələrdə necə lehimlədiyiniz]

Düz bir şəkildə lehimli tullanan ekrana sahibsinizsə, i2cdetect əmri üçün aşağıdakı çıxışa sahib olmalısınız:

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: -- -- -- -- -- -- -- --

Addım 8: DHT11 quraşdırın

$ cd ~

$ git klonu

$ cd Adafruit_Python_DHT/

$ sudo python setup.py quraşdırın

$ sudo python ez_setup.py

$ cd nümunələri/

$ vi simpletest.pyAşağıdakı sətri dəyişdirin:

sensor = Adafruit_DHT. DHT11

Xətti şərh edin

pin = 'P8_11'

Xətti şərhdən çıxarın və pin nömrəsini 16 -ya dəyişdirin

pin = 25

Testi işə salın

python simpletest.py

Komanda satırında Temp və Rütubətin metrik oxunuşunu görməlisiniz.

Addım 9: Klon Deposu

$ cd ~ $ git klonu

Addım 10: Pushbullet API əlavə edin (Python 3.5 istifadə edərək)

Telefonunuz üçün pushbullet tətbiqindən istifadə edərək sadə bir python skriptinin məlumat qovluğu bildirişlərini və göstərici bayraqlarını tutub itələməsi üçün API açarı almaq üçün qeydiyyatdan keçin.

Asyncio funksionallığı üçün Python 3.5 quraşdırın

$ 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 Paketlərdən biri tapılmazsa, daha yeni bir versiya nömrəsini sınayın (məsələn libdb5.3-dev əvəzinə libdb5.4-dev).

$ wget https://www.python.org/ftp/python/3.5.2/Python-3…. tar zxvf Python-3.5.2. -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 Python3 asılılıqlarını quraşdırın

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 asyncpushbullet sudo pip3 qurmaq istəkləri İsteğe bağlı yol Python deposunu birbaşa pip quraşdırmadan istifadə edərək python asılılıqlarını əldə etmək üçün yükləyin.

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Hesab yaratmaq üçün pushbullet parametrləri səhifəsinə daxil olun. Https://github.com/rharder/asyncpushbullet istifadə etmək üçün API açarı

Doğru API və tablosuna mərkəzi hosta sahib olmaq üçün pushbullet-listener.py skriptinizi konfiqurasiya edin

API açarınızı PushBullet.com saytından alın API_KEY = "o. XXXYYYZZZ121222333444555666"

# tablosuna mərkəzi server host dashboardServer = 'MY-SERVER-HERE.com'

Addım 11: Dashboard Boot -da Başlamaq üçün Script əlavə edin və Dashboard Pi -ni yenidən başladın

$ 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

Addım 12: İSTƏYƏN: Ekranda göstərmək üçün öz Nintendo Şəkillərinizi yaratmaq

Öz 128x128 faylınızı aşağıdakı URL -yə yükləyin:

www.digole.com/tools/PicturetoC_Hex_converter.php

Yükləmək üçün şəkil faylınızı seçin, ekranda hansı ölçüdə olmasını istədiyinizi əlavə edin (Genişlik/Boy)

"İstifadə olunur" açılır menyusunda "Rəngli OLED/LCD (1 bayt/piksel) üçün 256 Rəng" seçin.

Hex çıxışını əldə edin.

Onaltılı çıxışı bir display/ build/ header (.h) faylına əlavə edin, digərlərini sintaksis üçün bələdçi olaraq istifadə edin.

Yeni faylı digole.c faylına daxil edin #include myimage.h

Şəkil sənədinizə yeni bir əmr satırı çəngəlini əlavə edin. Qeyd: Aşağıdakı əmr, şəklinizi 10 pikseldən yuxarı 10 pikseldə çəkin. Fərqli X, Y koordinatlarına dəyişə bilərsiniz, həmçinin 128, 128 dəyərlərini yeni görüntünüzün əsl ölçüsünə görə dəyişə bilərsiniz.

} başqa if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariable Here (.h) faylınızda müəyyən edilmişdir}

Aşağıdakı əmri ilə yeni görüntünüzün işlənməsini təmin etmək üçün aşağıda yenidən qurun (səhvləri görməyin).

$./digole görüntü

İsteğe bağlı dəyişikliklər üçün [Daxildir] Digole Ekran Sürücüsünü yenidən qurun

$ cd göstər/qur

$ gcc digole.c

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

$ chmod +x../../digole

Addım 13: Bitdi

Bitirdin!

Tövsiyə: