電氣測控系統(tǒng)的改進――軟PLC
(4)交叉開發(fā)調(diào)試算法研究
非嵌入式通常采用本機開發(fā)、本機調(diào)試、本機運行的開發(fā)方式;而嵌入式開發(fā)需要交叉開發(fā),絕大多數(shù)采用宿主機開發(fā)、宿主機和目標機之間交叉調(diào)試、目標機運行的方式開發(fā)。
交叉開發(fā)調(diào)試算法:
在宿主機平臺上編寫程序代碼;
固化監(jiān)控器至目標機上;
連接宿主機和目標機;
編譯鏈接應用程序,生成可執(zhí)行代碼;
將可執(zhí)行代碼下載到目標機;
使用交叉調(diào)試器進行調(diào)試;
如果程序調(diào)試沒有發(fā)現(xiàn)異常,轉(zhuǎn)至11);
調(diào)試程序時發(fā)生錯誤,利用交叉調(diào)試器定位錯誤;
修改錯誤代碼;
重復4)-10);
將目標機程序固化在目標機上。
以測試繼電器TV5實驗為例。其要求如下:每次測試5個繼電器,每個繼電器的動作頻率是5s開,5s關(guān)。根據(jù)要求,試驗最好的結(jié)果是每個繼電器用6個TV負載,即每個TV負載是5s開,55s管。輸入點有:開關(guān),檢出,復位M個,停止次數(shù)設(shè)定量N次,動作頻率設(shè)定L個,常開/觸點轉(zhuǎn)換。其中,M=測試產(chǎn)品個數(shù),N、L個數(shù)由實際需要確定。其算法如下:
設(shè)定一個循環(huán)周期,使累積誤差最小;
在循環(huán)周期內(nèi)設(shè)計動作時間和動作頻率,以及動作次數(shù);
設(shè)計相關(guān)聯(lián)動、互鎖、緊急停車和復位等功能;
執(zhí)行動作與反饋根據(jù)產(chǎn)品相關(guān)標準進行比較,判定結(jié)果和設(shè)定中斷程序。
采用模塊化程序設(shè)計編程,各模塊均由主程序調(diào)用,且為了程序不出誤動作,還要考慮電流諧波和沖擊對高電源的要求。用了算法優(yōu)化設(shè)計,5個繼電器每隔2s一個動作,5個剛好10s。其中一個動作頻率程序如下:
與之對應的動作如下:
評論