encoder_motor
--- 编码电机¶
encoder_motor
模块的主要功能与函数
编码电机说明¶
编码电机包括180编码电机和36堆叠无刷电机模块外观如下图所示:
功能相关函数¶
-
encoder_motor.
move_to
(position, speed)¶ 按指定转速移动到绝对角度,参数:
- position 目标角度,单位为度,范围
-2147483648~2147483647
- speed 转速,单位为rpm/min,范围
不限定
- position 目标角度,单位为度,范围
-
encoder_motor.
move
(position, speed)¶ 按指定转速移动到相对角度,参数:
- position 目标角度,单位为度,范围
-2147483648~2147483647
- speed 转速,单位为rpm/min,范围
不限定
- position 目标角度,单位为度,范围
-
encoder_motor.
set_speed
(speed)¶ 设置目标速度,闭环控制,参数:
- speed 转速,单位为rpm/min,范围:不限制,以电机最大能力转动。
-
encoder_motor.
set_power
(pwm)¶ 设置电机以指定动力转动,开环控制,参数:
- pwm 转速,单位为
无
,范围-100~100
。
- pwm 转速,单位为
-
encoder_motor.
get_value
(type)¶ 获取电机数据,参数:
type 获取数据类型,字符串类型,参数可以选择为:
“angle”:当前位置角度,返回值单位为读
“speed”:当前速度,返回值单位为rpm/min
程序示例:¶
import novapi
from mbuild.encoder_motor import encoder_motor_class
#先初始化,定义电机接在M1口的第1个
__encoder_motor_1 = encoder_motor_class("M1", "INDEX1")
while True:
__encoder_motor_1.set_power(50)
__encoder_motor_1.set_power(-50)
time.sleep(1)
__encoder_motor_1.set_speed(100)
__encoder_motor_1.set_speed(-100)
time.sleep(1)
__encoder_motor_1.move_to(360, 100)
__encoder_motor_1.move_to(-360, 100)
time.sleep(1)
__encoder_motor_1.move(360, 100)
__encoder_motor_1.move(-360, 100)
time.sleep(1)
__encoder_motor_1.set_power(50)
time.sleep(1)
speed = __encoder_motor_1.get_value("speed")
print("speed: %d" %speed)
position1 = __encoder_motor_1.get_value("angle")
print("position1: %d" %position1)