菜鸟级ET2OOS通讯问题

PRPFIBUS-DP网络规划如下:1个CPU315-2DP做主站,下挂4个ET200S从站,接口模块全部为IM151标准型,每个从站都单独配有直流电源,网络两端接有有源端接元件,有1个或多个从站要共用某个从站的某些输入信号,要求当一个或多个从站通讯故障时CPU不停机,只将有关联的几个从站负载停止。
问题1.需要编写哪些组织块。
问题2.怎样判断通讯出故障的站号。
问题3.通讯出故障的从站其输出是保持故障前的状态还是全部为零。
问题4.CPU315-2DP的连接数量为16,怎样知道项目中需要多少个连接。(并不特指这个项目)
先谢谢各位大师。

问题补充:
对问题4补充一下,可能是我描述不清楚,但Bob Wu 的回答已经比较接近我想要的答案了。
意即一个项目已经规划好了,那么我得知道这个项目有多少个什么样的连接,这些连接有没有超出CPU的连接能力。
也可能我对什么是“连接”还没弄明白,是不是一个站就得占用一个连接?

最佳答案

1. 为了避免发生某种错误时CPU进入停机,可以在CPU中建立以下对应的空的组织块,可以直接插入你的程序块中,然后下载到你的CPU中。根据错误的类型,CPU调用响应的错误处理OB,从而避免某种错误时CPU进入停机,但CPU上SF红灯亮,但CPU运行正常。对于标准COU315-2DP,这些错误组织块为:
OB号  错误类型               优先级
OB81: 电源故障               26/28
OB82:诊断中断               26/28
OB83:插入/取出模块中断      26/28
OB84:CPU硬件故障            26/28
OB85:优先级错误             26/28
OB86:机架故障或分布式I/O的故障 26/28
OB87:通信错误              引起错误的OB的优先级
OB121:编程错误             与被中断的块在同一优先级
OB122:I/O访问错误          与被中断的块在同一优先级
2. 关于如何判断通信出故障,其实很简单。由于ET200S是智能模块,你可以直接在分布I/O故障组织块OB86中通过简单的编程就可以实现。如果你的CPU中下载了OB86,当在发生通信问题后或者访问不到DP从站ET200S时将执行OB86,可以通过OB86上部的局部变量声明表中的临时变量读出产生的故障代码和事件类型,通过它们的组合可以得到具体错误信息,同时也可以读出产生错误的模块地址。由于STEP7不能实时监控程序的运行,可以用“Variable”(变量表)监控实时数据的变化,从而很块查出具体的模块位置。利用装载和传送指令来编程,当然你也可以利用赋值指令MOVE来编程,在OB86中编写的简单程序如下,可以判断出通信故障模块的DP站号。
      L  #OB86_EV_CLASS //读取事件的级别和标识
      T  MB0
      L  #OB86_FLT_DI //读取故障代码
      T  MB1
      L  #OB86_MDL_ADDR//读取故障模块的地址
      T  MW2
