咨詢電話
ENGLISH0755-88840386發(fā)布時(shí)間:2020-10-21 09:57:25 |來(lái)源:
1引言
作為混凝土攪拌站的核心部件之一的承重儀表(SWD)是一款高性能、高精度的稱量控制產(chǎn)品,通過(guò)CAN總線采用通信協(xié)議的方式控制稱重傳感器和控制主機(jī)進(jìn)行命令交互而滿足混凝土攪拌站的配料、稱量、控制、顯示等需求叫其質(zhì)量的好壞直接影響配比的精度和混凝土的質(zhì)量。由于稱重儀表功能強(qiáng)大,涉及通信協(xié)議的功能較多,其通信協(xié)議成了該產(chǎn)品檢測(cè)的重點(diǎn),但若采用手工測(cè)試不僅費(fèi)時(shí)費(fèi)力,效率較低,且難以保證測(cè)試的全面覆蓋。
本文在CAN模塊基礎(chǔ)上,基于ZLGCAN動(dòng)態(tài)鏈接庫(kù)技術(shù)與Labview平臺(tái)相結(jié)合的機(jī)制"1,實(shí)現(xiàn)了SWD通信協(xié)議的自動(dòng)測(cè)試。
2系統(tǒng)總體方案
系統(tǒng)的硬件配置主要由PC.ZLGCAN模塊和開關(guān)電源構(gòu)成,三者關(guān)系如圖1所示。
圖1系統(tǒng)硬件配置
開關(guān)電源給SWD供電,作為交互操作窗口的PC通過(guò)USB接口經(jīng)ZLGCAN的CAN總線和SWD交互數(shù)據(jù)。根據(jù)SWD的CAN通信協(xié)議的特點(diǎn),在PC上給予Labview軟件設(shè)計(jì)上位機(jī)程序并通過(guò)上位機(jī)程序調(diào)用Windows系統(tǒng)中編譯和力懺的ZLGCAN動(dòng)態(tài)鏈接庫(kù),便可實(shí)現(xiàn)對(duì)與CAN通信協(xié)議相關(guān)的SWD的功能進(jìn)行自動(dòng)化測(cè)試,并對(duì)測(cè)試進(jìn)度和測(cè)試結(jié)果進(jìn)行實(shí)時(shí)顯示。
3上位機(jī)軟件設(shè)計(jì)
3.1界面
作為與用戶直接交互的操作窗口前面板可以通過(guò)PC端的Labview平臺(tái)采用圖形化編程語(yǔ)言實(shí)現(xiàn),如圖2所示。
界面大致分為菜單區(qū)、參數(shù)設(shè)置區(qū)、操作區(qū)和測(cè)試數(shù)據(jù)顯示區(qū)等。菜單區(qū)包括設(shè)備操作、設(shè)備配置、與CAN通信協(xié)議相關(guān)基本功能的測(cè)試項(xiàng)目、版本和幫助等項(xiàng),可以通過(guò)菜單操作對(duì)SWD和ZLGCAN進(jìn)行配置、選擇測(cè)試項(xiàng)目以及査看版本和幫助信息;參數(shù)設(shè)置區(qū)可以直接在界面上快速地進(jìn)行相關(guān)參數(shù)配置及測(cè)試項(xiàng)選擇;操作區(qū)主要實(shí)現(xiàn)ZLGCAN的啟動(dòng)、停止操作以及測(cè)試過(guò)程的控制;測(cè)試數(shù)據(jù)顯示區(qū)可以直觀地顯示已經(jīng)完成的測(cè)試項(xiàng)及測(cè)試結(jié)果以及測(cè)試進(jìn)度,并可以完成測(cè)試數(shù)據(jù)和測(cè)試報(bào)告的保存操作。
3.2主程序
軟件操作流程如圖3所示。Labview開發(fā)平臺(tái)除具有常規(guī)的條件結(jié)構(gòu)、順序結(jié)構(gòu)、循環(huán)、事件結(jié)構(gòu)外,還根據(jù)應(yīng)用場(chǎng)合的不同提供了狀態(tài)機(jī)、消息隊(duì)列、生產(chǎn)者/消費(fèi)者、主/從等設(shè)計(jì)模式,根據(jù)程序特點(diǎn)直接調(diào)用模板進(jìn)行編程,可以省去對(duì)程序整體框架的考慮,從而節(jié)約很多時(shí)間。
由于測(cè)試開始前操作者需要對(duì)SWD和ZLGCAN進(jìn)行配置,選擇測(cè)試項(xiàng)目,測(cè)試時(shí)又是全自動(dòng)測(cè)試,因此,系統(tǒng)主程序基本框架為生產(chǎn)者/消費(fèi)者結(jié)構(gòu),自動(dòng)測(cè)試部分為消息隊(duì)列結(jié)構(gòu),自動(dòng)逐項(xiàng)執(zhí)行所選擇的測(cè)試項(xiàng)目,執(zhí)行完畢又返回到生產(chǎn)者/消費(fèi)者結(jié)構(gòu),以便與用戶交互處理后續(xù)的數(shù)據(jù)保存、報(bào)告保存等操作。
3.3協(xié)議判斷程序
協(xié)議判斷程序是自動(dòng)測(cè)試系統(tǒng)設(shè)計(jì)的關(guān)鍵,直接決定著測(cè)試結(jié)果是否可靠性。協(xié)議半嘶流程如圖4所示。與CAN通信協(xié)議相關(guān)的SWD基本功能大致分為參數(shù)査詢、參數(shù)設(shè)置、參數(shù)上傳、配方設(shè)置、配料控制、掉電保存6個(gè)方面。其通信協(xié)議可歸納為兩類:⑴應(yīng)答式協(xié)議:SWD對(duì)收到的命令進(jìn)行應(yīng)答,測(cè)試時(shí)需要先向SWD發(fā)送命令,再判斷SWD是否正確進(jìn)行應(yīng)答;(2)主動(dòng)上傳式協(xié)議:SWD以一定的周期上傳CAN數(shù)據(jù),測(cè)試時(shí)只需蛔在一定的時(shí)間內(nèi)是否收到相應(yīng)的數(shù)據(jù)帔。為此根據(jù)SWD通信協(xié)議特點(diǎn),需對(duì)自湖頃賦系統(tǒng)幽十協(xié)議仲裁子VI。
3.4協(xié)議拓展接口設(shè)計(jì)
考慮到SWD通信協(xié)議的不斷升級(jí)和擴(kuò)展以及測(cè)試要求的變化,為保證軟件能夠兼顧后續(xù)SWD通信協(xié)議的測(cè)試需要,進(jìn)行了巧妙的接口設(shè)計(jì)。協(xié)議判斷規(guī)則不是固化在程序里面,而是通過(guò)EXCEL文檔讀入,當(dāng)協(xié)議發(fā)生變更時(shí),只需要對(duì)該EXCEL文件進(jìn)行維護(hù)即可。該EXCEL文檔砂行對(duì)應(yīng)一條協(xié)議,協(xié)議格式對(duì)應(yīng)EXCEL文檔的一行A-H的內(nèi)容如表1所示。
4結(jié)果
測(cè)試完畢,在圖2的界面點(diǎn)擊“生成報(bào)告”按鍵,將會(huì)自動(dòng)生成DOC格式名稱為“SWD通信協(xié)議自動(dòng)測(cè)試報(bào)告yyyy_MM_DD_hhmmss.doc”的試驗(yàn)報(bào)告。其中,報(bào)告名稱中的yyyy_MM_DD_hhmmss分別為當(dāng)前測(cè)試時(shí)間的年份_月份一日期_時(shí)時(shí)分分秒秒,而報(bào)告的內(nèi)容除包括當(dāng)前測(cè)試數(shù)據(jù)和結(jié)果、之前輸入的被測(cè)產(chǎn)品軟硬件信息、ZLGCAN和SWD參數(shù)配置信息外,還包括每條協(xié)議測(cè)試的詳細(xì)記錄。
通過(guò)專業(yè)測(cè)試人員驗(yàn)證,本測(cè)試系統(tǒng)具有以下特點(diǎn):
1) 效率高:426條協(xié)議可以在3min內(nèi)完成測(cè)試,采用手工測(cè)試,即使熟練的測(cè)試工程師也需要3~4d的時(shí)間。
2) 簡(jiǎn)單可靠:通過(guò)幾步簡(jiǎn)單的操作即可完成測(cè)試,通信協(xié)議異常模擬測(cè)試的結(jié)果表明,通過(guò)測(cè)試報(bào)告的詳細(xì)測(cè)試數(shù)據(jù)。
3) 覆蓋面廣:軟件充分考慮到了參數(shù)設(shè)置的最大值、最小值、合法值和非法值等各種情況,還可以通過(guò)修改節(jié)點(diǎn)號(hào)測(cè)試不同節(jié)點(diǎn)的情況,避免了手工測(cè)試考慮不全的情況,擴(kuò)大了測(cè)試的覆蓋面。
4) 易于擴(kuò)展和維性:測(cè)試內(nèi)容可以通過(guò)EXCEL表格進(jìn)行定制,當(dāng)通信協(xié)議發(fā)生變更時(shí),只需要對(duì)EXCEL表格進(jìn)行維護(hù)即可,具有良好的可擴(kuò)展性和維護(hù)性。
5) 軟件具有很好的靈活性:根據(jù)需要選擇測(cè)試項(xiàng)目。具有詳細(xì)的幫助系統(tǒng),新手也可以根據(jù)相關(guān)說(shuō)明正確完成測(cè)試。
文章來(lái)源于網(wǎng)絡(luò)轉(zhuǎn)載,侵刪