您现在的位置是:首页 > PLC技术 > PLC技术

PLC与PLC之间如何实现PROFIBUS通信

来源:艾特贸易2018-01-19

简介1) 原理 S7 系列 PLC 需要通过 PROFIBUS 通信时, S7-200 需要支持 PROFIBUS 的扩展模块 EM277 ,而 S7-300/400 需要有支持 PROFIBUS 的 DP 口,并且还需组态下载。 2) 应用 既然 PROFIBUS-DP 是一种通信标准

    1)原理

   S7系列PLC需要通过PROFIBUS通信时,S7-200需要支持PROFIBUS的扩展模块EM277,而S7-300/400需要有支持PROFIBUSDP口,并且还需组态下载。

   2)应用

    既然PROFIBUS-DP是一种通信标准,一些符合PROFIBUS-DP规约的第三方设备也可以加入PROFIBUS网上作为主站和从站,绝大部分设备都可作为从站,只有一小部分设备可作为主站。第三方设备作主站,组态软件需要第三方提供;第三方设备作从站,如果主站是S7设备,组态软件是STEP 7SIMATIC NET,如果是S5设备,组态软件是COM PROFIBUSCOM5431。支持PROFIBUS-DP的从站设备都会有GSD文件,GSD文件是对设备的一般描述,通常以*GSD*GSE文件名出现,将此GSD文件加入主站组态软件中后就可以组态从站的通信接口。在这里主要介绍S7设备作主站的应用,STEP 7作为组态软件加入PROFIBUS-DP从站设备,现以S7-400 CPU 416-2DP作主站、S7-200 PROFIBUS接口模块EM277作从站为例,详细介绍怎样导入GSD文件,组态从站通信接口区进而建立通信。

   3) PROFIBUS-DPEM277的通信

    软件:STEP 7V5.2

    硬件:

    PROFIBUS-DP主站S7-400 CPU416-2DP;

    ●从站EM277;

    3MPI网卡CP5611;

    PROFIBUS电缆及接头。

    此组态实例是将上位机和S7-400CPU 416-2DP通过PROFIBUS-DP,总线与EM277相连来建立通信。网络配置图如图10-39所示。

网络配置图

    10-39    网络配置图

   (1)组态主站系统

    打开SIMATICMANAGER软件,在"File"菜单下选择“New”新建一个项目,在“Name”栏中输入项目名称,将其命名为“DP EM277”,在下方的“Storage location”栏中设置其存储位置,如图10-40所示。

存储位置

    10-40    存储位置

    在项目屏幕的左侧选中该项目,单击右键在弹出的快捷菜单中选择“Insert New Object”→“SIMATIC 400 Station”,如图10-41所示,可以看到选择的对象出现在右侧的屏幕上。

选择对象

    10-41    选择对象

    双击右侧生成的hardware图标,在弹出的HWconfiguration中进行硬件组态,在“View”菜单栏中选择“Catalog”打开硬件目录,按订货号和硬件安装次序依次插入机架、电源、CPU。插入CPU时会同时弹出组态PROFIBUS画面,选择新建一条PROFIBUS网络,组态PROFIBUS站地址,单击“Properties”按钮,组态网络属性如图10-42所示。

    在本例中主站的传输速率为“1.5Mb/s”,“DP”行规,无中继器和OBT等网络元件,单击“OK”按钮确认并存盘。

   (2)安装GSD文件

    在硬件组态画面中,退出所有的应用程序,单击菜单“Options”→“Install new GSD”,找到所提供的GSD文件,如图10 43所示。

组态网络属性

    10-42    组态网络属性

GSD文件

    10-43    GSD文件

    单击“Open”按钮安装新的GSD文件,安装完成后,单击同一菜单下的选项“Update catalog”,更新画面,这时在硬件设备中“Additional Field Devices”目录下可以发现EM277设备,如图10-44所示。

    一般情况下新安装的GSD设备都列在这个目录下,只有部分PA仪表除外。

   (3)组态从站系统

    打开主站硬件组态窗口,在PROFIBUS网络上添加EM277从站设备并组态通信接口区,具体参考图10-45

EM277设备

    10-44    EM277设备

EM277通信连接图

    10-45    EM277通信连接图

    软件组态的EM277PROFIBUS站地址要与实际EM277上拨码开关设定的地址一致,通信接口区大小为32字节输入,32字节输出,图中对应的地址是主站的通信地址区输入区为IB0IB31,输出区为QB0QB31。对应于S7-200的通信接口区为V区,占用62字节,其中前32字节为接收区,后32字节为发送区。V区的偏移默认为0,则S7-200的通信接口区为VB0VB61V区的偏移量可以根据S7-200的要求作相应修改。在主站硬件组态中双击EM277,如图10-46所示设置V区的偏移量为100

EM277V区设置图

    10-46    EM277V区设置图

    修改完的通信地址对应如下:

   S7-400主站  S7-200从站

   QB0QB31---->VB100VB131

   IB0IB31<----VB132VB163

    S7-200中则不用编写任何通信程序。

    备注:若要和第三方设备通过PROFIBUS-DP协议通信,除了要提供GSD文件外,还需提供通信数据的内容,否则即使数据通信建立了,也不知道读过来的数据是什么意思。

    在修改运行设备的组态参数时,如果有源程序,在编程器中打开项目时会自动导入GSD文件(STEP7 V5.1以上),修改参数后下载不会造成CPU故障。如果编程器上没有集成所需的GSD文件,从CPU上传的组态信息将不完整,修改参数后若重新下载到CPU中,会造成CPU故障。

   4)通过PROFIBUS-DP连接的DX方式通信

   (1)简介

    对于基于PROFIBUS-DP协议的从站和从站之间的DX通信,从站之间相互通信的必要条件首先是从站要有数据发送给主站,换句话说,从站要有输出区对应主站的输入区;其次从站是智能从站,如S7-300站、S7-400站、带有CPUET200S站和ET200X站等。旧版本的从站或主站CPU不支持DX通信功能,怎样判断一个从站CPU是否支持DX通信?首先,新购买的CPU是肯定支持DX通信功能的;其次,可用编程软件STEP 7组态一下,如果可以组态,说明该CPU支持DX通信。

   (2)通信原理

   PROFIBUS-DP通信是以主站依次轮询从站的通信方式进行数据交换的,该方式称为MS( Master-Slave)模式,基于PROFIBUS-DP协议的DX (Direct Date Exchange)通信模式是在主站轮询从站时,从站除了将数据发送给主站外,同时还将数据发送给在STEP 7中组态的其他从站。参考图10-47所示数据通信结构,下面举例说明如何进行相关组态和数据通信区的定义。

   5)  PROFIBUS-DP DX方式通信举例

    软件:STEP 7V5.2

    硬件:

    PROFIBUS-DP主站S7-400CPU414-3DP;

    ●两个从站S7-300CPU315-2DPCPU314C-2DP;

    MPI网卡CP5611;

    PROFIBUS电缆及接头。

    网络配置图如图10-48所示。

DX通信

    10-47    DX通信

网络配置图

    10-48    网络配置图

    硬件连接:在该实例中,S7-400作主站,两个S7-300作从站。在硬件连接之前,首先将上位机的MPI接口分别和3CPU站点的MPI口连接,进行初始化。然后用PROFIBUS电缆将S7-400S7-300 CPUDP相连,S7-400为主站,两个S7-300为从站。打开STEP 7,新建一个项目,将该实例起名为PROFIBUS_DP_DX,原则上从从站开始组态。

   (1)组态S7-300从站

    组态两个S7-300从站,选中项目并单击右键,依次选择“Insert New Object”→“SIMATIC 300 Station”插入S7-300站点,如图10-49所示。

选择路径

    10-49    选择路径

    建立S7-300之后,双击Hardware图标,组态机架和CPU,插入CPU315-2DP时,新建一条PROFIBUS网络,设置站地址参数。在“Address”栏配置CPU315-2DP的站号,本例中CPU315-2DPPROFIBUS地址为3。单击右键选择“Properties”→“NetworkSettings”,设置传输速率和总线行规,此例中选择“DP”行规,传输速率选择“1.5Mbps”,如图10-50所示。

    若网络中使用了中继器、OBTOLM等网络元件,可单击“Options”按钮添加,然后单击“OK”按钮确认。

    双击DP栏组态操作模式和从站通信接口区,在“Operation Mode”菜单中选择从站模式。如果使用PROFIBUS网卡编程CP5611可以激活从站的编程功能,这样在PROFIBUS网络上可以同时对主站和从站编程,诊断地址选用默认值即可,选项如图10-51所示。

安装图

    10-50    安装图

网络配置图

    10-51    网络配置图

    进入菜单“Configuration”组态从站通信接口区,单击“New”按钮,加入一栏通信区,每栏通信区最大数据长度为32字节。在本例中分别添加输入区一栏和输出区一栏各10字节,  开始地址为0,在“Consistency”中选择“Unit,若选择“All”则主站、从站都需要调用SFC14SFC15对通信数据打包/解包,参数组态参考如图10-52所示。

参数组态

    10-52    参数组态

    以同样的方式组态另一个从站,使两个从站同在一条PROFIBUS-DP网络上,选择PROFIBUS站地址为4

   (2)组态S7-400主站

    在右侧区域单击右键,在弹出的快捷菜单中选择“Insert New Object”→“SIMATIC 400 Station”插入400站点,如图10-53所示,在屏幕右侧窗口会显示相应的S7-400站。

插入“SIMATIC 400 Station”

    10-53    插入“SIMATIC 400Station

    双击Hardware图标,组态机架、电源模块和CPU模块。插入CPU414-3DP模块时,选择与从站相同的PROFIBUS网络,并设置站地址参数,本例中CPU414-3DPPROFIBUS地址为2。组态完成后单击“OK”按钮确认,出现PROFIBUS网络,如图10-54所示。

    S7-400HWconfiguration组态界面右侧选择“PROFIBUS DP”,在“ConfiguredStations”中选择“CPU 31x”,将其拖到左侧的PROFIBUS总线上,如图10-55所示。

PROFIBUS网络

    10-54    PROFIBUS网络

PROFIBUS网络

    10-55    PROFIBUS网络

    在弹出的“DP slaveproperties”对话框中,出现已经组态的两个从站,如图10-56所示。

    选择其中一个CPU,单击“Connect”按钮,将其连接到PROFIBUS网络上,然后以同样的方法连接另一个从站。若要从网络上断开相关站点,选择“Disconnect”按钮即可。连接完成后再为两个S7-300从站没置其对应主站输入/输出接口区。例如,要设置地址为3CPU315-2DP的输入/输出接口区,双击3号站,在弹出的“DP slave properties”的“Configuration”栏中单击“Edit,,按钮,组态主站即CPU414-3DP的通信接口区,如图10-57所示。

组态的两个从站

    10-56    组态的两个从站

CPU414-3DP的通信接口区

    10-57    CPU414-3DP的通信接口区

    分别组态主站的通信地址区,对应规则为主站输出对从站输入,主站输入对从站输出。然后以同样的方法组态4号从站对应主站的通信接口区。组态完成后对应的通信地址如下:

    主站CPU414-3:

    3号从站CPU315-2DP

   IB0IB9  <----QB0QB9

    QB0QB9---->IB0IB9

    4号从站CPU314C-2DP

   IB10IB1  <----9QB0QB9

   QB10QB19---->IB0IB9

   (3)组态DX通信区

    上面的组态过程仅仅是PROFIBUS-DPMS通信模式,只有上面的工作完成后才能进行DX模式组态。在本节的开始已经介绍DX的通信方式,主站轮询从站读取数据时,从站广播发送数据给主站和指定的从站,则这个从站称为“Publisher”,接收数据的从站称为“Recipient”。我们以3号从站作为“Publisher”,以4号从站作为“Recipient”,双击4号从站新建一栏通信数据,这时在“Mode”下可以选择MSDX方式,选择DX模式,在“Publisher”地址中会出现3号站,如果还有其他的智能从站在同一条PROFIBUS网络上也会出现这些站号,因为本例中只有两个从站,所以4号从站的“Publisher”站只有3号站。在下面的选择中要注意:“Publisher”的“Address type”为“Input”,“Address”可选择,这里都是指“Publisher”对应主站的“Address type”和“Input”,从图10-57中可以看出,3号站发送给主站数据对应主站的接收区为IB0IB9。如果在“Input”区选0,则“Recipient4号从站将接收主站地址IB0IB9也就是3号从站“PublisherQB0QB9的数据,如果选择4,则接收3号从站“PublisherQB4QB9的数据,也就是说,“Recipient”可以有选择地接收“Publisher”的数据。参数组态如图10-58所示。

具体参数组态

    10-58    具体参数组态

    从上面的对应关系可以看到,当主站轮询3号从站时,3号从站发送QB0QB9到主站IB0IB9中,同时发送QB4QB96字节到4号从站IB10IB15中,这里容易弄混淆的地方就是“Publisher”的地址区,站地址是从站地址,通信区却是主站的。如果数据的连续性参数选择“All”,则“Publisher”从站发送的数据是以整个数据包的形式发送的,即使“Recipient”从站选择接收“Publisher”从站1字节的数据也必须调用SFC14。在上面的例子中,3号从站和4号从站可以同时作为“Publisher”和“Recipient”。