Smart Window buatan sendiri

Idenya membuat jendela atau lubang angin yang dapat membuka tutup otomatis berdasarkan suhu.
Ketika udara luar panas, untuk mencegah udara masuk di celah lubang angin / jendela.
Smart Window akan menutup, ketika udara di luar mendingin misal menjelang sore maka smart window dapat membuka.

Misal di ruang depan kadang cukup panas, dan udara panas masuk ke dalam.
Sementara udara di luar panas misal mencapai 33 derajat Celcius, jendela akan menutup kisi lubang angin menutup.
Mencegah udara panas masuk sementara waktu. Ketika di luar sudah dingin misal terjadi hujan dan suhu turun. Sistem ini otomatis membuka jendela, dan membiarkan angin dingin masuk.

Aplikasinya tidak terbatas seperti itu.
Walau dalam artikel ini fokus ke sensor. Kita dapat merubah dengan sensor lain, bahkan mengabungkan, dari sensor cahaya, sensor UV, atau mengaktifkan fan pendingin ruangan dan lainnya.
Contoh lain, bila udara di dalam ruangan menjadi panas, bisa saja aplikasi ini menjadi kebalikan.
Suhu ruang naik mencapai 32 deg.C, yang kita sebut smart window dapat mengaktifkan fan exhaust untuk menarik udara panas keluar.
Atau mengatur pencahayaan dengan tirai yang bekerja otomatis. Bila cahaya ruangan terlalu terang akibat cahaya matahari, tirai akan menutup untuk memblok sebagian cahaya matahari.

Kita kembali dengan smart window sebagai kontrol suhu ruangan.
Rancangannya sederhana, sebuah ESP / Arudino board sebagai otak yang nantinya kita program. Contoh disini mengunakan ESP32.
Dan 2 unit lain, sensor suhu dan servo.
Sensor suhu digunakan model BMP180, sedangkan servo versi murah model Tower Pro.

Diagram servo dapat dipasang 1 unit, dengan BMP180.
Diagram seperti dibawah ini.
Servo terhubung ke power 5V, dan 1 konektor untuk kontrol di GPIO13.
Sensor BMP180 terhubung ke power 3.3V, dan 2 pin untuk SLC dan SDA
Desain smart windows diagram ESP32 servo temperature sensor

Apakah boleh ditambahkan 2 servo dan mungkin lebih, bisa.
Mau dipasang 3-4-5 servo untuk pengerak tidak masalah, asalkan mengunakan power ekternal.
Note : jangan mengambil power langsung dari board dengan power USB untuk servo bila servo membutuhkan daya besar, karena dapat merusak modul MCU ESP32.

Contoh diagram dibawah ini, servo pertama mengunakan pin GPIO13 dan servo kedua mengunakan pin GPIO12

Membuat otomatis dengan ESP untuk kontrol suhu dan servo

Seperti foto ini, mengunakan 2 servo dengan 1 ESP32 dan sensor temperature.

Mengunakan dual servo untuk smart windows

Untuk sensor ESP32 banyak pilihan.

Saran mengunakan sensor tipe digital yang terhubung ke pin SDA SCL atau disebut koneksi I2C, karena datanya lebih akurat.
Model sensor silakan pilih sendiri, boleh seri BMP180 atau AHT10 dan lainnya.
Mau dilengkapi dengan barometer (untuk cuaca), atau kelembapan tidak masalah.

Sensor suhu

BME280 Suhu, Kelembapan, Tekanan satu paket.
BMP280 Suhu, Tekanan Versi lebih murah BME280 (tanpa kelembapan).
AHT10 / AHT20 Suhu, Kelembapan Sangat murah, stabil, dan jauh lebih baik daripada DHT11/22.
SHT30 / SHT31 Suhu, Kelembapan Kelas industri, sangat presisi, tahan terhadap embun.
BMP180 Suhu, Tekanan Sensor klasik, murah, namun mulai digantikan oleh BMP280.

Sensor pencahayaan
BH1750 Intensitas Cahaya (Lux) Output langsung dalam satuan Lux, tidak perlu kalibrasi rumit.
TSL2561 Luminositas

Sensor UV dan ambient light
VEML6070 Deteksi Spektrum UV-A

VEML6075 Deteksi UV-A & UV-B
LTR390 UV Index & Ambient Light

Program dibawah Arduino untuk Smart Window dengan 1 servo, ESP32, BMP180

------------------

#include <Wire.h>
#include <Adafruit_BMP085.h>
#include <ESP32Servo.h>
Adafruit_BMP085 bmp; //if you use BMP sensor
Servo myservo;
int pos = 0;
bool isOpen = false;
const int pinServo = 13; // pin GPIO servo
void setup() {
Serial.begin(115200);
if (!bmp.begin(0x55)) {
Serial.println(F("BMP085 error"));
while (1);
}
ESP32PWM::allocateTimer(0);
myservo.setPeriodHertz(50);

// Start and test

myservo.attach(pinServo, 500, 2400);
myservo.write(0);
delay(1000);
myservo.detach();
Serial.println("System Ready. Servo Off");
}
void loop() {
float temp = bmp.readTemperature();
Serial.print("Temp: ");
Serial.print(temp);
Serial.println(" C");
// close window if temp : 33 deg.C, prevent hot air coming
if (temp > 33.0) {
if (!isOpen) {
Serial.println("Temp High! Close...");
servomoving(90);
isOpen = true;
}
} else {
if (isOpen) {
Serial.println("Temp Normal. Open...");
servomoving(0);
isOpen = false;
}
}
delay(2000);
}
void servomoving(int angleservo) {
myservo.attach(pinServo, 500, 2400);
delay(50);
if (pos < angleservo) {
for (int i = pos; i <= angleservo; i++) {
myservo.write(i);
pos = i;
delay(30);
}
} else {
for (int i = pos; i >= angleservo; i--) {
myservo.write(i);
pos = i;
delay(30);
}
}
delay(200);
myservo.detach();
Serial.println("Servo Rest");
}

