曹 浩 文 豐 賈興中
(中北大學(xué)省部共建動(dòng)態(tài)測(cè)技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室電子測(cè)試技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室 太原 030051)
火工品是裝有火藥或者炸藥,受外界刺激后燃燒或者爆炸,以引燃火藥、引爆炸藥或做機(jī)械功能的一次性使用的元器件[1]。火工品按照輸入能量形式分類可以分為電火工品和化學(xué)火工品[2],本文研究對(duì)象為電火工品,而電火工品對(duì)測(cè)試條件的要求十分敏感[3],而一旦點(diǎn)火電壓、電流超過安全閾值,不僅會(huì)導(dǎo)致火工品自身損壞,還極易引起設(shè)備和人員安全隱患。因此,能否準(zhǔn)確獲得箭(彈)上火工品的點(diǎn)火數(shù)據(jù)就尤為重要。傳統(tǒng)的測(cè)試方法需用人工手持儀器對(duì)多個(gè)對(duì)象測(cè)量并記下測(cè)量結(jié)果[2],不僅效率低下且容易因人為原因造成誤差。孫浩[4]等設(shè)計(jì)了一種點(diǎn)火電流測(cè)試儀可實(shí)現(xiàn)對(duì)點(diǎn)火電流的檢測(cè),但該儀器僅能測(cè)量單一火工品的電流參數(shù),效率較低。針對(duì)上述問題,本文設(shè)計(jì)了一種基于FPGA 的多通道點(diǎn)火數(shù)據(jù)采集系統(tǒng),通過FPGA控制模擬開關(guān)和單ADC芯片實(shí)現(xiàn)8路火工品點(diǎn)火電流、電壓及脈寬的自動(dòng)化采集。
火工品點(diǎn)火數(shù)據(jù)采集系統(tǒng)整體硬件架構(gòu)如圖1 所示,本系統(tǒng)可分為電流信號(hào)處理模塊、電壓信號(hào)處理模塊、通道選擇電路、A/D 轉(zhuǎn)換模塊、FPGA模塊、電源模塊組成。電壓調(diào)理模塊負(fù)責(zé)實(shí)現(xiàn)將前端輸入的點(diǎn)火電壓信號(hào)通過分壓、跟隨等變換將點(diǎn)火電壓信號(hào)調(diào)理在適宜后級(jí)電路工作的電壓范圍之內(nèi)。流壓轉(zhuǎn)換電路用于將輸入的點(diǎn)火電流轉(zhuǎn)換成為電壓之后再輸出至后級(jí)電路。通道選擇電路則通由FPGA 控制模擬開關(guān)選擇對(duì)某路點(diǎn)火數(shù)據(jù)進(jìn)行采集。AD驅(qū)動(dòng)電路用于調(diào)理前級(jí)模擬開關(guān)輸出的信號(hào),使之成為更符合ADC 的輸入要求的信號(hào),并通過抗混疊濾波,提升模數(shù)轉(zhuǎn)換準(zhǔn)確度。電源模塊則為本系統(tǒng)其他模塊進(jìn)行供電。FPGA模塊控制模擬開關(guān)的選通、AD的采集、數(shù)據(jù)的緩存及傳輸。本系統(tǒng)通過以太網(wǎng)接口和上位機(jī)進(jìn)行數(shù)據(jù)和命令傳輸。
因在系統(tǒng)中各個(gè)模塊共需要28V、5V、3.3V、2.5V、1.8V、1.0V 的直流電壓供電其中28V 和5V 由背板提供。若每路直流電壓都采用一種電源芯片單獨(dú)供電,既提高成本,又浪費(fèi)PCB 空間。針對(duì)上述情況,采用AD公司型號(hào)為L(zhǎng)TM4644的DC-DC電源模塊對(duì)整個(gè)系統(tǒng)進(jìn)行供電。該電源模塊可將輸入范圍在4V,至14V 的直流電壓,其輸出可通過配置外部高精度的反饋電阻進(jìn)行設(shè)置[5],從而將5V轉(zhuǎn)換為4 路0.6V~5.5V 范圍內(nèi)的直流電壓輸出,不僅符合本系統(tǒng)供電需求還節(jié)省了資源。僅需在該路的FB 引腳添加一個(gè)電阻RFB就可配置該路的輸出電壓,輸出電壓與RFB的關(guān)系如式(1)所示[6],表達(dá)式中Vout為該路所需輸出的電壓值:
由式(1)可計(jì)算出四路直流電壓輸出所需配置電阻RFB的值進(jìn)行設(shè)置,其中一路的電源配置原理圖如圖2 所示,其余三路供電原理圖僅電阻RFB阻值不同。

圖2 單路供電原理圖
在進(jìn)行PCB設(shè)計(jì)時(shí),所有供電和地均大面積鋪銅保證該模塊有良好的散熱。此外,為避免不同供電電壓之間相互影響,將PCB中的四種電源通過負(fù)片層切割電源的方法分區(qū)設(shè)置電源網(wǎng)絡(luò),不僅可以減小地彈現(xiàn)象,還可減小各電源的電流回路[7]。
3.2.1 電壓調(diào)理電路
因?yàn)辄c(diǎn)火正負(fù)母線電壓可達(dá)±28V,而通常點(diǎn)火通路整體阻值非常小,因此在點(diǎn)火動(dòng)作的瞬間會(huì)產(chǎn)生較大電流導(dǎo)致運(yùn)放燒壞。故為保護(hù)后級(jí)電路筆者設(shè)計(jì)了點(diǎn)火電壓調(diào)理電路。如圖3 所示,電壓調(diào)理電路由分壓電路和電壓跟隨電路組成。

圖3 單路點(diǎn)火電壓調(diào)理電路
如圖3 所示,28VB1+為點(diǎn)火電路的正母線,28VB1-為負(fù)母線,分壓電路輸出如式(2)所示,其中VB表示點(diǎn)火電壓:
因點(diǎn)火電壓最大28V,因此輸入跟隨電路的電壓范圍在0 到9.3V 之間。同時(shí),電阻R1和R2并聯(lián)后與電容C1 構(gòu)成一階低通濾波電路,濾波電路截止頻率可通過以下表達(dá)式求出。
為節(jié)約PCB 布局面積,節(jié)約資源,選擇單電源供電、四通道輸入輸出的運(yùn)放芯片AD824作為調(diào)理電路的運(yùn)算放大器芯片,該芯片供電范圍為3V~30V,且有軌至軌輸入輸出的特點(diǎn),符合設(shè)計(jì)需求。圖3 所示僅為第一通道的電壓調(diào)理電路,其余通道與之相同。
3.2.2 光耦隔離電路
因點(diǎn)火瞬間產(chǎn)生的電壓脈沖和電流較大,必須采取隔離措施才能保證后級(jí)器件不受前級(jí)大電壓的影響。因此,筆者在調(diào)理電路后級(jí)設(shè)計(jì)了光耦隔離電路。光耦隔離模塊電路原理圖如圖4 所示,為提高最終轉(zhuǎn)換精度,采用高精度線性光耦。如圖4 所示,在線性光耦前級(jí)和后級(jí)均設(shè)計(jì)了由運(yùn)放組成的調(diào)理電路用于提高線性光耦的線性度和穩(wěn)定性。假設(shè)此時(shí)在AD824 的正端輸入信號(hào)幅值增加,則會(huì)導(dǎo)致Iled增大、Ipd也會(huì)增大。但是由于PD1的正端接地,因此PD1的電壓很快會(huì)回復(fù)到0V,由于運(yùn)放輸入電阻較大,因此流過R213的電流就和流過PD1的非常接近。因此可以得出以下關(guān)系:

圖4 單路光耦隔離電路
由此可以看出在本電路中IPD1僅取決于輸入電壓和R213的值。由于光電二二極管的輸入光功率和輸出電流之間的關(guān)系是線性的,所以通過穩(wěn)定和線性化PD1,光輸出也會(huì)穩(wěn)定和線性化,PD2也會(huì)穩(wěn)定和線性化。
當(dāng)前級(jí)信號(hào)從AD824的正端輸入,線性光耦的LED便會(huì)發(fā)光,光信號(hào)會(huì)耦合到光電二極管PD1和PD2,PD1和PD2則會(huì)產(chǎn)生電流輸出至下級(jí)電流,該電流會(huì)在R321和OPA4340 組成的跨阻放大器的作用下轉(zhuǎn)換成電壓信號(hào)輸出給后級(jí)。由此可以得出本模塊的輸出電壓的關(guān)系式:
定義線性光耦的傳輸增益為K,則
結(jié)合上面三個(gè)等式可以得出以下等式:
由于K是恒定的,并且輸出電壓VOUT和輸入電壓VIN之間也具有恒定關(guān)系,因此可以得出結(jié)論:光耦隔離電路的增益可以通過調(diào)節(jié)R321和R321實(shí)現(xiàn)。因AD824 的反饋源于光電二極管PD1,而光電二極管的輸出相較于輸入存在一定延遲,因此可能會(huì)引起AD824 和OPA4340 的振蕩,所以在AD824 和OPA4340 的反饋端增加反饋電容,以提高反饋電路的穩(wěn)定性。
因設(shè)計(jì)所選用的模數(shù)轉(zhuǎn)換芯片輸入為電壓信號(hào),因此筆者設(shè)計(jì)了電流信號(hào)處理模塊,本模塊由電壓-電流轉(zhuǎn)換電路和電壓跟隨電路組成。電壓-電流轉(zhuǎn)換電路由霍爾傳感器實(shí)現(xiàn)。霍爾傳感器用于將流經(jīng)霍爾傳感器的電流成比例地轉(zhuǎn)換為電壓信號(hào)輸出,后級(jí)電壓跟隨電路則用于隔離、緩沖。考慮到點(diǎn)火瞬間電流較大,故采用可承受±20A 的ACS714LLCTR-20A-T 型號(hào)霍爾線性電流傳感器,其靈敏度為100mV/A,為使得進(jìn)入運(yùn)放的信號(hào)更穩(wěn)定,在霍爾電流傳感器輸出端接電容。為節(jié)約PCB空間及資源,后級(jí)電壓跟隨器選用可單電源供電、集成四通道、輸入輸出軌至軌的運(yùn)放OPA4340。
該模塊電路原理圖如圖5 所示。霍爾傳感器通過IP+、IP-串聯(lián)在點(diǎn)火電路中,當(dāng)點(diǎn)火命令下發(fā)后,點(diǎn)火電流會(huì)流過輸入端IP+和IP-,霍爾傳感器會(huì)因霍爾效應(yīng)在輸出端以100mV/A 的比例輸出電壓。為保護(hù)后級(jí)電路將霍爾傳感器輸出的電壓信號(hào)經(jīng)過電壓跟隨電路經(jīng)緩沖后傳輸至后級(jí)模擬開關(guān)選通電路,如圖6所示。

圖5 電流-電壓轉(zhuǎn)換電路

圖6 電壓跟隨電路

圖7 模擬開關(guān)選通電路
因?yàn)楸驹O(shè)計(jì)采用的模數(shù)轉(zhuǎn)換芯片輸入為單通道,如果16 路信號(hào)采用并行輸入的方式則需要16塊ADC 芯片。因此為節(jié)省設(shè)計(jì)成本及PCB 空間及設(shè)計(jì)成本[8],采用16 通道模擬開關(guān)實(shí)現(xiàn)8 路點(diǎn)火電流信號(hào)及8 路點(diǎn)火電壓信號(hào)的切換輸出。選通電路的模擬開關(guān)選擇ADI 公司的ADG706 型模擬開關(guān),該開關(guān)切換時(shí)間為40ns,而本設(shè)計(jì)中火工品點(diǎn)火數(shù)據(jù)采樣率為5KHz,符合設(shè)計(jì)需求。在硬件上,EN、A0、A1、A2、A3 接FPGA 的I/O 引腳,本系統(tǒng)通過FPGA控制模擬開關(guān)的使能和通道切換。
模擬開關(guān)的切換邏輯為將模擬開關(guān)的通道選擇控制端A0、A1、A2、A3 編碼為0000 至1111,這些編碼分別對(duì)應(yīng)16 個(gè)通道。當(dāng)系統(tǒng)上電復(fù)位后FP?GA 的I/O 輸出電平為0000,此時(shí)采集第一個(gè)通道,待采集完該通道后編碼加1,開始對(duì)下個(gè)通道進(jìn)行采集。
此外,為防止前級(jí)運(yùn)放驅(qū)動(dòng)容性負(fù)載能力不足而引起的過沖或振蕩現(xiàn)象,在每個(gè)通道輸入端接100 歐姆的補(bǔ)償電阻保證模擬開關(guān)輸出更為穩(wěn)定[9]。
AD轉(zhuǎn)換模塊由ADC驅(qū)動(dòng)電路和A/D轉(zhuǎn)換電路兩部分組成。如圖8所示為ADC驅(qū)動(dòng)電路,該電路由分壓調(diào)理、跟隨緩沖、抗混疊濾波三部分組成。因AD7667 的輸入電壓范圍為0~2.5V,故設(shè)計(jì)分壓調(diào)理電路將前級(jí)輸入的信號(hào)調(diào)理至0~2.5V 以內(nèi),方便AD7667實(shí)現(xiàn)模數(shù)轉(zhuǎn)換。

圖8 ADC驅(qū)動(dòng)電路
此外,模擬信號(hào)多路開關(guān)切換后會(huì)有振蕩或過沖現(xiàn)象,不利于A/D 轉(zhuǎn)換的準(zhǔn)確進(jìn)行,為提高轉(zhuǎn)換精度,在轉(zhuǎn)換前端進(jìn)行隔離緩沖設(shè)計(jì)。如圖8 所示。
因?yàn)檩斎肽?shù)轉(zhuǎn)換芯片的點(diǎn)火數(shù)據(jù)信號(hào)可能會(huì)受到其他模塊帶來的干擾,因此在信號(hào)進(jìn)入AD芯片進(jìn)行轉(zhuǎn)換之前增加了由C219 和R279 組成低通抗混疊濾波電路[9],能有效抑制反沖噪聲和帶外噪聲,提高信噪比[10]。因?yàn)槿绻鸄DC 芯片輸入端串聯(lián)一個(gè)大電阻會(huì)引入額外噪聲,所以電阻選擇為15Ω[11]。經(jīng)過多次試驗(yàn)分析得出當(dāng)電容容值為0.1uF時(shí)濾波效果最好[9],此時(shí)截止頻率為
該頻率大于有效信號(hào)的最高頻率,符合設(shè)計(jì)需求。
如圖9 所示為AD 轉(zhuǎn)換電路,本系統(tǒng)選擇16 位高速逐次逼近型的AD7667作為模數(shù)轉(zhuǎn)換芯片。其中VIN為模擬信號(hào)輸入端,D0~D7為數(shù)字量輸出端和FPGA 的I/O 接口直接相連。具體轉(zhuǎn)換流程在第4節(jié)介紹。

圖9 模數(shù)轉(zhuǎn)換電路
如圖10 所示為模數(shù)轉(zhuǎn)換芯片AD7667 工作時(shí)序圖,MODE表示AD7667當(dāng)前的工作模式,共有兩種工作狀態(tài),其中ACQUIRE 表示采集狀態(tài),CON?VERT 表示模數(shù)轉(zhuǎn)換狀態(tài)。CNVST 為轉(zhuǎn)換開始信號(hào),該信號(hào)低電平時(shí)開始模數(shù)轉(zhuǎn)換。BUSY 為轉(zhuǎn)換標(biāo)志信號(hào),模數(shù)轉(zhuǎn)換期間拉高,轉(zhuǎn)換結(jié)束后拉低。如圖10所示為采集過程流程圖。

圖10 模數(shù)轉(zhuǎn)換過程時(shí)序圖
當(dāng)用戶按下電源開關(guān),系統(tǒng)即進(jìn)入復(fù)位狀態(tài),在該狀態(tài)下,模擬開關(guān)通道切換至第一個(gè)通道S0,并且將數(shù)模轉(zhuǎn)換芯片的CNVST 引腳拉高,此時(shí)AD進(jìn)行數(shù)據(jù)采集,采樣率為5ksps。如果此時(shí)CNVST為高電平,則在CNVST 的下降沿到來之前一直處于采樣保持狀態(tài),等CNVST 的下降沿到來開啟模數(shù)轉(zhuǎn)換。如果此時(shí)CNVST 為低電平,則立刻開始模數(shù)轉(zhuǎn)換進(jìn)程,同時(shí)拉高BUSY 信號(hào),直到轉(zhuǎn)換結(jié)束才拉低BUSY 信號(hào),然后進(jìn)行新一輪轉(zhuǎn)換,并且在BUSY 的下降沿將數(shù)據(jù)鎖存至AD 的片上鎖存器,再通過D0-D7 將數(shù)字量輸出至FIFO 中進(jìn)行緩存。因?yàn)镕IFO具有先進(jìn)先出的特點(diǎn),故由FPGA控制ADC 的BYTESWAP 引腳拉低,此時(shí)ADC 將先輸出低八位,再輸出高八位數(shù)據(jù)至FIFO。若FIFO 半滿,則對(duì)FIF 中的數(shù)據(jù)進(jìn)行讀取并編幀后由以太網(wǎng)發(fā)送至上位機(jī)進(jìn)行顯示及處理。
幀格式如表1 所示,其中VB 為轉(zhuǎn)換后的電壓信號(hào),VIB 為電流經(jīng)霍爾傳感器轉(zhuǎn)換為電壓后的電流數(shù)據(jù)。

表1 傳輸至上位機(jī)的幀格式

表2 模擬點(diǎn)火電壓試驗(yàn)結(jié)果
上位機(jī)主要作用在于將硬件采集模塊采集到的數(shù)據(jù)幀進(jìn)行分析和處理,從而得到設(shè)計(jì)期望的點(diǎn)火電壓、電流、脈寬三個(gè)參數(shù)。由于在本設(shè)計(jì)中上位機(jī)對(duì)點(diǎn)火數(shù)據(jù)的分析是實(shí)時(shí)進(jìn)行的,如果對(duì)每一幀的所有數(shù)據(jù)都進(jìn)行分析,一方面整個(gè)過程的計(jì)算量較大,另一方面最終顯示結(jié)果相對(duì)于輸入有較大延遲。因此,在分析時(shí)取連續(xù)的三幀數(shù)據(jù)即可,并且每個(gè)幀僅僅取該幀中各參數(shù)的最后一個(gè)采樣點(diǎn)的值和幀計(jì)數(shù)。然后分別計(jì)算第二幀和第一幀參數(shù)差值?V1、二幀和第三幀參數(shù)差值?V2若兩者的差值都大于預(yù)設(shè)定值,則視為點(diǎn)火信號(hào)存在跳變。此時(shí)將第一幀的幀計(jì)數(shù)視作跳變開始的幀計(jì)數(shù),記為Tbegin。如果這兩個(gè)差值均小于預(yù)設(shè)定值則重復(fù)取三幀,直到達(dá)到要求;若?V1小于18V,?V2大于預(yù)設(shè)定值,則取第三幀的后一幀作為第三幀,原第一幀舍棄,原第二幀和第三幀視為第一幀和第二幀,不斷重復(fù)取幀直到兩個(gè)差值均大于預(yù)設(shè)定值。

圖12 點(diǎn)火脈寬計(jì)算時(shí)序圖
如果兩個(gè)差值均小于18V,則認(rèn)為點(diǎn)火信號(hào)跳變已經(jīng)結(jié)束,將第三幀的幀計(jì)數(shù)視為Tend。若?V1大于預(yù)設(shè)定值,?V2小于預(yù)設(shè)定值,那么將第二幀和第三幀作為第一幀和第二幀,另取一幀作為第三幀,直到兩個(gè)差值均小于預(yù)設(shè)定值,得到跳變結(jié)束的幀計(jì)數(shù)。
因?yàn)閿?shù)據(jù)幀的幀率為1ms,所以脈寬可以由以下表達(dá)式求出:
脈寬判斷的具體流程圖如圖11所示,其中Y表示判斷閾值,Tb為跳變開始幀計(jì)數(shù),Te為跳變結(jié)束時(shí)的幀計(jì)數(shù)。

圖11 AD采集流程圖
為使得采集結(jié)果更準(zhǔn)確,使用最小二乘法對(duì)本系統(tǒng)進(jìn)行標(biāo)定,將數(shù)字量和電壓值進(jìn)行擬合[12],求出K、B值。待標(biāo)定完成后,使用信號(hào)發(fā)生器模擬點(diǎn)火動(dòng)作對(duì)點(diǎn)火數(shù)據(jù)采集系統(tǒng)進(jìn)行驗(yàn)證,具體試驗(yàn)方法為使用信號(hào)發(fā)生器輸出不同脈寬、幅值的方波,在信號(hào)發(fā)生器輸出端接兩組線纜,一組接示波器,另一組接入點(diǎn)火數(shù)據(jù)采集輸入通道,同時(shí)在回路中串接高精度數(shù)字萬用表測(cè)量模擬點(diǎn)火回路中的電流。線纜連接完成后打開信號(hào)發(fā)生器輸出開關(guān),在示波器觀察輸出電壓,待輸入穩(wěn)定后在上位機(jī)軟件觀察顯示的電壓值、電流值和脈寬。電壓采集試驗(yàn)結(jié)果如表3所示,電流采集試驗(yàn)結(jié)果如表4所示。

表3 模擬點(diǎn)火電流試驗(yàn)結(jié)果
經(jīng)試驗(yàn)驗(yàn)證可知,本系統(tǒng)實(shí)現(xiàn)了對(duì)8 路點(diǎn)火電壓、電流、脈寬的采集。經(jīng)標(biāo)定后的電壓采集精度高于0.43%;電流采集精度高于0.66%。滿足設(shè)計(jì)需求。
本文設(shè)計(jì)了一種火工品點(diǎn)火數(shù)據(jù)采集系統(tǒng),該系統(tǒng)以FPGA 控制數(shù)據(jù)采集和模擬開關(guān)實(shí)現(xiàn)多通道點(diǎn)火電流、電壓、脈寬的采集,克服了傳統(tǒng)點(diǎn)火數(shù)據(jù)采自動(dòng)化程度低且測(cè)量信號(hào)類型單一的問題。通過采集試驗(yàn)證明了設(shè)計(jì)思路的正確性,該系統(tǒng)模塊已應(yīng)用于某型號(hào)測(cè)試臺(tái)上。