時(shí)間:2017-12-19 11:04:37來源:網(wǎng)絡(luò)轉(zhuǎn)載
1引言
PCL6143是美國NPM公司設(shè)計(jì)的一款高性能、低成本的專用運(yùn)動控制器。該器件具有智能化、高柔性等特點(diǎn)。用戶通過簡單的內(nèi)部控制指令就能實(shí)現(xiàn)直線插補(bǔ)、圓弧插補(bǔ)、梯形加減速和S曲線加減速等控制功能。PCL6143適用于高速數(shù)控機(jī)床、機(jī)器人、紡織包裝機(jī)械等運(yùn)動控制領(lǐng)域,是開發(fā)運(yùn)動控制系統(tǒng)設(shè)備的良好選擇。
2PCL6143功能結(jié)構(gòu)
PCL6143內(nèi)部結(jié)構(gòu)框圖如圖1所示,PCL6143的主要功能如下:
CPU-I/F接口模式:PCL6143內(nèi)部集成有各種不同接口電路,允許與4種類型的CPU連接,分別是Z80、8086、H8和68000。通過設(shè)置IF0、IF1引腳,便于與CPU相連,實(shí)現(xiàn)8位或16位數(shù)據(jù)傳輸。
加減速驅(qū)動:每個(gè)軸都能實(shí)現(xiàn)線性加減速驅(qū)動和S曲線加減速驅(qū)動。在S曲線加減速驅(qū)動過程中,可插入線性加減速控制。
插補(bǔ)驅(qū)動功能:4軸中的任何2軸、3軸或4軸都能實(shí)現(xiàn)直線插補(bǔ),其直線插補(bǔ)的位置精度為+LSB(最小插補(bǔ)單位)。
速度與位置控制功能:在單軸控制過程中,用戶可根據(jù)需要改變當(dāng)前被控軸速度;而在線性插補(bǔ)時(shí),則不允許改變速度。當(dāng)實(shí)際位置超過指定位置時(shí),電機(jī)將減速停止或立即停止,接著反方向進(jìn)給。多個(gè)計(jì)數(shù)器與比較器電路:每個(gè)軸都有4個(gè)獨(dú)立的28位計(jì)數(shù)器和2個(gè)比較器電路。每個(gè)比較器可實(shí)現(xiàn)邏輯計(jì)數(shù)值與實(shí)際目標(biāo)值相比較。
同步啟動/停止功能:多軸控制可采用一個(gè)PCL6143或多個(gè)PCL6143實(shí)現(xiàn),并通過相關(guān)指令控制多個(gè)軸同時(shí)啟停。
操作模式:具有連續(xù)、位模式、原點(diǎn)返回、線性插補(bǔ)等基本操作。通過設(shè)置操作模式寄存器(RMD)設(shè)定各個(gè)基本操作,實(shí)現(xiàn)位置、方向、速度等控制。
機(jī)械輸入信號:每個(gè)軸有4個(gè)機(jī)械輸入信號,即正負(fù)限位信號、減速信號和原點(diǎn)信號。這些信號可通過軟件和限位使能信號設(shè)置,實(shí)現(xiàn)正負(fù)方向進(jìn)給軸的減速運(yùn)動、減速停止運(yùn)動以及原點(diǎn)返回。伺服電機(jī)接口信號:伺服電機(jī)接口信號包括到位信號、計(jì)數(shù)器偏差清除信號和報(bào)警信號。這些接口信號可由軟件編程設(shè)置,并通過伺服馬達(dá)控制位置狀態(tài)和清除計(jì)數(shù)器偏差值。當(dāng)報(bào)警信號有效時(shí),各個(gè)運(yùn)動軸立即停止。
中斷產(chǎn)生功能:9種錯(cuò)誤發(fā)生中斷,14種事件發(fā)生中斷。通過中斷輸出信號控制電機(jī)的運(yùn)動和停止。當(dāng)外部錯(cuò)誤狀態(tài)發(fā)生時(shí),中斷產(chǎn)生。通過設(shè)置中斷發(fā)生寄存器(RIRQ),確定輸出事件是否中斷。
前瞻功能:在處理當(dāng)前數(shù)據(jù)時(shí),下一操作數(shù)據(jù)被提前寫入預(yù)置寄存器;在當(dāng)前操作結(jié)束時(shí),預(yù)置寄存器中的數(shù)據(jù)立即被送往當(dāng)前寄存器。
3主要寄存器及相關(guān)系統(tǒng)指令
3.1主要寄存器
預(yù)置寄存器:指令在當(dāng)前執(zhí)行過程中,寄存器預(yù)先處理接下來的操作指令,PCL6143有11個(gè)預(yù)置寄存器,能夠?qū)崿F(xiàn)對目標(biāo)位置、速度狀態(tài)、速度放大率、加減速率、減速啟動、操作模式、主軸進(jìn)給脈沖數(shù)、S曲線加減速范圍等各種操作控制。
環(huán)境設(shè)置寄存器(RENV1、RENV2、RENV3):PCL6143有3個(gè)環(huán)境設(shè)置寄存器。主要用于設(shè)置輸入/輸出端口、指定通用I/O端口、A/B編碼器、外部脈沖信號功能以及計(jì)數(shù)功能、鎖存功能和同步啟動功能。
數(shù)據(jù)比較寄存器(RCMP1、RCMP2):PCL6143有2個(gè)數(shù)據(jù)比較寄存器,用于設(shè)定比較值的大小,實(shí)現(xiàn)比較器1和比較器2的比較。設(shè)置范圍為:
-134217728~+134217727。
中斷寄存器(RIRQ、REST、RIST):中斷寄存器為事件中斷發(fā)生寄存器(RIRQ)、錯(cuò)誤中斷狀態(tài)寄存器(REST)和事件中斷狀態(tài)寄存器(RIST)。這些中斷寄存器是用于使能事件產(chǎn)生中斷、檢查錯(cuò)誤產(chǎn)生中斷和事件產(chǎn)生中斷。當(dāng)中斷產(chǎn)生時(shí),寄存器的相應(yīng)位置為1。
自動計(jì)算減速開始寄存器(RSDC):該寄存器用于檢查位置操作時(shí)自動計(jì)算減速開始位置值。
3.2操作指令
設(shè)置軸狀態(tài)控制寄存器(COMB1)實(shí)現(xiàn)各個(gè)軸的選取。向?qū)懣刂浦噶罴拇嫫鳎–OMB0)寫入實(shí)現(xiàn)啟動或停止PCL6143以及改變其輸出脈沖的速度。操作指令包含啟動指令(直接啟動指令、脈沖啟動指令、同步啟動指令)、速度變化指令以及停止指令(直接停止指令、同步停止指令、急停指令)。
3.3控制指令
PCL6143提供各種控制指令,實(shí)現(xiàn)PCL6143的軟件復(fù)位、計(jì)數(shù)器復(fù)位、計(jì)數(shù)器偏差清零輸出控制、寄存器預(yù)置控制、位置啟動輸入、計(jì)數(shù)器鎖存輸入、寄存器控制、通用輸出端口控制及通用輸出位控制。
4應(yīng)用電路
4.1運(yùn)動控制卡的硬件設(shè)計(jì)
4軸運(yùn)動控制卡是以PCL6143為核心,選用PC104總線作為運(yùn)動控制卡與PC機(jī)之間的通訊方式。PCL6143的16位數(shù)據(jù)通過74LS245與PC104總線連接,這樣便于實(shí)現(xiàn)與各種PC104總線標(biāo)準(zhǔn)的主控制板連接。為提高系統(tǒng)的可靠性、集成化與柔性化,PC104總線的地址譯碼、數(shù)據(jù)指令的讀寫、中斷信號以及復(fù)位信號都可利用CPLD可編程邏輯器件實(shí)現(xiàn)。PC機(jī)經(jīng)過地址譯碼選中PCL6143片選信號,通過讀寫信號和數(shù)據(jù)總線,設(shè)置PCL6143內(nèi)部寄存器,以實(shí)現(xiàn)各種運(yùn)動控制。4軸運(yùn)動控制卡的硬件框圖如圖2所示。
PCL6143控制每個(gè)軸的方向與脈沖輸出信號、通用I/O端口輸出信號、正負(fù)方向限位信號、減速停止信號、原點(diǎn)信號、伺服報(bào)警信號、編碼器輸入信號及外部手輪正負(fù)方向信號等。
PCL6143的方向脈沖輸出信號分為正負(fù)脈沖方式和脈沖方向方式,方向脈沖輸出信號經(jīng)高速光電耦合器進(jìn)行信號隔離,最后通過AM26LS31輸出差分信號來控制外部電機(jī)。通用I/O端口信號由內(nèi)部寄存器進(jìn)行輸人/輸出設(shè)置,作為輸出使能控制電機(jī)驅(qū)動器,實(shí)現(xiàn)計(jì)數(shù)器誤差清除、報(bào)警復(fù)位等功能,或作為加減速、位置計(jì)數(shù)器和比較寄存器狀態(tài)設(shè)置。正負(fù)方向限位信號、減速停止信號、原點(diǎn)信號和伺服報(bào)警信號通過光電耦合器與內(nèi)部信號隔離,實(shí)現(xiàn)系統(tǒng)保護(hù)、電機(jī)驅(qū)動停止、系統(tǒng)原點(diǎn)確認(rèn)以及電機(jī)驅(qū)動異常的控制。A/B相和Z相編碼器信號通過高速光電耦合器與內(nèi)部線路隔離;編碼器A/B相檢測電機(jī)的實(shí)際位置,并通過位置計(jì)數(shù)器增減計(jì)數(shù);在原點(diǎn)返回操作模式中,Z相編碼器信號用于輸入一個(gè)標(biāo)志信號,該信號還能改善原點(diǎn)返回操作精度。外部手輪正負(fù)方向信號通過光電耦合器與內(nèi)部電路隔離,該信號還可通過手動脈沖或外部開關(guān)信號產(chǎn)生外部脈沖信號。急停輸入信號通過光電耦合器與內(nèi)部電路隔離,有效時(shí),各個(gè)軸立即停止工作。
4.2功能函數(shù)庫的編寫
PCL6143具有靈活強(qiáng)大的控制模塊,按照一定的序列操作內(nèi)部寄存器,實(shí)現(xiàn)各種復(fù)雜的運(yùn)動控制功能。為方便用戶二次開發(fā),需將一系列內(nèi)部寄存器的操作序列封裝成各個(gè)函數(shù),這些函數(shù)就構(gòu)成了運(yùn)動控制卡的功能函數(shù)庫。用戶通過調(diào)用功能函數(shù)庫中相應(yīng)的函數(shù)就可對PCL6143內(nèi)部寄存器進(jìn)行讀寫操作。
功能函數(shù)庫編寫好后,用VisualC++編程工具編寫上層應(yīng)用軟件,與功能函數(shù)庫鏈接,開發(fā)獨(dú)立的控制系統(tǒng)。運(yùn)動控制卡的操作流程如圖3所示。
由此可見,功能函數(shù)庫在控制系統(tǒng)中非常重要。作者采用C語言編寫4軸運(yùn)動控制卡的功能函數(shù)庫,按功能可分為:
初始化函數(shù):定義PCL6143輸入/輸出引腳、相關(guān)寄存器地址、常用變量和數(shù)據(jù)結(jié)構(gòu),設(shè)置控制軸數(shù)和操作模式。
運(yùn)動驅(qū)動函數(shù):包含獨(dú)立運(yùn)動函數(shù)和插補(bǔ)驅(qū)動函數(shù)。獨(dú)立運(yùn)動函數(shù)用于實(shí)現(xiàn)各個(gè)獨(dú)立軸的連續(xù)控制、越限控制和回原點(diǎn)等操作;插補(bǔ)驅(qū)動函數(shù)用于實(shí)現(xiàn)4軸中的任意2軸、3軸或4軸的直線插補(bǔ)和圓弧插補(bǔ);
I/O端口操作函數(shù):包含輸入信號的輸入函數(shù)、輸出信號的輸出函數(shù)以及反饋位置信號的輸入函數(shù),用以獲取邏輯位置、輸入/輸出點(diǎn)狀態(tài)的控制。加/減速控制函數(shù):包括線性加減速函數(shù)和S曲線加減速函數(shù)。
中斷信號驅(qū)動函數(shù):管理內(nèi)部中斷寄存器以及控制外部異常情況。
其他輔助函數(shù):包括位置、狀態(tài)的查詢與設(shè)置等相關(guān)函數(shù)。
需要注意的是,不同的操作模式和運(yùn)動控制,其寄存器的讀寫參數(shù)也不相同,具體操作步驟也有相應(yīng)要求。
5結(jié)束語
詳細(xì)介紹了PCL6143的內(nèi)部結(jié)構(gòu)、主要寄存器以及相關(guān)指令系統(tǒng),結(jié)合實(shí)際應(yīng)用,設(shè)計(jì)一款4軸運(yùn)動控制卡,并給出了相關(guān)運(yùn)動庫函數(shù),具有實(shí)際的應(yīng)用價(jià)值和市場推廣前景。
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。