讀出S7-1500 CPU的運行時間有多種方式,下面分別介紹這幾種方式。
1、通過OB1的啟動參數(shù)讀出運行時間在非優(yōu)化的OB1啟動信息中帶有OB1的運行時間,如圖1所示。
圖1.讀出非優(yōu)化的OB1中運行時間
將啟動信息參數(shù)傳遞到全局變量中就可以讀出CPU的上次掃描、最小、最大掃描時間,編程非常方便。
2、調(diào)用RD_SINFO函數(shù)讀出運行時間
如果使用優(yōu)化的OB1,啟動信息簡化而沒有這些運行信息,如圖2所示,則必須調(diào)用函數(shù)讀出。
圖2優(yōu)化OB1的啟動信息
例如在OB1中調(diào)用RD_SINFO函數(shù)讀出運行時間,程序如圖3所示。參數(shù)TOP_SI為當(dāng)前OB1的啟動信息,
數(shù)據(jù)類型為SI_classic,需要手動鍵入,ZI1為上次掃描時間,ZI2_3包含最小、最大掃描時間,低字為最小掃描時間,
高字為最大掃描時間,示例中分別傳送到MW10和MW12中。START_UP_SI為暖啟動OB的啟動信息,
示例中沒有進行引用。
圖3調(diào)用RD_SINFO函數(shù)
3、調(diào)用RT_INFO函數(shù)讀出運行時間
通過函數(shù)RT_INFO也可以讀出CPU的運行時間,示例程序如圖4所示。
圖4調(diào)用RT_INFO函數(shù)
通過模式1、2、3可以讀出CPU的上次掃描、最小、最大掃描時間,在這三種模式下,參數(shù)INFO的數(shù)據(jù)類型為LTIME,可以直接讀出。也可以通過其他模式讀出運行時間的百分比。
4、調(diào)用RUNTIME指令讀出運行時間
通過指令RUNTIME可以從參數(shù)RET_Val直接讀出CPU的運行時間,單位為秒,MEM為中間保存程序運行的存儲器,兩個參數(shù)類型都是LREAL,除此之外還可以讀出一段程序的運行時間。如圖5所示。
圖5 RUNTIME指令
審核編輯:湯梓紅
-
cpu
+關(guān)注
關(guān)注
68文章
10863瀏覽量
211763 -
runtime
+關(guān)注
關(guān)注
0文章
17瀏覽量
2173 -
S7-1500
+關(guān)注
關(guān)注
3文章
300瀏覽量
6407
原文標(biāo)題:怎樣讀S7-1500 CPU的運行時間
文章出處:【微信號:從零學(xué)PLC,微信公眾號:從零學(xué)PLC】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論