一、導讀
(1)時鐘指令的認識
西門子S7-200SMART時鐘指令分為設置時鐘和讀取時鐘兩類,通過設置時鐘指令可對CPU的系統時鐘進行修改而通過讀取時鐘指令可讀取CPU的系統時鐘,時鐘指令分為讀取和設置時鐘指令與讀取和設置擴展時鐘指令,如圖1所示。
圖1:時鐘指令(左側為讀取時鐘指令,右側為設置時鐘指令)
①讀取時鐘指令:當指令EN端條件滿足時讀取實時時鐘指令從CPU 讀取當前時間和日期,并將其裝載到從字節地址T 開始的 8字節時間緩沖區中。
②設置時鐘指令:設置實時時鐘指令通過由T 分配的 8字節時間緩沖區數據將新的時間和日期寫入到CPU。
需要注意的是讀取出來的值和需要設定的值均需要進行數據格式的轉換才行。
(2)時鐘指令存儲區格式說明
所有日期和時間值必須采用BCD格式(BCD碼通俗的說法是用16進制的形式來表示2進制數)分配(例如,16#12 代表2012年)。00至99的BCD值范圍可分配范圍為2000至2099的年份;時間緩沖區如圖2所示。
圖2
時鐘指令的管腳T就是緩沖區的起始字節地址,可以由用戶自由設置(在CPU允許的V存儲區范圍內)。如果設置T為VB10,那么讀取時鐘后,“年”的信息就會保存在VB10中,“月”保存在VB11中。
二、時鐘指令應用
接下來我們通過一個簡單的應用示例來充分理解時鐘指令;要求讀取CPU實時時間顯示在上位機上,同時還可以在上位機上設定CPU時間。讀取時間如圖3所示。
圖3:時鐘讀取
調用時鐘讀取指令并以系統時鐘SM0.5觸發,由于讀取出來的均是BCD碼,因此需要通過轉換指令進行轉換過后才是最終的日期時間。
另外還需要進行時間的設定,由于我們需要在上位機上進行時間的設定,考慮到設定的數據格式依然是BCD碼,但是上位機上通常使用的是十進制數,因此我們同樣需要進行轉換之后,再使用其設定地址的低字節進行傳送至各個字節地址中,如圖4所示。
圖4:設定時鐘
三、結語
通過本示例的分享,相信大家已經掌握了其基本的使用。下面為大家分享關于時鐘指令的幾點需要注意的:
(1)進行時鐘的設定時,只需要導通一個周期即可把設定值寫入。不能一直導通EN端,否則讀取時鐘指令的時間將會有錯誤。
(2)調用時鐘指令時需要在EN位中使用SM0.5系統時鐘進行調用。
(3)時鐘指令需要使用連續的8個字節作為時間緩沖區的存儲,其中緩沖區中的第6個字節為保留,并且這連續的8個字節不能和其他存儲區重復使用。
(4)除了通過令設定時鐘之外,還可以通過編程軟件Micro/WIN SMART 設置CPU 的時鐘,必須先建立編程通信連接。在Micro/WIN SMART 菜單中選擇“PLC“→”設置實時時鐘”,打開“PLC時鐘操作”對話框進行設定。
(5)S7-200SMART CPU靠內置超級電容為實時時鐘提供電源緩沖,保持時間為典型值7天,最小值6天。緩沖電源放電完畢后,再次上電后時鐘將停止在缺省值,并不開始走動,所以如果設備停電時間超過一周時,需要添加電池信號板,電池板的時鐘保持時間約為1年。
審核編輯:郭婷
-
cpu
+關注
關注
68文章
10825瀏覽量
211140 -
西門子
+關注
關注
93文章
3008瀏覽量
115633
原文標題:S7-200SMART時鐘指令如何正確應用?資深工程師詳解!??!
文章出處:【微信號:gkongbbs,微信公眾號:工控論壇】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論