通常,ABB机器人支持的通信方式有:
(1)普通IO:
a)Signal
b)Group signal
(2)总线:
a)Profinet
b)Profibus
c)DeviceNet
d)EthernetIP等
(3)网络:
a)Socket
b)PC SDK
c)RWS(robot web service)
d)OPC
e)RMQ(robot message queue)
(4)其他:confidential
接下来,就重点介绍一下西门子S7-300的PLC是如果通过DP与ABB机器人进行通讯的。
本案例选取西门子S7-300PLC,其型号为CPU 313C-2DP,该PLC 为集成式的PLC,自带PROFIBUS-DP口,可以作为主站也可以作为从站,在本案例中,PLC作为主站。
**步:添加GSD文件。
在软件里,依次点击“选项”、“管理通用站描述文件”如下图:
选中GSD文件,并点击安装,安装因电脑而已,可能需要一点时间。
第二步:双击“设备组态”,并将视图切换成网络视图,如下图:
第三步:在右侧“硬件目录”功能栏里的搜索栏里输入anybus,出现如下搜索结果:
第四步:展开Anybus-CC PROFIBUS DP-V1,并按住鼠标左键,将其拖拽到网络视图中,如下图:
第五步:按住鼠标左键选中PLC_1的DP口,并与slave_1的DP口相连,如下图所示:
做到这里,PLC与机器人的硬件组态就已经结束,为了保证正确率,我们需要检查主站与从站的地址,默认的情况下,PLC作为主站,其地址为2,Slave_1也就是机器人端默认的地址是3,如下所示:
2 机器人端设置
**步:在示教器的“配置”菜单里,确保系统里支持Industrial Network,展开Industrial Network,并确保系统里存在PROFIBUS_Anybus,如下图所示:
第二步:在“配置”菜单下,展开PROFIBUS Internal Anybus Device,如下图所示:
第三步:如果第二步里面出现了PB_Internal_Anybus,则无需添加,如果没有出现,则添加,如下图所示:
其中,Name位置填入名称,Input Size(bytes)和Output Size(bytes)填入相应的通讯容量,其中*多支持512位,也就是64的字节。其余内容无需更改,添加完毕后,点击确定。
PLC侧的通讯程序较为简单,只需要将对应的位值移动到相应的地址即可,在本案例中,PLC与机器人没从通讯输入输出一个字节。
**步:展开左侧项目树下的分布式I/O,依次展开,找到设备组态,并双击。如下图:
第二步:在右侧的硬件目录菜单栏,找到“Input 1 byte”和“Output 1 byte”,并分别双击,使之出现在左侧的Slave_1下面,这一步的内容就是告诉PLC每次和机器人发送和接受是以一个字节为单位。如下图所示:
第三步:确定PLC的通讯地址,这一步至关重要,关系到程序里面的地址如何确定,分别选中“Input 1 byte”和“Output 1 byte”并右击,选中“属性”,这里采用各自的默认地址即可,如下所示:
做到这里,所有的配置已经设置完毕。
*后一步:在Main程序块中添加如下的程序:
改程序代表将PLC将1通道的1.0-1.7一个字节的状态值发送到256.0-256.7,其中256.0-256.7对应的就是机器人的接收端的**个字节,我们可以在机器人示教器的IO监控界面里进行监控如下所示:
更多资讯:ABB机器人