通信電源系統是整個通信網路的心臟和源動力,在通信系統中的地位舉足輕重。為確保通信電源系統可以安全可靠的運行,在生產程序中必須對它的各項性能引數進行全面的檢測。
原有對通信電源系統的測驗方法為手動測驗,操作人員不僅要連接許多線纜和設備,而且要人工判斷系統的各個量值。它的測驗時間長,重復測驗結果的一致性差,人為因素多,測驗不穩定,測驗資料不容易存檔,等等。因此,電源系統的性能得不到足夠的保障。
Namisoft提出的測驗方法,首先啟動氣動裝置實作測驗埠的自動連接,這便省去了人工連接線路;然后基于LabWindows/CVI 的開發環境,利用GPIB 卡控制各種儀器和設備,通過TCP/IP 通信的方式與電源系統對話。該方法可以快速可靠地完成各個引數的測驗,從而提高了效率,并且可對測量資料自動存檔。
1 概 述
1 .1 LabWindows/CVI 簡介
LabWindows/CVI 互動式C 語言開發平臺。它將功能強大﹑使用靈活的C 語言平臺與用于資料采集分析和顯示的測控專業工具有機地結合起來,利用它的集成化開發環境﹑互動式編程方法﹑函式面板和豐富的庫函式大大增強了C 語言的功能,為熟悉C 語言開發設計的人員撰寫檢測系統﹑自動測驗環境﹑資料采集系統﹑程序監控系統等應用軟體提供了一個理想的軟體開發環境。
虛擬儀器技術是近幾年發展起來的新一代儀器技術,它的實質是利用計算機來模擬傳統儀器的各項功能。LabWindows/CVI 是開發虛擬儀器應用程式的軟體工具中的佼佼者,和其它虛擬儀器開發工具相比,它的主要特點有:
(1)LabWindows/CVI 以功能強大、最為流行的C語言為基礎,一般程式員無須再花時間去學習其它計算機語言,從而節省了開發時間。
(2)友好的界面編輯方式,在程式設計中靈活地應用各種工具可以方便程式設計,減輕程式員負擔。
(3)各種功能強大的軟體包大大增強了LabWindows/CVI 的性能,這些軟體包括介面函式庫、信號處理函式庫、Windows SDK 等。
1 .2 GPIB 總線技術
GPIB (General Purpose Interface Bus )被稱為通用介面總線,是最早由HP 公司提出的一種介面儀器標準(HP IB ),1975 年被改進為IEEE485 標準。目前的協議為488 .2 。GPIB 總線是廣泛用于自動測驗系統的一種并行外總線標準,是專為儀器控制應用而設計的。它是一種用于連接設備的總線,計算機、電壓表、信號發生器、示波器等都可以通過GPIB 總線連接起來,組成一功能系統。
該系統的特點是:積木式結構,可拆卸、易于重建;控制器可以是計算機、微處理器或簡單的程式;資料傳送可靠,使用靈活,價格低廉。正是由于以上特點,GPIB 廣泛應用于對測驗儀器進行計算機控制、計算機與計算機之間的通訊,以及對其它電子設備的控制。
LabWindows/CVI 中的GPIB 函式庫可以實作打開/關閉GPIB 設備、總線配置、I/O 讀寫、GPIB 設備控制、總線控制和板控制等功能。
1 .3 TCP/IP 通信技術
Internet 中使用最為廣泛的網路協議為TCP/IP協議集。TCP 協議是TCP/IP 協議集中隸屬于傳輸層的傳輸控制協議。IP 協議是Internet 網路中隸屬于網路層的基礎協議。IP 協議提供可靠的、盡力的、無連接的資料投遞服務,構成了Internet 網路資料傳輸的基礎。TCP 協議以此為基礎增加了連接管理和確認重發等機制,向更高層的應用程式提供面向連接的、可靠的傳輸服務。
在LabWindows/CVI 中可利用TCP 函式庫進行網路傳輸,在每次連接中都涉及到服務器和客戶。
其中TCP 服務器可以通過網路向客戶應用程式發送或從客戶應用程式接收資料。TCP 客戶可以向TCP服務器應用程式發送連接請求,并從服務器接收資料。服務器注冊后就等待客戶向它發出連接請求,而客戶只能向已經存在的服務器發出連接請求。
2 系統的硬體設計
Namisoft提供的通信設備直流供電系統的組成如圖1 。系統的輸入為交流220V,整流器一方面給通信設備供電,另一方面又給蓄電池充電,以補充蓄電池因區域放電而失去的電量,控制器用于監控系統的狀態,直流配電架主要連接和轉換直流供電系統中整流器和蓄電池組向通信設備供電的電源設備。蓄電池組用于保證不間斷供電。

