Мазмұны:

Home_X: 5 қадам
Home_X: 5 қадам

Бейне: Home_X: 5 қадам

Бейне: Home_X: 5 қадам
Бейне: Qadam (o'zbek serial) | Кадам (узбек сериал) 5-qism 2024, Шілде
Anonim
Үй_X
Үй_X

Мен Howest Kortrijk студентімін, ол жаңа медиа және коммуникация технологиясын (NMCT) зерттейді.

Біз бәріміз таңқурай мен/немесе Arduino -ға негізделген жоба жасауымыз керек еді. Деректерді веб -сайтта көрсету үшін сенсорлар мен мәліметтер базасын қолдануға тура келді, менде шағын ақылды үй құру идеясы пайда болды.

Ақылды үйдің көмегімен сіз веб -сайттағы сенсордың барлық көрсеткіштерін көре аласыз.

Бұл нұсқаулықта мен сізге әр қадамды көрсетемін, осылайша сіз бұл жобаны өзіңіз үшін қайта жасай аласыз.

1 -қадам: материалдар: Сізге не қажет

  • Raspberry Pi
  • DHT22
  • Grove - ауа сапасының сенсоры
  • Grove - газ сенсоры (MQ2)
  • Нан тақтасы
  • Raspberry Pi T Cobbler
  • Аталық/әйел секіргіш сымдар
  • 5 мм жарықдиодты шамдар
  • Резисторлар
  • Ағаш пен құралдар
  • Серво моторы
  • GrovePi+

Сіз бұл заттарды интернеттен (Ali express, amazon, киви электроника …) немесе жергілікті дүкендерден сатып ала аласыз.

Дүкендерге сілтемесі бар бөлшектердің егжей -тегжейлі тізімі БАҚ -та төменде берілген.

2 -қадам: Сымдарды жалғау

Сымдар
Сымдар
Сымдар
Сымдар

Мен Fritzing -ді сымға қалай салу керектігін жақсы түсіну үшін қолдандым. Мен өзім сенсорлардың екеуіне GrovePi+ қолдандым. Егер сіз мұны GrovePi+ жоқ жасауды жоспарласаңыз, Fritzing схемасын орындаңыз. Мен сенсорлар сіз үшін жұмыс істемейді, әр түрлі түйреуіштерді қолданып көріңіз.

Сіз Fritzing файлын төменде таба аласыз.

3 -қадам: MySQL көмегімен мәліметтер базасы

MySQL көмегімен мәліметтер қоры
MySQL көмегімен мәліметтер қоры

Ең маңызды міндеттердің бірі - MySQL мәліметтер базасына қосылу.

Сенсор көрсеткіштерді алған сайын немесе шам жанғанда, сіз бұл өзгерістерді дерекқордан көресіз.

Деректер базасы бұл деректерді веб -сайтқа жібереді, сондықтан пайдаланушы оларды сол жерден көре алады.

Төменде сіз менің.xml файлымды таба аласыз, онда сізде мәліметтер қорының қалай жұмыс істейтіні туралы шолу бар, бірақ алдымен сізге Raspberry Pi -ге MySQL мен колбаны орнату керек.

Датчиктерді кодтау pycharm арқылы жүзеге асты, сондықтан оның (компьютерде) орнатылғанына көз жеткізіңіз.

Алдымен сіз жаңартуларды тексеріп, пакеттерді орнатуыңыз керек, мысалы:

sudo apt-get update && sudo apt-get upgrade

sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

Енді біз виртуалды ортаны қолданамыз:

me@my-rpi: ~ $ python3 -m pip install-pip setuptools дөңгелегін жаңарту virtualenvme@my-rpi: ~ $ mkdir project1 && cd project1 me@my-rpi: ~/project1 $ python3 -m venv --система- my-rpi: ~/project1 $ source env/bin/activate (env) me@my-rpi: ~/project1 $ python -m pip mysql-connector-python argon2-cffi Flask Flask-HTTPAuth орнататын сайт пакеттері Flask-MySQL mysql-Connector-python рұқсат етілген

Бұл сізге mariadb.service белсенді екенін хабарлайды.

Енді pycharm-да VCS> Нұсқаларды басқарудан импорттау> GitHub en clone өтіңіз

Содан кейін сіз жасаған каталог үшін орналастыру конфигурациясын конфигурациялаңыз, мысалы. /үй/мен/жоба1.

Осыдан кейін интерпретатордың параметрлеріне өтіп, сіз жасаған виртуалды ортаны реттеңіз, мысалы. /home/me/project/env/bin/python. Жол картасын толтыру қажет.

Егер сіз мұның бәрін жасасаңыз, дерекқор жұмыс істеуі керек.

sudo systemctl күйі mysql

Енді бізге мәліметтер базасы үшін пайдаланушыларды құру қажет:

sudo mariadb

CREATE USER 'project-admin'@'localhost' 'adminpassword' арқылы анықталады; «Web-пароль» арқылы анықталатын USER 'project-web'@'localhost' жасаңыз; CREATE USER 'project-sensor'@'localhost' IDENIFIED 'senspassword'; DATABASE жобасын құру;

ЖОБАҒА БАРЛЫҚ ЕРЕКШЕЛІКТЕРДІ БЕРУ.* ГРАНТ ОПЦИЯСЫМЕН 'project-admin'@'localhost-қа; GRANT SELECT, INSERT, UPDATE, DELETE ON жобасына.* TO' project-web '@' localhost '; GRANT SELECT, INSERT, UPDATE, DELETE ON жобасы.* TO 'project-sensor'@'localhost'; АРТЫҚШЫЛЫҚТАР;

Енді біздің базаны pycharm -да көру үшін біз байланыс орнатуымыз керек.

Біз мұны Қарау> Құралдар Windows> Деректер базасына өтіп, жасыл «плюс» түймесін басу арқылы жасай аламыз.

Деректер көзі> MySQL және ашылған драйверді жүктеу түймесін (егер бар болса) басыңыз.

Содан кейін SSH/SSL өтіңіз және SSH тексеріңіз. Пи үшін хост/пайдаланушы/құпия сөзді толтырыңыз және егер әлі толтырылмаған болса, 22 портты қолданыңыз.

Егер сіз pycharm пароліңізді есте сақтағыңыз келсе, «Құпия сөзді есте сақтау» құсбелгісін қойыңыз.

«Жалпы» қойындысында хостты, дерекқордағы жобаны толтырыңыз және қосылымды тексеру үшін құпия сөзбен жоба әкімшісін қолданыңыз.

Енді дерекқорды пайдалану үшін төменде мен орналастыратын.sql іске қосу қажет. Импорттау опциясын қолданып көріңіз, егер демпфайлды импорттау мүмкін болмаса, кестелерді қолмен қосу керек.

Осыдан кейін екі.service файлдары бар conf каталогын табу керек. Онда сіз pi қолданатын пайдаланушының атымен табылған әр себетті өзгертіңіз. Сонымен қатар, топ www-data болуы керек.

Келесі қадам - бұл қызметтерді pi -де бастау, мысалы:

sudo cp conf/project-*. service/etc/systemd/system/

sudo systemctl демонды қайта жүктеу

sudo systemctl жобаны бастау-*

sudo systemctl күй жобасы-*

Барлығы жоспарға сәйкес болған кезде сіз екі белсенді қызметті көруіңіз керек.

Соңғы қадам - nginx қосу.

Алдымен pi -де apache2 бар -жоғын тексеріңіз, егер сізде бұл орнатылған болса, оны жойыңыз немесе өшіріңіз.

Nginx файлында алдымен uwsgi_pass өзгерту керек, содан кейін осы пәрмендерді іске қосыңыз.

sudo cp conf/nginx/etc/nginx/sites-available/project

sudo rm/etc/nginx/sites-қосылған/әдепкі

sudo ln -s/etc/nginx/sites-available/project1/etc/nginx/sites-enabled/project

sudo systemctl nginx.service қайта іске қосыңыз

sudo systemctl күйі nginx.service

Nginx белсенді және жұмыс істеуі керек. Егер бәрі дұрыс болса, енді пи -ге жүгіне аласыз. Сіз алдымен «Сәлем әлемі» көресіз, бірақ сіз әлі де төмендегі кодпен сол файлдың мазмұнын өзгертуіңіз керек.

Сіз қызметтерді қосуға болады, олар pi басталған кезде автоматты түрде іске қосылады.

Сіз мұны жасаған кезде, дерекқорға мекен -жайы бар кем дегенде 1 үйді енгізгеніңізге көз жеткізіңіз. Сіз мұны қарапайым кірістіру арқылы жасай аласыз.

4 -қадам: кодтау

Кодтау
Кодтау
Кодтау
Кодтау

Сіз кодты Github арқылы жүктей аласыз:

github.com/NMCT-S2-Project-I/project-i-Tib…

Сенсорлардың коды sensor.py файлына енгізілген.

Қызметтік файлдарда менің атымды өзіңіздің атыңызға өзгертуді ұмытпаңыз (немесе сіздің pi -де пайдаланатын пайдаланушы), олар дұрыс жұмыс істей алады және менің кодты Pycharm -да бар файлдарға орналастырады.

5 -қадам: тұрғын үй

Тұрғын үй
Тұрғын үй
Тұрғын үй
Тұрғын үй
Тұрғын үй
Тұрғын үй
Тұрғын үй
Тұрғын үй

Мен үйімді қалай алғым келетінін тез суреттедім, бірақ сіздің үй мүлде басқаша көрінуі мүмкін. Серво терезені ашып, жабуы үшін сізде тұтастық бар екеніне көз жеткізу керек.

Мен негізінен ағаш кесу үшін кішкене бұрғы мен араны қолдандым. Мен сондай -ақ қабырғалардың қалыңдығына көз жеткіздім, осылайша мен олардың ішіне сервоімді орналастыра алдым.

Дизайнды аяқтағаннан кейін және серво орнатылған кезде, сенсорларды жалғап, пиді үйдің ішіне қою керек, сонда сіз баруға дайынсыз.

Мен айтқанымдай, сіздің үй менікімен бірдей болуы мүмкін, сізге тек серво мен терезеге орын босату керек.

Ақырында сіз жобаны аяқтадыңыз. Бұл нұсқаулық жеткілікті түсінікті деп сенемін, сондықтан сіз де мен сияқты керемет үй жасай аласыз.

Сәттілік.

Ұсынылған: