技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 雷賽在線變速功能塊:讓運(yùn)動(dòng)控制更簡(jiǎn)單、更高效!

雷賽在線變速功能塊:讓運(yùn)動(dòng)控制更簡(jiǎn)單、更高效!

時(shí)間:2024-12-20 11:09:25來源:深圳市雷賽智能控制股份有限公司

導(dǎo)語:?在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)過程中的速度用戶難以改變。

  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

標(biāo)簽: 雷賽智能

點(diǎn)贊

分享到:

上一篇:應(yīng)用案例 | RB系列超輕薄卡片...

下一篇:六維力傳感器精度的影響因素

中國傳動(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é)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號(hào) | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)