Daftar Isi:

Otomatisasi Rumah Kaca: 11 Langkah
Otomatisasi Rumah Kaca: 11 Langkah

Video: Otomatisasi Rumah Kaca: 11 Langkah

Video: Otomatisasi Rumah Kaca: 11 Langkah
Video: Kontrol Suhu dan Kelembaban Smart Green House Misting dengan HP Wifi - Cara Setting Tuya TY11 2024, Juli
Anonim
Otomatisasi Rumah Kaca
Otomatisasi Rumah Kaca

Otomatisasi rumah kaca adalah proyek di mana tiga parameter rumah kaca, yaitu Kelembaban Tanah, Suhu & Kelembaban, dipantau oleh pengguna dari jarak jauh hanya dengan menggunakan browser web.

Langkah 1: Komponen Diperlukan

Komponen yang Diperlukan
Komponen yang Diperlukan
Komponen yang Diperlukan
Komponen yang Diperlukan
Komponen yang Diperlukan
Komponen yang Diperlukan

Beberapa komponen penting yang diperlukan tercantum di bawah ini:

1. Raspberry PI Model B

2. Papan Pengembangan NodeMCU

3. Modul Wifi ESP8266

4. Sensor Kelembaban

5. Sensor Suhu & Kelembaban DHT11

6. Relay Saluran Tunggal 5V

7. Pompa Air Submersible 5V

8. Papan Roti

9. Modul Catu Daya Papan Roti

Langkah 2: Bahasa & Protokol

Bahasa & Protokol
Bahasa & Protokol
Bahasa & Protokol
Bahasa & Protokol
Bahasa & Protokol
Bahasa & Protokol
  • Bahasa C digunakan untuk pengontrol mikro.
  • Pesan MQTT: MQTT adalah singkatan dari MQ Telemetri Transport. Ini adalah protokol perpesanan yang diterbitkan/berlangganan, sangat sederhana dan ringan, dirancang untuk perangkat terbatas dan jaringan bandwidth rendah, latensi tinggi atau tidak dapat diandalkan. Prinsip-prinsip desain adalah untuk meminimalkan bandwidth jaringan dan kebutuhan sumber daya perangkat sementara juga berusaha untuk memastikan keandalan dan beberapa tingkat jaminan pengiriman. Prinsip-prinsip ini juga membuat protokol menjadi ideal untuk dunia “machine-to-machine” (M2M) atau “Internet of Things” yang muncul dari perangkat yang terhubung, dan untuk aplikasi seluler di mana bandwidth dan daya baterai sangat mahal.
  • Program Python digunakan untuk mengotomatisasi aliran air dan konektivitas database.

Langkah 3: Pialang Eclipse Mosquitto MQTT

Pialang MQTT Nyamuk Eclipse
Pialang MQTT Nyamuk Eclipse

Di sini saya menggunakan Mosquitto MQTT Broker untuk komunikasi pesan yang mudah antar node.

Eclipse Mosquitto adalah broker pesan open source (berlisensi EPL/EDL) yang mengimplementasikan protokol MQTT versi 5.0, 3.1.1 dan 3.1. Mosquitto ringan dan cocok untuk digunakan di semua perangkat mulai dari komputer papan tunggal berdaya rendah hingga server penuh.

Protokol MQTT menyediakan metode ringan untuk melakukan pengiriman pesan menggunakan model publish/subscribe. Ini membuatnya cocok untuk pesan Internet of Things seperti dengan sensor daya rendah atau perangkat seluler seperti ponsel, komputer tertanam, atau pengontrol mikro.

Proyek Mosquitto juga menyediakan pustaka C untuk mengimplementasikan klien MQTT, dan klien MQTT baris perintah mosquitto_pub dan mosquitto_sub yang sangat populer.

Langkah 4: Aliran Data di Seluruh Proyek

Pada gambar di atas simpulnya adalah

  1. NodeMCU
  2. PI raspberry
  3. ESP8266

NodeMCU adalah bagian penginderaan dari Green House & ESP8266 adalah bagian penggerak yang memasok air ketika tanah membutuhkan air sesuai dengan sensor.

Raspberry PI berisi Mosquitto Broker dan klien Python yang berlangganan pesan yang datang dari MQTT Broker dan menyimpan data ke dalam server SQL.

Langkah 5: Koneksi Sensor Dengan NodeMCU

Koneksi Sensor Dengan NodeMCU
Koneksi Sensor Dengan NodeMCU

Sensor suhu dan kelembaban DHT11 dan sensor kelembaban air mampu beroperasi pada tegangan 3,3 volt.

NodeMCU tidak dapat memberikan lebih dari 3,3 volt. Sehingga sensor dapat langsung terhubung dengan board mikrokontroler NodeMCU.

Langkah 6: Koneksi Pompa Air Submersible Dengan ESP8266

Koneksi Pompa Air Submersible Dengan ESP8266
Koneksi Pompa Air Submersible Dengan ESP8266
Koneksi Pompa Air Submersible Dengan ESP8266
Koneksi Pompa Air Submersible Dengan ESP8266

