Sisukord:
- Samm: RaspberriPi kõvaketta vilkumine / vajaliku tarkvara installimine (Ubuntu Linuxi kasutamine)
- 2. etapp: vajalikud tarvikud
- 3. samm: ehitage ja ühendage seade juhtmega
- Samm: printige 3D -printeri abil kaas, karp ja tagapaneelid
- Samm: komponentide juhtmestik
- Samm: ühendage komponendid robotiga
- Samm: kontrollige I2C konfiguratsiooni
- 8. samm: DHT11 installimine
- 9. samm: kloonige hoidla
- Samm: lisage Pushbullet API (kasutades Python 3.5)
- Samm: lisage skript alustamiseks armatuurlaua käivitamisel ja taaskäivitage armatuurlaud Pi
- 12. samm: VALIKULINE: oma Nintendo piltide loomine ekraanil renderdamiseks
- 13. samm: lõpetatud
Video: R.O.B. Telefoni teavitamise assistent: 13 sammu
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Järgige autori lisateavet:
Teave: 3D printimine ja RaspberryPI projektide kujundamine juba paar aastat Veel khinds10 kohta »
Lauatelefoni märguande assistent, millel on (R. O. B.) robot -operatsioonisõber
Samm: RaspberriPi kõvaketta vilkumine / vajaliku tarkvara installimine (Ubuntu Linuxi kasutamine)
Looge DashboardPI jaoks uus kõvaketas
Sisestage microSD -kaart USB -adapteri kaudu arvutisse ja looge kettapilt käsuga dd
Leidke sisestatud microSD -kaart käsu df -h abil, eemaldage see ja looge kettapilt käsuga disk copy dd
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Ettevaatust: veenduge, et käsk oleks täiesti täpne, selle käsuga võite kahjustada teisi kettaid
if = RASPBIAN JESSIE LITE pildifaili asukoht = teie microSD -kaardi asukoht
$ sudo dd bs = 4M kui =/path/to/raspbian-jessie-lite.img of//dev/sdb (märkus: antud juhul on see/dev/sdb,/dev/sdb1 oli microSD)
RaspberriPi seadistamine
Sisestage uus microSD -kaart vaarikapiirkonda ja lülitage see sisse HDMI -porti ühendatud monitoriga
Logi sisse
kasutaja: pi pass: vaarikas
Turvalisuse huvides muutke oma konto parooli
sudo passwd pi
Lubage RaspberriPi täpsemad valikud
sudo raspi-config
Valige:
1 Laiendage failisüsteemi
9 Täpsemad valikud
A2 hostinimi muudab selle "RobbieAssistantiks"
A4 SSH Luba SSH -server
A7 I2C Luba i2c liides
Luba inglise/USA klaviatuur
sudo nano/etc/default/klaviatuur
Muutke järgmist rida: XKBLAYOUT = "meie"
Taaskäivitage PI klaviatuuri paigutuse muutmiseks / failisüsteemi suuruse muutmiseks, et see jõustuks
$ sudo sulgemine -r kohe
Automaatne ühendus WiFi-ga
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Lisage järgmised read, et teie vaarikapi saaks automaatselt ühenduse teie kodu WiFi -ga (kui teie traadita võrgu nimi on järgmises näites näiteks "linksys")
network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} WiFi -võrguga ühenduse loomiseks taaskäivitage PI
$ sudo sulgemine -r kohe
Nüüd, kui teie PI on lõpuks kohalikus võrgus, saate sinna SSH kaudu kaugjuhtimisega sisse logida. Kuid kõigepealt peate hankima praeguse IP -aadressi.
$ ifconfig Otsige järgmisest käsu väljundist oma PI IP -aadressi jaoks "inet addr: 192.168. XXX. XXX".
Minge teise masinasse ja logige oma raspberrypi sisse ssh kaudu
$ ssh [email protected]. XXX. XXX
Alustage vajalike pakettide installimist
$ 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-taotlused python3-setuptools python3-urllib python3-urllib3 python3-taotlused vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip vim git python-smbus 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 installipäringud
Värskendage kohalikke ajavööndi seadeid
$ sudo dpkg-konfigureerige tzdata uuesti
liidese abil valige oma ajavöönd
Seadistage lihtne kataloog l käsk [valikuline]
vi ~/.bashrc
lisage järgmine rida:
varjunimi l = 'ls -lh'
allikas ~/.bashrc
VIM -i süntaksi esiletõstmise parandamine [valikuline]
sudo vi/etc/vim/vimrc
tühistage järgmine rida:
süntaks sisse lülitatud
looge rakenduste jaoks kaust logid, et käivitada mkdir/home/pi/RobbieAssistant/logs
chmod 777/home/pi/RobbieAssistant/logs
Rakenduse seadistamine õigesti töötama seadetes.py Konfiguratsioonifail Leidke faili settings-shadow.py kaustast / include / ja kopeerige see aadressile settings.py ning kohandage oma praeguste sätetega
# prognoz.io API võti kohaliku ilmateabe jaoks
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'SINU API VÕTI ENNUSTAMISEKS. IO'
# valikuline temperatuuri/niiskuse kauglogija käitamiseks
dashboardServer = 'mydevicelogger.com'
# otsige Google'ist, et saada oma kodu asukoha jaoks laius-/pikkuskraadid
laiuskraad = 41,4552578
pikkuskraad = -72,1665444
2. etapp: vajalikud tarvikud
RaspberriPi Zero
DHT11 niisutaja
LED -tuled (x4) roheline / kollane / sinine / punane 2,6 -tolline digitaalne ekraan
3. samm: ehitage ja ühendage seade juhtmega
Valmistage Digole Display ette i2C jaoks
Digole -ekraani tagaküljel jootke hüppaja, et määrata kuvar i2c -protokolli kasutamiseks
Samm: printige 3D -printeri abil kaas, karp ja tagapaneelid
Kasutades järgmisi X STL -faile kaustas 3DPrint, saab R. O. B. Robot, LED -rakmed ja ekraanikinnitus
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-rakmed-final.stl
MiniNintendoROB.zip
Robotprindi autor: Mini Nintendo R. O. B. - RabbitEngineering
www.thingiverse.com/thing:1494964
Kasutasin bürokraatiat, et musta visiiri taustaga silmad punaseks teha
Samm: komponentide juhtmestik
Digole ekraan
GND -> GND
ANDMED -> SDA
CLK -> SCL
VCC -> 3V
DHT11 niisutaja
VCC -> 5V
GND -> GND
ANDMED -> GPIO 25
SININE Takisti
VCC -> GPIO 17 (270 oomi takistiga)
GND -> GND
KOLLANE Takisti
VCC -> GPIO 13 (270 oomi takistiga)
GND -> GND
ROHELINE Takisti
VCC -> GPIO 6 (270 oomi takistiga)
GND -> GND
PUNANE takisti
VCC -> GPIO 12 (270 oomi takistiga)
GND -> GND
PUNANE hetkeline nupp
VCC -> GPIO 16 (270 oomi takistiga)
GND -> GND
SININE hetkeline nupp
VCC -> GPIO 26 (270 oomi takistiga)
GND -> GND
Samm: ühendage komponendid robotiga
Pärast ekraanihoidja printimist ühendage see digoleekraaniga
Ühendage ekraan RPi -ga piisava juhtmestikuga, et liimida RPi roboti tagaküljele
Printige kontroller ja ühendage juhtmed piisavalt juhtmestikuga, et see jõuaks roboti taha
Lõpeta roboti ühendamine ja kokkupanek, RPi on ühendatud tagaküljega ja DHT11 on liimitud põhja
Samm: kontrollige I2C konfiguratsiooni
Käivitage oma RaspberryPi ja veenduge, et I2C siin tuvastaks kõik teie ühendatud 7/14 segmendi kuvarid. [igale ekraanile antakse kordumatu aadress, mida on kirjeldatud eespool, kuidas joote iga ekraani džemprid erinevates kombinatsioonides]
Kui ekraan on hüppajaga õigesti joodetud, peaks i2cdetect käsu jaoks olema järgmine väljund:
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: -- -- -- -- -- -- -- --
8. samm: DHT11 installimine
$ cd ~
$ git kloon
$ cd Adafruit_Python_DHT/
$ sudo python setup.py install
$ sudo python ez_setup.py
$ cd näited/
$ vi simpletest.pyMuuda järgmist rida:
andur = Adafruit_DHT. DHT11
Kommenteerige rida
pin = 'P8_11'
Tühjendage rea kommentaar ja muutke PIN -kood 16 -ks
tihvt = 25
Käivitage test
python simpletest.py
Te peaksite nägema käsureal kuvatavat temperatuuri ja niiskuse mõõdikut.
9. samm: kloonige hoidla
$ cd ~ $ git kloon
Samm: lisage Pushbullet API (kasutades Python 3.5)
Kui kasutate oma telefoni jaoks push -bullet -rakendust, registreeruge, et saada API -võti, et lihtsa pythoni skripti abil saaks jäädvustada ja edastada andmekeskuse märguandeid ja indikaatorilippe
Asyncio funktsionaalsuse jaoks installige Python 3.5
$ 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 Kui ühte pakettidest ei leita, proovige uuemat versiooninumbrit (nt libdb5.3-dev asemel libdb5.4-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 Installige python3 sõltuvused
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 installitaotlused Valikuline viis Pythoni hoidla allalaadimine otse, et saada pythoni sõltuvused ilma pip installimata
git kloon https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Külastage oma konto pushbulleti seadete lehte, et luua API võti https://github.com/rharder/asyncpushbullet kasutamiseks
Seadistage oma skript pushbullet-listener.py õigeks API-ks ja armatuurlaua keskseks hostiks
# teie API -võti saidilt PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"
# armatuurlaua keskserveri host dashboardServer = 'MY-SERVER-HERE.com'
Samm: lisage skript alustamiseks armatuurlaua käivitamisel ja taaskäivitage armatuurlaud 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
12. samm: VALIKULINE: oma Nintendo piltide loomine ekraanil renderdamiseks
Laadige oma 128x128 fail üles järgmisele URL -ile:
www.digole.com/tools/PicturetoC_Hex_converter.php
Valige üleslaaditav pildifail, lisage ekraanile soovitud suurus (laius/kõrgus)
Valige rippmenüüst "Kasutatakse" valik "256 värvi OLED/LCD (1 bait/piksel)"
Hankige kuuskantväljund.
Lisage kuuskantväljund kuvari/ ehituse/ päise (.h) faili, kasutage teisi süntaksi juhenditena.
Kaasa uus fail digole.c faili #include myimage.h
Lisage oma pildifaili uus käsurea konks. Märkus: allolev käsk ütleb, et joonistage oma pilt positsioonil 10 pikslit üle 10 piksli alla. Saate muuta selle erinevateks X, Y koordinaatideks, samuti saate muuta väärtusi 128, 128 mis tahes suurusega, mis teie uus pilt tegelikult on.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariable Siin on määratletud teie (.h) failis}
Nüüd ehitage uuesti (ignoreerige vigu), et uus pilt renderdada järgmise käsuga.
$./digole myimage
Digole kuvaridraiveri uuesti valimine [kaasatud] valikuliste muudatuste jaoks
$ cd kuva/ehitamine
$ gcc digole.c
$ mv a.out../../digole
$ chmod +x../../digole
13. samm: lõpetatud
Olete lõpetanud!