step7中 定时器中 实型值变S5Time类型

以一个实型值变量保存了求出的十进制时间值,然后想用这个时间控制定时器。怎样把这个实型值转换成S5Time类型?直接把实型MOVE给S5Time输出值都为0,那就要先转换成整形,那怎样把实型转为整形?十进制整形变量MOVE给S5Time是按十六进制,那再控制定时器的时候时间就不是原先的十进制时间而是十六进制。我该怎么控制还是用原先十进制控制定时器?

最佳答案

1、怎样把这个实型值转换成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、32位带符号浮点数,可以从上位写32位带符号浮点数到PLC中定义为TIME的变量,然后在程序中调用FC40,将TIME转换成S5TIME即可。
2、详见:
《如何在操作面板上设定定时器时间, 同时如何输出定时器的剩余时间?》下载:
http://www2.ad.siemens.com.cn/Download/Upload/AS/FAQ/23992560.zip 

参见《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/plc249540.html

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

相关推荐