<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > EP1C6Q在水輪機組轉速測量中的應用

EP1C6Q在水輪機組轉速測量中的應用

作者: 時(shí)間:2004-12-07 來(lái)源:網(wǎng)絡(luò ) 收藏
摘要:狀態(tài)監測系統在工業(yè)現場(chǎng)控制中已受到越來(lái)越多的重視。文章結合在開(kāi)發(fā)基于現場(chǎng)總線(xiàn)技術(shù)的狀態(tài)監測系統中遇到的實(shí)際問(wèn)題,提出了一種采用現場(chǎng)可編程門(mén)陣列(FPGA)器件設計的系統的實(shí)現方案,并給出了詳細的電路組成結構。最后就方案實(shí)現過(guò)程中遇到的問(wèn)題提出了一些應注意的事項。

關(guān)鍵詞:狀態(tài)監測;現場(chǎng)總線(xiàn);現場(chǎng)可編程門(mén)陣列;

隨著(zhù)工業(yè)生產(chǎn)與科學(xué)技術(shù)的發(fā)展,大型的自動(dòng)化水平也在不斷提高。而這些設備一旦發(fā)生故障,將會(huì )給人們的生活和生命財產(chǎn)造成極大的威脅。因此,對其運行狀態(tài)進(jìn)行監測,及時(shí)發(fā)現故障征兆具有重要意義?,F場(chǎng)可編程門(mén)陣列(FPGA,Field Programmable Gate Array )的出現是超大規模集成電路和計算機輔助設計技術(shù)發(fā)展的結果。它具有集成度高、多功能、低功耗、開(kāi)發(fā)周期短等特點(diǎn),而且可以很方便地對設計進(jìn)行在線(xiàn)修改,因此獲得了廣大用戶(hù)的青睞,應用范圍也越來(lái)越廣。本文首先介紹了ALTERA公司推出的低價(jià)位、高性能CYCLONE系列FPGA器件EP1C6Q的特點(diǎn)和內部結構,然后結合在狀態(tài)監測開(kāi)發(fā)系統中遇到的實(shí)際問(wèn)題,給出了相應的解決方案,最后就開(kāi)發(fā)過(guò)程中遇到的一些實(shí)際問(wèn)題,提出了筆者自己的看法。

1?。牛校保茫叮训慕Y構特點(diǎn)

EP1C6Q是ALTERA公司低價(jià)位CYCLONE系列FPGA的一種。它采用1.5V內核電壓,內嵌92106位存儲區間,可提供兩個(gè)鎖相環(huán)和雙倍數據傳輸速率(DDR)的接口電路。其具體特點(diǎn)如下:

●采用240個(gè)引腳的FPQF封裝形式,能提供185個(gè)IO用戶(hù)引腳和5980個(gè)邏輯單元。

●具有20個(gè)4608位的RAM存儲區,最高可支持200MHz的數據傳輸。每個(gè)存儲區均包括單口或雙口RAM、ROM、FIFO等各類(lèi)存儲器件,并支持8位、16位、32位、36位等數據存儲類(lèi)型。

●片上的鎖相環(huán)電路可以提供輸入時(shí)鐘的1~32分頻或倍頻、156~417ps移相或可變占空比的時(shí)鐘輸出,輸出時(shí)鐘信號的特性可直接在開(kāi)發(fā)軟件QUARTUS2里設定。經(jīng)過(guò)鎖相環(huán)輸出的時(shí)鐘信號既可以作為內部的全局時(shí)鐘,也可以輸出到片外供其它電路使用。

●多功能的IO結構支持差分和單端輸入,并與3.3V、32位、66MHz的PCI局部總線(xiàn)兼容;IO輸出可以根據需要調整驅動(dòng)能力,并具有壓擺率控制、三態(tài)緩沖、總線(xiàn)狀態(tài)保持等功能;整個(gè)器件的IO引腳分為四個(gè)區,每一個(gè)區可以獨立采用不同的輸入電壓,并可提供不同電壓等級的IO輸出。

