
DIY Single-Axis Solar Tracker Pelacak Matahari 1 Sumbu Otomatis Berbasis ESP32 & Blynk IoT (WOKWI)
Pada bagian ini akan dibahas pembuatan sistem pelacak matahari 1 sumbu (Single-Axis Solar Tracker) berbasis mikrokontroler ESP32, dua sensor LDR (LDR Kiri dan LDR Kanan), motor servo penggerak sudut panel surya, layar LCD 16×2 I2C, serta platform Blynk IoT pada software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan video pembuatan pada tautan Video 1. Sistem membandingkan nilai intensitas cahaya (Lux) dari sensor LDR kiri dan kanan secara presisi. Jika terdapat perbedaan intensitas cahaya di atas batas toleransi, motor servo akan bergeser secara halus mengarahkan posisi panel surya ke titik intensitas cahaya matahari tertinggi. Saat kondisi malam hari, sistem secara otomatis masuk ke Mode Malam (Night Mode) dan mengembalikan posisi panel surya ke sudut tegak lurus (90 derajat).

Gambar 1. Skematik rangkaian sistem
List Pin:
- LCD 16×2 I2C (Alamat: 0x27)
GND => GND
VCC => 5V / 3.3V
SDA => GPIO 21
SCL => GPIO 22 - Sensor Cahaya Kiri (LDR Kiri)
AO (Analog Output) => GPIO 34 (LDR_KIRI)
VCC => 3.3V
GND => GND - Sensor Cahaya Kanan (LDR Kanan)
AO (Analog Output) => GPIO 35 (LDR_KANAN)
VCC => 3.3V
GND => GND - Motor Servo Tracker
Signal => GPIO 18 (SERVO_PIN)
VCC => 5V
GND => GND
List Virtual Pin:
- V0 => Average Lux (Float / Integer) – Menampilkan Nilai Rata-rata Intensitas Cahaya (Lux) dari Kedua Sensor LDR
- V1 => Sudut Servo (Integer 10-170) – Menampilkan Posisi Sudut Kemiringan Motor Servo dalam Derajat
- V2 => Status Sistem (String) – Menampilkan Status Mode Operasional (“TRACKING SUN” atau “NIGHT MODE”)
Kode Arduino 1. Kode Program
// =============================
// ALFIAN CENTER
// SUBSCRIBE
// DIY Single-Axis Solar Tracker: Pelacak Matahari 1 Sumbu Otomatis Berbasis ESP32 & Blynk IoT
// PROGRAM BAKAL AKU KIRIM DENGAN SYARAT DIBAWAH
// LIKE 50, KOMEN 30 DAN * WAJIB SUBSCRIBE *
// PROGRAM DIKIRIM VIA KOMENTAR
// =============================
#define BLYNK_TEMPLATE_ID "id"
#define BLYNK_TEMPLATE_NAME "nama"
#define BLYNK_AUTH_TOKEN "token"
#include <WiFi.h>
#include <BlynkSimpleEsp32.h>
#include <LiquidCrystal_I2C.h>
#include <ESP32Servo.h>
#define LDR_KIRI 34
#define LDR_KANAN 35
#define SERVO_PIN 18
const float GAMMA = 0.7;
const float RL10 = 50;
const int TOLERANSI = 25; // Batas toleransi perbedaan lux agar servo tidak bergetar terus
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
LiquidCrystal_I2C lcd(0x27, 16, 2);
BlynkTimer timer;
Servo trackerServo;
int sudutServo = 90; // Posisi awal di tengah (tegak lurus)
// Fungsi konversi Lux presisi Wokwi
float bacaLux(int pin) {
int nilaiADC = analogRead(pin);
if (nilaiADC >= 4095) nilaiADC = 4094;
float voltage = nilaiADC * 5.0 / 4095.0;
float resistance = 2000 * voltage / (1 - voltage / 5.0);
return pow(RL10 * 1e3 * pow(10, GAMMA) / resistance, (1 / GAMMA));
}
void prosesTracker() {
float luxKiri = bacaLux(LDR_KIRI);
float luxKanan = bacaLux(LDR_KANAN);
float avgLux = (luxKiri + luxKanan) / 2.0;
String statusSistem = "";
// Logika jika kondisi gelap (Malam Hari)
if (avgLux < 20.0) {
statusSistem = "NIGHT MODE";
sudutServo = 90; // Kembali ke posisi default/tengah
} else {
statusSistem = "TRACKING SUN";
// Bandingkan selisih intensitas cahaya
if (abs(luxKiri - luxKanan) > TOLERANSI) {
if (luxKiri > luxKanan) {
sudutServo += 2; // Geser perlahan ke arah kiri (Timur)
} else {
sudutServo -= 2; // Geser perlahan ke arah kanan (Barat)
}
}
}
// Batasi sudut pergerakan servo agar aman secara mekanis (10 hingga 170 derajat)
sudutServo = constrain(sudutServo, 10, 170);
// Gerakkan servo ke sudut baru
trackerServo.write(sudutServo);
// Kirim data ke Dashboard Blynk
Blynk.virtualWrite(V0, avgLux);
Blynk.virtualWrite(V1, sudutServo);
Blynk.virtualWrite(V2, statusSistem);
// Tampilan ke LCD Lokal
lcd.setCursor(0, 0);
lcd.print("Sudut: "); lcd.print(sudutServo); lcd.print(" Deg ");
lcd.setCursor(0, 1);
lcd.print("Lux: "); lcd.print((int)avgLux);
lcd.print(" "); lcd.print(statusSistem.substring(0, 8)); lcd.print(" ");
}
void setup() {
Serial.begin(115200);
ESP32PWM::allocateTimer(0);
trackerServo.setPeriodHertz(50);
trackerServo.attach(SERVO_PIN, 500, 2400);
pinMode(LDR_KIRI, INPUT);
pinMode(LDR_KANAN, INPUT);
lcd.init();
lcd.backlight();
lcd.print("Solar Tracker 1A");
Blynk.begin(auth, ssid, pass);
lcd.clear();
// Jalankan tracking setiap 400ms agar gerakan servo terlihat smooth di video
timer.setInterval(400L, prosesTracker);
}
void loop() {
Blynk.run();
timer.run();
}

