Informatika praktikum 2 (copy) — Arduino Uno simulation

An interactive Arduino Uno circuit simulation you can run free in your browser on Velxio, by achmadthoriqul2.

Components

Sketch code

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Servo.h>

// Inisialisasi LCD I2C
LiquidCrystal_I2C lcd(0x27, 16, 2);

// Inisialisasi Servo
Servo servo;

// Pin Komponen
const int LED_MERAH = 8;
const int SERVO_PIN = 9;

// Batas kelembaban tanah
const int BATAS_KERING = 40;

// Nilai simulasi kelembaban
int kelembaban = 30; // Contoh nilai < 40 (tanah kering)

void setup() {
  lcd.init();
  lcd.backlight();

  servo.attach(SERVO_PIN);
  servo.write(90); // 90 artinya servo Diam/Stop

  pinMode(LED_MERAH, OUTPUT);
  digitalWrite(LED_MERAH, LOW);

  lcd.setCursor(0, 0);
  lcd.print("Sistem Kelembaban");
  delay(2000);
  lcd.clear();
}

void loop() {
  // Menampilkan Nilai Kelembaban
  lcd.setCursor(0, 0);
  lcd.print("Kelembaban: ");
  lcd.print(kelembaban);
  lcd.print("%  ");


    delay(1000);      // Berputar selama 1 detik

  if (kelembaban < BATAS_KERING) {
    // KONDISI: TANAH KERING
    digitalWrite(LED_MERAH, HIGH);

    lcd.setCursor(0, 1);
    lcd.print("Tanah: KERING   ");

    // ========================================================
    // --- GANTI BAGIAN INI DENGAN KODE BERIKUT ---
    // ========================================================
    
    // Putar mulus dari 0° ke 180° (naik 1 derajat demi 1 derajat)
    for (int pos = 0; pos <= 180; pos += 1) {
      servo.write(pos);
      delay(10); // Atur kecepatan (makin kecil angkanya, makin cepat)
    }

    // Putar mulus dari 180° kembali ke 0°
    for (int pos = 180; pos >= 0; pos -= 1) {
      servo.write(pos);
      delay(10);
    }

    // ========================================================

  } else {
    // KONDISI: TANAH LEMBAP
    digitalWrite(LED_MERAH, LOW);

    lcd.setCursor(0, 1);
    lcd.print("Tanah: LEMBAP   ");

    servo.write(0); // Servo diam di posisi awal
    delay(500);
  }

  }

More projects by achmadthoriqul2