[產品庫]主題:振動電機 發佈者:東源機械有限公司 郝德祥
08/09/2013
Visit:42 ,Today:1
振動電機脈寬調製的實現
直流振動電機是一個模擬器件,而單片機的輸出是數字信號。要實現單片機對直流振動電機轉速的控製,可以採用數/模轉換電路進行D/A轉換,也可以採用脈寬調製的方式實現。
以單片機爲控製核心並負責脈寬調製任務,按鍵作爲係統輸入,改變單片機輸出脈沖的寬度實現對直流振動電機速度的調節。脈寬調製的輸出就是不同寬度的脈沖,也就是單片機改變輸出的髙低電平的時間。單片機的引腳負載能力極弱,需要功率驅動電路對單片機的輸出信號進行放大後,再驅動直流振動電機。
需要註意的是要讓振動電機取得不同轉速的效果,必須提髙調製頻率,通常調製頻率爲1~200kHz,否則實際效果會是轉動一短時間再停止一段時間。
採用脈寬調製的方式實現用按鍵控製直流振動電機的轉速,振動電機從靜止到全速運行分爲多個檔位。整個係統硬件電路由單片機至小係統、按鍵、直流振動電機及其驅動電路組成。
在本設計中選擇AT89S52單片機芯片爲係統控製芯片,係統晶振頻率爲12MHz。係統採用外部中斷的方式檢測按鍵,控製振動電機調速。在脈寬調製中,對髙低電平保持時間進行定時的任務交給集成在單片機內部的定時器完成,因此不存在外圍電路的連接。對於PWM輸出隻需要單片機的通用IO口實現,選擇PWM的輸出引腳爲P2.0。震動電機
單片機輸出控製信號不能直接驅動振動電機,需要外接如L298等H橋電路等驅動直流振動電機,也可以根據需要採用由功率MOS管構成的H橋電路,來驅動髙電壓、大電流的直流振動電機。
當單片機檢測到按鍵按下時,進入外部中斷0的服務程序,此時應控製換擋。程序中用變量time來錶示檔位,範圍從0到10共分爲11個檔位,其中0代錶振動電機停止運行,10代錶振動電機全速運行,從1到9代錶振動電機轉速逐漸線性提髙的各個檔位。爲瞭消除因按鍵抖動引起的錯誤操作,需要對按鍵進行消抖處理。
選用的脈寬調製方案是先確定PWM信號的頻率爲1kHz,即週期爲1ms,相比振動電機對開關狀態變化的響應時間足夠短,所以能夠近似等效於模擬信號從而控製轉速。振動電機轉速的檔位是從0到10分爲11擋,對應PWM信號的佔空比從0到100%也分爲11擋,因此一個週期就分爲10個等份,每個等份的時間即單位間隔時間爲100μs。
用定時器定時100μs,時間到就會進入定時中斷服務程序,此時對定時中斷次數計數,並根據變量time所指示的轉速檔位去判斷脈沖的寬度是否已達到對應的佔空比,輸出對應的髙低電平,從而實現脈寬調製。
http://www.zd373.com
東源機械有限公司
河南新鄉市牧野工業區
0373-3383880
18637320868
xxzd373@163.com
www.zd373.com/
最後更新: 2013-08-09 10:02:49