Video 1. Video tutorial pembuatan
TAG:
solar tracker esp32, pelacak matahari 1 sumbu, single axis solar tracker, sensor ldr esp32, motor servo solar tracker, blynk iot solar tracker, simulasi wokwi esp32, tutorial esp32 blynk, iot solar tracker, solar panel tracking system, ldr sensor lux wokwi, servo motor sg90 esp32, otomatisasi solar panel, energi terbarukan esp32 blynk, pelacak sinar matahari, tutorial blynk iot solar tracker, koding esp32 solar tracker, library blynk esp32, library esp32servo, library liquidcrystal i2c, gpio 34 35 ldr esp32, gpio 18 servo esp32, proyek iot esp32, tutorial wokwi indonesia, simulasi iot solar tracker, pemantauan panel surya jarak jauh, blynk iot app solar, datastream blynk ldr servo, virtual pin blynk solar tracker, smart solar energy esp32, proyek teknik elektro iot, mekatronika solar tracker, tugas akhir solar tracker iot, skripsi iot solar tracker, ide proyek esp32 iot, skematik solar tracker esp32, diagram rangkaian ldr servo lcd, source code single axis tracker, program arduino solar blynk, simulasi iot tanpa hardware, platform simulasi wokwi, wokwi esp32 solar tracker, blynk auth token esp32, pelacak matahari pintar berbasis iot, telemetry data lux solar panel, proyek sains iot elektro, portofolio iot esp32, praktikum mikrokontroler esp32, modul esp32 wroom 32, pinout esp32 ldr servo, gpio esp32 sensor lcd, indikator sudut servo blynk, grafik intensitas cahaya blynk, smart renewable energy, otomatisasi penyerapan daya surya, panduan iot solar tracker esp32, belajar mikrokontroler online, simulator komponen elektronik, wokwi custom chip esp32, blynk iot platform solar, internet of things indonesia, iot smk elektro, iot universitas elektro, prototipe solar tracker 1 sumbu, alat pelacak arah matahari, iot smart energy, esp32 arduino ide blynk, tutorial iot pemula, proyek elektro energi terbarukan, panduan lengkap wokwi blynk, deteksi intensitas cahaya lux ldr, sistem kendali servo tracker, logika tracking sun ldr, sistem night mode solar tracker, efisiensi penyerapan solar panel, otomatisasi pembangkit listrik surya, proyek mekatronika energi, simulasi hardware solar tracker, sistem solar tracker esp32, proyek iot populer, kodingan solar tracker otomatis, sensor ldr analog esp32, rangkaian servo dan lcd, tutorial mikrokontroler iot, wawasan iot teknik elektro, aplikasi iot green energy, solar tracker cerdas esp32, koding penyeimbang ldr, pemantauan posisi panel real time, iot solar management system