读取系统时钟问题? 点击:904 | 回复:7



lingse

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:25帖 | 73回
  • 年度积分:0
  • 历史总积分:168
  • 注册:2004年12月29日
发表于:2007-06-11 22:20:00
楼主
我用系统功能块把系统时钟读出来>现在想把时钟中的分钟取出来或把秒钟取出来,怎么写程序?
读出来的时钟是一个日期型,由8个字节组成:年-月-日-时-分-秒-毫秒-星期,有BCD格式保存的.怎么把时\分\秒取出来?



龙志明

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 91回
  • 年度积分:0
  • 历史总积分:381
  • 注册:2006年5月03日
发表于:2007-06-11 22:39:00
1楼
在三菱A和Q系列PLC中用逻辑乘指令WAND将其中的几位单独取出来,再用BIN指令将BCD转成10进制就可以了,不知你用那种PLC???

yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2007-06-12 05:53:00
2楼
在西门子的PLC中直接读取字节就可以了。

lingse

  • 精华:1帖
  • 求助:0帖
  • 帖子:25帖 | 73回
  • 年度积分:0
  • 历史总积分:168
  • 注册:2004年12月29日
发表于:2007-06-12 07:42:00
3楼
我用的是S7-300PLC,关键那读出的是个日期型的,怎么读取字节?

yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2007-06-12 08:04:00
4楼
0字节:年
1字节:月
2字节:日
3字节:小时
4字节:分
5字节:秒
……
那么假设从地址DB1.DBB0地址开始存放的是读取到的数据,那么您直接读取DB1.DBB0就是年,读取DB1.DBB1就是月依次类推。
另外,这些数据是以二进制编码,十进制格式存储的,所以不需要BCD转换。

lingse

  • 精华:1帖
  • 求助:0帖
  • 帖子:25帖 | 73回
  • 年度积分:0
  • 历史总积分:168
  • 注册:2004年12月29日
发表于:2007-06-12 11:57:00
5楼
谢谢~以后有问题,楼上请多多帮忙!

ikkoku

  • 精华:0帖
  • 求助:1帖
  • 帖子:40帖 | 187回
  • 年度积分:0
  • 历史总积分:371
  • 注册:2006年4月07日
发表于:2007-06-16 11:46:00
6楼
关注,但我直接读监控,发现是16进制数存储的,

比如vb100开始存储时间,钟点存在vb103,当前是11点,那么用ascii监控vb103是$11,用16进制监控vb103是16#11,用无符号、有符号监控什么也没有……

ikkoku

  • 精华:0帖
  • 求助:1帖
  • 帖子:40帖 | 187回
  • 年度积分:0
  • 历史总积分:371
  • 注册:2006年4月07日
发表于:2007-06-16 11:47:00
7楼
错了,我的是200的……

热门招聘
相关主题

官方公众号

智造工程师