|
本文主要介紹如何使用MOVESYNC指令快速實現單軸/多軸同步跟隨功能,適用於XYZ(R)、SCARA、DELTA等常見機械結構,在流水線點膠、流水線產品分揀、流水線產品搬運等場景中廣泛應用。
閱讀本文,學習同步跟隨的原理和實現方法,提高工作效率!
01 同步跟隨功能介紹
同步跟隨的主要作用是快速控製運動機構,實現產線上產品的同步和跟隨,再輔助其他運動指令實現產線產品的抓取、分揀、點膠等功能需求;
同步跟隨的功能主要由MOVESYNC指令實現,該指令方便用戶通過程序快速實現單軸或多軸同步跟隨功能,實現多皮帶抓取擺放,屬於凸輪指令的一種。
1、常用場景為: 流水線點膠、流水線產品分揀、流水線產品搬運等。
2、常見機械結構: XYZ (R)、SCARA、DELTA等。

02 MOVESYNC指令說明
1、指令介紹
同步跟隨是指點的跟隨,跟隨的是位置,皮帶與跟隨軸的位置之間由算子去協調位置關係,需要處理的僅僅是第一個跟隨時刻的位置。
MOVESYNC指令內重要參數是給出皮帶的位置和跟隨軸的位置,隻需要把跟隨點跟隨的這個“時刻”靜態化處理就行,即可以想象成當皮帶上物體到了傳感器mark位置時刻皮帶停止了。
跟隨軸這個時候移動到達產品mark點,這個時刻得到了兩組坐標位置:
第一組: 皮帶的位置syncposition。
第二組: 跟隨軸的位置pos1,隻需要將這兩個位置對應填進指令內即可,算子會自動計算規劃兩者位置,保證兩者相對靜止。
2、指令函數語法
MOVESYNC(mode,synctime,syncposition,syncaxis,pos1[,pos2, pos3…])
支持單軸或多軸同步跟隨。
3、一般使用形式
base(0,1,2) //指定參與同步跟隨軸號,這裏以0,1,2為例
MOVESYNC (mode,加速時間,syncposition,syncaxis,pos1,pos2, pos3) //加速段
MOVESYNC(mode,同步時間,syncposition,syncaxis,pos1,pos2, pos3) //同步段
MOVESYNC(mode,減速時間,syncposition,syncaxis,pos1,pos2, pos3) //減速段(複位段)
一yi個ge完wan整zheng的de跟gen隨sui過guo程cheng分fen為wei三san步bu,加jia工gong頭tou先xian加jia速su達da到dao與yu皮pi帶dai相xiang同tong的de速su度du,實shi現xian了le同tong步bu運yun動dong,在zai同tong步bu段duan完wan成cheng加jia工gong操cao作zuo,然ran後hou加jia工gong頭tou再zai回hui到dao等deng待dai位wei置zhi,等deng待dai下xia一yi次ci觸chu發fa加jia工gong。觸chu發fa條tiao件jian采cai用yong傳chuan感gan器qi檢jian測ce來lai料liao,記ji錄lu來lai料liao的de位wei置zhi,填tian入ruMOVESYNC指令。
4、指令參數說明
(1)mode:模式
加速段和同步段一般使用模式0,一般是在X軸方向跟隨,減速段一般使用模式-2(可以強製結束前麵的跟隨運動)。

特別說明: 當跟隨的產線與機台存在夾角時使用模式0,並且加上機台與產線的夾角的弧度值實現跟隨偏斜補償,例:
mode=0+angle,angle:皮帶旋轉角度,角度=皮帶與BASE第1/2軸的正向旋轉夾角。例如:
① Mode=PI/4,皮帶在45度的方向;
② Mode=PI/2,皮帶在y方向;
③ Mode=PI,皮帶在x負向;
④ Mode=(PI*1.75),皮帶在-45度的方向;
(2)synctime:同步時間,時間單位ms,同步時間一般分為三段
加速段時間多久代表機台跟隨軸加速達到產線速度,並且跟上目標產品,0表示根據運動軸的速度加速度來估計同步時間,可能不準確,一般相對設置長點,確保能實現同步;
同步段時間表示跟隨產品運動多長時間,抓取等動作在此期間完成,一般相對設置較長,保證動作完成;
減速段時間表示多久回到指定位置,一般減速段時間和加速段一樣,推薦使用-2模式;
(3)syncposition:皮帶軸物體被感應到時皮帶軸的位置
特別說明: 此(ci)指(zhi)令(ling)支(zhi)持(chi)皮(pi)帶(dai)軸(zhou)坐(zuo)標(biao)循(xun)環(huan),但(dan)是(shi)在(zai)指(zhi)令(ling)被(bei)調(tiao)用(yong)時(shi)確(que)保(bao)此(ci)參(can)數(shu)位(wei)置(zhi)和(he)當(dang)前(qian)皮(pi)帶(dai)軸(zhou)位(wei)置(zhi)之(zhi)間(jian)沒(mei)有(you)發(fa)生(sheng)坐(zuo)標(biao)修(xiu)改(gai)或(huo)循(xun)環(huan)操(cao)作(zuo),因(yin)此(ci)此(ci)指(zhi)令(ling)調(tiao)用(yong)時(shi)不(bu)要(yao)在(zai)坐(zuo)標(biao)循(xun)環(huan)點(dian)附(fu)近(jin);
(4)syncaxis:皮帶軸軸號,-1表示沒有皮帶軸,可以是電機軸,也可以是編碼器
(5)pos1:皮帶軸物體被感應到時的BASE第1個軸(一般是跟隨軸)的絕對位置
(6)posn:皮帶軸物體被感應到時的BASE第n個軸的絕對位置
5、指令使用圖解(單軸為例)
movesync指令隻需要給出同步跟隨觸發時的幾個軸的位置參數即可,作為啟動同步跟隨的條件,再加速達到同步之後執行加工。
首先構思搭建一個跟隨模型,如下:

假設當產品到傳感器位置時實現跟隨;借助傳感器的信號實現皮帶位置鎖存,即當產品到達傳感器鎖存的位置時,依靠鎖存記錄下皮帶坐標(syncposition參數),此時將跟隨軸X軸運行到產品鎖存點位置,得到跟隨軸X軸位置為(pos1);
這樣就得到了MOVESYNC指令裏麵的坐標位置,即同步時刻皮帶的位置(syncposition)、跟隨軸的位置(pos1),再根據實際運行情況規劃出加速段的時間、同步段的時間和減速段的時間,指令運行即可實現一次同步跟隨過程。
03 主代碼
下麵示例以單軸跟隨為例子,輔助以感應器作為位置記錄條件。
在沒有機台的情況下,可手動給鎖存信號,模擬檢測到物料,記錄同步運動指令要填寫的位置信息,在HMI界麵上點擊啟動開始執行同步運動,程序的主要函數調用關係如下圖。

配置HMI界(jie)麵(mian)便(bian)於(yu)操(cao)作(zuo),支(zhi)持(chi)修(xiu)改(gai)軸(zhou)參(can)數(shu),靈(ling)活(huo)調(tiao)整(zheng)同(tong)步(bu)跟(gen)隨(sui)各(ge)階(jie)段(duan)的(de)時(shi)間(jian),通(tong)過(guo)手(shou)動(dong)運(yun)動(dong)操(cao)作(zuo)跟(gen)隨(sui)軸(zhou)到(dao)等(deng)待(dai)觸(chu)發(fa)同(tong)步(bu)運(yun)動(dong)的(de)位(wei)置(zhi),並(bing)記(ji)錄(lu)下(xia)來(lai)跟(gen)隨(sui)軸(zhou)的(de)當(dang)前(qian)位(wei)置(zhi),然(ran)後(hou)啟(qi)動(dong)皮(pi)帶(dai)軸(zhou)的(de)運(yun)動(dong),在(zai)運(yun)動(dong)中(zhong)手(shou)動(dong)給(gei)傳(chuan)感(gan)器(qi)信(xin)號(hao),觸(chu)發(fa)同(tong)步(bu)運(yun)動(dong),跟(gen)隨(sui)軸(zhou)在(zai)MOVESYNC指令的控製下完成一次同步跟隨動作。
界麵顯示了皮帶軸和跟隨軸的位置信息,並且方便配置軸的基礎參數,同步運動加速,同步和減速段的時間。

HMI操作步驟:
⊙ 第di一yi次ci運yun行xing,需xu要yao進jin行xing對dui位wei操cao作zuo,確que認ren跟gen隨sui軸zhou的de位wei置zhi,點dian擊ji產chan品pin到dao位wei,模mo擬ni產chan品pin放fang到dao了le傳chuan送song帶dai上shang開kai始shi運yun動dong,到dao達da鎖suo存cun位wei置zhi停ting止zhi,將jiang跟gen隨sui軸zhou移yi動dong到dao產chan品pin位wei置zhi處chu停ting下xia。記ji錄lu下xia跟gen隨sui軸zhou此ci時shi的de坐zuo標biao,此ci坐zuo標biaoMOVESYNC指令將會用到 。
⊙ 配置軸號,軸的運動參數,合理設置三段運動的時間 。
⊙ 點擊啟動,傳送帶運行,通過模擬信號給來料檢測信號,觸發鎖存得出皮帶軸坐標,觸發同步跟隨開始。
注意: 此例程因為用到了硬件鎖存功能,需要在控製器平台運行,沒有傳感器時,可以將OUT口短接到IN口,通過OP指令模擬傳感器鎖存信號的輸入,示例將OUT0接入IN0。
鎖存函數: 依靠鎖存傳感器檢測來料,觸發同步跟隨運動,鎖存功能記錄開始跟隨時,鎖存皮帶軸位置,記錄下當前同步軸的位置信息,傳入MOVESYNC指令參數。
global sub get_mark_pos(mode) '使用3或者4,其他方式修改等待條件和獲取的數據寄存器,reg_pos
REG_INPUTS(belt_axis) = $0000 '映射皮帶鎖存輸入
reg_count = 0
DMSET mark_flag(0,100,-1) '每次開始前清空標誌,避免誤判
WHILE 1
base(belt_axis)REGIST(mode)axis(belt_axis)
wait until mark
if reg_count >= 100 then '位置數組循環存儲值判斷
reg_count = 0
endif
mark_pos(reg_count) = REG_POS
?REG_POS
mark_flag(reg_count) = 1
reg_count = reg_count + 1
wend
endsub
同步跟隨函數: 依靠鎖存函數給的參數,設置跟隨時間,執行同步跟隨動作,分為加速、同步和減速回原位置三個階段,注意每個階段的時間規劃合理,完成一個跟隨步驟之後等待觸發下一次跟隨。
global sub run_sync()
base(sync_axis)
move_count = 0 '運動計數清0
TABLE(10) = -1 '以table 10 的值,作為同步結束標誌
WHILE 1
if move_count >= 100 then '循環
move_count = 0
endif
if mark_flag(move_count) = 1 then '判斷是否有產品觸發
if abs(sync_star_dis + mark_pos(move_count)) >= abs(mpos(belt_axis)) then '尚在有效觸發距離內,即可以跟隨
'開始跟隨
'第一段:加速段(追趕段) 跟隨模式看機構具體而定,一般皮帶編碼器方向與跟隨軸運動方向一致就用0 反方向就用 0 + pi/2
MOVESYNC(0, accel_time, mark_pos(move_count), belt_axis, sync_pos)
'第二段:同步段與加速段唯一不同是時間
MOVESYNC(0, sync_time, mark_pos(move_count), belt_axis, sync_pos)
'此處可以開啟線程去操作其他動作
'使用 move_task 指令操作
'用table 10 的值來作為其他運動的結束標誌,這裏使用move_table,是為了使同步完全結束,後麵開發時可以將MOVE_TABLE放在其他運動的線程裏麵使用
MOVE_TABLE(10,10)
elseif abs(sync_star_dis + mark_pos(move_count)) < abs(mpos(belt_axis)) then '超出範圍,直接跳過,
TABLE(10) = 10
?"跳過"
'?abs(sync_star_dis + mark_pos(move_count)) , abs(mpos(belt_axis))
endif
'判斷結束
wait UNTIL table(10) = 10
'第三段:複位段 以當前位置為停止位置,可以添加變量設置待機位。
MOVESYNC(-1, decel_time, mark_pos(move_count),-1, sync_pos)
move_table(10,-1) '結束標誌複位
mark_flag(move_count) = -1 '同步條件標誌複位
move_count = move_count + 1 '計數+ 1
endif
wend
endsub
04 運行效果
跟隨軸(軸0)跟隨皮帶(軸2)運動的速度曲線:加速段,同步段,減速回起點。

跟隨軸(軸0)跟隨皮帶(軸2)運動的位置曲線。


本次,正運動技術運動控製器 如何快速實現單軸/多軸同步跟隨功能? 就分享到這裏 。
更多精彩內容請關注“ 正運動小助手 ”公眾號,需要相關開發環境與例程代碼,請谘詢正運動技術銷售工程師:400-089-8936。
benwenyouzhengyundongjishuyuanchuang,huanyingdajiazhuanzai,gongtongxuexi,yiqitigaozhongguozhinengzhizaoshuiping。wenzhangbanquanguizhengyundongjishusuoyou,ruyouzhuanzaiqingzhumingwenzhanglaiyuan。
正運動技術專注於運動控製技術研究和通用運動控製軟硬件產品的研發,是國家級高新技術企業。正運動技術彙集了來自華為、中(zhong)興(xing)等(deng)公(gong)司(si)的(de)優(you)秀(xiu)人(ren)才(cai),在(zai)堅(jian)持(chi)自(zi)主(zhu)創(chuang)新(xin)的(de)同(tong)時(shi),積(ji)極(ji)聯(lian)合(he)各(ge)大(da)高(gao)校(xiao)協(xie)同(tong)運(yun)動(dong)控(kong)製(zhi)基(ji)礎(chu)技(ji)術(shu)的(de)研(yan)究(jiu),是(shi)國(guo)內(nei)工(gong)控(kong)領(ling)域(yu)發(fa)展(zhan)最(zui)快(kuai)的(de)企(qi)業(ye)之(zhi)一(yi),也(ye)是(shi)國(guo)內(nei)少(shao)有(you)、完整掌握運動控製核心技術和實時工控軟件平台技術的企業。主要業務有:運動控製卡_運動控製器_EtherCAT運動控製卡_EtherCAT控製器_運動控製係統_視覺控製器__運動控製PLC_運動控製_機器人控製器_視覺定位_XPCIe/XPCI係列運動控製卡等等。
|