> 机器人I/O信号是机器人与外部设备进行状态确认的有效途径,在实际应用中无论我们是采用印刷电路板、CC-LINK、还是通讯最终都落在I/O使用上。我们针对I/O用法进行总结分享。
FANUC机器人的I/O信号即为输入/输出信号,是机器人与末端执行器、外部设备进行通讯的信号,主要用于状态和动作之间的交接和确认。FANUC机器人的I/O信号分为:通用I/O和专用I/O两大类。 通用I/O主要是指可以由用户自定义使用的I/O信号。主要包括数字I/O、模拟I/O和组I/O。 1、数字I/O 数字I/O又分数字量输入DI和数字量输出DO。它是通过处理I/O印刷电路板的输入/输出信号进行数据交换。数字信号的状态有ON(通)/OFF(断)两类。 下面详细介绍一下数字I/O的用法,如下图所示为印刷电路板(针对R-30iB/PLUS控制装置):
通过数据线与机器人系统衔接,外部信号通过分线器与内部交接,如下所示分线器:
端子对接信号图如下所示: 在设置之前需要先了解一下专用I/O中关于外部设备I/O(UOP)。 外部设备I/O是系统中已经确定了用途的专用I/O信号,又分为输入信号UI和输出信号UO。这些信号也是从处理I/O印刷电路板(或I/O单元)通过相关接口和外部连接,从外部控制机器人。可通过如下图所示方式打开查看: 按顺序依次按键【MENU】-【I/O】-【UOP】 打开后可看到详细的信号定义,如下图所示: 信号UI状态为ON表示有信号输入,OFF则为无信号; 信号UO状态为ON表示机器人的状态输出给外部,OFF表示状态未达成。
UOP自动分配情况下,可与数字I/O信号一一对应,也可自行分配,下面是分配界面图示:
针对分配时需要定义的机架、插槽、开始点、状态说明如下: 机架 机架系指I/O模块的种类。 1、Ethernet/IP 机架号为89。 2、PROFIBUS 机架号为67。 3、MODEBUS TCP 机架号为96。 4、CC-LICK 机架号为92。 5、Device Net 机架号为82。 6、处理I/O印刷电路板、I/O连接设备连接单元 机架号为0。 7、I/O Unit-MODEL A/B 机架号为1-16 8、I/O连接设备 从机接口 机架号为32 9、R-30iB Mate的主板(CRMA15/CRMA16) 机架号为48 插槽 插槽系指构成机架的I/O模块的编号。 1、使用处理I/O印刷电路板,I/O连接设备连接单元时,按连接的顺序为插槽1、2、3、、、 2、使用I/O Unit-MODEL A时,安装有I/O模块的基本单元的插槽编号为该模块的插槽值。 3、使用I/O Unit-MODEL B时,通过基本单元的DIP开关设定的单元编号,即为该基本单元插槽值。 4、I/O连接设备从机接口、R-30iB Mate的主板(CRMA15/CRMA16)中,该值始终为1。 5、使用通信模块配置信号时该模块的站号即为插槽值。 开始点 对应于软件端口的I/O设备始管脚。 状态 ACTIVE:激活 UNASG:未分配 PEND:需要重启生效 INVALID:无效 搞清楚以上分配设定值后,下面就针对处理I/O印刷电路板数字I/O的设定过程详细展示: 1、依次按键【MENU】-【I/O】-【数字】,如下图所示:
2、打开数字I/O画面后,按【IN/OUT】键可切换显示输入/输出(DI/DO)显示如下:
3、在数字输入(DI)画面按键【分配】打开数字输入设定画面,在首此打开时,数字输入信号显示为未设定状态,系统提供512个信号,如下图所示:
4、按照机架、插槽、开始点的设定规则可知,机架号为0,插槽为1(若有多块电路板按顺序设定为2、3…),设定完毕后,状态变为【PEND】如下图所示:
5、依次按键【FCTN】-【重新启动】使刚才的设定生效,如下图所示: 6、重启后显示如下所示:
7、此时按【一览】可看到当前已激活的数字输入(DI)信号状态,而未设定的数字输出(DO)信号状态全部为※,如下图所示:
PS:其中显示为ON的信号是因为,UOP分配的原因。 8、以上述方法设定数字输出(DO)信号后,打开显示状态如下所示: 有图可以看到状态不再是※。 以上设定完成后,数字I/O信号就设定完毕了,在编程时其实就已经可以使用了; 当外部满足那些状态后通知机器人执行那个动作,使用输入DI信号; 当机器人执行完设定的动作后,输出一个信号DO告知外部设备;如下图所示:
外部设备I/O分配 外部设备I/O分配可以分为两种:全部分配和部分分配。 顾名思义:全部分配就是将输入18点和输出20点全部分配物理信号。 部分分配:只分配其中需要的点数。好处就是可以少占用通用数字I/O的信号点数,提高外部可使用量。 下面是UOP信号的用途说明:
设置分配操作如下: 1、依次按键【MENU】-【I/O】-【UOP】,如下图所示:
2、在打开的UOP画面,按键【分配】打开UI设置画面,如下图所示:
3、如果是全部分配,可直接按设定规则机架0、插槽1、开始点1,如下图所示:
4、按键【FCTN】-【重新启动】,如下图所示:
5、重启后打开查看生效状态,如下图所示:现在就可看出前面我们在设定数字I/O时为什么DI[1/2/3/8]为ON,他们之间时对应关系。
6、UO设定如同上述方法一样。 设定好UO后,机器人目前无报警固UO[2]系统准备就绪信号就一直有,UO[8]示教器开启使能中也有信号,这些状态会通过对应的DO信号告知外部设备,如下图所示:
7、如果采用部分分配方式设定,可以按实际需求指定某几个信号对应某几个数字I/O,设定方法如下图所示: 8、设定完成后,重启系统切换至UO信号画面,可以看到只有设定打开的几个信号可用,其他信号全是※,验证如下所示:
9、按我们设定的对应数字信号状态,也将随之改变,如下图所示:
由于我们将UO[2]设定对应DO[5],UO[4]设定对应DO[11]所以信号状态通讯就通过变动后的对应关系告知外部设备。同样也可以依次方式设定UI信号,数字I/O的信号顺序同样可以这样更改。 10、如果全部清除I/O分配,接通机器人控制装置的电源后,所连接的I/O装置会被自动识别,并且自动进行适当的自动分配。 FANUC机器人组I/O的用法 在使用FANUC机器人做自动化时,要与外部设备状态通讯的信号比较多,但是出于成本方面考虑,又不能超出预算,那么怎么办呢?这时FANUC系统提供的组I/O就可以帮助我们完美解决。下面针对组I/O的用法进行详细总结。 组I/O信号 是用来汇总多个信号线并进行数据通讯的通用数字信号,又分为组输入GI和组输出GO信号。组I/O信号通常以数值(十进制或十六进制数)来表示,转换为二进制数后,通过信号线与外部交换数据。 在使用组信号之前,先来看一下数制转换的原理,对后续的设定+使用理解更清楚。 数值之间的转换,以4位为例, 二进制:0000-1111 对应十进制:0-15 对应十六进制:00H-0FH 如下图所示:
如果我们将0000看作是一个状态的,那么4位二进制数:0000-1111就可以表示16个不同的状态。 同理,如果是8位则为: 二进制:0000_0000-1111_1111; 十进制:0-256; 十六进制:00H-FFH; 有了以上原理,接下来来看在FANUC机器人中,组I/O信号的具体设置用法。 1、以此按键【MENU】-【I/O】-【组】,如下图所示:
2、打开组I/O设定画面后,可看到FANUC系统提供了300个组输入GI和组输出GO信号,状态显示为星号,表示为启用。如下图所示: 3、在打开的组输入GI信号窗口,按键【分配】打开分配画面,如下图所示:
此时,机架号、插槽、开始点、点数等信息全为零,代表未使用状态。 4、机架号、插槽号设置根据所用的数字I/O类别设置,可参考前一篇《FANUC机器人I/O用法》文章,此处还是以处理印刷电路板为例设置。 机架号设置为0,插槽号设置为1,开始点1。 关于点数:指次组I/O要用几个数字I/O,根据实际项目需要表示的状态数来定,如:需要有15个状态,那么点数就设置为4,如下图所示:
5、设置完成后,重启系统,再次打开组信号画面,可以看到组I/O信号GI[1]变为可使用状态,当前数值为0,如下图所示:
6、当GI[1]的数值为0时,即代表:DI[1]-DI[4]均为OFF状态,当GI[1]=2时,代表DI[1]为OFF、DI[2]为ON、DI[3]为OFF、DI[4]为OFF,也就是我们开篇说的二进制对应表的原理。如下图所示:
同样的原理,组输出I/O也是一样的设定和表达方法。可依照设定。 总结,参照上篇文章的内容,选用的处理I/O印刷电路板有两个接口,可外接两块分线器,一块分线器有10个输入和8个输出信号,按最大量算,只能有20个输入,16个输出,如果需要的点数超过此数量就需要增设印刷电路板,成本就上去了。这时用组I/O同样的硬件配置,我们也8个输入构成的组信号就可变为256个状态,完美解决问题。 总结:设定完成以上全部内容后,就可以采用数字I/O与机器人进行通讯,编写机器人动作,外部满足那些条件后执行那些动作,动作完成后告知外部执行完成,继续判定后续执行动作。当I/O数量不足或不想用那么多信号,减少接线麻烦可以使用组I/O来搞定。当然,如果我们要与机器人的专用外部I/O信号UOP连接,单独的信号会更加可靠方便,所以在实际应用中,我们可以采用混合使用的方式来提升综合利用率。 以上内容均为结合个人使用经验总结,欢迎交流。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |