西門子plcs7300CPU316延時中斷組織塊的應用
西門子plc的普通定時器的定時精度較差,點擊兩次10.2對應的小方框,OB40被允許執行如果需要高精度的翅時,可以使用西門子plcs7300CPU316延時中斷組織塊OB。用SFC2“SRT_DINT”啟動延時中斷, 延遲時間為1~60000ms,間到時觸發中斷, 調用SFC 32指定的OB。CPU316及以下的CPU只能使用OB 20。
1、硬件組態
用新建項目向導生成一個名為“OB 20”的項目,西門子plcCPU模快的型號為CPU316-2DP打開硬件組態工具HW Config, 將硬件目錄中名為I4xNAMUR, Ex”的4點DI模塊插入4號槽,自動分配的DI模塊的字節地址為0.雙擊該模塊,打開它的屬性對話框(見圖)。用復選框啟用硬件中斷,設置10.0產生上升沿中斷。
2.程序設計
在OBI中調川SFC 34“QRY_DINT”米查詢延時中斷的狀態字STATUS(見圖) ,查詢的結果保存在MW 8, 其低字節為MB 9.OB_NR是延時中斷OB的編號, RET_VAL為SFC執行時的錯誤代碼,為0時無錯誤。在延時過程中, 可以用10.1調用SFC 33“C AND INT”米取消延時中斷過程。在的上升沿觸發硬件中斷, CPU調用OB 40, 在OB 40中調用SFC32“SRT_DINT”啟動延時中斷(見圖) , 延時時間為10s。從LD 12開始的8B臨時局剖變量是調用OB 40的日期時間值, 用MOVE指令保存其中的后4個字節LD 16。10S后延時時間到,CPU調用SFC32指定的OB20。在OB20中用MOVE指令保存調用OB20的日期時間值后4個字節。同時將Q4.0置位,并通過PQB4立即輸出。可以用I0.2將Q4.0復位。
仿真實驗
打開仿真軟件PLCSIM,將程序和組態軟件信息下載到仿真PLC.切換到RUN-P模式是,M9.4馬上變為1狀態,表示已經下載到CPU中。
執行PLCSIM的菜單命令“Execute”-“Trigger Error OB”-“Hardware Interrupt(OB40-OB47)”,在“Hardware Interrupt OB(40-47)”對話框中,輸入模塊的起始字符0和模塊內的位置地址0.單擊“Apply”按鈕,I0.0產生硬件中斷,CPU調用OB40,M9.2變為1狀態,表示正在執行SFC32啟動的時間延時。
在SIMATIC管理器中生成變量表,單擊工具欄上的監視按鈕,啟動監控功能。MD20是在OB40中讀出的BCD格式的時間值,后1位為星期的代碼,5表示星期4,10s的延時時間到時,CPU調用OB20,M9.2變成0狀態,表示延時結束時。OB20中的程序將Q4.0置為1狀態,并且用MOVE指令立即寫入DO模塊。可以用I0.2復位Q4.0。在OB20中保存在MD4的當前值為25分19秒643毫秒,與OB40中保存的時間值相減,可知定時精度是相當高的。
在延時過程中用仿真軟件將I0.1置位1,M9.2變為00狀態,表示OB20的延時被取消,定時時間到不會調用OB20
總結:以上內容就是小編為大家介紹的西門子plcs7300CPU316延時中斷組織塊的應用,本公司是西門子plc代理商,如果您有這方面的任何需求,歡迎大家咨詢容感電氣,我們將給您真誠的服務。
標題:西門子plcs7300CPU316延時中斷組織塊的應用 地址:http://m.511997.cn/hangye/3922.html