《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于LabWindows/CVI的通信電源系統(tǒng)自動化測試的實現(xiàn)
基于LabWindows/CVI的通信電源系統(tǒng)自動化測試的實現(xiàn)
維庫網(wǎng)
摘要: 通信電源系統(tǒng)是整個通信網(wǎng)絡的心臟和源動力,,在通信系統(tǒng)中的地位舉足輕重。為確保通信電源系統(tǒng)可以安全可靠的運行,,在生產(chǎn)過程中必須對它的各項性能參數(shù)進行全面的檢測,。   原有對通信電源系統(tǒng)的測試方法為手動測試,,操作人員不僅要連接許多線纜和設備,,而且要人工判斷系統(tǒng)的各個量值,。它的測試時間長,重復測試結果的一致性差,,人為因素多,,測試不穩(wěn)定,,測試數(shù)據(jù)不容易存檔,,等等。因此,電源系統(tǒng)的性能得不到足夠的保障,。
Abstract:
Key words :

     通信電源系統(tǒng)是整個通信網(wǎng)絡的心臟和源動力,在通信系統(tǒng)中的地位舉足輕重,。為確保通信電源系統(tǒng)可以安全可靠的運行,,在生產(chǎn)過程中必須對它的各項性能參數(shù)進行全面的檢測。

  原有對通信電源系統(tǒng)的測試方法為手動測試,,操作人員不僅要連接許多線纜和設備,,而且要人工判斷系統(tǒng)的各個量值。它的測試時間長,,重復測試結果的一致性差,,人為因素多,,測試不穩(wěn)定,測試數(shù)據(jù)不容易存檔,,等等,。因此,電源系統(tǒng)的性能得不到足夠的保障,。

  本文提出的測試方法,,首先啟動氣動裝置實現(xiàn)測試端口的自動連接,這便省去了人工連接線路;然后基于LabWindows/CVI 的開發(fā)環(huán)境,,利用GPIB 卡控制各種儀器和設備,,通過TCP/IP 通信的方式與電源系統(tǒng)對話。該方法可以快速可靠地完成各個參數(shù)的測試,,從而提高了效率,,并且可對測量數(shù)據(jù)自動存檔。

  1  概 述

  1 .1  LabWindows/CVI 簡介

  LabWindows/CVI 是美國NI (National Instruments)公司推出的交互式C 語言開發(fā)平臺,。它將功能強大﹑使用靈活的C 語言平臺與用于數(shù)據(jù)采集分析和顯示的測控專業(yè)工具有機地結合起來,,利用它的集成化開發(fā)環(huán)境﹑交互式編程方法﹑函數(shù)面板和豐富的庫函數(shù)大大增強了C 語言的功能,為熟悉C 語言開發(fā)設計的人員編寫檢測系統(tǒng)﹑自動測試環(huán)境﹑數(shù)據(jù)采集系統(tǒng)﹑過程監(jiān)控系統(tǒng)等應用軟件提供了一個理想的軟件開發(fā)環(huán)境,。

  虛擬儀器技術是近幾年發(fā)展起來的新一代儀器技術,,它的實質(zhì)是利用計算機來模擬傳統(tǒng)儀器的各項功能。LabWindows/CVI 是開發(fā)虛擬儀器應用程序的軟件工具中的佼佼者,,和其它虛擬儀器開發(fā)工具相比,,它的主要特點有:

  (1)LabWindows/CVI 以功能強大、最為流行的C語言為基礎,,一般程序員無須再花時間去學習其它計算機語言,,從而節(jié)省了開發(fā)時間。

  (2)友好的界面編輯方式,,在程序設計中靈活地應用各種工具可以方便程序設計,,減輕程序員負擔。

  (3)各種功能強大的軟件包大大增強了LabWindows/CVI 的性能,,這些軟件包括接口函數(shù)庫,、信號處理函數(shù)庫、Windows SDK 等,。

  1 .2  GPIB 總線技術

  GPIB (General Purpose Interface Bus )被稱為通用接口總線,,是最早由HP 公司提出的一種接口儀器標準(HP IB ),1975 年被改進為IEEE485 標準,。目前的協(xié)議為488 .2 ,。GPIB 總線是廣泛用于自動測試系統(tǒng)的一種并行外總線標準,是專為儀器控制應用而設計的,。它是一種用于連接設備的總線,,計算機,、電壓表、信號發(fā)生器,、示波器等都可以通過GPIB 總線連接起來,,組成一功能系統(tǒng)。

  該系統(tǒng)的特點是:積木式結構,,可拆卸,、易于重建;控制器可以是計算機、微處理器或簡單的程序;數(shù)據(jù)傳送可靠,,使用靈活,,價格低廉。正是由于以上特點,,GPIB 廣泛應用于對測試儀器進行計算機控制,、計算機與計算機之間的通訊,以及對其它電子設備的控制,。

  LabWindows/CVI 中的GPIB 函數(shù)庫可以實現(xiàn)打開/關閉GPIB 設備,、總線配置、I/O 讀寫,、GPIB 設備控制,、總線控制和板控制等功能。

  1 .3  TCP/IP 通信技術

  Internet 中使用最為廣泛的網(wǎng)絡協(xié)議為TCP/IP協(xié)議集,。TCP 協(xié)議是TCP/IP 協(xié)議集中隸屬于傳輸層的傳輸控制協(xié)議,。IP 協(xié)議是Internet 網(wǎng)絡中隸屬于網(wǎng)絡層的基礎協(xié)議。IP 協(xié)議提供可靠的,、盡力的,、無連接的數(shù)據(jù)投遞服務,構成了Internet 網(wǎng)絡數(shù)據(jù)傳輸?shù)幕A,。TCP 協(xié)議以此為基礎增加了連接管理和確認重發(fā)等機制,,向更高層的應用程序提供面向連接的、可靠的傳輸服務,。

  在LabWindows/CVI 中可利用TCP 函數(shù)庫進行網(wǎng)絡傳輸,,在每次連接中都涉及到服務器和客戶。

  其中TCP 服務器可以通過網(wǎng)絡向客戶應用程序發(fā)送或從客戶應用程序接收數(shù)據(jù),。TCP 客戶可以向TCP服務器應用程序發(fā)送連接請求,,并從服務器接收數(shù)據(jù),。服務器注冊后就等待客戶向它發(fā)出連接請求,,而客戶只能向已經(jīng)存在的服務器發(fā)出連接請求。

  2  系統(tǒng)的硬件設計

  通信設備直流供電系統(tǒng)的組成如圖1 ,。系統(tǒng)的輸入為交流220V,,整流器一方面給通信設備供電,,另一方面又給蓄電池充電,以補充蓄電池因局部放電而失去的電量,,控制器用于監(jiān)控系統(tǒng)的狀態(tài),,直流配電架主要連接和轉換直流供電系統(tǒng)中整流器和蓄電池組向通信設備供電的電源設備。蓄電池組用于保證不間斷供電,。

