劉福才 李 坤 張興娟 王 猛
(燕山大學西校區電院,河北 秦皇島 066004)
PFN(脈沖形成網絡)是對儲能元件緩慢充電,然后在短時間內對能量脈沖壓縮、整形、匹配等處理,得到各種理想的高幅度、大功率、陡前沿的脈沖輸出。脈沖形成網絡技術廣泛用于可控熱核聚變、電熱化學發射、電磁發射、高能電子加速器等[1]。它能產生很強的電磁干擾,對通信傳輸帶來了很大的干擾,而通信對系統的監測和控制的正常運行又具有至關重要的作用,因此在強電磁環境下對通信的抗干擾能力提出了更高的要求。本文結合PFN實際應用情況,提出了一種強磁環境下的混合通信設計方法。通過把光纖通信、RS485等通信靈活地結合起來,提高了其抗干擾的能力,確保系統穩定運行。本文重點介紹PFN通信部分的設計與實現。
在PFN監控系統中主要包括以下幾個單元:監控計算機(PC),基于DSP的軟開關高壓充電電源U1,觸發控制單元U2,B探針膛內速度檢測單元U3,膛外網靶速度檢測單元U4等。首先,監控計算機啟動高壓充電電源對PFN中電容充電,當電壓值達到設定電壓時,停止充電。然后,由監控計算機控制觸發控制單元U2對PFN放電。最后,由以TMS320F240為核心的B探針檢測單元U3對B探針的信號進行采集,網靶速度檢測單元U4則對網靶的信號進行采集,數據上傳給監控計算機。

圖1 PFN通信系統基本框圖
通信系統設計原則:首先,抗干擾能力強,保證測控系統的可靠運行;其次,實時性好,響應速度快;第三,保證數據傳輸的誤碼率低,以確保人身和設備的安全[2]。
在PFN監控系統中,由一臺工控機作為控制中心,完成充電控制、B探針信號檢測、網靶速度檢測、觸發控制等任務。計算機通過串口向各個下位機下達控制命令和進行數據讀取,因此通信系統需設計成一機對多機通信的方式。圖1為PFN整個通信系統框圖。
計算機首先通過串行口COM端發送RS232信號,由RS232轉TTL模塊轉換成下位機可以識別的TTL信號,再由TTL轉光纖模塊轉換為光信號接入混合通信板。
混合通信板接收到光信號后,首先由混合通信板的光纖轉TTL部分轉化成TTL信號,然后以兩種形式發送信號。一種是由MAX1480B把TTL信號轉化成RS485信號,與B探針信號檢測、網靶速度檢測模塊以及觸發模塊等設備進行通信;另一種是將轉化來的TTL信號原封不動地轉換為光信號,與充電模塊進行通信。
由混合通信板轉換成的RS485信號與U2、U3、U4等之間采用RS485通信,這些模塊主要用作系統的B探針信號檢測、網靶速度檢測以及觸發控制等。RS485構成的總線型網絡系統,采用主從方式進行多機通信,這里的主機是工控機,從機是DSP構成的各功能模塊。
由混合通信板出來的光信號再通過充電板的光纖轉TTL模塊轉換成TTL信號直接與充電模塊進行通信。這里采用RS232通信是因為RS485通信是半雙工的,不可以同時接收發送數據,在充電的時候,一些下位機模塊會每隔一定時間上傳數據,當發生故障時,充電模塊可能因為RS485通信占線而無法順利發送充電停止的命令,從而對設備和參試人員的安全構成威脅。為了保證其在任何情況下都保持通信的通暢,防止無法向充電模塊發出停止等命令而導致危險情況,此處采用了RS232通信。
以上各通信過程均可逆,數據的接收是命令發送的逆過程。

