请用arduino写出人体红外传感器控制舵机实验代码
时间: 2023-07-30 17:13:02 浏览: 295
好的,以下是一个简单的Arduino代码示例,用于控制人体红外传感器和舵机:
```c++
#include <Servo.h> // 引入舵机库
Servo myservo; // 创建一个舵机对象
int servoPin = 9; // 舵机连接的引脚号
int sensorPin = 2; // 红外传感器连接的引脚号
int sensorValue; // 红外传感器的数值
void setup() {
myservo.attach(servoPin); // 将舵机连接到引脚
pinMode(sensorPin, INPUT); // 将红外传感器设置为输入模式
Serial.begin(9600); // 打开串口
}
void loop() {
sensorValue = digitalRead(sensorPin); // 读取红外传感器的数值
Serial.println(sensorValue); // 输出传感器值到串口监视器
if (sensorValue == HIGH) { // 如果传感器检测到物体
myservo.write(90); // 舵机转动到 90 度角度
delay(1000); // 延迟 1 秒
myservo.write(0); // 舵机回到原点
delay(1000); // 延迟 1 秒
}
}
```
这个代码示例中,我们首先引入了 `Servo` 库,然后创建了一个 `Servo` 对象 `myservo`,并指定了连接舵机的引脚号 `servoPin`。接着,我们定义了红外传感器连接的引脚号 `sensorPin` 和传感器数值变量 `sensorValue`。
在 `setup()` 函数中,我们将舵机连接到引脚,并将红外传感器设置为输入模式,同时打开了串口。
在 `loop()` 函数中,我们首先读取红外传感器的数值,并将其输出到串口监视器中。然后,如果传感器检测到物体,我们就让舵机转动到 90 度角度,等待 1 秒钟,然后再回到原点。这个过程会一直重复,直到程序停止运行。
请注意,这只是一个简单的代码示例,可以根据实际情况进行修改和优化。
阅读全文