如何通过PCDK读写FANUC机器人IO

电子说

1.3w人已加入

描述

信息化是现代制造业的非常重要 的趋势。我们在集成机器人的时候,总希望尽可能多的采集机器人信息,以还原机器人的原貌,从而对机器人进行分析,做出接下来的决策。FANUC为各位提供 了PC操作机器人的软件接口—PC Developer’s Kits(以下简称PCDK)。

PCDK 是使PC和FANUC机器人系统高效通讯的功能强大的软件工具,既可用于开发又可用于运行环境。它在Windows系统中快速运行,并且可以满足绝大部分 需求。PCDK包含几种PC与机器人控制器的接口:FTP、ECBR,Robot Server等。其中FTP、ECBR用于机器人文件的维护,而Robot Server用于读写变量、读写IO、与用户程序协调合作,监控报警、控制流程、修改位置。我们使用Robot Server来读写机器人IO。

通 过PCDK读写FANUC机器人IO,采用的是面向对象的编程方法。PCDK内的Robot Server组件提供对象类FRCRobot(FRC表示Fanuc Robotics Class,是Robot Server内所有对象类名称的前缀)。

编程者可以通过实例化该类的对象(以下称为gobjRobot对象)来连接机器人并通过该对象的属性和方法来获取 机器人信息以及控制机器人。创建objRobot对象后,可以获取该对象的一个属性“FRCRobot.IOTypes”的引用,该属性是我们完成机器人 IO信息读写的关键所在。具体步骤如下:

1)确保PC与机器人控制器之间的以太网物理连接。

2)创建及共享一个“FRCRobot”的引用:

Set gobjRobot= New FRCRobot

3)调用 “FRCRobot.Connect”方法来建立PC与机器人的连接:

gobjRobot.Connect ”robotname”

4)通过 “FRCRobot.Disconnect”事件来处理不连接的状态。

5)通过“FRCRobot.IOTypes”读写IO。以给DO(1)赋值取反为例:

Dim objDigOut1 As FRCDigitalIOSignal

Set objDigOut1=gobjRobot.IOTypes.Item(frDOutType).Signals(1)

objDigOut1.Value = Not objDigOut1.Value

机器人

图 中FRCRobot是“RobotServer”组件中唯一可被外部创建的对象类。任何需要和机器人控制器交互信息的应用,都需要通过这个类来获得引用。FRCIOTypes和FRCIOSignals均为对象集合,前者包含了机器人控制器中所有已设置的I/O类型,譬如AI、AO或DI、DO等类型,后 者则包含了属于某一特定I/O类型的所有I/O信号,例如所有属于DI类型的I/O信号。值得注意的是FRCRobot.IOTypes属性即一个 FRCIOTypes类对象。

发那科喷涂应用的上位机软件PaintWorks4是一套功能完备的机器人和涂装工艺设备管理软件,它正是采用PCDK来采集机器人数据,控制机器人部分功能。以下是其中一个子程序RobotI/O,其作用就是对机器人IO进行操作,这个功能正是采用了上述的方法。

读写机器人IO是PCDK提供的功能中的比较基础的一项。PaintWorks4软件,除了IO读写功能以外,还具有可以读写机器人的变量,修改工艺参数,操作机器人文件等功能。

总之,PCDK可以在编写PC读写控制机器人的上位机程序时,给编程者提供了很大的便利。

责任编辑:haq

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分