時(shí)間:2024-12-20 11:09:25來源:深圳市雷賽智能控制股份有限公司
01、在線變速定義
在Leadsys軟件中實(shí)現(xiàn)一個(gè)軸的點(diǎn)位運(yùn)動(dòng)控制、速度控制是很簡(jiǎn)單的,只需要調(diào)用單軸運(yùn)動(dòng)指令中的點(diǎn)位控制、速度控制功能塊即可輕易實(shí)現(xiàn),這些運(yùn)動(dòng)速度往往是我們觸發(fā)功能塊的執(zhí)行運(yùn)動(dòng)時(shí)固定下來,此后的運(yùn)動(dòng)都是以此速度進(jìn)行的,運(yùn)動(dòng)過程中的速度用戶難以改變。在點(diǎn)位運(yùn)動(dòng)控制、速度控制的運(yùn)動(dòng)過程中,改變運(yùn)動(dòng)速度,便是運(yùn)動(dòng)的在線變速。
為實(shí)現(xiàn)運(yùn)動(dòng)的在線變速,這里我們提供兩種常用的實(shí)現(xiàn)方式。本期我們將介紹雷賽提供的在線變速功能塊的應(yīng)用方式。上一期中,我們分享了如何使用SM3_Basic庫的單軸運(yùn)動(dòng)指令及其BufferMode功能來實(shí)現(xiàn)變速控制(點(diǎn)擊藍(lán)字即可跳轉(zhuǎn))。
02、在線變速指令
雷賽提供了實(shí)用的在線變速的功能塊分別位于CmpLSAxisControl庫和PMC_SingleAxisLib庫中,功能塊一覽如下:
CmpLSAxisControl庫:
PMC_SingleAxisLib庫:
這些指令都是通過直接更改功能塊的輸入速度來實(shí)現(xiàn)在線變速的。
指令介紹
MC_MoveAbsolute_ChangeVel
指令格式:
MC_MoveAbsolute_ChangeVel( Axis:= 軸, Execute:= 開始運(yùn)動(dòng), Position:= 終點(diǎn)位置, Velocity:= 速度, Acceleration:= 加速度, Deceleration:= 減速度, Jerk:= 加加速度, Direction:= 方向, Done=> 運(yùn)動(dòng)完成, Busy=> 功能塊進(jìn)行中, Active=> 運(yùn)動(dòng)中, CommandAborted=> 運(yùn)動(dòng)被打斷, Error=> 出錯(cuò), ErrorID=> 錯(cuò)誤代碼);
指令說明:
●絕對(duì)點(diǎn)位運(yùn)動(dòng)在線變速功能塊,用于絕對(duì)定位運(yùn)動(dòng)過程需要實(shí)時(shí)變速的場(chǎng)景;
●運(yùn)動(dòng)過程中,修改Velocity / Acceleration / Deceleration / Jerk引腳的輸入值,即可對(duì)應(yīng)的改變運(yùn)動(dòng)的速度/加速度/減速度/加加速度;
●Velocity / Acceleration / Deceleration輸入引腳必須大于0,否則功能塊將報(bào)錯(cuò);
●目標(biāo)終點(diǎn)在Execute上升沿時(shí)確定,運(yùn)動(dòng)過程中更改不生效;
●運(yùn)動(dòng)過程中,重新觸發(fā)Execute上升沿,新的運(yùn)動(dòng)將打斷舊的運(yùn)動(dòng),軸將運(yùn)動(dòng)到新的目標(biāo)終點(diǎn);
●當(dāng)軸的速度斜坡類型設(shè)置為二次或二次(平滑)時(shí),需要設(shè)置加加速度Jerk,加加速度Jerk必須大于0;
●當(dāng)軸類型設(shè)置為模數(shù)時(shí),需要設(shè)置方向Direction;
●移動(dòng)方向Direction在Execute上升沿時(shí)確定,運(yùn)動(dòng)過程中更改不生效。
時(shí)序圖:
MC_MoveRelative_ChangeVel
指令格式:
MC_MoveRelative_ChangeVel( Axis:= 軸, Execute:= 開始運(yùn)動(dòng), Distance:= 運(yùn)動(dòng)距離, Velocity:= 速度, Acceleration:= 加速度, Deceleration:= 減速度, Jerk:= 加加速度, Done=> 運(yùn)動(dòng)完成, Busy=> 功能塊進(jìn)行中, Active=> 運(yùn)動(dòng)中, CommandAborted=> 運(yùn)動(dòng)被打斷, Error=> 出錯(cuò), ErrorID=> 錯(cuò)誤代碼);
指令說明:
●相對(duì)點(diǎn)位運(yùn)動(dòng)在線變速功能塊,用于相對(duì)定位運(yùn)動(dòng)過程需要實(shí)時(shí)變速的場(chǎng)景;
●運(yùn)動(dòng)過程中,修改Velocity / Acceleration / Deceleration / Jerk引腳的輸入值,即可對(duì)應(yīng)的改變運(yùn)動(dòng)的速度/加速度/減速度/加加速度;
●Velocity / Acceleration / Deceleration輸入引腳必須大于0,否則功能塊將報(bào)錯(cuò);
●運(yùn)動(dòng)的目標(biāo)終點(diǎn)在Execute上升沿時(shí)確定,運(yùn)動(dòng)過程中修改輸入引腳Distance,不會(huì)改變運(yùn)動(dòng)的目標(biāo)終點(diǎn);
●運(yùn)動(dòng)過程中,重新觸發(fā)Execute上升沿,新的運(yùn)動(dòng)將打斷舊的運(yùn)動(dòng),軸將運(yùn)動(dòng)到新的目標(biāo)終點(diǎn);
●當(dāng)軸的速度斜坡類型設(shè)置為二次或二次(平滑)時(shí),需要設(shè)置加加速度Jerk,加加速度Jerk必須大于0。
時(shí)序圖:
MC_MoveVelocity_ChangeVel
指令格式:
MC_MoveVelocity_ChangeVel( Axis:= 軸, Execute:= 開始運(yùn)動(dòng), Velocity:= 速度, Acceleration:= 加速度, Deceleration:= 減速度, Jerk:= 加加速度, Direction:= 方向, InVelocity=> 速度抵達(dá), Busy=> 功能塊進(jìn)行中, Active=> 運(yùn)動(dòng)中, CommandAborted=> 運(yùn)動(dòng)被打斷, Error=> 出錯(cuò), ErrorID=> 錯(cuò)誤代碼);
指令說明:
●恒速運(yùn)動(dòng)在線變速功能塊,用于恒速運(yùn)動(dòng)過程需要實(shí)時(shí)變速的場(chǎng)景;
●恒速運(yùn)動(dòng)開始后軸將一直以設(shè)定的速度一直運(yùn)動(dòng)下去,使用MC_Stop或MC_Halt指令可停止運(yùn)動(dòng);
●運(yùn)動(dòng)過程中,修改Velocity / Acceleration / Deceleration / Jerk / Direction引腳的輸入值,即可對(duì)應(yīng)的改變運(yùn)動(dòng)的速度/加速度/減速度/加加速度/方向;
●Velocity / Acceleration / Deceleration輸入引腳必須大于0,否則功能塊將報(bào)錯(cuò);
●運(yùn)動(dòng)的方向由Direction引腳決定,而不是Velocity的參數(shù)前面的正負(fù)號(hào),線性軸和模數(shù)軸可用的方向選項(xiàng)有所不同;
●當(dāng)軸的速度斜坡類型設(shè)置為二次或二次(平滑)時(shí),需要設(shè)置加加速度Jerk,加加速度Jerk必須大于0。
時(shí)序圖:
MC_JOG_ChangeVel
指令格式:
MC_JOG_ChangeVel( Axis:= 軸, JogForward:= 正向Jog, JogBackward:= 負(fù)向Jog, Velocity:= 速度, Acceleration:= 加速度, Deceleration:= 減速度, Jerk:= 加加速度, Busy=> 功能塊進(jìn)行中, CommandAborted=> 運(yùn)動(dòng)被打斷, Error=> 出錯(cuò), ErrorID=> 錯(cuò)誤代碼);
指令說明:
●JOG運(yùn)動(dòng)在線變速功能塊,用于點(diǎn)動(dòng)運(yùn)動(dòng)過程需要實(shí)時(shí)變速的場(chǎng)景;
●運(yùn)動(dòng)過程中,修改Velocity / Acceleration / Deceleration / Jerk / Direction引腳的輸入值,即可對(duì)應(yīng)的改變運(yùn)動(dòng)的速度/加速度/減速度/加加速度/方向;
●Velocity / Acceleration / Deceleration輸入引腳必須大于0,否則功能塊將報(bào)錯(cuò);
●當(dāng)軸的速度斜坡類型設(shè)置為二次或二次(平滑)時(shí),需要設(shè)置加加速度Jerk,加加速度Jerk必須大于0。
時(shí)序圖:
LS_MoveAbsChangePosVel
指令格式:
LS_MoveAbsChangePosVel(Axis:= 軸, Execute:= 開始運(yùn)動(dòng), Position:= 目標(biāo)位置, Velocity:= 速度, Acceleration:= 加速度, Deceleration:= 減速度, Jerk:= 加加速度, Done=> 完成, Busy=> 功能塊進(jìn)行中, CommandAborted=> 運(yùn)動(dòng)被打斷, Error=> 出錯(cuò), ErrorID=> 錯(cuò)誤ID);
指令說明:
●絕對(duì)點(diǎn)位運(yùn)動(dòng)在線變速變位功能塊,用于絕對(duì)定位運(yùn)動(dòng)過程需要實(shí)時(shí)變速變位的場(chǎng)景;
●運(yùn)動(dòng)過程中,修改Position / Velocity / Acceleration / Deceleration / Jerk引腳的輸入值,即可對(duì)應(yīng)的改變運(yùn)動(dòng)的位置/速度/加速度/減速度/加加速度;
●Velocity / Acceleration / Deceleration輸入引腳必須大于0,否則功能塊將報(bào)錯(cuò);
●運(yùn)動(dòng)過程中,重新觸發(fā)Execute上升沿,新的運(yùn)動(dòng)將打斷舊的運(yùn)動(dòng),軸將運(yùn)動(dòng)到新的目標(biāo)終點(diǎn);
●當(dāng)軸的速度斜坡類型設(shè)置為二次或二次(平滑)時(shí),需要設(shè)置加加速度Jerk,加加速度Jerk必須大于0;
●指令不支持仿真,仿真運(yùn)行時(shí)功能塊報(bào)錯(cuò)16#0FFFFFFF。
●與MC_MoveAbsolute_ChangeVel指令的差異:
LS_MoveChangeVel
指令格式:
LS_MoveChangeVel(Axis:= 軸, Execute:= 開始運(yùn)動(dòng), Velocity:= 速度, Acceleration:= 加速度, Deceleration:= 減速度, Jerk:= 加加速度, Direction:= 方向, InVelocity=> 速度抵達(dá), Busy=> 功能塊進(jìn)行中, CommandAborted=> 運(yùn)動(dòng)被打斷, Error=> 出錯(cuò), ErrorID=> 錯(cuò)誤ID);
指令說明:
●恒速運(yùn)動(dòng)在線變速功能塊,用于恒速運(yùn)動(dòng)過程需要實(shí)時(shí)變速的場(chǎng)景;
●恒速運(yùn)動(dòng)開始后軸將一直以設(shè)定的速度一直運(yùn)動(dòng)下去,使用MC_Stop或MC_Halt指令可停止運(yùn)動(dòng);
●運(yùn)動(dòng)過程中,修改Velocity / Acceleration / Deceleration / Jerk / Direction引腳的輸入值,即可對(duì)應(yīng)的改變運(yùn)動(dòng)的速度/加速度/減速度/加加速度/方向;
●Velocity / Acceleration / Deceleration輸入引腳必須大于0,否則功能塊將報(bào)錯(cuò);
●運(yùn)動(dòng)的方向由Direction引腳決定,而不是Velocity的參數(shù)前面的正負(fù)號(hào),Direction為1正向運(yùn)動(dòng),為-1負(fù)向運(yùn)動(dòng);
●當(dāng)軸的速度斜坡類型設(shè)置為二次或二次(平滑)時(shí),需要設(shè)置加加速度Jerk,加加速度Jerk必須大于0;
●指令不支持仿真,仿真運(yùn)行時(shí)功能塊報(bào)錯(cuò)16#0FFFFFFF。其他功能和MC_MoveVelocity_ChangeVel一致。
03、編程方法
通過上面的介紹,我們已經(jīng)了解了在線變速功能塊的基本用法,下面通過三個(gè)編程實(shí)例介紹如何使用在線變速指令。
實(shí)例一
控制軸以20速度運(yùn)動(dòng)到100位置,然后加速到30運(yùn)動(dòng)到200位置。
程序:
①添加MC_Power軸使能功能塊以使能軸。
?、谔砑覯C_MoveAbsolute_ChangeVel功能塊,添加用于控制功能塊啟動(dòng)、運(yùn)動(dòng)位置和運(yùn)動(dòng)速度的變量。
?、劬帉懣刂瞥绦颉.?dāng)變量MoveStart=TRUE時(shí),軸開始以10的速度運(yùn)動(dòng)到100;軸運(yùn)動(dòng)到100位置后,軸的速度增加到20;軸運(yùn)動(dòng)到200位置,運(yùn)動(dòng)結(jié)束。
結(jié)果:
實(shí)例二
控制軸以10速度開始運(yùn)動(dòng)到100位置,運(yùn)動(dòng)過程中接收到in1輸入信號(hào),速度增加到20。
程序:
?、偬砑覯C_Power軸使能功能塊以使能軸。
?、谔砑覯C_MoveAbsolute_ChangeVel功能塊,添加用于控制功能塊啟動(dòng)、運(yùn)動(dòng)位置和運(yùn)動(dòng)速度的變量。
③編寫控制程序。當(dāng)觸發(fā)輸入信號(hào)in0時(shí),軸開始以10的速度運(yùn)動(dòng)到100位置;如果在運(yùn)動(dòng)過程中觸發(fā)了輸入信號(hào)in1,軸的速度增加到20;軸到達(dá)100位置時(shí),運(yùn)動(dòng)完成。
結(jié)果:
實(shí)例三
用觸摸屏控制軸的JOG運(yùn)動(dòng),軸的運(yùn)動(dòng)速度可以隨意改變。
觸摸屏程序:
?、偻ㄓ嵲O(shè)置,使用觸摸屏的Modbus TCP通訊,設(shè)置如下
?、谔砑釉阂粋€(gè)數(shù)值輸入,兩個(gè)位設(shè)定開關(guān)。數(shù)值輸入用于設(shè)定JOG運(yùn)動(dòng)的速度,兩個(gè)開關(guān)分別控制軸的正轉(zhuǎn)和反轉(zhuǎn)。
PLC程序:
?、賳⒂肕odbus TCP從站,與觸摸屏通訊
?、谔砑覯C_Power軸使能功能塊以使能軸。
③添加MC_JOG_ChangeVel功能塊,添加用于控制軸正向運(yùn)動(dòng)、反向運(yùn)動(dòng)和運(yùn)動(dòng)速度的變量,并綁定與觸摸屏對(duì)應(yīng)的通訊地址。
結(jié)果:
04、小結(jié)
通過上述介紹我們了解到在線變速的兩種實(shí)現(xiàn)方式,不難發(fā)現(xiàn),兩種實(shí)現(xiàn)方式從編程到實(shí)現(xiàn)的效果存在不少區(qū)別。
從運(yùn)動(dòng)控制的覆蓋性來說,BufferMode支持絕對(duì)點(diǎn)位、相對(duì)點(diǎn)位、恒速運(yùn)動(dòng)的在線變速,而指令在這個(gè)基礎(chǔ)上還支持JOG在線變速。
在編程方面,BufferMode往往需要定義多個(gè)運(yùn)動(dòng)功能塊來實(shí)現(xiàn)在線變速,而在線變速指令只需要一條指令便可實(shí)現(xiàn)運(yùn)動(dòng)與運(yùn)動(dòng)中變速,而且在線變速指令比BufferMode的實(shí)現(xiàn)代碼要簡(jiǎn)單得多。
在運(yùn)動(dòng)效果方面,BufferMode能在更加精準(zhǔn)的位置上進(jìn)行變速,而指令需要用程序判斷達(dá)到指定的軸位置再進(jìn)行變速,在變速的點(diǎn)位精度上不如BufferMode。
從調(diào)試的靈活性來說,在線變速指令可以隨時(shí)修改速度的特性,能給調(diào)試帶來許多方便,且能大幅減少程序量。
無論是何種實(shí)現(xiàn)方式,只要是符合使用場(chǎng)景的方式,就是合適的方式。用戶應(yīng)根據(jù)實(shí)際的使用需求選擇合適的實(shí)現(xiàn)方式。
END
中國傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動(dòng)網(wǎng)(www.connectcrack.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11
rpi-image-gen:樹莓派軟件鏡像構(gòu)建的終...
2025-04-08
【產(chǎn)品解讀】全面提升精密制造檢測(cè)節(jié)拍...
2025-03-31
激光閃耀 智慧引領(lǐng) | WISE MASER 黑武士...
2025-03-20