Мазмұны:
- 1 -қадам: Барлық қажетті элементтерді алыңыз
- 2 -қадам: Raspberry Pi дайындаңыз
- 3 -қадам: Барлығын бірге қосыңыз
- 4 -қадам: Деректер қорын жасаңыз
- 5 -қадам: Кодтың уақыты
- 6 -қадам: көріңіз
Бейне: Fanair: сіздің бөлмеге арналған метеостанция: 6 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Қазіргі ауа -райын білудің көптеген әдістері бар, бірақ сіз тек сырттағы ауа райын білесіз. Егер сіз өзіңіздің үйіңіздегі, белгілі бір бөлмедегі ауа райын білгіңіз келсе ше? Мен бұл жобаны шешуге тырысамын.
Fanair сезу үшін бірнеше сенсорларды қолданады:
- температура
- ылғалдылық
- жарық
- белгілі газдар
- ауа қысымы
Ол өте жинақы және Raspberry Pi 3 B -ді қолданады, мәндерді алу, оларды MySQL дерекқорында сақтау, содан кейін оларды веб -сайтта оңай қол жетімді ету үшін. Код пен веб -сайтқа сіздің орналасқан жеріңіз бойынша ауа райы туралы нақты ақпаратты алу мүмкіндігі кіреді, осылайша веб -сайтты сыртқы ауа райын тексеру үшін де пайдалануға болады.
1 -қадам: Барлық қажетті элементтерді алыңыз
Ең алдымен сізге сымдар / секіргіш кабельдер сияқты негізгі электроника қажет болады. Егер сіз бәрін тұрақты жоба ретінде дәнекерлеуді жоспарласаңыз, онда сізге дәнекерлеуіш, дәнекерлеуіш және өзіңіздің жайлылығыңыз үшін бәрін дәнекерлеу үшін ПХД қажет болады.
Нақтырақ заттар үшін мен осы материалдық шотты жасадым.
- Таңқурай Pi 3 B
- MPC3008-8 каналды 10 биттік ADC
- AM2301 Термометр температура мен ылғалдылық сенсоры
- WR Rademacher WR-tyoe 930-1 ПХД
- Прототипке арналған ABS корпусы (қара)
- LDR
- MQ135 газ сенсоры
- 2x BC517 Дарлингтон транзисторы
- RGB жарық диоды
- Резисторлар жиынтығы
- Зумер
- Сымдар
- BMP280 барометрі
- Тыныш USB желдеткіші (5В)
Мұның бәрі шамамен 110 еуроға тұруы керек. Жалпы баға шамамен алынғанын есте сақтаңыз. Сонымен қатар, менің жобамда фотосуретте СКД экраны бар, бірақ ол қосылмаған, себебі менің жағдайда бос орын жеткіліксіз, сондықтан ол нұсқаулыққа кірмейді.
2 -қадам: Raspberry Pi дайындаңыз
Raspberry Jessie -ді Pixel операциялық жүйесімен Raspberry Pi ресми сайтынан алыңыз және жүктелгеннен кейін оны ашыңыз. Сіз сурет файлын аласыз. Оны Pi-ге алу үшін оны Win32 Disk Imager көмегімен SD картасына жазу керек. Орнатылғаннан кейін кескін файлын және SD картасы бар дискіні таңдаңыз. Содан кейін жазу түймесін басып, аяқталғанша күтіңіз.
Аяқтаған кезде File Explorer ішіндегі SD-картаны нұқыңыз және «cmdline.txt» деп аталатын файлды ашыңыз, мәтіндік файлдың түбірін күтудің алдында өтіңіз және бос орынмен «ip = 254.169.10.2» деп жазыңыз. Оны сақтағаннан кейін терезенің бір жерін тінтуірдің оң жақ түймесімен шертіп, 'ssh' деп аталатын жаңа файл жасау керек. Бұл файлда файл кеңейтімі жоқ екенін ескеріңіз. Оның кеңейтімі жоқ екеніне көз жеткізу үшін файл шолғышында «қарау» түймесін басып, «жасырын файлдарды» тексеріңіз. Егер ол атауын өзгертсе және кеңейтімді жойса, ол тек 'ssh' оқиды.
Осыдан кейін сіз SD-картаны Raspberry Pi-ге енгізе аласыз. Ssh клиентін жүктеңіз (мен MobaXterm ұсынамын). Ал ssh көмегімен бұрын орнатылған IP -пен '254.169.10.2' қосылыңыз. Пайдаланушы аты 'pi', пароль 'таңқурай'. Қаласаңыз, терминалға 'sudo passwd' пәрменін енгізіп, нұсқауларды орындап, парольді өзгертуге болады. Біз Fanair үшін SD-картаның жақсы бөлігін қолданатын болсақ, қол жетімді жадты кеңейту керек 'sudo rapi-config' теру арқылы 'Қосымша опциялар', содан кейін 'Файлдық жүйені кеңейту'. Егер қайта жүктеу сұралса.
Біз 1 сымды, SPI және I2C интерфейсін қолданамыз. Оларды пайдалану үшін алдымен оларды реттеу керек!
3 -қадам: Барлығын бірге қосыңыз
Айналым жасаудың уақыты келді! Бірінші рет сіз оны тақтада сынап көруіңіз керек, бірақ егер сізде уақыт болмаса, оны бірге дәнекерлеуге тырысуға болады.
Сізге қажет схема жоғарыда көрсетілгендей, ыңғайлы болу үшін тақтаның нұсқасы да бар.
4 -қадам: Деректер қорын жасаңыз
Сіз алатын барлық деректерді тиімді сақтау үшін біз TSQL MySQL мәліметтер базасын қолданамыз. MySQL -ді орнатпас бұрын, терминалда бірнеше пәрмендерді теру арқылы бәрі жаңартылғанына көз жеткізейік:
- 'sudo apt-get update'
- 'sudo apt-get upgrade'
- 'sudo apt-get dist-upgrade'
'Y' теру арқылы әр шақыруды қабылдап, енгізіңіз.
MySQL түрін орнату үшін:
- 'sudo apt-get mysql-server орнату'
- 'sudo apt-get mysql-client орнатыңыз'
Сұралған кезде өзіңіз қалаған түбірлік құпия сөзді жасаңыз.
Келу арқылы кіруді орнату аяқталғаннан кейін:
'mysql -uroot -p'
Және парольді теру.
My Github -дан Fanair кодын алыңыз! «Клондау немесе жүктеу», содан кейін «ZIP жүктеу» түймесін басыңыз. Таңдалған қалтадағы кодты ашыңыз. Толық жұмыс істейтін мәліметтер қорын құруға арналған сұрау мәліметтер қорының қалтасында болады. Файлды ашып, кодты көшіріп, MySQL ашық күйінде терминалға қойыңыз. Содан кейін енгізу түймесін басыңыз және мәліметтер базасы дайын!
5 -қадам: Кодтың уақыты
Барлық сенсорларды пайдалану үшін сізге бағдарламаны іске қосу қажет. Бақытымызға орай, код қазірдің өзінде жасалды (көп жағдайда) және біз оны SQL дерекқорының сұранысын алған кезде жүктеп алдық.
Мен айтқандай, бағдарламаның дұрыс жұмыс істеуі үшін әлі де өзгертілуі / қосылуы қажет бірнеше нәрсе бар. Бағдарлама, ең алдымен, бойлық пен ендік бойынша ауа райы туралы мәліметтерді алу үшін Darksky API пайдаланады. Оны пайдалану үшін сізге тіркелу қажет. Алғашқы 1000 қоңырау тегін, содан кейін бір қоңырауға $ 0,0001 төленеді. Егер сіз төлем жасамасаңыз, сіздің шотыңыз бұғатталады деп естідім. Шыны керек, бір қоңырауға $ 0.0001 өте арзан. Fanair әр сағат сайын соңғы деректерді шақырады, бұл бір жылдың ішінде толық уақыт жұмыс істесе, сізге тек $ 0.876 тұрады. Егер Fanair толық уақыт жұмыс істесе, сіз 41 күн тегін аласыз.
Тіркелгеннен кейін API кілтін іздеңіз. Google карталарынан орналасқан жеріңіздің ені мен енін іздеңіз немесе оны google -ден іздеп көріңіз. Жаңа мәтіндік файлды Fanair негізгі каталогын жасаңыз (сыныптармен, main.py…). Файлды 'key_location.txt' деп атаңыз. Мәтіндік файлды ашып, бірінші жолға Darksky API кілтін қойыңыз. Екінші жолға бойлықты, үшінші жолға ендік енін қойыңыз (екеуі де ондық форматта). Аяқтағаннан кейін файлды сақтаңыз.
Сол каталогта 'database_dsn.txt' деп аталатын басқа мәтіндік файл жасаңыз. Бірінші жолда 'localhost' деп жазу керек. Екінші жол - «түбір». Үшінші жолға дерекқор үшін бұрын жасаған құпия сөзіңізді, төртінші және соңғы жолға 'fanair' деп теруіңіз керек.
Main.py файлын тінтуірдің оң жақ түймешігімен нұқыңыз және өңдеуді таңдаңыз. 'Fanair = Fanair (5, 26, 17, 27, 22, 4, «AM2301», 1, 0, 0, 0, «key_location.txt», «database_dsn.txt»)' өзгерту қажет. Егер сіз суретті ұстанған болсаңыз, алғашқы 5 мәнді '5, 26, 17, 27, 22, 4' -тен '20, 21, 26, 19, 13 '-ке өзгерту керек. '/home/muhsin/Applications/Fanair' де Fanair түбірлік жолына (main.py орналасқан) өзгертілуі керек. «Fanair» -ден кейін емес, «үй» алдында қиғаш сызық қойыңыз.
Енді бәрі керемет, бірақ код Pi -ге кіруі керек. Бақытымызға орай, бізде sftp протоколы бар. Файлдарды Pi -ге қою үшін FileZilla сияқты sftp клиентін қолданыңыз немесе MobaXterm -ды қолдануды шешсеңіз, файлдарды терминалдың сол жағындағы sftp интерфейсіне оңай жүктей аласыз.
Менің тәжірибемде мен әрқашан Raspberry Pi -де дұрыс күн мен уақытты ала алмаймын. Дұрыс уақытты алатыныңызға сенімді болу үшін мен осы нұсқаулықты орындауды ұсынамын: Raspberry Pi синхрондау күні мен уақыты.
Ақырында, бірнеше кітапхананы орнату керек және бірнеше интерфейстерді қосу қажет:
'sudo apt-get install build-essential python-dev'
Adafruit DHT:
'pip3 adafruit_python_dht орнатыңыз'
1-сым:
- 'sudo raspi-config'
- «Интерфейс параметрлері»
- '1 сым'
- Қосу
- 'sudo nano /boot/config.txt'
- Бұл жолды файлға қосыңыз: 'dtoverlay = w1-gpio'
- 'sudo қайта жүктеу'
SPI:
- 'sudo raspi-config'
- «Интерфейс параметрлері»
- «SPI»
- Қосу
- 'sudo қайта жүктеу'
- 'sudo nano /boot/config.txt'
- 'Dtparam = spi = on' деп іздеңіз және хэштегті алып тастаңыз.
- 'sudo apt-get install python3-dev
Smbus:
- 'sudo raspi-config' '
- «Интерфейс параметрлері»
- 'I2C'
- Қосу
- 'sudo қайта жүктеу'
- 'sudo apt-get install -y python-smbus'
- 'sudo apt-get install -y i2c-tools'
- 'sudo nano /boot/config.txt'
- Dtparam = i2c_arm = on іздеңіз және хэштегті алып тастаңыз.
колба
pip3 Flask орнатыңыз
mysql қосқышы
'pip3 install -Iv mysql -қосқышы == 2.1.4'
spidev
'pip3 py-spidev орнатыңыз'
қарақшы
'pip3 darkskylib орнатыңыз'
6 -қадам: көріңіз
Егер сіз бұған жете алсаңыз, арқаңызды түртіңіз. Енді Fanair дұрыс жұмыс істеуі үшін бәрі жасалды. Сондықтан оны тексеру үшін 'cd «»' теріңіз. Файлдың орналасқан жері «/home/pi», мысалы, егер сіз жаңа ғана үй каталогына қойсаңыз. Содан кейін 'python3 main.py' теріңіз және оны 15 минутқа қалдырыңыз, осылайша ол дайын болған кезде мәліметтер базасында болады. Осыдан кейін 'ctrl + c' пернесін басу арқылы бағдарламаны тоқтатып, 'python3 Flask.py' теріңіз. Сіздің веб -сайтыңыздың жұмыс істейтінін білу үшін сізге Pi: «5000» арқылы IP мекенжайын енгізу қажет (мысалы: 169.254.10.1:5000 ').
Оны жүктеуден кейін автоматты түрде іске қосу үшін:
'sudo nano /etc/rc.local'
Файлдың соңында БІРАҚ 0 шығудан бұрын:
'sudo python3 «/main.py» &'
'sudo python3 «/Flask.py» &'
Құттықтаймын, сіз сценарийді іске қосқаннан бастап іске қосуыңыз керек, ал СІЗ ДАЙЫНДЫҢЫЗ! Егер сіз жобаны жалғастыруды жоспарлап отырсаңыз және әлі де жоқ болса, мен сізге бәрін біріктіруді ұсынамын, бәрі орнында қалуы үшін. Егер сіз оны айналдыру үшін ойнамасаңыз, әрине, тақта да жұмыс істейді.
Ұсынылған:
Жарық пен дыбыс бар жатын бөлмеге арналған дабыл!: 6 қадам
Жарық пен дыбыс бар жатын бөлмеге дабыл
NAS-pi: сіздің PLEX, DLNA және NAS рахаттануыңызға арналған Ultimate Box: 5 қадам (суреттермен)
NAS-pi: Ultimate Box for your PLEX, DLNA and NAS Pleases: Сәлеметсіздер ме, адамдар! Біз бүгін шынайы көріністі қалыптастыратын боламыз! Raspberry Pi желісінде медиа ағынмен жұмыс істейтін сақтау орны! Raspberry Pi 3 & Raspberry Pi 2 үйлесімді! Ерекшеліктер 160GB RAID1 және 1.4 TB PLEX серверімен бірге келеді
Сіздің Raspberry Pi ойын серверіне арналған салқындатылған жүйе!: 9 қадам (суреттермен)
Raspberry Pi ойын серверіне арналған салқындатылған иондық жүйе!: Сәлеметсіздер ме! Біраз уақыттан кейін мен Raspberry Pi алдым, бірақ мен онымен не істеу керектігін білмедім. Жақында Minecraft қайтадан танымал бола бастады, сондықтан мен және достарыма ләззат алу үшін Minecraft серверін орнатуды шештім. Бұл мен екенім белгілі болды:
Сіздің өміріңіздегі ерекше адамға арналған Dreamday қорабы: 11 қадам (суреттермен)
Сіздің өміріңіздегі ерекше адамға арналған Dreamday қорабы: Бұл кішкентай қорапша менің сүйіктім екеуміз бірге өмір сүретін күндердің санын көрсетеді. Әрине, бұл кездесу кез келген нәрсе болуы мүмкін, бұл сіздің үйленген күндеріңізді, жұбайыңызбен кездескен күннен бастап, сіз көшкен күнді білдіруі мүмкін
Сіздің үйге немесе кеңсеге арналған басқарылатын RGB жарықдиодты жүйесі: 5 қадам (суреттермен)
Сіздің үйге немесе кеңсеге арналған басқарылатын RGB жарықдиодты жүйесі: сіздің үйдегі немесе жұмыс кеңістігіндегі шамдар скучно ма? Бөлмеңізге кішкене энергия немесе көңіл -күй жарығы қосқыңыз келе ме? Бұл нұсқаулық сіздің үйде немесе кеңседе пайдалану үшін басқарылатын RGB жарық диодты массивін қалай жасау керектігін көрсетеді. Сіздің қызыл, жасыл, көк жарық диодтарыңыз