3. 如果DP从站发生故障时,CPU作为DP主站与作为DP从站的ET2OOS之间没有通信连接,所以通讯出故障的从站其输入保持不变,但是不可能有输出的,所以输出的状态当然全部为零
4. CPU315-2DP的通信连接的最大数量是16,一般在SIMATIC管理器中打开你的项目的硬件组态界面,双击CPU315-2DP,打开“Properties – CPU315-2DP(RO/S2)”CPU属性)对话框,选择子项“Communication”(通信),可以看到CPU的通信资源分配情况,默认为:
Communication Resource Reserve for (为以下保留的通信资源)
PG Communication    1 (PG/PC)
OP Communication    1(触摸屏OP/TP)
S7 Basic Communication  12(S7基本通信)
S7 Communication(S7通信)0
Maximum number of communication   16
通过上述可以清晰看出你的CPU系统中通信资源分配情况,一个为上位机(包括PG/PC0)保留一个,HMI触摸屏保留一个,但为S7基本通信保留了12个。如果你的上位机或触摸屏不止一个,可以在PG、OP 后面增加连接数量,同时减少S7基本通信资源,执行“保存并编译”,然后下载到CPU中就可以了。一般一个上位机占用一个通信资源、一个触摸屏也占用一个通信资源、如果你用以太网通信可能也需要S7通信连接也占用一个通信资源,把上述通信资源连接数相加就可以知道你的项目这需要多少连接。
我们讲CPU315-2DP最大可连接的通信数量16,并是不是指一个站就得占用一个连接.CPU315-2DP的通信连接最大数16,是指整个CPU通信系统中所有通信协议连接数量总和(包括MPI通信、PROFIBUS通信、工业以太网通信),如第一接口为MPI最大连接数量16是指没有利用其他通信协议的MPI站点最大连接数,下同。在CPU315-2DP所以接口中,第一个接口X1为MPI, 第二个接口为PROFIBUS-DP,如果不使用其他通信协议,其作为DP主站的最大连接数是16,作为DP从站的连接数也是16个;通信功能中仅仅连接PG/OP,其最大连接数是16(编程器默认为1个,可组态15个;OP通信默认为1,可组态15个;基于S7(工业以太网通信)保留为12个,可组态为0-12个。如果一个CPU包含不同的通信协议,必须把其相加,其所以通信连接数不能超过16个。

提问者对于答案的评价:
感谢Bob Wu,同时也非常感谢阿呜,提供的资料相当有帮助。
但对于问题3,Bob Wu与阿呜的结论却截然相反,迷茫中.....

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc165952.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月10日
下一篇 2017年6月10日

相关推荐

  • 如何用一台电脑通过交换机对三个新PLC进行编程操作?

    这三个S7-300 PLC都是新买来的,分别用于三台设备。这三个PLC用三根网线将其三个同时接到交换机上面,在这种情况下,我用一台笔记本用网线插到交换机上去调试时,第一步…

    SIMATIC Net 2017年6月10日
  • 有没有绿色软件可以设置profinet设备名称

    有些设备不好设置profinet的网络设备名称不装TIA或step7的情况下,可以修改设备名称 最佳答案 1、SIMATIC Automation Tool(简…

    SIMATIC Net 2017年5月28日
  • 无线网下载s7程序如何设置

    无线网下载s7程序如何设置,比如中间有s7-315dp,315np等 问题补充:上传下载时的软件配置,如果用网线传送时的软件硬件配置怎么做 最佳答案 无线通讯的方法很多下面发些资料…

    SIMATIC Net 2017年6月10日
  • 如何知道通信的刷新频率

    比如说两个plc进行s7通信,如果能够准确的知道他们的通信刷新频率是多少?或者是profibus从站,如何确定他们的从站的刷新频率。 问题补充:哪个参数是代表它的刷新频率。有没有相…

    2017年6月5日
  • 博途在线清空PLC存储卡的方法

    自己弄了一个PLC:315-2DP的CPU,然后用博途测试各种性能,后来想更换一个程序时,突然想到要清空CPU存储卡,但是在博途中没有找到清空PLC存储卡的方法,请问博途怎么在线清…

    SIMATIC Net 2017年6月1日
  • profinet IRT通讯

    使用博途软件,实现s7 1500与从站的Profinet IRT通讯。直接组态的话,编译会报错(在等时同步模式中运行的模块需要分配给等时同步循环组织块)。刚开始…

    SIMATIC Net 2017年5月29日
  • CP340如何实现modbus rtu通信?

    CP340如何实现modbus rtu通信? 最佳答案 参见:Siemens_CP340模块实现Modbus_RTU协议的研究http://wenku.baidu.com…

    SIMATIC Net 2017年6月4日
  • 请问交换机选型问题(光纤冗余环网)

    请问各位老师现在有4个变电所(直线分布,各变电所距离大约500米)。每个分变电所下属10个设备(直线分布,各设备距离大约100米)。目前想实现:1、主干以太网4个变电用千兆交换机作…

    SIMATIC Net 2017年5月28日
  • 第三方软件与s7300 315-2pn/dp 通讯

    现有一台s7300 型号315-2PN/DP要与三台上位机采用OPC通讯,上位机软件为DELPHI7,OPC怎样设置。网络采用以太网。 最佳答案 问题:第三方软件与s73…

    SIMATIC Net 2017年6月7日
  • 西门子总线电压?

    谁知道西门子总线电压能达到多少伏? 问题补充:西门子总线不是24V供电的吗,从PLC出来测量总线之间的电压能达到多少伏? 最佳答案 一般的模块内部总线电压是5V。 提问者对于答案的…

    SIMATIC Net 2017年6月7日