galil應(yīng)用編程指南_第1頁
galil應(yīng)用編程指南_第2頁
galil應(yīng)用編程指南_第3頁
galil應(yīng)用編程指南_第4頁
galil應(yīng)用編程指南_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、GALIL 數(shù)字運(yùn)動控制器應(yīng)用編程指南( V1.0 )目錄:一、概述3二、程序的編輯、 存儲、下載及執(zhí)行31、程序編輯32、程序存儲33、下載程序34、執(zhí)行程序4三、基于 GALIL 兩字符命令集的編程應(yīng)用舉例4(一)、GALIL兩字符命令集4(二)、運(yùn)動編程91、概述92、命令格式93、運(yùn)動命令104 、運(yùn)動編程101)、 PTP 定位102)、 JOG 方式103)、 2D 直線和圓弧插補(bǔ)114)、進(jìn)給率修調(diào)125)、直線插補(bǔ)146)、陣列157)、電子齒輪168)、比例運(yùn)動179)、控制變量1810)、 I/O 接口1811)、多任務(wù)1912)記錄數(shù)據(jù)方式2013)AUTOCAD 圖形文

2、件 .DXF 轉(zhuǎn)化成 .DMC 程序21(三 )、應(yīng)用編程舉例24四、基于 VB 語言的編程及其 ActiveX 控件31(一)、概述31(二)、在 VB 開發(fā)界面下添加 ActiveX 控件31(三)、 VB 語言的編程舉例32五、基于 VC/C/C+ 語言的編程及其動態(tài)鏈接庫(DLLs )34附錄:35一、概述DMC數(shù)字運(yùn)動控制器是一種智能型控制器,內(nèi)部有 32位高速處理器、Flash 存儲器和動態(tài)RAM能夠進(jìn)行高速插補(bǔ)運(yùn)算、數(shù)據(jù)處理、I/O事件管理、存儲用 戶程序、參數(shù)、變量、數(shù)組陣列;GALIL公司為廣大用戶提供了多種編程應(yīng)用方 法:(1)、基于兩字符命令集的編程應(yīng)用;(2)、基于VB

3、語言的編程及其ActiveX 控件;(3)基于VC/C/C+h語言的編程及其動態(tài)鏈接庫 DLLS以上幾種方法可以在當(dāng)前所有版本的DOS、 Windows、 Linux 、 NT、 LabView環(huán)境下運(yùn)行。對于一些高級應(yīng)用,還提供了 AUTOCA生成的.DXF文檔自動轉(zhuǎn)換 軟件,將.DXF格式文檔轉(zhuǎn)換成運(yùn)動控制命令,控制各坐標(biāo)軸作軌跡運(yùn)動;也可 以將.PLT格式的文檔轉(zhuǎn)換成運(yùn)動控制命令; G code TO DMC軟件工具是將G代 碼轉(zhuǎn)換成運(yùn)動控制命令。另外,還提供了電子凸輪生成軟件工具ECA M只要簡單的將所要求的參數(shù)輸入表格內(nèi)即可自動生成ECAM1動控制程序。二、程序的編輯、存儲、下載及執(zhí)

4、行1、程序編輯當(dāng)設(shè)備需要進(jìn)行復(fù)雜的運(yùn)動時, 就需要根據(jù)所運(yùn)動的軌跡來編寫程序。 編寫 程序有一個編輯窗口, 在 Terminal 的界面下, 有兩種方法可以進(jìn)入編輯窗口。 一 是用鼠標(biāo)點(diǎn)擊Editor按鈕,立即出現(xiàn)編輯窗口;二是在Terminal下輸入命令“ED” (注:命令必須用大寫的英文字母,否則為無效的命令)也可進(jìn)入編輯頁面。編 寫程序時,一定要注意,程序開頭要有標(biāo)號, 標(biāo)號是以 #XXXXXX 表示, XXXXXX 中第一位必須是大寫的英文 字母,后面的五位既可以是英文字母,也可以是數(shù)字,或是兩者的結(jié)合。但不能 超過六位,如果超過了六位,程序只認(rèn)前六位。另外,在一個程序中不能出現(xiàn)兩 個

5、相同的程序標(biāo)號(例如程序中的子程序) ,否則程序出錯。另外,程序結(jié)尾必須有結(jié)束命令“ EN”,否則程序運(yùn)行時出錯。程序的命令 詳見后面的命令集;編程格式見后面的應(yīng)用編程舉例。2、程序存儲當(dāng)程序編寫完畢以后, 為了防止誤操作造成程序丟失或其他人員修改編寫的 程序,編程人員都需要保存編寫的程序。點(diǎn)擊“File”菜單,其下拉菜單中有“Save, 點(diǎn)擊出現(xiàn)一窗口,輸入要保存的文件名,點(diǎn)擊“保存” ,程序就保存在計算機(jī)的 硬盤上,其后綴名為 .DMC。3、下載程序程序編寫完畢以后, 必須把程序下載到數(shù)字運(yùn)動控制器中方可運(yùn)行程序。 其 下載方法是:點(diǎn)擊“ File”菜單,其下拉菜單中有“ Download

