当前位置:   article > 正文

OpenMV4开发笔记4-舵机控制_openmv控制舵机

openmv控制舵机

OpenMV4的舵机控制脚有3个(P7、P8、P9),即可以控制3个舵机
Servo(1) -> P7 (PD12)
Servo(2) -> P8 (PD13)
OpenMV3 M7 / OpenMV4 H7上增加:
Servo(3) -> P9 (PD14)
注意:OpenMV4 H7 Plus P9不能使用PWM
控制舵机转到固定角度

# Servo Control Example
#
# This example shows how to use your OpenMV Cam to control servos.

import time
from pyb import Servo

s1 = Servo(1) # P7 左右控制
s2 = Servo(2) # P8 上下控制

while(True):

   s1.angle(0) #舵机1转动到0°
   s2.angle(45) #舵机2转动到45°
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

控制舵机来回旋转

# 舵机控制例子
#
# 这个例子展示了如何使用OpenMV来控制舵机

import time
from pyb import Servo

s1 = Servo(1) # P7
s2 = Servo(2) # P8

while(True):
    for i in range(1000):
        s1.pulse_width(1000 + i)
        s2.pulse_width(1999 - i)
        time.sleep_ms(10)
    for i in range(1000):
        s1.pulse_width(1999 - i)
        s2.pulse_width(1000 + i)
        time.sleep_ms(10)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

创建一个伺服对象

Servo(id), id 为1-3,与引脚P7至P9相对应。例如:

s1 = Servo(1) # P7
s2 = Servo(2) # P8
s3 = Servo(3) # P9
  • 1
  • 2
  • 3

让舵机动起来

angle([angle, time=0])

s1.angle() #若括号中不给定参数,则会返回当前的角度
s1.angle(45) #舵机1尽快转动到45°
s1.angle(45,1500) #舵机1用1500ms,转动到45°
  • 1
  • 2
  • 3

speed([speed, time=0])

speed(100) #设置360°舵机转动速度
  • 1

pulse_width([value])

calibration([pulse_min, pulse_max, pulse_centre[, pulse_angle_90, pulse_speed_100]])

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/825720
推荐阅读
相关标签
  

闽ICP备14008679号