Мазмуну:
- 1 -кадам: Жаркыраган RaspberriPi Hard Disk / Керектүү Программаны Орнотуу (Ubuntu Linuxту колдонуу)
- 2 -кадам: Керектелүүчү материалдар
- 3 -кадам: Түзмөктү куруңуз жана өткөрүңүз
- 4 -кадам: 3d принтерин колдонуп, мукабаны, кутуну жана арткы панелдерди басып чыгарыңыз
- 5 -кадам: Компоненттин зымдары
- 6 -кадам: Компоненттерди роботко туташтыруу
- 7 -кадам: I2C конфигурациясын текшериңиз
- 8 -кадам: DHT11 орнотуу
- 9 -кадам: Clone репозиторийи
- 10 -кадам: Pushbullet API кошуу (Python 3.5 менен)
- 11 -кадам: Башкаруу панелинин жүктөлүшүнөн баштоо үчүн скриптти кошуңуз жана панелиңиздин Pi'син өчүрүп күйгүзүңүз
- 12 -кадам: ОПЦИОНАЛДЫК: Дисплейде көрсөтүү үчүн өзүңүздүн Nintendo сүрөттөрүңүздү түзүү
- 13 -кадам: Бүттү
Video: R.O.B. Телефон эскертме жардамчысы: 13 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Автордун башка маалыматтарын караңыз:
Жөнүндө: 3D басып чыгаруу жана RaspberryPI долбоорлорун бир нече жылдан бери иштеп чыгуу khinds10 жөнүндө көбүрөөк маалымат »
Desktop Phone Notification Assistant Featuring (R. O. B.) Robotic Operating Buddy
1 -кадам: Жаркыраган RaspberriPi Hard Disk / Керектүү Программаны Орнотуу (Ubuntu Linuxту колдонуу)
DashboardPI үчүн жаңы катуу дискти түзүңүз
USB адаптери аркылуу microSDди компьютериңизге киргизиңиз жана dd командасын колдонуп дисктин сүрөтүн түзүңүз
Киргизилген microSD картаңызды df -h буйругу аркылуу таап, аны ажыратып, dd буйругу менен дисктин сүрөтүн түзүңүз.
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/медиа/XXX/1234-5678
$ umount /dev /sdb1
Эскертүү: буйруктун так экенине ишениңиз, бул буйрук менен башка дисктерге зыян келтире аласыз
if = RASPBIAN JESSIE LITE сүрөт файлы = microSD картаңыздын жайгашкан жери
$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of//dev/sdb (note: in this case, it's this/dev/sdb,/dev/sdb1 was in the existing zavod partition on microSD)
RaspberriPi орнотуу
Жаңы microSD картаңызды raspberrypiге салып, HDMI портуна туташкан монитор менен күйгүзүңүз
Кирүү
колдонуучу: pi pass: малина
Коопсуздук үчүн каттоо эсебиңиздин сырсөзүн өзгөртүңүз
sudo passwd pi
RaspberriPi Advanced Options иштетүү
sudo raspi-config
Тандоо:
1 Файл системасын кеңейтүү
9 Advanced Options
A2 Hostname аны "RobbieAssistant" кылып өзгөртөт
A4 SSH SSH серверин иштетүү
A7 I2C i2c интерфейсин иштетүү
Англисче/АКШ баскычтобун иштетүү
sudo nano/etc/default/keyboard
Төмөнкү сапты өзгөртүңүз: XKBLAYOUT = "us"
Клавиатуранын жайгашуусун өзгөртүү үчүн / файл системасынын өлчөмүн өзгөртүү үчүн PIди кайра жүктөө
$ sudo өчүрүү -r азыр
WiFiга автоматтык түрдө туташуу
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Сиздин raspberrypi автоматтык түрдө үй WiFiңызга кошулушу үчүн төмөнкү саптарды кошуңуз (эгер сиздин зымсыз тармагыңыз "linksys" деп аталып калса, мисалы, төмөнкү мисалда)
network = {ssid = "linksys" psk = "БУЛ ЖЕРДЕ ЗАПСЫЗ ПАРОЛЬ"} WiFi тармагына туташуу үчүн PIди кайра жүктөңүз
$ sudo өчүрүү -r азыр
Эми сиздин PI акыры жергиликтүү тармакта болгондуктан, ага алыстан SSH аркылуу кире аласыз. Бирок адегенде азыркы учурда бар болгон IP дарегин алышыңыз керек.
$ ifconfig "inet addr: 192.168. XXX. XXX" издеңиз, PIнин IP дареги үчүн төмөнкү буйруктун чыгарылышында.
Башка машинага өтүп, raspberrypi -ге ssh аркылуу кириңиз
$ ssh [email protected]. XXX. XXX
Керектүү пакеттерди орнотууну баштаңыз
$ sudo apt-get update
$ sudo apt-get жогорулатуу
$ 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 libreadon6-pip python3-өтүнүчтөр python3-setuptools python3-urllib python3-urllib3 python3-өтүнүчтөр python-smbus i2c-куралдар python-smbus python-smbus куруу үчүн зарыл python-dev rpi.gpio python3 python3-pip vim git python-pybus python-иштетүүчү python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-куралдар -gpiozero python-psutil xz-utils
$ sudo pip орнотуу сурамдары
Жергиликтүү убакыт алкагынын жөндөөлөрүн жаңыртуу
$ sudo dpkg-маалыматты кайра конфигурациялоо
интерфейс аркылуу убакыт алкагыңызды тандаңыз
Жөнөкөй каталогду орнотуу l буйругу [милдеттүү эмес]
vi ~/.bashrc
төмөнкү сапты кошуу:
каймана аты l = 'ls -lh'
булак ~/.bashrc
VIM демейки синтаксисин бөлүп көрсөтүүнү оңдоңуз [милдеттүү эмес]
sudo vi/etc/vim/vimrc
төмөнкү сапка комментарий бербеңиз:
синтаксис күйгүзүлгөн
mkdir/home/pi/RobbieAssistant/logs иштетүү үчүн колдонмо үчүн журналдар папкасын жасаңыз
chmod 777/home/pi/RobbieAssistant/журналдар
Колдонмону settings.py конфигурация файлында туура иштөө үчүн конфигурациялоо Долбоордун / камтыйт / папкасынан settings-shadow.py файлын таап, settings.pyге көчүрүп, учурдагы жөндөөлөрүңүзгө тууралаңыз.
Жергиликтүү аба ырайы маалыматы үчүн # prognoz.io API ачкычы
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'СИЗДИН API АЧКЫЧЫ КАБЫЛ АЛУУ ҮЧҮН.'
# алыскы температура/нымдуулукту каттоочу үчүн кошумча
dashboardServer = 'mydevicelogger.com'
# үйүңүздүн жайгашкан жери үчүн Latitude/Longitude алуу үчүн googleден издеңиз
кеңдик = 41.4552578
узундук = -72.1665444
2 -кадам: Керектелүүчү материалдар
RaspberriPi Zero
DHT11 Humidistat
LED Lights (x4) Жашыл / Сары / Көк / Кызыл 2.6 Digole Display
3 -кадам: Түзмөктү куруңуз жана өткөрүңүз
I2C үчүн Digole дисплейин даярдаңыз
Digole дисплейинин арткы жагында, i2c протоколун колдонуу үчүн дисплейди дайындоо үчүн секиргичти кошуңуз
4 -кадам: 3d принтерин колдонуп, мукабаны, кутуну жана арткы панелдерди басып чыгарыңыз
3DPrint папкасында төмөнкү X STL файлдарын колдонуп, R. O. B. Робот, LED жабдыктары жана дисплей тоосу
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-harness-final.stl
MiniNintendoROB.zip
Робот басып чыгаруу: Mini Nintendo R. O. B. - RabbitEngineering тарабынан
www.thingiverse.com/thing:1494964
Мен кара лампа фонунда көзүмдү кызартуу үчүн кызыл тасма колдондум
5 -кадам: Компоненттин зымдары
Digole Display
GND -> GND
DATA -> SDA
CLK -> SCL
VCC -> 3V
DHT11 Humidistat
VCC -> 5V
GND -> GND
МААЛЫМАТ -> GPIO 25
КӨК резистор
VCC -> GPIO 17 (270ohm каршылыгы менен)
GND -> GND
САРЫ Резистор
VCC -> GPIO 13 (270ohm каршылыгы менен)
GND -> GND
GREEN Resistor
VCC -> GPIO 6 (270ohm каршылыгы менен)
GND -> GND
RED каршылыгы
VCC -> GPIO 12 (270ohm каршылыгы менен)
GND -> GND
RED Momentary баскычтары
VCC -> GPIO 16 (270ohm каршылыгы менен)
GND -> GND
КӨК көз ирмемдик баскыч
VCC -> GPIO 26 (270ohm каршылыгы менен)
GND -> GND
6 -кадам: Компоненттерди роботко туташтыруу
Экран кармагычты басып чыгаргандан кийин, аны digole дисплейине туташтырыңыз
Дисплейди RPiге роботтун артына чаптоо үчүн жетиштүү зым менен туташтырыңыз
Контроллерди басып чыгарыңыз жана роботтун арт жагына өтүү үчүн баскычтарды зым менен жабыңыз
Артка туташтырылган RPi жана DHT11 түбүнө жабыштырылган роботту чогултуп бүтүрүңүз
7 -кадам: I2C конфигурациясын текшериңиз
RaspberryPi иштетип, I2C автобусуңуз 7/14 сегментинин бардык туташкан дисплейлерин тааныганын текшериңиз. [ар бир дисплейге жогоруда сүрөттөлгөн уникалдуу дарек берилет, анда сиз ар бир дисплейдин секиргичтерин ар кандай комбинацияларда кантип лактайсыз]
Эгерде сизде секиргичтин туура ширетилген дисплейи бар болсо, 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: -- -- -- -- -- -- -- --
8 -кадам: DHT11 орнотуу
$ cd ~
$ git клону
$ cd Adafruit_Python_DHT/
$ sudo python setup.py орнотуу
$ sudo python ez_setup.py
$ cd мисалдары/
$ vi simpletest.pyТөмөнкү сапты өзгөртүңүз:
сенсор = Adafruit_DHT. DHT11
Сызыкты комментарийге калтырыңыз
пин = 'P8_11'
Сызыкка комментарий жазбай, пин номерин 16га өзгөртүңүз
пин = 25
Тестти иштет
python simpletest.py
Сиз буйрук сабында көрсөтүлгөн Temp and Humidity аттуу метрикалык окууну көрүшүңүз керек.
9 -кадам: Clone репозиторийи
$ CD ~ $ git клону
10 -кадам: Pushbullet API кошуу (Python 3.5 менен)
Телефонуңуз үчүн pushbullet тиркемесин колдонуп, API ачкычын алуу үчүн катталып, жөнөкөй питон сценарийи маалымат түйүнүнүн эскертмелерин жана индикаторлорунун желектерин басып, түртө алат.
Python 3.5 орнотуу asyncio иштеши үчүн
$ sudo apt-get update sudo apt-get install-essential tk-dev sudo apt-get libncurses5-dev libncursesw5-dev libreadline6-dev sudo apt-get libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev Sudo apt-get install libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev Эгерде пакеттердин бири табылбаса, жаңы версиянын номерин колдонуп көрүңүз (мис. libdb5.3-dev ордуна 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 -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 көз карандылыктарын орнотуңуз
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 asyncpushbullet sudo pip3 орнотуу өтүнүчтөрү Кошумча жол Python репозиторийин питонду колдонбостон python көз карандылыктарын алуу үчүн түз жүктөп алыңыз
git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py орнотуу Каттоо эсебиңиздеги pushbullet жөндөөлөр барагына баш багыңыз Https://github.com/rharder/asyncpushbullet колдонуу үчүн API ачкычы
Туура API жана панелдин борбордук хостуна ээ болуу үчүн pushbullet-listener.py скриптиңизди конфигурациялаңыз
# сиздин API ачкычыңыз PushBullet.com API_KEY = "o. XXXYYYZZZ121222333444555666"
# панелдин борбордук серверинин хост панели dashboardServer = 'MY-SERVER-HERE.com'
11 -кадам: Башкаруу панелинин жүктөлүшүнөн баштоо үчүн скриптти кошуңуз жана панелиңиздин 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 -кадам: ОПЦИОНАЛДЫК: Дисплейде көрсөтүү үчүн өзүңүздүн Nintendo сүрөттөрүңүздү түзүү
Өзүңүздүн 128x128 файлыңызды төмөнкү URLге жүктөңүз:
www.digole.com/tools/PicturetoC_Hex_converter.php
Жүктөө үчүн сүрөт файлыңызды тандаңыз, экранда кандай өлчөмдө болушун кааласаңыз кошуңуз (Туурасы/Бийиктиги)
"Колдонуу үчүн" ачылуучу тизмесинен "256 Color for OLED/LCD (1 байт/пиксел)" тандаңыз.
Hex чыгарылышын алыңыз.
Он алтылык чыгууну дисплей/ куруу/ header (.h) файлына кошуңуз, башкаларын синтаксис үчүн колдонмо катары колдонуңуз.
Жаңы файлды digole.c файлына #include myimage.h
Сүрөт файлыңызга жаңы буйрук сабынын кайырмасын кошуңуз. Эскертүү: төмөндөгү буйрукта 10 пикселден ылдый 10 пикселдик абалда сүрөтүңүздү тартуу керек деп айтылат. Сиз аны башка X, Y координаттарына өзгөртө аласыз, ошондой эле 128, 128 маанилерин жаңы сүрөтүңүздүн өлчөмүнө өзгөртө аласыз.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere сиздин (.h) файлыңызда аныкталган}
Эми жаңы сүрөттү төмөнкү буйрук менен көрсөтүү үчүн төмөндө кайра куруңуз (каталарга көңүл бурбаңыз).
$./digole myimage
Кошумча өзгөртүүлөрүңүз үчүн [Камтылган] Digole Display Driver кайра куруу
$ cd дисплей/куруу
$ gcc digole.c
$ mv a.out../../digole
$ chmod +x../../digole
13 -кадам: Бүттү
Бүттүңүз!
Сунушталууда:
WLED (ESP8266 боюнча) + IFTTT + Google Жардамчысы: 5 кадам
WLED (ESP8266 боюнча) + IFTTT + Google Жардамчысы: Бул окуу куралы сизди WLED үчүн IFTTT жана Google Жардамчысын ESP8266.To орнотуу үчүн колдоно баштайт. ESP8266, tynick боюнча бул колдонмону ээрчиңиз: https: //tynick.com/blog/11-03-2019/getting-started… Мындай сонун программа үчүн Aircookieге кыйкырыңыз
DIY Аба ырайы жардамчысы: 6 кадам
DIY Аба ырайынын жардамчысы: Акыркы жолу мен ESP32 менен учурдагы аба ырайын көрсөтө турган аба ырайын берүү станциясын түздүм. Эгер сизди кызыктырса, мурунку көрсөтмөлөрдү текшере аласыз. Эми мен жакшыртылган версиясын жасагым келет, бизди текшерүү үчүн шаарды дайындайм
Google Жардамчысы көзөмөлдөгөн LED матрицасы!: 7 кадам (Сүрөттөр менен)
Google Жардамчысынын көзөмөлдөгөн LED матрицасы!: Бул үйрөткүчтө мен сизге Google Жардамчысынын көзөмөлдөгөн LED матрицасын кантип жасоо керектигин көрсөтөм, аны каалаган жерден смартфондун жардамы менен башкарууга болот, андыктан баштайлы
Ардуино менен үн жардамчысы: 3 кадам
Үн жардамчысы Arduino менен: Ciao a tutti! Мүмкүнчүлүк Arduino менен байланышкан жокпу? La risposta è si! Эсептөөдө компосту жасоо керек. Con assistente вокал инфатти
Ultimate Craigslist эскертме куралын' түзүңүз: 5 кадам
Ultimate Craigslist эскертме куралын' түзүңүз: Эскертүү: бул долбоор Mac колдонуучулары үчүн. Жарайт. Бардык craigslist колдонуучулары бир же эки жолу ушундай окуяга туш болушкан. Сиз жаңы USB кофе чөйчөгүнүн жылыткычын 10 долларга сатып алдыңыз жана аны коңшу кошунаңыз биринчи сатып алганын билесиз. &Quot; Эгерде, " сиз каалайсыз & quo