程進軍,劉 帥,王 麗,譚洋波
(空軍工程大學 航空航天工程學院,西安 710038)
?
VXI總線多通道壓力傳感器仿真模塊設計與實現(xiàn)
程進軍,劉帥,王麗,譚洋波
(空軍工程大學 航空航天工程學院,西安710038)
某型發(fā)動機系統(tǒng)主要由綜控器、傳感器、電機泵、電磁閥等部件組成,綜控器是整個系統(tǒng)的核心控制部件,為測試綜控器的性能是否符合要求,需要為綜控器提供各種工況下的傳感器(主要為壓力傳感器)數(shù)據(jù)進行仿真試驗;采用真實的壓力傳感器開展上述工作,一方面需要構建復雜的工作環(huán)境,難度大、數(shù)據(jù)精確度難以保證,另一方面地面環(huán)境下的傳感器信號變化難以實時調(diào)整,難以滿足數(shù)據(jù)快速變化的需要;基于以上因素考慮,給出了一種基于VXI總線的多通道壓力傳感器仿真模塊的設計方法,模塊共有24路壓力傳感器電路,每路獨立配置輸出;模塊以“VXI總線接口電路+VXI總線功能電路”的結構進行布局,VXI總線接口電路主要包括“CPLD+雙口RAM”,對VXI總線指令進行解釋、譯碼;VXI總線功能電路主要包括“96系列單片機+DA輸出電路+兩線壓力傳感器電路”,完成對真實傳感器輸出信號的電氣特性仿真模擬;模塊的驅動程序在LabWindows/CVI6.0的環(huán)境下編制,供用戶進行程序調(diào)用和快速操作使用;該模塊已在VXI總線測試系統(tǒng)中得到應用,實際情況表明,模塊的輸出精度高、信號調(diào)整方便、響應快,滿足了綜控器仿真深度測試的要求。
傳感器;仿真測試;VXI總線;多通道
某型發(fā)動機系統(tǒng)主要由綜控器分系統(tǒng)、傳感器分系統(tǒng)、試驗參數(shù)測量分系統(tǒng)、電機泵、熱油閥門、冷油閥門和點火器等分系統(tǒng)、組件組成。綜控器分系統(tǒng)是全系統(tǒng)的核心,它對傳感器分系統(tǒng)和試驗參數(shù)測量分系統(tǒng)采集的各測試點數(shù)據(jù)進行分析計算,按照預先指令和時序指令要求,控制電機泵、熱油與冷油閥門和點火器等組件執(zhí)行相應動作。在發(fā)動機系統(tǒng)地面試驗過程中,需要向綜控器注入各種狀態(tài)變化的傳感器數(shù)據(jù),對綜控器進行深度考核測試,以確保試驗后的綜控器在空中能夠正常工作。
發(fā)動機系統(tǒng)中的傳感器主要由18路各自獨立的壓力傳感器組成,該傳感器為兩線制形式,電流輸出范圍4~20 mA,壓力測量范圍0~10 MPa。在綜控器測試過程中,如把18路傳感器全部接入測試回路中,一方面,搭建0~10 MPa的工作環(huán)境將會是一項非常復雜的工作,同時數(shù)據(jù)的精度難以保證,測試的可信性達不到要求;另一方面,傳感器數(shù)據(jù)大范圍的變化難以實現(xiàn),難以形成動態(tài)變化的數(shù)據(jù),達不到仿真深度測試要求。
綜上,研制一套壓力傳感器仿真模塊,代替真實傳感器參與綜控器的測試工作,顯得非常必要。
當前,可選擇的測試系統(tǒng)類型有:基于LXI的自動測試系統(tǒng)和基于PXI的自動測試系統(tǒng)[1-2]。上述兩型系統(tǒng)存在測試資源不足難以滿足系統(tǒng)測試需求的問題[3]。為此,基于VXI總線構建了發(fā)動機自動測試系統(tǒng),多通道壓力傳感器仿真模塊也是在VXI總線的基礎上進行開發(fā)。
壓力傳感器仿真模塊采用“VXI總線接口電路+VXI總線功能電路”的結構布局,如圖1所示。圖1中虛線的左邊為VXI總線接口電路,虛線的右邊為VXI總線功能電路。
圖1 壓力傳感器仿真模塊結構框圖
系統(tǒng)的工作原理為:VXI總線接口電路中譯碼控制邏輯芯片選用Lattice公司生產(chǎn)的ISP1048在系統(tǒng)可編程芯片,負責將VXI總線的數(shù)據(jù)傳輸周期和中斷周期的各個指令信號進行譯碼。ISP1048如果檢測到VXI總線對本模塊進行讀寫操作,則譯碼產(chǎn)生雙口RAM芯片的控制邏輯,將本模塊的各種數(shù)據(jù)放置到VXI總線上或將VXI總線上的數(shù)據(jù)下載到雙口RAM中。模塊中的CPU選用87C196KC 16位單片機,其功能是:1)對本模塊執(zhí)行VXI總線的初始化配置過程,將模塊的廠商、模塊ID、自檢狀態(tài)等信息傳輸?shù)絍XI總線中;2)循環(huán)讀取VXI總線向本模塊下達的控制指令,將該指令轉換為對24路傳感器仿真電路的驅動,產(chǎn)生相應的傳感器信號;3)與ISP1048一起產(chǎn)生功能電路AD9764所需的時鐘信號,以便在AD9764的數(shù)據(jù)線上數(shù)據(jù)穩(wěn)定后產(chǎn)生上升邊沿信號,將該數(shù)據(jù)鎖存到AD9764中;4)實時采集24路傳感器仿真輸出電路的電流值,在產(chǎn)生異常緊急事件時(定義為24路傳感器功能電路中任意一路出現(xiàn)過流情形),與ISP1048芯片一起向VXI總線申請總線中斷,等待系統(tǒng)的處理。
VXI總線功能電路中模擬輸出芯片選用AD9764,該芯片的數(shù)據(jù)位為14位,滿足DA輸出精度要求,轉換速率最高可達100 MHz[4],滿足綜控器測試過程中傳感器數(shù)據(jù)變化速率要求。發(fā)動機系統(tǒng)的壓力傳感器工作制式為兩線制,4~20 mA電流輸出,24 V電壓源??紤]到該種信號特性要求,在AD9764輸出的下一級加上電壓轉電流芯片XTR101,并增加外圍調(diào)理電路[5],使電路輸出滿足4~20 mA標準要求。
系統(tǒng)的關鍵電路包括:VXI總線中斷電路; AD9764時鐘電路;傳感器輸出電路等。下面對上述電路進行介紹:
2.1VXI總線中斷電路
壓力傳感器工作過程中,如果回路中有過流情形出現(xiàn),容易燒毀芯片和電路,那么該種狀況應該立刻進行處理,在模塊中設置了電流監(jiān)控電路(在輸出端口回采串入電路的360 Ω電阻兩端的電壓)和VXI總線中斷申請電路,VXI總線中斷申請電路如圖2所示。
圖2 VXI總線中斷申請電路
圖2中,單片機的4個AD端口分時采集24路傳感器電路中的電流,當發(fā)現(xiàn)電流超過20 mA時,單片機的P1口由低變高,該狀態(tài)經(jīng)74LS06變換后傳輸?shù)絀SP1048,同時單片機向ISP1048寫入相應的故障狀態(tài)字。ISP1048按照VXI總線中斷申請服務協(xié)議向總線申請中斷服務,部分VHDL代碼如下所示:
REST<=SRES; -----本地CPU復位信號
DTACK<=DTACK1 OR DTACK2; -----數(shù)據(jù)傳輸周期和中斷周期的數(shù)據(jù)傳輸應答信號
IACKOUT<=IACKIN OR DTACK2; -----中斷許可菊花鏈輸出信號
INTERSET<=(NOT SRES) OR (DTACK1 AND WRITE AND PQ3); -----本地CPU中斷源置位信號
INTER<=DTACK1 AND (NOT WRITE); -----本地CPU中斷源驅動信號
IRQSET<=(NOT SRES) OR DTACK2; -----中斷請求置位信號
---中斷事件產(chǎn)生進程段
PROCESS(SIGNAL1,IRQEVENTFREE)
BEGIN
IF(IRQEVENTFREE='1')THEN ----上電初始化或對06寄存器進行讀操作釋放VXI總線中斷信號標志位
IRQEVENT<='0';
ELSIF(SIGNAL1'EVENT AND SIGNAL1='0') THEN ----外部輸入信號的下降沿產(chǎn)生VXI總線中斷信號標志位
IRQEVENT<='1';
END IF;
END PROCESS;
----中斷請求信號驅動進程段
PROCESS(IRQSET,SIGNAL1)
BEGIN
IF(IRQSET='1') THEN
IRQ7<='0';
ELSIF(SIGNAL1='0' AND SIGNAL1'EVENT)THEN
IRQ7<='1';
END IF;
END PROCESS;
----邏輯地址和狀態(tài)識別碼驅動進程段
PROCESS(SRES,DTACK2)
BEGIN
IF(SRES='0') THEN
D00<='0';D01<='0';D02<='0';D14<='0'; ---在初始狀態(tài)驅動數(shù)據(jù)線為低
ELSIF(DTACK2='1')THEN ---在中斷允許時驅動數(shù)據(jù)線D00表明本模塊的地址,D08,D09,D14表明狀態(tài)識別碼
D00<=NOT K6;D01<=NOT K7;D02<=NOT K8;D14<='0';
ELSE
D00<='0';D01<='0';D02<='0';D14<='0'; ---在DTACK2的上升沿過后及時釋放掉數(shù)據(jù)線
END IF;
END PROCESS;
2.2AD9764時鐘產(chǎn)生電路
24路壓力傳感器電路獨立設置,每路的AD9764的時鐘電路的上升沿的起始點都不相同,單片機難以提供如此多的IO口,在論文中,將單片機與ISP1048結合起來,充分利用ISP1048大容量門電路的優(yōu)勢,以此產(chǎn)生24路不同的上升下降沿波形。方法如下:單片機首先按照地址編排的規(guī)則向ISP1048和AD9764寫入16位的數(shù)據(jù)(高兩位不用),ISP1048延遲一定時間后產(chǎn)生時鐘上升沿,爾后傳輸?shù)紸D9764,完成一次數(shù)據(jù)寫入過程。時鐘沿產(chǎn)生信號如圖3所示。
圖5 模塊軟件運行流程圖
2.3傳感器輸出電路
壓力傳感器的信號輸入電路如圖4所示,該電路與兩線制24V供電的真實傳感器電氣特性完全相同。
圖3 時鐘上升沿產(chǎn)生信號圖
圖4 傳感器輸出電路
圖4中,外部負載電路的360 Ω電阻RL提供一個信號采集點,模塊實時監(jiān)控其上的電壓值,如發(fā)生過流情形,按照圖2的順序,申請VXI總線中斷。R1的增益電阻經(jīng)過計算與實際試驗,選定為2.5 kΩ。AD9764的兩個輸出端經(jīng)過25 Ω電阻的偏置后,接入到XTR101的4腳和3腳,作為信號的輸入,XTR101及外圍電路將電路的輸出變換為兩線制。
系統(tǒng)的上位機驅動程序在Lab Windows/CVI6.0的平臺上進行編寫,按照模塊的寄存器設置規(guī)則和物理量-數(shù)字量的對應關系,編制驅動函數(shù),分別向24路傳感器的寄存器中寫入相對應的二進制代碼,每路寄存器對應一路傳感器的輸出,寄存器從0x10開始編排,直到0x27。驅動程序中專門編寫中斷服務函數(shù),以動態(tài)連接庫形式進行發(fā)布,供應用程序進行調(diào)度。系統(tǒng)的軟件運行過程如圖5所示。
圖5中,軟件運行分為上位機和下位機兩個部分,上位機程序用來響應用戶操作,向VXI總線和模塊發(fā)送通道指令代碼,下位機程序則用來在VXI總線指令到來后執(zhí)行壓力傳感器通道控制動作,向AD9764寫入數(shù)據(jù)和時鐘指令,產(chǎn)生壓力傳感器仿真信號。在上位機與下位機軟件運行過程中,監(jiān)控通道電流的中斷服務程序被加載,實時處理通道電流輸出過流異常事件,中斷服務程序中的0xffff中為狀態(tài)識別碼。
圖6 壓力傳感器仿真模塊輸出數(shù)據(jù)結果
壓力傳感器仿真模塊研制調(diào)試完畢后,將其裝入VXI總線機箱中,運行上位機控制軟件,按照0.05 V一個步長的變化規(guī)則設置AD9764的輸出,XTR101的外圍接入24 V電壓,負載接入360 Ω的電阻,檢測360 Ω負載電阻上的對應電壓,兩者之間的關系曲線如圖6所示。采用最小二乘法擬合曲線數(shù)據(jù),經(jīng)過計算,計算值與實測值最大誤差為0.01%,滿足實際測試過程中的精度要求。
論文提出的VXI總線多通道壓力傳感器仿真模塊輸出精度高、控制響應速度快、通道路數(shù)多、異常監(jiān)控處理措施有效,滿足發(fā)動機系統(tǒng)中綜控器部件的深度測試的信號注入需求。該型壓力傳感器的信號接口具有通用性,可在各種類型的兩線制壓力傳感器模擬測試場合中使用。
[1] 程進軍,肖明清. 基于LXI的多總線融合的自動測試系統(tǒng)[J].微計算機信息,2008,1:130-132.
[2] 茍新宇,肖明清,王承孝.LXI總線自動測試系統(tǒng)拓撲結構研究[J].電子測量技術,2007,11:126-128.
[3] 張麗花,馬捷中,翟正軍.基于VXI、PXI和LXI的網(wǎng)絡化混合測試系統(tǒng)設計[J].計算機測量與控制,2008,16:1059-1061.
[4]王幸之,王雷,翟成,等.單片機應用系統(tǒng)抗干擾技術[M].北京:北京航空航天大學出版社,2003.
[5]劉書明,劉斌.高性能模數(shù)與數(shù)模轉換器件[M].西安:西安電子科技大學出版社,2000.
Design and Implementation of a Pressure Sensor Simulation Module Based on VXI bus
Cheng Jinjun, Liu Shuai, Wang Li, Tan Yangbo
(Aeronantics and Astronantics Engineering College, Air Force Engineering University,Xi′an710038,China)
The system of a certain type of engine consists of an integrated controller, sensors, a motor pump and solenoid valves, and the integrated controller device is the core of the whole system. To assess the performance of the integrated control device whether meets the requirements, simulation experiments were done based on all kinds of operating mode data of the sensors (mainly are pressure sensors). On one hand, using real pressure sensor to carry out the above work, it needs to build a complex working environment so that the workload is tremendous, and data precision is difficult to ensure. On the other hand, it is difficult to adjust the sensor signal in real time. Considering the above considerations, the paper presents a design of multi-channel pressure sensor simulation module based on VXI bus, which consists of 24 pressure sensor circuits that every single is an independent output. The module is based on VXI bus interface circuit and VXI bus functional circuit, and VXI bus interface circuit is mainly composed of CPLD and dual-port RAM with interpretation and decoding of VXI bus instruction; VXI bus functional circuit includes 96 series single chip microprocessor, DA output circuit and a dual-line pressure sensor circuit, completing real sensor output signal electrical characteristics simulation. The module driver compiling in Lab Windows/CVI6.0 environment is prepared for the user to carry out the procedure call and fast operation. The module has been applied in the VXI bus test system, and the practice shows that the module's output accuracy is high, the signal adjustment is easy to act, and the response is fast. It meets the requirements of the simulation deep test of the controller.
sensor; simulation test; VXI bus; multi-channel
1671-4598(2016)04-0241-03< class="emphasis_italic">DOI
:10.16526/j.cnki.11-4762/tp.2016.04.069
TP391.9
A
2016-01-19;
2016-02-26。
程進軍(1979-),男,湖北棗陽人,副教授,碩士生導師,主要從事武器系統(tǒng)檢測、故障與健康管理等方面的研究。