

yanan motor sürücüsünün lehimlerini söktük

devremizin şeması

arduino kodu karta atılırken
Robotumuz arduino ile calışan hareket takip edip engelden kacan cift fonksiyonlu bir robot
Arduino kartımız
2 tane 6v
dc motor ve tekerlek
L293B motor sürücü
Hc-Sr04 ultrasonik mesafe sensörü
Sarhoş tekerlek
Orta boy breadbord
(12×12)cm pertinaks
2 tane 9v pil ve pil başlığı

int Mod = 9;
int Led = 8;
int trigpini = 7;
int echopini = 6;
int Motor1_1 = 5;
int Motor1_2 = 4;
int Motor2_1 = 3;
int Motor2_2 = 2;
long deger;
long cm;
int ModDurumu = 0;
void setup() {
pinMode(Mod,INPUT);
pinMode(Led,OUTPUT);
pinMode(trigpini,OUTPUT);
pinMode(echopini,INPUT);
pinMode(Motor1_1,OUTPUT);
pinMode(Motor1_2,OUTPUT);
pinMode(Motor2_1,OUTPUT);
pinMode(Motor2_2,OUTPUT);
Serial.begin(9600);
}
void Sensor_Oku() {
digitalWrite(trigpini,LOW);
digitalWrite(trigpini,HIGH);
digitalWrite(trigpini,LOW);
deger = pulseIn(echopini,HIGH);
cm=deger/29/2;
}
void TakipEt(){
digitalWrite(Motor1_1,LOW);
digitalWrite(Motor1_2,HIGH);
digitalWrite(Motor2_1,HIGH);
digitalWrite(Motor2_2,LOW);
}
void Kac(){
digitalWrite(Motor1_1,OUTPUT);
digitalWrite(Motor1_2,LOW);
digitalWrite(Motor2_1,LOW);
digitalWrite(Motor2_2,HIGH);
}
void Dur() {
digitalWrite(Motor1_1,LOW);
digitalWrite(Motor1_2,LOW);
digitalWrite(Motor2_1,LOW);
digitalWrite(Motor2_2,LOW);
}
void Tara(){
digitalWrite(Motor1_1,OUTPUT);
digitalWrite(Motor1_2,LOW);
digitalWrite(Motor2_1,OUTPUT);
digitalWrite(Motor2_2,LOW);
}
void SinyalKontrol() {
int Sinyal = digitalRead(Mod);
delay(100);
if(Sinyal == 1){
if(ModDurumu == 1){
ModDurumu = 0;
}
else if(ModDurumu == 0) {
ModDurumu = 1;
}
}
}
void LedKontrol() {
if(ModDurumu == 0){
digitalWrite(Led,HIGH);
}
else{
digitalWrite(Led,LOW);
}
}
void loop() {
SinyalKontrol();
LedKontrol();
Sensor_Oku();
delay(50);
Tara();
if(cm<=30) {
Dur();
if(ModDurumu == 0) {
TakipEt();
delay(750);
}
else if(ModDurumu == 1){
Kac();
delay(750);
}
}
}