6、 File”,點(diǎn)擊出現(xiàn)計 算機(jī)忙的圖標(biāo),稍等幾分鐘,當(dāng)忙的圖標(biāo)變成可以運(yùn)行的圖標(biāo) 以后,程序就下載完畢,關(guān)閉編輯窗口,退回到“Terminal”窗口。在“Terminal” 窗口下輸入命令“ BP”把程序燒錄到控制器的Flash中,防止突然停電或執(zhí)行命 令“RS”,造成程序丟失??梢杂妹睢?LS”讀控制器中的程序是不是所編寫的 程序。4、 執(zhí)行程序一切都準(zhǔn)備完畢(GALIL與伺服的接線都已完成,I/O觸發(fā)信號所需要的接 線都接好,例如輸入/輸出點(diǎn)的公共電源)假設(shè)程序的標(biāo)號為#A,要執(zhí)行該程序, 輸入命令“ XQ#A ”,所編寫的程序如果沒有錯誤,程序就開始執(zhí)行。否則就會 出現(xiàn)程序的某一命令處

7、出現(xiàn)錯誤,這時就需要根據(jù)報警的提示檢查程序。檢查無 誤后,重新執(zhí)行程序。當(dāng)需要設(shè)備一上電,程序就執(zhí)行。只要把程序的標(biāo)號編寫成“ #AUTO ”即 可。只要這個程序已經(jīng)燒錄到控制器中,控制器一上電或執(zhí)行命令“ RS”以后, 該程序就開始執(zhí)行。三、基于GALIL兩字符命令集的編程應(yīng)用舉例(一)、GALIL兩字符命令集以下的命令集只是簡單的介紹,要了解命令的格式、詳細(xì)的介紹以及命令的 定義范圍。見 GALIL的各種型號的“ Comma nd Refere neg。運(yùn)動命令A(yù)BAbort moti on急停ACAeeeleratio n設(shè)定加速度BGBeg in moti on開始運(yùn)動CDCon to

8、ur data輪廓數(shù)據(jù)(連續(xù)路徑之位移增量)CMCon tour mode輪廓方式(連續(xù)路徑方式)CRCircle圓弧運(yùn)動(半徑、角度之設(shè)定)CSClear moti on seque nee清除矢量程序DCDeeelerati on減速度DTCon tour time in terval Delta, Time取樣時間間隔(輪廓方式)EASeleet Master eam axis選定凸輪運(yùn)動的主動軸EBEn able eam mode激活凸輪運(yùn)動方式ECECAM Cou nter設(shè)定凸輪原點(diǎn)EGStart eam motio n (ECAM GO, En gage)開始凸輪運(yùn)動EMModu

9、lus for CAM (CAM eyeles)從動軸的位移增量(凸輪運(yùn)動)EPMaster counts per table entry主動軸的起點(diǎn)及增量(凸輪運(yùn)動)EQStop eam moti on停止凸輪運(yùn)動ESEllipse seali ng橢圓運(yùn)動ETCam table entry從動軸位移函數(shù)(凸輪運(yùn)動)FEFind edge尋邊FIFind in dex尋找原點(diǎn)GAMaster axis for geari ng設(shè)定主動軸(電子齒輪)GMGan try Mode電子齒輪方式GRGear ratio齒速比(電子齒輪)HMHome返回原點(diǎn)IPIn creme nt positi o

10、n增量位置(在運(yùn)動狀態(tài)下)ITSmoothi ng time con sta nt-i ndepe ndent平滑時間常數(shù)(平滑運(yùn)動,S curve)JGJog mode點(diǎn)動方式(速度控制方式)KSStepper smooth ing步進(jìn)平滑常數(shù)(平滑的步進(jìn)運(yùn)動)LELin ear in terpolati on end結(jié)束直線插補(bǔ)LILin ear in terpolati on dista nee直線插補(bǔ)距離LMLin ear in terpolati on mode直線插補(bǔ)方式PAPositi on absolute絕對位置PRPositi on relative相對位置SPSpeed速

11、度STStop停止TNTangent正切VAVector accelerati on矢量加速度VDVector decelerati on矢量減速度VEVector seque nee end結(jié)束矢量運(yùn)動VMCoordin ated moti on mode矢量方式VPVector positi on矢量位置VRVector speed ratio矢量速度的倍率VSVector speed矢量速度VTSmoothi ng time con sta nt-vector矢量時間平滑常數(shù)(平滑的矢量運(yùn)動)程序流程ADAfter dista nee等待某位置到達(dá)AIAfter in put等待某個輸入

12、點(diǎn)ONAMAfter motio n complete等待運(yùn)動完成APAfter absolute positi on等待某絕對位置到達(dá)ARAfter relative dista nee等待某相對位置到達(dá)ASAt speed在速度ATAfter time等待某相對時間到達(dá)AVAfter vector dista nee等待某矢量位置到達(dá)ElEn able In terrupts激活中斷方式ELSEIF .ELSE邏輯判斷語句ENEnd program結(jié)束程序ENDIFEn dof IF con diti onal stateme nt結(jié)束邏輯判斷HXHalt task中斷程序IFIF con

13、 diti onal stateme nt假設(shè)IIIn put in terrupt中斷輸入INIn put variable輸入變量JPJump to program locati on跳到指定的程序JSJump to subrout ine跳到子程序MCAfterIn Position. Motion Complete定位完畢MFForward moti on past positi on正向移動到某一個位置MGMessage顯示信息MRReverse moti on past positi on反向移動到某一個位置NONo operati on作批注.無作用RERetur n from

14、error subrout ine從處理錯誤返回主程序RIRetur n from in terrupt從中斷點(diǎn)返回主程序TWTime out for I n Positi onTime-out 事件UIUser In terrupt用戶中斷輸入WCWait for con tour data等待輪廓數(shù)據(jù)WTWait等待XQExecute program執(zhí)行程序ZSZero subrout ine stack返回原始位置#CMD ERRBad comma nd give n指令錯誤處理子程序#ININTIn terrupt Subrout ine中斷處理子程序#LIMSWLLIMIT Subr

