您现在所在的是:

PLC论坛

回帖:3个,阅读:3984 [上一页] [1] [下一页]
6047
liaosun
文章数:1398
年度积分:50
历史总积分:6047
注册时间:2003/5/4
发站内信
2015论坛贡献奖
2014论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011博客贡献奖
2010博客杰出贡献奖
发表于:2015/6/5 7:03:43
#0楼

状态字是学习S7-300/400的难点之一。状态位一共9位,我曾经有一个疑问,为什么从来没有看到某些状态位在用户程序中应用的例子?深入学习后才知道,有3个状态位与用户程序无关,初学者完全可以不用管它们。它们是首次检测位/FC、状态位STA和“或”位OR。
S7-200等PLC用LD和LDI指令来表示电路块开始的常开触点和常闭触点。S7-300/400没有这样的指令,它是用首次检测位/FC的状态为0来表示一个梯形逻辑程序段的开始,或串并联电路块的第一条指令。下面是一个程序段的程序:
A           I0.0
A           I0.1
=            Q0.0
执行第一条A指令时,首次检测位为0,CPU将I0.0的值存入状态字的第1位RLO(逻辑运算结果)。这条指令并不做“与”运算。因为此时只有一个操作数,也不可能做“与”运算。
可以把第一条A指令改为O(“或”)、X(“异或”)指令,它们都是将该指令中I0.0的值保存到RLO。
状态字的第2位为状态位(STA),STA位与位逻辑指令中的位变量的值一致。它只是用于语句表的程序状态监控。
状态字的第3位为或位(OR),在将两条串联电路并联时,CPU首先计算出两条串联电路的“与”运算结果,它们分别用RLO和OR位来保存,然后再对它们做“或”运算。
从上面的分析可知,这3个状态位用于CPU 的内部操作或监控,它们与用户程序毫无关系。下面还有两个有力的证据可以确认这个结论。
1)指令“L  STW”将状态字装载到 累加器1,但是它不装载状态字的 /FC、STA和OR位。为什么?因为这3位与用户程序无关,用户程序得到它们也没用。
2)与状态位有关的指令有逻辑控制指令和状态位触点指令,这些指令都与这3个状态位无关。
此帖来自中华工控网工控博客
原文件地址:http://blog.gkong.com/more.asp?id=220691&Name=liaochangchu
我是廖常初,是一个高校的老师,曾在企业从事机械、电气技术工作,长期从事工业控制和PLC应用的教学、科研和工程应用工作。博客中的日志除注明外均为原创。愿意在此与大家探讨工控的问题!
廖常初工控博客地址:http://blog.gkong.com/blog.asp?name=liaochangchu
我曾写过几本小书: 《PLC编程及应用》第3版(S7-200)、《S7-300/400 PLC应用技术》第3版、《FX系列PLC编程及应用》第2版、《S7-200 PLC编程及应用》、《PLC基础及应用》第2版(FX系列大专教材)、《西门子人机界面(触摸屏)组态与应用技术》、《西门子工业通信网络组态编程与故障诊断》、《S7-1200 PLC编程及应用》第2版、《跟我动手学S7-300/400 PLC》、《跟我动手学FX系列PLC》
机械工业出版社廖常初图书专题:http://www.gkong.com/zt/liaochangchu/
2212
你好00000
文章数:819
年度积分:50
历史总积分:2212
注册时间:2015/1/12
发站内信
发表于:2015/6/5 8:17:49
#1楼
好资料,谢谢
此帖发自手机工控论坛
6580
lenyan13
文章数:1828
年度积分:50
历史总积分:6580
注册时间:2008/9/21
发站内信
发表于:2015/6/5 11:49:14
#2楼
谢谢,顶起
695
踏雪灬无痕
文章数:14
年度积分:50
历史总积分:695
注册时间:2014/10/6
发站内信
发表于:2016/1/4 13:59:52
#3楼
正好今天碰到了这个问题,看来不必纠结了额,谢谢廖老师

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

62.4004