发那科系统中,有一部分需要在后台一直执行,就像你面前的手机或者电脑一样,许多的应用进程须保持着后台运行,来达到用户的使用需求。发那科的CPU支持多任务,即允许同时运行多个应用程序,这里的应用程序包括TP、KAREL、其它(LD无相关资料)。那么作为KAREL程序和TP程序在后台运行的条件是什么,又是怎样才能运行,这篇文章一 一叙述。
KAREL程序属于较为底层的一个伪代码,其功能实现由未知文件(LD)来支持整个系统环境,它为用户提供了方便开发的KAREL语言,拥有大量的库函数供开发者使用。要实现KAREL程序作为背景程序需要具备以下条件:
1. 程序属性
KAREL程序属性包含以下可选择:
TP程序属性包含以下可选择:
2. 死循环
后台程序,应当一直循环在后台执行,顺序程序的执行是由上至下执行,当执行到END时,代表程序执行完毕。因此作为后台程序,应加入死循环,或者有条件进行终止程序。在使用之前必须明白系统时如何同时处理多个任务的:
1. 分时系统 :把计算机的系统资源(尤其是 CPU时间)进行时间上的分割,每个时间段称为一个时间片,每个用户依次轮流使用时间片,由于CPU处理速度非常快,以致于看上去不同的应用似乎在同时执行多项操作。
2. 时间间隙:CPU必须有空闲时间来处理系统的程序,以保障系统的运行,如果CPU只处理一个程序,其它程序将得不到运行,此时系统将无法正常运行,造成死机状态。
在大概明白上述两个概念后,KAREL程序死循环应采用以下方式:
其中DELAY 10 用于阻塞当前程序执行10ms,此时CPU将处理其它程序。
对于TP程序死循环来说,可不使用延时命令,本身具有延时,你可以在TP使用这样的指令:
3. 控制码部分(设定作为后台程序的属性)
对于16位控制码,KAREL程序与TP程序都有该属性,你可以利用控制码对%SYSTEM属性进行操作,以下列举已知的TP + KAREL 的控制码:
你可以利用以下内置程序对程序属性进行操作,注意以该种方式设定的属性,KAREL程序在进行冷启动重新加载程序后属性恢复原有,TP程序属性保持:
控制码采用十进制数,例如使用%INVISIBLE + %SYSTEM属性,此时的控制码应为3。
4. 任务的执行
方法一:TP程序一览中,ENTER选中KAREL程序,SHFT + FWD执行,此时创建了一个任务。
方法二:将程序绑定在菜单按钮上,用户点击后程序执行,参考【发那科iPendant用户自定义菜单】文章。
方法三:利用TP程序指令CALL调用
方法四:利用WEB 网页控件类进行执行,参考【发那科自定义用户界面】文章。
方法五:使用内置程序 RUN_TASK、RUN_TASK_FW、SRUN_TSK创建任务。
5. 注意事项:
1. 程序应尽量不要对机器人进行运动控制;
2. 程序调试时,若加入忽略终止,程序无法终止,可使用ABORT_TASK进行终止;
3. 程序应在ROBOGUIDE调试无误后,再加载实机测试运行。
4. 注意安全!!!
了解更多发那科机器人
文章来源网络,如有侵权请联系删除