菜鸟级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日

相关推荐

  • Scalance X100系列不支持IRT吧?

    PROFINET应用精要解析系列之PN网络中不得不说的小秘密 课程编号:V2447 你的PROFINET网线选对了吗?&lt…. 点击这里,打开新窗口观看完整视频 该视…

    2021年7月5日
  • simatic net communication settings 打不开。。

    提示"Communication Settings" could not establish a c…

    SIMATIC Net 2017年6月7日
  • 再问Profibus接头

    这个型号是不是就是内置终端电阻的主站接头,还是中继单元?谢谢! 最佳答案 profibus接头不管是什么型号,基本分为:1.是否带编程接口? 2.是90还是45度引线?&…

    SIMATIC Net 2017年6月27日
  • 关于交换机的一个问题

    各位大侠好,我选了一个交换机光口,今天供应商问我是圆的还是方的是什么意思啊?是跟线还是什么有关系啊 问题补充:是跟跳线有关系么?如果是方口的选择什么,圆口又选择什么型号 最佳答案 …

    SIMATIC Net 2017年6月8日
  • CP 443 所有LED灯闪烁故障

    故障现象:在下载/上传大量数据时偶尔会出现CP443模块上所以LED灯一起闪烁的情况。请教各位可能是什么原因。谢谢! 最佳答案 A、转帖:1、断电重起,看看。如不能解决问题;2、重…

    SIMATIC Net 2017年6月7日
  • OPC ScoutV10能否读取TIA V13编程的PLC地址?

    编写OPC客户端访问Simatic.Net的OPC服务器,能不能读取PLC的数据?通过OPC ScoutV10能否读取TIA V13编程的PLC地址? 最佳答案…

    SIMATIC Net 2017年6月4日
  • 关于CP343-1的问题

    我想用CP343-1将PLC跟工控机链接起来,因为没用过,所以有以下问题请教:1、使用CP343-1是不是要装驱动,或者GDS文件?2、使用CP343-1用的哪种型号的水晶头和网线…

    SIMATIC Net 2017年6月3日
  • WINCC以太网连接多个S7200怎么做

    最近在准备一个项目。。WINCC 通过普通网卡+20个CP243-1连接20台S7200。。。是不是需要softnet_ie s7授权就可以拉??。。。还是必须…

    SIMATIC Net 2017年6月24日
  • RS485总线终端之间隔离保护的方式方法?

    诸位好! 请问当一个PLC作为主机通过MODBUS协议控制3个变频器从机,也就是一根RS485总线上挂4个终端,不知大家是如何让他们相互之间隔离保护,我以前是直接将A拧在…

    SIMATIC Net 2017年6月1日
  • 求!图尔克BL20系列模块手册

    第一次接触这种模块  谢谢 高手 指教 最佳答案 参考:《图尔克BL20参考手册》——>http://www.gongkong.com…

    SIMATIC Net 2017年6月11日