S7 200程序下载错误

在S7 200中我定义了配方0,相对应的分配150个配方数据;
 在一子程序Write中根据LD0的输入将不同的工艺参数写入不同的配方
 下面的程序Network有150个,至于LD0的输入是根据不同的产品工艺型号输入的,数字量DINT类型
 编译能全部通过,可是一下载就出现:编译91非致命错误,Network95 行3 出现错误,如果我把Network95到Network149全删掉,再下载就没有问题
 说明的是Network1-------NetWork94跟下面的程序完全一致,只是LD输入值不同;

 LD     SM0.0
 AD=    #I_IN:LD0, 35352
 EU
 CALL   RCP0_WRITE:SBR19, DEF0_RCP90:31, VB298

 与Write对应的还有Read子程序
 有150个Networks

 LD     SM0.0
 AD=    #I_IN:LD0, 35352
 EU
 CALL   RCP0_READ:SBR18, DEF0_RCP3:118, VB295

 
 编程电缆用的是USB/PPI非西门子原装电缆
 编程软件用的MircroWin 4.0 SP6  语言设置为中文  XP操作系统
 程序全部编译为11.2K大小,数据块10K   存储卡64K,存储卡每个配方78字节
 150个配方11.7K数据远小于64K  配方空间应该没问题的

 百思不得其解
 

问题补充:
S7 226CN

最佳答案

你可以做如下尝试:

 1. 将你的150个Write子程序分成3个
    WriteA:原Write的1----50 Network

    WriteB:原Write的51----100 Network

    WriteC:原Write的101----150 Network

    调用的时候一起调用

    只是一种调试思路

 2.由于S7 200 系列 EU 与ED 每种指令在程序中不能超过256次
   
   你的EU指令是不是超过256次了?
   超过的部分 用
   NOT
   ED
   指令来代替来试试
 

提问者对于答案的评价:
今天经过测试,将Write子程序中的每个NETWORK

 
 LD     SM0.0
 AD=    #I_IN:LD0, 121
 EU
 CALL   RCP0_WRITE:SBR19, DEF0_RCP0:150, VB298

 
 每个NETWORK中都需要占用一个EU指令,这样Read子程序150个NETWORK 就占用了150个EU,Write子程序又占用了150个EU指令,而S7 200系列PLC  EU/ED指令每种只能使用少于256个,故下载出现错误,我试验中将占用15个EU指令进行变换,指令列如下:

 LD     SM0.0
 EU

 LPS
 AD=    #I_IN:LD0, 30203

 CALL   RCP0_WRITE:SBR19, DEF0_RCP60:90, VB298
 LRD
 AD=    #I_IN:LD0, 30251
 CALL   RCP0_WRITE:SBR19, DEF0_RCP61:89, VB298
 LRD

 AD=    #I_IN:LD0, 30252
 CALL   RCP0_WRITE:SBR19, DEF0_RCP62:88, VB298
 AD=    #I_IN:LD0, 35101
 LRD
 CALL   RCP0_WRITE:SBR19, DEF0_RCP73:77, VB298
 LPP
 AD=    #I_IN:LD0, 35102
 CALL   RCP0_WRITE:SBR19, DEF0_RCP74:76, VB298

 经过变换指令格式后,细数EU指令,整个程序EU指令为217个,下载至PLC无出现错误,程序现在运行正常

 大家回答都很好,只是  S7 200 / Net 对我的调试思路改变有很大影响  希望大家别有意见

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午12:09
下一篇 2021年7月5日 上午12:09

相关推荐

  • 西门子高速计数的问题请教大家

    现场一台高速测试仪,测试位移量和压力的变化,位移用的是普通电机加旋转编码器,因为需要精确的看出位移量和压力的变化,用的是西门子200的PLC,程序这样写的:LD &nbs…

    SIMATIC S7-200 2020年11月1日
  • 求助E+E温湿度传感器接入CPU224XP CN的接线图及温湿度的模拟量地址

    最近在使用E+E的EE160温湿度传感器,不清楚怎么接线和怎么读温度和湿度,及模拟量的模拟量地址怎么对应。求助各位前辈,在次感谢啦。 最佳答案 此问题可以参考:《如何定义S7-20…

    SIMATIC S7-200 2019年6月10日
  • 求教:S7-200与多功能电力表的Modbus通信

    请教大家,内容如上,但有如下几个问题不理解,请大家多多赐教!1.PLC与仪表之间用DP紫线与DP的链接器,是红色接仪表“+”绿色接仪表“—”?2.他们说modbus通信不可带电拔插…

    SIMATIC S7-200 2017年11月17日
  • PID怎么输出啊

    过程变量接的是液位传感器,为什么AQW0输出一直是6400不变,液位的量程是0-1.6米, 问题补充:按PID向导组态的,不知道哪里出了问题,方便加QQ给我技术指导一下吗?5659…

    2017年10月29日
  • s7-200指令

    S7200有一指令不太理解,指令P.如以下程序.LD     SM0.0A    &nbs…

    SIMATIC S7-200 2020年11月1日
  • 触摸屏能存储数据吗?

    有一个客户要求要用触摸屏来存储历史数据,我只用组态做过,不知道触摸屏能不能存储历史数据呢,如果能,那位高手给推荐个型号? 最佳答案 很多种触摸屏都支持历史数据的存储,要在归档里面组…

    SIMATIC S7-200 2021年7月4日
  • 安装PC Access sp6完整版的时候提示需要卸载v1.0

    在win7安装PC Access v1.0 兼容性安装什么的都卡在安装simatic device drivers 90…

    SIMATIC S7-200 2017年6月14日
  • s7-200WEN

    从PLC上传程序,再下载到相同型号相同版本(2.02)的PLC,下载到中途就出现通讯故障,而下载新写的陈序没问题。PLC 是作为MODBUS从站的,从端口1下载的。 问题…

    SIMATIC S7-200 2021年7月5日
  • S7-200与MM430通讯的硬件配置

    大家好,我现在想用S7-200与4台MM430变频器做通讯,请问硬件上面需要那些东西。主要哪些附件。 问题补充:我的邮箱是blackhk99@163.com QQ为:10…

    SIMATIC S7-200 2021年7月5日
  • S7200 SMART如何实现标准偏差的计算

    我用SMART读取一路模拟量值,模拟量值是一个一个数据的,现在需要计算一组数据的标准偏差,请问高手们,标准偏差在PLC中如何计算,有标准的公式吗 最佳答案 这个模拟量数据的偏差可能…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论