![PLC编程及案例手册](https://wfqqreader-1252317822.image.myqcloud.com/cover/804/41806804/b_41806804.jpg)
4.12 时钟指令
4.12.1 时钟指令说明
(1)时钟指令格式和功能
时钟指令格式和功能如表4-70所示。
表4-70 时钟指令格式和功能
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/b4-70.jpg?sign=1739404864-h0WIPOrxAoDq0DrSzGcsanLeXZu9kF0f-0-0fb4283654efceeedaac7dfbdcddbb0b)
内置时钟的时钟指令设有8个字节的时钟缓冲区,其格式如表4-71所示。
表4-71 时钟缓冲区的格式
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/b4-71.jpg?sign=1739404864-UUu7xwJNlnCNZeQtJQmiIZY3PtiI6am6-0-df4628082fd80d0b27c4a056959f7821)
(2)例说读取实时时钟指令
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/Section0029.jpg?sign=1739404864-JeS0OxzyAIjrgvbTRUihLrKBZkodjssT-0-ca4362691f3ae75fd5e6cd24b783aa23)
如图4-90所示。
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/4d90.jpg?sign=1739404864-73IaIctTBGGufAiY5Nmp0QRTAn1MLFoi-0-a3423cf45c8c2872c7edbd947ea8323a)
图4-90 梯形图
① 从CPU读取当前时间和日期,并将其装载到从字节地址VB0开始的8个字节时间缓冲区中。其中VB0~VB7存放的分别是年、月、日、小时、分钟、秒、空、星期。
② VB4中存放的分钟,采用BCD格式编码,通过B_I和BCD_I指令将VB4中的BCD码转换成整数存入VW20。
③ 利用比较指令,当分钟计时到55时,Q0.0启动。
(3)例说设置实时时钟指令
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/Section0029.jpg?sign=1739404864-JeS0OxzyAIjrgvbTRUihLrKBZkodjssT-0-ca4362691f3ae75fd5e6cd24b783aa23)
如图4-91所示,在利用PLC进行控制时,为能准确地控制时间,需要将CPU的时钟设定成正确的时钟。
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/4d91.jpg?sign=1739404864-8tSzGbZXXPDpB3VG7AbA7MUv43OK3ojN-0-7f90da1e3410b9229030bab89b3e549e)
图4-91 控制程序
① 初始化,将16#20050408存入VD0,将16#59000002存入VD4。VB0~ VB7这8个字节缓冲区存放时间数据。
② 当I0.0接通时,将VB0开始的8个字节存放的新的时间和日期写入到CPU。8个字节中,每个字节存放的数据的具体含义如表4-72所示。
表4-72 每个字节存放的数据的具体含义
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/b4-72.jpg?sign=1739404864-8eWGSKfrmdAS8sLowJBTIj2cMATffUwn-0-8df5b38e812fba5dc32bc7c99369b413)
③ 当I0.1接通时,可以读取实时时钟,存入以VB20开始的8个字节中。
4.12.2 综合实例
综合实例——定时闹钟
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/Section0019.jpg?sign=1739404864-509LqPrQKkq859QLrtCaBSgQObCwvA2B-0-dd3e4aaf59c4236c30a99a7339482948)
用PLC控制一个闹钟,要求除周六、日外,每天早上6:30响15s,按下复位按钮闹钟停止,不按复位按钮,每隔1min再响15s,共响3次结束。
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/Section0004.jpg?sign=1739404864-QozPU3npGgNgpqJISjLIjpg4L6mqvvKF-0-d3713c2dcb348b3c9781c319cfa7313a)
元件说明见表4-73。
表4-73 元件说明
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/b4-73.jpg?sign=1739404864-u26VoMJHLWmkBLZ6K0kWUaLyXeTTu9zi-0-186892b2f9a413f43617afa9e4aada61)
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/Section0015.jpg?sign=1739404864-DjlJN6AK0nAFvCldSjOCrDHet9dQ9EAT-0-2444cb7483d4ab3611a5814354d5d076)
控制程序如图4-92所示。
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/4d92.jpg?sign=1739404864-FKorVLwG2ApPI3BcaXpyyYCg7H8W7wCZ-0-9f5a1a3da6803d14ad1cede439fb1a81)
图4-92 控制程序
![](https://epubservercos.yuewen.com/95F10D/21838926108253506/epubprivate/OEBPS/Images/Section0029.jpg?sign=1739404864-JeS0OxzyAIjrgvbTRUihLrKBZkodjssT-0-ca4362691f3ae75fd5e6cd24b783aa23)
① 执行READ指令,将PLC中的实时时钟的时间传送到VB100~VB107中,并执行B_I、BCD_I指令,将小时(VB103)、分钟(VB104)、秒(VB105)的BCD数转换成整数分别放在VW120、VW122和VW124中。
② 当时间为06时30分00秒时,M0.0得电,当既不是星期六(VB107≠7)也不是星期日(VB107≠1)时,M0.1得电自锁。
③ M0.1得电,Q0.0得电,闹钟开启,同时T37、T38开始计时。15s后,T38得电常闭触点断开,Q0.0失电。T37延时1min断开一次,C0对T37接通次数计数,当计数值为4时,C0常闭触点断开M0.1,并对C0复位。
④ 若在响铃时按下复位按钮I0.0,I0.0得电其常闭触点断开,M0.1失电,Q0.0失电,闹钟停止。