15、out ine限位處理子程序#MCTIMEMoti on complete timeout occurred逾時暫停處理子程序#POSERR Error Subrout ine錯誤處理子程序AFAn alog feedback模擬反饋ALArm latch位置鎖存BABrushless Axis正弦波分割(無刷電機(jī))BBBrushless Phase Begi n角度補(bǔ)償(無刷電機(jī))BCBrushless Calibrati on電機(jī)補(bǔ)償(無刷電機(jī))BDBrushless Degree分割相位角(無刷電機(jī))BIBrushless In puts輸入(無刷電機(jī))BMBrushless Modul

16、o定義磁線寬度(無刷電機(jī))BNBurn parameters將參數(shù)存入FLASHBOBrushless Offset偏置(無刷電機(jī))BPBurn program將程序存入FLASHBSBrushless Setup安裝(無刷電機(jī))BVBurn variables將變量存入FLASHBZBrushless Zero零點(diǎn)(無刷電機(jī))CBClear bit清除I/O點(diǎn)的狀態(tài)CCCon figure com muni cati on port2設(shè)定Slave通訊端口CECon figure en coder type設(shè)定encoder型式CICommunication interrupt中斷通訊CNC

17、on figure switches and stepper設(shè)定開關(guān)和步進(jìn)電機(jī)COCon figure outputs設(shè)定輸出點(diǎn)DADeallocate arrays定義數(shù)組大小DEDefine dual en coder positi on疋義輔助encoder的位置DLDownl oad下載程序DMDime nsion arrays定義數(shù)組DPDefine positi on定義位置DRCon figure 2 nd Communi cati onChanneland the data update rate設(shè)定 DMA 或PollingEDEdit mode編輯方式EOEcho off關(guān)

18、閉響應(yīng)LAList Arrays顯示數(shù)組名及大小LLList Labels顯示程序的標(biāo)號LVList Variables顯示變量名稱及記憶值LSList Program顯示程序的指令內(nèi)容LZLeadi ng zeros將有效值之前的零點(diǎn)移除MOMotor off電機(jī)關(guān)斷MTMotor type定義電機(jī)類型OBDefine output bit定義輸出點(diǎn)濾波器設(shè)定DVDamp ing for dual loop雙回路控制阻尼FAAcceleratio n feedforward加速度前饋FVVelocity feedforward速度前饋GNGai n增益值ILIn tegrator limit

19、積分極限KDDerivative con sta nt微分常數(shù)KIIn tegrator con sta nt積分常數(shù)KPProport ional con sta nt比例常數(shù)OFOffset零點(diǎn)補(bǔ)償PLPole低通濾波的PID補(bǔ)償SHServo here激活伺服狀態(tài)(servo on)TLTorque limit轉(zhuǎn)矩極限TMSample time采樣時間ZRZero零點(diǎn)CW(l)Copyright i nformati on查詢版權(quán)信息(2)Data Adjustment bit on/off數(shù)據(jù)調(diào)整位狀態(tài)QZRetur n DMA in formatio n查詢DMA資料RPReport

20、 comma nd positi on返回命令位置RIReport latch顯示鎖存位置RLReport Latched Positi on返回最新的鎖存位置SCStop code響應(yīng)(傳回,查詢)電機(jī)停止的原因TBTell status byte響應(yīng)狀態(tài)位TCTell error code響應(yīng)錯誤碼TDTell dual en coder響應(yīng)輔助Encoder位置TETell error響應(yīng)誤差TITell in put響應(yīng)輸入點(diǎn)TPTell positi on響應(yīng)位置TRTrace響應(yīng)軌跡錯誤極限BLReverse software limit負(fù)向軟限位ERError limit最大誤差

21、極限FLForward software limit正向軟限位OEOff on error位置錯誤關(guān)斷電機(jī)編輯器EDEdit mode編輯方式(return)Save line儲存(cn trl)PPrevious line上一行(cn trl)IInsert line插入一行(cn trl)DDelete line刪除一行(cn trl)OQuit editor退出編輯器函數(shù)運(yùn)算SINSi ne正弦函數(shù)COSCos ine余弦函數(shù)ABSAbsolute value絕對值FRACFract ion porti on分?jǐn)?shù)INTIn teger porti on整數(shù)RNDRou nd循環(huán)數(shù)據(jù)記錄_

22、BGRetur n the status of moti on complete運(yùn)動是否完成BNSerial nu mber of the board控制卡序號DANumber of arrays available可用的數(shù)組大小DLNumber of available labels for program ming可用的編程序號DMAvailable array memory可用的數(shù)組內(nèi)存大小HMStatus of Home switch回零開關(guān)狀態(tài)(二)、運(yùn)動編程1概述鑒于運(yùn)動控制技術(shù)不斷發(fā)展,應(yīng)用也就變得比以往更為迫切,目前,各種 各樣的場合均采用伺服系統(tǒng),如用旋轉(zhuǎn)刀切割材料,在顯微鏡

