PMAC应用三-运动程序
PMAC應用三-運動程序
- 編寫一個運動程序
- 運動程序格式
- 運動模式
- 位置模式
- 移動參數
- 運動程序例子
- 線性移動參數說明
- TA TS TM F Frax
- Delay Dwell的區別
- 同步變量賦值
- 結后語
編寫一個運動程序
???????前面我們已經知道了怎么定義一個坐標系,現在我們可以開始先建立一個坐標系1,再編寫一個簡單的運動程序,先來看一個例子。
undefine all // 清除所有坐標系定義 &1 //定義一個坐標系 #1->x //將1號電機分配給X軸 #2->y //將2號電機分配給Y軸 #3->z //將3號電機分配給Z軸 open prog 1 //打開程序1 linear abs //直線絕對值運動模式 ta 300 ts 100 td 300 f 30 //加速度時間為300ms S型曲線時間為100ms 減速度時間為300 進給速度為30 x 0 y 0 z 10 //X移動10個用戶單元 Y不移動 Z移動10個用戶單元 x 10 y 10 z 10 x10 y0 z10 x0 y 10 z 0 close //關閉運動程序運動程序格式
???????所有的動作程序都必須有一個打開陳述(open prog ****)和一個結尾陳述(close),程序名可按自己功能定義,e.g.open prog Montion_Proggram
運動模式
???????運動模式分為5種,分別為linear,pvt, circle,spline,rapid,官方解釋如下:
-
linear
???????線性插值混合運動。梯形速度與時間的關系,笛卡爾坐標系下的直線路徑。 -
pvt
???????以指定的端點位置和速度和指定的移動時間進行移動。對拋物線速度與時間的關系使用厄米-樣條(一種插值算法)路徑。 -
circle
???????以指定的中心或半徑和終點作圓周運動。 -
spline
???????樣條模式提供三次b樣條(三次位置與時間的微分方程)將軸上的一系列點混合在一起。 -
rapid
???????主要目的是極小時間點對點移動,給定速度,加速度,和沖擊約束,快速是唯一可以從PLC程序命令的移動模式。
位置模式
- abs
???????使用絕對定位 - inc
???????使用增量式定位
移動參數
-
對于線性和圓周運動模式
加速時間(Ta)
減速時間(Td)
S型曲線時間(Ts)
移動時間(Tm)
以上參數單位均位毫秒(ms)
如果是進給軸,移動時間是進給速率(F),單位是:用戶單位/Coord[x].FeedTime。(可使用FRAX函數定義進給軸) -
對于樣條模,每個樣條移動包含3段持續時間,指定段時間可可改變方法
spline{data0} :將3段時間設置為{data0}
spline{data0}spline{data1} :將T0設置為{data0},T1和T2為{data1}
spline{data0}spline{data1}spline{data2} :將T0設置為{data0},T1為{data1},T2為{data2}
計算和執行移動段0,并暫時計算段1和段2,但尚未執行,下一個程序樣條移動可以改變這些時間(它的T0是這個移動的T1;它的T1是這個移動的T2) -
對于PVT模式
pvt {Time}
{Axis}{Position}:{Velocity}
運動程序例子
上面講解了幾種運動模式及與運動模式相關的嘗試,下面是一個線性運動的例子。
open prog Motion_Program linear abs //線性絕對值 ta 300 ts 100 td 300 f 30 加速度時間300 s型曲線時間100 減速時間300 矢量軸進給速30 dwell 1 //等待1ms,dwell與普通的延時不同,dwell不會對后面的移動或邏輯進行計算或判斷X 12.0666623184884703 Y -2.55370140075683594 Z 175.31781379350133X 12.0667004654611265 Y -2.55370140075683594 Z 342.974248567900133 dwell 0 call Timer(m89) //一個延時子程序 X 12.0666733527865606 Y -2.55370140075683594 Z 278.997280101779666 A -0.432743549346923828 X 12.0666619086947637 Y 87.0913314819335938 Z 278.998695116046633 A -0.432743549346923828 call Timer(10) X 12.0666623184884703 Y -2.55370140075683594 Z 175.31781379350133 A -0.43274688720703125 dwell 0 m86=0; m87=0; close線性移動參數說明
TA TS TM F Frax
- TA:混合移動(線性和圓形模式)之間的部分指令加速時間,以及這些移動從開始到停止的時間
- TS:指定在線性和圓形模式混合移動中在s曲線加速度中花費的總加速時間的開始和結束時間
如果Ta>=Ts
總加速時間=Ta+Ts總加速時間=Ta+Ts總加速時間=Ta+Ts
如果Ta<Ts
總加速時間=2×Ts總加速時間=2\times Ts總加速時間=2×Ts
如果Td>=Ts
總加速時間=Td+Ts總加速時間=Td+Ts總加速時間=Td+Ts
如果Td<Ts
總加速時間=2×Ts總加速時間=2\times Ts總加速時間=2×Ts - TM:線性模式和圓形模式在加速開始和減速開始之間所需要的時間。
如果Tm>=總的加減速時間
總移動時間=Tm+總的加減速時間總移動時間=Tm+總的加減速時間總移動時間=Tm+總的加減速時間
如果Tm<總的加減速時間
總移動時間=2×總的加減速時間總移動時間=2\times 總的加減速時間總移動時間=2×總的加減速時間 - F:為線性和圓形模式混合移動設置命令速度[用戶單位/Coord[x].FeedTime]
速度單位:(用戶距離單位/用戶時間單位)
用戶距離單位:(在軸中定義)
用戶時間單位:(在Coord[x].FeedTime參數定義)
當使用F時,TM的值如下計算:
TM=總的距離F?總的加減時間TM=\frac{總的距離} {F} -總的加減時間TM=F總的距離??總的加減時間
當定義TM而不是F時,F最大值為:
Fmax=勻速的距離TMFmax=\frac{勻速的距離}{TM} Fmax=TM勻速的距離?
- Frax:指定哪些坐標軸在進給量計算中
當在一個移動中涉及多個軸時,例如XYZ笛卡爾坐標系中,需要將距離計算指定為用于移動時間計算的向量長度,:任何非進給軸移動與進給軸移動在同一條線上,將在相同的時間內完成.
e.g.
Frax(x,y,z):表示距離從X, Y, Z軸計算(默認值)
矢量距離=X2+Y2+Z2矢量距離=\sqrt{X^2+Y^2+Z^2}矢量距離=X2+Y2+Z2?
Delay Dwell的區別
Delay
- 如果延遲發生在混合移動之后,則該移動的TA減速時間發生在延遲時間內,而不是之前
- 如果指定的延遲時間小于當前有效的加速時間(TA或2*TS),整個延遲將在加速期間發生,實際上根本不發生
- :延遲的實際時間會隨著時間基數的變化而變化(當前%值,來自任何源)
- 在延遲期間,PMAC會預先計算即將到來的移動(以及它們之前的線路)
Dwell
- 如果上一個是混合移動,在暫停時間開始之前會有一個TA時間減速到停止
- 對變化的時間基不敏感,它總是在實時運行(Sys.ServoPeriod參數所定義)
- 在Dwell期間,Power PMAC不會預先計算即將到來的移動(以及它們之前的程序行),它會等待,直到完成后開始進一步的計算
同步變量賦值
由于PMAC對與移動無關的數值計算進行了預先處理,因此通常的變量分配可能會在用戶預期之前執行,若要強制在下一個移動開始時進行變量分配,請使用同步變量賦值,就像一個普通的變量賦值,但是在賦值表達式中使用==而不是=,可以用于global, csglobal或ptr變量(除了自分配的prt變量)
ClearGlue == 1 //當運動開始時,變量輸出1X 12.0667004654611265 Y -2.55370140075683594 Z 342.974248567900133 A -0.43274688720703125 ClearGlue == 0 X 12.0666733527865606 Y -2.55370140075683594 Z 278.997280101779666 A -0.432743549346923828 ClearGlueLidOpen == 0 X 12.0666619086947637 Y 87.0913314819335938 Z 278.998695116046633 A -0.432743549346923828 ToolRotationEnable == 0 // //當運動結束時,變量輸出0結后語
這一節總結了運動程序的一些參數,下一節總結一下PLC腳本程序。
Power PMAC 5-Day Training (Plus Opt ECAT Training)
總結
以上是生活随笔為你收集整理的PMAC应用三-运动程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 讲课大师 如何更新讲课接口
- 下一篇: Excel管理批量文件