萬(wàn)能試驗(yàn)機(jī)通常僅靠硬件方面抗干擾是不夠的,還需借助軟件方面的一些措施,采用軟硬相結(jié)合的方式提高系統(tǒng)的抗干擾能力。從軟件角度看提高系統(tǒng)的抗干擾能力及其可靠性,可從以下幾個(gè)方面考慮。
1. 經(jīng)由軟件提高系統(tǒng)的可靠性
為提高系統(tǒng)可靠性防止出錯(cuò)造成損失,軟件開(kāi)發(fā)時(shí)應(yīng)考慮有完成系統(tǒng)監(jiān)控功能的電路或軟件——“看門(mén)狗”實(shí)時(shí)自檢軟件或電路模塊,以便在系統(tǒng)運(yùn)行時(shí)及時(shí)發(fā)現(xiàn)可能發(fā)生的故障或錯(cuò)誤,對(duì)能夠自動(dòng)處理的問(wèn)題可以采取自動(dòng)修復(fù)等措施讓系統(tǒng)恢復(fù)正常運(yùn)行,無(wú)法自動(dòng)處理的故障或錯(cuò)誤可采取報(bào)警等方式來(lái)進(jìn)行人工處理,對(duì)極限情況報(bào)警的同時(shí)發(fā)出控制信號(hào)關(guān)閉系統(tǒng)的輸出。
對(duì)于系統(tǒng)輸入通道的信號(hào),采取重復(fù)讀取的方式處理;為防止輸出通道的信號(hào)因干擾發(fā)生變化,即便控制運(yùn)算所得的輸出的值沒(méi)有變化,也須在每一工作循環(huán)都刷新控制輸出,以防出錯(cuò)。
對(duì)于系統(tǒng)通信通道,采取對(duì)關(guān)鍵數(shù)據(jù)進(jìn)行重復(fù)發(fā)送、互相應(yīng)答等方式進(jìn)行;在傳輸?shù)臄?shù)據(jù)上增加冗余的錯(cuò)誤校驗(yàn)位或檢驗(yàn)和等,以便接收端能夠確認(rèn)數(shù)據(jù)是否在傳輸過(guò)程中發(fā)生錯(cuò)誤。
2. 提高軟件自身的可靠性
提高整個(gè)系統(tǒng)的可靠性,不僅要從提高硬件及電路的可靠性技術(shù)出發(fā),而且還應(yīng)充分考慮軟件設(shè)計(jì)的可靠性。在計(jì)算機(jī)控制系統(tǒng)中軟件的可靠性占有重要地位。提高軟件自身的可靠性,應(yīng)該從以下幾個(gè)方面入手:
1) 明確設(shè)計(jì)任務(wù)選取合理方案
軟件總體設(shè)計(jì)時(shí),應(yīng)對(duì)設(shè)計(jì)任務(wù)進(jìn)行細(xì)致的分析調(diào)查,制定詳細(xì)的計(jì)劃。將軟件任務(wù)劃分成相對(duì)獨(dú)立的若干功能模塊,明確各個(gè)模塊的任務(wù)、功能及其他模塊的接口方式。
2) 采用適當(dāng)?shù)脑O(shè)計(jì)方法
根據(jù)需要,軟件總體上采取模塊化結(jié)構(gòu),每一功能模塊也采取自頂向下的結(jié)構(gòu)化設(shè)計(jì),使軟件的邏輯思路清晰,以便于軟件的擴(kuò)充、修改、調(diào)試。
3) 合理選擇編程語(yǔ)言和工具
在選擇編程語(yǔ)言時(shí),首先應(yīng)考慮具體的需求和應(yīng)用場(chǎng)景。通常優(yōu)先考慮采用高級(jí)編程語(yǔ)言,這可以使得編程人員寫(xiě)出語(yǔ)義明確的語(yǔ)句代碼。
4) 做好軟件測(cè)試工作
軟件在初步編制完畢后,還需要進(jìn)行大量的工作來(lái)驗(yàn)證其正確性。任何軟件都不可能一次就成功,而是通過(guò)測(cè)試發(fā)現(xiàn)問(wèn)題反復(fù)修改,逐步完善的過(guò)程。因此,軟件測(cè)試應(yīng)遵循先測(cè)試各子程序,再測(cè)試模塊,最后進(jìn)行整個(gè)軟件系統(tǒng)聯(lián)調(diào)的步驟進(jìn)行,這樣可以及早發(fā)現(xiàn)問(wèn)題并修改,也可降低測(cè)試工作量和費(fèi)用。 |