23、下對半導(dǎo)體晶 片定位,同步貼標(biāo)器等等。運(yùn)動控制經(jīng)常必須與其它事件(如點(diǎn)火繼電器, 指輪,監(jiān)控開關(guān)等)進(jìn)行同步。為了進(jìn)一步提高速度、精度和技術(shù)先進(jìn)性的需要,新一代智能化運(yùn)動控 制器應(yīng)運(yùn)而生,這種控制器具有坐標(biāo)聯(lián)動、電子齒輪、板上程序存儲器、符 號化變量、與外部事件同步的可編程I/O等功能。DMC運(yùn)動控制器提供了功能強(qiáng)大且使用方便的編程語言,使用戶能快速 編程來解決任何運(yùn)動控制方面的難題。能夠把程序下載到DMC存儲器,無需 主機(jī)干預(yù),即可執(zhí)行。多任務(wù)功能同時執(zhí)行 8個用戶程序,允許各獨(dú)立任務(wù) 同時執(zhí)行。用DMC來執(zhí)行復(fù)雜程序,讓主計算機(jī)執(zhí)行其它任務(wù) ;不過,即 使在程序正在執(zhí)行中,控制器仍能隨時接

24、收來自主計算機(jī)的命令。除標(biāo)準(zhǔn)運(yùn)動命令外,DMC還提供許多命令,使其做出自行決定,這些命 令包含各種跳轉(zhuǎn)、事件觸發(fā)及子程序。DMC還提供了用于檢測、修正系統(tǒng)誤 差及處理來自外部開關(guān)的中斷的自動子程序。為了更高的編程靈活性,DMC提供了用戶自定義變量、陣列及算術(shù)函數(shù)。2.命令格式為了各種運(yùn)動形態(tài)和應(yīng)用,DMC提供了廣泛的指令集,用2字符ASCII 命令代表這些指令,使編程簡單得尤如英語 ABC。例外,讓X、丫軸開始運(yùn) 動的指令規(guī)定為BGXY??梢杂弥噶顏碇付ㄟ\(yùn)動,對輸出編程、檢查輸入狀態(tài),使運(yùn)動與事件同 步,如經(jīng)過的時間、運(yùn)動完成或輸入等。關(guān)于整個命令列表,請參見產(chǎn)品目錄 中各種型號的運(yùn)動控制器的

25、對應(yīng)部分。對于一些特殊應(yīng)用,也能開發(fā)專用指令。3、運(yùn)動命令主計算機(jī)能對運(yùn)動控制器發(fā)命令來實(shí)現(xiàn)所控制的電機(jī)進(jìn)行的運(yùn)動。 最簡單 的運(yùn)動是下例中所示的梯形包絡(luò)速度輪廓運(yùn)動, 這個運(yùn)動完整地由距離、 轉(zhuǎn)速、 加/減速度來表達(dá)。指定這些運(yùn)動參數(shù)的最基本形式是通過“位置分辨率單位” 。4、運(yùn)動編程1)、 PTP 定位可以使各軸任意組合以PTP方式運(yùn)行,只要對各軸分別指定目標(biāo)位置(PA 或PR)、速度(SP)、加速度(AC)和減速度(DC)即可。任何一個軸的運(yùn) 動均可分別起動和停止。 一旦開始運(yùn)動( BG) ,控制器就產(chǎn)生梯形速度包絡(luò)線, 在運(yùn)動期間,可隨時改變速度和加速度。例如:我要設(shè)備的 X 軸移動

26、10mm, 絲杠螺距為5mm,編碼器的分辨率為2500cts/轉(zhuǎn),經(jīng)過GALIL四倍頻以后, 電機(jī)旋轉(zhuǎn)一轉(zhuǎn)需要10000ctso X軸移動1mm需要10000/5=2000cts/mm,所以 要移動的距離為20000ctso其程序如下:指令說明#A程序標(biāo)號AC2000000指定加速度DC2000000指定減速度SP20000指定運(yùn)動速度PR20000指定距離BGXX 軸開始運(yùn)動EN程序結(jié)束執(zhí)行上述程序, X 軸就移動 10mm o2)、JOG方式例 1、 按給定速度一直運(yùn)行在JOG方式,對各軸給出JOG速度和方向(JG)、加速度(AC )、減速度(DC),一旦開始運(yùn)動(BG),控制器就以預(yù)定的

27、加速度按梯形包絡(luò)加速到JOG速度;用平滑處理功能避免速度突變。停止指令(ST)使運(yùn)動以預(yù)定的減速度 停止。在運(yùn)動當(dāng)中,可隨時改變JOG速度、方向、加速度和減速度,用TV指 令可隨時查詢平均速度。例如:一個系統(tǒng)編碼器分辯率為4000cts/r,要求電機(jī)以600rpm(10r/s)的速度運(yùn)轉(zhuǎn),且必須在100ms內(nèi)加速到所要求的速度。簡單計算表明:速度是 40000cts/s,加速度為400000cts/s2o指令說明#A標(biāo)號JG40000JOG 速度AC400000加速度BGX開始 X 軸運(yùn)動EN程序結(jié)束執(zhí)行上述程序以后,X軸按40000cts/s的速度一直運(yùn)行例2、 電位器進(jìn)行速度控制要想對電機(jī)

28、速度進(jìn)行控制,連接一個電位器到模擬輸入口#1,并讀取其電壓值。按模擬輸入比例大小設(shè)置電機(jī)速度, 10V 輸入對應(yīng)最大速度 100,000cts/s;限制加速度、減速度為500000cts/g。其程序如下:指令說明#A標(biāo)號JG0初始速度AC500000加速度DC500000減速度BGX開始運(yùn)動#LOOP標(biāo)號JGAN 1 *10000讀取電位器電壓值并更新速度JG#LOOP循環(huán)EN程序結(jié)束例3、用輸入點(diǎn)啟動 /停止速度控制假設(shè),只有等到起動脈沖(用輸入口 1), X 軸開始運(yùn)動;當(dāng)檢測到該 輸入點(diǎn)為 0 時, X 軸停止。指令 #A JG5000 AI1 BGX AI-1 STX AMX EN說明