2 在水輪機組

水輪機組的工作效率是系統狀態(tài)監測中的一項重要指標,而機組的工作效率與當前時(shí)刻的轉速密切相關(guān)。的關(guān)鍵是對六十五路脈沖信號周期的測量。筆者采用了EP1C6Q器件內部的65個(gè)計數器同時(shí)工作的測量方法。

2.1 水輪機組轉速測量原理

該水輪機組轉速測量裝置如圖1所示,它由六十五個(gè)微型機械傳感器組成,其中六十四個(gè)傳感器分布在對稱(chēng)的四個(gè)轉軸上,第六十五個(gè)傳感器在軸的中心交點(diǎn)。流經(jīng)管道的水流將帶動(dòng)傳感器的旋轉。當傳感器旋轉一周后,觸發(fā)電子線(xiàn)路產(chǎn)生一個(gè)脈沖信號。管道中水流的速度越快,脈沖信號的間隔越短;管道中水流的速度越慢,脈沖信號的間隔越長(cháng)。這樣?就可以根據脈沖信號的間隔或者說(shuō)兩個(gè)信號上升沿的時(shí)間長(cháng)短來(lái)計算流速的大小,從而依據相應的公式計算水輪機組轉速的大小。

2.2 整體設計方案及工作原理

該水輪機組系統設計方案的整體框圖如圖2所示。水輪機組狀態(tài)監測系統采用LonWorks現場(chǎng)總線(xiàn)技術(shù),神經(jīng)元芯片是構成系統采集節點(diǎn)的核心,它內部包括三個(gè)微處理器,即MAC處理器、網(wǎng)絡(luò )處理器、應用處理器,而11個(gè)輸入/輸出引腳則可根據不同的外部設備來(lái)靈活配置。收發(fā)器是節點(diǎn)之間通信的橋梁。

由于水輪機組轉速比較慢,傳感器發(fā)出的脈沖信號的時(shí)間間隔較長(cháng)?因此?對緩變信號周期的測量應采用測周的辦法。首先是將輸入的脈沖信號經(jīng)去抖、限幅后變成符合EP1C6Q輸入信號特性要求的信號,然后當EP1C6Q接到神經(jīng)元信號的測量命令后,再捕捉輸入信號的上升沿。為了保證所有的通道在神經(jīng)元芯片讀取數據之前已經(jīng)鎖存,讀取數據的時(shí)間間隔應保證不小于兩個(gè)信號周期。神經(jīng)元芯片將每個(gè)通道的計數值存儲到片內RAM區,并將計算得到的轉速值送到信號處理模塊,以計算水輪機組的工作效率。由于流速測量傳感器的分布特點(diǎn)是邊緣傳感器的信號周期比內部傳感器的信號周期長(cháng),因此,筆者選擇一個(gè)最靠邊的傳感器作為標志傳感器,并由標志傳感器產(chǎn)生讀取數據的標志位信號。

2.3 硬件實(shí)現

(1) 信號調理電路

由于EP1C6Q輸入/輸出邏輯高電平僅能支持4.1V,而不能直接與標準的TTL電平信號相連,因此,神經(jīng)元芯片和EP1C6Q之間的連接以及脈沖輸入電路都必須加限幅電路。芯片的設計已經(jīng)考慮到與5V設備的連接問(wèn)題,其解決方法是在連接線(xiàn)路中串接一個(gè)162Ω電阻。

(2) EP1C6Q和神經(jīng)元間的物理連接

