Merhaba
kodun orjinal hali aşağıda yardım edebilirmisiniz araba engeli algılayıp örneğin ileriden sola dönüyorum diye ses vericek ses dosyaları hazır
ileri-sol.wav
ileri-sag.wav
geri-sol.wav
geri-sag.wav
kodun orjinal hali aşağıda yardım edebilirmisiniz araba engeli algılayıp örneğin ileriden sola dönüyorum diye ses vericek ses dosyaları hazır
ileri-sol.wav
ileri-sag.wav
geri-sol.wav
geri-sag.wav
Kod:
/* Engel Algılayan Robot*/
#include <Servo.h>
#include <NewPing.h>
*
#define LeftMotorForward 9
#define LeftMotorBackward 10
#define RightMotorForward 11
#define RightMotorBackward 12
#define USTrigger 6
#define USEcho 7
#define MaxDistance 100
#define LED 13
*
Servo servo;
NewPing sonar(USTrigger, USEcho, MaxDistance);
*
unsigned int duration;
unsigned int distance;
unsigned int FrontDistance;
unsigned int LeftDistance;
unsigned int RightDistance;
unsigned int Time;
*
**** setup()******************************************
{pinMode(LeftMotorForward, OUTPUT);
**pinMode(LeftMotorBackward, OUTPUT);
**pinMode(RightMotorForward, OUTPUT);
**pinMode(RightMotorBackward, OUTPUT);
**pinMode(LED, OUTPUT);
**servo.attach(4);***********************************
}
*
**** loop()*****************************************
{
**delay(500);
**servo.write(90);************************************************
**scan();*******************************************
**FrontDistance = distance;**************************
**if(FrontDistance > 40 || FrontDistance == 0)*******
**{
***moveForward();************************************
**}
**else**********************************************
**{
****moveStop();**************************************
****servo.write(167);*******************************
****delay(500);*************************************
****scan();****************************************
****LeftDistance = distance;************************
****servo.write(0);*********************************
****delay(500);***********************************
****scan();******************************************
****RightDistance = distance;************************
****if(RightDistance < LeftDistance)*****************
****{
*****moveLeft();*************************************
*****delay(500);*************************************
****}
****
else if(LeftDistance < RightDistance)***********
****{
*****moveRight();***********************************
*****delay(500);************************************
****}
****else*********************************************
****{
*****moveBackward();********************************
*****delay(200);*************************************
*****moveRight();***********************************
*****delay(200);*************************************
****}
**}
}
*
**** moveForward()***********************************
{
**digitalWrite(LeftMotorBackward, LOW);
**digitalWrite(LeftMotorForward, HIGH);
**digitalWrite(RightMotorBackward, LOW);
**digitalWrite(RightMotorForward, HIGH);
}
*
**** moveBackward()*********************************
{
**digitalWrite(LeftMotorForward, LOW);
**digitalWrite(LeftMotorBackward, HIGH);
**digitalWrite(RightMotorForward, LOW);
**digitalWrite(RightMotorBackward, HIGH);
}
*
**** moveLeft()*************************************
{
**digitalWrite(LeftMotorForward, LOW);
**digitalWrite(LeftMotorBackward, HIGH);
**digitalWrite(RightMotorBackward, LOW);
**digitalWrite(RightMotorForward, HIGH);
***
}
*
**** moveRight()***********************************
{
**digitalWrite(LeftMotorBackward, LOW);
**digitalWrite(LeftMotorForward, HIGH);
**digitalWrite(RightMotorForward, LOW);
**digitalWrite(RightMotorBackward, HIGH);
}
*
**** moveStop()************************************
{
**digitalWrite(LeftMotorBackward, LOW);
**digitalWrite(LeftMotorForward, LOW);
**digitalWrite(RightMotorForward, LOW);
**digitalWrite(RightMotorBackward, LOW);
}
**** scan()****************************************
{
**delay(50);
**Time = sonar.ping();
**distance = Time / US_ROUNDTRIP_CM;
}