29、 標(biāo)號 速度 等待起動信號 開始運(yùn)動 等待輸入變低 停止運(yùn)動 等待 X 軸完成 程序結(jié)束3)、2D直線和圓弧插補(bǔ) 矢量運(yùn)動方式( VM )是非常有用的一種運(yùn)動方式,這種方式能夠描述由直線(VP)和圓?。–R)組成的任意兩維軌跡。在運(yùn)動開始之前,可以給出多達(dá)511 個直線或圓弧段; 在運(yùn)動期間,可以發(fā)送附加段,無需停止即可實(shí)現(xiàn)很 長的運(yùn)動軌跡,對矢量速度(VS)、矢量加速度(VA)、矢量減速度(VD )和 運(yùn)動平滑( VT )進(jìn)行預(yù)先設(shè)定;在運(yùn)動當(dāng)中,可隨時改變矢量速度,允許進(jìn)給 率修調(diào),在拐角處減速, 對指定的運(yùn)動段分配不同速度。 通過設(shè)定矢量速度為零 可以很方便地實(shí)現(xiàn)運(yùn)動期間的暫停,而增大矢

30、量速度到100%來回復(fù)正常速度。用規(guī)定運(yùn)動平面為 S 和 T 的 CA 指令能夠使兩個坐標(biāo)軸同時運(yùn)行矢量方式。用戶通過設(shè)置兩組坐標(biāo)運(yùn)動,即能用一個控制器來實(shí)現(xiàn)完全分離的坐標(biāo)系運(yùn)動任務(wù),它甚至能處理更為復(fù)雜的運(yùn)動控制功能,如防撞運(yùn)動。矢量方式的另一個功能是切線跟蹤,讓第三軸與運(yùn)動軌跡保持正切,這對于切割刀具而言是非常理想的。螺旋線運(yùn)動 。例1坐標(biāo)運(yùn)動沿圖示軌跡運(yùn)動,起點(diǎn)通過命令第三軸以相同速率跟隨坐標(biāo)軌跡還能實(shí)現(xiàn)A向B反時針運(yùn)動。設(shè)矢量速度為勻速:5000cts/s,沿矢量方向的加、減速率:500000cts&。說明#PATHVMXYVA500000VD500000VS5000VP40000CR

31、500, -90, 180VP-1000, 1000CR500, 90, 180VP0 , 0VEBGSEN標(biāo)號定義平面為XY加速度減速度矢量速度運(yùn)動AB運(yùn)動BC運(yùn)動CD運(yùn)動DE運(yùn)動EA指示軌跡終點(diǎn)開始運(yùn)動程序結(jié)束D( -1000,1000)C (4000, 1000)E( -1000,0) A( 0,0)B (4000, 0)命令114)、進(jìn)給率修調(diào)在某些場合,需要讓機(jī)械操作人員能調(diào)整機(jī)器速度,這就稱之為進(jìn)給率 修調(diào)。例如,當(dāng)初次開動機(jī)器時,操作人員想逐漸提高速度,這個功能就很 有用。往往用一個電位計輸出010V電壓來實(shí)現(xiàn)速度控制,當(dāng)電位計輸出滿量 程10V時,機(jī)器就以全速運(yùn)轉(zhuǎn),在任何情況下

32、,速度均應(yīng)與電位計電壓成正 比例。為了實(shí)現(xiàn)這一功能,運(yùn)動控制器讀取電位計電壓,按比例調(diào)整進(jìn)給率。 下例是用DMC來實(shí)現(xiàn)這個功能的說明。例1:進(jìn)給率修調(diào)重復(fù)上例,加入進(jìn)給率修調(diào)功能,操作人員產(chǎn)生 010V的電壓,把這個 電壓加到模擬輸入口 #1,設(shè)置進(jìn)給率與電壓成正比。用兩個程序?qū)崿F(xiàn)這個運(yùn)動,#MOVE和#SPEED兩個程序以多任務(wù)(有關(guān) 多任務(wù)見后面的多任務(wù)的舉例)同時運(yùn)行。程序#SPEED讀取模擬輸入,并不 斷調(diào)整矢量速度,第二個程序#MOVE除指定矢量速度外,其余與上例相同, 兩個程序列表如下。#SPEEDA= AN 1V=A*2000VSV指令說明標(biāo)號讀取模擬電壓設(shè)定進(jìn)給率 更新進(jìn)給率J

33、P#SPEED重復(fù)過程EN程序結(jié)束#MOVE標(biāo)號VMXY指定XY平面VP6000,0移動到B點(diǎn)CR1000 270,180移動到C點(diǎn)VP-6000,2000移動到D點(diǎn)CR100Q 90,180移動到E點(diǎn)VP0, 0返回到A點(diǎn)VE軌跡終點(diǎn)VA 100000矢量加速度VD 100000矢量減速度BGS開始運(yùn)動EN程序結(jié)束例2:以最大進(jìn)給率進(jìn)行坐標(biāo)運(yùn)動重復(fù)前例,設(shè)定進(jìn)給率為允許的最大值。出于精度考慮,在圓弧段BC和 DE,必須將矢量速度限制在5000計數(shù)單位/sec;在直線段電機(jī)速度限制在25000計數(shù)單位/sec使用控制器的功能對各運(yùn)動段給出上限速度和下限速度, 即可使這種操作很簡單,上、下限速度

34、由 號來指定。這就使電機(jī)加速到最大允許速度,但會保證在運(yùn)動段終點(diǎn)的速度是 號所指示的速度。最終的矢量速度是軌跡的函數(shù),示于下圖。命令說明#B標(biāo)號VMXY定義XY平面VA500000加速度VD500000減速度VP4000, 0 5000段ABCR500,-90,180段BCVP-1000,10005000段CDCR500,90,180段DEVP0,0 25000段EAVE指定軌跡結(jié)束BGS開始運(yùn)動EN程序結(jié)束矢量距離DEA5)、直線插補(bǔ)直線插補(bǔ)方式(LM )允許多達(dá)8個軸按所定義的直線段(LI)實(shí)現(xiàn)任意軌 跡。需要定義矢量速度(VS)、矢量加速度(VA )、矢量減速度(VD )和矢量平 滑(V

35、T),在運(yùn)動開始前可給出511個LI段;在運(yùn)動期間,可以發(fā)送附加段, 實(shí)現(xiàn)無限長度的軌跡跟蹤。例:直線插補(bǔ)使直角坐標(biāo)機(jī)械手以英制(inch)運(yùn)動經(jīng)過以下各坐標(biāo)點(diǎn):P0 (0, 0, 0)P1 (4, 2, 1)P2 (6, 6, 2)P3 (8, 8, 0)假設(shè)各坐標(biāo)軸的分辨率均為1000cts/inch,設(shè)定所需速度為1.2in/s( 1200cts/s), 加、減速度為 100in/s2( 100000cts/$2)。注意:LM方式需要以增量方式定義各運(yùn)動段。占八、坐標(biāo)增量值P00,0,0P14000, 2000, 10004000, 2000, 1000P26000, 6000, 200

36、02000, 4000, 1000P38000, 8000, 02000,2000,-2000程序說明#C標(biāo)號LMXYZ定義XYZ空間VS1200矢量速度VA100000矢量加速度VD100000矢量減速度LI4000,2000, 1000P0-P1 段LI2000,4000, 1000P1-P2 段LI2000,2000, -2000P2-P3 段LE運(yùn)動終點(diǎn)BGS開始運(yùn)動EN程序結(jié)束6)、陣列控制器將XY工作臺移動到由各自坐標(biāo)所標(biāo)定的 4個位置,把所需各點(diǎn)的值 存入陣列XPOS和YPOS,控制器一旦抵達(dá)指定點(diǎn),在恢復(fù)運(yùn)動之前,必須等待 一段時間,等待時間以毫秒為單位存入陣列 WAIT中。分

37、兩部分介紹這個程序,第一部分,#STORE,定義變量;第二部分,RUN,根據(jù)要求執(zhí)行運(yùn)動。指令#RUNAC200000 , 200000DC200000, 200000SP50000, 50000N=0#LOOPPA XPOSN , YPOSNBGXYAMXYWT WAIT N N=N+1JP#LOOP, N 4EN數(shù) 指令#STOREDM XPOS 4,YPOSXPOS 0= 100XPOS 1= 320XPOS 2= 450XPOS 3= 500YPOS 0= -100YPOS 1= 20YPOS 2= 153YPOS 3= 200WAIT 0= 50WAIT 1= 100WAIT 2=

38、60WAIT 3= 120說明 標(biāo)號 加速度 減速度 速度初始計數(shù)規(guī)定最終位置開始運(yùn)動等待完成等待指定的時間間隔索引加1重復(fù)4次結(jié)束程序 說明標(biāo)號4,WAIT 4 定義陣列設(shè)值結(jié)束程序ENYESN4NO結(jié)束圖8陣列程序流程圖7)、電子齒輪電子齒輪方式使GALIL控制器很方便地以電氣方式模擬機(jī)械齒輪的運(yùn)動。 任意從動軸或從動軸組均能夠以 GR命令定義的齒輪比跟隨主動軸,齒輪比可以 隨時改變;控制器允許設(shè)置多主,由 GA命令來定義。電子齒輪的一個非常有用的功能是一個軸按齒輪比進(jìn)行獨(dú)立或空間矢量聯(lián) 動。對于在包裝機(jī)械應(yīng)用中需要位置修正或在傳送帶上切割形材是很有用的。電子齒輪方式對于雙邊驅(qū)動(龍門架)

39、應(yīng)用很有用,對此,用特殊的龍門方 式(GM)命令使兩個傳動軸嚴(yán)格耦合同步。例:電子齒輪程序說明#A標(biāo)號GA Y ,,Y指定Y軸作為X、Z軸的主動軸GR2 ,,-4規(guī)定X、Z軸的齒輪比PR, 50000定義主動軸的終點(diǎn)位置ACY=1000000設(shè)定主動軸的加速度DCY=1000000設(shè)定主動軸的減速度SPY=10000設(shè)定主動軸的旋轉(zhuǎn)速度BGY開始運(yùn)動EN程序結(jié)束8)、比例運(yùn)動運(yùn)動控制器另一個有用的功能是能夠產(chǎn)生與矢量速度成比例的附加控制運(yùn) 動。這個功能用來產(chǎn)生螺旋線運(yùn)動, 兩個軸形成圓弧運(yùn)動, 而第三軸沿垂直方向 以比例速度運(yùn)動。比例速度也用于配膠方面。假定, XY 平面的運(yùn)動以可變速度 進(jìn)行

