<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > ARM9嵌入式系統(tǒng)在勵磁調(diào)節(jié)裝置的應(yīng)用

          ARM9嵌入式系統(tǒng)在勵磁調(diào)節(jié)裝置的應(yīng)用

          作者: 時間:2008-06-05 來源:網(wǎng)絡(luò) 收藏
          摘要:以經(jīng)典和現(xiàn)代控制理論與數(shù)字信號處理器DSP技術(shù)與技術(shù)相結(jié)合的微機器,在計算速度、抗電磁干擾、可靠性等方面有了極大的改進。本文介紹了采用最新的ARM技術(shù)的同步發(fā)電機的自動的基本原理,并進一步給出了該主要的硬件、軟件組成及特點和運行流程,該已經(jīng)運用于WKKL系統(tǒng),取得了很好的經(jīng)濟效果,具有很好的推廣價值。
          關(guān)鍵詞:;ARM;Linux;

          0. 前言

          勵磁系統(tǒng)是發(fā)電機組重要的輔助,它對發(fā)電廠的自動化、發(fā)電機組運行的可靠性有著重要作用。隨著科學(xué)技術(shù)發(fā)展,勵磁方式已從直流電機勵磁系統(tǒng)發(fā)展到可控硅勵磁,自動調(diào)節(jié)器從原來的模擬式發(fā)展到微機數(shù)字式。

          本文所研究的勵磁調(diào)節(jié)裝置,它是以經(jīng)典和現(xiàn)代控制理論與數(shù)字信號處理器DSP技術(shù)與技術(shù)相結(jié)合的微機勵磁調(diào)節(jié)器。它繼承了過去的微機勵磁調(diào)節(jié)器的全部調(diào)節(jié)、控制及限制保護功能,同時在計算速度、抗電磁干擾、可靠性等方面有了極大的改進,有效保證整個系統(tǒng)調(diào)節(jié)、控制功能的實現(xiàn); 外圍采用先進的大規(guī)??删幊踢壿嬈骷?,以提高整個系統(tǒng)的可靠性,并形成對用戶開放的邏輯系統(tǒng)。

          1.勵磁調(diào)節(jié)器的組成原理

          圖一 勵磁調(diào)節(jié)系統(tǒng)原理圖

          所示為自并勵勵磁調(diào)節(jié)器系統(tǒng)的組成圖,機自身向可控硅整流橋供電,AVR裝置根據(jù)采集的數(shù)據(jù)經(jīng)PI或PID計算得到數(shù)據(jù)控制量,經(jīng)過比較電路產(chǎn)生觸發(fā)脈沖,調(diào)節(jié)可控硅導(dǎo)通角的大小,使機端電壓保持在恒定值,從而最終達到控制的目的。

          該系統(tǒng)主要由微機勵磁調(diào)節(jié)器;電氣制動停機裝置等分組成。采用兩套相同的控制器冗余配置,物理通道相互獨立,每個通道基本包括:電源系統(tǒng)、主機板、采樣板、模擬量輸入輸出板(A/D,D/A) 、開關(guān)量輸入輸出板、脈沖形成及放大板等。

          2. 嵌入式系統(tǒng)部分

          2. 1嵌入式硬件單元

          ARM(Advanced RISC Machines)是微處理器行業(yè)的一家知名企業(yè),設(shè)計了高性能、耗能低的RISC處理器,具有性能高、成本低和能耗省的特點。于多種嵌入式領(lǐng)域,配備Thumb擴展、調(diào)試和Harvard總線。5級流水線提高了時鐘頻率和并行處理能力。集成有串口,USB Host 控制器,LCD控制器,Nand Flash控制器,IDE, PCMCIA 等多種功能。32K FRAM.最高分辨率1024X768X32芯片,內(nèi)置以太網(wǎng)控制器,片上資源豐富。

          本系統(tǒng)中管理單元是以為內(nèi)核,串行并行接口芯片,D/A轉(zhuǎn)換器等硬件,負責管理液晶、對外通訊、打印、錄波分析。大大增加了系統(tǒng)通信、后臺管理、遠程維護等附加功能,可以運行操作系統(tǒng)以及QT等程序,具有比較強的事務(wù)管理功能。

          控制單元是以DSP為內(nèi)核,負責脈沖形成、AD轉(zhuǎn)換、數(shù)據(jù)運算等。 DSP由于其特殊的結(jié)構(gòu)、專門的硬件乘法器和特殊的指令,使其能快速地實現(xiàn)各種數(shù)字信號處理及滿足各種高實時性要求。其優(yōu)勢在于其強大的數(shù)據(jù)處理能力和較高的運行速度。

          本系統(tǒng)采用ARM和DSP芯片的雙核嵌入式系統(tǒng),充分利用了ARM和DSP的各自特點進行協(xié)同開發(fā)。 DSP作為控制部分,可以充分發(fā)揮其對數(shù)字信號處理的獨特優(yōu)勢;ARM作為管理部分,則發(fā)揮其前臺顯示通訊管理的優(yōu)勢,使前臺部分相對獨立,減少主CPU負擔;即使發(fā)生故障,對后臺主程序不產(chǎn)生影響,相應(yīng)增強了整個設(shè)備冗錯能力。二者通過HPI進行實時數(shù)據(jù)透明交換。

          圖二 ARM+DSP嵌入式硬件圖

          2.2 嵌入式操作系統(tǒng)選擇

          在ARM 芯片上可以實現(xiàn)多種操作系統(tǒng)的移植,比如Window-CE、VXWorks等,由于Linux具有以下特點: 1)開放的源碼,豐富的軟件資源;2)內(nèi)核功能強大,性能高效、穩(wěn)定,多任務(wù)易于裁減; 3)完善的網(wǎng)絡(luò)通信、圖形、文件管理機制;4)支持大量的周邊硬件設(shè)備; 5) 價格低廉可以有效降低產(chǎn)品成本?;陂_發(fā)成本考慮,最后選用了ARM-Linux系統(tǒng)。

          2.3 ARM 與 DSP連接

          HPI是一個并行串口,ARM通過它可以之間訪問DSP存儲空間以及地址映射道存儲空間的外圍設(shè)備。HPI主要由地址寄存器HPIA,數(shù)據(jù)寄存器HPID,以及控制寄存器HPIC組成,ARM先通過對控制寄存器和地址寄存器設(shè)置,然后根據(jù)控制信號進行對數(shù)據(jù)寄存器讀寫操作。ARM處理器在與HPI的讀/寫前,首先要完成自身工作模式等一系列初始化,其源代碼如下:

          SYSCFG=0xeTffe22;/*關(guān)掉ARM中Cache*/

          EXTDBWTH=0K0ffff556; /*使外部I/O接口工作于32位模式*/

          EXTAC0NO=0x08610000/*配置外部I/O接口各讀寫時序關(guān)系*/

          這段代碼通過對寄存器的操作,配置好ARM處理器工作模式后,對外部I/O接口就可以進行讀寫,從而完成對HPI接口的相應(yīng)操作了。HPI接口可以用I/O端口方式,也可以用I/O存取方式。系統(tǒng)平臺采用I/O存取方式,將HPI訪問地址寄存器HPIA、數(shù)據(jù)寄存器HPID、控制寄存器HPIC映射到內(nèi)存物理地址為0x3fd40000開始的空間,通過訪問存儲器指令對HPI進行操作。

          HPI物理地址定義如下:

          #define HPI-Base Ox3fd40000

          #define Vpint /* volatile unsigned int */

          #define HPICW (Vpint(HPI-Base +0x00))

          #define HPICR (Vpint(HPI-Base +0x40)) /* 定義HPIC寄存器 */

          #define HPIAW (Vpint(HPI-Base +0x10))

          #define HPIAR (Vpint(HPI-Base +0x50)) /* 定義HPIA寄存器 */

          #define HPIDW (Vpint(HPI-Base +0x20))

          #define HPIDR (Vpint(HPI-Base +0x60)) /* 定義HPID寄存器 */

          開始通信時ARM向DSP發(fā)送命令(如數(shù)據(jù)采集),通過HPI口中斷DSP,使DSP進入相應(yīng)子程序;同時DSP將數(shù)據(jù)存入緩沖區(qū),一幀長度為256字節(jié)。當ARM向DSP請求數(shù)據(jù)時,向DSP發(fā)送一個幀同步命令字,并同時中斷DSP,DSP響應(yīng)中斷將數(shù)據(jù)送入HPI口RAM,存完一幀數(shù)據(jù)后DSP向ARM發(fā)中斷,ARM響應(yīng)中斷,清除該中斷把HPI口中數(shù)據(jù)取出存入RAM中,并送終端顯示并循環(huán)刷新。 ARM的部分程序流程圖如下圖所示:

          圖三 ARM部分程序流程圖

          HPI讀寫數(shù)據(jù)部分代碼:

          for(i=0 ;iHPISize;i++)

          {

          HPICW=0x00000000; /*初始化HPI口的控制寄存器*/

          HPIAW=0x800000000; /*初始化HPI口的地址寄存器*/

          hpiBaseAddr[i]=HPIDR; /*通過HPI讀出數(shù)據(jù),送到數(shù)組中暫存*/

          CpLen=HPISize;

          if ( copy_to user (buffer , (_u8*)(hpi>HpiBaseAddr[j]), CpLen )) return-EFAULT;

          /*將數(shù)據(jù)拷貝到用戶緩沖區(qū)*/

          return CpLen

          }

          在開發(fā)DSP為內(nèi)核的控制單元中,大部分代碼采用了C語言來編寫,利用Ti公司提供的開發(fā)環(huán)境CCS IDE(Code Composer Studio Integrated Development Environment )進行程序編譯、匯編和鏈接,并對程序進行仿真調(diào)試,最后將生成的DSP可執(zhí)行代碼下載到DSP的Flash中。

          3.結(jié)論及創(chuàng)新點

          利用 CPU 強大的功能, 以及嵌入式Linux多進程多線程編程等提供的便捷高效的底層支持,開發(fā)出的勵磁調(diào)節(jié)裝置具有可靠性高、操作方便等諸多優(yōu)點,在勵磁調(diào)節(jié)控制系統(tǒng)中起到了樞紐和核心的作用。本文介紹使用的ARM和DSP雙CPU構(gòu)成的雙核嵌入式的硬件平臺,給出系統(tǒng)整體硬件設(shè)計圖,并詳細介紹了ARM和DSP通信部分的設(shè)計。以后基于DSP進行數(shù)據(jù)處理、ARM進行管理,二者配合的系統(tǒng)將會越來越多、也將越來越廣泛。

          創(chuàng)新點:(1) 系統(tǒng)用ARM處理器代替單片機,使系統(tǒng)性能得以大大提高; (2) 采用ARM、DSP雙核嵌入式系統(tǒng),充分發(fā)揮了ARM和DSP的各自優(yōu)勢;(3)工業(yè)級大液晶顯示器觸摸屏,替代傳統(tǒng)LCD,友好人機界面易學(xué)易用。

          參考文獻:

          [1] 李基成 現(xiàn)代同步發(fā)電機勵磁系統(tǒng)設(shè)計及應(yīng)用 北京:中國電力出版社 2002

          [2] 周雙喜、 李 丹 同步發(fā)電機數(shù)字式勵磁調(diào)節(jié)器 北京:中國電力出版社 1998

          [3] 杜春雷,ARM體系結(jié)構(gòu)與編程[M],北京清華大學(xué)出版社,2003,7~191

          [4] EP9315 User’s Guide by Cirrus Logic

          [5] Atmel Corporation ARM Datasheet January[M],F(xiàn)rance:Atmel Corporation 1999

          [6] 吳振綱,陳虎.PLC的人機接口與編程[J].微計算機信息,2005,8-1:21-23

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();