有效地關閉您的控制回路中的MCU為基礎的設計
控制回路的許多基于MCU的設計進行最根本的任務之一。通常,這些設計未能采取的主要特點和現代MCU的外設提供給最充分利用有效地實現閉環控制系統。定時器和中斷控制器通常用在這些系統中,但一些其他功能,如DMA,先進的模擬 - 數字轉換器,以及專用數學函數來實現控制系統時,多次忽視。
本文引用地址:http://www.104case.com/article/201808/386813.htm本文將很快回顧一些高效的基于MCU的閉環控制系統的關鍵要求。為提高效率的常用技術將使用一些例子的MCU來說明。一旦你了解了一些提高效率,你可以更好地尋找,這將優化關閉你的下一個控制環路的設計實現共同的技術。
控制環路的基本知識
控制回路控制動力系統使用的關鍵要素。動態系統可以是任何機械或電氣系統,其具有輸入和輸出之間的關系(通常建模為線性關系)。輸出通常需要以這樣的方式,以留在期望的操作“帶”進行控制。例如,在自動巡航控制的車內是這樣的系統,其中汽車的速度被設定在所需的水平和控制器保持速度恒定即使汽車遇到的小山。控制該速度的算法利用適用的輸入(在加速器中的壓力)的控制回路,測量的結果(速度),并調整,以維持該速度在所需水平的輸入。一個簡單的單輸入單輸出控制系統,具有一控制環的框圖,示出在下面的圖1。
一個簡單的動態控制系統控制回路框圖

圖1:一個簡單的動態控制系統的控制回路的框圖。
另外,在上述程序框圖中輸入到動態系統得到的輸出。的輸出由反饋傳感器測量和測得的輸出與參考(期望)的輸入。如果是有區別的,所使用的系統控制器所產生的誤差來修改系統的輸入,使系統輸出更接近基準輸入。系統控制器需要足夠的智能,以避免振動和可能導致的不正確的管理控制系統中的其他問題。假定動態系統是線性的(其中輸出是正比于輸入)不為限制性,因為你可能會認為因為許多機電系統并操作以線性方式,或者可以很容易地“偏向”內的操作一個更復雜的傳遞函數的線性區域。
用微控制器實現控制環路
這是很容易明白為什么MCU是主力實現控制系統。與感測,計算和控制各種輸入和輸出,所有在非常高的性能率的能力(特別是在高性能的速率相對于機械系統,如電機)MCU是一種天然的控制元件。除了CPU的能力,許多微控制器提供智能外設使關閉您的控制回路簡單,高效。
控制回路通常有動力系統的每次調整之間的時間關系。這種“循環時間”決定了調整的速度有多快可以做。如果循環時間過長在關系到系統動力學(受控系統的時變性質)這將是困難的,如果不是不可能有效地控制該系統的輸出。振蕩與“失控”的錯誤可以累積,使系統在失敗的危險,也許在一個非常戲劇性的性質。在一般情況下,更快的MCU可關閉循環(處理輸出傳感器,確定任何參考誤差,并調整系統輸入),就更好了。
有效的計時,計數因此需要優化關閉控制環路和MCU具有先進的定時外設可以最佳地實現控制回路的關鍵功能。例如,Silicon Labs的EFM32LG360F64G-E-CSP81 MCU有一個定時器/計數器外圍有幾個特點在控制環路的實現是有用的。經常定時和都需要在除了閉環控制器的主循環定時器功能計數。讓我們來看看EFM32LG計數器/定時器外設更詳細(圖2)的方框圖,看看它如何幫助實現圖1所示的控制回路系統中的其他常用功能。
Silicon Labs公司EFM32LG單片機的定時器/計數器框圖

圖2:Silicon Labs公司EFM32LG單片機的定時器/計數器框圖(Silicon Labs公司提供)。
在T / C中的一個有用的特點是,通過在TIMn_CCn銷上圖的左側計數從外部來源轉移的能力。觀察到產生基于動態系統的測得的輸出躍遷傳感器時,這些輸入可以是有幫助的。例如,基于位置測量旋轉測量常常產生對每一圈的過渡。還要注意存在這樣可以用于類似測量的圖的上部中間的正交解碼器塊。計數的數目記錄的,當他們到達存儲在Timern_TOP終端值可以用于觸發中斷立即采取行動或者可以存儲以備將來處理。
定時器/計數器輸出,TIMn_CCn銷的右側圖中,可以使用脈沖寬度調制(PWM)方案共同用于控制輸入到動態系統。這些系統中的時間的信號是有效的涉及用于控制所希望的電壓或電流電平。精確地控制信號周期,信號為高電平時,邊緣過渡點都是至關重要的,并且可以在定時器/計數器的PWM功能,有效地控制。具有三個獨立的PWM輸出也方便了通用電機控制應用,其中三個分離繞組用于改變帶有紡絲電機相關聯的磁場。
智能外設控制
實現快速,高效的閉環反饋的時候經常需要使用的智能外設,從高功耗CPU和程序存儲器塊卸載處理。如果外圍設備可以從CPU獨立地進行操作,這可以讓CPU執行其它更復雜的處理任務或甚至在低功率狀態,以等待,直到處理是必需的。一些先進的微控制器具有可以使用的外圍設備連接在一起,使沒有來自CPU干預要求配置自主操作的特殊的外圍控制系統。例如,瑞薩MCU R5F52108CDFM的RX210 MCU組的成員,有一個事件鏈路控制器(ELC),用于連接和控制外圍設備輸出到外設投入自主操作。在ELC的框圖顯示在下面的圖3。
瑞薩RX210群單片機事件鏈路控制器框圖

