共有7條時鐘運算類指令,指令的編號分布在FNC160 - FNC169之間。時鐘運算指令是對時鐘數據進行運算和比較,對PLC內置實時時鐘進行時間校準和時鐘數據格式化操作。時鐘運算指令如表4-16所示。
表4-16 時鐘運算指令
(1)時鐘數據比較指令TCMP (FNC160)
TCMP (P)的功能是比較指定時刻與時鐘數據的大小。
示例及使用:如圖4-66所示,將源操作數[S1.]、[S2.]、[S3.]中的時間與[S.]起始的3點時間數據比較,根據它們的比較結果決定目標操作數[D.]中起始的3點單元中取ON或OFF的狀態。該指令只有16位運算,占11個程序步。它的源操作數可取T、C和D,目標操作數可以是Y、M和S。
(2)時鐘數據加法運算指令TADD(FNC162)
TADD (P)指令的功能是將兩源操作數的內容相加結果送入目標操作數。源操作數和目標操作數均可取T、C和D。TADD為16位運算,占7個程序步。
示例及使用:如圖4-67所示,將[S1.]指定的D10 - D12和D20 - D22中所放的時、分、秒相加,把結果送入[D.]指定的D30 - D32中。當運算結果超過24h時,進位標志位變為ON,將進行加法運算的結果減去24小時后作為結果進行保存。
圖4-66 時鐘數據比較指令的使用
圖4-67 時鐘數據加法運算指令的使用
(3)時鐘數據讀取指令TRD (FNC166)
TRD (P)指令為16位運算,占7個程序步。[D.]可取T、C和D。它的功能是讀出內置的實時時鐘的數據放入由[D.]開始的7個字內。
示例及使用:如圖4-68所示,當X1為ON時,將實時時鐘(它們以年、月、日、時、分、秒、星期的順序存放在特殊輔助寄存器D8013 - 8019中)傳送到D10 - D16中。
圖4-68 時鐘數據讀取指令的使用