一. Step7中的两种时刻变量 TIME 和 S5TIME
#TIME格局的时刻变量: 占4字节, 本质上是一个interger型变量, 单位ms.
S5#TIME格局的时刻变量: 占2字节, 表明成16进制为 W#16# wxyz ,
其间w表明时基: w=0,1,2,3时, 对应的时基依次为10ms, 100ms, 1s,10s
xyz以BCD码格局表明数值: xyz=123就表明123个时基.规模0~999.
二. WinCC中显现和修正 #TIME 格局变量.
新建32位浮点变量, 调整格局选 FloatToUnsignedDWord. 地址选中PLC中#TIME变量地址, 即可!
此刻, 浮点变量是以ms为单位的时刻值. 如需以s位单位, 线性标定里, 修正量程 使倍数为1000倍.
画面中装备IO文本域, 相关到新建的浮点变量, 即可显现并修正. 内容来自www.dqjsw.com.cn电气主动化技能网
三. WinCC中显现和修正 #S5#TIME 格局变量值.
新建32位浮点数变量, 调整格局选 FloatToSimaticBCDTime, 地址选中PLC中S5TIME地址, 即可!
此刻, 浮点变量是以ms为单位的时刻值. 如需以s位单位, 线性标定里, 修正量程 使倍数为1000倍.
画面中装备IO文本域, 相关到新建的浮点变量, 即可正常显现. 经测验, 不把IO文本域的”输出格局”特点
修正为”字符串” (坚持缺省的”10进制”格局), 相同能够正确修正.
需求留意的是, 因为S5TIME的约束, 并不能一直准确到10ms. 依据输入的值, WinCC会主动将之整定到对应的时基上. 比方: 输入100.5s时, 现已不能用100ms时基(在规模0-99.9s规模可用), 只能用1s的时基, 所以WinCC将输入整定为100.0s并写入PLC.
四. WinCC中界说变量窗口剖析.
上图为WinCC中设置修正S5TIME值的
变量界说图,
变量值: 选32位浮点数,4字节, 此处指WinCC中新建的变量为32位浮点型.
调整格局: 选FloatToSimaticBCDTime, 阐明此Float变量, 经转化为 SimaticBCDTime(ms为单位)类型后, 与PLC中S5TIME变量相相关.
所谓格局调整, 调整方向为: 变量值—>进程值.
进程值地址挑选: 此处指PLC中 S5TIME变量的地址.
线性标定: 指定 “变量值”(WinCC中变量) 与 “进程值”(PLC中变量值并经转化为暂时float型) 的线性转化联系,
所谓的上下限, 并不是说要约束不能超限, 只是是为了得到”线性因子”和”线性偏移量”.
因而, 设定成 [0, 1000] –>[0,1.000] (零点不偏移, 转化因子1000倍),
与设定成 [0, 9990]–>[0,9.990] (也是因子1000), 二者作用是完全相同的!
上面的设置, 显现时的数据流为:
PLC中S5Time变量值 —> 从SimaticBCDTime到Float的类型转化(以ms为单位的数值) —>Float值(ms为单位)线性转化,即缩小1000倍 —-> 转化成果赋值给 TimeTag2变量(32位浮点型)
写入PLC时数据流方向刚好相反:
TimeTag值 —> 扩展1000倍的线性转化 —> 转化成果进行类型转化: 从float到SimaticBCDTime—> 转化得到的S5Time格局, 更新到PLC对应内存.
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/235093.html