您的位置:首頁>設計>正文

基於雙CPU的嵌入式電能品質監測儀設計

大連海事大學輪機工程學院的研究人員朱琳、王曉, 在2017年第5期《電氣技術》雜誌上撰文, 針對我國電力行業面臨的現狀, 提出了一種以DSP和ARM雙CPU為核心, 結合高速同步A/D採樣器、雙口RAM等硬體組成的電能品質監測系統。

詳細闡述了各主要模組的軟硬體設計。 ARM模組中以嵌入式Linux為開發平臺, 以Qt/Embedded為開發工具, 實現對DSP模組的控制, 資料的即時顯示、存儲、網路通信等功能。 經實驗驗證了本監測裝置測量的可行性和準確性。

當今, 伴隨科技的持續發展與進步, 人工智慧技術引領的新一輪科技革命浪潮正深遠影響著各行各業,

自動化儀器儀錶領域也不例外。 其中,傳統的電能品質監測裝置多數是由單片機開發的, 由於資源有限, 使得其運算速度較慢。

針對具有線上即時監測功能電能品質監測裝置的研發就需要摒棄傳統的單片機技術和系統, 通過新的系統化、模組化的載入加以探索和解決。 由此, 本文研發出一種DSP(Digital SignalProcessing)和ARM(Acorn RISC Machine)雙CPU模式的嵌入式結構, 因其具有系統功能強大、人機界面相對友好等特點, 一定程度上滿足了當前自動化儀器儀錶“智慧化、精度化、數位化”的改進要求, 取得了較好的實驗測試成果。

該監測系統主要由ARM(核心控制單元)和DSP(電能品質演算法執行單元)模式嵌入構成, 確保了系統管理控制水準和資料高速運算能力的實現[1-2]。

具體地, 該監測系統通過將Linux作業系統嵌入至ARM9, 並以Qt/Embedded作為圖形化使用者介面研發工具, 滿足了多工調度、即時顯示及存儲資料和網路通信等系統功能。

1系統的硬體設計

系統主要由參數採集模組、AD(Analog-to-Digital)採樣模組、DSP計算模組、ARM管理模組四部分組成。 系統功能框圖如圖1所示。

圖1 系統功能框圖

1.1參數採集模組

參數採集模組負責將電網側的強電信號經過一系列的變換後, 變為六路弱電信號後傳送給AD採樣模組進行採樣。 模組結構詳見圖2所示。

圖2 參數採集模組結構圖

1.2 AD採樣模組

參數採集模組輸出的六路信號的採樣由外擴的AD7656晶片實現。

DSP處理模組對通過資料匯流排傳輸過來的已轉換好資料進行處理。 AD7656晶片性能介紹如表1所示。 圖3為該採樣模組的結構圖。

表1 AD7656晶片性能介紹[3]

本系統採用平行介面模式, 由16條資料匯流排將AD7656與DSP連接起來, 確保控制信號由DSP及時發出。

CONVSTA~C及AD的啟動轉換由DSP發出的PWM脈衝進行控制。 CONVSTA、CONVSTB和CONVSTC三個引腳相連確保6路ADC轉換同時進行。 DSP的片選信號相連, 從而為AD7656分配0X000040000存儲單元。 經AD轉換的資料可通過16位元資料匯流排存儲到DSP分配的記憶體空間裡;REST作為該系統的重定信號輸入, 當上電或重定後對AD發送信號, 使系統回歸初始狀態。

圖3 AD採樣模組結構圖

1.3數位信號處理模組

資料處理模組(即DSP模組)作為對ADC轉換後資料進行即時運算、採集和傳送的載體和工具,至關重要。TMS320F28335型數位訊號處理器是TI公司的一款高性能TMS320C28x系列32位元浮點DSP處理器,具有精度高、外設集成度高、資料以及程式存儲量大、功耗小、成本低等特點,外部擴展RAM(256K*16位)和FLASH(512K*16位),可實現浮點和定點並行運算。因此,該數位訊號處理器非常適用於基於傅立葉轉換(FourierTransform)演算法且需大量資料處理的作業系統中。

1.4 DSP與ARM介面設計

在系統研發過程中,本文採用“DSP+ARM”雙CPU設計雖然較好地實現了資料快速處置和即時顯示的功能,但同時也發現在大量電能品質資料交換過程中,資料傳送速度和準確性對終端資料的即時精確顯示存在潛在影響。為了解決這一問題,設計中在DSP與ARM間接入IDT70261雙口RAM晶片,完成雙CPU間的資料交換。