直流供電系統(tǒng)的組成

圖1  直流供電系統(tǒng)的組成

  該電源系統(tǒng)測試的部件主要由一臺計算機,、一塊GPIB 卡、數(shù)據(jù)采集器,、直流電源,、負載測試治具和待測系統(tǒng)等組成,如圖2 ,。

電源系統(tǒng)測試的硬件結構圖

圖2  電源系統(tǒng)測試的硬件結構圖

  數(shù)據(jù)采集器Agilent 34970A 可配置成20 至120個通道,,6 位半分辨率,250 通道/秒掃描速率,,50 000 個讀數(shù)存貯,,0。004 %基本直流精度,,可測量交直流電流,、電阻、頻率和周期,,以及由熱電耦,、熱電阻和熱敏電阻提供的溫度直流和交流電壓,標準GPIB 和RS232 接口,。在該測試系統(tǒng)中,,它主要用來控制繼電器,通道切換和量測電壓,。

  直流電源Agilent 3645A,,主要用來模擬蓄電池的功能,實現(xiàn)電池的過壓,、欠壓和低壓斷電,。

  測試治具內(nèi)部由繼電器組,告警指示燈和氣動裝置組成,。氣動裝置用于自動連接測試端點,。繼電器組主要用于切換不同的測試設備和開關。告警指示燈共有4 組紅綠燈,,用于查看不同的系統(tǒng)告警,,如斷路告警、熔絲告警、溫度告警等,。

  待測電源系統(tǒng)由兩個模塊,,一個控制器和一個直流配電架組成。模塊用于整流,,將220 V交流變?yōu)?4 V直流,。控制器用于設定系統(tǒng)的電壓,,監(jiān)控系統(tǒng)的狀態(tài),。直流配電架用于放置模塊和控制器,它裝有自動空氣斷路器,、接觸器,、熔斷器等部件,為不同容量的負載分配電能,,當直流供電異常時,,產(chǎn)生告警起到保護作用。

  交流電220 VAC 用于模塊的輸入供電,。

  負載用于模擬通信設備,,用來提供AC 供電和電池供電時系統(tǒng)的負載。該系統(tǒng)測試時負載設定為20 A,。

  3  系統(tǒng)的軟件開發(fā)

  系統(tǒng)軟件以Labwindows 8 ,。5 為編程語言,可運行在Windows XP,,Vista 和Windows7 之上,。

  3 .1  測試流程

  根據(jù)測試要求,首先制定一個合理的測試流程,,如圖3 所示,,可分為三大部分,第一部分為自檢,,第二部分為AC 交流部分,,第三部分為DC 直流部分(即電池部分)。

  (1)自檢,。操作人員將待測電源系統(tǒng)放置在治具上后,,先進行自檢,對系統(tǒng)中所有設備進行復位并初始化,,檢測系統(tǒng)供電的狀態(tài)是否正常,。

  (2 )AC 部分。自檢通過后,, 先輸入交流電220 VAC,,在這一部分,,先量測空載時系統(tǒng)輸出電壓、電流,、系統(tǒng)狀態(tài),加載后量測系統(tǒng)電壓及電流,,并檢測模塊是否均流,,接著將負載切換到電池端,量測電池電壓及電流,,然后執(zhí)行一些告警測試,,包括直流過壓、欠壓,、熔絲告警,、斷路器告警、溫度告警等,。

  (3)DC 部分,。檢測電池供電后系統(tǒng)的輸出電壓、電流,、檢測AC 告警,、電池過壓告警、欠壓告警,,實現(xiàn)低壓關機功能,。

  3 .2  核心代碼解析

  下面列出幾個關鍵的測試代碼。

  (1)GPIB 通信代碼

  GPIB/GPIB-488 .2 函數(shù)庫一共包括10 個子類,,分別為Open/Close 子類,,Configuration 子類,I/O子類,,Device Control 子類,,Bus Control 子類,BoardControl 子類,,Callbacks 子類,,Locking 子類,Thread-Specific Status 子類,,GPIB-488 .2 子類,,該測試方法中主要應用GPIB-488 .2 子類中的函數(shù)實現(xiàn)GPIB 通信。

