#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
const int enPin = 1;
const int stepPin1 = 4; // Pin STEP pada A4988
const int dirPin1 = 3; // Pin DIR pada A4988 (ubah dari 4 ke 3)
const int stepPin2 = 6; // Pin STEP pada A4988
const int dirPin2 = 5; // Pin DIR pada A4988
void setup() {
// Mengatur pin sebagai output
Serial.begin(9600);
dht.begin();
pinMode(enPin, OUTPUT);
pinMode(stepPin1, OUTPUT);
pinMode(dirPin1, OUTPUT);
pinMode(stepPin2, OUTPUT);
pinMode(dirPin2, OUTPUT);
// Aktifkan driver
digitalWrite(enPin, LOW); // LOW untuk mengaktifkan A4988
// Set arah motor
digitalWrite(dirPin1, LOW); // HIGH untuk satu arah, LOW untuk arah sebaliknya
digitalWrite(dirPin2, LOW);
}
void loop() {
float temperature = dht.readTemperature();
if (isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Temperature: ");
Serial.println(temperature);
if (temperature > 30.0) {
// Motor berputar jika suhu di atas 30
for (int i = 0; i < 200; i++) {
digitalWrite(stepPin1, HIGH);
digitalWrite(stepPin2, HIGH);
delayMicroseconds(500); // Adjust delay as needed
digitalWrite(stepPin1, LOW);
digitalWrite(stepPin2, LOW);
delayMicroseconds(500); // Adjust delay as needed
}
}
}