Isi kandungan:

R.O.B. Pembantu Pemberitahuan Telefon: 13 Langkah
R.O.B. Pembantu Pemberitahuan Telefon: 13 Langkah

Video: R.O.B. Pembantu Pemberitahuan Telefon: 13 Langkah

Video: R.O.B. Pembantu Pemberitahuan Telefon: 13 Langkah
Video: REZA CIUM CEWEK DIPARKIRAN. #REZAOKTOVIAN #ARAP #YB #YOURBAE #rezaarap #selingkuh 2024, November
Anonim
R. O. B. Pembantu Pemberitahuan Telefon
R. O. B. Pembantu Pemberitahuan Telefon

Oleh khinds10www.kevinhinds.com Ikuti Lagi oleh pengarang:

Sofa kanak-kanak yang tidak dapat dihancurkan!
Sofa kanak-kanak yang tidak dapat dihancurkan!
Sofa kanak-kanak yang tidak dapat dihancurkan!
Sofa kanak-kanak yang tidak dapat dihancurkan!
PC Pemasangan Dinding yang Pantas dan Mudah
PC Pemasangan Dinding yang Pantas dan Mudah
PC Pemasangan Dinding yang Pantas dan Mudah
PC Pemasangan Dinding yang Pantas dan Mudah
Skrin Perapian Digital
Skrin Perapian Digital
Skrin Perapian Digital
Skrin Perapian Digital

Tentang: Percetakan 3D dan merancang projek RaspberryPI selama beberapa tahun sekarang Lebih banyak mengenai khinds10 »

Pembantu Pemberitahuan Telefon Desktop yang Menampilkan (R. O. B.) Teman Operasi Robotik

Langkah 1: Flashing RaspberriPi Hard Disk / Pasang Perisian yang Diperlukan (Menggunakan Ubuntu Linux)

Buat cakera keras baru anda untuk DashboardPI

Masukkan microSD ke komputer anda melalui penyesuai USB dan buat gambar cakera menggunakan arahan dd

Cari kad microSD anda yang dimasukkan melalui perintah df -h, lepaskannya dan buat imej cakera dengan arahan disk copy dd

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

$ umount / dev / sdb1

Awas: pastikan perintah betul-betul tepat, anda boleh merosakkan cakera lain dengan arahan ini

if = lokasi fail gambar RASPBIAN JESSIE LITE = lokasi kad microSD anda

$ sudo dd bs = 4M if = / path / to / raspbian-jessie-lite.img of = / dev / sdb (nota: dalam kes ini, itu / dev / sdb, / dev / sdb1 adalah partisi kilang yang ada pada microSD)

Menyiapkan RaspberriPi anda

Masukkan kad microSD baru anda ke raspberrypi dan hidupkan dengan monitor yang disambungkan ke port HDMI

Log masuk

pengguna: pi lulus: raspberry

Tukar kata laluan akaun anda untuk keselamatan

sudo passwd pi

Dayakan Pilihan Lanjutan RaspberriPi

sudo raspi-config

Pilih:

1 Kembangkan Sistem Fail

9 Pilihan Lanjutan

Nama Host A2 mengubahnya menjadi "RobbieAssistant"

A4 SSH Dayakan SSH Server

A7 I2C Dayakan antara muka i2c

Dayakan Papan Kekunci Bahasa Inggeris / AS

sudo nano / etc / default / keyboard

Tukar baris berikut: XKBLAYOUT = "us"

Reboot PI untuk perubahan susun atur papan kekunci / pengubahan saiz sistem fail untuk berkuat kuasa

$ sudo shutdown -r sekarang

Sambungkan secara automatik ke WiFi anda

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Tambahkan baris berikut agar raspberrypi anda tersambung ke WiFi rumah anda secara automatik (jika rangkaian wayarles anda bernama "Linksys" misalnya, dalam contoh berikut)

network = {ssid = "Linksys" psk = "KATA LALUAN WIRELESS DI SINI"} Reboot PI untuk menyambung ke rangkaian WiFi

$ sudo shutdown -r sekarang

Sekarang PI anda akhirnya berada di rangkaian tempatan, anda boleh log masuk dari jarak jauh melalui SSH. Tetapi pertama-tama anda perlu mendapatkan alamat IP yang ada sekarang.

$ ifconfig Cari "inet addr: 192.168. XXX. XXX" dalam output arahan berikut untuk Alamat IP PI anda

Pergi ke mesin lain dan log masuk ke raspberrypi anda melalui ssh

$ ssh [email protected]. XXX. XXX

Mula Memasang pakej yang diperlukan

$ sudo apt-get kemas kini

