智能采集設(shè)備仿真系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
3 仿真系統(tǒng)軟件設(shè)計(jì)
Linux具有穩(wěn)定性、開(kāi)源性、可裁剪的特性,所以選擇將Linux內(nèi)核作為仿真系統(tǒng)的系統(tǒng)核心。移植大體步驟如下:
(1)U-boot移植:若沒(méi)有U-boot,兩種啟動(dòng)方式都無(wú)法在超級(jí)終端上顯示。U-boot是系統(tǒng)運(yùn)行時(shí)啟動(dòng)的第一段代碼,負(fù)責(zé)調(diào)整系統(tǒng)到啟動(dòng)內(nèi)核的最佳條件,移植時(shí)使用JTAG接口下載U-boot。
(2)Linux內(nèi)核編譯:首先要獲取內(nèi)核并配置編譯,通過(guò)Make menuconfig命令打開(kāi)系統(tǒng)配置單,根據(jù)具體的硬件設(shè)置(硬件上面已說(shuō)明),去除不需要編譯的硬件驅(qū)動(dòng)模塊,保存配置單。用Make zImage命令編譯出zlmage鏡像,通過(guò)網(wǎng)口燒寫到NANDFLASH中。
(3)構(gòu)建文件系統(tǒng):使用的軟件是busboy,先配置之后編譯,過(guò)程和Linux內(nèi)核很像。把構(gòu)建好的文件系統(tǒng)鏡像燒寫到系統(tǒng)中,系統(tǒng)就可以正常啟動(dòng)。
(4)CVM移植,CVM是JAVA虛擬機(jī)JVM壓縮版,系統(tǒng)中沒(méi)有內(nèi)置CVM,需要移植CVM虛擬機(jī)支持仿真程序。
4 系統(tǒng)驗(yàn)證與測(cè)試
大量智能設(shè)備都采用RS485串口通信協(xié)議,下面以串口采集沒(méi)備8775A仿真程序測(cè)試系統(tǒng)性能。
8775A是青智儀器公司的電參數(shù)測(cè)量智能儀表,它通過(guò)串口與采集主機(jī)通信。當(dāng)它接收到命令格式幀為10H,03H,A1 A2 A3連續(xù)幀時(shí)會(huì)回送數(shù)據(jù):7DHA1A2A3D1D2…D52P1P2P37EH。其中7DH,7EH分別代表固定的數(shù)據(jù)頭和數(shù)據(jù)尾。A1A2A3代表設(shè)備地址,30H,31H,35H代表地址15。D1~D52代表該設(shè)備提供的數(shù)據(jù),分別為電壓(D1~D5)、電流(D8~D12)、功率(D15~D19)、功率因數(shù)(D22~D29)、頻率(D30~D33)、時(shí)間(D37~D42)和電能(D43~D49),P1P2P3是送回?cái)?shù)據(jù)的校驗(yàn)和。采集程序在獲取數(shù)據(jù)后會(huì)對(duì)連續(xù)的數(shù)據(jù)進(jìn)行分析,獲取有用的數(shù)據(jù)。該仿真系統(tǒng)在收到發(fā)送數(shù)據(jù)的命令后,判斷是否為有效的命令格式,如果是則回送程序模擬的數(shù)據(jù),數(shù)據(jù)格式完全相同。仿真程序流程如圖6所示。本文引用地址:http://www.biyoush.com/article/148397.htm
仿真程序設(shè)置串口的波特率、校驗(yàn)位、數(shù)據(jù)位等信息。采集程序中的設(shè)置應(yīng)與其一樣。保證采集程序和仿真設(shè)備有相同的串口設(shè)置。通過(guò)驗(yàn)證,采集程序可以從該系統(tǒng)采集到電壓、電流、功率等數(shù)據(jù)。圖7是通過(guò)串口小助手向仿真系統(tǒng)發(fā)送的采集命令后收到模擬軟件返回的數(shù)據(jù)。經(jīng)驗(yàn)證,與8775A設(shè)備提供的參數(shù)類型一致。同樣,為網(wǎng)絡(luò)接口的設(shè)備也可以通過(guò)該系統(tǒng)實(shí)現(xiàn)仿真。
5 結(jié)語(yǔ)
本系統(tǒng)首次應(yīng)用在了國(guó)內(nèi)某大型家電產(chǎn)品公司冰箱測(cè)試軟件中數(shù)據(jù)采集部分的測(cè)試階段,通過(guò)把編寫的智能儀表DA100,UT351,8775A仿真程序下載到本系統(tǒng)中完成了冰箱測(cè)試軟件采集程序的可靠性測(cè)試。
評(píng)論