python 舵机控制
时间: 2023-09-01 18:10:14 浏览: 159
Python 舵机控制有多种方式,一种常见的方法是使用树莓派的 GPIO 来控制舵机。以下是一个简单的示例代码,使用 RPi.GPIO 库控制舵机旋转角度:
```python
import RPi.GPIO as GPIO
import time
servo_pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(servo_pin, GPIO.OUT)
pwm = GPIO.PWM(servo_pin, 50) # 创建 PWM 对象,频率为 50Hz
pwm.start(0) # 初始占空比为 0
def set_angle(angle):
duty = angle / 18 + 2.5 # 计算占空比
GPIO.output(servo_pin, True)
pwm.ChangeDutyCycle(duty)
time.sleep(1) # 等待 1 秒
GPIO.output(servo_pin, False)
pwm.ChangeDutyCycle(0)
try:
while True:
angle = float(input("请输入舵机角度(0-180): "))
set_angle(angle)
except KeyboardInterrupt:
pwm.stop()
GPIO.cleanup()
```
这段代码通过读取用户输入的角度值,并将其转换为对应的占空比,控制舵机旋转到相应的角度。你可以根据自己的需要修改代码,并根据实际硬件连接舵机信号线到树莓派上相应的 GPIO 引脚。
阅读全文