TI Rover 菜单

注: 创建使用此模块的新程序时,建议使用 Rover 编码程序类型。这将确保导入所有相关模块。

项目

说明

将 ti_rover 导入为 rv

从“rv”命名空间中的 ti_rover 模块导入所有方法(函数)。因此,从菜单中粘贴的所有函数名称都将以“rv.”开头。

 

驱动器

项目

说明

forward(distance)

将 Rover 向前移动指定的距离(以网格单元为单位)。

backward(distance)

将 Rover 向后移动指定的距离(以网格单位为单位)。

left(angle_degrees)

将 Rover 向左转指定的角度(以度为单位)。

right(angle_degrees)

将 Rover 向右转指定的角度(以度为单位)。

stop()

立即停止当前的任何运动。

stop_clear()

立即停止当前的任何运动并清除所有等待中的命令。

resume()

恢复处理命令。

stay(time)

Rover 在原地停留指定的时间(以秒为单位,可选)。

如果未指定时间,则 Rover 将停留 30 秒。

to_xy(x,y)

将 Rover 移动到虚拟网格上的坐标位置 (x,y)。

to_polar(r,theta_degrees)

将 Rover 移动到虚拟网格上的极坐标位置 (r, theta) 。

角度以度为单位指定。

to_angle(angle,"unit")

将 Rover 旋转到虚拟网格中指定的角度。

该角度相对于虚拟网格中指向 x 轴下方的零角度。

 

驱动器 > 带选项的驱动器

项目

说明

forward_time(time)

将 Rover 向前移动指定的时间。

backward_time(time)

将 Rover 向后移动指定的时间。

forward(distance,"unit")

将 Rover 以默认速度向前移动指定距离。

可以以网格单元、米或车轮转数为单位来指定距离。

backward(distance,"unit")

将 Rover 以默认速度向后移动指定距离。

可以以网格单元、米或车轮转数为单位来指定距离。

left(angle,"unit")

将 Rover 向左转指定的角度。

角度可以以度、弧度或百分度为单位。

right(angle,"unit")

将 Rover 向右转指定的角度。

角度可以以度、弧度或百分度为单位。

forward_time(time,speed,"rate")

将 Rover 以指定速度向前移动指定时间。

可以用网格单元/秒、米/秒或车轮转数/秒来指定速度。

backward_time(time,speed,"rate")

将 Rover 以指定速度向后移动指定时间。

可以用网格单元/秒、米/秒或车轮转数/秒来指定速度。

forward(distance,"unit",speed,"rate")

将 Rover 以指定速度向前移动指定距离。

可以以网格单元、米或车轮转数为单位来指定距离。

可以用网格单元/秒、米/秒或车轮转数/秒来指定速度。

backward(distance,"unit",speed,"rate")

将 Rover 以指定速度向后移动指定距离。

可以以网格单元、米或车轮转数为单位来指定距离。

可以用网格单元/秒、米/秒或车轮转数/秒来指定速度。

 

输入

项目

说明

ranger_measurement()

读取 Rover 正面的超声波测距传感器,返回当前距离(以米为单位)。

color_measurement()

返回介于 1 到 9 之间的值,表示 Rover 颜色输入传感器“看到”的主要颜色。

1 = 红色

2 = 绿色

3 = 蓝色

4 = 青色

5 = 品红色

6 = 黄色

7 = 黑色

8 = 灰色

9 = 白色

red_measurement()

返回介于 0 到 255 之间的值,该值表示颜色输入传感器看到的感知红色等级。

green_measurement()

返回介于 0 到 255 之间的值,该值表示颜色输入传感器看到的感知绿色等级。

blue_measurement()

返回介于 0 到 255 之间的值,该值表示颜色输入传感器看到的感知蓝色等级。

gray_measurement()

返回介于 0 到 255 之间的值,该值表示颜色输入传感器看到的感知灰色等级。

encoders_gyro_measurement()

返回值列表,其中包含左、右轮编码器计数以及当前陀螺仪航向。

gyro_measurement()

返回表示当前陀螺仪读数(包括漂移)的值(以度为单位)。

ranger_time()

返回 TI-Rover 测距仪发出的超声波信号到达对象所需的时间(“飞行时间”)。

 

输出

项目

说明

color_rgb(r,g,b)

将 Rover RGB LED 的颜色设置为特定的红色、绿色、蓝色值。

color_blink(frequency,time)

设置所选颜色的闪烁频率和持续时间。

color_off()

关闭 Rover RGB LED。

motor_left(speed,time)

将指定持续时间内的左电机功率设置为指定值。

速度在 -255 到 255 范围内,0 为停止。正速度值为逆时针旋转,负速度值为顺时针旋转。

可选时间参数(如有指定)的有效范围为 0.05 到 655.35 秒。如未指定,则使用默认值 5 秒。

