S7中我想把实数类型的变量转换为时间量再乘上一个变量,再输出为TIME类型的变量,应该怎么转换?还要考虑时基,转换为BCD码啊,,哪位前辈给清楚说明下。小弟还是初学者。
最佳答案
S7能够转换为S5time数据类型:
1.从上位机写整型数INT或实数REAL到PLC,首先该数值需包含以毫秒为单位的时间值,在写入PLC的数据存储区后,利用ITD(Integer to Double Integer)或RND(Real to Double Integer with Rounding Off)将该值转换为双整形,然后将该值写到类型为TIME的变量里,在程序中调用FC40,将TIME转换成S5TIME即可。
2.从上位机写WORD到PLC,首先该数值需包含以某时基为单位的时间值,在写入PLC的数据存储区后,用Word Logic下的WOR_W指令将该值与其时基相或,再利用MOVE指令将得到的数值写入S5TIME类型的变量中。
3.如果使用WinCC作为上位软件,或上位软件支持32位带符号浮点数,可以从上位写32位带符号浮点数到PLC中定义为TIME的变量,然后在程序中调用FC40,将TIME转换成S5TIME即可。
FC33用于S5TIME到TIME的转换。FC40用于TIME到S5TIME的转换。这两个块位于Libraries\Standard Library\IEC Function Blocks路径下,关于功能块的描述详见在线帮助。
4《间step7中有关时间和定时器的使用和例程》下载:
http://www2.ad.siemens.com.cn/Download/Upload/AS/application/A0019.zip
见《TIME, DATE and TIMER in STEP 7》下载:
http://d101.d.iask.com/fs/800/1/767fdba495f6c372f558a3b809cdb7aa10236930/pdf/Time%2C+Date+and+Timer+in+STEP+7.pdf
5、有关FC40,相关资料:
S7-300400的系统软件和标准功能>下载:
http://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=1023
提问者对于答案的评价:
很好
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc233787.html