Paletli tank maketi üzerine yerleştirilen sensörlerle robotumuza ışık izleyeme fonksiyonu kazandırılmıştır. Normal ışıkta düz giden robotumuz farklı bir ışık kaynağından ışık geldiğinde yönünü o tarafa yöneltmektedir. Hem proje olarak hemde eğlence amaçlı kullanılabilecek bir robottur.
Malzemeler
- Tamiya Paletli Tank Seti
- Arduino UNO
- LDR 2 adet
- 10K direnç 2 adet
- Motor Seti
- Batarya
// Işık İzleyen Robot Kodları
const int RightMotor = 6; // Sağ Motor Pini
const int LeftMotor = 7; // Sol Motor Pini
const int RightSensor = A0; // Sağ Sensör Pini
const int LeftSensor = A1; // Sol Sensör Pini
// Değişkenler
int SensorLeft; // Sol Sensör
int SensorRight; // Sağ Sensör
int SensorDifference;
void setup() {
pinMode(LeftMotor, OUTPUT);
pinMode(RightMotor, OUTPUT);
pinMode(LeftSensor, INPUT);
pinMode(RightSensor, INPUT);
digitalWrite(A0, HIGH);
digitalWrite(A1, HIGH);
Serial.begin(9600);
Serial.println(" \nIşık Algılanıyor");
}
void loop() {
SensorLeft = 1023 - analogRead(LeftSensor);
delay(1);
SensorRight = 1023 - analogRead(RightSensor);
delay(1);
SensorDifference = abs(SensorLeft - SensorRight);
Serial.print("Sol Sensor = ");
Serial.print(SensorLeft);
Serial.print("\t");
Serial.print("Sağ Sensor = ");
Serial.print(SensorRight);
Serial.print("\t");
if (SensorLeft > SensorRight && SensorDifference > 75) {
digitalWrite(RightMotor, LOW);
digitalWrite(LeftMotor, HIGH);
Serial.println("Sola Dönüş");
}
if (SensorLeft < SensorRight && SensorDifference > 75) {
digitalWrite(RightMotor, HIGH);
digitalWrite(LeftMotor, LOW);
Serial.println("Sağa Dönüş");
}
else if (SensorDifference < 75) {
digitalWrite(RightMotor, HIGH);
digitalWrite(LeftMotor, HIGH);
Serial.println("İleri Hareket");
}
Serial.print("\n");
}
İncelemeler
Henüz inceleme yapılmadı.