$ sudo apt-get peningkatan

$ 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-permintaan python3-setuptools python3-urllib python3-urllib3 python3-permintaan vim git python-smbus i2c-tools python-pencitraan python-smbus build-essential python-dev rpi.gpio python3 python-python-python python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tools python-pencitraan python-smbus build-essential python-dev rpi.gpio python3 python3 python -gpiozero python-psutil xz-perkakas

Permintaan pemasangan $ sudo pip

Kemas kini tetapan zon waktu tempatan

$ sudo dpkg-reconfigure tzdata

pilih zon waktu anda menggunakan antara muka

Sediakan arahan l direktori mudah [pilihan]

vi ~ /.bashrc

tambah baris berikut:

alias l = 'ls -lh'

sumber ~ /.bashrc

Betulkan penyorotan sintaks lalai VIM [pilihan]

sudo vi / etc / vim / vimrc

melepaskan baris berikut:

sintaks dihidupkan

buat folder log untuk aplikasi menjalankan mkdir / home / pi / RobbieAssistant / log

chmod 777 / rumah / pi / RobbieAssistant / log

Konfigurasikan Aplikasi untuk berjalan dengan betul dalam file config.py config Cari seting file-shadow.py di / include / folder projek dan salin ke setting.py dan sesuaikan dengan tetapan semasa anda

# ramalan.io API kunci untuk maklumat cuaca tempatan

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

weatherAPIKey = 'KUNCI API ANDA UNTUK FORECAST. IO'

# pilihan untuk menjalankan pencatat suhu / kelembapan jarak jauh

dashboardServer = 'mydevicelogger.com'

# cari google untuk mendapatkan Lintang / Bujur untuk lokasi rumah anda

garis lintang = 41.4552578

garis bujur = -72.1665444

Langkah 2: Bekalan Diperlukan

Bekalan Diperlukan
Bekalan Diperlukan
Bekalan Diperlukan
Bekalan Diperlukan
Bekalan Diperlukan
Bekalan Diperlukan
Bekalan Diperlukan
Bekalan Diperlukan

RaspberriPi Sifar

Humidistat DHT11

Lampu LED (x4) Paparan Digole Hijau / Kuning / Biru / Merah 2.6"

Langkah 3: Bina dan Wire Peranti

Bina dan Kabel Peranti
Bina dan Kabel Peranti

Sediakan Digole Display untuk i2C

Di bahagian belakang Display Digole, solder jumper untuk menetapkan paparan menggunakan protokol i2c

Langkah 4: Menggunakan Pencetak 3d, Cetak Penutup, Kotak dan Panel Belakang

Dengan menggunakan Pencetak 3d, Cetak Penutup, Kotak dan Panel Belakang
Dengan menggunakan Pencetak 3d, Cetak Penutup, Kotak dan Panel Belakang

Dengan menggunakan fail X STL berikut dalam folder 3DPrint, R. O. B. Robot, Harness LED dan Display Mount

butangContainer-base.stl

butangContainer-lid.stl

displaymount-final.stl

led-abah-final.stl

MiniNintendoROB.zip

Cetakan Robot oleh: Mini Nintendo R. O. B. - oleh RabbitEngineering

www.thingiverse.com/thing:1494964

Saya menggunakan pita merah untuk menjadikan mata menjadi merah dengan latar belakang visor hitam

Langkah 5: Pendawaian Komponen

Pendawaian Komponen
Pendawaian Komponen

Paparan Digole

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

Humidistat DHT11

VCC -> 5V

GND -> GND

DATA -> GPIO 25

Perintang BIRU

VCC -> GPIO 17 (dengan perintang 270ohm)

GND -> GND

Perintang KUNING

VCC -> GPIO 13 (dengan perintang 270ohm)

GND -> GND

Perintang HIJAU

VCC -> GPIO 6 (dengan perintang 270ohm)

GND -> GND

Perintang MERAH

VCC -> GPIO 12 (dengan perintang 270ohm)

GND -> GND

Butang Tekan sesaat MERAH

VCC -> GPIO 16 (dengan perintang 270ohm)

GND -> GND

Butang Tekan sesaat BLUE

VCC -> GPIO 26 (dengan perintang 270ohm)

GND -> GND

Langkah 6: Sambungkan Komponen ke Robot

Sambungkan Komponen ke Robot
Sambungkan Komponen ke Robot
Sambungkan Komponen ke Robot
Sambungkan Komponen ke Robot
Sambungkan Komponen ke Robot
Sambungkan Komponen ke Robot

Setelah mencetak pemegang skrin, sambungkan ke paparan digole

