MCX314As型四軸運(yùn)動(dòng)控制器原理及應(yīng)用
MCX系列運(yùn)動(dòng)控制器是日本NOVA公司設(shè)計(jì)的專用電路,其中MCX314As是NOVA公司最新的推出的4軸運(yùn)動(dòng)控制器,是對(duì)MCX314功能的改進(jìn)和增強(qiáng)。
本文引用地址:http://www.ex-cimer.com/article/162389.htmMCX314As以單個(gè)電路同時(shí)控制4個(gè)伺服系統(tǒng)或步進(jìn)電機(jī)系統(tǒng),可進(jìn)行各軸獨(dú)立的定位控制、速度控制,亦可在任意2軸或3軸中進(jìn)行圓弧、直線、位模式插補(bǔ)。MCX314As能與8/16位數(shù)據(jù)總線接口,通過命令、數(shù)據(jù)和狀態(tài)等寄存器實(shí)現(xiàn)4軸3聯(lián)動(dòng)的位置、速度、加速度等的運(yùn)動(dòng)控制和實(shí)時(shí)監(jiān)控、實(shí)現(xiàn)圓弧、直線、位模式3種模式的軌跡插補(bǔ),輸出脈沖頻率達(dá)到4MHz,每軸都有伺服反饋輸入端、4個(gè)輸入點(diǎn)和8個(gè)輸出點(diǎn),能獨(dú)立地設(shè)置為恒速、線性、非對(duì)稱S曲線加/減控制、非對(duì)稱梯形加/減速控制方式,并有2個(gè)32位的邏輯、實(shí)際位置計(jì)數(shù)器和狀態(tài)比較寄存器,實(shí)現(xiàn)位置的閉環(huán)控制,另外,較MCX314增加了自動(dòng)搜尋原位、輸入信號(hào)濾波器、同步動(dòng)作、輸出脈沖32位,圓弧/直線插補(bǔ)脈沖范圍32位、完成S曲線加/減速的非對(duì)稱、手動(dòng)設(shè)定模式、位置計(jì)算器的可變環(huán)形、Z相輸入的實(shí)位計(jì)數(shù)器的清除、實(shí)位計(jì)算器的增減反轉(zhuǎn)等功能,同時(shí),MCX314As對(duì)連續(xù)插補(bǔ)最終寫入、圓弧插補(bǔ)終點(diǎn)指定、輸入U(xiǎn)P/DOWN脈沖的計(jì)算出錯(cuò)等作了相應(yīng)的改善。
2 內(nèi)部結(jié)構(gòu)和主要功能
圖1為MCX314As的功能框圖。由相同功能的X、Y、Z和U軸的控制部分和插補(bǔ)計(jì)數(shù)部分組成,主要功能如下:
2.1 4軸控制
MCX314As通過脈沖序列驅(qū)動(dòng)控制電機(jī)運(yùn)動(dòng),4軸運(yùn)動(dòng)控制器中的4個(gè)軸都具有相同的功能,允許至多3軸聯(lián)動(dòng),同時(shí)對(duì)于恒速驅(qū)動(dòng)、插補(bǔ)或S曲線驅(qū)動(dòng)都有相同的操作方法,S曲線加/減速驅(qū)動(dòng)等4軸的性能相同。
2.2 速度控制
對(duì)于恒速驅(qū)動(dòng)、插補(bǔ)或S曲線加/減速驅(qū)動(dòng),輸出脈沖的頻率范圍是1p/s-4mp/s,而輸出脈沖頻率的精度(時(shí)鐘頻率為16MHz)小于±0.1%,速度倍率為1-500,驅(qū)動(dòng)脈沖輸出的速度可以在不運(yùn)行時(shí)自由變化。
2.3 加/減速驅(qū)動(dòng)
MCX314As可以控制每根軸的恒速驅(qū)動(dòng)、插補(bǔ)的加/減速驅(qū)動(dòng)和S曲線加/減速驅(qū)動(dòng)。每個(gè)軸還可以被獨(dú)立地位置為S曲線或梯形加/減速,使用S曲線的加/減速命令可以使輸出脈沖按拋物線規(guī)律進(jìn)行加/減速。
2.4 插補(bǔ)功能
直線插補(bǔ):4軸中的任意2軸或3軸都可以實(shí)現(xiàn)直線插補(bǔ)運(yùn)動(dòng),運(yùn)動(dòng)位置邊界的坐標(biāo)介于-2147,483 646-+2 147 483
646之間,同時(shí)直線插補(bǔ)的位置誤差為±.05LSB(最小插補(bǔ)單位)。
圓弧插補(bǔ):任意2軸都能實(shí)現(xiàn)圓弧插補(bǔ),其插補(bǔ)坐標(biāo)的范圍與直線插補(bǔ)相同,圓弧插補(bǔ)的位置誤差為±1.0LSB(最小插補(bǔ)單位)。
位模式插補(bǔ):這種插補(bǔ)的數(shù)據(jù)由上位機(jī)CPU進(jìn)行計(jì)算,上位機(jī)將插補(bǔ)結(jié)果寫入MCX314As,然后,MCX314As在預(yù)置的驅(qū)動(dòng)速度下連續(xù)輸出插補(bǔ)脈沖,根據(jù)上位機(jī)CPU的處理能力,MCX314As可以對(duì)各種形狀的曲線進(jìn)行插補(bǔ)。
連續(xù)插補(bǔ):MCX314As允許不同的插補(bǔ)方式連續(xù)使用,例如直線插補(bǔ)→圓弧插補(bǔ)→直線插補(bǔ)→……,不間斷的連續(xù)插補(bǔ)時(shí)允許的最大插補(bǔ)速度為2Mp/s。
2.5 位置控制
每個(gè)軸都有一個(gè)32位的邏輯位置計(jì)算器和一個(gè)32位的實(shí)際位置計(jì)算器,邏輯位置計(jì)算器記錄輸入的位置脈沖,實(shí)際位置計(jì)算器記錄從外部編碼器或者線性比例尺輸入的反饋脈沖。
2.6 比較寄存器和軟件限位
每個(gè)軸都有2個(gè)32位比較寄存器,一個(gè)為邏輯位置計(jì)數(shù)器,另一個(gè)為實(shí)際位置機(jī)計(jì)數(shù)器。比較結(jié)果可從狀態(tài)寄存器讀出,也可以通過中斷報(bào)出,這些寄存器也可以被用來實(shí)現(xiàn)軟件限位。
2.7 自動(dòng)搜索原位功能
MCX314As在不需要CPU干涉下可以完成自動(dòng)搜索為原位的工作,這個(gè)過程包括高速原位搜索→低速原位搜索→編碼器Z相搜索→補(bǔ)償驅(qū)動(dòng)。這種功能減少了CPU的負(fù)擔(dān)。
2.8 同步運(yùn)行
同步運(yùn)行可實(shí)現(xiàn)一些特殊功能,例如在每個(gè)軸或2個(gè)軸或與該電路相連的外部器件產(chǎn)生的激勵(lì)信號(hào)能使運(yùn)行同步開始或停止,可以使用10種類型的激勵(lì)信號(hào),其中包括特殊位置、軸運(yùn)動(dòng)時(shí)的開始/停止和輸入信號(hào)的脈沖上升沿/下降沿。4種運(yùn)行的響應(yīng)包括軸運(yùn)動(dòng)的開始/停止、保存位置的計(jì)算值和寫入軸運(yùn)行的速度等。
2.9 輸入信號(hào)過濾
MCX314As具有對(duì)每個(gè)輸入信號(hào)進(jìn)行濾波的功能,并且可以設(shè)置輸入的信號(hào)是否進(jìn)行濾波還是直接進(jìn)入電路,濾波的時(shí)間常數(shù)可以選擇。
3 主要控制寄存器及指令系統(tǒng)
3.1 命令寄存器(WR0)
MCX314As中各軸的WR0寄存器用來進(jìn)行各軸設(shè)定和命令寄存,它包括軸設(shè)定的各位、命令字設(shè)定的各位以復(fù)位命令的各位。在向此寄存器寫入軸設(shè)定字和命令自后,它將立即執(zhí)行,某些命令在寫入WR0之前應(yīng)先寫入WR6和WR7。
3.2 模式寄存器(WR1)
4都有各自的狀態(tài)寄存器1,寫哪個(gè)寄存器取決于NOP指令的指定或?qū)懬暗那闆r,WR1可以控制輸入信號(hào)IN3-IN0的使能,并用于設(shè)定減速狀態(tài)和比較結(jié)果寄存器。
3.3 模式寄存器2(WR2)
WR2設(shè)定外部限位開關(guān)輸入、反饋計(jì)數(shù)器脈沖類型及伺服驅(qū)動(dòng)的反饋信號(hào)。
3.4 模式寄存器3(WR3)
4個(gè)軸都有各自的WR3,讀哪個(gè)狀態(tài)寄存器取決于已被指定的軸或NOP指令指定的軸。WR3可用于操作手動(dòng)減速、單獨(dú)減速、S曲線加/減速、外部操作模式設(shè)定和通用輸出OUT7-OUT4的設(shè)定。
3.5 輸出寄存器(WR4)
該寄存器用于設(shè)定4軸的輸出信號(hào)nOUT3-nOUT0,它也可以被用作16位的通用輸出,若某位置0,將會(huì)輸出低電平;置1將會(huì)輸出高電平。
3.6 主狀態(tài)寄存器(RR0)
該寄存器用來顯示各軸驅(qū)動(dòng)和錯(cuò)誤的狀態(tài),此外,它還顯示插補(bǔ)、連續(xù)插補(bǔ)的就緒信號(hào)、圓插補(bǔ)的象限和BP插補(bǔ)的棧計(jì)數(shù)。
3.7 狀態(tài)寄存器(RR1、RR2、RR3)
每個(gè)軸都有狀態(tài)寄存器RR1、RR2和RR3。讀取哪個(gè)狀態(tài)寄存器,取決于寫入MCX314As的命令,命令10FH表示X軸,20FX表示Y軸,40FH表示Z軸,80FH表示U軸。
3.8 輸入寄存器(RR4/RR5)
RR4和RR5為通用寄存器,如果寄存器的數(shù)據(jù)位為0,則輸出為低電平,若數(shù)據(jù)位為1,則輸出為高電平。
3.9 數(shù)據(jù)寄存器(RR6/RR7)
RR6和RR7是數(shù)據(jù)寄存器并對(duì)相應(yīng)的數(shù)據(jù)讀取命令。RR6存放低16位(D15-D0),RR7存放高16位(D31-D16)。
3.10 寫數(shù)據(jù)命令
設(shè)置驅(qū)動(dòng)參數(shù)的如加速度、驅(qū)動(dòng)速度、輸出脈沖數(shù)時(shí),要用寫數(shù)據(jù)命令,以將這些參數(shù)/數(shù)據(jù)寫入MCX314As,如果同時(shí)指定多軸,可以對(duì)不同的軸同時(shí)寫入相同的數(shù)據(jù),如果數(shù)據(jù)長度是2B,只需把數(shù)據(jù)寫入WR6,如果數(shù)據(jù)長度大于2B,則高16位寫入WR7,低16位寫入WR6。數(shù)據(jù)寫入數(shù)據(jù)寄存器后,向WR0寫入命令設(shè)定軸,然后執(zhí)行命令。
3.11 讀取數(shù)據(jù)指令
數(shù)據(jù)讀寫命令用來讀取各軸寄存器的值。當(dāng)向WR0寫入讀命令后,數(shù)據(jù)將出現(xiàn)在RR6和RR7中,要讀取的數(shù)據(jù)是二進(jìn)制的,負(fù)值為二進(jìn)制補(bǔ)碼形式。
3.12 驅(qū)動(dòng)命令
驅(qū)動(dòng)命令將控制MCX314As以不同的方式輸出驅(qū)動(dòng)脈沖。當(dāng)向WR0寫入命令代碼并制訂控制軸后,該命令被立即執(zhí)行??梢酝瑫r(shí)用同一命令指定多軸,運(yùn)行時(shí),每個(gè)軸的RR0的nDRV位將置為1,當(dāng)運(yùn)行結(jié)束時(shí),nDRV位置0。
3.13 插補(bǔ)命令
插補(bǔ)命令由2軸或3軸直線插補(bǔ)、順時(shí)針/逆時(shí)針圓弧插補(bǔ)、2軸或3軸位模式插補(bǔ)和其他有關(guān)命令組成,當(dāng)向WR0寫入插補(bǔ)命令時(shí),置WR0的D8-D1位為0,因?yàn)閷?duì)插補(bǔ)命令沒有必要指定軸。
在執(zhí)行插補(bǔ)命令之前,必須先執(zhí)行以下2步:通過設(shè)置WR5的D5-D0位來指定要插補(bǔ)的軸;設(shè)定主軸的速度參數(shù)。
評(píng)論