圖1 直流供電系統的組成
該電源系統測驗的部件主要由一臺計算機、一塊GPIB 卡、資料采集器、直流電源、負載測驗治具和待測系統等組成,如圖2 。

圖2 電源系統測驗的硬體結構圖
資料采集器可配置成20 至120個通道,6 位半解析度,250 通道/秒掃描速率,50 000 個讀數存貯,0。004 %基本直流精度,可測量交直流電流、電阻、頻率和周期,以及由熱電耦、熱電阻和熱敏電阻提供的溫度直流和交流電壓,標準GPIB 和RS232 介面。在該測驗系統中,它主要用來控制繼電器,通道切換和量測電壓。
直流電源主要用來模擬蓄電池的功能,實作電池的過壓、欠壓和低壓斷電。
測驗治具內部由繼電器組,告警指示燈和氣動裝置組成。氣動裝置用于自動連接測驗端點。繼電器組主要用于切換不同的測驗設備和開關。告警指示燈共有4 組紅綠燈,用于查看不同的系統告警,如斷路告警、熔絲告警、溫度告警等。
待測電源系統由兩個模塊,一個控制器和一個直流配電架組成。模塊用于整流,將220 V交流變為54 V直流。控制器用于設定系統的電壓,監控系統的狀態。直流配電架用于放置模塊和控制器,它裝有自動空氣斷路器、接觸器、熔斷器等部件,為不同容量的負載分配電能,當直流供電例外時,產生告警起到保護作用。
交流電220 VAC 用于模塊的輸入供電。
負載用于模擬通信設備,用來提供AC 供電和電池供電時系統的負載。該系統測驗時負載設定為20 A。
3 Namisoft的系統軟體開發
系統軟體以Labwindows 8 。5 為編程語言,可運行在Windows XP,Vista 和Windows7 之上。
3 .1 測驗流程
根據測驗要求,首先制定一個合理的測驗流程,如圖3 所示,可分為三大部分,第一部分為自檢,第二部分為AC 交流部分,第三部分為DC 直流部分(即電池部分)。
(1)自檢。操作人員將待測電源系統放置在治具上后,先進行自檢,對系統中所有設備進行復位并初始化,檢測系統供電的狀態是否正常。
(2 )AC 部分。自檢通過后, 先輸入交流電220 VAC,在這一部分,先量測空載時系統輸出電壓、電流、系統狀態,加載后量測系統電壓及電流,并檢測模塊是否均流,接著將負載切換到電池端,量測電池電壓及電流,然后執行一些告警測驗,包括直流過壓、欠壓、熔絲告警、斷路器告警、溫度告警等。
(3)DC 部分。檢測電池供電后系統的輸出電壓、電流、檢測AC 告警、電池過壓告警、欠壓告警,實作低壓關機功能。
3 .2 Namisoft核心代碼決議
下面列出幾個關鍵的測驗代碼。
(1)GPIB 通信代碼
GPIB/GPIB-488 .2 函式庫一共包括10 個子類,分別為Open/Close 子類,Configuration 子類,I/O子類,DevICe Control 子類,Bus Control 子類,BoardControl 子類,Callbacks 子類,LOCking 子類,Thread-Specific Status 子類,GPIB-488 .2 子類,該測驗方法中主要應用GPIB-488 .2 子類中的函式實作GPIB 通信。

圖3 測驗流程圖
SendIFC (0);//對所有GPIB 設備初始化。
Send (Board _Index,address ,buffer ,Byte _Count ,EOT_Mode );//發送地址和寫資料。Board_Index 表示GPIB 名稱,address 表示儀器地址,buffer表示要發送的資訊,Byte _Count 表示發送資訊的位元組長度,EOT_Mode 表示發送模式。
Receive (Board _Index,address ,buffer ,Byte _Count ,Termination);//接收地址,從GPIB 設備中讀取資料。Termination 表示資料傳輸終止符。
(2)TCP/IP 通信代碼
該電源系統可通過網路埠進行網路通信,以讀取系統內部資訊。
由于要讀取系統資訊屬于客戶向服務器發出連接,因此先確定該通信屬于客戶程式。與TCP 服務器連接時,我們必須獲得服務器的名稱或IP 地址和服務器的埠號。
ConnectToTCPServer (&serverHandle ,server-PortNumber ,serverName ,ClieNTCallback,callback-Data ,timeout );//注冊TCP 服務器,引數serverHandle 表示得到的連接句柄。引數serverPortNumber 和server-Name 表示服務器的埠號和名稱,ClientCallback 和callbackData 表示TCP 回呼函式名和回呼資料。引數timeout 表示超時限制。
ClientTCPWrite (portHandle ,writEDAta ,data-Size ,timeout );//向服務器發送資料,引數writeData表示發送到服務器的資料,dataSize 表示資料塊的大小。
ClientTCPRead (portHandle ,buffer ,dataSize ,timeout );//從服務器讀取資料。引數buffer 表示存放從服務器讀來的資料塊的緩沖區。
DisconnectFromTCPServer (serverRouteHandle);//注銷TCP 服務器。
(3)HP34970 控制代碼
由于HP34970 提供了程式的功能面板大大方便了編程,我們只需要呼叫其中的庫函式指令,即可實作測驗中所需要的通道切換和量值。
hp34970_relay_Operate (1 ,6 ,ON);//控制繼電器6 閉合。
hp34970 _relay_Operate (1 ,6 ,OFF);//控制繼電器6 打開。
meter _Measure (METER1);//讀取表1 的電壓值。
switch_lFMux_DMM (101);//切換測驗通道至MUX101 。
4 總 結
在軟體除錯程序中也曾出現了一些問題,經過分析,都得到了解決:
(1)將大量數值變數放置在C 檔案中,導致程式的可讀性、可維護性較差。
解決方法:建立一個INI 組態檔,將所需要的測驗數值和范圍存盤在該檔案內,這樣一旦要修改數值,只需更改INI 檔案中的資料,無需重新編譯C 檔案。
(2 )TCP/IP 通信讀取資料不穩定,會出現誤碼或亂碼。
解決方法:設定斷點,單步運行除錯后發現,部分是由于不同指令輸入后讀取的資料大小不同,一些資料超出了Buffer 的最大范圍,只需將Buffer 設定到合適數值范圍即可。
另外,也可能是由于資料型別設定錯誤導致,在字串處理程序中,資料型別有整型、浮點型、字符型等,必須設定相符的資料型別,否則有可能導致誤碼甚至編譯不通過。
(3)提示操作員查看告警燈狀態的次數有8 次,明顯太多,不利于生產也不符合自動化測驗的理念。
解決方法:改變測驗方法,由目測告警燈狀態的判斷方法,改為通過TCP/IP 通信讀取系統內部告警資訊來進行自動判斷。
實際檢測和使用表明,該測驗方法操作簡便,測驗周期大大縮短,測驗的穩定性,精度都有了質的提高,并且所有測驗資料都自動存檔,從而有效地提高了產品的品質。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/77236.html
標籤:嵌入開發(WinCE)
