線性移動引數說明
結後語前面我們已經知道了怎麼定義乙個座標系,現在我們可以開始先建立乙個座標系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,官方解釋如下:
inc // 增量移動
pvt 1000 // 1000 ms移動時間
x 20:1.5 //x點為20個使用者單位,點速度為1.5進給單位
上面講解了幾種運動模式及與運動模式相關的嘗試,下面是乙個線性運動的例子。
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.31781379350133
x 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
如果使用者距離單位時mm,coord[x].feedtime = 1000(預設值),f 10表示10mm/s
f //指定進給軸的速度
f 10
frax(axes) // 向量進給軸定義
frax(x,y,z)
當使用f時,tm的值如下計算:
t m=
總的距離
f−總的
加減時間
tm=\frac -總的加減時間
tm=f總的
距離−
總的加減
時間當定義tm而不是f時,f最大值為:
f ma
x=勻速
的距離t
mfmax=\frac
fmax=t
m勻速的
距離delay
dwell
由於pmac對與移動無關的數值計算進行了預先處理,因此通常的變數分配可能會在使用者預期之前執行,若要強制在下乙個移動開始時進行變數分配,請使用同步變數賦值,就像乙個普通的變數賦值,但是在賦值表示式中使用==而不是=,可以用於global, csglobal或ptr變數(除了自分配的prt變數)
clearglue == 1 //當運動開始時,變數輸出1
x 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運動程式例程 一
日期 2015 06 10 修訂資訊 2015 08 13修改1 1 選擇座標系1 close 關閉所有的緩衝暫存器 1 x 將1號電機分配給x軸 open prog1 開啟程式1的緩衝暫存器 clear 清除緩衝暫存器的內容 linear 選擇混合線性插值運動模式,還可以選擇circle圓弧運動 ...
PMAC運動程式例程 一
日期 2015 06 10 修訂資訊 2015 08 13修改1 1 選擇座標系1 close 關閉所有的緩衝暫存器 1 x 將1號電機分配給x軸 open prog1 開啟程式1的緩衝暫存器 clear 清除緩衝暫存器的內容 linear 選擇混合線性插值運動模式,還可以選擇circle圓弧運動 ...
三體運動的程式模擬
前幾天看了 三體 很不錯的科幻 說到三體,我想到我大學的乙個舍友叫王晶,和香港那個導演同名同姓同性別.記得有一次幾個同學在一塊聊天,有個女生問他 父母為什麼給他取名叫晶.他說叫晶是父母希望能有三個太陽守護著他。那時我還很單純,不會用五行缺什麼的話來諷刺他,只是說,如果給他起名叫王晶晶的話,那就有6個...