技術(shù)文章
介紹了幾種如何讀S7-1500 CPU的運(yùn)行時間的方法
閱讀:1942 發(fā)布時間:2015-10-29讀S7-1500 CPU的運(yùn)行時間有很多種方式,,分別介紹如下幾種方式,。
1 通過OB1的啟動參數(shù)讀出運(yùn)行時間 在非優(yōu)化的OB1啟動信息中帶有OB1的運(yùn)行時間,,如圖1所示,。
圖1.讀出非優(yōu)化的OB1中運(yùn)行時間
將啟動信息參數(shù)傳遞到全局變量中就可以讀出CPU的上次掃描、zui小,、zui大掃描時間,,編程非常方便。
2 調(diào)用RD_SINFO函數(shù)讀出運(yùn)行時間
如果使用優(yōu)化的OB1,,啟動信息簡化而沒有這些運(yùn)行信息,,如圖2所示,則必須調(diào)用函數(shù)讀出,。
圖2優(yōu)化OB1的啟動信息
例如在OB1中調(diào)用RD_SINFO函數(shù)讀出運(yùn)行時間,,程序如圖3所示。參數(shù)TOP_SI為當(dāng)前OB1的啟動信息,,
數(shù)據(jù)類型為SI_classic,,需要手動鍵入,ZI1為上次掃描時間,,ZI2_3包含zui小,、zui大掃描時間,低字為zui小掃描時間,,
高字為zui大掃描時間,,示例中分別傳送到MW10和MW12中,。START_UP_SI為暖啟動OB的啟動信息,
示例中沒有進(jìn)行引用,。
圖3調(diào)用RD_SINFO函數(shù)
3 調(diào)用RT_INFO函數(shù)讀出運(yùn)行時間
通過函數(shù)RT_INFO也可以讀出CPU的運(yùn)行時間,,示例程序如圖4所示。
圖4調(diào)用RT_INFO函數(shù)
通過模式1,、2,、3可以讀出CPU的上次掃描、zui小,、zui大掃描時間,,在這三種模式下,參數(shù)INFO的數(shù)據(jù)類型為LTIME,,可以直接讀出,。也可以通過其他模式讀出運(yùn)行時間的百分比。
4調(diào)用RUNTIME指令讀出運(yùn)行時間
通過指令RUNTIME可以從參數(shù)RET_Val直接讀出CPU的運(yùn)行時間,,單位為秒,,MEM為中間保存程序運(yùn)行的存儲器,,兩個參數(shù)類型都是LREAL,,除此之外還可以讀出一段程序的運(yùn)行時間。如圖5所示,。