/* Robot tránh vật cản
//Chuẩn bị:
//1. Vỉ mạch cầu H, vỉ arduino, khung xe có 2 moto
//2. Nguồn, cảm ứng khoảng cách
Các bạn có thể chỉnh sửa lại phần băm xung cho phù hợp với hệ thống của các bạn..
*/
#define ENA 3 //enable A on pin 5 (needs to be a pwm pin)
#define IN1 7 //IN1 on pin 2 conrtols one side of bridge A
#define IN2 4 //IN2 on pin 4 controls other side of A
#define chanphat 5
#define chanthu 6
int thoigian,khoangcach;
int mode;
int percent;
void setup()
{
//set all of the outputs
Serial.begin(9600);
pinMode(ENA, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(chanphat, OUTPUT);
pinMode(chanthu, INPUT);
}
void loop(){
digitalWrite(chanphat,HIGH);
delayMicroseconds(100);
digitalWrite(chanphat,LOW);
thoigian=pulseIn(chanthu,HIGH);
khoangcach=0.0344*(thoigian/2);
Serial.print(khoangcach);
Serial.println("cm");
if(khoangcach<30)
{
//Dừng lại
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
delay(500);
//Chay lui phan nua van toc
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 100);
delay(1000);
//tắt
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
delay(1000);
}
else
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(ENA, 80);
}
}
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment