《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 测试测量 > 业界动态 > 车用高速电磁阀驱动及检测系统的研制

车用高速电磁阀驱动及检测系统的研制

2008-07-16
作者:龚元明, 徐权奎, 于世涛
關(guān)鍵詞: 比较器 脉宽 外设 车用 数据采集

  摘 要: 根據(jù)車用" title="車用">車用噴油器電磁閥驅(qū)動的特點(diǎn),開發(fā)了以單片機(jī)PIC18F4450為下位機(jī)、PC機(jī)為上位機(jī)的多路車用電磁閥智能驅(qū)動及參數(shù)檢測系統(tǒng)。本文介紹了該系統(tǒng)的軟硬件設(shè)計(jì)。
  關(guān)鍵詞: 電磁閥 微處理器 檢測系統(tǒng)


  在發(fā)動機(jī)電子控制燃油噴射系統(tǒng)中,通過三通高速電磁閥的開啟時刻決定發(fā)動機(jī)的噴油正時;在一定的噴油壓力下,噴油器電磁閥通電時間的長短(即噴油脈寬" title="脈寬">脈寬)決定噴油量。因此,不但要對噴油器電磁閥開啟時刻進(jìn)行精確控制,而且要對噴油器電磁閥通電時間脈寬進(jìn)行準(zhǔn)確控制,以達(dá)到對發(fā)動機(jī)的噴油正時和噴油量的精確控制。要解決噴油正時和噴油量的可控制性問題,首先要研發(fā)電控噴油器,而電控噴油器的關(guān)鍵技術(shù)之一就是高速電磁閥的開發(fā)。研發(fā)電磁閥的驅(qū)動電路和參數(shù)檢測試驗(yàn)系統(tǒng)是開發(fā)新型電控噴油器的基礎(chǔ)和前提。
  根據(jù)車用噴油器電磁閥驅(qū)動的特點(diǎn),本文研制了以單片機(jī)PIC18F4450為下位機(jī)、PC機(jī)為上位機(jī)的多路車用電磁閥智能驅(qū)動及參數(shù)檢測系統(tǒng)。該系統(tǒng)不僅具有可編程設(shè)定電磁閥的驅(qū)動電壓、提升和保持電流大小、電磁閥驅(qū)動電流的寬度、頻率等功能;還能對電磁閥驅(qū)動的開啟延時時間和關(guān)閉延時時間等動態(tài)特性參數(shù)進(jìn)行實(shí)時檢測。該系統(tǒng)能夠?qū)崿F(xiàn)由外部輸入脈沖以及內(nèi)部計(jì)算產(chǎn)生脈沖兩種方式驅(qū)動電磁閥,通過數(shù)據(jù)通訊在PC機(jī)上顯示電磁閥驅(qū)動的電流響應(yīng)過程曲線。同時,根據(jù)車用電磁閥驅(qū)動要求和檢測的參數(shù),對電磁閥進(jìn)行診斷并輸出結(jié)果。該系統(tǒng)可用于高速電磁閥出廠檢測和標(biāo)定。
1 硬件設(shè)計(jì)
  為了實(shí)現(xiàn)電磁閥的驅(qū)動電壓、提升保持電流以及電磁閥工作脈寬和間隔可調(diào),本系統(tǒng)采用了可編程的方式,如圖1所示。該系統(tǒng)的核心是PIC18F4450微控制器。PC機(jī)通過USB口向微控制器PIC18F4450傳送驅(qū)動電壓、提升保持電流等參數(shù),然后微控制器根據(jù)相應(yīng)的參數(shù)輸出脈沖以驅(qū)動電磁閥實(shí)現(xiàn)提升保持電路。同時,微控制器將采集到的電磁閥開啟延時時間、關(guān)閉延時時間以及電磁閥驅(qū)動電流波形等通過USB口傳往PC機(jī)以實(shí)現(xiàn)電磁閥特征的檢測。


1.1 高壓電源模塊
  高壓電源對于電磁閥的驅(qū)動十分重要。高壓電源的電壓大小對電磁閥的響應(yīng)、壽命等有很大影響。為了實(shí)現(xiàn)系統(tǒng)對可編程高壓電壓的要求,本系統(tǒng)采用基于UC3842的帶電壓反饋的PWM方式實(shí)現(xiàn)電壓從+24V到目標(biāo)電壓Vout的提升。高壓電源模塊結(jié)構(gòu)如圖2所示。高壓模塊輸出的電壓Vout經(jīng)過R1、RL分壓后的反饋輸入到UC3842中,反饋電壓一直提升到2.5V為止,如式1所示。
  
  通過設(shè)置不同的分壓電阻RL,高壓電源模塊即可以輸出不同電壓值的電源。本系統(tǒng)的分壓電阻RL采用可編程的方式來實(shí)現(xiàn)。微處理器根據(jù)PC機(jī)傳來的所需驅(qū)動電壓Vout,根據(jù)式(1)計(jì)算出需要接入的電阻值,然后通過I2C總線設(shè)置數(shù)字電位器通道1為對應(yīng)的電阻值RL,高壓電源模塊即輸出相應(yīng)電壓的電源。


1.2 電磁閥驅(qū)動模塊
  電磁閥的驅(qū)動電路采用高低端控制方式,高端采用開關(guān)控制,低端采用PWM電流反饋閉環(huán)控制。這樣不僅可以實(shí)現(xiàn)電磁閥的電流提升和保持控制,而且在噴油器電磁閥關(guān)閉時,可實(shí)現(xiàn)噴油器電磁閥在關(guān)斷時產(chǎn)生的能量的回收,以提高蓄電池的工作時間,減小工作電流。每個電磁閥按照電磁閥的奇偶編號分為COM1和COM2兩組。以驅(qū)動六個噴油器電磁閥為例,驅(qū)動模塊工作原理圖見圖1。
  電磁閥驅(qū)動電路的高端采用開關(guān)方式。根據(jù)電磁閥開啟觸發(fā)脈沖的不同,分為外部輸入脈沖信號和內(nèi)部計(jì)算產(chǎn)生脈沖信號兩種方式。(1)當(dāng)驅(qū)動信號為外部輸入脈沖時,微處理器的D口設(shè)置為輸入口方式,用于檢測輸入的脈沖信號。(2)當(dāng)驅(qū)動信號需要微處理器自己計(jì)算產(chǎn)生時,微處理器的D口設(shè)置為輸出方式。微處理器根據(jù)輸入的發(fā)動機(jī)轉(zhuǎn)速、驅(qū)動脈寬以及電磁閥數(shù)量在D口上依次輸出所要求的脈寬和周期的方波信號。外部輸入的脈沖信號或PIC18F4450計(jì)算產(chǎn)生的方波信號分為奇偶兩組經(jīng)過三端“或門”分別輸入PIC18F4450的CCP1、CCP2端口,其中CCP1、CCP2工作在輸入脈沖捕捉模式。PIC18F4450根據(jù)CCP端口以及D端口的狀態(tài)在B端口輸出高端控制脈沖outM1~OUTM6,經(jīng)過驅(qū)動保護(hù)電路后用于控制MOSEFT管Q1~Q6的開關(guān)狀態(tài)。


  電磁閥低端驅(qū)動電路則通過PIC18F4450內(nèi)部的比較器" title="比較器">比較器實(shí)現(xiàn)。PIC18F4450內(nèi)部共有兩個可編程比較器C1、C2,每個比較器有八種可編程模式,本系統(tǒng)采用了其中三種,分別為011、100以及110模式。如圖3所示,驅(qū)動電流經(jīng)過采樣電阻形成電壓后經(jīng)過Cin口進(jìn)入比較器的一端;比較器的參考電壓則根據(jù)工作模式的不同分為內(nèi)部參考電壓模式和外部輸入?yún)⒖茧妷耗J?。其中,?nèi)部參考模式110如圖3中相應(yīng)部分所示,其參考電壓Vref-H由PIC18F4450內(nèi)部產(chǎn)生。參考電壓范圍為1.25V~3.59V,分辨率為0.156V,用于本系統(tǒng)的可編程電磁閥提升電流參考電壓。工作在模式011和模式100下的比較器則采用外部參考電壓模式。其中,比較器在模式011下工作時的比較結(jié)果直接輸出到引腳RE1、RE2上,比較器在模式100下工作時比較結(jié)果則不輸出,只是對內(nèi)部寄存器置位。本檢測系統(tǒng)共采用兩種外部可編程比較電壓:Vref-L和Vref-OFF,分別用于電磁閥在保持電流工作模式和關(guān)閉時間檢測模式下的參考電壓。通過PIC18F4450與數(shù)字電位器間的I2C通訊,數(shù)字電位器的通道2可以輸出可編程的參考電壓作為比較器C1、C2的參考電壓。
  電磁閥的低端工作時序如圖4所示。其流程如下:(1)系統(tǒng)初始化完畢后,設(shè)置CCP為上升沿捕捉模式,允許CCP中斷。(2)捕捉到CCP中斷后,打開低端驅(qū)動;設(shè)置比較器工作模式為110,設(shè)置內(nèi)部參考電壓為Vref-H作為提升參考電壓,允許比較器中斷;設(shè)置CCP為下降沿捕捉中斷。(2)比較器中斷中,電磁閥已經(jīng)達(dá)到設(shè)定的提升電流后,設(shè)置數(shù)字電位器的通道2輸出電壓為保持參考電壓Vref-L。關(guān)閉電磁閥低端驅(qū)動。(3)延時一段時間后,改變比較器工作模式為011模式,電磁閥進(jìn)入PWM反饋控制的保持電流階段。(4)CCP捕捉到下降沿中斷后,設(shè)置比較器工作模式為011,關(guān)閉高低端驅(qū)動;設(shè)置數(shù)字電位器的通道2輸出電壓為關(guān)閉參考電壓Vref-OFF。(5)比較器中斷后,設(shè)置CCP為上升沿中斷,允許CCP中斷。


1.3 檢測模塊
  本系統(tǒng)檢測模塊分為電磁閥的提升關(guān)閉響應(yīng)時間檢測模塊和電磁閥驅(qū)動電流曲線檢測模塊兩部分。對于電磁閥響應(yīng)時間的檢測,利用PIC18F4450內(nèi)部的TIMER1定時器即可以實(shí)現(xiàn)。如圖4所示,當(dāng)CCP產(chǎn)生上升沿中斷時,記錄TIMER1的計(jì)數(shù)值T0。當(dāng)達(dá)到提升電流時,比較器產(chǎn)生中斷,記下此時TIMER1的計(jì)數(shù)值T1。當(dāng)CCP產(chǎn)生下降沿中斷時,記下此時TIME1的計(jì)數(shù)值T2。當(dāng)比較器又產(chǎn)生中斷時,記下TIMER1的計(jì)數(shù)值T3。則:
  提升響應(yīng)時間=(T1-T0)×T    (2)
  驅(qū)動脈寬=(T2-T0)×T      (3)
  關(guān)閉響應(yīng)時間=(T3-T2)×T (4)
  其中, T為TIMER1的周期。
  模擬信號的檢測是采用PIC18F4450的A/D轉(zhuǎn)換模塊來實(shí)現(xiàn)的。PIC的ADC模塊選通其中的一路模擬輸入進(jìn)行A/D轉(zhuǎn)換。需要采集的模擬量包括驅(qū)動電流以及參考電壓。為了以較高的速度采集兩路驅(qū)動電流以及參考電壓且不影響USB數(shù)據(jù)通訊,模擬信號的采集采用間斷的方式。如圖4所示,采集T0~T4這一段時間的波形。在采集的同時記下開始采集的時間以及結(jié)束采集的時間作為PC機(jī)顯示波形的時間軸。當(dāng)ADC轉(zhuǎn)換完成后即啟動微處理器與PC機(jī)的通訊。參考電壓的采集則在每次設(shè)定完參考電壓后及時采集,用于PC機(jī)的顯示以及確定參考電壓是否設(shè)置正確。
1.4 通訊模塊
  由于需要實(shí)時檢測電磁閥的驅(qū)動電流波形,微控制器與PC機(jī)之間的數(shù)據(jù)通訊量較大,因此本系統(tǒng)采用USB通訊的方式。PIC18F4450內(nèi)部帶有USB通訊模塊,可以實(shí)現(xiàn)高達(dá)12Mbps的數(shù)據(jù)通訊速率,完全滿足本系統(tǒng)的數(shù)據(jù)通訊要求。
2 軟件設(shè)計(jì)
  高速電磁閥檢測模塊的軟件主要由電磁閥驅(qū)動程序、數(shù)據(jù)采集" title="數(shù)據(jù)采集">數(shù)據(jù)采集程序以及上位機(jī)、下位機(jī)間的通訊程序組成。電磁閥驅(qū)動程序主要實(shí)現(xiàn)利用內(nèi)部或者外部觸發(fā)提升保持電流以驅(qū)動高速電磁閥。數(shù)據(jù)采集程序則完成電磁閥的電流波形采集以及提升、關(guān)閉時間等檢測功能。通訊程序則實(shí)現(xiàn)采集數(shù)據(jù)從微處理器通過USB接口上傳到PC機(jī)以進(jìn)行采集加工的功能。下面分別就這些功能的實(shí)現(xiàn)進(jìn)行闡述。
2.1 電磁閥驅(qū)動程序設(shè)計(jì)
  電磁閥驅(qū)動程序主要用于實(shí)現(xiàn)電磁閥的提升保持電流驅(qū)動。程序是利用中斷方式實(shí)現(xiàn)的。主程序如圖5所示。主程序用于確定是內(nèi)部還是外觸發(fā)脈沖方式,并將相應(yīng)的IO口置位,然后等待中斷。圖6和圖7則是CCP中斷處理程序流程及比較器中斷處理程序流程,采用帶反饋的PWM實(shí)現(xiàn)圖4所描述的提升保持電流驅(qū)動并檢測提升、關(guān)閉響應(yīng)時間。

?


