程序思路

“训练-轨迹”任务要求机器人沿轨迹线行走,机器人安装有2个“灰度传感器”用于检测轨迹线与机器人的相对位置,一般情况下,其相对位置关系有如下几种:

● 轨迹线在机器人的左侧——机器人左转

● 轨迹线在机器人的右侧——机器人右转

● 轨迹线在机器人的中间——机器人前进

根据以上关系,机器人需要不断地检测轨迹并修正自身的驱动状态,来完成轨迹任务。接下来开始编写走轨迹机器人的控制程序。

创建VPL程序

在离线模式主窗口单击“编写程序”,在“编辑VPL程序”窗口的左侧选择机器人名称“机器人-走轨迹”,单击“确定”为“机器人-走轨迹”创建控制程序。

创建机器人控制程序必须指定机器人,在编辑控制程序时可以获得关联的机器人的硬件信息,包括直流电机、伺服电机、传感器可驱动的部件的数量、名称、端口等信息。

机器人的控制程序也称为VPL(Visual Programming Language 可视化编程语言)。

用“拖拉菜单”添加While模块

控制程序需要不断地循环检测轨迹线与机器人的位置关系,首先添加“While 永远循环”模块,按以下步骤操作,如图 1所示:

● 单击选择“开始”模块,将鼠标指针移动到“开始”模块下部半圆的出口连接点上;

● 在红色连接点上按住鼠标左键,向下拖动到空白区域松开左键,出现“拖拉菜单”;

● 将鼠标移到“流程”项上,出现“流程”子菜单,单击“While 永远循环”图标

“While 永远循环”添加到编辑区,“开始”模块与其之间有一条流动的线条进行连接,流动的方向指示出程序的执行顺序。

拖拉菜单添加模块

添加if模块

按照上面的方法,在“While 永远循环”的“√”(循环体出口)上添加一个“if 判断”模块。完成后控制程序如图 2。

添加“if判断”模块

用“容器菜单”向“if 判断”添加条件

向“if判断”容器中添加“当左侧灰度传感器的值小于100(小于100认为检测到了黑线)”的条件,按以下方式操作,如图 3所示:

●在“if 判断”的容器中单击右键,在“容器菜单”中单击“小于”模块;

●在“小于”模块的左侧容器中单击右键,在“容器菜单”中单击“灰度”模块;

●在“小于”模块的右侧容器中单击右键,在“容器菜单”中单击“常量 int”模块。

“if 判断”添加条件

为“if判断”容器中的“灰度”和“常量int”模块设置属性:

●选中的“灰度”模块,在属性面板选择使用“灰度传感器_左”,如图 4左;

●选中的“常量 int”模块,修改其属性中的“数值”项为“100”,如图 4右。

模块属性

添加“多直流电机驱动”

在“if 判断”模块的“√”(条件成立)出口处使用拖拉菜单添加1个“驱动”项里的“多直流电机驱动”模块,选中此模块,设置属性如图 5。

第1个“多直流电机驱动”模块属性

“多直流电机驱动”模块设置为左侧2个直流电机反转,右侧2个直流电机正转,使机器人整体左转。

继续添加“if判断”

再添加1个“if判断”模块,并添加其条件,结果如图 6所示:

● 在第1个“if判断”模块的“×”(条件不成立)出口处使用拖拉菜单添加1个“流程”项里的“if判断”模块;

● 在第2个“if判断”模块的容器中使用“容器菜单”添加一个“小于”模块;

● 在“小于”模块的左容器中添加一个“灰度”模块;

● 在“小于”模块的右容器中添加一个“常量int”模块。

添加第2个“if判断”

设置第2个“if判断”模块的中的“灰度”和“常量int”模块的属性:

● 选中的“灰度”模块,在属性面板选择使用“灰度传感器_右”;

● 选中的“常量 int”模块,修改其属性中的“数值”项为“100”。

继续添加“多直流电机驱动”

使用“拖拉菜单”,在第2个“if 判断”的“√”(条件成立)和“×”(条件不成立)出口分别添加1个“多直流电机驱动”模块。

● “√”(条件成立)出口连接的“多直流电机驱动”模块的属性设置如图A。当右侧的灰度传感器检测到黑线时,使机器人右转,如图 7。

● “×”(条件不成立)出口连接的“多直流电机驱动”模块的属性设置如图B。当左侧和右侧的灰度传感器都没有检测到黑线时,使机器人直行,如图 7。

第2个、第3个“多直流电机驱动”模块属性

完整程序

至此,走轨迹程序编写完毕,最终的结果如图 8所示,可以单击“操作”中的“自动排列”使模块的排列更合适。

走轨迹完整程序

保存控制程序

单击“文件”→“保存”,在“保存VPL”窗口中输入控制程序的文件名“程序-走轨迹”,单击“确定”保存控制程序。

在保存时如果提示程序存在错误,可选择继续保存或终止保存,在排除错误之后再次保存程序。排除错误时,大部分的错误在单击错误提示后会自动选中错误的模块,方便排除错误。

打开控制程序

在离线模式主窗口单击“编写程序”,出现“编辑VPL程序”窗口,单击其左侧的“程序”项,在程序列表中选择要打开的控制程序名称,单击“确定”,打开已保存的控制程序。

或在程序编辑器中单击“文件”→“打开”,出现“选择控制程序”窗口,在其左侧列表中选择要打开的控制程序名称,单击“确定”,打开已保存的控制程序。