屈寶麗
(西安交通工程學院,陜西西安 710300)
眾所周知,智能機器人正在成為人們日常生活中廣泛而至關重要的部分,特別是在汽車的制造行業(yè)中,機器人機械手被廣泛用于各種應用中,例如材料處理、電弧、點焊、噴涂和零件裝配等[1]。對人類而言,幾乎任何重復、困難或危險的任務,都會涉及某種機器人機械。為了使機器人實現(xiàn)快速和準確的運動,采用高性能技術控制的伺服電機,例如磁場定向控制(Field Oriented Control,F(xiàn)OC),雖然磁場定向控制由于效率高而廣泛應用于工業(yè)電機控制,但其涉及復雜的數(shù)學問題,因此物理實現(xiàn)具有很大的挑戰(zhàn)性[2-3]。
直接轉矩控制(Direct Torque Control,DTC)是一種高性能的電動機控制方法,它具有結構簡單、計算復雜度低、響應時間快、動態(tài)性能好等優(yōu)點。與磁場定向控制相比,DTC 具有較大的優(yōu)勢,例如開關頻率可變以及磁通和轉矩信號上存在高頻紋波[4-5]。
文中提出了一種基于經(jīng)典DTC 技術的伺服控制器模型。所使用的電子設備是ESP32 單片機,它是一種32 位低成本嵌入式處理器。對于DTC 的完整編碼,使用了Micropython 編程語言,實驗結果驗證了設計的有效性,實現(xiàn)一個開源的、用戶友好的永磁同步電機控制器。
直接轉矩控制(DTC)是一種與FOC 不同的電動機控制策略,用于控制感應電動機。直接轉矩控制的主要思想是利用磁滯控制器估計定子磁鏈和電磁轉矩的空間矢量,并分別獨立地控制其大小。磁滯控制器的輸出直接應用于預定義的表格,以選擇電壓源逆變器(VSI)的最佳電壓矢量。利用直接轉矩控制技術,轉矩和磁通矢量就可以直接控制并保持在兩個磁滯帶內。
在DTC 中,不需要PI 或電流控制器。同樣,由于直接轉矩控制在定子坐標系中[8-10],因此不需要進行坐標變換。此外,由于轉矩和磁通的直接控制特性,因此不需要PWM 調制器。由于這些原因,與FOC 相比,提出方法的執(zhí)行時間更短,動態(tài)轉矩響應更高。經(jīng)典DTC 策略的框圖如圖1 所示。
圖1 經(jīng)典DTC策略框圖
DTC 算法非常簡單,該過程從感知三相電機的兩線電流(ia,ib)開始,將定子三相參考系(a、b、c)轉換為兩相參考系(α,β)為:
直流鏈路電壓(Vcd)也被測量和轉換到兩相參考系;將最后一個矢量應用到VSI(Sa,Sb,Sc)上,得到兩相電壓基準分量為:
為了估計定子磁通矢量(ψs),用定子電阻、電壓和電流(Rs,Vs,Is)表示,即:
但是,由于DTC 策略必須以數(shù)字方式實施,因此該表達式必須表述為離散操作。因此,將積分更改為累加和,并使用定子電壓和電流兩相參考分量,可以將其改寫為:
其中,n為表示當前離散樣本的符號,n+1 是下一個離散樣本,Ts表示采樣時間,其值基于單片機速度和算法執(zhí)行時間等因素而定。
此時,利用式(4)、式(5)中計算出的磁通分量,定子磁通矢量的總大小為:
另外,磁通矢量的角度可以用以下表達式計算:
磁通矢量角度非常重要,因為它有助于確定磁通矢量位于哪個扇區(qū)。采用兩相電流參考系和磁通參考系和電機極對作為電機轉矩的估計,即:
一旦估計了轉矩和磁通,將它們與各自的參考值進行比較,得到轉矩誤差和磁通誤差,這些誤差值將作為磁滯比較器的輸入[11-12]。
在DTC 中,磁滯比較器被用作等效于FOC 中使用的PI 控制器,其功能是將轉矩和磁通誤差的大小限制在兩個極限之間。狹窄的磁滯帶會產生平滑的正弦電流和轉矩波形。磁滯比較器必須具有適當?shù)南拗?,以取得良好的直接轉矩控制性能。
通量控制器輸出具有兩個可能的值:0 或1,這取決于磁通誤差是在下限還是在上限。轉矩控制器輸出具有3 個可能的值:-1、1 或0,這取決于轉矩誤差是在下限、上限或兩者之間。兩個磁滯控制器如圖2 所示,兩個控制器的輸出值以及磁通矢量的空間位置一起,用于從矢量表中為VSI 選擇最佳電壓矢量。
圖2 磁滯控制器
磁通矢量旋轉空間分為6 個等距的扇區(qū),其中包含6 個活動矢量(V1至V6)和兩個空矢量(V0和V7)。圖3 顯示了電壓矢量在各個扇區(qū)的分布情況。為了選擇適用于VSI 的最佳矢量,使用了磁滯輸出(φ,τ)。
圖3 磁通矢量空間的有功功率電壓矢量和扇區(qū)
通過選擇適當?shù)挠泄﹄妷菏噶?,并在各自的磁滯范圍內調節(jié)其大小,可以直接控制轉矩和磁通。當一個空向量應用到VSI 時,它充當從一個切換狀態(tài)到下一個切換狀態(tài)的軟過渡。此外,它們還可以防止由于電源開關的關斷時間延遲導致的直流母線短路。
為了了解電壓矢量對磁通或轉矩矢量的影響,給出了一個例子。在圖3 中,磁通矢量φ位于第1 扇區(qū),目前正逆時針旋轉,對轉矩和通量影響較大的向量分別為V2、V3、V5和V6。施加V2會增加轉矩和通量,而V5會減小。相反,如果應用V3,則會增加轉矩,但會減少磁通量。同樣地,如果采用V6,則會增加磁通并減小轉矩。施加V1或V4對通量向量的影響最大。如果應用任何一個零向量,則將緩慢地減少兩個向量。因此,對于此示例,如果位于第1 扇區(qū),φ=1,τ=1,則將應用向量V2。一旦選擇了最佳矢量,它直接應用到VSI 進行轉矩和磁通校正。
DTC 伺服驅動是為工業(yè)伺服控制量身定制的模塊化試驗臺,主要思想是每個模塊都可以被另一個具有不同類型硬件的模塊所替代[13-14]。例如,該設計中的電流傳感器模塊使用電感傳感器,但可以輕松地由霍爾效應傳感器模塊或分流電阻器模塊替代。此外,目前使用的32 位單片機的處理模塊將來可能會被一種不同類型的嵌入式系統(tǒng)所取代,甚至DTC算法也有一個開源的體系結構,因此可以修改或增強主要模塊,甚至可以輕松添加新功能,其主要原因是能夠通過實驗測試和可視化這些變化對運動性能的影響。
DTC 過程的最重要階段之一是電流傳感。由于磁通量和轉矩估算是基于電流值的,因此必須有一個精確的電流傳感器。首先,測量兩條電機線的電流信號,并通過添加偏置電壓將其轉換為直流信號。其次,對信號進行放大和濾波,以便使用模數(shù)轉換器(ADC)將其轉換為數(shù)字信號??够殳B濾波器用于有效截止高于感興趣頻率的一半以上的頻率。
項目使用的是MURATA 56300C 感應電流傳感器。如圖4 所示,使用運算放大器對電流進行感應,分別進行正偏移和放大。為了計算電壓的兩相參考分量,必須監(jiān)測直流電源母線以防電壓下降。對于直流電壓傳感(圖5),使用了一個電阻分頻電路,并使用JFET 輸入運算放大器對其進行放大。由于該電壓始終為正,因此無需偏移,經(jīng)過縮放、放大和濾波的信號可以轉換為數(shù)字信號。
圖4 電流傳感和信號調節(jié)的電路
圖5 VDC傳感和信號調理電路
三相電壓會轉換為直流信號,以便可以再次轉換為電動機的控制交流信號。整流橋和VSI 采用工業(yè)級功率模塊,如圖6 所示。直流濾波階段采用兩個1 000 μF 的電解電容器并聯(lián)。
圖6 伺服驅動器系統(tǒng)電源電路
用于實現(xiàn)DTC 技術的處理器是ESPRESSIF ESP32-WROVER-B 32 位單片機,其運行頻率為240 MHz。ESP32 是一款低成本的設備,具有許多強大的功能,是物聯(lián)網(wǎng)應用的絕佳開發(fā)板。ESP32 可以在各種環(huán)境和編程語言中進行編程,例如Arduino IDE,Espressif-IDF,Lua,Micropython 和C/C++。
在項目中,使用Micropython 對DTC 技術進行了設計和實現(xiàn),Micropython 是針對單片機和嵌入式系統(tǒng)設計的Python3 編程語言的再實現(xiàn)。在DTC 原型中,使用Micropython 的主要原因是,Python 是目前使用最廣泛、簡單且易于學習的編程語言之一,非常適合于計算分析和設計。隨著Micropython 的出現(xiàn),對單片機和嵌入式設備進行編程變得很容易。
圖1 中所示的DTC 方案是在Micropython 和ESP32 中實現(xiàn)的,使用了諸如ADC、DAC 和定時器等外設。圖7 為DTC 算法的工作流程。DTC 算法是在Micropython 中斷服務例程中編程的,每250 μs 由定時器觸發(fā)一次。一旦啟動,電流和電壓模擬信號被轉換為數(shù)字值,這些值用于估計磁通分量、磁通和轉矩值,然后與參考值進行比較,以選擇VSI 最佳矢量。這些信號中的任何一個都可以用內部DAC 在外部示波器中顯示出來。
圖7 DTC算法流程
實驗測試采用標準1 kW 永磁同步電機伺服進行,主要參數(shù)如下:Rs=15.57 Ω;額定電壓U=130 V;額定電流I=2.5 A;額定轉矩T=2.7 Nm,額定轉速ω=5 000 r/M。
為了驗證DTC 伺服驅動器的性能,進行了一些測試,主要集中在磁通、轉矩和電流信號上。如果輸出信號與模擬信號相似,則表明該算法已正確實現(xiàn)。另外,還測量了轉矩輸出,以確認其盡可能接近轉矩參考值,大多數(shù)測試都是通過觀察磁滯帶對輸出信號的影響來進行的。
磁滯轉矩帶的寬度對DTC 性能也有相當大的影響,主要影響逆變器的開關頻率。盡管它也會影響電流信號中的總諧波失真(THD),但這種影響是由于兩個磁滯帶所致。首先,開關頻率定義為:
其中,Ns是每個周期的換向數(shù),Tf是基本信號的周期。為了觀察對開關頻率的影響,改變了兩個磁滯帶,即使兩個磁滯帶都影響開關頻率,但轉矩帶的影響更大。電流信號的總諧波失真定義為:
兩個磁滯帶都發(fā)生變化,但是在這種情況下,通量帶對電流信號失真的影響更大,如圖8 所示。
圖8 總諧波失真與磁通和轉矩的關系
為了驗證伺服控制器的轉矩性能,使用10 N·m旋轉轉矩傳感器進行了測量。在這些測試中,重要的是驗證轉矩輸出是否與轉矩參考值相對應,以及紋波含量是否相對較低。再次改變磁滯帶,以觀察對轉矩信號的影響。由于實施了不帶增強功能的原始DTC 方案,因此預期紋波含量相對較高。當磁通帶設為參考值(0.8 Wb)的2%,轉矩帶設為參考值的1%時,可獲得具有最低波動的最佳轉矩性能。轉矩輸出信號如圖9 所示。
圖9 轉矩輸出信號
驗證伺服驅動器中的轉矩響應非常重要,因為確保轉矩和方向的變化將由驅動器執(zhí)行。但是,物理轉矩傳感器的使用通常很昂貴,并且需要額外的安裝和軟件。此外,轉矩傳感器具有特定范圍,如果需要更大范圍,則成本變得過高。在未來的項目中,可以使用虛擬儀器來監(jiān)視轉矩和磁通量信號,這樣可以避免物理傳感器的局限性。
文中提出了基于DTC 技術的永磁同步電動機驅動器的設計方案。該電機控制算法使用Micropython編碼,可在ESP32 單片機上實現(xiàn)。實驗和仿真結果驗證了該設計的有效性,并表明在低成本的通用處理器上使用DTC 可以實現(xiàn)良好的轉矩性能。該設計的主要優(yōu)點是它的簡單性,因為不需要對原始DTC結構進行任何修改。用Micropython 編寫的代碼易于理解和調整,以適應不同的測試參數(shù),例如修改磁滯帶以觀察電流、磁通和轉矩輸出信號的質量,具有較強的實用價值。