陳峰
(江蘇商貿職業學院,江蘇南通,226011)
小型直流電機可通過調節其電壓來控制電機的轉動方向和轉速大小。以單片機為核心,采用脈寬調制(PWM)通過調節輸出脈沖的占空比來實現直流電機的調速控制,轉速大小由輸出脈沖的占空比來決定[1-2]。本文采用單片機控制數模轉換芯片DAC0832來設計實現直流電機調速器系統。
利用單片機實現對直流電機轉動方向和不同轉速控制;通過“啟停”按鍵控制直流電機的啟動或停止;通過“正反轉”按鍵設置直流電機的正轉或反轉;設置“調速+”和“調速-”兩個按鍵實現對直流電機以不同檔位的轉速控制;采用LCD1602液晶顯示屏實時顯示直流電機的運行狀態,主要包括直流電機的轉動方向和轉速檔位。
調速器系統的總體設計框圖如圖1所示,由單片機、時鐘電路、復位電路、按鍵控制電路、LCD1602液晶顯示電路、數模轉換電路、放大電路和直流電機共同組成。

圖1 調速器系統設計框圖
單片機最小系統是指能夠保證單片機能獨立工作所必須的外圍電路,主要由電源、時鐘電路和復位電路組成,電路圖如圖2所示。

圖2 單片機最小系統電路圖
根據系統的功能,系統可采用4個按鍵來控制直流電機的啟停,設置直流電機的正反轉和轉速檔位加減,各按鍵的功能如表1所示。

表1 按鍵功能
由于只有4個按鍵,電路采用獨立式鍵盤結構,其電路如圖3所示,采用單片機P3.0-P3.3引腳構成獨立按鍵電路。

圖3 按鍵控制電路
采用1602液晶顯示屏實時顯示直流電機的運行狀態,電路如圖4所示;數據引腳接單片機的P0口,寄存器選擇端(RS)、讀寫信號線(R/W)、使能端(E)三個控制引腳分別接單片機的P1.0-P1.2引腳。LCD1602液晶顯示屏的第一行顯示直流電機當前的運行狀態,第二行顯示直流電機的正反轉情況以及轉速檔位。

圖4 液晶顯示電路
直流電機控制電路如圖5所示,采用數模轉換芯片DAC0832將數字信號轉換為電流輸出,并通過運算放大器將電流信號轉換為電壓信號并使電壓信號達到負載要求。利用單片機改變數字量就可以改變輸出電壓大小從而實現直流電機的轉速檔位控制。
由于直流電機轉動方向由電壓的正負來控制,因此DAC0832采用雙極性電壓輸出電路,由以上運放的連接方法,可以推導出輸出電壓與輸入數字量的關系:Vo=Vref×(B-128)/128,其中 Vref為參考電壓,B為輸入數字量。當參考電壓為正時,當數字量在0x01-0x7f變化時,輸出電壓為負值,控制直流電機反轉,當數字量在 0x80~0xff變化時,輸出電壓為正值,控制直流電機正轉。

圖5 直流電機控制電路
系統軟件設計主要包括LCD1602顯示程序、按鍵控制程序和DAC0832數模轉換程序組成,系統的軟件設計流程圖如圖6所示。

圖6 軟件設計流程圖
其中變量state用來表示直流電機的運行狀態,state=0表示直流電機停止,state=1表示直流電機正常運行,變量flag用于表示直流電機的正反轉狀態,flag=0表示直流電機正轉,flag=1表示直流電機反轉,數組fwd存放直流電機正轉時不同檔位所對應的數字量,數組rev存放直流電機反轉時不同檔位所對應的數字量,變量index表示直流電機轉速檔位。
根據系統功能要求利用Keil軟件編寫控制程序并編譯調試生成HEX文件,與Proteus軟件進行聯合仿真調試。在數模轉換芯片DAC0832雙極性電壓輸出電路的輸出端添加電壓表用于觀察直流電機電壓。系統上電時仿真效果和直流電機運轉時的仿真效果分別如圖7和圖8所示。

圖7 系統上電時仿真效果

圖8 電機運行時仿真效果
系統上電時,單片機控制數模轉換芯片DAC0832無輸出電壓,直流電機工作在停止狀態;當按下按鍵K1時,系統正常工作,電機根據系統設置的檔位和正反轉情況進行轉動。圖8所示仿真效果表明直流電機在工作運轉狀態,單片機控制數模轉換芯片DAC0832輸出電壓為5.88V,電機工作正轉運行狀態,轉速檔位為2。
該直流電機調速器以單片機為核心,單片機輸出不同的數字量控制數模轉換芯片DAC0832輸出不同的電壓來實現對直流電機轉動方向和4檔轉速的控制。該直流電機調速器可應用于家庭小型風扇電機的轉速控制。