int gaz_pedali=A5; // A5 GİRİŞİNE FREN PEDALI İSMİ VERİLDİ
int fren_pedali=A0; // A0 GİRİŞİNE FREN PEDALI ADI VERİLDİ
int debriyaj=A4; // A4 GİRİŞİNE DEBRİYAJ ADI VERİLDİ
int stop_lambasi=0; // D0 ÇIKIŞINA STOP LAMBASI ADI VERİLDİ
int motor=5; // MOTORA DİJİTAL 5 PİNİNDEN ENERJİ VERİLECEK
int hiz; // HIZ TANIMLAMASI
int fren_pedali_durum=0;
#include <Servo.h> // SERVO KÜTÜPHANESİ EKLENDİ
const int pot=A0; // SERVO KONTROL PİNİ
Servo tekerlek; // SERVONUN ADI
int potdurum=0;
int pos = 0;
void setup()
{
pinMode(fren_pedali, INPUT); // A0 PİNİ GİRİŞ YAPILDI
pinMode(gaz_pedali, INPUT); // A5 PİNİ GİRİŞ YAPILDI
pinMode(debriyaj, INPUT); // A4 PİNİ GİRİŞ YAPILDI
pinMode(stop_lambasi, OUTPUT); // D0 PİNİ ÇIKIŞ YAPILDI
tekerlek.attach(13); // SERVONUN BAĞLANACAĞI PİN
}
void loop()
{
// MOTOR HIZI AYARI BURADA BAŞLADI
hiz= analogRead(gaz_pedali); // GAZ PEDALINDAKİ VOLTAJI OKU
hiz= map(hiz, 0, 550, 255, 0); // OKUNAN 5 VOLT İLE 0 VOLT ARASINDAKİ VOLTAJI HIZA DÖNÜŞTÜR
analogWrite(motor, hiz); // HESAPLANAN HIZI MOTORA AKTAR
delay(10); // 10 ms BEKLE
// MOTOR HIZI AYARI BURADA BİTTİ
// STOP LAMBASI PEDALI KOMUTLARI BURADA BAŞLADI
fren_pedali_durum= digitalRead(A0); // A0 GİRİŞİNDEKİ LOJİK SEVİYEYİ OKU
digitalWrite(0, !fren_pedali_durum); // OKUNAN LOJİK SEVİYENİN TERSİNİ D0 ÇIKIŞINA AKTAR (DEVRE ONA GÖRE DİZAYN EDİLDİ)
// STOP LAMBASI PEDALI KOMUTLARI BURADA BİTTİ
// DEBRİYAJ, GAZ VE FREN PEDALLARI BASILI DEĞİLSE FREN LAMBASINI FLASH YAP BURADA BAŞLADI
if (digitalRead(fren_pedali) == HIGH && digitalRead(gaz_pedali) == HIGH && digitalRead(debriyaj) == HIGH )
{
digitalWrite(0, HIGH);
delay(20);
digitalWrite(0, LOW);
delay(20);
}
// DEBRİYAJ, GAZ VE FREN FREN PEDALLARI BASILI DEĞİLSE FREN LAMBASINI FLASH YAP BURADA BİTTİ
// FREN TERTİBATI KODLARI BAŞLADI
potdurum=analogRead(pot);
pos= map(potdurum,1023,0,180,55); // FREN PEDALINDAN DEĞER OKUYUP DÖNME AÇISINI ORANLADIK
{
tekerlek.write(pos); // YUKARIDA ORANLADIĞIMIZ DEĞERİ SERVOYA GÖNDERDİK
}
// FREN TERTİBATI KODLARI BİTTİ
}