在轉速測量模塊中,EP1C6Q主要起信號邊沿檢測、脈寬測量以及實(shí)現神經(jīng)元芯片外圍邏輯電路的作用。由于許多功能是在EP1C6Q內部利用軟件實(shí)現的,所以二者之間的連接很簡(jiǎn)單??刂菩畔⒌膫鬟f主要有兩個(gè)途徑:一是通過(guò)神經(jīng)元芯片的I/O引腳,由于I/O引腳較長(cháng)的建立時(shí)間會(huì )影響系統的實(shí)時(shí)性,因此,設計電路僅使用IO0、IO1兩個(gè)通道來(lái)作為整個(gè)系統的異步清零(clr)和讀取數據標志(read_time);另外一個(gè)途徑是通過(guò)神經(jīng)元芯片的數據總線(xiàn)(D0~D7)和地址總線(xiàn)?A0~A15?,即在EP1C6Q的內部設立狀態(tài)寄存器,并由神經(jīng)元芯片向寄存器中寫(xiě)入不同的數據,然后由寄存器根據寫(xiě)入的數據來(lái)使相應的控制信號有效。

2.4 軟件設計

a.EP1C6Q內部程序

EP1C6Q的內部程序是在QUARTUS2開(kāi)發(fā)軟件中實(shí)現的。QUARTUS2能夠支持原理圖輸入和硬件描述語(yǔ)言?xún)煞N編程方式。整個(gè)程序包括譯碼電路、分頻電路、計數控制電路、計數器模塊和數據的鎖存和讀取等五個(gè)部分。具體如下:

(1)計數控制電路

EP1C6Q內部的程序是在神經(jīng)元芯片的控制下運行的。其控制部分電路如圖3所示。信號fin代表六十五路脈沖輸入信號的一路,clk0代表標準的計數時(shí)鐘。在clr信號由低電平變?yōu)楦唠娖?、且start置為高電平后,脈沖信號fin輸入有效。當第一個(gè)上升沿到來(lái)后,計數器的PUL引腳變?yōu)楦唠娖?,此時(shí),計數器開(kāi)始計數;當第二個(gè)上升沿到來(lái)后,PUL變?yōu)榈碗娖?,計數器停止計數;而當第三個(gè)上升沿到來(lái)后,read_time信號變高電平,數據鎖存。

(2)計數器的設計

由于水輪機組的轉速比較慢,產(chǎn)生的脈沖信號頻率一般在0.01Hz~10Hz之間,因此,轉速快和轉速慢時(shí)的信號周期差別比較大。為滿(mǎn)足1/10000個(gè)計數時(shí)鐘的精度要求,計數器的計數位數應設計為20位。計數器的最大設定值為1000000,這樣,當脈沖信號周期在10Hz~0.1Hz之間時(shí),計數時(shí)鐘為100kHz;而當脈沖信號的周期在0.1Hz~0.01Hz之間時(shí),計數時(shí)鐘自動(dòng)轉換為10kHz。計數時(shí)鐘的自動(dòng)切換是由計數器的溢出標志控制的,當計數器的計數值超出設定的最大值(1000000)后,溢出標志由低電平變?yōu)楦唠娖?,這樣,經(jīng)過(guò)全局時(shí)鐘分頻計數的時(shí)鐘分頻次數也會(huì )相應地擴大10倍,從而保證了計數器不會(huì )再次溢出。

(3)狀態(tài)寄存器設計

為了減小神經(jīng)元芯片控制功能對IO引腳的依賴(lài),EP1C6Q在其內部設立了兩個(gè)狀態(tài)寄存器。這兩個(gè)狀態(tài)寄存器可根據神經(jīng)元芯片寫(xiě)入的控制字來(lái)使相應的控制信號有效。使用的控制信號如下:

start:通過(guò)神經(jīng)元芯片要求EP1C6Q進(jìn)入信號采集狀態(tài)控制,高電平有效。

lck:數據鎖存信號,低電平有效。當EP1C6Q的輸出信號read_time有效后,神經(jīng)元芯片向狀態(tài)寄存器寫(xiě)入命令字以使lck信號有效。為了保證所有通道的計數器已經(jīng)停止工作,神經(jīng)元芯片接收到read_time后將延遲ΔT時(shí)間后再鎖存計數器的數據。

