基于單片機(jī)的交流伺服電機(jī)轉(zhuǎn)速控制系統(tǒng)研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 交流伺服電機(jī)控制系統(tǒng)設(shè)計(jì)方案
系統(tǒng)使用的交流伺服電機(jī)為三相交流電機(jī);驅(qū)動(dòng)器控制U/V/W三相電形成電磁場(chǎng);轉(zhuǎn)子在此磁場(chǎng)的作用下轉(zhuǎn)動(dòng),同時(shí)電機(jī)由接近傳感器將轉(zhuǎn)速信號(hào)反饋給驅(qū)動(dòng)器;驅(qū)動(dòng)器根據(jù)反饋值與目標(biāo)值進(jìn)行比較,調(diào)整轉(zhuǎn)子轉(zhuǎn)動(dòng)的角度。伺服電動(dòng)機(jī)又稱執(zhí)行電動(dòng)機(jī),在自動(dòng)控制系統(tǒng)中,用作執(zhí)行元件,把所收到的電信號(hào)轉(zhuǎn)換成電動(dòng)機(jī)軸上的角位移或角速度輸出。
2 系統(tǒng)硬件設(shè)計(jì)
本項(xiàng)目實(shí)質(zhì)上采用STC89C52RC單片機(jī)構(gòu)建一個(gè)最小系統(tǒng),實(shí)現(xiàn)脈寬可調(diào)輸出控制兩個(gè)繼電器,實(shí)現(xiàn)電機(jī)正反轉(zhuǎn)智能控制,從而實(shí)現(xiàn)伺服電機(jī)的精確位移控制。控制系統(tǒng)組成如圖1所示。
通過按鍵輸入電機(jī)所需的轉(zhuǎn)速值并與轉(zhuǎn)速傳感器反饋回來的電機(jī)轉(zhuǎn)速相比較,采用PID算法,經(jīng)單片機(jī)處理后,轉(zhuǎn)化成相應(yīng)的脈沖信號(hào),再經(jīng)光電耦合器調(diào)節(jié)繼電器的開度,通過調(diào)節(jié)繼電器的脈沖寬度,達(dá)到脈寬的調(diào)制,從而控制伺服電機(jī)上的磁塊正負(fù)位移,使電機(jī)達(dá)到給定的轉(zhuǎn)速值,同時(shí)單片機(jī)接受固定在伺服電機(jī)轉(zhuǎn)軸上的轉(zhuǎn)速傳感器隨著電機(jī)轉(zhuǎn)動(dòng)而產(chǎn)生的反饋脈沖信號(hào),并在LED實(shí)時(shí)顯示電機(jī)的實(shí)際轉(zhuǎn)速。
2.1 單片機(jī)控制器的硬件設(shè)計(jì)
在此開發(fā)了一套運(yùn)動(dòng)控制器的軟件系統(tǒng)。該系統(tǒng)的硬件結(jié)構(gòu)是基于單片機(jī)而開發(fā)的,所用功能為外部中斷、定時(shí)中斷、檢測(cè)傳感器脈沖信號(hào)、及輸入/輸出等。STC89C52RC的P0.0,P0.1,P0.2端口分別作為按鍵SET、按鍵MOVE、按鍵UP的輸入口,通過STC89C52定時(shí)器T0的定時(shí)中斷控制脈沖發(fā)送頻率,進(jìn)而控制電機(jī)的轉(zhuǎn)速。系統(tǒng)原理圖如圖2所示。
2.2 驅(qū)動(dòng)部分電路的硬件設(shè)計(jì)
由于單片機(jī)屬于TTL電路(邏輯1和0的電平分別為2.4 V和0.4 V),其I/O口輸出的開關(guān)量控制信號(hào)電平無法直接驅(qū)動(dòng)電機(jī),所以在P2.6口控制升速信號(hào)輸出端需加入驅(qū)動(dòng)電路;同理該驅(qū)動(dòng)電路也應(yīng)用于P2.7口的降速輸出端。系統(tǒng)采用光耦耦合器和晶體管作驅(qū)動(dòng),由光電耦合器輸出通道傳入控制電機(jī),所以具有很強(qiáng)的抑制噪聲干擾能力,起隔離作用,可防止強(qiáng)電磁干擾;晶體管主要起功率放大作用。電機(jī)驅(qū)動(dòng)電路如圖3所示。
3 系統(tǒng)軟件設(shè)計(jì)
控制器的軟件主要完成LED顯示,接受鍵盤輸入,實(shí)現(xiàn)伺服電機(jī)勻速運(yùn)行和繼電器控制幾項(xiàng)功能,包括主程序、按鍵中斷服務(wù)程序、定時(shí)器T0中斷服務(wù)程序及LED顯示子程序。在交流伺服電機(jī)控制系統(tǒng)中,單片機(jī)的主要作用是產(chǎn)生脈沖序列,它是通過STC89C52RC的P3.2口發(fā)送的。系統(tǒng)軟件編制采用定時(shí)器定時(shí)中斷產(chǎn)生周期性脈沖序列,不使用軟件延時(shí),不占用CPU。CPU在非中斷時(shí)間內(nèi)可以處理其他事件,惟有到了中斷時(shí)間,才驅(qū)動(dòng)伺服電機(jī)轉(zhuǎn)動(dòng)一步。系統(tǒng)程序流程圖如圖4所示。
3.1 按鍵預(yù)置子程序
面板上有3個(gè)鍵與該子程序相關(guān),它們是SET,MOVE和UP,其功能分別是:SET用來確定設(shè)定位,共有4位,包括個(gè)位、十位、百位和千位;MOVE用來選擇那一位;UP控制被控位的增加,每次增加,在0~9之間循環(huán)。當(dāng)用戶確定其輸入時(shí)可按鍵SET,程序便根據(jù)輸入的值確定伺服電機(jī)工作時(shí)的給定轉(zhuǎn)速,最后,將設(shè)定值存人對(duì)應(yīng)的變量中,按鍵子程序流程如圖5所示。
3.2 定時(shí)中斷服務(wù)子程序
電機(jī)每轉(zhuǎn)動(dòng)1圈,單片機(jī)就中斷1次。通過檢測(cè)兩次中斷的時(shí)間間隔,即通過定時(shí)器的計(jì)數(shù),就可以算出電機(jī)轉(zhuǎn)速。為了實(shí)現(xiàn)轉(zhuǎn)速檢測(cè)需將轉(zhuǎn)速中斷配置為最高中斷優(yōu)先級(jí)INTO。中斷計(jì)數(shù)的程序框圖如圖6所示。
3.3 轉(zhuǎn)速的PID控制算法
作為模糊控制和PID控制相結(jié)合的產(chǎn)物,模糊自適應(yīng)PID控制除具有調(diào)速范圍寬,調(diào)節(jié)速度快和不要求掌握受控對(duì)象的精確數(shù)學(xué)模型等優(yōu)點(diǎn)外,還具備結(jié)構(gòu)簡(jiǎn)單、容易實(shí)現(xiàn)的特點(diǎn)。根據(jù)直線電機(jī)位置運(yùn)動(dòng)規(guī)律,模糊自適應(yīng)PID控制的基本思想是:當(dāng)誤差大時(shí),需加大誤差控制作用的權(quán)重,以快速消除誤差,提高系統(tǒng)響應(yīng)速度;當(dāng)誤差小時(shí),需加大誤差變化量控制作用的權(quán)重,以避免超調(diào)使系統(tǒng)盡快進(jìn)入穩(wěn)態(tài)。根據(jù)上述規(guī)律,可設(shè)計(jì)模糊自適應(yīng)PID控制系統(tǒng)的模糊推理規(guī)則表。表1給出KP的模糊調(diào)整規(guī)則實(shí)例。其中,e(k)和△e(k)分別為位置誤差及其變化量。模糊推理規(guī)則形式為:
模糊自適應(yīng)PID控制的原理如圖7所示。
模糊PID的參數(shù)調(diào)整值為:
式中:j為規(guī)則條件語句的條數(shù),j=1,2,…,n;ukxy(Cx)為各規(guī)則語句中Kx的隸屬度;Cx為參數(shù)x所取得的模糊子集模糊論域的中心值。
在實(shí)現(xiàn)了電機(jī)轉(zhuǎn)速的實(shí)時(shí)檢測(cè)之后,就可以采用閉環(huán)控制來調(diào)節(jié)電機(jī)的轉(zhuǎn)速。轉(zhuǎn)速的控制框圖如圖8所示。其計(jì)算如式(2)所示:
式中:Nr為由按鍵設(shè)定的轉(zhuǎn)速;N為實(shí)際的轉(zhuǎn)速輸出值。PI控制器由STC89C52RC單片機(jī)通過編程實(shí)現(xiàn)實(shí)際轉(zhuǎn)速與設(shè)定轉(zhuǎn)速之間的控制偏差△N。
4 結(jié) 語
該系統(tǒng)研究以單片機(jī)作為控制器,對(duì)非標(biāo)準(zhǔn)交流伺服電機(jī)進(jìn)行控制,有效利用單片機(jī)內(nèi)部資源以及詳細(xì)了解相應(yīng)電機(jī)運(yùn)動(dòng)控制系統(tǒng)的運(yùn)行特性,在生產(chǎn)調(diào)速電機(jī)的配套裝置實(shí)際應(yīng)用中,降低了系統(tǒng)的成本,提高了系統(tǒng)的性能。