40、,為了在每長度單位產(chǎn)生相同量的膠,就需要以與XY平面矢量速度成比例的速率驅(qū)動膠泵。例:比例運(yùn)動XYZ三軸系統(tǒng),所有軸的分辨率均為100cts/mm,目的是產(chǎn)生XY平面半徑為5mm整10圈、Z方向高度為20mnt勺螺旋運(yùn)動,XY平面矢量速度是40mm/s矢量加、減速度均為1000 mm/s2;能用參數(shù)以分辨率單位表示運(yùn)動參數(shù):半徑 =5mm=500cts矢量速度 =20 mm/s=2000cts/s加、減速度 =1000 mm/s2 =100,000cts/s 2為了確定齒輪比,注意:XY平面的軌跡由總長314mm半徑為5mm勺10個 圓所組成,亦請注意:Z方面的運(yùn)動為20mm兩個運(yùn)動之間的比率

41、為:比率=20/314=0.0637由以下程序產(chǎn)生所需運(yùn)動。指令說明#HILICAL標(biāo)號VMXY定義XY平面GA , S選擇主運(yùn)動GR , 0.0367設(shè)定 Z 為跟隨軸CR500 , 0, 3600定義 10 圈VE軌跡終點(diǎn)VS 2000矢量速度VA100000矢量加速度VD100000矢量減速度BGS起動運(yùn)動EN程序結(jié)束9)、控制變量許多運(yùn)動應(yīng)用都含有變量參數(shù),例如,定長切割應(yīng)用往往要求切長是變 量。運(yùn)動過程相同,但長度在變化,要實(shí)現(xiàn)這些應(yīng)用,高級控制器提供了符 號化變量;程序能以某些定義為變量的參數(shù)編寫,如位置或速度 , 以后由操 作人員分配變量或由程序計算來決定。 變量允許運(yùn)動控制器執(zhí)

42、行某些數(shù)字運(yùn) 算功能并做決定。這樣就提高了運(yùn)動控制器的智能化,并允許它執(zhí)行除運(yùn)動 控制之外的一些高級功能。能把變量定義為常數(shù), 或等效成控制器參數(shù), 例如,指令 V=3 就將變量 V 的值設(shè)為 3。指令 P=_TPX 讀取 X 軸電機(jī)的位置,并使變量 P 等于所讀取 的值??梢杂枚喾N途徑定義變量,例如,指令 YERROR=_TEY 就使變量 YERROR 等于 Y 軸電機(jī)的位置誤差。一個變量名不能超過 8 個字符,變量 的第一位必須大寫的英文字母,不得是數(shù)字,后面的字符可以任意組合。一旦變量被定義就可將它用在數(shù)字運(yùn)算中。 DMC 能執(zhí)行數(shù)字運(yùn)算功能, 典型的運(yùn)算有代數(shù)、三角和邏輯運(yùn)算。一個數(shù)字

43、運(yùn)動控制器可以有254 個變量。當(dāng)運(yùn)算完成時,控制器就能用運(yùn)算結(jié)果來調(diào)整系統(tǒng)參數(shù),例如,用運(yùn)算 結(jié)果來改變速度,設(shè)置距離或改變?yōu)V波器增益。下面的例子是變量用途的最 好說明。例:位置跟隨器下面的程序表示了 X 軸電機(jī)跟隨 Y 軸電機(jī)位置的一個例子,它以比例 于位置差值的速度驅(qū)動 X 軸電機(jī)來實(shí)現(xiàn)。命令 說明#FOLLOWDP0,0JGOBGX#LOOPVE=-TPY-_TPXVEL=VE*10JG VELJP#LOOPEN程序名定義 X 、 Y 位置為 0 設(shè)定初始 X 速度為 0 起動 X 標(biāo)號求出位置差值計算速度更改速度重復(fù)過程程序結(jié)束10) 、I/O 接口往往需要使運(yùn)動與輸入/輸出(I/O

44、)事件同步,使控制器能控制一個完整 的過程。如此, DMC 讀取數(shù)字輸入和模擬輸入信號,并產(chǎn)生數(shù)字輸出信號。 輸入可以是數(shù)字按鈕信號或模擬電位計信號,用輸出來控制繼電器線圈或者 閥或者點(diǎn)亮指示燈??刂破髯x取輸入信號(數(shù)字或模擬) ,將它們的值存儲在控制變量中,以 便在運(yùn)動程序中使用這些變量。用指令 DIGITAL=IN 1 來執(zhí)行數(shù)字輸入的讀取,此指令表示讀取數(shù)字 輸入口 #1,并把它的內(nèi)容( 0 或 1)存儲在變量 DIGITAL 之中。用指令 ANALOG=AN 3讀取模擬輸入口 #3的信號。用設(shè)置或清除 1位的指令來產(chǎn)生數(shù)字輸出信號,如 SB3 設(shè)置輸出位 #3; CB3 清除輸出位 #

45、3。與輸入、輸出進(jìn)行接口,無需主計算機(jī)干預(yù)控制器就能執(zhí)行整個過程控制, 通過下例加以說明。11) 、多任務(wù)復(fù)雜應(yīng)用往往需要幾個獨(dú)立任務(wù)同時被執(zhí)行, GALIL 數(shù)字運(yùn)動控制器有 8 個獨(dú)立的程序運(yùn)行通道 07, DMC 允許同時執(zhí)行 8 個獨(dú)立應(yīng)用程序,這對于 在后臺執(zhí)行獨(dú)立操作或 PLC 任務(wù)是一個很理想的功能。各分立任務(wù)被定義為任務(wù) 07,能由另一個任務(wù)執(zhí)行或停止任何一個任 務(wù)。例如,XQ#POS1, 0在0通道執(zhí)行POS1; HXO關(guān)閉0通道。所有 DMC 命令,包括事件觸發(fā)和條件在內(nèi),均可用于各個任務(wù)。不過,為了程序的正 常運(yùn)行,一般把 0通道留下,因?yàn)橛幸恍┨厥獾某绦蛟?0通道中運(yùn)行

