Fanuc-如何使用TP对KAREL程序进行检查
Karel程序写好后怎么在TP上加载以及使用,我们前面文章都有提到过,那么自己写了karel程序后如何进行调试,对于这种向黑匣子一样的程序我们改如何进行程序检查?在哪个位置能够查看Karel变量?接下来我们就一起来分析一下 。
**:想一下,既然我们看不到里面程序的结构,也不知道程序运行到哪一步,那么我们能不能在程序运行的时候查看到变量的变化呢?我们一起来试试。
首先,说到到变量我们应该对其存储类型进行简单的了解,我用的比较多的CONST以及VAR这两种类型,。我们写个简单小代码,里面定义几个变量。
PROGRAM rundata
CONST--这个量在程序运行中不会发生任何变化
RobotTips=666 --我们定义‘RobotTips=666’,在程序运行中也是666
VAR --随着程序的运行发生变化的量,也就是我们所说的变量
RobotData1:INTEGER --定义为整数类型
RobotData2:BOOLEAN --布尔量
RobotData3:REAL --浮点数
BEGIN
RobotData1=888
RobotData2=TRUE
RobotData3=3.1415926
END rundata
我们将程序编译成PC程序后,在程序选择界面选择程序“RUNDATA.PC”,按“ENTER”,显示该程序已经被选择。在Menu界面选择DATA—KARELVars.这个我在现场试的话体验不是很好,我到主界面点enter,到另外一个界面点击DATA可能会弹出当前程序的karel变量。一个界面我也试了一下要稍微好一点。
这里我们可以看到的是,在程序没有运行的时候,默认显示的是*uninit*,而浮点数显示的全是**********,这样说明所有变量如果程序没有运行,没有对他进行赋值,它所有变量的值都是不确定的,我不知道这样说你们能不能理解哈,或者有能比较清楚这个知识点的伙伴可以后台联系我们,我们运行程序后在看一下是什么效果。运行后得到如下结果。
现在我们可以看到CONST没有显示出来,这里这种也涉及到说我可以通过KAREL变量来对程序里面的信号进行修改,换成自己现场所需要的信号 ,这个我们后面在说。
第二:通过WRITE输出我们可以清楚看到程序执行状态,通过单步模式
我们可以看到程序执行到哪一行,查看机器人程序运动的状态。我们将代码做如下更改,同一个变量,赋值多次,单步运行并且查看运行结果,WRITE输出我们前面也有讲到过一部分,如下链接。
注:此链接中有WRITE的一些介绍
PROGRAM rundata11
CONST--这个量在程序运行中不会发生任何变化
RobotTips=666 --我们定义‘RobotTips=666’,在程序运行中也是666
VAR --随着程序的运行发生变化的量,也就是我们所说的变量
TipsData1,
TipsData2,
TipsData3:INTEGER--定义为整数类型,声明变量可以用这种类型
BEGIN
TipsData1=12
WRITE(CHR(137),CHR(128))
WRITE('data1=',TipsData1,CR)
TipsData1=5
WRITE('data1=',TipsData1,CR)
TipsData1=66
WRITE('data1=',TipsData1,CR)
END rundata11
选择单步模式运行,机器人示教器应该做如下设置。选择菜单muen-选择试运行-将单步命名执行方式改为每个命令。按照我这个设置就可以了。
每个命名,我理解为每个指令每行执行。
每个动作,就是每个动作去执行,主要针对tp动作指令
每个程序,与每个命令是差不多的,但是它要执行完一个程序。
我们现在再来看一下运行效果。
以上就是本文全部内容。下期我会介绍一下WRITE指定位置输出画面。
更多资讯:发那科机器人