電動(dòng)車控制器自動(dòng)測(cè)試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(二)
2.5 模擬腳踏速度控制設(shè)計(jì)
控制器對(duì)用戶腳踏信號(hào)的采集是通過(guò)給可調(diào)電阻提供5 V 電壓,在不同位置將輸出不同電壓,通過(guò)電壓值控制速度的大小.因此用三路模擬電壓通路給控制器的接受電路發(fā)送不同狀態(tài)的電壓值,以此來(lái)檢測(cè)控制器接受電路是否能夠正確采集,電路原理如圖7所示.
系統(tǒng)選用集成芯片TS5A3359,其工作性質(zhì)見(jiàn)表2,測(cè)試設(shè)備通過(guò)引腳RD4,RD5控制選通開(kāi)關(guān)IN1,IN2,分時(shí)選通NO0,NO1,NO2 三路開(kāi)關(guān).并將不同的模擬電壓輸出給電動(dòng)車控制器.電動(dòng)車控制器采集到相應(yīng)的電壓值后,通過(guò)通信接口發(fā)送給測(cè)試設(shè)備.
2.6 模擬速度傳感器電路設(shè)計(jì)
控制器對(duì)速度傳感器信號(hào)的采集是一個(gè)通斷信號(hào),因此用一個(gè)開(kāi)關(guān)數(shù)字量來(lái)進(jìn)行模擬.為提供速度傳感器的模擬脈沖,電路設(shè)計(jì)原理與圖5同.
3 控制分析軟件的設(shè)計(jì)
3.1 通信協(xié)議
PC 機(jī)通過(guò)串口與智能測(cè)試終端相連,本文設(shè)計(jì)的串口通信采用半雙工通信,速率為115 200 Kb/s,以完成命令與數(shù)據(jù)通信的需要.基于幀的協(xié)議設(shè)計(jì)思想,即在向串行口發(fā)送命令信號(hào).回傳數(shù)據(jù)信號(hào)時(shí),信號(hào)是一幀一幀發(fā)送的.通信鏈路中所有的內(nèi)容都將包含在這樣的一個(gè)幀中,無(wú)論它是控制命令還是傳送的數(shù)據(jù).
為了使數(shù)據(jù)可靠的傳輸,將每一幀信號(hào)惟一對(duì)應(yīng)一個(gè)命令幀.為了避免數(shù)據(jù)發(fā)生錯(cuò)亂,通信方式采用主從應(yīng)答方式,即PC 作為主機(jī),測(cè)試設(shè)備作為從機(jī),由PC 以固定周期100 ms發(fā)起命令幀.當(dāng)測(cè)試設(shè)備收到命令幀以后,就會(huì)回傳一個(gè)數(shù)據(jù)幀給PC機(jī).幀格式如下:
幀格式由九個(gè)字節(jié)組成,分別是同步字SYNC,命令類型CMD,數(shù)據(jù)D0~D4 和校驗(yàn)信號(hào)BCC.同步字SYNC:標(biāo)志一幀數(shù)據(jù)的開(kāi)始;命令字節(jié)CMD:用于標(biāo)識(shí)需要執(zhí)行的指令類型,即是哪一項(xiàng)功能檢測(cè);數(shù)據(jù)字節(jié)D0~D4:對(duì)于PC機(jī)來(lái)說(shuō)是提供執(zhí)行該命令所擴(kuò)展的輔助數(shù)據(jù),沒(méi)有用到.而對(duì)于測(cè)試設(shè)備,則是存儲(chǔ)的測(cè)試數(shù)據(jù);校驗(yàn)字節(jié)BCC:用于測(cè)試終端確認(rèn)該幀是否有效以免通信錯(cuò)誤.
其中命令幀和數(shù)據(jù)幀第一個(gè)字節(jié)是用來(lái)標(biāo)志一幀數(shù)據(jù)的開(kāi)始,而頭字節(jié)之所以用“0×55”,是因?yàn)閭鬏斶^(guò)程中,產(chǎn)生的干擾信號(hào),多為連續(xù)高電平或者連續(xù)低電平,而“0×55”的二進(jìn)制編碼為:10101010,很少情況下會(huì)產(chǎn)生這樣高低脈沖的干擾,因此使用“0×55”頭字節(jié)有利于提高傳輸?shù)目煽啃?命令幀和數(shù)據(jù)幀第二個(gè)字節(jié)是命令字節(jié),即代表要測(cè)試的項(xiàng)目.數(shù)據(jù)幀中的數(shù)據(jù)字節(jié)是單片機(jī)在工作過(guò)程中采集到的測(cè)試結(jié)果數(shù)據(jù).命令幀和數(shù)據(jù)幀的最后一個(gè)字節(jié)都為校驗(yàn)字節(jié),該字節(jié)是用來(lái)驗(yàn)證所有數(shù)據(jù)在傳輸過(guò)程中是否被破壞了.這里所使用的校驗(yàn)方式用是BCC 異或校驗(yàn)法(Block CheckCharacter),即將前面兩個(gè)字節(jié)異或,異或出來(lái)的字節(jié)再與下一個(gè)字節(jié)異或,直到一幀數(shù)據(jù)全部都異或過(guò),得出的字節(jié)就作為校驗(yàn)字節(jié).
3.2 PC控制分析軟件設(shè)計(jì)
控制分析軟件是整個(gè)測(cè)試系統(tǒng)操作.展示的一個(gè)平臺(tái).測(cè)試系統(tǒng)的應(yīng)用,一方面是為了檢測(cè)出控制器功能是否正常,另一方面也是為了產(chǎn)品質(zhì)量的跟蹤,即產(chǎn)品測(cè)試完成后,其所有數(shù)據(jù)都是有據(jù)可查的,一旦產(chǎn)品發(fā)生質(zhì)量問(wèn)題,可以根據(jù)其產(chǎn)品序列號(hào),在第一時(shí)間查出產(chǎn)品初始測(cè)試的數(shù)據(jù).因此控制分析軟件必須提供一個(gè)友好的人機(jī)界面與測(cè)試數(shù)據(jù)的存儲(chǔ).依據(jù)于此,控制分析軟件是在。NET開(kāi)發(fā)平臺(tái)下利用C#語(yǔ)言開(kāi)發(fā),數(shù)據(jù)存儲(chǔ)使用的是SQL Server 2005,.NET具有友好的開(kāi)發(fā)界面,提供豐富的庫(kù)函數(shù),對(duì)于串口通信的開(kāi)發(fā)尤為便利.
控制分析軟件主要工作流程如圖8所示.首先,為保證使用者單獨(dú)使用,該測(cè)試軟件通過(guò)用戶登錄界面特別設(shè)計(jì)了保密措施,包括用戶名和密碼驗(yàn)證.
功能選擇項(xiàng)主要包括各模塊的功能信號(hào),用戶輸入相應(yīng)的用戶名和產(chǎn)品序列號(hào)后對(duì)待測(cè)項(xiàng)目進(jìn)行測(cè)試.
控制分析軟件通過(guò)串口發(fā)送命令幀給終端測(cè)試設(shè)備.命令測(cè)試設(shè)備進(jìn)行項(xiàng)目測(cè)試,終端測(cè)試設(shè)備通過(guò)解析幀命令類型來(lái)確定是哪一個(gè)項(xiàng)目需要進(jìn)行測(cè)試.測(cè)試完成后返回給PC機(jī),PC機(jī)接到測(cè)試結(jié)束后對(duì)回傳的數(shù)據(jù)進(jìn)行處理.超時(shí)等待是為了防止通信錯(cuò)誤導(dǎo)致控制分析軟件死循環(huán)強(qiáng)制退出,重新發(fā)送測(cè)試命令.
4 試驗(yàn)
測(cè)試界面如圖9所示,包括測(cè)試控制按鈕及測(cè)量結(jié)果顯示模塊(上),用于實(shí)時(shí)顯示被測(cè)試信號(hào)是否良好,若正確則顯示打鉤,若錯(cuò)誤則顯示打叉,中間是測(cè)試人員登記與產(chǎn)品序列號(hào)的輸入.只有在測(cè)試人員和序列號(hào)輸入的情況下,測(cè)試結(jié)果才可以允許保存;測(cè)試數(shù)據(jù)顯示(下)用于對(duì)測(cè)試過(guò)程的數(shù)據(jù)的分析和顯示.以數(shù)據(jù)表單的形式,將各個(gè)測(cè)試結(jié)果保存,并同時(shí)將數(shù)據(jù)保存在后臺(tái)數(shù)據(jù)庫(kù)中.
評(píng)論