h1?h2:計數值高八位、中八位、低八位的選擇控制。為了滿(mǎn)足系統要求的測量精度, EP1C6Q內部采用二十位計數器對每一路信號進(jìn)行計數,而神經(jīng)元芯片的數據總線(xiàn)是八位,因此需要分三次讀出。

(4)譯碼電路設計

神經(jīng)元芯片一般采用內存映象法進(jìn)行數據的傳遞。所謂內存映象法,是指給芯片外部的寄存器、存儲器或IO單元分配一個(gè)物理地址,以便于對外設操作,這相當于對該物理地址的操作。譯碼電路主要提供FLASH、狀態(tài)寄存器和六十五個(gè)計數器的片選信號。系統的地址分配如下:

E800~EFFF?數據存儲區,用于保存各個(gè)通道的計數值。

0000~7FFF?外圍FLASH區。

8000~8040?六十五個(gè)計數器的內存地址。

8041~8042?狀態(tài)寄存器的內存地址。

8042~E7FF?用戶(hù)備用空間。

(5)分頻電路

計數器單元的計數時(shí)鐘是把輸入的全局時(shí)鐘分頻得到的。12MHz的有源晶振輸出通??勺鳛槿謺r(shí)鐘,分頻電路采用VHDL語(yǔ)言設計,分頻次數設定值的變換由計數器的溢出標志控制。

b.神經(jīng)元芯片的內部編程

本編程設計主要用于完成與系統的同步和控制EP1C6Q程序的運轉。當接到信號處理模塊發(fā)來(lái)的數據請求信號后,該程序將啟動(dòng)EP1C6Q內部程序并開(kāi)始計數,以將最終的計數值讀到內部RAM區。

3 注意事項

在整個(gè)設計方案的實(shí)現過(guò)程中,應仔細考慮以下兩點(diǎn):

第一是芯片的選擇。與普通電路開(kāi)發(fā)不同的是,本設計方案的前期編譯和仿真驗證不需要拘泥于某一具體型號的芯片,只要滿(mǎn)足方案所需的邏輯單元的數量、控制時(shí)序的精度和存儲區間的大小等要求,就可以在軟件開(kāi)發(fā)工具中編譯仿真??傻椒桨赋墒旌?,再考慮一些細節問(wèn)題,如芯片以及所需電源和配置芯片是否容易買(mǎi)到,提供的IO接口類(lèi)型是否滿(mǎn)足需要,芯片的封裝形式是否會(huì )影響到PCB板的制作等問(wèn)題。

第二是時(shí)序電路和組合電路的轉化。在一個(gè)系統中,時(shí)序電路和組合邏輯電路一般同時(shí)存在。兩種類(lèi)型的電路都作為輸入時(shí),為避免毛刺現象,可以在組合邏輯的輸入之前加D觸發(fā)器,以將組合邏輯電路轉化為時(shí)序電路。在多級時(shí)鐘系統中,為了滿(mǎn)足建立和保持時(shí)間的要求,往往需要在低頻時(shí)鐘信號驅動(dòng)的邏輯電路的輸出端加一級高頻時(shí)鐘信號驅動(dòng)的D觸發(fā)器,以實(shí)現時(shí)鐘之間的同步。但這樣做會(huì )增加輸入和輸出之間的時(shí)間延遲,嚴重時(shí)可能通不過(guò)編譯軟件的時(shí)序驗證。因此,可以將其轉化為簡(jiǎn)單的組合邏輯電路,以使其比較容易實(shí)現。

4 結束語(yǔ)

該方案已經(jīng)通過(guò)了實(shí)驗驗證,測量結果能夠滿(mǎn)足設計要求??紤]到成本問(wèn)題,選擇的芯片不能與5V系統直接相連,這使得多路輸入信號給整個(gè)電路的設計帶來(lái)了一定的困難。如果排除這些因素,該方案還可以得到進(jìn)一步的改善。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>