电机扩展模块

电机转接模块总共有5个端口:1个I2C通信端口,4个外扩电机端口;

python 编程:

方法

  • control_motor_running(port,mode,parameter,left_speed,right_speed)
    port可取 EX_MOTOR_1EX_MOTOR_2EX_MOTOR_3EX_MOTOR_4 如下表:
mode的取值 parameter left_speed取值范围 right_speed取值范围
DEFAULT_MODE 默认模式,参数忽略 -100~100 -100~100
CONTROL_TIME_MODE 运行的时间 -100~100 -100~100
CONTROL_ANGLE_MODE 转动的角度 -100~100 -100~100
CONTROL_TURNS_MODE 转动的圈数 -100~100 -100~100
  • control_motor_turnning(port,mode,parameter,direction,speed)
    port可取 EX_MOTOR_12EX_MOTOR_34

如下表:

mode的取值 parameter direction取值范围 speed取值范围
DEFAULT_MODE 默认模式,参数忽略 -100~100 -100~100
CONTROL_TIME_MODE 运行的时间 -100~100 -100~100
CONTROL_ANGLE_MODE 转动的角度 -100~100 -100~100
CONTROL_TURNS_MODE 转动的圈数 -100~100 -100~100
注:此函数运行一个电机,另一个电机会根据direction值产生联动
  • brake(port)
    电机刹车,port的取值为EX_MOTOR_1 EX_MOTOR_2``EX_MOTOR_3 EX_MOTOR_4

  • free(port)
    电机惯性停止,port的取值为EX_MOTOR_1 EX_MOTOR_2``EX_MOTOR_3 EX_MOTOR_4

  • get_rotate_angle(port)
    获取电机旋转角度,port的取值为EX_MOTOR_1 EX_MOTOR_2``EX_MOTOR_3 EX_MOTOR_4

  • clear_rotate_angle(port)
    电机旋转角度清零,port的取值为EX_MOTOR_1 EX_MOTOR_2``EX_MOTOR_3 EX_MOTOR_4

  • get_speed(port)
    获取电机速度,port的取值为EX_MOTOR_1 EX_MOTOR_2``EX_MOTOR_3 EX_MOTOR_4

编程示范


import thunbot
import time

m1 = thunbot.motor_ex_(thunbot.PORT_A)

m1.control_motor_running(m1.EX_MOTOR_3 | m1.EX_MOTOR_4, m1.DEFAULT_MODE, 0, 30, 50 )
time.sleep(5)
m1.control_motor_running(m1.EX_MOTOR_3 | m1.EX_MOTOR_4, m1.DEFAULT_MODE, 0, 100, 100 )
time.sleep(5)
m1.control_motor_running(m1.EX_MOTOR_3, m1.DEFAULT_MODE, 0, 0,)
time.sleep(5)
m1.control_motor_running(m1.EX_MOTOR_4, m1.DEFAULT_MODE, 0, 0,)
time.sleep(5)
m1.control_motor_running(m1.EX_MOTOR_1 | m1.EX_MOTOR_2, m1.DEFAULT_MODE, 0, -100, -100 )
time.sleep(5)
m1.free(m1.EX_MOTOR_1)
m1.brake(m1.EX_MOTOR_2)

print("ver:",m1.get_version())

results matching ""

    No results matching ""