ARM LPC2101的無刷直流電機控制方案
3.2 電機選擇
本文引用地址:http://www.j9360.com/article/84704.htm設計選用150 W MAXON RE40電機。在12 V輸入下,無負載的速度是6 920 r/s。最大連續電流是6A。PWM時基信號對電機噪聲有很大的影響(因為人耳一般能聽到的聲波的頻率范圍是20 Hz~20kHz),同時影響電機的表現性能。要防止整個周期中電流過零(就是通常所說的不連續的電流狀態,當電機輕載時),如圖5(b)所示。這種不連續電流會導致扭矩轉速曲線非常陡,在電機中將產生某種脈沖,使電機轉子產生更大的噪聲,本電路使用MAXON電機,就是為了獲得連續的電流模式,所選擇的PWM脈沖頻率是8kHz。
圖5 PWM時基頻率的影響
3.3 MOSFET選擇
在系統中使用NXP半導體PH1875L N溝道MOSFET,相關的電機電壓是12 V,電機啟動的最大電流是103 A。作為12V的電機,MOSFET的電壓Vds至少為40V。需要足夠的灌電流來啟動電機,可以通過軟件控制在系統運行過程中減小電流。PH1875L需要使用的最大灌電流是45.8 A,漏電流是183A。PH1875L的SMD貼片封裝如圖6所示。
圖6 SO669(LFPAK)封裝
3.4 MOSFET驅動選擇
MOSFET驅動提升了控制器輸出信號驅動電機的能力。本設計選擇NXP芯片PMD2001D和PMGD280UN,如圖7所示。
圖7 簡化的MOSFETMOSFET全橋和半橋驅動電路
3.5 速度控制和方向控制
為了控制方向和電機速度,用10 kΩ的電位器,連接到LPC2101 ADC輸入端(參見圖4)。由于是10位A/D,實際上只需要8位就可以采用256個步進數值,如圖8所示。采用10位A/D可以達到1024個步進數值。
圖8 電位器模擬速度輸入和方向
4 硬件與軟件設計
4.1 硬件設計
控制部分的電路原理如圖9所示。電源和電機部分的電路原理如圖10所示。
圖9 控制部分電路原理
圖10 電源和電機部分電路原理
4.2 軟件設計
軟件部分采用C語言編寫,使用Keil μVision(ARM7 RealView V3.0)開發環境。主函數實現如下功能:讀取電位器數值來調整速度和電機方向;讀取電機反電動勢電流;設定PWM占空比和控制Q1~Q4MOSFET輸出;執行RS232通信。圖11表示控制系統流程。使用RS232接口每200ms給PC端計算機發送電機速度和電流、電壓信息。電機控制軟件部分狀態機如圖12所示。狀態處理是在主程序循環中處理的,LPC2101的定時器2用于產生PWM信號。在每個PWM信號中斷子程序進入后,可以通過改變占空比來調整既定電機速度并設置MOSFET輸出控制Q1~Q4。定時器0用于10ms的系統定時。
圖11 主程序流程
圖12 狀態流程
LPC2101配置使用Keil ARM開發環境中標準的啟動代碼,設定CCLK時鐘為60 MHz,PCLK時鐘為15MHz。相關測試代碼包括main.c,adc.c,timer0.c,motor.c,uart.c,bcd.h等。
相關代碼見本刊網站http://www.mesnet.com.cn/——編者注。
5 總結
使用LPC2101 ARM7內核開發無刷電機控制系統,代碼精簡,控制系統可靠。經過長時間實際測量證明,系統相關器件的選型設計是穩定的。另外,目前增強型51系列微處理器的價格、性能與LPC21系列相比較,LPC21系列功耗低,價格與普通8位機價格差不多,但是性能卻比增強型51系列好。比如,帶Modem的雙串口,雙I2C接口,帶大容量的Flash和RAM存儲區,多通道PWM,多個32位定時器,高精度10位A/D轉換器等。因此,從芯片設計和系統設計上,該無刷電機產品有一定的推廣價值。
評論