整数INT_时间S5Time及Time相互转换.docVIP

  • 8
  • 0
  • 约1.01千字
  • 约 5页
  • 2017-03-07 发布于重庆
  • 举报
整数INT_时间S5Time及Time相互转换

整数INT_时间S5Time及Time相互转换的困惑 时间S5Time是16位数据,BCD码格式: 时间Time是32位数据,类似于双整数DINT: 由此可见,三者之间的转换即是整数INT、双整数DINT及BCD码之间的转换。可以根据数据结构特点,自己编程实现相互转换,这样比较复杂。利用库函数FC33/FC40是最简单方便的。方法如下:? ?1. 整数INT到时间S5Time的转换方法:? ?INT - I_DI指令 - DINT - MOVE指令 - Time - 库函数FC40 - S5Time。 2. 整数INT到时间Time的转换方法:INT - I_DI指令 - DINT - MOVE指令 - Time。如图示: 3. 时间S5Time到整数INT的转换方法:? ?S5Time - 库函数FC33 - Time - MOVE指令 - DINT - 取其高字部分,用MOVE指令 - INT。 主题:回复:CP341做从站modbus RTU与DCS通讯,给DCS的modbus地址怎么确定 2012-09-08 21:29:124楼 现在的进展是: ?PLC DCS(Honeywell的PKS)接收的modbus地址 ?DB2.DBD0 00001 ?DB2.DBD4 00003 ?DB2.DBD8 00005 ?DB2.DBD12 00007 ?DB2.DBD16 00009 ?DB2.DBD20 000011 ?DB2.DBD24 000013 ?DB2.DBD28 000015 ?DB2.DBD32 000017 ?DB2.DBD36 000019 ?DB2.DBD40 000021 ?DB2.DBD44 000023 ?DB2.DBX46.0 000024?8 ?DB2.DBX46.1 000024?9 ?DB2.DBX47.4 000024?4 ?DB2.DBX47.5 000024?5 ?DB2.DBX47.6 000024?6 ?DB2.DBX47.7 000024?7 ?模拟量是DB块的地址除2加1???例如:DB2.DBD4 4/2+1 3 得出modbus地址00003 ?数字量是由一个字的16个位来确定的,且前8位和后8位调换??例如DB2.DBW46有16个位,到DCS后前8个位是8-15,后8个位是0-7 ?我的思路对吗?

文档评论(0)

1亿VIP精品文档

相关文档