Pompa air submersible digunakan untuk memasok air kapan pun dibutuhkan.

Pompa air membutuhkan catu daya 5 volt untuk pengoperasiannya.

Relay saluran tunggal diperlukan untuk menghubungkan motor. Ketika pin GPIO2 ESP8266 diaktifkan, relai dihidupkan dan secara otomatis memasok air menggunakan pompa air submersible.

Di sini catu daya eksternal disediakan untuk papan ESP8266, Relay & pompa air submersible.

Koneksi perangkat keras lengkap saya ada di gambar di atas.

Langkah 7: Menginstal Mosquitto Broker & Menjalankan Program Python di Raspberry Pi

Berikut ini adalah langkah-langkah untuk menginstal broker Mosquitto di Raspberry PI

Buka terminal dan ketik perintah berikut

sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

sudo apt-get update

sudo apt-get install mosquitto

sudo apt-get install mosquitto-clients

Ini harus secara otomatis memulai nyamuk.

Untuk Berhenti dan memulai layanan yang perlu saya gunakan

layanan sudo menghentikan nyamuk

layanan sudo mulai nyamuk

Sebagian besar situs yang saya temukan di mana menggunakan format.

sudo /etc/init.d/mosquitto stop

Langkah 8: Bagaimana MQTT Bekerja?

Bagaimana MQTT Bekerja?
Bagaimana MQTT Bekerja?

MQTT adalah salah satu protokol yang paling umum digunakan dalam proyek IoT. Itu singkatan dari Message Queuing Telemetry Transport.

Selain itu, ia dirancang sebagai protokol perpesanan ringan yang menggunakan operasi terbitkan/berlangganan untuk bertukar data antara klien dan server. Selain itu, ukurannya yang kecil, penggunaan daya yang rendah, paket data yang diminimalkan, dan kemudahan implementasi membuat protokol ini ideal untuk dunia "mesin-ke-mesin" atau "Internet of Things".

Seperti protokol internet lainnya, MQTT didasarkan pada klien dan server. Demikian juga, server adalah orang yang bertanggung jawab untuk menangani permintaan klien untuk menerima atau mengirim data antara satu sama lain. Server MQTT disebut broker dan klien hanyalah perangkat yang terhubung. Jadi:

* Ketika sebuah perangkat (klien) ingin mengirim data ke broker, kami menyebut operasi ini sebagai "publikasikan".

* Ketika perangkat (klien) ingin menerima data dari broker, kami menyebut operasi ini sebagai "berlangganan".

Langkah 9: Pemrograman NodeMCU dan ESP8266

Berikut adalah kode sumber untuk papan Mikrokontroler NodeMCU dan ESP8266:

Langkah 10: Merancang Halaman Web dan Menghubungkan ke Database SQL

Halaman Web dirancang menggunakan bahasa HTML, CSS dan PHP.

PHP digunakan untuk mengekstrak pembacaan sensor dari database dan menampilkannya ke halaman HTML.

Program python digunakan sebagai inti dari proyek ini.

Pekerjaan yang dilakukan oleh program python adalah sebagai berikut.

  1. Itu berlangganan topik di mana sensor mengirimkan pembacaan sensor.
  2. Ini menerbitkan perintah on/off pompa air ke broker MQTT.
  3. Ini menyimpan pembacaan sensor ke dalam database SQL.

Di sini, dalam kasus saya, program python dan database SQL ada di Laptop. Halaman web berjalan melalui Host Lokal.

Berikut ini adalah Source code dari program python saya.

Langkah 11: Selesaikan Pekerjaan

Selesai Bekerja
Selesai Bekerja

Berikut ini adalah langkah-langkah di mana proses berlangsung.

  1. NodeMCU bekerja sebagai bagian penginderaan dan membaca Suhu, Kelembaban dan tingkat kelembaban tanah.
  2. Ini mengirimkan bacaan ke broker MQTT dengan topik "Topik 1"
  3. Di laptop program python sedang berjalan dan berlangganan topik "Topik 1" dengan broker MQTT.
  4. Ketika NodeMCU mengirimkan pembacaan maka Mosquitto MQTT Broker segera mengirimkan data tersebut ke program python.
  5. Program Python kemudian menghitung apakah ada air yang dibutuhkan di Green House. Kemudian menyimpan bacaan ke dalam Database SQL.
  6. Jika air dibutuhkan di Green House, maka program python mempublikasikan pesan on/off pompa air ke broker MQTT Nyamuk dengan topik "Topik 2"
  7. ESP8266 bekerja sebagai aktuator. Itu berlangganan di topik "Topik 2" di mana topik program python menerbitkan pesan. Ketika program python mempublikasikan pesan apa pun maka pesan tersebut langsung ditransfer ke ESP8266. Menurut pesan on/off, pompa air submersible dihidupkan/dimatikan.
  8. Tahap terakhir untuk menampilkan pembacaan langsung di halaman web. Halaman web mengambil data dari database SQL di mana program python menyimpan data secara langsung dan menampilkan bacaan di halaman.

Direkomendasikan: