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

主站与智能从站主从通信方式的组态技术方法

来源:艾特贸易2017-06-05

简介1 .生成 DP 智能从站 可以将自动化任务划分为用多台 PLC 控制的若干个子任务,这些子任务分别用几台 CPU 独立和有效地进行处理,这些 CPU 在 DP 网络中作 DP 主站的智能从站。 DP 主站不

    1.生成DP智能从站

    可以将自动化任务划分为用多台PLC控制的若干个子任务,这些子任务分别用几台CPU独立和有效地进行处理,这些CPUDP网络中作DP主站的智能从站。

   DP主站不是直接访问智能从站的物理I/O区,而是通过从站组态时指定的通信双方的I/O区来交换数据。

    主站与从站之间的数据交换是由PLC的操作系统周期性自动完成的,不需要用户编程,但是用户必须对主站和智能从站之间的通信连接和数据交换区组态。这种通信方式称为主/(Master/Slave)通信方式,简称为MS方式。

    STEP 7中创建一个项目(见随书光盘中的例程PB_MS_2),CPUCPU 413- 2DP

    用鼠标右键点击SIMATIC管理器屏幕左边最上面的项目对象,在打开的快捷菜单中选择命令“插入新对象”→“SIMATIC 300站点”,插入新的站。选中新站后,双击“硬件”图标,对该站的硬件组态。首先生成该站的机架,将CPU 315- 2DP模块插入2号槽,电源模块插入1号槽,信号模块插入4~8号槽。

    CPU放到机架上时,将会自动打开DP接口属性对话框的“参数”选项卡。设置PROFIBUS站地址为4,不连接到PROFIBUS(1)子网络。点击“确定”按钮返回HW Config。双击CPUDP所在的行,打开DP属性对话框。在“工作模式”选项卡将该站设置为DP从站,点击“确定”按钮确认。在“HW Config”中保存对S7-300站的组态。因为此时还没有将从站连接到DP网络上,还不能成功地编译S7-300的硬件组态信息。

    不是所以的CPU都能作DP从站,具体的情况可以查阅有关的手册或产品样本。在HW Config的硬件目录窗口下面,可以看到对选中的硬件的简要介绍。

    2.将智能DP从站连接到DP主站系统

    选中SIMATIC管理器中的S7- 400站,双击右边窗口的“硬件”图标,打开HW Config,组态S7- 400站的硬件(见图7-31),生成一个DP子网络。

    打开右边的硬件目录窗口中的“\PROFIBUS DPConfigured Stations”(已组态的站)文件夹,将其中的“CPU 31x”拖放到屏幕左上方的PROFIBUS网络线上。“DP从站属性”对话框的“连接”选项卡(见图7-32)被自动打开,选中列表框中的“CPU 315- 2DP”,点击“连接”按钮,该站被连接到DP网络中。连接好后”断开连接”按钮上的字符由灰色变为黑色。点击该按钮,可将从站从网络上断开。

将智能从站连接到DP网络上

    7-31    将智能从站连接到DP网络上

连接DP从站

    7-32    连接DP从站

    3.主站与智能从站主从通信的组态

   DP从站属性对话框中的“组态”选项卡用于为主一从通信配置通信双方的输入/输出区地址(见图7-33)。

    点击图中的“新建”按钮,出现“DP从站属性一组态.行1”对话框。点击“编辑”按钮,可以编辑选中的行,点击“删除”按钮,可以删除选中的行。

    可以用“组态”对话框上部的“模式”列表框选择“MS”(主从)或“DX”(直接数字交换)模式。每次可以设置智能从站与主站一个方向的通信使用的I/O地址区。设置好后点击“确定”键,返回DP从站属性对话框的“组态”选项卡。

    7-33组态的通信双方使用的输入/输出区起始字节地址均为100IB100QB100),并不要求一定要将它们的地址设置得相同。它们不能与实际硬件占用的过程映像输入/输出区(包括主站的I/Q地址区和非智能从站的I/Q地址区)重叠。

DP主从通信的组态

    7-33    DP主从通信的组态

    4.智能从站与主站通信的编程

    在主站和从站中分别生成数据块DB 1DB 2,用数组定义数据块的大小。

    DP从站属性对话框的“组态”选项卡中设置的输入/输出地址区,实际上是通信用的缓冲区,双方的用户程序将需要发送的数据传送到组态时设置的本站的输出区,将设置的本站输入区中接收到的数据传送到需要的站内的地址。

    7-34给出了例程中主站与从站之间的数据传送关系。

变量的传送关系

    7-34    变量的传送关系

    下面是CPU 413- 2DP081中的程序,CPU 315- 2DP的用户程序与CPU 413- 2DP的基本上相同。

程序段1:要发送的部分数据传送到发送用的输出区

   OPN  DB  1

   L  DBW  0

   T  QW  100    //动态变化的DB1DBW0传送到发送缓冲区首字

   L  IW  0

   T  QW  102    //用本站的IW0控制对方的QW4

   L  DBW  18

   T  QW  118   //DB1DBW18传送到发送缓冲区最后一个字

程序段2:将输入区中接收到的数据传送到需要的地址

   OPN  DB  2

   L  IW  100    //接收到的通信伙伴的DB1DBW0

   T  DBW  0    //送本地的DB2DBW0

   L  IW  102

   T  QW  0    //用对方的IW0控制本站的QW0

   L  IW  118    //接收到的通信伙伴的DB1. DBW18

   T  DBW  18    //送本地的DB2DBW18

下面是CPU 413-2DPOB35中的程序,每100msDB1. DBW01

   L  DB1DBW 0

   +  1

   T  DB1DBW 0

    5.通信过程的监控

    用电缆连接两块CPU集成的MPI通信接口和计算机上的CP 5613MPI接口,将用户程序和组态信息下载到两台PLC。用电缆连接两块CPU集成的DP接口,将CPU切换到RUN模式。同时打开CPU 315- 2DPCPU 413- 2DP的变量表,将它们的窗口缩小。

    7-35和图7-36是同时看到的两台PLC与通信有关的变量,由于两台CPUDB1DBW0分别送到对方的DB2.DBW0,可以看到它们基本上分别同步变化。在变量表中修改DB 1的数据,可以看到通信伙伴的DB2中对应的数据随之变化。

CPU 413-2DP的变量表

    7-35    CPU 413-2DP的变量表

CPU 315-2DP的变量表

    7-36    CPU 315-2DP的变量表

    6.与DP从站有关的中断的处理

   (1)诊断中断(OB82)

    具有诊断功能的分布式I/O模块通过产生诊断中断来报告事件,例如部分节点故障、信号模块导线断开、线路短路、模拟量模块的电源故障等。当DP主站的CPURUN模式切换到STOP模式时,智能从站将调用组织块OB82(诊断中断)。产生诊断中断时,CPU的操作系统将调用处理诊断中断的组织块OB82

   (2)优先级错误中断(OB85)

    在以下情况下将会触发优先级错误中断:

   1)产生了一个中断事件,但是对应的OB块没有下载到CPU

   2)访问一个系统功能块的背景数据块时出错。

   3)刷新过程映像表时I/O访问出错,模块不存在或有故障。

    出现故障的DP从站的输入/输出值装入S7 CPU的过程映像表时,就可能发生上述情况。

   (3)机架故障中断(OB86)

    如果DP从站由于掉电、总线导线断开或某些其他原因引起故障,CPU的操作系统将调用组织块OB86(机架故障)。故障出现和消失时都将调用OB86

   (4) I/O访问错误中断(OB122)

   CPU访问有故障的I/O模块、不存在的或有故障的DP从站的输入/输出数据,或者访问了一个CPU不能识别的I/O地址,此时CPU的操作系统将会调用OB122

    DP从站出现故障时,如果没有下载上述对应的组织块,CPU将切换到STOP状态。

    生成和下载OB82OB85OB86OB122后,即使没有在模块中编写任何程序,在DP从站出现上述故障时,CPU也不会进入STOP模式。当然最好在中断程序中编写记录和处理故障的程序,以便在出现故障时,迅速地查明故障的原因和采取相应的措施。