陳東升
【摘 要】采用一片AVR—Atmega48單片機(jī)作為整個(gè)系統(tǒng)的控制核心,不僅輸出伺服電機(jī)的PWM控制信號,而且運(yùn)用內(nèi)部集成的模數(shù)轉(zhuǎn)換器將外部模擬電壓控制信號轉(zhuǎn)換為數(shù)字信號。運(yùn)用伺服電機(jī)的電機(jī)控制器:SERIES- MCDC2805,與MEGE 48單片機(jī)一起完成電機(jī)的控制任務(wù)。最后采用OCMJ-4X8LCD液晶作為這個(gè)系統(tǒng)的顯示部分。
【關(guān)鍵詞】伺服電動機(jī);單片機(jī) ;LCD;實(shí)時(shí)顯示
引言
伺服電動機(jī)又稱為執(zhí)行電動機(jī),在自動控制系統(tǒng)中作為執(zhí)行元件, 它將輸入的電壓信號變換成轉(zhuǎn)軸的角位移或角速度輸出。輸入的電壓信號又稱為控制信號或電壓信號。改變控制電壓可以變更伺服電動機(jī)的轉(zhuǎn)速及轉(zhuǎn)向。
為了滿足生產(chǎn)過程中自動控制系統(tǒng)的各種不同控制要求,對直流電機(jī)也提出了更高的標(biāo)準(zhǔn),改變電樞回路電阻調(diào)速和變電壓調(diào)速等技術(shù)已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足現(xiàn)代控制技術(shù)的要求,PWM方式控制直流伺服電機(jī)調(diào)速的方法應(yīng)運(yùn)而生。
該設(shè)計(jì)準(zhǔn)備用單片機(jī)設(shè)計(jì)一個(gè)控制系統(tǒng),使得伺服電機(jī)的轉(zhuǎn)速的可以直觀的顯示出來,使得調(diào)節(jié)伺服電機(jī)轉(zhuǎn)速以達(dá)到控制要求的工作變得更簡潔。
1.直流伺服電動機(jī)控制系統(tǒng)的方案設(shè)計(jì)
如圖,設(shè)計(jì)主要由三部分構(gòu)成:信號源部分、控制核心部分,LCD顯示部分等。
信號源部分:通過切換相應(yīng)的開關(guān)給電機(jī)控制器提供模擬電壓源或是PWM信號。
控制核心部分:該部分是負(fù)責(zé)發(fā)出控制信號,對各種信息做出快速、準(zhǔn)確的反應(yīng),處理外部隨時(shí)變化的信號。
LCD顯示部分:該部分顯示由單片機(jī)通過對電壓信號處理過后產(chǎn)生的相應(yīng)的轉(zhuǎn)速數(shù)據(jù)。
2.電機(jī)驅(qū)動調(diào)速的實(shí)現(xiàn)
SERIE—2224—012SR型直流微型電機(jī)的控制是通過控制MCD2805控制器來實(shí)現(xiàn)的。MCDC2805控制器與上述直流微型電機(jī)組合主要有步進(jìn)模式、速度模式、PWM模式等控制模式。本設(shè)計(jì)決定采用速度模式和PWM模式。
2.1 控制器內(nèi)部設(shè)置
正如上述驅(qū)動器MCDC2805的介紹那樣,其內(nèi)部設(shè)置通過RS—232根據(jù)實(shí)際需要進(jìn)行設(shè)置的,程序已設(shè)置,主要的技術(shù)參數(shù)具體如下:
3. CPU控制模塊的實(shí)現(xiàn)
前面已經(jīng)提到,核心控制器采用的是ATMEL公司的推出的Atmega 48單片機(jī),其主要特點(diǎn)如下:
高速度和低功耗,具有SLEEP(休眠)功能。
具有(吸入電流)10-20mA或40mA(單一輸出)大電流??芍苯域?qū)動SSR,內(nèi)置Watch Dog 電路。
程序?qū)懭肫骷刹⑿袑懭耄部纱性诰€下載(ISP)擦寫。
單片機(jī)內(nèi)置模擬比較器,具有較高精度的6路10 位A/D轉(zhuǎn)換器 ( PDIP 封裝)。
五種休眠模式:空閑模式、ADC 噪聲抑制模式、省電模式、掉電模式和Standby 模式
具有內(nèi)部RC振蕩器,無需外加晶振即可工作。
計(jì)數(shù)器/定時(shí)器:有2個(gè)8位和一個(gè)16位定時(shí)/計(jì)數(shù)器,可做比較器、計(jì)數(shù)器外部中斷和PWM用于控制輸出(此功能應(yīng)用在本系統(tǒng)中)
4.PWM模式
本設(shè)計(jì)控制電機(jī)要求控制核心發(fā)出不同占空比的脈沖來實(shí)現(xiàn)調(diào)速,故采用相位可調(diào)PWM模式,具體為16種模式中的第10種。T/C1工作在相位可調(diào)PWM 模式(WGM13:0 = 1、2、3、10、11) 可以獲得高精度的、相位可調(diào)的PWM波形。
計(jì)數(shù)上限值(TOP值)決定著PWM波的周期;輸出比較匹配寄存器中的值(即OCR1A/OCR1B值)決定著PWM波的占空比。
Rpcpwm=log2(TOP+1)
相位可調(diào)PWM模式中,輸出的PWM波形的頻率輸出由下式確定,式中N的取值為1、8、64、256或1024。
通過設(shè)置比較寄存器OC1A/OC1B的值,可以獲得不同占空比的脈沖波形。OC1A/OC1B的一些特殊值,會產(chǎn)生極端的PWM波形。當(dāng)OC1A/OC1B的設(shè)置值與0x0000相近時(shí),會產(chǎn)生窄脈沖序列。
5.模數(shù)轉(zhuǎn)換器
ATmega48有一個(gè)6 路10位精度的逐次逼近型ADC,0.5 LSB 的非線性度,± 2LSB 的絕對精度, 65 - 260 ?s 的轉(zhuǎn)換時(shí)間,最高分辨率時(shí)采樣率高達(dá)15 kSPS,具有連續(xù)轉(zhuǎn)換或單次轉(zhuǎn)換模式,可選的向左調(diào)整ADC 讀數(shù)。ADC與一個(gè)8通道的模擬多路復(fù)用器連接,能對來自端口C的8 路單端輸入電壓進(jìn)行采樣。單端電壓輸入以0V (GND) 為參考。ADC 包括一個(gè)采樣保持電路,以確保在轉(zhuǎn)換過程中輸入到ADC 的電壓保持恒定。
6.系統(tǒng)顯示模塊的實(shí)現(xiàn)
OCMJ 系列液晶顯示器致力于減輕編程負(fù)擔(dān)。用戶硬件接口采用 ASK/ANSWER 握手協(xié)議, ASK=1 表示 OCMJ 忙于內(nèi)部處理,不能接收用戶命令;ASK=0 表示 OCMJ 空閑,等待接收用戶命令。發(fā)送用戶命令到 OCMJ可在 ASK=0 后的任意時(shí)刻開始,先把用戶命令的當(dāng)前字節(jié)放到數(shù)據(jù)線上,接著發(fā)高電平ANSWER 脈沖把當(dāng)前用戶命令字節(jié)鎖存到 OCMJ 中。然后判斷OCMJ模塊是否在忙于內(nèi)部處理數(shù)據(jù),(ASK=1?)如果ASK=1,那么把ANSWER拉低,等待下一次(ASK=0)再送下一個(gè)數(shù)據(jù)。采用 8 位并行數(shù)據(jù)格式。
經(jīng)過前面的論述,本設(shè)計(jì)的整體框架已經(jīng)搭建起來,首先是CPU控制核心接收外部模擬電壓控制信號,經(jīng)過處理之后,一方面產(chǎn)生PWM控制信號給驅(qū)動器為電機(jī)調(diào)速,另一方面CPU通過模數(shù)轉(zhuǎn)換器將模擬電壓信號輸出給顯示模塊來展示速度等信息,以方便技術(shù)員更加及時(shí)準(zhǔn)確的把握電機(jī)運(yùn)行情況。
7.電機(jī)步進(jìn)工作模式的研究
SERIE—2224系列微型伺服電機(jī)通過RS—232可以設(shè)置為步進(jìn)電機(jī)工作模式,下邊主要對這種電機(jī)步進(jìn)模式的控制,進(jìn)行了初步的研究和試驗(yàn):
正如上述驅(qū)動器MCDC2805的介紹那樣,其內(nèi)部設(shè)置通過RS—232根據(jù)實(shí)際需要進(jìn)行設(shè)置的。
其中,電機(jī)轉(zhuǎn)速=脈沖頻率可見,電機(jī)轉(zhuǎn)速是由STW、STN和輸入的脈沖頻率共同決定的。(STW:指每發(fā)一個(gè)脈沖電機(jī)轉(zhuǎn)動的步數(shù);STN:每一轉(zhuǎn)的總步數(shù))
8.結(jié)論
本系統(tǒng)實(shí)現(xiàn)了通過單片機(jī)輸出PWM控制信號來給直流伺服電機(jī)調(diào)速的功能,是一種數(shù)字伺服控制系統(tǒng);同時(shí)本系統(tǒng)還應(yīng)用了模數(shù)轉(zhuǎn)換器,把模擬電壓控制信號處理后,在顯示屏上顯示出速度等信息,體現(xiàn)了人機(jī)交互的理念。以CPU為核心的數(shù)字控制系統(tǒng)的各個(gè)組成部分,通過CPU模塊的分析處理后,向電動機(jī)執(zhí)行機(jī)構(gòu)發(fā)出指令,完成整個(gè)任務(wù)。
參考文獻(xiàn):
[1] 丁化成,耿得根.AVR單片機(jī)應(yīng)用設(shè)計(jì)[M] .北京:北京航空航天大學(xué)出版社,2002.
[2] 馬潮,詹衛(wèi)前.Atmega8原理及應(yīng)用手冊[M] .北京:清華大學(xué)出版社,2003 .
[3]任禮維,林瑞光. 電機(jī)與拖動基礎(chǔ)[M].杭州:浙江大學(xué)出版社,1994.