siemens x
工業(yè)連接

基于PCI總線的全閉環(huán)交流伺服的控制系統(tǒng)

2025China.cn   2008年09月10日
摘要:基于PCI總線設(shè)計開放式交流伺服運動控制系統(tǒng),具有模塊化,智能化,柔性化的特點。采用運動控制卡+PC作為上位控制單元,交流伺服驅(qū)動器和伺服電機作為執(zhí)行機構(gòu),光柵尺+數(shù)據(jù)采集卡作為直線位移檢測裝置,設(shè)計出全閉環(huán)運動控制系統(tǒng)。同時利用VC++編程實現(xiàn)對伺服電機高速、高精度的控制。
關(guān)鍵詞:全閉環(huán) PCI總線 交流伺服 運動控制卡

0 引言

現(xiàn)代工業(yè)生產(chǎn)中,交流伺服控制系統(tǒng)已經(jīng)被廣泛使用。但隨著機電一體化產(chǎn)品的發(fā)展,對交流伺服控制系統(tǒng)的定位精度和動態(tài)響應(yīng)的要求越來越高,傳統(tǒng)系統(tǒng)已經(jīng)難以滿足現(xiàn)代化生產(chǎn)的需要。以數(shù)字替代模擬、交流替代直流、閉環(huán)替代開環(huán)的設(shè)計思想,成為目前構(gòu)建開放式控制系統(tǒng)的主要方法。

在多種開放式控制系統(tǒng)中,PC機(包括工業(yè)PC)具有生產(chǎn)批量大、性價比高、技術(shù)進步的特點,同時配有高性能應(yīng)用軟件和程序設(shè)計軟件。因此利用PC機的標準PCI總線,設(shè)計出PC+運動控制卡的上位控制器,可滿足控制系統(tǒng)核心部件的要求。

