摘要:直接轉矩控制目前已經應用到同步機和異步機的各種控制系統中,由于其采用Bang?Bang控制,長控制周期將導致大電流和大的轉矩脈動這兩個突出問題,要使控制性能更為優越必然對控制周期提出更高的要求。提高控制平臺性能是解決這些問題的有效途徑之一。TI公司的2000系列DSP是電機控制領域常用芯片,針對電機控制設計的事件管理器具有突出優點。3X系列DSP則是性價比很好的通用芯片,浮點運算,數據處理速度快。為此采用雙DSP系統結構,從電機控制領域特點出發,利用TMS320LF2407A控制上的強大功能而專注于控制方面的工作;TMS320VC33浮點運算能力強,則進行數據的分析和處理。使用雙口RAMCY7C025實現雙機之間的高速數據交流和通信,使得不同MDSP優勢充分體現,協同工作,大大提高控制平臺的性能。 關鍵詞:電機控制;直接轉矩控制;雙DSP;雙端口RAM;通信
0??? 引言 ??? 直接轉矩控制[1]是目前廣為研究的電機控制理論之一,已在異步機上取得了成功,而在同步機方面的應用也已有了一定發展[2]。由于該理論直接對轉矩進行控制,故瞬態性能得到了顯著的改善。但是,由于其采用的是Bang-Bang控制,控制周期過長會使電流過大;同時大周期會使轉矩脈動加大。為了解決這個問題可以從控制策略上加以改進,比如采用SVM-DTC[3]來取代傳統DTC方案;也可以在控制平臺上加以考慮,提高處理器速度,縮短控制周期。以單個DSP為核心的控制平臺(常見的芯片如TI公司的2000系列),由于既要完成復雜的算法,還要執行數據采集、控制信號輸出、系統保護以及人機交互等一系列操作,無法有效地縮短控制周期。在綜合考慮了各種數字信號處理器的性能之后,決定采用雙DSP并行工作的體系結構;并同時考慮到該控制系統的特點,即在每個控制周期內兩個DSP之間交換的信息很少,不同于諸如圖像采集系統[4]那樣,需要大流量的數據交換。由此采取了一系列特殊的設計思想。首先,在芯片的選型上兼顧了各自不同的特點,即專用于電機控制領域的芯片TMS320LF2407A專注于控制;高速通用數據處理芯片TMS320VC33則著眼于復雜算法的實現,從而充分利用了各自的特點。其次,針對電機控制這一特定領域,需要采集的數據相對較少,同時反饋的也只是計算結果,即PWM波發送策略,并無大量中間結果,因此,需要考慮的重點是控制方法的實現,和數據采集的實現必須占用盡可能少的資源。同時由于數據量較少,可以用較小的代價來實現數據的冗余,使得數據處理時更加靈活和方便,DSP之間并不一定保持同步工作狀態。為了實現兩個DSP之間的數據交換和通信,選擇了雙口RAM作為兩者之間的媒介。并從硬件和軟件上相互配合,避免存儲空間爭用[5]的同時,使得數據存儲過程盡量少耗費各種資源。 1??? 硬件系統構成 ??? TMS320LF2407A最突出的特點在于其事件管理器模塊:共有兩個事件管理器EVA及EVB,提供了8個16位脈寬調制(PWM)通道。這些都是針對電機控制而設計的,在PWM波的產生上相當方便可靠;可編程的PWM死區控制可以防止上下橋臂同時輸出觸發脈沖而導致直通。同時每個模塊還提供了兩個外部引腳PDPINTA和PDPINTB,當該引腳上出現低電平時事件管理器模塊將快速關閉相應的PWM通道,起到保護作用。片內模數轉換模塊為數據采集提供了高性能的A/D轉換器,最小轉換時間只有500ns。由于轉換時間是整個控制周期的組成部分之一,快速A/D對于縮短控制周期是非常有利的。 ??? TMS320C3X系列DSP芯片是一種性能價格比很好的浮點處理芯片,具有很高的數據處理速度。片內部分擁有34K×32位的RAM,在程序運行期間,所有的數據都位于其中,從而能夠充分發揮哈佛總線結構所帶來的數據吞吐量大、運算快的優點。在算法實現上,由于采用了浮點計算格式,將使計算精度得到提高;采用編程語言C會使程序編寫效率大大改善,這對于需要用復雜算法實現的控制策略來說是很重要的。 ??? 雙口RAM的特點在于具有兩組相互獨立的地址線、數據線和控制線,片內包含的控制邏輯解決了三個重要的問題:處理器之間的信號關系(中斷邏輯);兩個CPU正在使用同一地址時的時間關系(仲裁邏輯)和把一塊存儲器臨時分配到某一邊的硬件支持(旗語邏輯),從而保證雙機之間數據、信號交流的正確進行。 ??? 仲裁邏輯(忙邏輯)??? 每塊CY7C025允許兩個CPU同時讀取任何存儲單元(包括同時讀同一地址單元),但是不允許同時寫或者一讀一寫同一地址單元,否則就會發生錯誤。雙口RAM中已經有相應的仲裁邏輯電路來解決這一問題:先行穩定的地址端口通過仲裁邏輯電路優先讀寫,同時內部電路使另一個端口的BUSY信號有效,并在內部禁止對方訪問,直到本端口的操作結束。BUSY信號可以作為CPURDY信號的來源,從而使得CPU處于等待狀態。 ??? 當雙口RAM單片使用的時候,問題相對簡單,但是,在現代數字系統中,由于數據總線的寬度往往可以達到32位甚至更寬,這就需要多片雙口RAM來進行位擴展。此時如果出現同時訪問,將有多塊雙口RAM處于工作狀態,如果依然象單片工作時那樣,每塊雙口RAM都使用自己的仲裁邏輯,則很可能出現一種情況,即第一片仲裁使得BUSYL變低,而第二片仲裁使BUSYR變低,這樣兩邊的CPU都會處于等待狀態。為了避免這種情況的發生(BUSY信號死鎖),可以使用主從模式,使得當多塊芯片一起工作時,只使用主片的仲裁邏輯,并迫使從片跟隨主片。主從模式的電路連接如圖1所示。 圖1??? 主從連接電路 ??? 主芯片的BUSY信號接上拉電阻作為輸出,從芯片的BUSY信號作為寫禁止輸入,當主芯片處于BUSY狀態時,從芯片接收這個狀態,同樣處于忙狀態,從而避免了死鎖的發生。 ??? 中斷邏輯??? 另一個重要的內部電路結構,它允許雙CPU通過端口直接進行通信。CY7C025最高位的存儲單元1FFF作為右邊端口的中斷信箱, ??? 次高位存儲單元1FFE作為左邊端口的中斷信箱。各CPU可以讀取雙方的中斷信箱,但只能寫對方的中斷信箱。當一端寫入對方的中斷信箱時,對方就會產生一個中斷信號;讀自己的中斷信箱則清除自己的中斷信號,讀對方的中斷信箱不會清除中斷信號。 ??? 旗語通信邏輯??? 可以使雙口RAM暫時指定一塊存儲區,只供一端的CPU使用,稱之為獨占模式。CY7C025配置了獨立于RAM陣列的8個旗語鎖存器,用于標志雙口RAM是否處于獨占模式。獨占模式也可以用來避免地址仲裁問題,因為,它是一種使兩邊不同時使用同一地址的方法,通常也叫做軟件仲裁。 ??? 控制平臺結構框圖如圖2所示。 圖2??? 雙DSP系統結構框圖 ??? 電機由IPM來驅動,霍爾元件檢測相關物理量,通過信號調理電路給A/D轉換器,轉換結果由LF2407A存儲于雙口RAM中,并由VC33讀取用于計算。調理的同時保護電路也進行相應的檢測,在意外狀況發生時隨時切斷觸發信號。VC33將獲取的數據進行分析和計算,所有的數據處理都由VC33完成,只將計算結果反饋給LF2407A,并由此產生相應的控制信號,通過接口電路來控制IPM工作。同時預留了D/A及串口輸出等相關外圍電路,用于實現顯示、檢測、與其它系統通信等各項功能。LF2407A和VC33優勢互補,并行工作,控制周期的長短主要取決于算法實現時間。原有的控制軟件(以C32為控制平臺)需要100μs左右,在采用了新的控制平臺后,整個控制周期減小到20μs左右。 2??? 雙端口RAM存儲爭用解決方案 ??? 在雙機的數據交流過程中,存在存儲空間爭用問題,常見的解決方案有如下幾種。 ??? ——硬件方案??? 最簡單的方法就是上面提到的使用雙口RAM內部的仲裁邏輯,要求兩邊的CPU都具有RDY引腳,從而插入相應的等待周期。對于8098單片機,DSP都具有這樣的資源,而且只需要硬件支持,相對簡單。如果不具備RDY引腳,如8031單片機,則不能采用此種方法。 ??? ——中斷方案??? 需要硬件和軟件的同時支持。將雙口RAM的左右中斷信號輸出引腳和CPU的外部中斷輸入引腳相連,并編寫相應的中斷子程序。 ??? ——旗語方案??? 同樣需要硬件和軟件的同時支持,我們也稱之為軟件仲裁。其步驟為申請獨占區域、判斷申請是否成功、釋放獨占區域。由于兩邊不同時使用同一地址,所以也可以避免爭用的發生。 ??? 本系統設計時綜合了各種情況最后選用了硬件方案。這是因為使用中斷方案軟件編寫復雜,頻繁中斷跳轉在算法和控制都較復雜的情況下,對于軟件的可靠性和穩定性是不利的;采用旗語方案則控制相對復雜一些;硬件方案具有簡單可靠的特點,存儲空間的爭用完全由硬件解決,即當發生存儲空間爭用的時候,決定先行穩定的端口優先進行訪問,另一端口則插入等待周期。由于DSP的快速性,不同于以往的單片機將產生很長的等待周期。針對本系統考慮,即使是最壞的情況:每個控制周期內傳遞數據8個,LF2407A一次讀/寫周期50ns記,共需要0.4μs。當然這完全由硬件來實現,若考慮軟件上共同配合,則可以更有效地減少等待時間。而且0.4μs和20μs的控制周期相比,所占的比重非常小,并不會給系統性能帶來顯著影響,系統可靠性和穩定性也能夠得到保證。這也正是本系統的特點所在。 3??? TMS320C2407A/TMS320VC33與CY7C025之間通信的實現 ??? LF2407A的數據總線寬度和地址總線寬度都是16位,單片CY7C025就足夠了。VC33的數據總線寬度是32位,可以采用兩片CY7C025以主從模式進行寬度擴展(見圖3),這樣每次VC33讀取數據時就能一次讀入兩個LF2407A的采樣數據。也可以采用單片CY7C025,雖然沒有完全利用VC33的數據寬度,但是,從電路設計上來講相對簡潔。由于本系統雙口RAM的作用主要是起到數據傳遞的作用,不需要保存大量的中間結果以及已經使用過的數據,因此,需要的存儲空間不是很大,單片雙口RAM就已經足夠。具體的接口電路見圖3,片選等控制信號由譯碼電路產生。 圖3??? 接口電路實現
??? 地址空間分配綜合了不同DSP的空間資源分配要求,具體見表1。 表1??? 地址空間分配表
4??? 軟件功能實現 ??? 雙DSP協同工作的關鍵是相互通信和數據交流上的密切配合,可通過硬件仲裁電路來完成這一任務。但是如果僅僅用硬件完成,如上分析,畢竟等待時間還要0.4μs左右。如果輔以軟件配合,則可以有效地減少等待產生的情況。 ??? 首先,沖突可能發生在同時寫同一個存儲單元。在數據寫的時候采用如下措施可以避免這種情況的發生:如圖4所示,將讀/寫的存儲空間獨立開來,顯然LF2407A和VC33在寫的時候就不可能產生沖突,避免了等待的發生。 圖4??? 讀/寫存儲空間分開 ??? 其次,沖突可能發生在一讀一寫同一存儲單元的情況下。以LF2407A寫數據,VC33讀數據為例,上面分析的產生0.4μs等待時間的情況是基于如下假設:將8個數據依順序存儲于同一地址單元。即LF2407A存第一個數據時發生沖突,VC33產生等待時間50ns,等待結束VC33讀數據,此后LF2407A將第二個數據覆蓋前一個數據存儲,依次類推得出的結果就是8×50ns=400ns。事實是我們有足夠的地址空間用來存儲每批數據,將8個數據按順序存放在不同的地址空間,此時的情況如下:LF2407A存第一個數據時發生沖突,VC33產生等待時間50ns,等待結束VC33讀數據,與此同時LF2407A也開始寫第二個數據于下一個存儲單元中。兩者同時進行,我們只要保證VC33讀完的時候,LF2407A第二個數據已經寫完,則不會有沖突發生。針對本例,由于兩者時間不同(LF2407A為50ns,VC33為13.3ns),VC33讀得較快,只要在軟件編寫上增加40ns左右的循環,就能保證如上的要求。當讀/寫反過來的時候,則不存在這樣的情況而能順利配合。這樣,最終的結果是只增加50ns的等待周期,對于本系統完全可以接受。 ??? 由于兩個DSP并不同步工作,所以,LF2407A可以采樣盡可能多的數據并保存,VC33只選用最新的數據用于計算,這樣就能保證數據的冗余。程序流程如圖5所示。 (a)LF2407A流程圖 (b)VC33流程圖 圖5??? 利用雙口RAM進行雙機通信流程圖 5??? 結語 ??? 雙DSP控制系統綜合利用了TMS320LF2407A和TMS320VC33芯片的優勢和特長,兩者在控制和計算上分工明確,并行工作。利用雙口RAM實現數據和信息的交流的時候,針對電機控制系統采樣數據相對較少的特點,從硬件和軟件上相互配合,在解決存儲空間爭用的同時,很好地解決了等待時間等資源的浪費,也避免了數據交換時利用中斷造成的軟件不穩定。實現了兩者之間的協調工作,大大縮短了控制周期,提高了控制平臺的性能。對于低電感同步電機直接轉矩控制時,由于控制周期過長而引起電流上升過大的問題能很好地加以解決,同時也使轉矩脈動明顯減小。 |
雙DSP電機控制數字平臺設計
相關推薦
如何使用外部模擬電壓控制數字電位器
本應用筆記描述了使用外部模擬電壓改變數字電位器阻值的簡易方法。使用Microchip的PIC12F683型微控制器將模擬電壓轉換至控制數字電位器的I2C數據流。
2013-01-27 15:38:53
6576