------------------

Dari program diatas dalam penjelasan :
if (temp > 33.0) // bila suhu diatas 33 deg.C, Window atau servo bergerak misal menutup.

myservo.attach(pinServo, 500, 2400); // memperlambat servo agar pemakaian power rendah, dan tidak merusak board ESP selama percobaan. Nanti harus dipasang langsung ke power 5V.

delay(2000) // waktu jedah / tunggu. Agar servo selesai bergerak dan mencapai sudut.

myservo.detach(); // ini bagian penting. Servo terus mengunakan power walau posisi stand-by. Fungsinya untuk mempertahankan beban ditempat. Karena desain jendela yang dibuat tidak memiliki beban besar. Power ke servo dapat diputus agar tidak merusak dinamo yang terus mendapatkan power, sehingga servo lebih awet. Beban dapat ditahan dengan gear di servo.

Cara kerja mekanik jendela pintar dibawah ini.



Mengapa tidak terhubung ke smartphone, jendelanya mana.
Ini adalah desain dasar, sebagai mekanik untuk pengerak "jendela / tirai".
Yang lebih rumit, membuat jendela dapat membuka tutup otomatis.
Misal memasang jendela atau ruang udara di atap rumah agar udara dingin dapat masuk, dan menutup ketika udara di luar terlalu panas.

Disanalah kita dapat melakukan percobaan, apakah sistem mekanik dapat bekerja dengan baik.
Sedangkan rancangan diatas adalah rancangan mesinnya saja.


Mengapa tidak dibuat dengan kontrol dari smartphone, misal membuka tutup manual, atau otomatis.
Itu nanti, setelah kita melihat perangkat jadi, dan bekerja otomatis. Silakan dikembangkan sendiri.

Apakah bisa bekerja ke Home Assistant dan di kontrol dari Dashboard.
Tentu. Karena tujuan perangkat ESP32 memang untuk terhubung ke WIFI.
Dan itu nanti, setelah kita perangkat sudah bekerja, silakan dimasukan ke data Home Assistant server sendiri.

Ini hanya ide sederhana.

Pengembangan, kita yang menentukan.
Tidak terbatas untuk suhu, mungkin yang kita butuhkan untuk memblok cahaya matahari.
Silakan mencoba dengan sensor pencahayaan dan aplikasi lain.
Aplikasi lain, seperti jendela menutup ketika polusi tinggi di depan gedung dapat diterapkan. Masalahnya banyak sensor yang tersedia untuk deteksi gas dan polutan masih dijual cukup mahal.

Perangkat pintar yang dipasarkan sebenarnya mirip dengan desain diatas.
Dari Smart Switch atau Power Plug, Smart Window, Smart Light, tapi dibuat kompak dan siap pakai. Sudah terintegrasi dengan sistem dari produsen untuk kontrol mengunakan WIFI, Bluetooth, di aplikasi.

Beberapa produk Smart Home juga dapat kita beli.

Pencahayaan & Elektrikal

  • Smart Light Bulb: Bohlam yang bisa diatur warna (RGB) dan kecerahannya via aplikasi.
  • Smart LED Strip: Lampu dekoratif fleksibel untuk ambience ruangan.
  • Smart Switch: Saklar dinding pintar untuk mengontrol lampu konvensional.
  • Smart Plug / Socket: Steker adaptor untuk membuat perangkat "bodoh" menjadi pintar.
  • Smart Extension Power Strip: Kabel terminal dengan beberapa lubang yang bisa dikontrol individu.

Keamanan & Akses

  • Smart IP Camera (CCTV): Kamera pemantau dengan fitur motion detection dan two-way audio.
  • Smart Door Lock: Kunci pintu via sidik jari, PIN, kartu RFID, atau aplikasi.
  • Smart Video Doorbell: Bel pintu dengan kamera untuk melihat tamu dari ponsel.
  • Smart Alarm Siren: Sirine yang berbunyi jika sensor keamanan terpicu.

Sensor Pintar

  • Motion Sensor: Mendeteksi gerakan untuk menyalakan lampu otomatis.
  • Door/Window Sensor: Mendeteksi status terbuka atau tertutupnya pintu/jendela.
  • Temperature & Humidity Sensor: Memantau suhu dan kelembapan ruangan.
  • Water Leak Sensor: Mendeteksi kebocoran air di area dapur atau kamar mandi.
  • Smoke/Gas Detector: Sensor pendeteksi asap atau kebocoran gas LPG.

Peralatan Rumah Tangga (Appliances)

  • Robot Vacuum Cleaner: Pengisap debu otomatis yang memetakan rumah sendiri.
  • Smart Curtain Motor: Penggerak gorden otomatis berdasarkan jadwal atau sensor cahaya.
  • Smart Air Purifier: Pemurni udara yang bisa dipantau kualitas udaranya secara real-time.
  • Smart Pet Feeder: Pemberi makan hewan peliharaan otomatis sesuai jadwal.