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

相关推荐

  • simatic net v13安装

    simatic net v13不能安装 图片说明:    最佳答案 你电脑的系统符合如下要求?参考,链接:http://www.ad.sie…

    2017年5月31日
  • 找匹配的simatic nt软件

    硬件:CPU315-2DP,CP343;操作系统是windows xp;找匹配的simatic nt软件,不知哪个版本合用? 问题补充:实现的功能:在上位机通过…

    SIMATIC Net 2017年6月10日
  • CP343-1lend通讯

    小弟现准备全厂设备做以太网监控,已有部分设备带有CP343-1lend,请问各位手册中要调用FC\FB块,但有人又说不用编程,到底该怎么做,通讯协议究竟是用S7\PG/PC,请各位…

    SIMATIC Net 2017年6月12日
  • SIMATIC NET添加变量

    如图所示:1、我如何做位变量?上面最低都是字节2、后面第4个空的数据长度,是位还是字节,还是其他什么? 图片说明:    最佳答案 可参考:《如何将Simati…

    2017年6月7日
  • ETHERNET与PROFINET的区别?

    两者都是用RJ45网线进行通讯的。为什么要对他们有不同的名称呢?PROFINET只是协议。那么也是在ETHERNET使用的,应该这样说ETHERNET里集成了PROFINET协议,…

    SIMATIC Net 2017年6月7日
  • ET200SP问题

    1.网上下载的GSD文件版本较高,需要版本2.25或更低点的版本,用于第3方的PLC,不知哪里可以下载2.GSD版本和固件版本有关系吗,如果元器件的固件版本比较高,会有问题吗3.接…

    SIMATIC Net 2017年5月31日
  • 官网下载的TIA selection tool无法正常使用

    我在官网上下载了TIA selection tool这个软件,每次打开后,鼠标就不能动了,和死机一样,必须要重新启动,请问各位有没有遇见我这种情况的,我的系统是…

    SIMATIC Net 2017年6月1日
  • 如何选用OPC条目管理器里服务器

    WINCC   OPC条目管理器里的服务器有好多!都不知道什么时候用哪个,用过S7-200.OPC SERVER。其他的并不清楚!资料也找不…

    SIMATIC Net 2017年6月6日
  • 如何修复SETP7

    我的电脑一直存在着连不上PLC问题,因为在“SET PG PC Interface”中没有CP5512,添加不进去,请问如何修复??需要重装SIMAT…

    SIMATIC Net 2017年6月12日
  • 能用CP342-5下载程序吗

    请问有办法能用CP342-5下载程序吗?如果可以那下载的步骤怎么样?麻烦大侠们回答一下,谢谢! 最佳答案 1、CP342-5  是西门子S7-300型PLC使用…

    SIMATIC Net 2017年6月1日