本晶片包括片選、資料及位址匯流排、讀寫控制線各2套,以及BUSY、SEM和INT等3個左右邏輯交互介面信號線。這樣避免了2個CPU同時讀寫同一位址單元時產生衝突。在使用時,只需選用一種信號線,將其它兩種信號線置高;本設計中採用了中斷仲裁方式。

利用雙口RAM的兩套中斷邏輯,控制兩個CPU產生中斷。在進行資料傳送時,其中一個CPU將放到雙口RAM通用位址單元裡的資料寫入雙口RAM最高奇位址,並使另一CPU進入中斷程式,此時把該通用位址單元中的資料讀出,然後向最高位址寫資料,以清除該中斷行為。這樣可以確保資料的快速回應傳輸,且資料不易丟失[4-5]。

圖4 基於雙口RAM的DSP與ARM通信介面框圖

1.5 ARM管理模組

本監測儀的終端管理系統硬體選用了S3C2440型核心控制器,較好地滿足了系統軟體和應用程式運行時的資源要求、外設介面數量以及功耗低、處理能力強、可靠性好等因素。綜合各方面的考慮,其是一款基於ARM920T核的處理器,同時擴展了記憶體(SDRAM和NAND FLASH)、串口控制晶片(SP3232EEN)、乙太網控制晶片(DM9000EP)、SD卡控制模組、LCD/觸控式螢幕顯示控制模組等硬體資源。從而實現了資料即時顯示、存儲和網路傳輸的硬體支援。

2系統軟體設計

系統軟體主要由DSP和ARM兩部分組成。兩部分的軟體不僅要完成自己獨立的功能,還要相互協調。

2.1 DSP軟體設計

DSP主要完成電能質量數據的採集和計算,通過雙口RAM實現其與ARM的通信,將處理後的資料發送給ARM,同時即時回應ARM的控制命令。系統中選擇CCS3.3作為軟體發展調試環境,利用彙編和C語言混合程式設計實現軟體的開發。主程序流程如圖5所示。

程式中K用來指示AD採樣中一個週期資料是否採樣完畢。採樣完畢後將其置1,開始進行相應的資料計算。反之,則等待迴圈。每次計算完成並將資料存入雙口RAM後,將其清0。程式中對各項電能質量數據的計算都在相應的子函數內部實現,主函數通過調用各子函數實現資料處理及計算。

程式中所涉及的子函數包括,以中斷形式調用的AD採樣子函數;功率計算子函數;電壓電流有效值計算子函數;FFT變換子函數;不平衡度計算子函數;雙口RAM通信子函數和資料存儲子函數等。

圖5 DSP程式流程圖

2.2 ARM軟體設計

ARM軟體模組的構建包括嵌入式Linux作業系統的移植以及Qt/Embedded人機交互應用程式開發。ARM模組軟體架構如圖6所示。

圖6 ARM模組軟體架構

1)嵌入式Linux作業系統

ARM模組軟體的設計是在Linux作業系統的基礎之上完成的。因此,首先要完成Linux作業系統的移植。

嵌入式Linux作業系統具有廣泛的優良特性,具體表現為[6]:可自行編譯內核且資源豐富,大大節省開發時間及工作量;內核功能強大且性能高效穩定,易於剪裁;支援多種硬體平臺及檔案系統;GUI介面系統友好;網路通信功能完備。

2)Qt人機交互應用程式開發

人機交互模組通過Qt/Embedded、嵌入式Linux和C、C++語言確保軟體發展功能的實現。監測儀終端人機交互功能主要是通過Qt實現的。Qt是一個跨平臺的C++圖形化使用者介面(GUI)工具包。其各種類及特有的槽機制和信號,可實現圖形介面的顯示;與此同時,Qt Creator跨平臺整合式開發環境也可大大的提升研發效率。人機界面開發流程如圖7所示。

圖7 人機界面開發流程圖

該裝置中圖形化介面的開發設計使用Qt Creator進行,主要通過調用各類標準部件以滿足介面的設計要求。同時通過Qt中的信號和槽機制完成多視窗之間的切換,從而達到分級功能表顯示功能。此外,Qt中所要解決的一個重要問題是實現對雙口RAM中資料的存取。

ARM對雙口RAM中資料的存取主要通過C語言和在Qt中設置專門的類函數得以實現。通過多執行緒的方案設計,很好的將雙口RAM通信程式和Qt中各種類函數融合在一起。Qt人機交互功能表中所要實現的軟體功能如圖8所示[7]。

圖8 軟體功能結構圖

3監測儀功能測試

該電能品質監測裝置主要由參數採集模組、AD採樣模組、數位信號處理模組以及ARM人機交互模組構成。監測裝置實物圖詳見圖9所示。

圖9 電能品質監測裝置實物圖

文中電能品質監測儀可以實現對基本電量、電壓/頻率偏差、諧波、三相不平衡度、電壓偏差等參數的測量,同時可以實現對各類系統參數及越限值設置、歷史資料查詢和網路通信等功能。圖10電能品質監測儀的功能選擇功能表,通過該人機交互介面的功能選擇可以實現對相應電能品質的測量功能。通過對裝置各種功能的測試,驗證了課題的可操作性。

圖10 電能品質監測儀功能選擇介面

4結論

文中提出了一種以DSP+ARM雙CPU為控制核心的電能品質監測系統設計方法,完成了電能品質監測裝置硬體設計及軟體發展,DSP負責對輸入信號進行運算、處理,ARM則負責人機交互和資料管理功能。利用Qt/Embedded設計出友好的、智慧化的人機界面。

經過試驗證明,該監測儀能夠實現電能品質線上監測、分析,具有測量精度高,操作簡單方便,即時性好,運行穩定等特點,具有非常重要的實用價值。

現代化工業園區電能品質分析與治理措施 孫軼群 新華書店正版暢銷圖書籍 文軒網 ¥39.7 購買

電能品質分析與控制 肖湘寧 新華書店正版暢銷圖書籍 ¥21.8 購買

1.3數位信號處理模組

資料處理模組(即DSP模組)作為對ADC轉換後資料進行即時運算、採集和傳送的載體和工具,至關重要。TMS320F28335型數位訊號處理器是TI公司的一款高性能TMS320C28x系列32位元浮點DSP處理器,具有精度高、外設集成度高、資料以及程式存儲量大、功耗小、成本低等特點,外部擴展RAM(256K*16位)和FLASH(512K*16位),可實現浮點和定點並行運算。因此,該數位訊號處理器非常適用於基於傅立葉轉換(FourierTransform)演算法且需大量資料處理的作業系統中。

1.4 DSP與ARM介面設計

在系統研發過程中,本文採用“DSP+ARM”雙CPU設計雖然較好地實現了資料快速處置和即時顯示的功能,但同時也發現在大量電能品質資料交換過程中,資料傳送速度和準確性對終端資料的即時精確顯示存在潛在影響。為了解決這一問題,設計中在DSP與ARM間接入IDT70261雙口RAM晶片,完成雙CPU間的資料交換。

本晶片包括片選、資料及位址匯流排、讀寫控制線各2套,以及BUSY、SEM和INT等3個左右邏輯交互介面信號線。這樣避免了2個CPU同時讀寫同一位址單元時產生衝突。在使用時,只需選用一種信號線,將其它兩種信號線置高;本設計中採用了中斷仲裁方式。

利用雙口RAM的兩套中斷邏輯,控制兩個CPU產生中斷。在進行資料傳送時,其中一個CPU將放到雙口RAM通用位址單元裡的資料寫入雙口RAM最高奇位址,並使另一CPU進入中斷程式,此時把該通用位址單元中的資料讀出,然後向最高位址寫資料,以清除該中斷行為。這樣可以確保資料的快速回應傳輸,且資料不易丟失[4-5]。

圖4 基於雙口RAM的DSP與ARM通信介面框圖

1.5 ARM管理模組

本監測儀的終端管理系統硬體選用了S3C2440型核心控制器,較好地滿足了系統軟體和應用程式運行時的資源要求、外設介面數量以及功耗低、處理能力強、可靠性好等因素。綜合各方面的考慮,其是一款基於ARM920T核的處理器,同時擴展了記憶體(SDRAM和NAND FLASH)、串口控制晶片(SP3232EEN)、乙太網控制晶片(DM9000EP)、SD卡控制模組、LCD/觸控式螢幕顯示控制模組等硬體資源。從而實現了資料即時顯示、存儲和網路傳輸的硬體支援。

2系統軟體設計

系統軟體主要由DSP和ARM兩部分組成。兩部分的軟體不僅要完成自己獨立的功能,還要相互協調。

2.1 DSP軟體設計

