机器人IO和组IO

[复制链接]
查看121 | 回复0 | 2024-10-3 08:25:31 | 显示全部楼层 |阅读模式
>

       机器人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连接,单独的信号会更加可靠方便,所以在实际应用中,我们可以采用混合使用的方式来提升综合利用率。              

以上内容均为结合个人使用经验总结,欢迎交流。

          

              


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则