#include <Servo.h> // Library untuk mengontrol servo
Servo myservo; // Membuat objek servo untuk mengontrol motor
int pos = 0; // Variabel untuk posisi sudut servo
void setup() {
myservo.attach(9); // Menghubungkan servo ke pin digital 9
}
void loop() {
// Putar servo dari 0 derajat ke 180 derajat
for (pos = 0; pos <= 180; pos += 1) {
myservo.write(pos); // Memberikan perintah posisi ke servo
delay(15); // Tunggu 15ms untuk servo mencapai posisi
}
// Putar servo dari 180 derajat ke 0 derajat
for (pos = 180; pos >= 0; pos -= 1) {
myservo.write(pos); // Memberikan perintah posisi ke servo
delay(15); // Tunggu 15ms untuk servo mencapai posisi
}
}
ultrasonic
#define trigPin 9
#define echoPin 10
void setup() {
// Inisialisasi pin dan serial komunikasi
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
long duration, distance;
samadengan
#include <Servo.h> // Library untuk mengontrol servo
#define trigPin 8 // Pin Trig untuk Ultrasonik
#define echoPin 7 // Pin Echo untuk Ultrasonik
Servo myservo; // Membuat objek servo untuk mengontrol motor
int pos = 0; // Variabel untuk posisi sudut servo
void setup() {
// Inisialisasi servo
myservo.attach(9); // Menghubungkan servo ke pin digital 9
// Inisialisasi sensor ultrasonik
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
// Inisialisasi komunikasi serial
Serial.begin(9600);
}
void loop() {
long duration, distance;
// Putar servo dari 0 derajat ke 180 derajat
for (pos = 0; pos <= 180; pos += 1) {
myservo.write(pos); // Menggerakkan servo ke posisi saat ini
delay(15); // Tunggu sebentar agar servo bisa mencapai posisi
// Bersihkan trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Set trigPin HIGH selama 10 microseconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Mengukur durasi pulse pada echoPin
duration = pulseIn(echoPin, HIGH);
// Menghitung jarak (kecepatan suara 34300 cm/s)
distance = (duration * 0.0343) / 2;
// Kirimkan nilai jarak ke Serial Plotter
Serial.println(distance);
}
// Putar servo dari 180 derajat ke 0 derajat
for (pos = 180; pos >= 0; pos -= 1) {
myservo.write(pos); // Menggerakkan servo ke posisi saat ini
delay(15); // Tunggu sebentar agar servo bisa mencapai posisi
// Bersihkan trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Set trigPin HIGH selama 10 microseconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Mengukur durasi pulse pada echoPin
duration = pulseIn(echoPin, HIGH);
// Menghitung jarak (kecepatan suara 34300 cm/s)
distance = (duration * 0.0343) / 2;
// Kirimkan nilai jarak ke Serial Plotter
Serial.println(distance);
}
}
#include <Servo.h> // Library untuk mengontrol servo
#define trigPin 8 // Pin Trig untuk Ultrasonik
#define echoPin 7 // Pin Echo untuk Ultrasonik
Servo myservo; // Membuat objek servo untuk mengontrol motor
int pos = 0; // Variabel untuk posisi sudut servo
void setup() {
// Inisialisasi servo
myservo.attach(9); // Menghubungkan servo ke pin digital 9
// Inisialisasi sensor ultrasonik
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
// Inisialisasi komunikasi serial
Serial.begin(9600);
}
void loop() {
long duration, distance;
// Putar servo dari 0 derajat ke 90 derajat
for (pos = 0; pos <= 90; pos += 1) { // Bukaan hanya 0 hingga 90 derajat
myservo.write(pos); // Menggerakkan servo ke posisi saat ini
delay(2); // Tunggu sebentar agar servo bisa mencapai posisi (delay diperpendek)
// Bersihkan trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Set trigPin HIGH selama 10 microseconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Mengukur durasi pulse pada echoPin
duration = pulseIn(echoPin, HIGH);
// Menghitung jarak (kecepatan suara 34300 cm/s)
distance = (duration * 0.0343) / 2;
// Kirimkan nilai jarak ke Serial Plotter
Serial.println(distance);
}
// Putar servo dari 90 derajat kembali ke 0 derajat
for (pos = 90; pos >= 0; pos -= 1) { // Kembali ke 0 derajat
myservo.write(pos); // Menggerakkan servo ke posisi saat ini
delay(2); // Tunggu sebentar agar servo bisa mencapai posisi (delay diperpendek)
// Bersihkan trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Set trigPin HIGH selama 10 microseconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Mengukur durasi pulse pada echoPin
duration = pulseIn(echoPin, HIGH);
// Menghitung jarak (kecepatan suara 34300 cm/s)
distance = (duration * 0.0343) / 2;
// Kirimkan nilai jarak ke Serial Plotter
Serial.println(distance);
}
}
led kedip
// Pin tempat LED terhubung
int ledPin = 13;
void setup() {
// Mengatur pin LED sebagai output
pinMode(ledPin, OUTPUT);
}
void loop() {
// Menghidupkan LED
digitalWrite(ledPin, HIGH);
delay(1000); // Menunggu selama 1000 milidetik (1 detik)
// Mematikan LED
digitalWrite(ledPin, LOW);
delay(1000); // Menunggu selama 1000 milidetik (1 detik)
}
// Deklarasi pin untuk HC-SR04
const int trigPin = 9; // Pin Trig
const int echoPin = 10; // Pin Echo
void setup() {
// Inisialisasi komunikasi serial
Serial.begin(9600);
// Atur pin Trig sebagai OUTPUT dan pin Echo sebagai INPUT
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
// Kirim sinyal trigger
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Baca durasi pulsa Echo
long duration = pulseIn(echoPin, HIGH);
// Hitung jarak dalam cm
float distance = (duration * 0.034) / 2;
// Tampilkan jarak di Serial Monitor
Serial.print("Jarak: ");
Serial.print(distance);
Serial.println(" cm");
// Tunggu 500 ms sebelum membaca lagi
delay(500);
}