DSP主要完成電能質量數據的採集和計算,通過雙口RAM實現其與ARM的通信,將處理後的資料發送給ARM,同時即時回應ARM的控制命令。系統中選擇CCS3.3作為軟體發展調試環境,利用彙編和C語言混合程式設計實現軟體的開發。主程序流程如圖5所示。

程式中K用來指示AD採樣中一個週期資料是否採樣完畢。採樣完畢後將其置1,開始進行相應的資料計算。反之,則等待迴圈。每次計算完成並將資料存入雙口RAM後,將其清0。程式中對各項電能質量數據的計算都在相應的子函數內部實現,主函數通過調用各子函數實現資料處理及計算。

程式中所涉及的子函數包括,以中斷形式調用的AD採樣子函數;功率計算子函數;電壓電流有效值計算子函數;FFT變換子函數;不平衡度計算子函數;雙口RAM通信子函數和資料存儲子函數等。

圖5 DSP程式流程圖

2.2 ARM軟體設計

ARM軟體模組的構建包括嵌入式Linux作業系統的移植以及Qt/Embedded人機交互應用程式開發。ARM模組軟體架構如圖6所示。

圖6 ARM模組軟體架構

1)嵌入式Linux作業系統

ARM模組軟體的設計是在Linux作業系統的基礎之上完成的。因此,首先要完成Linux作業系統的移植。

嵌入式Linux作業系統具有廣泛的優良特性,具體表現為[6]:可自行編譯內核且資源豐富,大大節省開發時間及工作量;內核功能強大且性能高效穩定,易於剪裁;支援多種硬體平臺及檔案系統;GUI介面系統友好;網路通信功能完備。

2)Qt人機交互應用程式開發

人機交互模組通過Qt/Embedded、嵌入式Linux和C、C++語言確保軟體發展功能的實現。監測儀終端人機交互功能主要是通過Qt實現的。Qt是一個跨平臺的C++圖形化使用者介面(GUI)工具包。其各種類及特有的槽機制和信號,可實現圖形介面的顯示;與此同時,Qt Creator跨平臺整合式開發環境也可大大的提升研發效率。人機界面開發流程如圖7所示。

圖7 人機界面開發流程圖

該裝置中圖形化介面的開發設計使用Qt Creator進行,主要通過調用各類標準部件以滿足介面的設計要求。同時通過Qt中的信號和槽機制完成多視窗之間的切換,從而達到分級功能表顯示功能。此外,Qt中所要解決的一個重要問題是實現對雙口RAM中資料的存取。

ARM對雙口RAM中資料的存取主要通過C語言和在Qt中設置專門的類函數得以實現。通過多執行緒的方案設計,很好的將雙口RAM通信程式和Qt中各種類函數融合在一起。Qt人機交互功能表中所要實現的軟體功能如圖8所示[7]。

圖8 軟體功能結構圖

3監測儀功能測試

該電能品質監測裝置主要由參數採集模組、AD採樣模組、數位信號處理模組以及ARM人機交互模組構成。監測裝置實物圖詳見圖9所示。

圖9 電能品質監測裝置實物圖

文中電能品質監測儀可以實現對基本電量、電壓/頻率偏差、諧波、三相不平衡度、電壓偏差等參數的測量,同時可以實現對各類系統參數及越限值設置、歷史資料查詢和網路通信等功能。圖10電能品質監測儀的功能選擇功能表,通過該人機交互介面的功能選擇可以實現對相應電能品質的測量功能。通過對裝置各種功能的測試,驗證了課題的可操作性。

圖10 電能品質監測儀功能選擇介面

4結論

文中提出了一種以DSP+ARM雙CPU為控制核心的電能品質監測系統設計方法,完成了電能品質監測裝置硬體設計及軟體發展,DSP負責對輸入信號進行運算、處理,ARM則負責人機交互和資料管理功能。利用Qt/Embedded設計出友好的、智慧化的人機界面。

經過試驗證明,該監測儀能夠實現電能品質線上監測、分析,具有測量精度高,操作簡單方便,即時性好,運行穩定等特點,具有非常重要的實用價值。

現代化工業園區電能品質分析與治理措施 孫軼群 新華書店正版暢銷圖書籍 文軒網 ¥39.7 購買

電能品質分析與控制 肖湘寧 新華書店正版暢銷圖書籍 ¥21.8 購買

Next Article
喜欢就按个赞吧!!!
点击关闭提示