基于DSP+CPLD 可重構(gòu)數(shù)控系統(tǒng)的設(shè)計與仿真
1、前言
隨著計算機技術(shù)的高速發(fā)展,各工業(yè)發(fā)達國家投入巨資,對現(xiàn)代制造技術(shù)進行研究開發(fā),提出了全新的制造模式,其核心思想之一是柔性化制造,制造系統(tǒng)能夠隨著加工條件的變化動態(tài)調(diào)整。目前,各類MCU 快速發(fā)展,它們不僅運算速度快、價格便宜、種類繁多,而目不同M CU 針對不同的應(yīng)用在其片上集成了專用控制電路,滿足了不同的應(yīng)用需求還提高了電路的安全性和穩(wěn)定性。綜合上述的分析與論證,本文設(shè)計了一種基于DSP+CPLD 現(xiàn)場可編程門陣列器件的可重構(gòu)數(shù)控系統(tǒng)。
2、硬件設(shè)計
本運動控制卡是以PC 機作為主機的運動控制卡,選用DSP 作為核心微處理器,卡上集成編碼器信號采集和處理電路,D/A輸出電路,擴展存儲器電路和PC-DSP通訊電路。PC機把粗處理的數(shù)據(jù)通過DSP-PC 通訊接口傳遞給運動控制系統(tǒng),DSP通過對光電編碼器反饋信號處理電路的結(jié)果分析,計算出與給定位置的誤差值,再通過軟件位置調(diào)節(jié)器獲得位置控制量,計算出運動速度控制量,產(chǎn)生的輸出信號經(jīng)D/A 轉(zhuǎn)換將模擬電壓量送給伺服放大器,通過對伺服電機的控制實現(xiàn)對位置的閉環(huán)控制。系統(tǒng)的結(jié)構(gòu)框圖如圖 1 所示。
選用美國TI公司的16位定點DSPTMS320LF2407A作為本運動控制器的核心處理器,地址譯碼、時序邏輯、編碼器信號處理電路用CPLD來完成,用PCI 接口芯片實現(xiàn)雙口RAM與PC 機的通訊,雙口RAM用來存儲和緩沖DSP與PC 機間的通訊數(shù)據(jù),SRAM用來存儲運動控制器運行時的程序和數(shù)據(jù)。
(1).DSP外部中斷接口處理
對于數(shù)控機床來說,由于受工作行程等各方面的限制,在其超過控制范圍時,引入包括限位中斷和編碼器INDEX 信號中斷。每個控制軸有正反方向的兩個限位開關(guān),產(chǎn)生兩個限位信號,4 個軸共8 個限位信號:LIMA+, LIMA -、LIMB +, LIMB -、LIMC +, LIMC-,LIMD+, LIMD -其中“+”表示正限位,“-”表示負限位。這幾個信號通過CPLD 的相與之后接到DSP 的中斷管腳XINT1,同時這些信號通過光藕電路接入DSP的I/O 口。當運動到限位開關(guān)處時,就會觸發(fā)DSP的外部中斷信號XINT1,然后DSP就可以根據(jù)I/O 判定是哪個限位開關(guān)超過工作范圍。8 個限位開關(guān)分別接到DSP 的I/O 口,通過設(shè)置MCRA(地址:7090H),MCRB(地址:7092H)為零,使這些復(fù)用管腳處于I/O 功能。限位輸入信號的狀態(tài)可以從寄存器PADATDIR(地址:7098H )和PBDATDIR(地址:709AH)對應(yīng)的數(shù)據(jù)位讀取,對應(yīng)的數(shù)據(jù)方向位設(shè)為零,以使這些I/O 管腳工作在“輸入”狀態(tài)下。編碼器的INDEX信號處理同上面相類似。每個軸能產(chǎn)生一個INDEX 信號,4 個軸有4個INDEX 信號。這4 個信號通過邏輯與門產(chǎn)生一個中斷信號,接到XINT2,同時接到DSP 的I/O 口,供中斷產(chǎn)生時DSP讀入。
(2).四軸編碼器信號處理電路設(shè)計
四軸編碼器信號處理電路是對光電編碼器輸出的兩組相差90o 的方波信號的處理,從而獲得執(zhí)行元件實際位置,其輸出是一路16 位的數(shù)字量,反饋給中央處理器,編碼器信號處理電路包括濾波,倍頻,計數(shù)幾個功能模塊,傳統(tǒng)的四軸編碼器信號處理電路采用分立元件來設(shè)計,它可靠性、抗干擾能力差,應(yīng)用CPLD 設(shè)計了單片并行四軸編碼器信號處理電路。
它具有實時性好,硬件體積小,工作效率高,提高系統(tǒng)的集成度,相對于分立元件,單片并行四軸編碼信號處理電路集成在一個片子上,一方面單片芯片內(nèi)的門電路、觸發(fā)器的參數(shù)特性是完全一致的,在相同轉(zhuǎn)速下脈沖信號的脈沖周期可以保持一致。另一方面,電路做在單個芯片內(nèi),抗干擾性能比分離器件構(gòu)成的電路也有很大的提高,增強了系統(tǒng)的靈活性、通用性和可靠性。本文設(shè)計是一個四軸伺服系統(tǒng),因此有八路四組方波信號,A 相B相相差90o,CLR,CLK,WE 分別為輸出清零,系統(tǒng)時鐘和輸出使能,SEL*是輸出選擇信號,選擇X,Y,Z,A中的一組信號處理的結(jié)果作為輸出信號,分時送到數(shù)據(jù)總線。
濾波模塊的設(shè)計
編碼盤理論上是穩(wěn)定的方波信號,但在實際操作中,經(jīng)常會存在脈動干擾,濾波模塊的功能是將這些脈動干擾濾掉,降低系統(tǒng)產(chǎn)生誤動作的可能性,提高系統(tǒng)的可靠性,下面的VHDL 程序通過對A,B 兩相方波信號同時延時四個CLK 脈沖,,脈沖寬度小于三個CLK脈沖周期的輸入信號被濾掉。仿真結(jié)果如圖:
倍頻計數(shù)模塊的設(shè)計
四倍頻電路的設(shè)計是為了增加計數(shù)脈沖在一個周期中的個數(shù),來提高測量的分辨率,工程中常把光電編碼器輸出的兩路方波信號的上升沿和下降沿,來獲得四倍頻的脈沖信號,把光電編碼器的分辨率提高四倍,通過光電編碼器輸出兩路方波信號相差的正負來確定運動的方向,對光電編碼器輸出信號A、B;可以寫成:
如圖:
在一個周期內(nèi)產(chǎn)生的四倍頻計數(shù)脈沖輸出S,方向判別信號J,通過一個16 位可逆計數(shù)就可以實現(xiàn)對伺服裝置的位置檢測,實現(xiàn)位置伺服控制系統(tǒng)的控制。
3、控制算法的設(shè)計
?。?).控制模型
數(shù)控機床的最高運動速度、跟蹤精度、定位精度等重要指標均取決于驅(qū)動及位置控制系統(tǒng)的動態(tài)與靜態(tài)性能。因此,研究與開發(fā)高性能的驅(qū)動系統(tǒng)及位置控制系統(tǒng),一直是研究數(shù)控機床的關(guān)鍵技術(shù)之。日前數(shù)控機床位置伺服控制仍然普遍應(yīng)用經(jīng)典控制方法,如比例型或比例一積分型等算法,其優(yōu)點是算法簡便,易于實現(xiàn),但存在著控制參數(shù)的適應(yīng)性差、抗十擾能力不強等缺陷。為了適應(yīng)制造業(yè)對高效率地生產(chǎn)高質(zhì)量產(chǎn)品日標的追求以及對形狀愈來愈復(fù)雜零件的加工需要,要求不斷地改善與提高位置伺服系統(tǒng)的穩(wěn)態(tài)精度、動態(tài)響應(yīng)特性,對系統(tǒng)參數(shù)變化的自適應(yīng)性和抗干擾性,因而采用并發(fā)展先進的控制技術(shù)是必然趨勢。可惜的是,目前提出的諸多控制算法中,具有實用價值的技術(shù)極少,主要表現(xiàn)在:①受算法計算量等限制,難以滿足控制的實時性要求;②控制理論在參數(shù)設(shè)計及穩(wěn)定性分析等方面不完善;③建模誤差對控制品質(zhì)的限制。
本文利用神經(jīng)網(wǎng)絡(luò)的自學(xué)習(xí)功能,設(shè)計了一種在線單神經(jīng)元PID 與CMAC 并行控制智能型位置控制器,并將之用到數(shù)控系統(tǒng)的實時控制中,取得了很好的控制效果,控制模型結(jié)構(gòu)如圖:
(2)仿真和實現(xiàn)
采用的單神經(jīng)元PID及CMAC 相結(jié)合的復(fù)合控制算法,完成對位置伺服控制器典型輸入斜坡輸入響應(yīng)的仿真實驗。圖5 是位置伺服系統(tǒng)的單位斜坡輸入在輸入端加入10%的階躍擾動后,兩種控制算法的輸出曲線圖,通過對圖形的分析,可以看出,單神經(jīng)元PID 與CMAC相結(jié)合控制算法比常規(guī)PID 控制算法有更小的跟隨誤差,和更好的抗干擾能力。這個在位置伺服控制系統(tǒng)中更為重要。
4、結(jié)束語
利用計算控制功能強大的DSP 芯片構(gòu)建了數(shù)控系統(tǒng)平臺,應(yīng)用CPLD 解決了系統(tǒng)不同應(yīng)用場合邏輯電路變化的問題,從硬件上實現(xiàn)了可重構(gòu)性??刂扑惴ㄝ^常規(guī)PID 控制有更好的動態(tài)特性、控制精度、抗干擾能力,而且具有自適應(yīng)功能。該系統(tǒng)是一種開放的系統(tǒng),可以使用戶很方便的不斷進行軟、硬件升級,一定時間內(nèi)跟上數(shù)控技術(shù)發(fā)展的步伐。