1小時搭建雙FOC電機控制平臺
平臺,實現雙電機同時穩定啟動并運行。圖1: 國民技術雙FOC電機平臺搭建步驟第一步:搭建工作環境國民技術N32G455雙FOC電機控制評估套件由控制板和雙FOC電機驅動板(單電阻/雙電阻)組成,用于系列
2020-04-13 11:56:52
dsp芯片電機控制方面求科普
新手求教dsp問題,現在電機控制(調速)的dsp芯片有哪些,我知道有2812,2047,28335,看資料28335好些,我想知道哪款芯片最常用或者以后的趨勢,跟其他控制芯片相比有什么優缺點,電機控制領域dsp占什么地位。
2014-08-02 09:51:50
雙電機驅動套件201210KIT_DUAL MOTOR
,轉換時間約1us2、XE164集成DSP指令,支持復雜運算最高主頻80MHz集成3個電機控制單元雙獨立A/D單元,采樣時間小于200ns3、功率板逆變器A: 支持900-1800W輸出逆變器B :支持
2018-12-04 09:50:56
數字電源實戰系列:基于DSP的數字電源設計實例教程合輯
,基于電源,電機控制PID視頻課程等。使用FPGA和DSP進行高精度數字電源數據采集系統設計本系統主要包括調理電路模塊、數據采集模塊、FPGA控制模塊、DSP(TMS320LF2407)處理輸出模塊、盯AG
2020-07-08 15:22:09
電機驅動控制平臺中的滑膜算法與魯棒控制
實驗箱平臺以其簡單明了的裝置和實驗,給學生一個對電機控制的直觀接觸和認識,增加學習電機控制的興趣。結合本公司研發的cSPACE控制卡,電機驅動實驗箱平臺涉及到TI TMS320F28335 DSP
2018-08-18 08:41:59
HAL庫是如何控制數字舵機的
HAL庫方式控制數字舵機介紹數字舵機一般比較貴,數字舵機與模擬舵機的區別是前者在得到相應的脈沖后,會很清脆的到達固定的角度,不會產生異響;而模擬舵機則會在到達固定角度后抖動。控制方法數字舵機大多是
2021-08-05 07:30:54
OM13068UL,基于MCU的低壓電機控制平臺,可以控制BLDC,BLAC,步進和雙刷直流電機
OM13068UL,LPCXpresso電機控制套件(BLDC)使您可以立即開始進行電機控制原型設計。它是基于MCU的低壓電機控制平臺。通過這種通用平臺,可以控制BLDC,BLAC,步進和雙刷直流電機
2019-11-11 09:14:37
OM13068,LPCXpresso電機控制套件,基于MCU的低壓電機控制平臺
OM13068,LPCXpresso電機控制套件(BLDC)使您可以立即開始進行電機控制原型設計。它是基于MCU的低壓電機控制平臺。通過這種通用平臺,可以控制BLDC,BLAC,步進和雙刷直流電機
2019-11-08 06:07:46
評論