圖2 RS232轉TTL信號電路
RS232是比較常見的一種通信方式。一般計算機都配有RS232串行口COM1,計算機的串口COM端輸出的RS232信號,邏輯“1”是-3到-15V,邏輯“0”是+3到+15V。以DSP為核心的各個模塊識別的串口信號是 TTL電平信號,邏輯“1”是5V,邏輯“0”是0V。這里選用MAX2323芯片實現RS232到TTL的電平邏輯轉換,MAX2323電路圖如圖2所示。PCTX發送的RS232信號從R1IN輸入,從R1OUT輸出F240能識別的TTL電平信號TTLRX;TTLTX和PCRX同上。
光纖通信是以光波為信息載體,以光纖作為傳輸媒介的一種通信方式。
在光纖通信的系統中,系統傳輸距離主要由光纖的損耗決定。光纖損耗隨波長的加長而減小,光收發器采用HP的820nm波長的HFBR-0400系列。該系列中的 HFBR-1412/HFBR-2412最長距離可以達到2700m,在1500m可以達到5M的速度。HFBR-1412調制簡單,用一個低阻抗、高電流速率的外圍驅動芯片SN75452就可以實現數字調制.HFBR-2412內部集成了包括PIN光電檢測器和直流放大器,其輸出可以直接與TTL及CMOS電平相連[3-4]。
本文中用到的TX光纖口和RX光纖口都采用HFBR-0400器件使用手冊給出的光纖電路。包括計算機端的TTL與光纖轉換模塊,充電端的光纖轉TTL信號模塊和混合通信板中的光纖口。
混合通信板是計算機與所有下位機數據交換的樞紐,也是本文的重點所在。控制中心的計算機只需要用COM端就能實現與整個系統的所有下位機進行通信,簡化了線路,提高了計算機的利用率。
(1)混合通信板原理圖
混合通信板匯合了光纖通信、RS232通信和RS485通信。圖3是混合通信板的通信原理圖。
混合通信板接受到來自計算機的光信號后,首先轉換成TTL信號,一部分由MAX1480B轉變成RS485信號,另一部分直接由光纖口變為光信號發送給充電單元。混合通信板是整個PFN通信系統的中樞。

圖3 混合通信板原理圖
(2)用MAX1480B免控實現TTL信號到RS485信號的轉化
MAX1480B是由美國MAXIM公司生產的完整的帶光電隔離的RS485數據通信接口芯片,它的最主要特點是驅動器具有限擺率的功能,可使電磁干擾降到最小,并且能減小由于終端不匹配而引起的反射。MAX1840B由光耦合器,DC-DC轉換器和RS485模塊三部分構成。
RS485是半雙工的,需要進行收發控制,DE端是信號發送和接收使能端。一般的設計中是采用微控制器對DE控制,但這么做有兩個弊端:一是使設計成本增加,硬件電路復雜;二是需要對微控制器進行編程,波特率變化和通信協議參數變化時,要改變延時參數,很不方便[4-5]。
因此本混合系統采用了免控制的TTL/RS485轉化,完全從硬件上實現對轉換器收發控制,與通信速率和通信方式無關,免除了當通信協議改變時,需重新改變參數。其接線原理圖如圖3右半部分所示。
在TTL信號中,+5V是邏輯“1”,0V是邏輯“0”。而 RS485接口采用差分電平方式傳輸,當兩根傳輸線滿足A-B> =200mV時為邏輯“1”,當 A-B <= -200mV時為邏輯“0”。
圖中TXD與GND經過異或門后直接接到DI端,這樣TXD與DI端的邏輯是相同的。同理TXD與VCC經過異或門后直接接到DE端,TXD與DE邏輯相反。通常情況下,串口不發送數據時,TXD為邏輯“1”,DE 為邏輯“0”,接收端使能,MAX1480B 隨時準備接收來自RS485方向的信號。當串口發送數據時,分為兩種情況:TXD發送邏輯“0”時,DI端為“0”,DE端為“1”,MAX1480B發送使能,TTL的數據正常發送到RS485接口上,DI上的邏輯“0”發送過去,即A-B<= -200mV;當TXD發送邏輯“1”時,DI上的邏輯是“1”,而DE上的邏輯是“0”,MAX1480B發送功能關閉,DI上的邏輯“1”不能通過MAX1480B發送到RS485端,但A端和B端分別接上了上拉電阻和下拉電阻從而實現了A-B> =200mV,RS485接口接收到邏輯“1”信息,保證了TTL到RS485的正確通信。
在實際應用中,由于通信載體是雙絞線,它的特征電阻為120Ω左右。因此要在位于總線兩端的差分端口VA與VB之間跨接120Ω匹配電阻,以減少由于不匹配而引起的反射、吸收噪聲,有效地抑制了噪聲干擾[6]。
2.4.1 硬件設計
RS485部分的數據傳輸采用主從站的方法,如圖1所示用RS485構成的總線型網絡系統,采用主從方式進行多機通信。開始時所有從機復位,即處于監聽狀態,等待主機的呼叫[6]。從混合控制板輸出的RS485信號,把所有利用RS485通信的模塊并聯在RS485總線上,計算機把命令發送到RS485總線上,各個模塊發送數據也是發到RS485總線上。總線上的所有從站接收到報文后,把報文中的目標地址與該從站本身地址做比對,如果匹配則對報文進行處理,不匹配則不予理睬。
2.4.2 軟件設計

