Мазмұны:
- Жабдықтар
- 1 -қадам: Raspbian орнату
- 2 -қадам: WiFi конфигурациясы
- 3 -қадам: Бағдарламалық жасақтаманы орнату және конфигурациялау
- 4 -қадам: мәліметтер базасы
- 5 -қадам: Айна жақтауын құру
- 6 -қадам: Электроника
- 7 -қадам: электрониканы жақтауға орнату
- 8 -қадам: Түртуді аяқтау
- 9 -қадам: Webapp -пен өзара әрекеттесу
Бейне: Жаңалықтар, ауа райы, дабыл, таймер және Тодолист бар сиқырлы айна: 9 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Сиқырлы айна-артында дисплейі бар арнайы бір жақты айна. Raspberry Pi -ге қосылған дисплейде ауа райы, бөлме температурасы, уақыт, күн, токолист және тағы басқалар сияқты ақпарат көрсетіледі. Сіз тіпті микрофон қосып, ақылды көмекшіні орната аласыз. Мүмкіндіктер шексіз.
Бұл жоба өте қымбат болуы мүмкін, сізге қажет ең қымбат бөлшектердің бірі, әрине, дисплей. Сондықтан мен ескі ноутбуктен дисплейді қайта өңдедім. Мен бұл жобаны жасау үшін үлкен, жарқын, жоғары контрастты дисплей алуды ұсынамын. Бұл тұрарлық.
Мен жасаған айна келесі ерекшеліктерге ие:
- Пайдаланушы таңдаған RSS арнасынан жаңалықтар
- Ауа райы
- Ішкі температура
- Дабыл жүйесі
- Таймер жүйесі
- Толодист
- Бірнеше пайдаланушы: қай жолақ таңдалғанына байланысты жарық диодының түсі мен жаңалықтар көзі өзгереді.
Жабдықтар
Бұл сиқырлы айнаны жасау үшін сізге қажет:
- Бір жақты айна
- Ағаш
- Таңқурай Pi
- Micro SD картасы (8+ГБ)
- Нан тақтасы
- 20 Вт екі динамик
- Динамиктерді қуаттандыратын MAX9744 20W күшейткіші
- 1м 30 жетекті WS2801 жолағы
- DS18B20 1 сымды температура сенсоры
- HC-SR501 инфрақызыл сенсор
- Айналмалы кодер
-
Монитор немесе ноутбуктің ескі дисплейі
Егер сіз ескі ноутбук дисплейін қолдансаңыз, сізге ноутбук дисплейінің адаптерін сатып алу қажет болады. Сіз оларды AliExpress, Ebay немесе Amazon -дан ала аласыз. Дисплейдің сериялық нөмірін іздеңіз
Сонымен қатар сізге келесі шағын компоненттер қажет:
- Диод
- 4,7 кОм резистор
- 470 Ом резисторы
- Сенсорларды Raspberry Pi -ге қосатын сымдар
Және бұл қуат көздері:
- 5В 2А жарық диодты жолаққа қосу үшін
- Дисплейге қуат беру үшін 12V 2A
- Күшейткішті қосу үшін 12В 2А
- Raspberry Pi -ге қуат беру үшін 5.1V 3A (ресми RPi қуат көзін пайдаланыңыз)
1 -қадам: Raspbian орнату
Дисплей мен айна артындағы барлық компоненттер Raspberry Pi арқылы жұмыс істейді. Сізге SD картасына Pi әдепкі амалдық жүйесі Raspbian орнату қажет болады.
- Win32 дискінің бейнематериалын жүктеп алыңыз. Linux және MacOS пайдаланушылары Etcher сияқты нәрсені қолдана алады.
- Raspberry Pi веб -сайтынан соңғы Raspbian кескінін жүктеңіз. 'Жұмыс үстелі бар Raspbian Buster' опциясын таңдаңыз
- Win32 Disk Imager бағдарламасын ашыңыз және кескін файлын SD картасына жазыңыз.
Енді SD картасы дерлік дайын. Біз Raspberry Pi -ге қашықтан қосыла алатындығымызға көз жеткізуіміз керек:
- Жүйенің файл зерттеушісін пайдаланып, SD картасының «жүктеу» бөліміне өтіңіз.
- Кеңейтусіз 'ssh' деп аталатын файлды қосыңыз.
- 'Cmdline.txt' бірінші жолының соңына 'ip = 169.254.10.1' (тырнақшасыз) қосыңыз.
SD картасын компьютерден қауіпсіз шығарып алыңыз, оны Raspberry Pi -ге салып, жүктеңіз.
2 -қадам: WiFi конфигурациясы
WiFi желілерін сканерлеу үшін келесі пәрменді орындаңыз:
sudo iw dev wlan0 сканерлеу | grep SSID
Сіз Raspberry Pi қосыла алатын барлық SSID тізімін көресіз.
Келесі пәрменді орындау және желінің құпия сөзін енгізу арқылы шифрланған парольмен желіге кіруді жасаңыз:
wpa_passphrase «YOUR_NETWORK_SSID_HERE»
Енді осы файлға жоғарыдағы команданың шығуын қойыңыз:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Енді Raspberry Pi -ді қайта жүктеңіз. Сіз Интернетке қосыласыз.
3 -қадам: Бағдарламалық жасақтаманы орнату және конфигурациялау
Бұл жоба үшін сізге Raspberry Pi -ге мына пакеттерді жүктеу қажет:
pip3 mysql-қосқышы-питон колбасы-розеткасы бар колбалар-корпустар gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744
sudo apt install apache2 mariadb-server
Дыбысты GPIO 12 (сол жақ) және 13 (оң жақ) түйреуіштер арқылы қосу үшін /boot/config.txt астына осы жолды қосыңыз:
dtoverlay = audremap
Дисплейдің ажыратымдылығын орнату және i2c, бір сымды және SPI қосу үшін raspi-config пайдаланыңыз. Сонымен қатар жүктеу әдісін 'Desktop Autologin' күйіне орнатыңыз.
/Etc/xdg/lxsession/LXDE-pi/autostart ішінде келесіні қосыңыз:
@xset s off@xset -dpms@xset s noblank@chromium -browser --kiosk 127.0.0.1/mirror.html жүктелгеннен кейін хромды жүктеу және веб -сайтты толық экран режимінде ашу
Бұл LXDE (Raspbian жұмыс үстелінің ортасы) жүктелген кезде шолғышты дұрыс бетте ашады. Экран сақтағышты өшіру үшін @xscreensaver жолын алып тастаңыз немесе түсініктеме беріңіз.
Github репозиторийі
GitHub репозиторийімді клондап, Frontend қалтасының мазмұнын/var/www/html ішіне салыңыз. Бізге кейінірек Backend қалтасы қажет болады.
4 -қадам: мәліметтер базасы
Бұл 3NF үшін оңтайландырылған мәліметтер базасының схемасы. Ол барлық дабылдарды, жаңалықтар көздерін, пайдаланушыларды, сенсорлық деректерді, дыбыстар мен толодистті сақтайды.
- PiS мәліметтер базасының серверіне кіру үшін MySQL Workbench пайдаланыңыз (mariadb)
- Осы схеманың көмегімен мәліметтер базасын құрыңыз және өзіңіздің жеке деректеріңізді енгізіңіз.
- Config.py файлын GitHub репозиторийімнің Backend қалтасында өңдеңіз: дерекқордың атауын, таңдалған пайдаланушы атын және құпия сөзді өзгертіңіз.
- App.py файлын өңдеңіз және OpenWeatherMap API URL мекенжайын өзіңіздікіне өзгертіңіз. (Осы жерде өзіңізді жасаңыз)
5 -қадам: Айна жақтауын құру
Мен жақтауды металл бұрыштары бар Miter қосылыстары арқылы айнаның айналасына жасадым. Мен қолданған ағаш тақталардың қалыңдығы 18 мм, ені 10 см. Суреттерде сіз 45см х 60см айна үшін дәл өлшемдерді көре аласыз. Айнаның артында барлық электроника бар, сондықтан тақталарыңыздың еніне сәйкес келетініне көз жеткізіңіз.
Динамиктерді жақтауға бекіту үшін мен металл ілгектерді қолдандым. Осылайша олар айнаға тірелмейді, әйнектің діріл кернеуін азайтады.
6 -қадам: Электроника
Схеманы құру үшін жоғарыдағы схемаларды орындаңыз. Мен электрониканы айнаға бекіту үшін таспаны қолдандым.
7 -қадам: электрониканы жақтауға орнату
Динамиктерді жоғарғы жағындағы металл ілгектерге бекіткеннен кейін, қалған электрониканы айнаға қосыңыз. Мен сондай -ақ айна мен электрониканың арасына жіңішке ағаш тақтайшаны қойдым, сондықтан электрониканы айнаға жапсырудың орнына, электрониканы ағаш тақтаға жапсырдым. Ноутбуктің дисплейі - айна түбінде ақ панель.
Суреттерде көріп тұрғаныңыздай, мен барлық қуат адаптерлерін көп розеткаға қостым, сондықтан кадрдан бір кабель ғана шығады. Сондықтан маған жеткілікті кең тақталар қажет болды (10 см).
Айнаның оң жағында ені 2 см болатын тесік бұрғыланды, ол айналмалы кодердің енуіне мүмкіндік берді. Бұл дыбыс деңгейін оңай өзгертуге (бұруға) немесе таймерлер мен дабылдарды (басу) өшіруге мүмкіндік береді.
Мен айнаға екі жағынан 8 мм екі тесік бұрғыладым, олар жолақтарға арналған кабельдерді бағыттау үшін.
8 -қадам: Түртуді аяқтау
Мен электрониканы жасыру үшін айна артына қара мата қостым. Сондай -ақ, корпустың іші қараңғыланады, бұл сымдарды айна арқылы көруді айтарлықтай қиындатады. Мен оны велкромен бекітіп қойдым, қажет болған жағдайда электроникаға қол жеткізуді жеңілдетті.
Backend қалтасын менің Github репозиторийімнен есте қалатын жерге көшіріңіз.
Python сценарийі жүктеу кезінде жұмыс істейтін жүйелік блокты қосыңыз:
sudo nano /etc/systemd/system/magicmirror.service
[Бірлік]
Сипаттама = sehrli Mirror python сценарийіне қызмет көрсету = = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = мұрагерлік StandardError = мұраға қайта жүктеу = әрқашан пайдаланушы = pi [Орнату] WantedBy = multi-user.target
'WorkingDirectory'ді Backend каталогына өзгертіңіз, ал User -ді өзіңіздің пайдаланушы атыңызға өзгертіңіз.
9 -қадам: Webapp -пен өзара әрекеттесу
IP -адреске серфинг (дисплейде). Сіз келесі мүмкіндіктері бар мобильді веб-сайтты көресіз:
- Температураның өзара әрекеттесуі
- Уақыт. Таймер жұмыс істеп тұрған кезде, сіз айнада кері санақты көресіз.
- Дабыл жүйесі
- Пайдаланушыларды, жаңалықтар көздерін және динамиктің дыбыс деңгейін өңдеуге болатын параметрлер қойындысы.
- Толодист. Айнада жасалатын заттар көрсетіледі
Mirror.html - бұл Сиқырлы айнада көрсетілетін бет. Мен жоғарыдағы суреттерге мысал қостым.
Ұсынылған:
Alexa дауысты тану мүмкіндігі бар ескі ноутбуктен ақылды сиқырлы айна: 6 қадам (суреттермен)
Alexa дауысты тану мүмкіндігі бар ескі ноутбуктен ақылды сиқырлы айна: менің «Электроника» курсына жазылыңыз: https://www.udemy.com/electronics-in-a-nutshell/?couponCode=TINKERSPARK Сондай-ақ youtube каналында басқа жобалар мен электроникаға арналған оқулықтар: https://www.youtube.com/channel/UCelOO
DHT11 және OLED дисплейі бар қарапайым DIY ауа райы станциясы: 8 қадам
DHT11 және OLED дисплейі бар қарапайым DIY ауа райы станциясы: Бұл оқулықта біз температура мен ылғалдылықты көрсету үшін Arduino, DHT11 сенсоры, OLED дисплейі мен Visuino көмегімен қарапайым ауа райы станциясын құруды үйренеміз
Соңғы 1-2 күнде үрдісті көруге арналған Arduino, BME280 және дисплейі бар ауа райы станциясы: 3 қадам (суреттермен)
Arduino, BME280 және соңғы 1-2 күн ішінде үрдісті көруге арналған дисплейі бар метеорологиялық станция: Сәлеметсіз бе, мұнда метеостанциялар енгізілген. Олар ағымдағы ауа қысымын, температура мен ылғалдылықты көрсетеді. Оларға соңғы 1-2 күн ішінде курстың презентациясы жетіспеді. Бұл процесс келесідей болады
Ауа райы шамы - Ауа райы мен температура бір қарағанда: 8 қадам
Ауа райы шамы - Ауа райы мен температура бір қарағанда: Бұл сиқырлы шамды қолдана отырып, сіз ағымдағы температура мен жағдайды бірден біле аласыз
IoT жеңілдетілді: Қашықтағы ауа райы деректерін түсіру: УК және ауа температурасы мен ылғалдылық: 7 қадам
IoT жеңілдетілді: Қашықтағы ауа райы деректерін түсіру: УК және ауа температурасы мен ылғалдылығы: Бұл оқулықта біз УК (ультракүлгін сәуле), ауа температурасы мен ылғалдылық сияқты қашықтағы деректерді түсіреміз. Бұл деректер өте маңызды болады және болашақта метеостанцияда қолданылады. Блок -диаграмма соңында не алатынымызды көрсетеді