在機電一體化控制系統中,直流電機常用于控制系統的執行器,是電機控制的重要部分,能按照處理器指令驅動電機運轉實現電機控制。目前直流電機PWM(pulse width modulation,脈寬調制)驅動控制方式應用最為廣泛。
2 直流電動機的PWM控制原理
直流電動機具有良好的線性調速特性,控制功能簡單,效率高及動態特性優異,因此是大多數調速控制電動機的最佳選擇。一般直流電機的控制信號包括脈寬調制(PWM)、方向(Dir)和剎車(Brake)信號。而PWM脈寬調制可視為速度信號,通過改變PWM信號的占空比來控制電動機電壓,方向信號控制電動機轉向,剎車信號控制電動機啟停。
由圖1看出,PWM調速時,改變占空比有三種方法。
(1)定寬調頻法:保持t1不變,只改變t2,這樣使周期T(或頻率)也隨之改變。
(2)調頻調寬法:保持t1不變,改變t2,這樣使周期T(或頻率)也隨之改變。
(3)定頻調寬法:周期T(或頻率)保持不變,同時改變t1和t2。
在CPLD設計中,輸入不同的周期和占空比可選擇相應改變占空比方法,從而實現PWM調速。
3 系統設計
一些新型單片機具有PWM功能,能按要求自動輸出PWM信號,但筆者研制的基于PCI總線的機電一體化產品控制系統,MCU與電機驅動器通過PCI總線實現通信,其系統結構圖如圖2所示,圖3為MCU模塊與功率模塊連接圖。
MCU與其他模塊間的通信都是通過PCI總線實現的,而電機工作期間功率模塊上的電機驅動器需要連續不斷的PWM信號。如果使用MCU發送PWM信號則需長時間占用PCI總線,導致在驅動電機期間MCU無法與其他模塊通信。因此,采用CPLD實現數字控制PWM信號。
3.1 CPLD功能設計
系統設計時考慮到實用和成本等因素,選用Altera公司FLEX6000系列CPLD EPF6010ATC100-1。EPF6010ATC100-1是專為大容量設計的一種低成本可編程交錯式門陣列,共有16 000個可用門,1320個邏輯單元,117個I/O引腳,每個I/O引腳都有獨立的三態輸出使能控制。該器件采用OPEFLEX結構,采用最小的封裝尺寸并具有高性能和高布線率。器件的基本組成是邏輯單元(LE)。每個邏輯單元由一個4輸入查找表、一個寄存器以及作為進位鏈和級連鏈功能的專用通道。每10個邏輯單元組成一個邏輯陣列塊(LAB),并采用SRAM構造,可通過外部EEPROM或控制器實現在線配置,便于設計者在設計初期以及設計測試過程中對設計靈活修改,同時也能夠通過在線重新配置改變其內部功能。圖4為產生PWM信號的CPLD電路連接圖。
CPLD功能設計思路:對電機控制時,MCU將一個16位數據寫入CPLD器件的寄存器,CPLD則按照不同的數據產生相應的PWM波形。16位數據的分配如圖5所示。
EPF6010ATC100-1的輸入信號共有16個數據信號(LD[15:0])和4個控制信號(CLK、BLAST、CS和RESET),16個數據信號用于接收:MCU模塊發送的16位數據字。4個控制信號中,CLK為CPLD工作的時鐘信號,頻率可高達40 MHz,用于計數并產生準確的PWM占空比:BLAST為狀態信號,低電平時表示處于數據期,此時將數據讀入寄存器,等待BLAST上升沿,即該次數據訪問結束后發出PWM信號:CS信號用于片選CPLD器件:RESET則用于對CPLD器件復位,復位后,6個輸出引腳均為高阻態。
本系統設計選用的電動機PWM控制系統是雙極性可逆系統,雙極性驅動是指一個PWM周期中,作用于電樞兩端的脈沖電壓正負交替:可逆系統是指電動機可以正反兩個方向旋轉,因此采用兩個引腳產生PWM信號來控制電機的正反轉。P1.0和P1.1、P2.0和P2.1、P3.0和P3.1設置為三組PWM信號通道,當P1.0產生PWM波形時P1.1為低電平,此時電機正轉,反之電機反轉,并通過LD15控制電機運轉方向。為了簡化程序設計和以節省成本,根據實際需要,設計該三組通道不同時產生PWM信號,同一時刻只產生一組PWM信號,通過LD[14:13]選擇具體通道產生的PWM信號;LD[12:6]用于給定PWM信號的占空比;LD[5:0]用于給定PWM信號頻率,范圍為1 kHz~63 kHz,能滿足驅動電機需要。如果需要改變PWM信號的占空比、頻率、方向或更換PWM通道,只需再發送一個16位數據即可足要求。
3.2 CPLD開發工具
Altera公司開發的Quartus II軟件為可編程片上系統(SOPC)設計提供了一個工具齊全、功能強大的設計環境。Quartus II軟件可完成設計輸入、綜合、布局布線、時序分析、仿真和編程等功能。根據需要選用CPLD器件系列,采用Veilog HDL語言輸入方式編寫控制組合邏輯代碼和測試激勵代碼,利用Quartus II軟件自帶的工具分析綜合代碼,并進行布局布線、資源分配以及時序分析和波形仿真。Quartus II還為第三方EDA工具軟件提供了友好接口,可直接在Quartus II中調用Modelsim軟件進行前期的功能仿真和布局布線后的時序仿真。
4 結束語
利用CPLD技術實現了邏輯和時序的控制,簡化了硬件電路設計。基于CPLD的可編程特點,可以在不改變硬件電路整體結構的情況下對設計電路進行改造、升級以及維護:并且減少了軟件程序的操作指令,簡化了系統結構,提高了數據處理和讀取速度。
基于CPLD的PWM控制器電路結構簡單,設計方便,簡化了外部線路設計,節省了PCB板空間:解決了機電一體化開發平臺中MCU模塊與功率模塊基于PCI總線的通信,并且設計產生占空比和頻率范圍可調的PWM信號能滿足直流電機的要求,適用于自動控制和電力電子領域。