摘要:本文主要介紹了:該項開發(fā)綜合考慮了MCU和CPLD的相互作用,采用了交流采樣技術(shù),認真考慮VHDL進程并行和CPLD的結(jié)構(gòu)特點,并應(yīng)用電路簡化的幾種技巧與方法,充分利用CPLD的硬件資源優(yōu)化電路,實現(xiàn)系統(tǒng)對穩(wěn)定性,度等方面的要求。
1、引言
BX型信號變壓器,BG型軌道
變壓器和ZG型硅整流器作為鐵路信號電器設(shè)備的前端,其工作的穩(wěn)定性、準(zhǔn)確性直接關(guān)系到行車安全,變壓器的可靠檢測是嚴(yán)抓質(zhì)量的*步,對于生產(chǎn)廠家而言,測試流程不允許抽樣,且測試結(jié)果應(yīng)留檔。本套測試系統(tǒng)用來測試鐵路變壓器的各種要求參數(shù),包括原邊空載電流、次邊空載電壓、次邊帶載電壓電流,變壓器絕緣電阻、原邊電壓頻率,測量結(jié)果精度要求3%,測試系統(tǒng)分為上下位機兩大部分,下位機運用智能儀表的設(shè)計思想,在MCU和CPLD控制基礎(chǔ)上對各種要求測試參數(shù)分別進行自動測試,上位機上采用VC++6.0編寫軟件實現(xiàn)串口通訊,歸類統(tǒng)計并判斷是否合格,存儲打印結(jié)果,系統(tǒng)滿足操作簡單可靠,提率,減少誤差。
2、功能介紹
下位機以80C196KC作為控制中樞,其主程序框圖見圖1,變壓器接入測試儀測試端后接通電源,打開測試儀,測試儀首*行初始化,包括PSD,全局變量、串口、中斷8253計數(shù)器,LCD等的初始化,然后進行自檢,包括檢查測試儀內(nèi)部電路是否正常,是否響鈴(由變壓器輸入端電壓接反引起的報警),連續(xù)檢測8個周期的輸入端電壓并判斷輸入電源是否接好,電壓是否正常,通訊是否正常,自檢過程是串級檢測(任一項自檢不合格就閃燈報警),MCU根據(jù)鍵入值顯示工作狀態(tài),并調(diào)用子程序處理,人工輸入變壓器型號,監(jiān)測儀進入設(shè)置狀態(tài),控制相應(yīng)繼電器動作,將該變壓器所有副邊繞組接入測試端,并選擇合適量程,進入測試狀態(tài),測完參數(shù)后MCU進行處理并顯示相應(yīng)變壓器測試結(jié)果,進入判斷狀態(tài),判斷變壓器是否合格,不合格則觸發(fā)蜂鳴器報警,根據(jù)要求進入通訊狀態(tài),向上位機發(fā)送和接收數(shù)據(jù)。
本設(shè)計采用MAX7000系列的EPM7128兩塊,其中*塊CPLD(1)的主要功能如下:
?。?)與A/D芯片(MAX125)相應(yīng)片腳連接,控制模/數(shù)轉(zhuǎn)換并讀入其結(jié)果,MAX125為并行輸出,是以字進行操作的,所以一次要讀14位,用兩個字節(jié)鎖存。
?。?)通過系統(tǒng)總線,將A/D轉(zhuǎn)換結(jié)果傳給80C196進行處理。
?。?)將80C196處理過的需顯示的數(shù)據(jù)緩沖,產(chǎn)生LCD的數(shù)據(jù)(8位)總線驅(qū)動。
?。?)鍵盤響應(yīng)。
(5)JTAG功能。
第二塊CPLD(簡稱CPLD(2))依據(jù)MCU發(fā)出的指令或輸入型號譯碼后驅(qū)動控制與該型號二次繞組對應(yīng)的繼電器吸合與釋放動作,并選擇量程。由于繼電器沒有地址,所有操作他的數(shù)據(jù)必須同時發(fā)送,即使只改變一個繼電器的狀態(tài),仍然要把沒有改變的繼電器的數(shù)據(jù)同時送給CPLD鎖存,所以譯碼是必需的。
CPLD的功能結(jié)構(gòu)示意圖如圖2所示,可以認為,CPLD在下位機中起著重要的關(guān)聯(lián)作用,一方面,他與MCU相互通訊,并受MCU控制,另一方面,CPLD又執(zhí)行著對前端電路、鍵盤、LCD和繼電器板等的操作任務(wù),所以從系統(tǒng)總體的角度出發(fā),CPLD完成一些接口功能。
3、頻率跟蹤測量技術(shù)
本系統(tǒng)需要對變壓器的電壓、電流和頻率等進行交流采樣,而交流采樣應(yīng)用成功與否,頻率的準(zhǔn)確測量是一個關(guān)鍵,因為我們是取8個正常采樣周期的平均電壓、電流值,而且由于不同型號變壓器的輸出頻率不一,本身也需要測量頻率。響應(yīng)時間、測量精度以及硬件要求是測頻方法的主要指標(biāo)。
我們可以定量分析一下由電壓信號頻率波動所引起的電壓信號有效值誤差的大小。
一般工頻頻率的波動常常要到0.1Hz以上,即δf>0.1/50=0.5%,則對電壓信號有效值的影響要達到0.25%,所以應(yīng)實現(xiàn)采樣頻率對工頻頻率的在線自動跟蹤,以保證測量精度。
考慮到系統(tǒng)的頻率不是變化很快,要實現(xiàn)采樣頻率隨系統(tǒng)工頻的變化而實時調(diào)整,可先測得系統(tǒng)的頻率前一周期對應(yīng)的計數(shù)值Tc(以單片機系統(tǒng)的定時器時鐘周期為單位),然后根據(jù)每周波采樣點數(shù)(N),適時計算出每一采樣間隔計數(shù)值Tsj。
間隔計數(shù)值:
Tsj=Tc/N(2)
則以Tsj為周期進行采樣,即可實現(xiàn)采樣頻率的實時跟蹤,保證了交流等間隔采樣,為實現(xiàn)這一過程,通常采用的電路結(jié)構(gòu)為:來自電壓(流)互感器的電壓(流)經(jīng)過低通濾波器和跟隨器,經(jīng)過零比較器(可用LM339)整形成方波,經(jīng)光耦(如4N35)送到80C196KC的高速輸入接口HS1.0利用方波的上升沿觸發(fā)高速輸入中斷,側(cè)得每個工頻周期計數(shù)值Tc。單片機由式(2)計算得到采樣間隔時間Tsj。以Tsj為時間間隔,設(shè)置軟件定時器中斷,在軟件定時器中斷中進行采樣間隔設(shè)置,主程序根據(jù)其確定啟動A/D的時間間隔,完成周期誤差的大大減少和采樣頻率的實時跟蹤。
4、CPLD模塊設(shè)計
明確了CPLD的主要作用后,我們在Max+PlusII軟件上用VHDL語言分別實現(xiàn)這些模塊功能,設(shè)計包括4個階段:設(shè)計輸入、設(shè)計處理、設(shè)計驗證和器件編程。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。非常適用于可編程邏輯芯片的應(yīng)用設(shè)計。
4.1主要模塊進程
系統(tǒng)檢測變壓器時,MCU在正常初始化后,有鍵盤輸入時會要求CPLD運行按鍵響應(yīng)進程;CPLD根據(jù)所鍵入型號運行繼電器控制進程,操作繼電器板,并上傳操作結(jié)果,MCU在認為前述操作正常后,才會要求CPLD啟動對A/D控制的進程,模/數(shù)轉(zhuǎn)換結(jié)果會送給MCU;MCU對轉(zhuǎn)換結(jié)果進行處理后,又會要求CPLD運行顯示進程,顯示結(jié)果LCD上。
4.2仿真
以讀A/D結(jié)果(ReadOperation)進程為例進行仿真。
——進程名稱:ReadOperation
——敏感變量,RD
——輸出變量,DataBusIn(送到數(shù)據(jù)總線上)
——目的:讀操作
ReadOperation:process(RD,Enlcd,En125Low,En125High,CSIF,CSIM)
需要說明的是,信號變量在仿真時需聲明其初始值,本讀操作進程中的信號變量自會有其他進程(如片選進程)為其賦值,“&”作為連接運算符,可將多個對象或矢量連接成位數(shù)更大的矢量,對ReadOperation進程編譯仿真的波形圖如圖3所示。
5、結(jié)語
經(jīng)過現(xiàn)場試用得到實驗測試數(shù)據(jù),表1列出3臺BX1-34型變壓器的部分參數(shù)測試結(jié)果,其中I次空流代表原邊空載電流,空壓II12指二次繞組1和2端的空載電壓,其他類推,II次空壓為二次繞組的總空載電壓,滿載電壓指在二次繞組串接8Ω電阻時的電壓值。
結(jié)果滿足《信號維護規(guī)則)中對變壓器“輸入額定電壓,二次端子電壓空載時其誤差不大于端子額定電壓值的10%;容量為30-60VA的變壓器滿載時,其二次端子電壓不小于端子額定電壓值的85%”的規(guī)定。
本次開發(fā)綜合考慮了MCU和CPLD的相互作用,采用了交流采樣技術(shù),認真考慮VHDL進程并行和CPLD的結(jié)構(gòu)特點,并應(yīng)用電路簡化的幾種技巧與方法,充分利用CPLD的硬件資源優(yōu)化電路,實現(xiàn)系統(tǒng)對穩(wěn)定性,度等方面的要求。