圖3:瑞薩RX210群單片機事件鏈路控制器框圖(瑞薩提供)。
內部外圍總線,在圖的左側,用于互連的外圍設備,在右側的圖所示。所有的外設,包括DMA控制器,數據傳送控制器(DTC),和中斷控制器單元(ICU)可以用專門的控制,以自主啟動基于中斷的外設連接,定時器比較的結果,或電平變化。多達59種的事件信號,可以連接到外設啟動轉換,啟動計時器,并開始DMA或DTC傳送或任何其他所需的外圍設備。當已設定作為觸發事件發生時,啟動所選擇的模塊的動作集。
多個操作的鏈可以啟動,這樣復雜的操作,無需CPU干預來完成。例如,一個計時器可以發起一個模擬 - 數字轉換,并存儲在存儲器中的轉換后的值。計數器可以保持的轉換次數的軌道,當計數指示一個完整的數據集可進行處理的CPU可能被中斷。時鐘振蕩器可以被CPU處理過程中,并自動完成切換到更快的模式。通過使用ELC以最充分,許多在公共控制環路所需的感測功能可以非常迅速地完成,有效地使其易于實現快速循環時間,同時保持功率降至最低。
高效的計算
正如我們所看到的,使用智能和自主計數器/定時器和外設可以改善循環時間,降低功耗 - 無論是在控制系統設計的重要方面。通常情況下,計算是需要在每個主控制系統塊來處理檢測時,比較,控制和操作被控制的系統所需要的數據。實際上,計算要求顯著地增加作為控制系統的效率,精度和長的運行壽命已成為重要的系統要求。先進的算法用于實現控制回路現在使用的地方,往往需要增加精度浮點計算比例積分微分算法。如果高級計算中不支持的硬件,控制環路閉合,在所需的頻率變得非常難以實現。
MCU廠家理解需要先進的處理能力,并已包括數字處理能力,即使在低端的MCU,可以加速所需復雜的計算閉環控制設計。高端微控制器通常包括專用硬件來加速所需的最精確控制應用程序的浮點計算。飛思卡爾的Kinetis K60 MK61FN1M0VMD15 MK61FN1M0VM類的MCU采用32位ARM Cortex-M處理器與DSP指令和單精度浮點運算單元,以加速所需的最復雜的控制算法,先進的計算。 DSP的指令包括用于快速處理的較低分辨率的信號擴展進行快速處理的高精度信號,并且單指令多數據(SIMD)指令的單周期多累加(MAC)指令。硬件除法模塊,在短短2至12個周期運行,加快普通縮放操作。
對于甚至更高的性能,一個雙核CPU可以使用,以便處理任務可以并行進行。例如,德州儀器協奏曲微控制器,如F28M35H52,同時具有ARM Cortex-M3的32位CPU和德州儀器的TMS320C28x 32位CPU浮點性能。這款雙核微控制器的框圖如下圖4。
德州儀器的框圖F28M35x協奏曲MCU(點擊查看全尺寸)

圖4:德州儀器F28M35x協奏曲MCU框圖(德州儀器提供)。
基于ARM的MCU,在該圖的上部,可用于管理外設在協奏曲CPU可以被用于處理數據和控制管理系統。請注意,PWM定時器是緊密聯系在一起的協奏曲子系統因此很容易產生被輸入到控制系統所需的復雜波形。這種類型的雙核CPU之間的專業化可能是重要的尋找,當你的應用程序易于分離算法。如果你只是需要更多的處理能力為一個單一的算法或要求雙CPU步調一致運行的可靠性更高,均勻的雙CPU,具有相同的處理子系統,如德州儀器大力神令吉的ARM Cortex-R4 MCU可能是更好的選擇。閉環控制系統用于高可靠性應用程序可以使用的非均相雙CPU執行的內置冗余一種更有效和可靠的設計。
結論
有效地關閉您的控制環在基于MCU的設計不一定是充滿了審判和錯誤的方法尋找最佳的實現。使用現代MCU的所有先進功能正常可以幫助您創建更高效,更快速更系統的方式,更低的功耗和更具成本效益的控制系統解決方案。
評論