呂猛,段焜,宋陸昊
(江蘇安全技術(shù)職業(yè)學(xué)院,徐州 221004)
AT89C52在單片機(jī)中具備低電壓、高性能的優(yōu)點(diǎn),但是在使用現(xiàn)有的可靠性評估系統(tǒng)時,經(jīng)常會出現(xiàn)維護(hù)成本過高、數(shù)據(jù)計算的準(zhǔn)確性較差等問題,使用此類評估系統(tǒng)對AT89C52單片機(jī)的多機(jī)通信功能進(jìn)行評估,則會導(dǎo)致可靠性的計算結(jié)果不準(zhǔn)確。對于可靠性的評價直接決定了整個系統(tǒng)有效性,因此需要對其進(jìn)行實(shí)時測試,以保證AT89C52單片機(jī)在執(zhí)行多機(jī)通信功能時可以確保指令能夠被迅速、穩(wěn)定地執(zhí)行,不會因AT89C52單片機(jī)自身的問題,導(dǎo)致系統(tǒng)受損,因此需要設(shè)計單片機(jī)多機(jī)通信功能的可靠性評估系統(tǒng)。
文獻(xiàn)[1]主要解決了大功率電子設(shè)備中的種種問題,在人工智能技術(shù)的作用下,通過硬件與軟件的雙重結(jié)構(gòu),設(shè)計了一個網(wǎng)絡(luò)體系總體框架,并在該框架的基礎(chǔ)上,識別電子信號的智能傳輸數(shù)據(jù),解讀信號數(shù)據(jù),并自動化輸出硬件指令的加載模式。通過軟件結(jié)構(gòu)將以上步驟連接在一起,實(shí)現(xiàn)設(shè)備的自動化評估。文獻(xiàn)[2]則是以轉(zhuǎn)子動力學(xué)為基礎(chǔ),開發(fā)了現(xiàn)代信號技術(shù)的處理標(biāo)準(zhǔn),并結(jié)合大數(shù)據(jù)挖掘技術(shù),評估設(shè)備運(yùn)行與維修的標(biāo)準(zhǔn),使用分布式數(shù)據(jù)采集裝置,建立多機(jī)通信的監(jiān)測網(wǎng)絡(luò),在多元信息融合中構(gòu)建通信頻道的可靠性評估系統(tǒng)。以上兩種系統(tǒng)均是對機(jī)械設(shè)備的狀態(tài)進(jìn)行可靠性評估,與本文的系統(tǒng)具備一定的相似性,但是不能直接應(yīng)用于現(xiàn)有的AT89C52單片機(jī)多機(jī)通信可靠性評估方式。本文在設(shè)計系統(tǒng)時,從軟件與硬件的雙重角度出發(fā),設(shè)計一種可以自動化評估AT89C52單片機(jī)當(dāng)前狀態(tài)的評估監(jiān)測系統(tǒng)。
在AT89C52單片機(jī)中,大致有40個引腳和32個外部雙向端口,圖1中的引腳結(jié)構(gòu)為節(jié)選部分。在這些工作系統(tǒng)中,可以選擇非易失性的程序作為數(shù)據(jù)存儲器的主要編程結(jié)構(gòu)。將具備獨(dú)立鎖的定位器放置在代碼區(qū)內(nèi),完成系統(tǒng)編程的讀寫[3]。設(shè)定該單片機(jī)的工作電壓為4.5 V左右,上下波動誤差不大于0.3 V。此時其引腳配置如圖1所示。
在圖1所示的引腳中,P1.0-P1.9接口均為8bit的雙開輸入輸出接口,也是數(shù)據(jù)總線的復(fù)用地址。當(dāng)這些引腳作為單片機(jī)的輸入接口時,可以在驅(qū)動邏輯門上填寫一個高阻抗的輸入端作為外部訪問的傳輸?shù)刂贰.?dāng)這9個引腳作為單片機(jī)的輸出接口時,則可以接續(xù)程序指令,在校驗(yàn)過程中,與外部的電阻相連,并作為高電平的輸出端口,將內(nèi)部電阻提高到一定的范圍之內(nèi)[4,5]。而AD0-AD9接口則可以通過振蕩器作為地址存儲裝置,當(dāng)Flash動畫播出時,編程脈沖會通過特殊功能寄存在AD0的復(fù)位器內(nèi),并在外部程序的執(zhí)行過程中,提高指令讀取效率。通過這樣的引腳配置,可以在保證安全性的同時,大幅度提高該系統(tǒng)的運(yùn)行效率。
圖1 單片機(jī)引腳配置
在基于AT89C52單片機(jī)多機(jī)通信的可靠性評估系統(tǒng)內(nèi),需要將外圍電路與內(nèi)部的時鐘振蕩裝置相連接,組成一個復(fù)位電路作為單片機(jī)的主要電路結(jié)構(gòu)[6,7]。多機(jī)通信的數(shù)據(jù)接收電路與數(shù)據(jù)發(fā)送電路結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)電路結(jié)構(gòu)圖
如圖2所示,電容C1與電容C2共同構(gòu)成了數(shù)據(jù)接收電路的時鐘結(jié)構(gòu),在電容C3的阻攔下,可以直接通過電源對單片機(jī)內(nèi)部進(jìn)行復(fù)位處理[8]。電容C4與電阻R1則是用于快速恢復(fù)低電平的上拉電阻,滑阻Rt作為一個獨(dú)立控制功能的控制器,用以控制數(shù)據(jù)發(fā)動的頻率。以上電路設(shè)計可以大幅度降低硬件設(shè)計的復(fù)雜度,并提高系統(tǒng)的運(yùn)行準(zhǔn)確性。
多機(jī)通信功能通常會涉及主機(jī)與分機(jī)之間的連接機(jī)制,在一個此類系統(tǒng)內(nèi),通常具備一個主機(jī)與若干個從機(jī),其間會有諸多語音數(shù)據(jù)、實(shí)時數(shù)據(jù)以及通信數(shù)據(jù)作為指令。在這些指令內(nèi),想要評估其可靠性,還需要建立一個通信傳輸?shù)霓D(zhuǎn)換模型,以判斷數(shù)據(jù)在主從機(jī)之間的傳入與輸出單元[9,10]。此時需要設(shè)定各任務(wù)的狀態(tài)轉(zhuǎn)換結(jié)構(gòu),如圖3所示。
如圖3所示,將多機(jī)通信的可靠性評估整體分為四個狀態(tài),分別是休眠狀態(tài)、提前準(zhǔn)備狀態(tài)、就緒狀態(tài)、開始運(yùn)行、任務(wù)中斷狀態(tài)。這五個狀態(tài)可以依據(jù)相對應(yīng)的參數(shù)相互轉(zhuǎn)換。其中休眠狀態(tài)主要指任務(wù)在中央處理器內(nèi)被終止或由于自身原因停止,導(dǎo)致的無法繼續(xù)接受任務(wù)的管理體系。提前準(zhǔn)備狀態(tài)指雖然當(dāng)前狀態(tài)下中央處理器內(nèi)沒有任何任務(wù)指標(biāo),但是隨時都可以接收任務(wù),而不是像整體休眠一樣的被迫停止?fàn)顟B(tài)。就緒狀態(tài)指任務(wù)完成的所有前提條件都已經(jīng)準(zhǔn)備就緒,如果按下開始鍵,隨時都可以運(yùn)行任務(wù),并且已經(jīng)對多機(jī)通信功能的優(yōu)先級排序完畢,不會由于排序問題進(jìn)入錯誤界面。開始運(yùn)行狀態(tài)則是已經(jīng)按下開始鍵,正在完成任務(wù)的狀態(tài),該狀態(tài)的持續(xù)時間是一定的,不會因?yàn)椴僮髡咦陨淼挠绊懚l(fā)生變化,其時間單位只因系統(tǒng)自身的算法簡潔性以及多機(jī)通信下的并發(fā)數(shù)量而發(fā)生變化[11,12]。任務(wù)中斷功能,可以分為兩種情況,其中一種是由于系統(tǒng)錯誤導(dǎo)致的任務(wù)被迫停止,另一種則是由于任務(wù)運(yùn)行完畢導(dǎo)致的任務(wù)中斷。這兩種任務(wù)中斷均表現(xiàn)為一種形態(tài),即中央處理器內(nèi)暫時沒有任務(wù)排序,也不是被迫休眠的狀態(tài),與提前準(zhǔn)備階段類似,隨時可以繼續(xù)開始系統(tǒng)的運(yùn)行。
圖3 任務(wù)狀態(tài)轉(zhuǎn)換
在多機(jī)通信內(nèi),對多任務(wù)下的調(diào)度優(yōu)先級管理是十分有必要的,可以通過函數(shù)的方式,求解最優(yōu)的調(diào)度順序。在數(shù)據(jù)的輸出層內(nèi),可以以加權(quán)的方式計算神經(jīng)元的權(quán)值參數(shù):
式中:
f i(p)—神經(jīng)元的權(quán)值參數(shù);
h ji(n)—權(quán)值矩陣內(nèi)第i行的第j個元素;
d0(p)—神經(jīng)元的輸入誤差;
km—該網(wǎng)絡(luò)的整體評估系數(shù)[13]。
通過權(quán)值參數(shù),計算多任務(wù)下的調(diào)度優(yōu)先級排序,可以得到函數(shù)為:
式中:
H m(x)—輸出層在多機(jī)通信內(nèi)的調(diào)度排序函數(shù)值;
f j2(p)—第j個神經(jīng)元的權(quán)值參數(shù);
kj—輸出層的整體維度。
此時的自變量與初值需要滿足:
式中:
f(xn+1)至f(x0)均為自變量的不同單位函數(shù)值[14]。在以上對比排序下,可以得到各任務(wù)的調(diào)度系數(shù),將多個任務(wù)進(jìn)行排序,從而得到其優(yōu)先級排序。
在系統(tǒng)內(nèi),還需要通過一個整體的算法流程,對以上內(nèi)容進(jìn)行總結(jié),并提取出局部最優(yōu)解,作為系統(tǒng)通信的算法結(jié)構(gòu),本文的可靠性評估算法流程如圖4所示。
如圖4所示,需要依據(jù)參數(shù)與函數(shù)值判定是否需要重置密碼或者更新子機(jī)與主機(jī)中的數(shù)據(jù)。對于參數(shù)值,可以使用公式(4)計算:
圖4 算法流程
式中:
?wd(k)—參數(shù)值的變化量,即引入局部梯度定義的參數(shù)值;
h(k)—第k個神經(jīng)元下的權(quán)值信號;
m2(k)—激活導(dǎo)數(shù)的輸出值;
ηj i(k)—一個i行j列的權(quán)值矩陣[15]。
依據(jù)該公式,可以得到設(shè)定與重置密碼的判定依據(jù),并以此對主機(jī)通信的可靠性進(jìn)行評估,得到一個基于AT89C52單片機(jī)多機(jī)通信功能的可靠性評估系統(tǒng)。
多級通信的可靠性評估系統(tǒng),需要處理大量的元件參數(shù),并通過計算對AT89C52單片機(jī)的可靠性進(jìn)行評估。在此過程中,對設(shè)備過載安全穩(wěn)定的監(jiān)測是可靠性評估系統(tǒng)的重點(diǎn)。單片機(jī)的過載安全穩(wěn)定分析主要為單片機(jī)的實(shí)際過載參數(shù)判定。在實(shí)際狀態(tài)的過載下,可以通過可靠性評估系統(tǒng)將某種與之相對應(yīng)的實(shí)際運(yùn)行方式作為評估指標(biāo),如果此時的單片機(jī)多級通信模塊有了較為真實(shí)的波動,則系統(tǒng)會將其判定為即將過載。每一個硬件模塊均具備自身的設(shè)備負(fù)載指標(biāo),當(dāng)過載的指標(biāo)低于負(fù)載標(biāo)準(zhǔn)值時,則會直接判定該單片機(jī)的多機(jī)通信功能不可靠。當(dāng)過載的指標(biāo)高于負(fù)載標(biāo)準(zhǔn)值時,數(shù)值越高,則該多機(jī)通信功能越可靠。在該系統(tǒng)測試中,設(shè)備以及服務(wù)器的環(huán)境準(zhǔn)備如表1所示。
表1 測試環(huán)境及設(shè)備
為判斷本文設(shè)計的可靠性評估系統(tǒng)是否更準(zhǔn)確,將其與傳統(tǒng)的幾種評估系統(tǒng)對比,結(jié)合已知的單片機(jī)信息,測試多級通信功能的負(fù)載。在以上環(huán)境中,通過并發(fā)數(shù)量的不同,分別得到此條件下的負(fù)載值,并得到如圖5所示的實(shí)際負(fù)載結(jié)果。
圖5 實(shí)際負(fù)載結(jié)果
在以上測試環(huán)境下,系統(tǒng)25 s內(nèi)的資源使用率情況如圖5所示,隨著并發(fā)數(shù)量的增加,資源使用率也在不斷提高。其中,并發(fā)數(shù)為5時,資源使用率的最大值為18.6 %,最小值為0;當(dāng)并發(fā)數(shù)為10時,資源使用率的最大值為28.1 %;并發(fā)數(shù)為15和20時,最大值為44.8 %和61.5 %。
依據(jù)圖4中的數(shù)據(jù),分別測試依據(jù)人工智能算法、大數(shù)據(jù)挖掘方法以及本文方法所得到的可靠性評估系統(tǒng),在不同并發(fā)數(shù)量下資源使用率情況。相同并發(fā)數(shù)量以及其他測試環(huán)境下,這三種對比系統(tǒng)所得最大資源使用率越小,則該系統(tǒng)負(fù)載可靠性越強(qiáng),測試結(jié)果如圖6所示。
圖6 不同系統(tǒng)測試
不同系統(tǒng)可靠性評估結(jié)果如圖6所示。當(dāng)并發(fā)數(shù)為5時,實(shí)際的最大資源使用率為18.6 %,三種系統(tǒng)的最大資源使用率分別為15.2 %、17.6 %、18.3 %,均小于實(shí)際負(fù)載,可見這三種系統(tǒng)在并發(fā)數(shù)為5時指標(biāo)均可靠,且文中系統(tǒng)資源使用率在三種對比系統(tǒng)中最小。在并發(fā)數(shù)為10、15、20三種不同的條件下,三種系統(tǒng)的資源使用率均小于實(shí)際情況,且文中系統(tǒng)均為最小值。可見在這四種并發(fā)條件中,該系統(tǒng)多機(jī)通信功能的可靠性均強(qiáng)于其他系統(tǒng)。
本文基于AT89C52單片機(jī)設(shè)計了一種多機(jī)通信功能的可靠性評估系統(tǒng),通過硬件與軟件的綜合設(shè)計,求解了該功能的可靠性參數(shù)。并依據(jù)實(shí)驗(yàn),論證了該系統(tǒng)的有效性與優(yōu)越性,其在不同并發(fā)數(shù)下的資源使用率均小于額定值,且為三種對比系統(tǒng)中的最低值。