s7200cn时钟问题

请教高手:S7224CN里的时钟(包含年,月,日,时,分,秒)用那个指令读出到VW变量中?最好有梯形图程序。谢谢!   我的邮箱:liu337655700@163.com

问题补充:
胡雨学长:你的回答是很详细,但我对AENO,LRD,LPS,LPP这几个指令还是不太明白?你能发个梯形图吗?谢谢!liu337655700@163.com

最佳答案

TITLE=程序注释
 // 
 // 本程序简要地举例说明实时时钟的读/写指令用法。
 // 
 // 要注意的要点:
 // 
 // 1. 设置时钟指令使用沿触发
 // 
 // 2. 读时钟指令使用SM0.5调用
 // 
 // 编程设置时钟一般只在必要时才可进行,如通过HMI(人机操作界面)设定时间、日期时。注意TD200根本不需要编程,只要做好组态设置就可以直接利用TD200修改S7-200的实时时钟。
 // 
 // 关于十进制整数的时间数据与BCD格式之间的转换,在西门子的ProDIS网站上,有一个FAQ19294366谈到使用一个已经编出的子程序进行转换。这个子程序可以添加到Micro/WIN的用户指令库中,并且可以免费下载。
 Network 1 // 将当前时间设定到S7-200当中 ----> VB100:年  VB101:月  VB102:日  VB103:时  VB104:分  VB105:秒  VB106必须是0  VB107:星期   
 // 将需设置的时间移动到VB100--VB107
 // 注意设定的时间是BCD格式(16进制数)
 LD     M0.0
 MOVB   16#03, VB100
 MOVB   16#09, VB101
 MOVB   16#11, VB102
 MOVB   16#09, VB103
 MOVB   16#30, VB104
 MOVB   16#0, VB105
 MOVB   16#0, VB106
 MOVB   16#04, VB107
 Network 2 // 通过M0.0的一个上升沿将上一步设定的时间写入到S7-200的时钟当中。
 // 当M0.0出现一次上升沿,将上面所设定的时间写入到PLC当中
 LD     M0.0
 EU
 TODW   VB100
 Network 3 // 设定时间后,可以通过这句话实时读取PLC当中的时间
 // 从PLC中读出当前的时间
 LD     SM0.5
 TODR   VB110
 Network 4 // 将读到的结果从BCD码格式转换到整数格式。 ----> VW200:年  VW202:月  VW204:日  VW206:时  VW208:分  VW210:秒  VB214:星期  
 // 将读出的时间转换到VW200--VW214
 LD     SM0.0
 LPS
 BTI    VB110, VW200
 AENO
 BCDI   VW200
 LRD
 BTI    VB111, VW202
 AENO
 BCDI   VW202
 LRD
 BTI    VB112, VW204
 AENO
 BCDI   VW204
 LRD
 BTI    VB113, VW206
 AENO
 BCDI   VW206
 LRD
 BTI    VB114, VW208
 AENO
 BCDI   VW208
 LRD
 BTI    VB115, VW210
 AENO
 BCDI   VW210
 LRD
 BTI    VB116, VW212
 AENO
 BCDI   VW212
 LPP
 BTI    VB117, VW214
 AENO
 BCDI   VW214
 

提问者对于答案的评价:

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

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

相关推荐

发表回复

登录后才能评论