如何将SIMOTION中时间数据类型的变量转换为整型?

问题

在使用SIMOTION时,在一些应用中要求将时间数据类型(Time、Date、TOD、DT)变量的时间元素(如年、月、日、时、分、秒等)输出到其他设备(如PLC、HMI、打印机等)。如何将时间类型变量中的元素转换成整型(UDNIT)输出?

回答

1.Time与Date类型转换成UDINT类型

SIMOTION Easy Basics(SEB)中提供了用于时间数据类型转换的功能块FBConvertTimeToInt、FBConvertDateToInt,可以将 Time和Date类型的变量转换成UDINT格式,其LIBRARY源代码及使用手册可以参考附件。

1

图01. FBConvertTimeToInt、FBConvertDateToInt梯形图表示

2.TOD类型转换成UDINT类型

TOD 类型的变量不能直接转成UDINT格式,不过可以使用命令库中AnyType_toBigByteArray、 BigByteArray_to_AnyType功能块将TOD类型的变量转换成Time类型,再使用第1节中的功能块 FBConvertTimeToInt转化成UDINT类型。

2

图02.TOD到Time数据类型的转换程序

3.DT类型转换成UDINT类型

DT 类型的变量不能直接转成UDINT格式,不过可以使用命令库的DT_TO_DATE、DT_TO_TOD功能块将DT类型的变量中的DATE和TOD部分 分别取出来。DATE类型的变量可以使用第1节中的功能块转化成UDINT类型;TOD类型的变量可以第2节中的方法转换成UDINT类型。

3

图03.DT到UDINT数据类型的转换

内容 下载
SEB LBasic_ConvTime V22 en.pdf 如何将SIMOTION中时间数据类型的变量转换为整型? SEB LBasic_ConvTime V22 en.pdf ( 114 KB )
SEB Library of ConvTime, XML format 如何将SIMOTION中时间数据类型的变量转换为整型? Lbasic_ConvTime.7z ( 16 KB )

表01. 附件

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论