arduino只用一个红外传感器避障小车的代码
时间: 2023-11-19 22:06:49 浏览: 107
以下是使用一个红外传感器避障的Arduino小车代码:
```
//定义引脚
#define IR A0
#define ENA 5
#define IN1 6
#define IN2 7
#define ENB 9
#define IN3 10
#define IN4 11
//定义变量
int sensorValue = 0;
int leftSpeed = 0;
int rightSpeed = 0;
void setup() {
pinMode(IR, INPUT);
pinMode(ENA, OUTPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENB, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}
void loop() {
sensorValue = analogRead(IR); //读取红外传感器数值
if (sensorValue > 300) { //如果检测到障碍物
leftSpeed = 150; //左轮速度
rightSpeed = 0; //右轮速度
} else { //如果没有检测到障碍物
leftSpeed = 150; //左轮速度
rightSpeed = 150; //右轮速度
}
//设置电机转向和速度
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, leftSpeed);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENB, rightSpeed);
}
```
在此代码中,我们使用A0引脚连接了一个红外传感器来检测障碍物。当传感器检测到障碍物时,小车会停止右侧电机并向左转,直到避开障碍物。当没有检测到障碍物时,小车会以相同的速度向前行驶。
阅读全文