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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于μC/OS-II的數(shù)字化UPS設計與實現(xiàn)方案

          基于μC/OS-II的數(shù)字化UPS設計與實現(xiàn)方案

          作者: 時間:2012-10-16 來源:網(wǎng)絡 收藏

          摘 要: 針對,給出了系統(tǒng)總體框圖,為提高系統(tǒng)控制程序的實時性,提出一種實時操作系統(tǒng)μ的嵌入式 系統(tǒng)控制。通過對控制系統(tǒng)結構與功能的分析,了μ在TMS320LF2407A上的移植,對UPS系統(tǒng)控制項目以任務的形式進行調度,給出了部分參數(shù)設定和主程序清單。實驗結果證明,本文的有效的增強了系統(tǒng)控制軟件的模塊性、實時性,提高了系統(tǒng)運行的可靠性與穩(wěn)定性。

          本文引用地址:http://www.ex-cimer.com/article/148350.htm

          1 引言

          隨著信息技術的發(fā)展,不間斷應急電源(UPS)向著、智能化、網(wǎng)絡化、大容量多機冗余化和綠色化的方向發(fā)展。高性能專用DSP芯片為UPS的提供了良好的硬件基礎,而嵌入式實時軟件操作系統(tǒng)是數(shù)字化產(chǎn)品的核心。

          針對數(shù)字化UPS,本文給出了一種實時多任務操作系統(tǒng)μ 的系統(tǒng)控制設計。設計采用μC/OS-II為內核,其在TMS320LF2407A上的移植,通過對UPS控制系統(tǒng)結構與功能的分析,各部分控制功能劃分為不同優(yōu)先級的任務來調度實現(xiàn),給出了部分參數(shù)設定和主程序清單。實踐證明,μC/OS-II 的數(shù)字化UPS 系統(tǒng)提高了控制系統(tǒng)的實時性以及系統(tǒng)運行的可靠性及穩(wěn)定性。

          2 數(shù)字化UPS控制系統(tǒng)結構

          TMS320LF2407A 是TI 推出的專門針對工業(yè)控制領域的16 位高性能微控制器,其運算速度高、片內資源豐富,能夠很好的滿足數(shù)字化UPS電源控制系統(tǒng)功能的需要。數(shù)字化UPS 系統(tǒng)總體設計框圖如圖1 所示,虛線框內為主控制模塊,按功能劃分為A/D轉換、PWM(Pulse Wide Modulate)逆變控制、鎖相控制、保護控制、鍵盤及液晶顯示、通信接口、實時時鐘等功能模塊。

          4 數(shù)字化UPS任務設計及調度

          控制軟件主程序流程圖如圖3 所示。通過對UPS控制系統(tǒng)結構與功能的分析,各部分控制功能劃分為不同優(yōu)先級的任務,由μC/OS-II實時內核進行調度,實現(xiàn)多任務并行執(zhí)行。

          圖 3 主程序流程圖

          圖 3 主程序流程圖

          (1)數(shù)字化UPS 任務設計:如表1 所示,采用層次化、模塊化的設計思想,根據(jù)各個任務的重要性和實時性,把用戶程序分成9 個不同優(yōu)先級的任務,包括數(shù)據(jù)采集及PWM 波計算、鎖相同步、通信處理、系統(tǒng)參數(shù)計算、系統(tǒng)狀態(tài)檢測及處理、鍵盤掃描、鍵盤處理、液晶顯示、空閑任務。任務越重要,實時性越強,任務優(yōu)先級越高??臻e任務不執(zhí)行任何功能,一直處于就緒狀態(tài),只有其他任務空閑時才執(zhí)行。

          表1 數(shù)字化UPS任務功能及其描述

          表1 數(shù)字化UPS任務功能及其描述

          (2) μC/OS-II 任務調度:完成任務在運行態(tài)、就緒態(tài)、掛起態(tài)、休眠態(tài)以及中斷態(tài)之間的轉換,是實時多任務操作系統(tǒng)運作的核心功能,流程如圖4所示。μC/OS-II 的任務調度是基于優(yōu)先級的搶占式調度算法,系統(tǒng)共有9個任務和3個中斷。系統(tǒng)在任務控制塊(OS_TCB)中分配一個字(OSTCBPrio)來表示每個任務的優(yōu)先級,數(shù)值越小優(yōu)先級越高。當發(fā)生任務調度時,系統(tǒng)通過任務就緒表查找到優(yōu)先級最高的任務后,調用函數(shù)OS_TASK_SW()完成任務切換。

          (3) 數(shù)字化UPS 中斷:設計3 個硬件中斷,一個是AD 采樣中斷,優(yōu)先級最高,采用自適應頻率方式每周期采樣32 個點;另一個是系統(tǒng)時鐘節(jié)拍中斷,優(yōu)先級次之,每10ms中斷一次作為系統(tǒng)時鐘;最后是通信中斷,優(yōu)先級低,當接收到外部數(shù)據(jù)時,便發(fā)生中斷并對接收的數(shù)據(jù)進行處理。

          (4)任務間通信與同步:采用訪問共享數(shù)據(jù)資源的方式實現(xiàn)多任務間的通信,采用信號量進行任務間的同步。為實現(xiàn)任務間的同步,本軟件系統(tǒng)建立了3個信號量:

          數(shù)據(jù)計算信號量OSPWMCntSem,用于任務1和數(shù)據(jù)采集PWM 波計算子程序通信。每完成一次中斷采樣便發(fā)出這個信號量,告訴任務1對 采集數(shù)據(jù)和PWM波進行計算處理。

          圖4 任務調度流程圖。

          圖4 任務調度流程圖。

          通信信號量OSComSem,用于任務3 和通信中斷子程序進行通信。一旦接收到上位機發(fā)過來的信號,中斷子程序就發(fā)出這個信號量,告訴任務4對接收數(shù)據(jù)進行處理。

          鍵盤信號量OSKeySem,用于任務6 和任務7 通信,一旦掃描到有鍵按下則發(fā)出該信號量告訴任務7做鍵盤處理。

          圖 1 數(shù)字化UPS系統(tǒng)總體框圖

          圖 1 數(shù)字化UPS系統(tǒng)總體框圖

          (1)A/D轉換:完成對市電輸入的交流電壓、電流信號、逆變輸出的交流電壓、電流信號、電池電壓和電流信號的采樣,是系統(tǒng)數(shù)字化控制實現(xiàn)以及UPS遠程監(jiān)控功能的基礎。根據(jù)LF2407A A/D轉換電平要求,被采樣信號必須通過信號檢測模塊變換為0~3V直流電平。為提高系統(tǒng)性能,對輸入/輸出電壓、電流進行瞬時值采樣,采樣頻率為10kHz.

          (2) PWM 逆變控制:PWM 逆變控制算法是UPS系統(tǒng)控制的核心算法,它決定了UPS系統(tǒng)輸出性能。

          逆變算法利用LF2407A 強大的數(shù)值運算性能以及高速計算能力實時在線計算出PWM信號脈寬,然后由A事件管理模塊(EVA)的全比較單元輸出4 路帶死區(qū)控制的PWM 信號(PWM1~4),這4 路PWM 信號經(jīng)隔離驅動模塊驅動逆變器。

          (3) 鎖相控制接口:利用LF2407A的事件捕獲端口CAP1 和CAP2,將市電輸入和逆變輸出經(jīng)降壓及波形變換后送入CAP1 和CAP2,由LF2407A 通過軟件鎖相環(huán)算法實現(xiàn)逆變輸出電壓與市電電壓的同頻同相。

          (4) 通信接口:為實現(xiàn)對UPS 的實時監(jiān)控功能,主機需對UPS電源的各模擬參量采樣數(shù)據(jù)及表示工作狀態(tài)的開關量數(shù)據(jù)進行實時高速采集。利用LF2407A的SCI 異步通訊接口,采用RS-485 物理標準協(xié)議,實現(xiàn)UPS與主機的遠程通訊,以便對UPS設備狀態(tài)、各項參數(shù)及故障信息進行查詢。

          (5) 鍵盤操作及液晶顯示:提供人機對話平臺,用戶通過鍵盤操作可設置運行模式、設備通信地址等信息;液晶顯示屏以圖文方式顯示工作狀態(tài)和參數(shù)信息,提供可視化菜單。

          鎖相環(huán)相關文章:鎖相環(huán)原理

          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();