1)直接使用STEP7軟件中的相關指令在聯機的情況下直接設定系統時鐘,如下圖所示,選中項目中的站,使用SIMATIC Manager ->Diagnostic/Setting ->Set Time of Day指令設置系統時鐘:
也可打開程序塊或硬件組態,使用plc ->Set Time of Day指令來在線設置系統時鐘,畫面如下:
勾選“Take from PG/PC”,使用計算機時鐘同步PLC時鐘,然后點擊“Apply”按鈕完成。
2)使用SFC0來設置系統時鐘
創建一個DB塊DB1,打開DB1塊定義一個DATE_AND_TIME的變量如圖所示:
打開符號表定義DB1的符號名:
這里先介紹一下DATE_AND_TIME變量的格式,其由八個字節組成分別代表年、月、日、時、分、秒、毫秒,最后一個字節0-3位代表星期,4-7為表示毫秒,是以BCD碼表示的。
然后打開OB1,首先將需要設定的時間以16進制BCD碼的形式賦值給定義的DATA_AND_TIME變量的各個字節,最后一個字節不需要設定,系統會自己計算并賦值,例如設定的時間為07年8月15日13點20份10秒。
在程序中調用SFC0,將存放設定時間的DATA_AND_TIME變量以符號名的方式賦給SFC0的PDT形參,返回變量賦值給MW100,這樣當M0.0由0到1時SFC0被執行。
在程序運行后打開監視和修改變量表即可觀察到最后一個字節DB1.DBB7的低4位已經被系統自動計算為4即星期三。
為了觀察系統時間是否被正確設定,我們在DB1中再定義一個DATA_AND_TIME的變量如圖所示:
在OB1中調用SFC1讀取系統時鐘并將系統時間傳送給“DB_time”.readtime變量:
打開Monitor/Modify Variables表,添加變量,通過按動修改變量按鈕將M0.0的狀態改為true,然后通過按下監視變量按鈕觀察變量狀態