本發(fā)明涉及汽車功能的測試系統(tǒng)技術領域,特別涉及一種BCM多機自動化測試系統(tǒng)及方法。
背景技術:
車身控制系統(tǒng)(BCM)是用來實現(xiàn)對車身用電器的人性化、舒適性及部分安全性控制的系統(tǒng),涉及車輛防盜、室內燈、電動車窗、玻璃除霜、刮水、中控鎖、遙控、轉向燈、前后組合燈、前后霧燈、喇叭、天窗、座椅、后視鏡、CAN和LIN網路通訊等的控制。
目前一些公司采用人工測試和電腦自測的方法。人工測試的方法耗時長,對熟練度也有要求,準確度和質量得不到保證。電腦自測的方法,準確度比手工測試有所提高,但是都是基于單一產品的測試。
技術實現(xiàn)要素:
因此,有必要提供一種測試精度高,實現(xiàn)簡易多機刷寫的BCM多機自動化測試系統(tǒng)及方法。
一種BCM多機自動化測試系統(tǒng),其包括如下組件:
電源、控制器模塊、電控模塊和指示模塊、CAN模塊、I/O測試模塊、負載模塊、RF測試模塊、USB/CAN工具、上位機;
控制器模塊同時與CAN模塊、I/O測試模塊、電控模塊和指示模塊、負載模塊、RF測試模塊、電源電連接;I/O測試模塊與BCM的所有被測產品的I/O接口相連;負載模塊與BCM的所有被測產品的輸出接口相連;CAN模塊同時與BCM的所有被測產品的CAN接口、USB/CAN工具相連;USB/CAN工具同時與上位機相連;
電源用于對控制器模塊、電控模塊和指示模塊供電;
控制器模塊用于對BCM中被測產品供電,將上位機發(fā)送的產品CAN地址、產品ID分配給被測產品;
電控模塊和指示模塊用于控制BCM中被測產品通斷電以及指示測試結果;
CAN模塊用于通過CAN總線傳輸CAN格式數(shù)據;
I/O測試模塊用于對BCM中被測產品的I/O接口進行測試;
負載模塊用于對BCM中被測產品的端口驅動負載進行測試;
RF測試模塊用于對BCM中被測產品的高頻部分數(shù)據的接收和解調功能進行測試;
USB/CAN工具用于對CAN格式數(shù)據以及計算機可讀數(shù)據進行相互轉換;
上位機用于分配BCM中被測產品的產品CAN地址、產品ID,用于控制CAN模塊允許或禁止收發(fā)報文,用于控制I/O測試模塊、RF測試模塊、負載模塊啟動測試,還用于讀取、記錄分析并顯示測試結果。
本發(fā)明還提供一種BCM多機自動化測試方法,其通過上述的BCM多機自動化測試系統(tǒng)實現(xiàn),其特征在于,包括如下步驟:
S1、電源向控制器模塊、電控模塊和指示模塊供電;
S2、控制器模塊通過電控模塊和指示模塊給BCM中被測產品供電,并對所有被測產品分配產品CAN地址、產品ID;
S3、對BCM中被測產品進行I/O測試、負載測試、RF測試,并通過CAN總線向上位機反饋測試結果,上位機將各個產品的測試狀態(tài)進行記錄分析并顯示。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S2包括:
S201、控制器模塊通過電控模塊和指示模塊給BCM中第一個產品供電,上位機與第一個產品進行CAN通訊,如果通訊成功,分配一個CAN地址、產品ID給第一個產品;如果通訊故障超時,則停止給第一個產品供電,并指示此產品故障;
S202、給下一個產品供電,如通訊成功,分配一個CAN地址、產品ID給該產品,否則停止給該產品供電,并指示該產品故障,直到所有的產品分配地址完畢;
S203、當?shù)谝粋€產品獲取當前CAN的產品ID,上位機會發(fā)送通訊控制命令,允許接收CAN格式數(shù)據但是禁止發(fā)送CAN格式數(shù)據;此后,給下一個產品供電,并分配產品ID,當其ID分配成功后,同樣也會發(fā)送通訊控制命令,這樣直到所有的產品ID分配成功;所有產品的ID都不同;
S204、所有的產品的ID分配成功后,此后上位機發(fā)送通訊控制命令,允許接收和發(fā)送CAN格式數(shù)據。
在本發(fā)明所述的BCM多機自動化測試方法中,所述步驟S2中控制器模塊通過電控模塊和指示模塊給BCM中第一個產品供電,上位機與第一個產品進行CAN通訊,如果通訊成功,分配一個CAN地址給第一個產品;如果通訊故障超時,則停止給第一個產品供電,并指示此產品故障包括:
S21、控制器模塊通過電控模塊和指示模塊給BCM中第一個產品供電;
S22、上位機向第一個產品發(fā)送CAN格式的通訊測試數(shù)據;
S23、上位機并判斷是否收到第一個產品的響應數(shù)據,在收到時跳轉到步驟S24;在未收到時跳轉到S28;
S24、訪問測試模式;
S25、判斷訪問是否成功,在成功時,跳轉到步驟S26;在未成功時,跳轉到步驟S29;
S26、分配一個CAN地址、產品ID給第一個產品;
S27、判斷是否分配成功,在成功時跳轉到S211;在未成功時跳轉到步驟S210;
S28、接收計數(shù)器加1,判斷接收計數(shù)器是超過預設第一數(shù)值,在未超過時,跳轉到步驟S22;在超過時跳轉到步驟S212;
S29、訪問計數(shù)器加1,判斷訪問計數(shù)器是超過預設第二數(shù)值,在未超過時,跳轉到步驟S26;在超過時跳轉到步驟S212;
S210、分配計數(shù)器加1,判斷分配計數(shù)器是超過預設第三數(shù)值,在未超過時,跳轉到步驟S211;在超過時跳轉到步驟S222;
S211、跳轉到步驟S202;
S212、對第一個產品斷電,并通過電控模塊和指示模塊中LED燈指示故障。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S3中對BCM中被測產品進行I/O測試包括:
S31a、I/O測試模塊向所有被測產品的第一個I/O端口發(fā)出一個觸發(fā)脈沖,上位機發(fā)送命令讀取產品的第一個I/O端口的輸出電流是否正常;在輸出電流正常時,跳轉到步驟S32a,在輸出電流不正常時,跳轉到步驟S33a;
S32a、讀取產品的測試數(shù)據并對比分析數(shù)據,判斷數(shù)據是否正常,在正常時跳轉到S36,在不正常時通過電控模塊和指示模塊進行故障指示并斷電;
S33a、對所有產品進行斷電,之后對第一個產品進行供電,進入單機測試模式;
S34a、分析測試數(shù)據是否正常,在正常時跳轉到步驟S35a;在不正常時通過電控模塊和指示模塊進行故障指示并斷電;
S35a、對下一個產品進行供電,進入單機測試模式并重復執(zhí)行步驟S34a直至所有產品測試完畢,在測試完畢之后跳轉到步驟S36a;
S36a、進行下一個I/O端口測試。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S3中對BCM中被測產品進行負載測試包括:
S31b、對第一個產品進行供電;
S32b、進入單機負載驅動模式,讀取產品對于第一個負載驅動測試項目的驅動前與驅動后電流大小數(shù)據,并判斷驅動電流是否正常,在正常時跳轉到步驟S33b;在不正常時通過電控模塊和指示模塊進行故障指示并斷電;
S33b、重復執(zhí)行步驟S32b直至所有負載項測試完畢,并跳轉到步驟S34b;
S34b、對下一個產品進行供電,并重復執(zhí)行步驟S32b、S33b直至所有的產品測試完畢。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S3中對BCM中被測產品進行RF測試包括:
RF測試模塊向各被測產品發(fā)送高頻信號;
上位機發(fā)送讀取解調后的高頻信號數(shù)據命令,各被測產品通過CAN總線向上位機返回解調的高頻信號數(shù)據;
上位機軟件對比分析各產品返回解調后的高頻信號數(shù)據,如果某一產品返回的數(shù)據有問題,停止對該產品供電,并通過電控模塊和指示模塊進行LED故障指示,并在上位機軟件顯示相對應項目測試不合格結果。
實施本發(fā)明提供的BCM多機自動化測試系統(tǒng)及方法與現(xiàn)有技術相比具有以下有益效果:本發(fā)明能夠實現(xiàn)1.一個測試系統(tǒng)對多個產品進行測試;2.每個產品賦予不同CAN的測試ID;3.通過CAN總線將含有測試的程序的信息發(fā)給各產品,完成測試;4.產品將以測試信息的結果通過CAN反饋給上位機;5.上位機將各個產品的測試狀態(tài)(OK,NG)進行記錄分析顯示。
附圖說明
圖1是本發(fā)明實施例的BCM多機自動化測試系統(tǒng)的結構框圖。
具體實施方式
如圖1所示,一種BCM多機自動化測試系統(tǒng),其包括如下組件:
電源、控制器模塊、電控模塊和指示模塊、CAN模塊、I/O測試模塊、負載模塊、RF測試模塊、USB/CAN工具、上位機;
控制器模塊同時與CAN模塊、I/O測試模塊、電控模塊和指示模塊、負載模塊、RF測試模塊、電源電連接;I/O測試模塊與BCM的所有被測產品的I/O接口相連;負載模塊與BCM的所有被測產品的輸出接口相連;CAN模塊同時與BCM的所有被測產品的CAN接口、USB/CAN工具相連;USB/CAN工具同時與上位機相連;
電源用于對控制器模塊、電控模塊和指示模塊供電;
控制器模塊用于對BCM中被測產品供電,將上位機發(fā)送的產品CAN地址、產品ID分配給被測產品;
電控模塊和指示模塊用于控制BCM中被測產品通斷電以及指示測試結果;
CAN模塊用于通過CAN總線傳輸CAN格式數(shù)據;
I/O測試模塊用于對BCM中被測產品的I/O接口進行測試;
負載模塊用于對BCM中被測產品的端口驅動負載進行測試;
RF測試模塊用于對BCM中被測產品的高頻部分數(shù)據的接收和解調功能進行測試;
USB/CAN工具用于對CAN格式數(shù)據以及計算機可讀數(shù)據進行相互轉換;
上位機用于分配BCM中被測產品的產品CAN地址、產品ID,用于控制CAN模塊允許或禁止收發(fā)報文,用于控制I/O測試模塊、RF測試模塊、負載模塊啟動測試,還用于讀取、記錄分析并顯示測試結果。
本發(fā)明還提供一種BCM多機自動化測試方法,其通過上述的BCM多機自動化測試系統(tǒng)實現(xiàn),其特征在于,包括如下步驟:
S1、電源向控制器模塊、電控模塊和指示模塊供電;
S2、控制器模塊通過電控模塊和指示模塊給BCM中被測產品供電,并對所有被測產品分配產品CAN地址、產品ID;
S3、對BCM中被測產品進行I/O測試、負載測試、RF測試,并通過CAN總線向上位機反饋測試結果,上位機將各個產品的測試狀態(tài)進行記錄分析并顯示。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S2包括:
S201、控制器模塊通過電控模塊和指示模塊給BCM中第一個產品供電,上位機與第一個產品進行CAN通訊,如果通訊成功,分配一個CAN地址、產品ID給第一個產品;如果通訊故障超時,則停止給第一個產品供電,并指示此產品故障;
S202、給下一個產品供電,如通訊成功,分配一個CAN地址、產品ID給該產品,否則停止給該產品供電,并指示該產品故障,直到所有的產品分配地址完畢;
S203、當?shù)谝粋€產品獲取當前CAN的產品ID,上位機會發(fā)送通訊控制命令,允許接收CAN格式數(shù)據但是禁止發(fā)送CAN格式數(shù)據;此后,給下一個產品供電,并分配產品ID,當其ID分配成功后,同樣也會發(fā)送通訊控制命令,這樣直到所有的產品ID分配成功;所有產品的ID都不同;
S204、所有的產品的ID分配成功后,此后上位機發(fā)送通訊控制命令,允許接收和發(fā)送CAN格式數(shù)據。
在本發(fā)明所述的BCM多機自動化測試方法中,所述步驟S2中控制器模塊通過電控模塊和指示模塊給BCM中第一個產品供電,上位機與第一個產品進行CAN通訊,如果通訊成功,分配一個CAN地址給第一個產品;如果通訊故障超時,則停止給第一個產品供電,并指示此產品故障包括:
S21、控制器模塊通過電控模塊和指示模塊給BCM中第一個產品供電;
S22、上位機向第一個產品發(fā)送CAN格式的通訊測試數(shù)據;
S23、上位機并判斷是否收到第一個產品的響應數(shù)據,在收到時跳轉到步驟S24;在未收到時跳轉到S28;
S24、訪問測試模式;
S25、判斷訪問是否成功,在成功時,跳轉到步驟S26;在未成功時,跳轉到步驟S29;
S26、分配一個CAN地址、產品ID給第一個產品;
S27、判斷是否分配成功,在成功時跳轉到S211;在未成功時跳轉到步驟S210;
S28、接收計數(shù)器加1,判斷接收計數(shù)器是超過預設第一數(shù)值,在未超過時,跳轉到步驟S22;在超過時跳轉到步驟S212;
S29、訪問計數(shù)器加1,判斷訪問計數(shù)器是超過預設第二數(shù)值,在未超過時,跳轉到步驟S26;在超過時跳轉到步驟S212;
S210、分配計數(shù)器加1,判斷分配計數(shù)器是超過預設第三數(shù)值,在未超過時,跳轉到步驟S211;在超過時跳轉到步驟S222;
S211、跳轉到步驟S202;
S212、對第一個產品斷電,并通過電控模塊和指示模塊中LED燈指示故障。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S3中對BCM中被測產品進行I/O測試包括:
S31a、I/O測試模塊向所有被測產品的第一個I/O端口發(fā)出一個觸發(fā)脈沖,上位機發(fā)送命令讀取產品的第一個I/O端口的輸出電流是否正常;在輸出電流正常時,跳轉到步驟S32a,在輸出電流不正常時,跳轉到步驟S33a;
S32a、讀取產品的測試數(shù)據并對比分析數(shù)據,判斷數(shù)據是否正常,在正常時跳轉到S36,在不正常時通過電控模塊和指示模塊進行故障指示并斷電;
S33a、對所有產品進行斷電,之后對第一個產品進行供電,進入單機測試模式;
S34a、分析測試數(shù)據是否正常,在正常時跳轉到步驟S35a;在不正常時通過電控模塊和指示模塊進行故障指示并斷電;
S35a、對下一個產品進行供電,進入單機測試模式并重復執(zhí)行步驟S34a直至所有產品測試完畢,在測試完畢之后跳轉到步驟S36a;
S36a、進行下一個I/O端口測試。
測試產品的某一端口的時候,由于所有產品的此端口都是相連在一起的,需要I/O測試模塊在此端口給一個觸發(fā)脈沖,然后通過CAN讀取產品反饋的測試結果。
1、I/O測試模塊給一個觸發(fā)脈沖。
2、上位機發(fā)送命令讀取所有產品的測試結果。
3、所有產品通過CAN返回測試數(shù)據結果,其中測試數(shù)據結果包含觸發(fā)前,觸發(fā)時和觸發(fā)后端口讀取的狀態(tài)。
4、上位機軟件分析各個產品返回測試數(shù)據結果,如果觸發(fā)前,觸發(fā)時和觸發(fā)后的狀態(tài)是一樣的話,則表明這個端口有問題,上位機軟件會發(fā)送停止命令,該問題產品會斷電,LED故障指示,并且上位機軟件上面顯示在哪一項測試失敗。
5、如果其中一個產品的某一個端口有短路現(xiàn)象,I/O測試模塊在給觸發(fā)脈沖的時候,同時也診斷這部分輸出電路,當發(fā)現(xiàn)有短路電流過大的現(xiàn)象,會停止輸出。此后,斷開所有產品的電源,進入產品單機測試模式。在單機測試模式下,單獨給產品1供電,在產品1此端口測試完畢后,會給產品2供電進行測試,這樣依次供電,直到所有產品此端口測試完畢。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S3中對BCM中被測產品進行負載測試包括:
S31b、對第一個產品進行供電;
S32b、進入單機負載驅動模式,讀取產品對于第一個負載驅動測試項目的驅動前與驅動后電流大小數(shù)據,并判斷驅動電流是否正常,在正常時跳轉到步驟S33b;在不正常時通過電控模塊和指示模塊進行故障指示并斷電;
S33b、重復執(zhí)行步驟S32b直至所有負載項測試完畢,并跳轉到步驟S34b;
S34b、對下一個產品進行供電,并重復執(zhí)行步驟S32b、S33b直至所有的產品測試完畢。
測試產品的某一端口驅動負載的時候,由于所有產品的此端口都是相連在一起的,需要各個產品單獨驅動負載,自動化測試系統(tǒng)讀取驅動前和驅動后的電流大小。
1、產品1供電,其它產品不供電,產品1進入單機負載驅動模式。
2、測試系統(tǒng)讀取產品1驅動前和驅動后的電流大小,如果電流大小正常則進行產品1下一個負載項測試;如果電流大小不正常,則停止產品1供電,LED故障指示,并在上位機軟件顯示相對應項目測試不合格,開始給產品2供電。
3、產品1所有負載測試完畢后,就會給產品2供電,產品2進入單機負載驅動模式。如果產品2某一項負載測試不合格,則停止產品2供電,LED故障指示,并在上位機軟件顯示相對應項目測試不合格,開始給產品3供電。
4、直到所有產品的負載測試完畢,測試不合格的產品會停止供電和故障指示。
在本發(fā)明所述的BCM多機自動化測試方法中,
所述步驟S3中對BCM中被測產品進行RF測試包括:
RF測試模塊向各被測產品發(fā)送高頻信號;
上位機發(fā)送讀取解調后的高頻信號數(shù)據命令,各被測產品通過CAN總線向上位機返回解調的高頻信號數(shù)據;
上位機軟件對比分析各產品返回解調后的高頻信號數(shù)據,如果某一產品返回的數(shù)據有問題,停止對該產品供電,并通過電控模塊和指示模塊進行LED故障指示,并在上位機軟件顯示相對應項目測試不合格結果。
BCM產品的高頻部分一般負責對數(shù)據的接收和解調,不對外發(fā)送數(shù)據。因此自動化測試系統(tǒng)只需要發(fā)送一個高頻信號,然后讀取產品解調的數(shù)據即可。
自動化測試系統(tǒng)的RF測試模塊發(fā)送高頻信號。
上位機發(fā)送讀取解調后的高頻數(shù)據命令,各產品向CAN總線返回解調的高頻的數(shù)據。
上位機軟件對比分析各產品返回解調后的數(shù)據,如果某一產品返回的數(shù)據有問題,停止產品供電,LED故障指示,并在上位機軟件顯示相對應項目測試不合格。
實施本發(fā)明提供的BCM多機自動化測試系統(tǒng)及方法與現(xiàn)有技術相比具有以下有益效果:本發(fā)明能夠實現(xiàn)1.一個測試系統(tǒng)對多個產品進行測試;2.每個產品賦予不同CAN的測試ID;3.通過CAN總線將含有測試的程序的信息發(fā)給各產品,完成測試;4.產品將以測試信息的結果通過CAN反饋給上位機;5.上位機將各個產品的測試狀態(tài)(OK,NG)進行記錄分析顯示。
可以理解的是,對于本領域的普通技術人員來說,可以根據本發(fā)明的技術構思做出其它各種相應的改變與變形,而所有這些改變與變形都應屬于本發(fā)明權利要求的保護范圍。