交流伺服控制系統(tǒng)大多工作在半閉環(huán)的控制方式,這種控制方式對于傳動鏈上的間隙及誤差不能克服或補償。為了獲得更高的控制精度,應(yīng)在最終的運動部分安裝高精度的檢測元件(如:光柵尺、光電編碼器等),即實現(xiàn)全閉環(huán)控制[1>。全閉環(huán)控制克服半閉環(huán)控制系統(tǒng)的缺陷,上位控制器可以直接采樣裝在最后一級機械運動部件上的位置反饋元件作為位置環(huán),這樣伺服系統(tǒng)就可以消除機械傳動上存在的間隙(如齒輪間隙、絲杠間隙等),補償機械傳動件的制造誤差(如絲杠螺距誤差等),實現(xiàn)真正的全閉環(huán)位置控制功能,獲得較高的定位精度。

1 控制系統(tǒng)的硬件設(shè)計

1.1系統(tǒng)硬件組成

該系統(tǒng)的是一種教學(xué)和實驗使用的X-Y軸全閉環(huán)交流伺服運動控制系統(tǒng)。系統(tǒng)由四個部分組成(圖1):(1)上位控制部分包括通用PC機、ADT850運動控制卡;(2)松下MINAS A4系列交流伺服驅(qū)動器和交流伺服電機組成驅(qū)動部分;(3)負載部分為X-Y軸滾珠絲杠平臺;(4)閉環(huán)反饋部分由光柵尺和數(shù)據(jù)采集卡來實現(xiàn)。


圖1 全閉環(huán)伺服系統(tǒng)結(jié)構(gòu)圖
Fig.1 the structure of the full-closed servo loop system

1.2 全閉環(huán)控制結(jié)構(gòu)設(shè)計

控制系統(tǒng)采用雙環(huán)結(jié)構(gòu),即內(nèi)環(huán)和外環(huán)。內(nèi)環(huán)是保證系統(tǒng)的穩(wěn)定性和對外干擾及參數(shù)變化的魯棒性。外環(huán)提高系統(tǒng)的控制精度,使閉環(huán)系統(tǒng)響應(yīng)和參考模型接近。

(1)內(nèi)環(huán)是通過交流伺服驅(qū)動器接收伺服電機的編碼器反饋信號,實現(xiàn)對電機的控制。松下MINAS A4系列交流伺服驅(qū)動器包含了伺服控制器與PWM功率放大器。伺服控制器以位置環(huán)控制器、速度環(huán)控制器和電流環(huán)控制器組成。伺服控制器的功能在于完成伺服系統(tǒng)的閉環(huán)控制,如轉(zhuǎn)矩控制、速度控制、和位置控制。伺服驅(qū)動器中IPM(智能功率模塊)是以IGBT為功率器件的新型模塊。(PWM變頻調(diào)速技術(shù))這種功率模塊是將輸出功率元件IGBT和驅(qū)動電路、多種保護電路集成在同一模塊內(nèi),提高了系統(tǒng)性能和可靠性,降低了IPM通態(tài)損耗和開關(guān)損耗,同時減小了整個系統(tǒng)的尺寸。

(2)外環(huán)構(gòu)成是由光柵尺采集負載平臺位移信號量,通過數(shù)據(jù)采集卡反饋給上位控制系統(tǒng)。光柵尺采用直線增量式光柵尺。增量測量法的光柵采用周期性的光柵刻線,位置信息是通過計算自某點開始的增量數(shù)(測量步距)獲得的[2>。如圖2所示,光柵尺的輸出信號為相位角相差90°的A、B兩路方波信號,信號的空間位置周期為W,最高分辨率為η=W/4。W越小,意味著光柵尺的分辨率越高。當(dāng)系統(tǒng)正向運動時,A信號的上升沿及下降沿均比B信號超前1/4W;反之當(dāng)系統(tǒng)反向運動時,A信號的上升沿及下降沿均比B信號滯后1/4W。根據(jù)采集到的運動信號方向和A信號變化的周期數(shù)用計數(shù)器進行計數(shù),就可以測算出位移,即位移量X=nW,n為計數(shù)值。


圖2 光柵尺信號采集原理圖
Fig.2 principle of the linear encoder signals collection

(3)運動控制卡負責(zé)系統(tǒng)的實時控制。ADT850運動控制卡是PCI總線的運動控制卡,用于控制步進電機和數(shù)字伺服電機, 進行直線、圓弧插補和樣條函數(shù)等運動。ADT850運動控制卡作為步進電機的上位單元, 與計算機構(gòu)成主從式控制結(jié)構(gòu)。計算機主要完成人機交互界面的管理、控制系統(tǒng)的檢測和控制工作,運動控制卡接收計算機CPU的發(fā)出的指令, 進行運動軌跡的規(guī)劃。這包括脈沖的方向和方向信號的輸出、自動升降速處理、原點和限位開關(guān)等信號的檢測。系統(tǒng)具有軟件搜索參考點和軟件限位功能, 這樣可以保證電機和滾珠絲杠等精密部件不在系統(tǒng)運行中損壞。同時ADT850支持DOS、Windows95/98/NT/2000/XP等操作系統(tǒng), 提供底層庫函數(shù), 可用VC++、VB等進行軟件開發(fā)[3>。

2 基于ADT850卡的軟件開發(fā)

本系統(tǒng)同時采用基于PCI總線的運動控制卡和數(shù)據(jù)采集卡,兩種卡都提供底層VC庫函數(shù),為在一個軟件框架下進行開發(fā)提供了便捷的途徑。開發(fā)中選擇在Windows系統(tǒng)下,利用VC++ 的MFC以面向?qū)ο蠓绞竭M行編程[4>。軟件的開發(fā)過程主要包括三個部分,如系統(tǒng)結(jié)構(gòu)圖3所示:程序的初始化;二維軌跡設(shè)計;檢測信號的誤差比較。


圖3 系統(tǒng)軟件結(jié)構(gòu)流程圖
Fig.3 system software structure flow

(1)ADT850運動控制卡的初始化

ADT850運動控制卡本身提供靜態(tài)庫、頭文件ADT850.H、WindowsNT/2000使用的文件,動態(tài)庫中的函數(shù)已在頭文件ADT850.H中有聲明。在程序頭聲明了#include “adt850.h”之后,調(diào)用庫函數(shù),確認adt850卡的安裝,設(shè)置脈沖輸出的模式,位置反饋的模式,限位開關(guān)的工作模式,伺服信號的使用與否,是否使用軟件限位等,這些參數(shù)應(yīng)根據(jù)具體的硬件平臺來設(shè)置,一般只在程序初始化時設(shè)置一次,以后不應(yīng)再設(shè)置。部分函數(shù)調(diào)用如下:
adt850_initial() //檢測安裝ADT850卡
int set_pulse_mode() //設(shè)置輸出脈沖的工作方式
int get_status() //獲取各軸的驅(qū)動狀態(tài)
int get_inp_status()  //獲取插補的驅(qū)動狀態(tài)
int set_range()  //范圍設(shè)定
int set_startv() //初始速度設(shè)定
int set_speed() //驅(qū)動速度設(shè)定

(2)KPCI-811多功能數(shù)據(jù)采集卡的初始化

采用KPCI-811多功能數(shù)據(jù)采集卡,在初始化中同運動控制卡一樣,調(diào)用數(shù)據(jù)采集卡庫函數(shù)進行卡的初始化設(shè)置。包括創(chuàng)建設(shè)備對象,設(shè)置采集頻率,定時計數(shù)工作模式等。部分函數(shù)調(diào)用如下:
IO_HANDLEL_KP811_LocateAndOpen() //創(chuàng)建設(shè)備對象
void KP811_TimerWrite() //設(shè)置AD采集頻率
void KP811_ModeWrite() //設(shè)置工作模式
void KP811_ChannelWrite() //設(shè)置A/D通道號
WORD KP811_CheckSF_ReadFIFO() //軟件觸發(fā)A/D并讀取數(shù)據(jù)
void KP811_8254_CTRL_Write() //設(shè)置8254定時計數(shù)工作模式

(3)二維軌跡程序設(shè)計

利用VC++的MFC設(shè)計基于對話框的運動控制軌跡設(shè)計。以直線插補軌跡為例,實現(xiàn)從原點到指定位置的直線運動。部分程序如下:
void CMyDlg::OnOrigin()

…….
char ch1[10>,ch2[10>;
GetDlgItem(IDC_LOG_POS1)->GetWindowText(ch1,10);
GetDlgItem(IDC_LOG_POS2)->GetWindowText(ch2,10);
num1=atoi(ch1);
num2=atoi(ch2);
……

void CMyDlg::OnLine()

……
inp_move2(cardno,1, num1, num2);
……

3 實際運行中的關(guān)鍵問題分析和解決方法

(1)實際檢測信號的誤差

在控制端,定時器產(chǎn)生中斷,程序會去讀光柵尺檢測的實際位置值信號,同時暫停電機運行程序,等待校正結(jié)果。然而在負載端,如果在伺服電機還沒真正停穩(wěn)的時候去讀光柵尺檢測的實際位置值,就會產(chǎn)生檢測的誤差。解決方法可以通過中斷產(chǎn)生時給電機適當(dāng)?shù)难娱L一段時間,延時后再去檢測光柵尺的實際位置,然后再去校正。顯然這個延時的設(shè)置要考慮配合采樣周期的設(shè)定和伺服驅(qū)動器,伺服電機的性能。因為這個延時會隨著中斷數(shù)的增加形成積累,延時過長會影響系統(tǒng)的性能;延時也不能短過伺服驅(qū)動器和伺服電機的性能要求。

(2)采樣周期的確定

采樣周期決定著系統(tǒng)定位精度和響應(yīng)頻率。采樣周期越小,控制精度就越高,但會加大控制器的計算量,同時造成頻繁的中斷,減慢電機的運行速度和連續(xù)性,從而影響其響應(yīng)頻率。因此在實際選擇采樣周期時,必須從需要和可能兩方面綜合考慮。從控制系統(tǒng)的動態(tài)性能和抗干擾性能來考慮,要求采樣周期短些。這樣系統(tǒng)可以通過給定值的改變,快速定位,減小誤差,提高抗干擾性能。從響應(yīng)頻率來考慮,采樣周期則應(yīng)該取的長些,這樣可以減少DSP的計算量,減少電機運動的步數(shù),從而提高電機運行的速度和頻率,控制的連續(xù)性得到加強。從上述分析可以看到,各種因素對采樣周期的要求是不同的,甚至是相互矛盾的,因此,必須根據(jù)具體的情況和要求綜合做出選擇。實現(xiàn)方法為:在定時器的比較中斷中來改變采樣周期,實現(xiàn)系統(tǒng)控制的最優(yōu)化。

(3)光柵尺造成的讀數(shù)誤差

系統(tǒng)的精度就是依靠光柵尺保證,但光柵尺的安裝和環(huán)境溫度容易造成光柵尺的讀數(shù)誤差。首先要保證光柵尺的安裝與運行的導(dǎo)軌平行。另一個方面就是減少環(huán)境溫度對最后測量的影響,盡量在允許的環(huán)境條件下運行系統(tǒng)。

4 結(jié)論

本文通過在半閉環(huán)交流伺服控制系統(tǒng)的基礎(chǔ)上,構(gòu)建了全閉環(huán)控制系統(tǒng)。同時針對目前半閉環(huán)控制系統(tǒng)在市場已經(jīng)被普遍使用的實際情況,以及用戶希望加強控制系統(tǒng)的控制精度的目的,采用了基于PCI總線的數(shù)據(jù)采集卡和直線光柵尺。這種設(shè)計同基于PCI總線的運動控制卡和兩軸滾珠絲杠平臺相結(jié)合,簡化了控制程序的開發(fā)設(shè)計和硬件安裝。在保證系統(tǒng)的穩(wěn)定性的同時,提高了系統(tǒng)的控制精度的。

(轉(zhuǎn)載)

標簽:PCI總線 全閉環(huán)交流伺服 控制系統(tǒng) 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道