李兵,顧國(guó)微,胥峰,丁冉冉,林德強(qiáng)
?
基于VB6.0的A柱沖擊試驗(yàn)臺(tái)控制系統(tǒng)設(shè)計(jì)
李兵,顧國(guó)微,胥峰,丁冉冉,林德強(qiáng)
(卡達(dá)克機(jī)動(dòng)車質(zhì)量檢驗(yàn)中心(寧波)有限公司,浙江 寧波 315336)
文章通過對(duì)ECE R29的分析,介紹了一套基于VB6.0軟件平臺(tái)和PCI-1742U研華數(shù)據(jù)采集卡開發(fā)的商用車駕駛室A柱沖擊試驗(yàn)臺(tái)控制系統(tǒng)。文中詳細(xì)說明了控制系統(tǒng)硬件和軟件的設(shè)計(jì)方案,并對(duì)關(guān)鍵傳感器數(shù)據(jù)采集問題進(jìn)行了分析。通過后期試驗(yàn)驗(yàn)證,表明該控制系統(tǒng)效果良好,應(yīng)用前景廣泛。
VB 6.0軟件平臺(tái);PCI-1742U數(shù)據(jù)采集卡;控制系統(tǒng)
駕駛室A柱沖擊試驗(yàn)臺(tái)是根據(jù)標(biāo)準(zhǔn)ECE R29《關(guān)于就商用車輛駕駛室成員防護(hù)方面批準(zhǔn)車輛的統(tǒng)一規(guī)定》[1]和GB 17354《汽車前、后端保護(hù)裝置》[2]中對(duì)于測(cè)試商用車駕駛室A柱遭受劇烈碰撞時(shí)的強(qiáng)度試驗(yàn)要求而設(shè)計(jì)的一款試驗(yàn)裝置。該試驗(yàn)臺(tái)利用氣動(dòng)杠桿掛鉤機(jī)構(gòu)鎖定和釋放擺錘,另外還配置了擺錘制動(dòng)機(jī)構(gòu),保證撞擊后能使擺錘盡快穩(wěn)定停擺。本文主要利用研華PCI1742U數(shù)據(jù)采集卡、PCLD-785開關(guān)量輸出卡、PCLD-782開關(guān)量輸入卡以及各種測(cè)試傳感器搭建控制系統(tǒng)的硬件平臺(tái),并基于VB6.0軟件開發(fā)平臺(tái)設(shè)計(jì)了系統(tǒng)的可視化控制界面,經(jīng)過試驗(yàn)測(cè)試證明,該控制系統(tǒng)能夠自動(dòng)控制試驗(yàn)臺(tái)各參數(shù),使試驗(yàn)臺(tái)自動(dòng)按程序進(jìn)行試驗(yàn),并能夠?qū)y(cè)試的各參數(shù)實(shí)時(shí)采集、分別顯示,具有較好的抗干擾能力和良好的可靠性。
駕駛室A柱沖擊試驗(yàn)臺(tái)控制系統(tǒng)是在VB6.0的開發(fā)環(huán)境下,利用研華板卡進(jìn)行模擬量、開關(guān)量數(shù)據(jù)的采集以及開關(guān)量和模擬量的輸出,基本原理圖如圖1所示。該駕駛室A柱沖擊試驗(yàn)臺(tái)控制系統(tǒng)主要包含了數(shù)據(jù)采集和數(shù)據(jù)處理兩個(gè)部分,其中數(shù)據(jù)采集部分主要為采集對(duì)象、各種類型傳感器、PCLD-782、PCLD-785 I/O板卡以及PCI-1742U數(shù)據(jù)采集卡,數(shù)據(jù)處理部分主要由基于研華工控機(jī)搭建的VB6.0處理系統(tǒng)組成[3-5]。
與商用車駕駛室A柱沖擊試驗(yàn)相關(guān)的電機(jī)控制及傳感器參數(shù)測(cè)試工作均是由計(jì)算機(jī)來完成的,所以計(jì)算機(jī)在沖擊試驗(yàn)臺(tái)控制系統(tǒng)中起著大腦神經(jīng)中樞的作用。目前常用的計(jì)算機(jī)根據(jù)使用場(chǎng)合的不同主要有普通計(jì)算機(jī)、商用計(jì)算機(jī)和工控機(jī)三種類別,其中工控機(jī)基于其設(shè)計(jì)特點(diǎn),在工廠設(shè)備控制開發(fā)中普遍被采用,相比于普通計(jì)算機(jī)和商用計(jì)算機(jī),工控機(jī)具有如下優(yōu)勢(shì):能夠有效地防止粉塵,適應(yīng)惡劣的工作環(huán)境;可以防止外界的電磁干擾,抗干擾能力強(qiáng);具有多個(gè)PCI擴(kuò)展卡槽,方便后期系統(tǒng)的二次開發(fā)和擴(kuò)展。鑒于以上優(yōu)點(diǎn),本文中選取研華生產(chǎn)的上架式IPC-610工控機(jī)作為擺錘沖擊試驗(yàn)臺(tái)控制系統(tǒng)的主機(jī),通過后期的測(cè)試驗(yàn)證表明,該工控機(jī)能夠較好地滿足試驗(yàn)要求。
圖1 數(shù)據(jù)采集原理圖
數(shù)據(jù)采集系統(tǒng)是外界傳感器或控制開關(guān)與計(jì)算機(jī)之間進(jìn)行通信的橋梁,它不僅有各種測(cè)試量的采集功能,還具有模擬量或數(shù)字信號(hào)量輸出的功能。本文中的駕駛室A柱沖擊試驗(yàn)臺(tái)控制系統(tǒng)采用研華生產(chǎn)的PCI-1742U數(shù)據(jù)采集卡及其配套設(shè)備PCLD-782、PCLD-785數(shù)字量輸入、輸出卡進(jìn)行各種傳感器測(cè)試量的采集。其中PCI-1742U采集卡具有16路單端模擬量或8路差分模擬量輸入通道、16路模擬量輸出通道、16路TTL數(shù)字量輸出和16路TTL數(shù)字量輸入通道,是一款性價(jià)比較高的高分辨率多功能PCI數(shù)據(jù)采集卡,可以實(shí)現(xiàn)電壓或電流信號(hào)的采集、控制和輸出[6]。將PCI-1742U插入工控機(jī)的PCI卡槽中,同時(shí)連接好接線端子板及輸入、輸出卡用于系統(tǒng)外部傳感器的監(jiān)測(cè),打開工控機(jī)后,計(jì)算機(jī)系統(tǒng)會(huì)自動(dòng)發(fā)現(xiàn)新硬件,根據(jù)提示可以很快完成采集卡驅(qū)動(dòng)程序的安裝。
本文中的駕駛室A柱沖擊試驗(yàn)臺(tái)主要包含了測(cè)量車輛固定拉力、擺錘撞擊速度、氣缸制動(dòng)氣壓和擺錘提升角度的四種類型傳感器。對(duì)于測(cè)量車輛固定拉力、擺錘撞擊速度、氣缸制動(dòng)氣壓的傳感器目前市場(chǎng)上應(yīng)用比較多的為壓電式傳感器,其基本工作原理是傳感器將外部測(cè)量的信號(hào)轉(zhuǎn)換為電壓信號(hào)輸送給采集卡,這類傳感器性能穩(wěn)定、輸出線性好,所以本設(shè)計(jì)系統(tǒng)中選擇壓電式的拉力、速度和氣壓傳感器。對(duì)于擺錘提升角度,本文中選取角度編碼器進(jìn)行測(cè)量,根據(jù)碼盤的刻孔方式不同,角度編碼器可以分為增量型編碼器和絕對(duì)值型編碼器,前者是將位移電信號(hào)轉(zhuǎn)換成計(jì)數(shù)脈沖,設(shè)備每轉(zhuǎn)過一定的角度,就會(huì)發(fā)出一個(gè)脈沖信號(hào),絕對(duì)值型編碼器的每一個(gè)位置對(duì)應(yīng)一個(gè)確定的數(shù)字碼,因此它的示值只與測(cè)量的起始和終止位置有關(guān),而與測(cè)量的中間過程無關(guān)。由于本系統(tǒng)中角度編碼器的數(shù)據(jù)傳輸距離長(zhǎng),增量型編碼器受傳輸距離影響較大,所以選取基于RS 485接口的磁電式絕對(duì)值型旋轉(zhuǎn)編碼器用于商用車駕駛室A柱沖擊試驗(yàn)臺(tái)擺臂擺角的測(cè)量。
控制系統(tǒng)軟件基于Window開發(fā)環(huán)境,并借助Windows友好的交互界面,在VB6.0開發(fā)平臺(tái)以及研華公司提供的驅(qū)動(dòng)程序和通訊函數(shù)庫的支持下,完成了駕駛室A柱沖擊試驗(yàn)臺(tái)控制程序的搭建。該控制系統(tǒng)軟件部分主要分為傳感器測(cè)試、傳感器標(biāo)定、參數(shù)設(shè)置、手動(dòng)調(diào)試、沖擊試驗(yàn)、數(shù)據(jù)保存六大功能模塊,控制軟件的結(jié)構(gòu)框架圖如圖2所示。
圖2 系統(tǒng)軟件結(jié)構(gòu)框架圖
在工控機(jī)上基于VB6.0設(shè)計(jì)控制界面,通過在標(biāo)準(zhǔn)窗體中添加相應(yīng)的控件從而達(dá)到系統(tǒng)的控制要求,系統(tǒng)的主界面如圖3所示,可以通過參數(shù)設(shè)置界面中輸入試驗(yàn)樣車的質(zhì)量自動(dòng)計(jì)算出擺錘配重,并根據(jù)輸入的撞擊速度系統(tǒng)自動(dòng)標(biāo)定生成相應(yīng)的擺錘擺動(dòng)角度。待擺動(dòng)系統(tǒng)達(dá)到設(shè)定角度并穩(wěn)定后,點(diǎn)擊擺錘釋放,安全銷縮回、掛鉤開啟,擺錘開始下落,控制系統(tǒng)自動(dòng)開始采集速度傳感器的信號(hào),撞擊完成后,點(diǎn)擊制動(dòng)按鈕,可完成擺錘的制動(dòng)。該控制界面可以完成開環(huán)步進(jìn)伺服控制系統(tǒng),也可用于閉環(huán)步進(jìn)伺服控制系統(tǒng)。
圖3 系統(tǒng)控制界面
VB6.0由于不具備對(duì)I/O地址的直接訪問能力,所以需要調(diào)用研華PCI1742U數(shù)據(jù)采集卡提供的驅(qū)動(dòng)函數(shù)實(shí)現(xiàn)對(duì)I/O地址的訪問,從而達(dá)到數(shù)據(jù)采集的目的。研華PCI1742U數(shù)據(jù)采集卡的驅(qū)動(dòng)函數(shù)實(shí)現(xiàn)了模擬量輸入、模擬量輸出、數(shù)字量輸入、數(shù)字量輸出、計(jì)數(shù)以及溫度測(cè)量等各種功能。模擬量輸入函數(shù)組的采樣方式分為單通道,多通道,及中斷或DMA方式的波形輸入采樣等,本文選取中斷方式進(jìn)行數(shù)據(jù)采樣。為了達(dá)到本文所要求的模擬量電壓信號(hào)的采集,需要完成一下五個(gè)步驟:
1)打開PCI-1742U數(shù)據(jù)采集卡,返回值為0表示設(shè)備打開成功,否則設(shè)備打開失敗。
2)DRV_DeviceOpen(DeviceNumber, AI_DeviceHandle)
初始化采樣數(shù)據(jù)緩沖區(qū),當(dāng)開始采樣操作前,必須設(shè)置要采樣的個(gè)數(shù)即采樣緩存的大小,緩存大小應(yīng)該是FIFO/2 大小的整數(shù)倍。
ptAIGetConfig.buffer = DRV_GetAddress (lpDEVCONFI G_AI)
ErrCde = DRV_AIGetConfig(AI_DeviceHandle, ptAIGet Config)
3)啟動(dòng)采集卡數(shù)據(jù)采集操作,通過內(nèi)置函數(shù)DRV_FAI -IntStart 以中斷方式啟動(dòng)傳感器的數(shù)據(jù)采集操作,創(chuàng)建一個(gè)相應(yīng)的數(shù)據(jù)結(jié)構(gòu)ptAiStart,并且使用該數(shù)據(jù)結(jié)構(gòu)的指針作為函數(shù)的參數(shù),把相應(yīng)的設(shè)置信息傳輸給驅(qū)動(dòng)程序。
ErrCde = DRV_FAIIntScanStart(AI_DeviceHandle, ptAi Start)
4)數(shù)據(jù)傳輸,通過驅(qū)動(dòng)向用戶發(fā)預(yù)定的事件,并等待事件發(fā)生的通知,當(dāng)?shù)玫绞录ㄖ?,調(diào)用函數(shù)查詢緩沖區(qū)當(dāng)前的數(shù)據(jù)采集狀態(tài)。當(dāng)有中斷事件發(fā)生通過調(diào)用傳輸函數(shù)DRV_FAITransfer及時(shí)地把采樣緩存中的數(shù)據(jù)傳輸?shù)接脩艟彺妗?/p>
ptEnableEvent.EventType = ADS_EVT_INTERRUPT Or ADS_EVT_BUFCHANGE Or ADS_EVT_OVERRUN Or ADS _EVT_TERMINATED
ptEnableEvent.Enabled = gwEvtFlag
ptEnableEvent.Count = 512 'gwFifoSize
ErrCde = DRV_EnableEvent(AI_DeviceHandle, ptEnable Event)
DRV_FAITransfer (DriverHandle,lpFAITransfer )
5)停止傳感器數(shù)據(jù)采集,關(guān)閉PCI-1742U數(shù)據(jù)采集卡設(shè)備。
DRV_FAITerminate AI_DeviceHandle
DRV_DeviceClose (AI_DeviceHandle)
本文中所設(shè)計(jì)的控制系統(tǒng)選用兩線制RS485串口通信協(xié)議進(jìn)行擺錘提升角度信號(hào)的采集,為了能夠?qū)崿F(xiàn)PC與角度傳感器的實(shí)時(shí)通訊完成命令的發(fā)送及數(shù)據(jù)的接收,在VB6.0的開發(fā)環(huán)境中,內(nèi)置了MSComm控件和Timmer定時(shí)器控件從而提供了各種通信命令的接口的搭建。其中MSComm控件是VB6.0提供的一個(gè)ActiveX控件,用于編程軟件對(duì)PC工控機(jī)串口的通信及訪問,MSComm控件提供了事件驅(qū)動(dòng)法和查詢法兩種通信處理方式。事件驅(qū)動(dòng)方式是在事件發(fā)生時(shí)需要得到通知,例如,在串口接收緩沖區(qū)中有字符,或者Carrier Detect (CD)或Request To Send (RTS) 線上一個(gè)字符到達(dá)或一個(gè)變化發(fā)生時(shí),通過MSComm控件的OnComm事件捕獲并處理這些通訊事件,事件驅(qū)動(dòng)方式響應(yīng)及時(shí),可靠性高,是處理串行端口交互作用的一種非常有效的方法;查詢方式是在程序的每個(gè)關(guān)鍵功能之后,通過檢查 Comm Event 屬性的值來查詢事件和錯(cuò)誤,比較簡(jiǎn)單便捷,如果應(yīng)用程序較小,并且是自保持的,這種方法比較可取。為了滿足角度編碼器數(shù)據(jù)傳輸過程中的實(shí)時(shí)性和完整性,本文中選取事件驅(qū)動(dòng)方式。
基于VB6.0對(duì)MSComm控件的串口通信編程極為方便,程序員只需對(duì)MSComm控件完成波特率、數(shù)據(jù)校驗(yàn)等初始化設(shè)置,并選定工作方式,即可打開通信串口進(jìn)行數(shù)據(jù)的讀取與發(fā)送,具體設(shè)置如表1所示。
表1 MSComm控件的初始化設(shè)置
經(jīng)過后期的反復(fù)驗(yàn)證,本文所研制的駕駛室A柱沖擊試驗(yàn)臺(tái)控制系統(tǒng)的各傳感器模擬量采集及電機(jī)控制等各項(xiàng)技術(shù)指標(biāo)都滿足了設(shè)計(jì)要求。該控制系統(tǒng)經(jīng)計(jì)量檢測(cè)機(jī)構(gòu)認(rèn)證后可用于ECE R29-03等法規(guī)規(guī)定的多種類車駕駛室結(jié)構(gòu)強(qiáng)度測(cè)試試驗(yàn)和相關(guān)商用車企業(yè)對(duì)于駕駛室乘員保護(hù)性能的相關(guān)研發(fā)試驗(yàn)。
[1] ECE R29 Uniform provisions concerning the approval of vehicles with regard to the protection of the occupants of the cab of a com -mercial vehicle.
[2] GB 17354汽車前,后端保護(hù)裝置.
[3] 肖卓名,廖攀.基于研華數(shù)據(jù)采集卡的智能張壓力測(cè)試系統(tǒng)設(shè)計(jì)[J]. 裝備制造技術(shù),2017(11):49-52.
[4] 李戰(zhàn)明,趙靜.基于VB與研華數(shù)據(jù)采集卡的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)與現(xiàn)代化, 2012(7):236-238.
[5] 蘇文華.基于開關(guān)量數(shù)據(jù)采集卡的通信接口設(shè)計(jì)與實(shí)現(xiàn)[D].華中科技大學(xué),2008.
[6] 張多.基于PCI-1710數(shù)據(jù)采集系統(tǒng)的研究與實(shí)現(xiàn)[J].廣東白云學(xué)院學(xué)刊, 2005(2):67-69.
Design of The Control System Based on VB 6.0 for A Column Impact Test Bed
Li Bing, Gu Guowei, Xu Feng, Ding Ranran, Lin Deqiang
( CATARC Automotive Quality Inspection Center(Ningbo) Co. Ltd, Zhejiang Ningbo 315336 )
This paper introduced a control system basing on VB platform and PCI-1742U ADVANTECH data acquisition card for a column impact test bed through the research and analysis of the ECE R29. This paper descriptions the design of control system's hardware and software, and analyzes the key sensor data acquisition. Through post test indicates that this control system has good effectiveness and broad prospect of application.
VB software platform; PCI-1742U advantech data acquisition card;Control system
B
1671-7988(2018)16-61-03
U467.4
B
1671-7988(2018)16-61-03
CLC NO.: U467.4
李兵 (1989-),男,研究生,中級(jí)工程師,整車性能測(cè)試分析。
10.16638/j.cnki.1671-7988.2018.16.022