彩色科技|懒猫答疑 | FANUC工业机器人以太网通信


彩色科技|懒猫答疑 | FANUC工业机器人以太网通信关注我们 , 记得点赞哦~
问题缘由老师 , 在了解了FANUC工业机器人的外围设备接口之后 , 如果我还想对工业机器人进行二次开发 , 除使用I/O通信方式外 , 还有没有什么其他的方式呢?
彩色科技|懒猫答疑 | FANUC工业机器人以太网通信《FANUC工业机器人离线编程与应用》课程答疑
懒猫答疑当然有!I/O通信方式是最为简单的一种机器人与外围设备通信的方式 , 很多视觉系统都是基于I/O方式通信实现的 , 但工业中还有很多网络通信协议 , 其中以太网通信就是常见的一种 。 在之前的课程中已经讲解了FANUC工业机器人以太网的设置 , 并且也实现了基于Simulation的监控 , 同时各位同学也掌握了KAREL程序下文件的读写方式 , 而这些就是以太网通信的实现基础 , 接下来只需要了解几个函数 , 就可以开始以太网的SOCKET通信了 。
解决思路与方法Step One:安装软件包
安装UserSocket Msg(R648)软件包 , 光有KAREL不行 , 一定要安装这个软件包 , 否则是无法实现SOCKET通信的 。
彩色科技|懒猫答疑 | FANUC工业机器人以太网通信ROBOGUIDE中安装软件包
【彩色科技|懒猫答疑 | FANUC工业机器人以太网通信】Step Two:检查通信
彩色科技|懒猫答疑 | FANUC工业机器人以太网通信MSG_PING函数
MSG_PING(string, integer)
在程序中测试是否可以连接服务器时可使用MSG_PING函数 , 该内建函数用于检测与远程主机是否可网络通信 , 使用该函数后 , 工业机器人以太网通信端口将发送ping数据包并等待返回 , 若无返回 , 则表示无法连接对方设备 。
该函数有两个形参 , 第一个形参是字符串参数 , 用于设置所连接的对象主机 , 第二个参数是整型参数 , 返回当前函数的执行状态 , 若不为0则代表有错误发生 。
Step Three:建立TCP隧道
彩色科技|懒猫答疑 | FANUC工业机器人以太网通信创建及关闭TCP隧道
MSG_CONNECT(string, integer)
该函数就是用于建立TCP通信隧道 , 对于服务器标签和客户端标签其执行方式是不一样的 , 若该函数用于主机标签通信 , 则只有当有客户端连接上时才会有返回值 , 否则一直等待 。 若用于客户端标签通信 , 则只要对方服务器允许连接则输出返回值 , 程序继续执行 。
Step Four:文件读写
与其他所有高级语言实现SOCKET通信方式一样 , 建立连接之后就是对文件进行读写 , 此处可以参考之前我们课程中关于日志读写的部分 , 但是需要注意是以交互方式打开文件 , 否则通信是无法成功的 。
Step Five:关闭隧道
MSG_ DISCO (string, integer)
该函数用于关闭TCP通信隧道 。 在尝试任何连接前 , 建议先用MSG_DISCO内建函数尝试关闭标签可能已建立的通信隧道 , 也就是说无论是否之前已经建立了连接 , 当你需要连接的时候都需要先调用这个函数 。 同时当需关闭或丢失通信连接时都需要关闭通信隧道 , 以避免内存泄露 , 也就是说一旦建立其通信隧道 , 则只要机器人系统不重启 , 则已经建立的连接就会一直保持 , 无论当前运行的是TP还是其他的PC程序 。


推荐阅读