s7-300里如何将DWORD格式转换成TIME格式

现在在弄个PID仿真的东西,遇到一个麻烦的事
西门子PID指令里面的积分和微分系数的格式是TIME的
但是我上位机的数据只有DWOED和REAL的
我想通过上位机赋值的方式直接修改PID参数,但不知道如何把这个数据转换成PID可以识别的TIME格式

最佳答案

1、如果想通过上位或触摸屏对PLC中S5TIME类型的参数进行设定,有如下方法:
a、从上位机写整型数INT或实数REAL到PLC,首先该数值需包含以毫秒为单位的时间值,在写入PLC的数据存储区后,利用ITD(Integer to Double Integer)或RND(Real to Double Integer with Rounding Off)将该值转换为双整形,然后将该值写到类型为TIME的变量里,在程序中调用FC40,将TIME转换成S5TIME即可
b、从上位机写WORD到PLC,首先该数值需包含以某时基为单位的时间值,在写入PLC的数据存储区后,用Word Logic下的WOR_W指令将该值与其时基相或,再利用MOVE指令将得到的数值写入S5TIME类型的变量中。
c、如果使用WinCC作为上位软件,或上位软件支持32位带符号浮点数,可以从上位写32位带符号浮点数到PLC中定义为TIME的变量,然后在程序中调用FC40,将TIME转换成S5TIME即可
2、详见下述文档:
《如何在操作面板上设定定时器时间, 同时如何输出定时器的剩余时间?》下载:
http://www2.ad.siemens.com.cn/Download/Upload/AS/FAQ/23992560.zip 
2、参考相关文档:
参见《TIME, DATE and TIMER in STEP 7》下载:
http://d101.d.iask.com/fs/800/1/3afb689f14c1def3889e0e7413fba89e10236930/pdf/Time%2C+Date+and+Timer+in+STEP+7.pdf

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日 下午4:07
下一篇 2018年12月2日 下午4:07

相关推荐