圖7 報文框架
計算機把一組數據發送到RS485總線上,所有模塊均接收到該數據,數據的區分通過訂制報文來解決的。圖7就是實際所用的報文框架。報文頭解決總線上一些亂碼對數據接收和發送的干擾,發送端地址對應著數據的來源,接收端地址指定數據的去向,數據類型決定了數據是具體接收模塊,報文尾是數據全部接收到的標志。總的來說,發送端地址和接收端地址是指計算機或者以DSP為核心的下位機,數據類型是對各個以DSP為核心的下位機的區分[7]。
例如:報文頭用7E E7 7E,PC的代碼是58,DSP下位機用F3,報文尾0D,數據類型則是每個模塊都有自己的代碼,例如模塊1定義為01,模塊2定義為02,模塊N定義為N。一組報文為:7E E7 7E 58 F3 01……0D此報文是計算機發送給下位機模塊1的報文,當其他模塊接收到這個報文后,對比地址不是自己的,則對此報文不予理睬。下面詳細介紹DSP命令報文檢測程序。


以上程序說明:當下位機接收到RS485總線上的數據后,首先檢測此報文前五位,最先接收到的數據依次與RED_HEAD中的數據進行比較,其中的任何一位與RXD_HEAD中的數據不相同,都返回到SCI_RX_BACK,對AR4和AR6進行初始化,再返回到主程序中。只有前五位與RXD_HRAD中的數據相同時,對JS_mark進行置位,接收數據使能。開始全部地接收數據,直到收到0D停止接收,然后對數據進行檢測、判斷。
RS485總線中接有電壓檢測和電流檢測的單元,會給上位機PC上傳數據,DSP向計算機發送數據首先打包,在7E E7 7E F3 58……0D中添加數據,然后發送。數據發送到RS485總線上,通過混合通信板發送給計算機,由于計算機識別的是7E E7 7E F3 58……0D格式的數據,接收地址是58的數據包,接收并處理數據。由于共用RS485總線,各RS485模塊也接收到此數據,但是接收地址和發送地址不相符,各模塊接收后便丟掉。
在必要的時候RS485各模塊之間也可以互相發送命令,命令格式與PC發的命令格式相同,例如模塊1給模塊2發送命令7E E7 7E 58 F3 02……0D,此時PC接收到此格式的命令,不是它要處理的數據,就丟掉了。只有模塊2會響應此命令,其他模塊也不響應此命令。
混合通信板輸出的光信號,發送到充電單元,由充電控制板上的光纖轉TTL信號模塊,將接收到的光信號轉換為TTL,然后與充電單元進行通信,這里不再詳述。
在PFN監控系統中,有許多參數需要測量。本文根據實際要求,給出了一種集RS232、RS485及光纖的混合通信設計方法,給出了芯片選型及電路原理圖等。在PFN強電磁脈沖環境下,以一臺工控機為主機,與多個DSP從機進行通信。經實驗驗證,采用光纖通信和RS-485組成的混合通信,數據收發正常,抗干擾性好,通信方式靈活,能適用于強電磁干擾環境下的測控場合。
[1]張柯,鐘和清,林福昌,何俊佳,鄒云屏.基于DSP和FIFO的多路高速數據采集系統在PFN中的應用[J].電測與儀表,2006,43(492):37~41.
[2]王志軍,王少榮.基于RS485和光纖通信技術的測量系統設計與實現[J].電氣應用,2006,25(9):54 ~56,70.
[3]饒文貴,田建生.DSP串行數據光纖傳輸系統設計[J].計算機測量與控制,2007,15(1):127 ~128,134.
[4]潘圣民,劉小寧,楊雷.基于DSP的光纖數據采集網絡的研制[J].微計算機信息,2006,12(Z):106 ~108.
[5]陽世榮,王少榮.基于RS-485與光纖混合通信網絡的脈沖功率測控系統[J].廣東電力,2006,19(9):70 ~72,78.
[6]王琦,秦娟英,周偉.用RS485構成總線型多點數據采集系統[J].計算機自動測量與控制,2000,18(6):45 ~47,52.
[7]周凌輝,王少榮.強電磁環境下測控系統的通信系統設計[J].高電壓技術,2004,30(2):43 ~44,53.