键盘控制云台方向实验

键盘控制云台方向实验

    摄像头云台买了很久,今天才想起来尝试一下;时间有限,初步尝试用键盘操作一下云台四个方向操作;其中ad控制左右转动,ws控制前后转动;驱动板用的是pca9685。
    其中舵机驱动采用的是adafruit-circuitpython-pca9685,可以参考以前的文章:https://www.shumeijiang.com/2021/08/29/舵机的新驱动方式
组合效果:
代码示例:

#coding:utf-8

'''
from JiuJiang
树莓酱的操作实例
https:://www.shumeijiang.com
'''

import time
from board import SCL, SDA
import busio

from adafruit_pca9685 import PCA9685
from adafruit_motor import servo

#引入i2c
i2c = busio.I2C(SCL, SDA)

#实例化 此处是0x41 驱动板地址修改过导致
pca = PCA9685(i2c, address=0x40)  #地址可以修改  默认0x40
pca.frequency = 40

#左右
servo_0 = servo.Servo(pca.channels[0])
servo_0.set_pulse_width_range(min_pulse=500, max_pulse=2500)
base_0 = 60

#前后
servo_1 = servo.Servo(pca.channels[1])
servo_1.set_pulse_width_range(min_pulse=500, max_pulse=2500)
base_1 = 80

while True:
    code = input('方向是?')
    angle_n = 10
    if base_0+angle_n >= 180:
        continue
    if base_1+angle_n >= 180:
        continue
    if base_0 <= angle_n:
        continue
    if base_1 <= angle_n:
        continue

    if code == 'a':
        base_0 = base_0 - angle_n
    elif code == 'd':
        base_0 = base_0 + angle_n
    elif code == 'w':
        base_1 = base_1 + angle_n
    elif code == 's':
        base_1 = base_1 - angle_n

    servo_0.angle = base_0
    servo_1.angle = base_1
    time.sleep(0.2)
pca.deinit()
执行效果:

jiujiang

评论已关闭。