motor_right(speed,time)

将指定持续时间内的左电机功率设置为指定值。

速度在 -255 到 255 范围内,0 为停止。正速度值为逆时针旋转,负速度值为顺时针旋转。

可选时间参数(如有指定)的有效范围为 0.05 到 655.35 秒。如未指定,则使用默认值 5 秒。

motors("ldir",left_val,"rdir",right_val,time)

将左、右轮设置为可选时间长度(以秒为单位)内指定的速度等级。

速度 (left_val, right_val) 值在 0 到 255 范围内,0 为停止。ldir 和 rdir 参数指定相应车轮的 CW 或 CCW 旋转。

可选时间参数(如有指定)的有效范围为 0.05 到 655.35 秒。如未指定,则使用默认值 5 秒。

 

路径

项目

说明

waypoint_xythdrn()

读取当前路径点的 x-coord、y-coord、时间、航向、运动的距离、车轮转数、命令编号。返回所有这些值都作为元素的列表。

waypoint_prev

读取上一个路径点的 x-coord、y-coord、时间、航向、运动的距离、车轮转数、命令编号。

waypoint_eta

返回驱动器到路径点的估算时间。

path_done()

返回值是 0 还是 1,具体取决于 Rover 是正在移动 (0) 还是完成所有移动 (1)。

pathlist_x()

返回从起点到当前路径点 X 值(含)的 X 值列表。

pathlist_y()

返回从起点到当前路径点 Y 值(含)的 Y 值列表。

pathlist_time()

返回从起点到当前路径点时间值(含)的时间(以秒为单位)列表。

pathlist_heading()

返回从起点到当前路径点航向值(含)的航向列表。

pathlist_distance()

返回从起点到当前路径点距离值(含)的运动距离列表。

pathlist_revs()

返回从起点到当前路径点转数值(含)的运动转数列表。

pathlist_cmdnum()

返回路径的命令编号列表。

waypoint_x()

返回当前路径点的 x 坐标。

waypoint_y()

返回当前路径点的 y 坐标。

waypoint_time()

返回从上一个路径点运动到当前路径点花费的时间。

waypoint_heading()

返回当前路径点的绝对航向。

waypoint_distance()

返回前一个和当前路径点之间的运动距离。

waypoint_revs()

返回在上一个和当前路径点之间运动所需的转数。

 

设置

项目

说明

单元/秒

以网格单元/秒为单位的速度选项。

m/s

以米/秒为单位的速度选项。

revs/s

以车轮转数/秒为单位的速度选项。

单位

以网格单元为单位的距离选项。

m

以米为单位的距离选项。

revs

以车轮转数为单位的距离选项。

度数

以度数为单位的旋转选项。

弧度

以弧度为单位的旋转选项。

百分度

以百分度为单位的旋转选项。

顺时针

指定轮方向的选项。

逆时针

指定轮方向的选项。

 

命令

这些命令是其他模块以及 TI Rover 模块的函数集合。

项目

说明

sleep(seconds)

将程序暂停指定的秒数。

从时间模块导入。

text_at(row,"text","align")

在绘图区以指定的“对齐”显示“文本”。

从 ti_plotlib 模块导入。

cls()

清除用于绘图的 Shell 屏幕。

从 ti_plotlib 模块导入。

while get_key() != "esc":

在“while”循环中运行命令,直到按下“esc”键。

wait_until_done()

暂停程序,直到 Rover 完成当前命令。

这是一种将非 Rover 命令与 Rover 运动同步的有用方法。

while not path_done()

运行“while”循环中的命令,直到 Rover 完成所有移动。

path_done() 函数返回的值是 0 还是 1,具体取决于 Rover 是正在移动 (0) 还是完成所有移动 (1)。

position(x,y)

将 Rover 在虚拟网格上的位置设置为指定的 x,y 坐标。

position(x,y,heading,"unit")

将 Rover 在虚拟网格上的位置设置为指定的 x,y 坐标,并且如果已提供航向,则设置相对于虚拟 x 轴的虚拟航向(以指定角度为单位)。

假设从 0 到 360 的正角相对于正 x 轴为逆时针方向。假设从 0 到 -360 的负角相对于正 x 轴为顺时针方向。

grid_origin()

将 RV 设置为位于当前网格原点 (0,0)。

grid_m_unit(scale_value)

将以米/单元 (m/unit) 为单位的虚拟网格间距设置为指定值。0.1 米/单元为默认值,且转换格式为 1 个单元 = 100 毫米或 10 厘米或 1 分米或 0.1 米。

有效 scale_value 的范围为 0.01 至 10.0。

path_clear()

清除任何先已存在的路径或路径点信息。

zero_gyro()

重置 Rover 陀螺仪至 0.0 角度,并清除左、右轮编码器计数。