Мазмұны:
- 1 -қадам: Қажетті компоненттер
- 2 -қадам: Тіл және протокол
- 3 -қадам: Eclipse Mosquitto MQTT брокері
- 4 -қадам: Тұтас жобадағы мәліметтер ағыны
- 5 -қадам: сенсорларды NodeMCU көмегімен қосу
- 6 -қадам: ESP8266 көмегімен су асты сорғысын қосу
- 7 -қадам: Raspberry Pi -де москит брокерін орнату және Python бағдарламасын іске қосу
- 8 -қадам: MQTT қалай жұмыс істейді?
- 9 -қадам: NodeMCU мен ESP8266 бағдарламалау
- 10 -қадам: Веб -бетті жобалау және SQL мәліметтер базасына қосылу
- 11 -қадам: жұмысты аяқтаңыз
Бейне: Жасыл үйді автоматтандыру: 11 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Жасыл үйді автоматтандыру - бұл жасыл үйдің үш параметрін, яғни топырақтың ылғалдылығын, температурасын және ылғалдылығын пайдаланушы веб -браузер арқылы қашықтықтан бақылайтын жоба.
1 -қадам: Қажетті компоненттер
Кейбір қажетті компоненттер төменде келтірілген
1. Таңқурай PI моделі В.
2. NodeMCU дамыту басқармасы
3. ESP8266 Wifi модулі
4. Ылғал сенсоры
5. DHT11 температура мен ылғалдылық сенсоры
6. 5В бір арналы реле
7. 5В су асты сорғы
8. Нан тақтасы
9. Нан тақтасын электрмен жабдықтау модулі
2 -қадам: Тіл және протокол
- C тілі микро контроллерлер үшін қолданылады.
- MQTT хабарламасы: MQTT MQ телеметриялық тасымалдауды білдіреді. Бұл шектеулі құрылғыларға және өткізу қабілеттілігі төмен, кешігетін немесе сенімсіз желілерге арналған жариялау/жазылу, өте қарапайым және жеңіл хабар алмасу хаттамасы. Дизайн принциптері желінің өткізу қабілеттілігін және құрылғы ресурстарының қажеттілігін барынша азайту, сонымен қатар сенімділік пен жеткізілімнің белгілі бір дәрежесін қамтамасыз етуге тырысады. Бұл қағидалар протоколды «құрылғыдан машинаға» (M2M) немесе қосылған заттар әлемінің «Интернет заттары» әлеміне және өткізу қабілеттілігі мен батарея қуаты жоғары болатын мобильді қосымшаларға идеалды етеді.
- Python бағдарламасы су ағыны мен дерекқорға қосылуды автоматтандыру үшін қолданылады.
3 -қадам: Eclipse Mosquitto MQTT брокері
Бұл жерде мен түйіндер арасындағы хабар алмасу үшін Mosquitto MQTT брокерін қолдандым.
Eclipse Mosquitto - бұл MQTT протоколының 5.0, 3.1.1 және 3.1 нұсқаларын іске асыратын ашық көзі (EPL/EDL лицензияланған) хабарламалар брокері. Mosquitto жеңіл және қуаты төмен бір тақталы компьютерлерден толық серверлерге дейінгі барлық құрылғыларда қолдануға жарамды.
MQTT хаттамасы жариялау/жазылу үлгісін қолдану арқылы хабар алмасудың жеңіл әдісін ұсынады. Бұл оны заттардың Интернеті арқылы хабар алмасу үшін қолайлы етеді, мысалы, қуаты төмен сенсорлармен немесе ұялы телефондар, ендірілген компьютерлер немесе микроконтроллерлермен.
Mosquitto жобасы сонымен қатар MQTT клиенттерін енгізуге арналған C кітапханасын және MQTT клиенттерінің mosquitto_pub және mosquitto_sub командалық жолын ұсынады.
4 -қадам: Тұтас жобадағы мәліметтер ағыны
Жоғарыдағы суретте түйіндер көрсетілген
- NodeMCU
- Таңқурай PI
- ESP8266
NodeMCU - бұл Жасыл үйдің сезімтал бөлігі, ал ESP8266 - сенсорларға сәйкес жер суға мұқтаж болған кезде сумен қамтамасыз ететін бөлік.
Raspberry PI құрамында Mosquitto Broker мен Python клиенті бар, ол MQTT брокерінен келетін хабарларға жазылады және деректерді SQL серверінде сақтайды.
5 -қадам: сенсорларды NodeMCU көмегімен қосу
DHT11 температура мен ылғалдылық сенсоры мен су ылғалдылығы сенсоры 3,3 вольтта жұмыс істей алады.
NodeMCU 3,3 вольттан артық бере алмайды. Сенсорлар NodeMCU микроконтроллер тақтасына тікелей қосыла алады.
6 -қадам: ESP8266 көмегімен су асты сорғысын қосу
Қажет кезде суды беру үшін су асты сорғы қолданылады.
Су сорғысының жұмыс істеуі үшін 5 вольтты қуат көзі қажет.
Қозғалтқышты қосу үшін бір арналы реле қажет. ESP8266 GPIO2 түйреуіші іске қосылған кезде реле қосылады және суды сорғы арқылы автоматты түрде береді.
Мұнда ESP8266 тақтасына, реле мен суасты сорғысына сыртқы қуат көзі беріледі.
Менің толық аппараттық байланыс жоғарыдағы суретте.
7 -қадам: Raspberry Pi -де москит брокерін орнату және Python бағдарламасын іске қосу
Raspberry PI жүйесінде Mosquitto брокерін орнатуға арналған қадамдар
Терминалды ашып, келесі пәрмендерді теріңіз
sudo apt-add-repository ppa: mosquitto-dev/mosquitto-ppa
sudo apt-get жаңартуы
sudo apt-get mosquitto орнатыңыз
sudo apt-get москит-клиенттерді орнатыңыз
Ол масаларды автоматты түрде іске қосуы керек.
Маған қажет қызметті тоқтату және бастау үшін
sudo қызметі масаларды тоқтатады
sudo қызметі масаларды бастайды
Көптеген сайттар мен форматты қолданатын жерді таптым.
sudo /etc/init.d/mosquitto stop
8 -қадам: MQTT қалай жұмыс істейді?
MQTT - бұл IoT жобаларында жиі қолданылатын хаттамалардың бірі. Бұл Message Queuing Telemetry Transport дегенді білдіреді.
Сонымен қатар, ол клиенттер мен сервер арасында деректер алмасу үшін жариялау/жазылу операцияларын қолданатын жеңіл хабар алмасу хаттамасы ретінде жасалған. Сонымен қатар, оның шағын өлшемі, қуатты аз тұтынуы, деректер пакетінің азаюы және іске асырудың қарапайымдылығы хаттаманы «машинадан машинаға» немесе «заттар интернеті» әлемінің идеалына айналдырады.
Кез келген басқа интернет протоколы сияқты MQTT клиенттер мен серверге негізделген. Дәл осылай, сервер - бұл бір -бірінің арасында деректерді қабылдау немесе жіберу туралы клиенттің сұраныстарын өңдеуге жауап беретін адам. MQTT сервері делдал деп аталады, ал клиенттер - тек қосылған құрылғылар.
* Егер құрылғы (клиент) брокерге деректерді жібергісі келсе, біз бұл операцияны «жариялау» деп атаймыз.
* Егер құрылғы (клиент) брокерден деректерді алғысы келсе, біз бұл операцияны «жазылу» деп атаймыз.
9 -қадам: NodeMCU мен ESP8266 бағдарламалау
Төменде NodeMCU және ESP8266 микроконтроллер тақтасының бастапқы коды берілген
10 -қадам: Веб -бетті жобалау және SQL мәліметтер базасына қосылу
Web -бет HTML, CSS және PHP тілінің көмегімен жасалған.
PHP сенсордың көрсеткіштерін мәліметтер базасынан шығарып, оны HTML бетінде көрсету үшін қолданылады.
Бұл жобаның жүрегі ретінде питон бағдарламасы қолданылады.
Python бағдарламасында орындалатын жұмыстар келесідей.
- Ол сенсор сенсордың көрсеткіштерін жіберетін тақырыпқа жазылады.
- Ол MQTT брокеріне су сорғысын қосу/өшіру пәрменін жариялайды.
- Ол сенсордың оқуын SQL дерекқорында сақтайды.
Бұл жерде менің жағдайда python бағдарламасы мен SQL мәліметтер базасы ноутбукте болады. Жергілікті хост арқылы жұмыс істейтін веб -бет.
Төменде менің python бағдарламасының бастапқы коды берілген.
11 -қадам: жұмысты аяқтаңыз
Төменде процесс жалғасатын қадамдар берілген.
- NodeMCU сенсорлық бөлік ретінде жұмыс істейді және температураны, ылғалдылықты және топырақтың ылғалдылық деңгейін оқиды.
- Ол оқуларды MQTT брокеріне «1 тақырып» тақырыбымен жібереді.
- Ноутбукте python бағдарламасы жұмыс істейді және ол MQTT брокерімен «1 -тақырып» тақырыбына жазылады.
- NodeMCU оқуды жіберген кезде, Mosquitto MQTT брокері дереу деректерді python бағдарламасына жібереді.
- Содан кейін Python бағдарламасы Жасыл үйде судың бар -жоғын есептейді. Содан кейін ол оқуды SQL мәліметтер базасында сақтайды.
- Егер жасыл үйге су қажет болса, онда питон бағдарламасы Mosquitto MQTT брокеріне «2 -тақырып» тақырыбымен су сорғысын қосу/өшіру туралы хабарламаны жариялайды.
- ESP8266 жетегі ретінде жұмыс істейді. Ол питон бағдарламасы хабарламаны жариялайтын «2 -тақырып» тақырыбына жазылады. Python бағдарламасы кез келген хабарды жариялаған кезде, хабар бірден ESP8266 -ға жіберіледі. Қосу/өшіру хабарламасына сәйкес, ол су асты сорғыны қосады/өшіреді.
- Веб -бетте тікелей көрсеткіштерді көрсетудің соңғы кезеңі. Веб -бет деректерді python бағдарламасы сақтайтын SQL мәліметтер қорынан алады және беттегі көрсеткіштерді көрсетеді.
Ұсынылған:
$ 5 үйді автоматтандыру түймесі: 4 қадам
5 долларлық үйді автоматтандыру түймесі: 5 долларлық үйді автоматтандыру түймесі Кейде ең қарапайым шешім - бір түйме. Біз үйдегі автоматтандыру хабында (Hubitat Elevation) «ұйықтау» режимін іске қосудың оңай жолын алғымыз келді, ол көптеген шамдарды өшіреді, басқаларды белгілі бір деңгейге қояды және
Өте төмен қуатты WiFi үйді автоматтандыру жүйесі: 6 қадам (суреттермен)
Өте төмен қуатты WiFi үйді автоматтандыру жүйесі: Бұл жобада біз бірнеше негізгі қадаммен үйдегі жергілікті автоматтандыру жүйесін қалай құруға болатынын көрсетеміз. Біз орталық WiFi құрылғысы ретінде жұмыс істейтін Raspberry Pi қолданамыз. Ақырғы түйіндер үшін біз IOT Cricket аккумуляторын жасау үшін қолданамыз
Үйді автоматтандыру: 5 қадам
Үйді автоматтандыру: бұл жобада біз барлық жобаға арналған бейне видеолардың IoT интернетін түсіну үшін оны нөлден бастап құратын көптеген нәрселерді қолданамыз
NodeMCU сенсорлы сенсорлы LDR температураны басқару релесі бар үйді автоматтандыру: 16 қадам
NodeMCU сенсорлы сенсорлы LDR температураны бақылау релесі бар үйді автоматтандыру: Менің бұрынғы NodeMCU жобаларымда мен Blynk қосымшасының екі тұрмыстық техникасын басқардым. Мен жобаны қолмен басқару және басқа мүмкіндіктерді қосу арқылы жаңарту үшін көптеген түсініктемелер мен хабарламалар алдым, сондықтан мен бұл ақылды үйді кеңейту қорабын жасадым
Arduino басқару релесі модулін пайдаланып ақылды үйді қалай жасауға болады - Үйді автоматтандыру идеялары: 15 қадам (суреттермен)
Arduino басқару релесі модулін пайдаланып ақылды үйді қалай жасауға болады | Үйді автоматтандыру идеялары: Бұл үйді автоматтандыру жобасында біз 5 тұрмыстық техниканы басқара алатын ақылды үй реле модулін жасаймыз. Бұл реле модулін Мобильді телефоннан немесе смартфоннан, ИҚ қашықтан басқару пультінен немесе теледидардың қашықтан басқару пульті, Қолмен қосқыштан басқаруға болады. Бұл ақылды эстафета сонымен қатар сезеді