測試流程圖

圖3  測試流程圖

  SendIFC (0);//對所有GPIB 設備初始化,。

  Send (Board _Index,,address ,buffer ,,Byte _Count ,,EOT_Mode );//發(fā)送地址和寫數(shù)據(jù),。Board_Index 表示GPIB 名稱,address 表示儀器地址,,buffer表示要發(fā)送的信息,,Byte _Count 表示發(fā)送信息的字節(jié)長度,EOT_Mode 表示發(fā)送模式,。

  Receive (Board _Index,,address ,buffer ,,Byte _Count ,,Termination);//接收地址,從GPIB 設備中讀取數(shù)據(jù),。Termination 表示數(shù)據(jù)傳輸終止符,。

  (2)TCP/IP 通信代碼

  該電源系統(tǒng)可通過網(wǎng)絡端口進行網(wǎng)絡通信,以讀取系統(tǒng)內(nèi)部信息,。

  由于要讀取系統(tǒng)信息屬于客戶向服務器發(fā)出連接,,因此先確定該通信屬于客戶程序。與TCP 服務器連接時,,我們必須獲得服務器的名稱或IP 地址和服務器的端口號,。

  ConnectToTCPServer (&serverHandle ,server-PortNumber ,,serverName ,,ClientCallback,callback-Data ,,timeout );//注冊TCP 服務器,,參數(shù)serverHandle 表示得到的連接句柄。參數(shù)serverPortNumber 和server-Name 表示服務器的端口號和名稱,,ClientCallback 和callbackData 表示TCP 回調(diào)函數(shù)名和回調(diào)數(shù)據(jù),。參數(shù)timeout 表示超時限制。

  ClientTCPWrite (portHandle ,,writeData ,,data-Size ,timeout );//向服務器發(fā)送數(shù)據(jù),,參數(shù)writeData表示發(fā)送到服務器的數(shù)據(jù),,dataSize 表示數(shù)據(jù)塊的大小。

  ClientTCPRead (portHandle ,,buffer ,,dataSize ,timeout );//從服務器讀取數(shù)據(jù),。參數(shù)buffer 表示存放從服務器讀來的數(shù)據(jù)塊的緩沖區(qū),。

  DisconnectFromTCPServer (serverRouteHandle);//注銷TCP 服務器,。

  (3)HP34970 控制代碼

  由于HP34970 提供了程序的功能面板大大方便了編程,我們只需要調(diào)用其中的庫函數(shù)指令,,即可實現(xiàn)測試中所需要的通道切換和量值,。

  hp34970_relay_Operate (1 ,6 ,,ON);//控制繼電器6 閉合,。

  hp34970 _relay_Operate (1 ,6 ,,OFF);//控制繼電器6 打開,。

  meter _Measure (METER1);//讀取表1 的電壓值,。

  switch_lfmux_DMM (101);//切換測試通道至MUX101 ,。

  4  總 結

  在軟件調(diào)試過程中也曾出現(xiàn)了一些問題,經(jīng)過分析,,都得到了解決:

  (1)將大量數(shù)值變量放置在C 文件中,,導致程序的可讀性、可維護性較差,。

  解決方法:建立一個INI 配置文件,,將所需要的測試數(shù)值和范圍存儲在該文件內(nèi),這樣一旦要修改數(shù)值,,只需更改INI 文件中的數(shù)據(jù),,無需重新編譯C 文件。

  (2 )TCP/IP 通信讀取數(shù)據(jù)不穩(wěn)定,,會出現(xiàn)誤碼或亂碼,。

  解決方法:設置斷點,單步運行調(diào)試后發(fā)現(xiàn),,部分是由于不同指令輸入后讀取的數(shù)據(jù)大小不同,,一些數(shù)據(jù)超出了Buffer 的最大范圍,只需將Buffer 設定到合適數(shù)值范圍即可,。

  另外,,也可能是由于數(shù)據(jù)類型設置錯誤導致,在字符串處理過程中,,數(shù)據(jù)類型有整型,、浮點型、字符型等,,必須設置相符的數(shù)據(jù)類型,,否則有可能導致誤碼甚至編譯不通過。

  (3)提示操作員查看告警燈狀態(tài)的次數(shù)有8 次,,明顯太多,,不利于生產(chǎn)也不符合自動化測試的理念,。

  解決方法:改變測試方法,由目測告警燈狀態(tài)的判斷方法,,改為通過TCP/IP 通信讀取系統(tǒng)內(nèi)部告警信息來進行自動判斷,。

  實際檢測和使用表明,該測試方法操作簡便,,測試周期大大縮短,,測試的穩(wěn)定性,精度都有了質(zhì)的提高,,并且所有測試數(shù)據(jù)都自動存檔,,從而有效地提高了產(chǎn)品的品質(zhì)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載,。