电机转接模块总共有5个端口:1个I2C通信端口,4个外扩电机端口;
python 编程:
方法
control_motor_running(port,mode,parameter,left_speed,right_speed)
port可取EX_MOTOR_1
、EX_MOTOR_2
、EX_MOTOR_3
、EX_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_12
、EX_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())