样例程序5:MMS5VIZUSER
程序解读
以下为MMS5VIZUSER样例程序的代码及相关解释说明。
#Include "MMMODULE"
MM_DROP_COM()
Mcomnum = 7
MM_INIT_COM(Mcomnum)
Tool P_NTool
PMTool=(+0.00,+0.00,+0.00,+0.00,+0.00,+0.00)
Tool PMTool
MM_SET_MOD(1,1,MM_Status)
If MM_Status <> 1107 Then
Hlt
EndIf
MM_START_VIZ(1,JntSend,MM_Status)
If MM_Status <> 2103 Then
Hlt
EndIf
MM_SET_BCH(1,1,MM_Status)
If MM_Status <> 2105 Then
Hlt
EndIf
Dim MM_Result(10,9)
Dim MM_VisionInfo(10,21)
Dim MM_VisionData(21)
MM_GET_VMD (0,2,4,MM_Status,MM_VisionPt_Num,MM_VPos_Num,MM_Result,MM_VisionInfo)
If MM_Status <> 2100 Then
Hlt
EndIf
MM_GET_VMP(MM_Result,MM_VisionInfo,1,PPick,MM_MotionType,MM_ToolID,MM_Velocity,MM_VisionData)
MM_DROP_COM()
PPick_pre=PPick
PPick_pre.Z=PPick_pre.Z+100
Mov PPick_pre
Fine 0,P
Mvs PPick
Hlt
Mvs PPick_pre
上述样例程序代码对应的流程如下图所示。
下表为上述程序的逻辑解读。用户单击指令名称的超链接便可查看该指令的详细说明。
| 流程 | 代码及说明 | ||
|---|---|---|---|
导入MM_Module头文件 |
|
||
初始化和建立通信 |
先关闭通信再重新连接确保没有连接中的工程。 |
||
将控制点返回初始值并声明工具变量 |
|
||
切换Mech-Vision参数配方并验证状态码 |
|
||
触发运行Mech-Viz工程 |
整条指令表示机器人触发视觉系统运行Mech-Viz工程,然后Mech-Viz基于Mech-Vision输出的视觉结果规划机器人的抓取路径。
|
||
设置Mech-Viz消息分支出口 |
|
||
定义&声明存储容器 |
|
||
获取规划路径 |
整条指令表示从Mech-Vision项目0获取计划路径与通过视觉处理进行移动的规划结果。
|
||
转存规划路径 |
整条指令表示将第一个视觉点的工具位姿、标签和末端工具编号分别转存至指定变量。 |
||
断开通信 |
|
||
设置抓取接近点和离开点 |
将PPick的值赋予PPick_pre,增加PPick_pre的Z轴高度200,作为抓取接近点和离开点。 |
||
移动到抓取接近点 |
移动到抓取接近点,并设置绝对位置到达。 |
||
移动到抓取点 |
机器人以直线移动方式从抓取接近点移动到抓取点。
|
||
移动到抓取离开点 |
机器人移动到抓取点上方的某处,即到达抓取离开点。
|