46、輸入。例如:中斷、軸限位和輸入提示只可用于通道0之中。例: 多任務(wù)后臺 PLC下面的例子說明了在 DMC存儲器中的4個獨(dú)立程序如何同時執(zhí)行,在In put 1變高之后主任務(wù)# MAIN起動任務(wù)# PLC1、# PLC2、# MOVE。當(dāng)輸 入1變低時,停止所有任務(wù);只有當(dāng)輸入2和輸入3為高時,#PLC1才設(shè)置Output2;# PLC 2 在 Output 口 1 產(chǎn)生10 ms高、40 ms低的示波信號,# MOVE重復(fù)運(yùn)動X軸100計數(shù)單位。指令說明MAIN主程序 Task0AI1在 Input 1變高后XQ# PLC 1,1在通道 1 執(zhí)行程序 PLC1XQ# PLC 2,2在通道 2

47、執(zhí)行程序 PLC2XQ# MOVE, 3在通道 3 執(zhí)行程序 MOVEAI-1在 Input 1變低后HX停止所有任務(wù)EN結(jié)束程序PLC1PLC1OB2,IN 2&IN 3若In put 2和In put 3為高,則設(shè)置 Output 2JP #PLC1循環(huán)EN程序 PLC1 結(jié)束# PLC 2PLC2AT0設(shè)置參考時間#LOOP循環(huán)標(biāo)號SB1;AT10設(shè)置output 1;等待10msCB1;AT-50清除output 1;維持50ms,復(fù)位定時器JP #LOOP循環(huán)EN結(jié)束 PLC2#MOVE#MOVEPR100; BGX ;AMX移動 100 計數(shù)單位WT20 ; JP#MOVE等待 2

48、0ms 并重復(fù)EN結(jié)束12)、記錄數(shù)據(jù)方式控制器能夠以固定速率記錄運(yùn)動數(shù)據(jù),并將數(shù)據(jù)輸入陣列,以便用來重 現(xiàn)運(yùn)動或分析。 記錄過程有幾個步驟, 首先必須規(guī)定存儲數(shù)據(jù)的陣列; 接著, 在以規(guī)定速率進(jìn)行實(shí)際記錄之前,必須定義數(shù)據(jù)類別,如位置、位置誤差等 等。下面的例子來說明這個過程 。例 1 :記錄數(shù)據(jù)方式編寫一個程序每16ms對丫軸的位置誤差記錄一次,總共100次,并將 結(jié)果存入陣列YERROR中。用RC指令做實(shí)際記錄,RC指令帶有兩個參數(shù), 記錄時間間隔(2n ms)和記錄點(diǎn)的數(shù)。指令說明#RECORD標(biāo)號RA YERROR 100存儲陣列RD_TEY數(shù)據(jù)類型RC4, 100實(shí)際記錄EN結(jié)束程

49、序下例描述如何將記錄數(shù)據(jù)用于分析。例 2 :統(tǒng)計分析用上例中采集到的位置誤差數(shù)據(jù)來進(jìn)行 Y 軸位置誤差統(tǒng)計分析; 確定最 大值、最小值以及平方均值。下面的程序執(zhí)行所需任務(wù)并將結(jié)果存在變量MAX、MIN和 MEANT。指令說明#STAT標(biāo)號N=0初值MAX=0MIN=0SUM=0#LOOP標(biāo)號E=YERRORN讀位置誤差JP#MAX,EMIN與最小值比較MIN=E重新定義 MIN#MIN標(biāo)號SUM=E+E+SUM求平方和N=N+1索引加 1JP#LOOP,N100重復(fù) 100 次MEAN=SUM/100平方均值ROOT=SQRMEAN平方根( RMS)EN結(jié)束程序13)、AUTOCAB形文件.D

50、XF轉(zhuǎn)化成.DMC程序GALIL數(shù)字運(yùn)動控制器能夠把 AUTOCAB形文件.DXF轉(zhuǎn)化成.DMC程序,如下 圖所示: DXF圖形文件程序如下:#AUTOCSVMXYREM DASHEDPA,20000BGZAMZREM end macroVP -1100,0000CR 600,90.0000,90.0000VEBGSAMSREM CONTINUOUSPA,0BGZAMZREM end macroCR 608,270.0000,-180.0000CR 608,90.0000,-180.0000VEBGSAMSREM DASHEDPA,20000BGZAMZREM end macro VP 000

51、0,-1300VEBGSAMSREM CONTINUOUS PA,0BGZAMZREM end macro CR 500,270.0000,-180.0000CR 500,90.0000,-180.0000VEBGSAMSREM DASHED PA,20000BGZAMZREM end macro VP 0000,-1100VEBGSAMSREM CONTINUOUS PA,0BGZAMZREM end macro CR 200,270.0000,-180.0000CR 200,90.0000,-180.0000VEBGSAMSREM DASHED PA,20000BGZAMZREM end macro VP 0000,-0700VEBGSAMSREM CONTINUOUS PA,0BGZAMZREM end macro CR 200

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論