2.2 數(shù)據(jù)采集程序設(shè)計(jì)
  數(shù)據(jù)采集系統(tǒng)主要采集電磁閥側(cè)特性,包括提升及關(guān)閉響應(yīng)時間、驅(qū)動脈寬、驅(qū)動電流波形等。其中,提升及關(guān)閉響應(yīng)時間驅(qū)動脈沖可以根據(jù)CCP、比較器中斷時的計(jì)時器值結(jié)合式(2)、式(3)、式(4)計(jì)算出來。進(jìn)入微處理器中斷時,記錄T0、T1、T2、T3的值,存入緩沖區(qū)中。電流波形采集則利用PIC18F4450的A/D轉(zhuǎn)換模塊來實(shí)現(xiàn)。為了保證數(shù)據(jù)采集和傳輸?shù)目煽啃?,所有采集的?shù)據(jù)均采用雙緩沖區(qū)的形式。其中,一個緩沖區(qū)為USB模塊自帶的1KB RAM,另外的一個從PIC18F4450的RAM劃出1KB作為緩沖區(qū)。采集的數(shù)據(jù)一般寫入U(xiǎn)SB RAM中,只有當(dāng)USB模塊在USB通訊區(qū)間來不及傳送USB RAM中的數(shù)據(jù)時,采集的數(shù)據(jù)才被寫入PIC18F4450的RAM中。
2.3 通訊軟件設(shè)計(jì)
  為了使大量的數(shù)據(jù)能夠高速地從MCU傳送到PC機(jī),本系統(tǒng)采用USB通訊方式。為了實(shí)現(xiàn)數(shù)據(jù)的高速可靠傳送,本系統(tǒng)采用具有錯誤檢測以及數(shù)據(jù)重傳功能的塊傳輸模式。系統(tǒng)采用多端點(diǎn)(endpoint)的USB傳送方式,其中端點(diǎn)1用于傳送T0~T3,端點(diǎn)2用于傳輸A/D轉(zhuǎn)換的結(jié)果。
  軟件主要包括外設(shè)" title="外設(shè)">外設(shè)(18F4450)固件程序(firmware)、PC上位機(jī)的驅(qū)動程序以及應(yīng)用程序。固件程序包括系統(tǒng)初始化以及傳輸完成中斷處理程序。
  系統(tǒng)初始化用于USB模塊的設(shè)置。傳輸完成中斷分為IN令牌中斷和OUT令牌中斷。通過主機(jī)每5ms發(fā)出IN令牌,當(dāng)外設(shè)處于如圖4所示的數(shù)據(jù)采集區(qū)間時,外設(shè)使用NAK表示忙。當(dāng)外設(shè)完成數(shù)據(jù)采集,處于USB通訊區(qū)間時,外設(shè)的USB模塊將USB RAM中保存的數(shù)據(jù)送往主機(jī),響應(yīng)IN令牌。當(dāng)主機(jī)發(fā)出一個ACK 信號表示數(shù)據(jù)接收無誤時,清空USB RAM用于保存下一次檢測數(shù)據(jù)。如果這是一個多包傳輸,那么主機(jī)將發(fā)多個IN令牌直到主機(jī)所期望的所有數(shù)據(jù)傳輸完畢。
  PC上位機(jī)的驅(qū)動程序則采用Microchip公司PIC18F4450 USB通用驅(qū)動程序MCHPUSB DRIVER來實(shí)現(xiàn)。應(yīng)用程序通過Win32 函數(shù)DeviceIoControl()調(diào)用I/O控制碼(IOCTL)來訪問外設(shè)。通過主機(jī)每隔5ms調(diào)用OCTL_USB_BULK_WRITE函數(shù)向PIC18F4450發(fā)送一個控制碼,當(dāng)接收到外設(shè)的ACK信號后,上位機(jī)緊接著用OCTL_USB_BULK_READ 控制碼從外設(shè)中讀出數(shù)據(jù)。在傳輸完成后的剩余時間內(nèi),應(yīng)用程序完成數(shù)據(jù)的處理和顯示功能。
  該高速電磁閥驅(qū)動以及參數(shù)檢測系統(tǒng)在某型號的噴油器電磁閥上得到了應(yīng)用。圖8為在驅(qū)動電壓為110V、提升電流設(shè)置為17A、保持電流設(shè)置為7A、發(fā)動機(jī)轉(zhuǎn)速為1500rpm、驅(qū)動脈寬為2.0ms的情況下檢測到的驅(qū)動電流的波形。試驗(yàn)證明,該系統(tǒng)可以用于各種車用高速電磁閥的檢測。


參考文獻(xiàn)
1 PIC18Fxx8 data sheet. Microchip Technology Inc., 2003
2 Universal serial bus specification reversion 1.1. Intel Inc, 1998
3 顏榮江, 陰大興. 基于EZ-USB的數(shù)據(jù)采集與控制. 單片機(jī)與嵌入式系統(tǒng)應(yīng)用, 2002;(2)

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。