1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西门子S7

OB块 初始化是运行OB100,在程序里面经常会使用到常1和常0,而OB100只在启动时候用一次,所以会在OB100做常1和常0 如: 点CPU属性,如故障中断有:OB82,OB85,OB86,OB87是故障中断是需要自己是写故障程序的 循环中断也叫定时中断OB35,CPU会定时去执行OB35,执行完再去执行OB1,在大的程序里面OB1执行完是超过了150MS,在OB1里面做模拟量时间不够,一般在OB35里面做 怎样看程序 一程序结构: 在Options下的reference Data里面的display 平滑 公式: 采集量=(本参量-前量)*平滑率+前量 基础: L是操作数装入累加器1,原来1的送到累加器2 T是把累加器1的值送出去,并累加器1的值不变 TAK 交换累加器1,2 的内容 LAR1 将累加器1的内容装入到AR1(指针常数) JU无条件跳转 JC逻辑为1时跳转 临时变量:只在本块有效 平滑 平滑 L #XE //装入模拟量读入后的值 T #TEM_XE //送到临时变量TEM_XE 为什么要临时? L #VERG //装入0到VERG 0是什么意思? 0是指DB102.DB00意思:数据快102的0通道目的是可以被其他的程序再次使用这个功能快 平滑 平滑 L #TA //把TA装入累加器1,是平滑率的分子 L #T //把30装入累加器1,而1数值到了累加器2 /R 是1/30=0.03 0.03就是平滑率 T #Tem_time 把0.03送到Tem_time L 1.00000e-001 把0.1装入累加器1 R O(L #T=0) O #RSET 大于0.1或者#T=0或者#RSET有复位信号 JC MOO5 调用M005 不平滑 平滑 L #Tem_VERG //把通道临时变量装入累加器1 SLW 5 //左移5位 LAR1 //送到地址寄存器1 L #Tem_XA //把当前量装入累加器1 L DB[LAR1,#0.0]//装入DBD0的数据到累加器1 -R //#Tem_XA减DB[0] L #Tem_time //装入平滑率到累加器1 *R ///#Tem_XA减DB[0]乘平滑率 L DB[LAR1,#0.0]//装入DBD0的数据到累加器1 +R //采集量=(本参量-前量)*平滑率+前量 T DB[LAR1,#0.0]//把计算值得送到DB[0] JU M004 平滑 问题 第一次DBD[0]D 的值是那里来的? 答案 是在复位的时候送进去的 堆栈 延时 堆栈 L #Stack_length //装入堆栈长度在这里是为10 SLW 5 //左移5位,10变成了320,10*25 LAR1 //送到地址寄存器1 L DBD [AR1,P#0.0]//装入DBD40的数据到累加器1,怎么算出来? T #Stack_data //把DBD40的值送出去到#Stack_data AN #EN //如果#EN为0 // AN #Stack_clear BEC //条件结束 清零 在复位信号时候清零 A #Stack_clear //在复位信号来的时候 JC M002 //逻辑结果为1,条件调用M002 M002: L #Stack_length //装入堆栈长度进累加器1 T #Temp_counter //送到临时变量#Temp_counter M003: L #Temp_counter //装入临时变量进累加器1 SLW 5 //左移5位是把10变成了320 L

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档