Sambungkan Paparan ke RPi dengan pendawaian yang cukup untuk merekatkan RPi ke bahagian belakang robot

Cetak alat kawalan dan kawat butang dengan pendawaian yang cukup untuk membuatnya ke bahagian belakang robot

Selesaikan Pendawaian dan pasang robot dengan RPi disambungkan ke belakang dan DHT11 terpaku ke bawah

Langkah 7: Periksa Konfigurasi I2C

Mulakan RaspberryPi anda dan pastikan bas I2C mengenali semua paparan segmen 7/14 yang disambungkan. [setiap paparan diberi alamat unik yang dijelaskan di atas dengan cara anda menyolder jumper setiap paparan dalam kombinasi yang berbeza]

Sekiranya paparan dengan jumper disolder dengan betul, anda harus mempunyai output berikut untuk perintah 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: -- -- -- -- -- -- -- --

Langkah 8: Pasang DHT11

$ cd ~

$ git klon

$ cd Adafruit_Python_DHT /

$ sudo python setup.py pasang

$ sudo python ez_setup.py

$ cd contoh /

$ vi simpletest.py Tukar baris berikut:

sensor = Adafruit_DHT. DHT11

Komen garis besarnya

pin = 'P8_11'

Tanggalkan garis dan ubah nombor pin menjadi 16

pin = 25

Jalankan ujian

python simpletest.py

Anda akan melihat bacaan metrik Temp dan Kelembapan dipaparkan pada baris perintah.

Langkah 9: Repositori Klon

$ cd ~ $ git klon

Langkah 10: Tambahkan Pushbullet API (menggunakan Python 3.5)

Dengan menggunakan aplikasi pushbullet untuk telefon anda, daftar untuk menerima kunci API agar skrip python mudah dapat menangkap dan mendorong pemberitahuan hub data dan bendera penunjuk

Pasang Python 3.5 untuk fungsi asyncio

$ sudo apt-get kemas kini 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 Sekiranya salah satu pakej tidak dapat dijumpai, cubalah nombor versi yang lebih baru (contohnya libdb5.4-dev dan bukan 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 buat sudo buat pasang 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 / tempatan /opt/python-3.5.2/bin/python3.5 "'>>.bashrc echo' alias idle35 =" / usr / local / opt / python-3.5.2 / bin / python3.5 "'>>.bashrc Pasang pergantungan python3

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 request install Cara pilihan Muat turun repositori python secara langsung untuk mendapatkan pergantungan python tanpa penggunaan pip memasangnya

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py pasang Lawati halaman tetapan pushbullet di akaun anda untuk menghasilkan Kunci API untuk menggunakan

Konfigurasikan skrip pushbullet-listener.py anda untuk mempunyai hos pusat API dan papan pemuka yang betul

# Kunci API anda dari PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

# dashboard host pelayan pusat dashboardServer = 'MY-SERVER-HERE.com'

Langkah 11: Tambahkan Skrip untuk Bermula di Dashboard Boot dan Mulakan Semula Pi Dashboard Anda

$ 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

Langkah 12: PILIHAN: Membuat Imej Nintendo Anda Sendiri untuk Dipaparkan di Paparan

Muat naik fail 128x128 anda sendiri ke URL berikut:

www.digole.com/tools/PicturetoC_Hex_converter.php

Pilih fail gambar anda untuk dimuat, tambahkan ukuran yang anda mahukan di layar (Lebar / Tinggi)

Pilih "256 Warna untuk Warna OLED / LCD (1 bait / piksel)" dalam menu lungsur turun "Digunakan untuk"

Dapatkan output hex.

Tambahkan output hex ke fail display / build / header (.h), gunakan yang lain sebagai panduan untuk sintaks.

Sertakan fail baru dalam fail digole.c #include myimage.h

Sertakan cangkuk baris perintah baru ke fail gambar anda di. Nota: arahan di bawah mengatakan lukiskan gambar anda pada kedudukan 10 piksel lebih dari 10 piksel ke bawah. Anda boleh menukarnya ke koordinat X, Y yang berbeza, anda juga boleh mengubah nilai 128, 128 ke saiz apa pun sebenarnya gambar baru anda.

} lain jika (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariable Here, 0); // myimageVariable Here ditakrifkan dalam fail (.h) anda}

Sekarang bina semula (abaikan kesalahan) di bawah ini agar gambar baru anda diberikan dengan arahan berikut.

$./digole myimage

Membina Semula [Termasuk] Pemacu Paparan Digole untuk perubahan pilihan anda

$ cd paparan / bina

$ gcc digole.c

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

$ chmod + x../../digole

Langkah 13: Selesai

Anda sudah selesai!

Disyorkan: