應用背景 ?
自科技發展以來,鋰電池具有使用壽命長、適應性強以及能量高等優點,因此鋰電池在電子產品、交通工具等領域的應用也越來越廣泛,由此衍生的鋰電池焊接等生產行業也在市場中迅速擴張。 隨著市場競爭地不斷增長,鋰電池焊接行業對精度要求也越來越高,本文主要介紹正運動運動控制器ZMC432的SS曲線可實現高精度焊接工藝的需求。 ZMC432可實現一臺控制器拖動多臺電機的效果,滿足鋰電池焊接行業同時控制多軸多工位加工的需求。
01 ZMC432功能簡介 ?
ZMC432是正運動推出的一款多軸高性能EtherCAT總線運動控制器,具有EtherCAT、EtherNET、RS232、CAN和U盤等通訊接口,ZMC系列運動控制器可應用于各種需要脫機或聯機運行的場合。 ZMC432最多可支持32軸運動控制,支持直線插補、任意圓弧插補、空間圓弧、螺旋插補、電子凸輪、電子齒輪、同步跟隨等功能。
?
ZMC432支持PLC、Basic、HMI組態三種編程方式。PC上位機API編程支持C#、C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。 ? ?
ZMC432內置高精度PSO位置同步輸出功能,在加工圓角與曲線時即使進行有減速調整,在高速加工的場合中也能控制激光輸出的等間距輸出。 實現PSO硬件比較輸出功能的命令主要有HW_PSWITCH2、MOVE_HWPSWITCH、HW_TIMER等。 ?
例如在做鋰電池焊接的圓角加工時,在減速的同時能保證輸出間距恒定,同時結合SS曲線加工工藝增大了工藝柔性。既保證了加工效果,減少機械抖動,也最大限度地提高產能。
? ? 02 軸速度曲線
常見運動曲線分為梯形速度曲線和S形速度曲線兩種。在此基礎上,正運動還推出了另一種速度曲線:SS速度曲線。
下文將主要介紹三種常見的速度曲線!
1.梯形速度曲線
梯形曲線又名T形曲線,用于表達速度與時間的關系,梯形速度曲線圖可見下圖。由圖可知,標準的梯形速度曲線有3個階段,分別為勻加速、勻速、勻減速階段。 因此在進行插補運動時,可在軸參數初始化時,直接采用Basic指令對軸進行速度參數設置(SPEED速度、ACCEL加速度、DECEL減速度)。
由于梯形速度曲線在運動控制中的規劃是最快的,同時也是最簡單的,因此梯形曲線在工業控制領域應用中最為廣泛。 但梯形曲線也存在缺點,梯形速度不夠平滑,在速度曲線的轉角加速度不連續,在實際插補運動中容易導致機器抖動等現象,或易對機臺造成沖擊等。
2.S形速度曲線
S形速度曲線同樣用于表達速度與時間的關系。但與梯形曲線的區別在于對梯形曲線的加速和減速階段進行平滑,平滑后曲線形狀如字母S。S形速度曲線如下圖所示。 正運動Basic語言提供了專門的SRAMP指令實現。在實際運動應用中,通過SRAMP指令進行對應的值設置,可使運動中的速度曲線更加平滑,從而減少對控制過程中的沖擊,并使插補過程具有柔性。
SRAMP指令使用語法:VAR1 = SRAMP,SRAMP?= smoothms。 smoothms:毫秒單位,設置后加減速過程會延長相應的時間,可設的時間長短和加減速實際延長時間與distance、speed、accel均有關。
3.SS速度曲線
SS速度曲線又名加加速度曲線,用于表達加速度與時間的關系。加加速度是描述加速度變化快慢的物理量,即加速度的變化率。 正運動Basic語言中提供了VP_MODE指令的模式6和7可實現SS曲線(下文將詳細講解VP_MODE指令),即對加速度的加速和減速階段進行平滑,如下圖所示。
對加加速度進行平滑后,在一些高精度運動的工業應用場合中,可降低機構因加速度變化率太快而導致的沖擊過大和抖動現象。 例如常見的鋰電池焊接加工行業,在對動力電池頂蓋進行軌跡焊接時,在每個拐角處走倒角的時候,對其應用SS曲線,則可有效增大其柔性,降低機臺抖動和沖擊,使得焊接過程更加平穩且連續。 ? ?
03 速度曲線理論分析
梯形速度曲線只有勻加速、勻速和勻減速三個階段。而S形曲線由于對加減速階段進行了平滑,因此可分為7個階段,如下圖,S曲線的作用范圍是T1、T3、T5、T7;SS曲線的作用范圍也相同,區別在于SS曲線的加速度變化更為平緩。
由于S形曲線在加速和減速過程中,其加速度是變化的,因此引入了一個新的變量J,即加加速度。
?J=da/dt
在加速度變化過程中,規定最大加速度為amax,最小加速度為-amax,由此可推出各個階段的加速度與加加速度之間的關系:? ? ? ? ?
???
通常確定整個運行過程,需要知道三個基本系統參數:
1.加速度時間關系
根據上圖的加速度變化曲線圖,由圖中可知T1-T3為勻加速階段,T4為勻加速階段,T5-T6為勻減速階段,該處引入另一個變量μ。則:
根據公式①和②可得到加速度與時間的關系函數如下:
2.速度時間關系
速度與加速度存在的函數關系為:v=at;加加速度和速度的關系則滿足:
結合加速度時間關系并結合上述加速度與時間關系函數,可得到如下所示的關系:
簡化之后可得:
以上便是速度、加速度、加加速度三者之間曲線變化之間的函數關系。
04 VP_MODE指令說明及使用例程 1.指令詳解 1.指令說明
通過VP_MODE指令可實現對加減速曲線類型進行設置,有多個模式可選擇,可設置S形曲線、SS曲線,使得梯形曲線更加平滑。該指令一般用于軸參數初始化程序中,可與SRAMP指令同時使用,當VP_MODE為模式0時,以SRAMP設置的值生效。
語法:VAR1 = VP_MODE或 VP_MODE(axis)=mode
mode:模式選擇
VP_MODE模式如下:
模式 | 描述 |
0 | 缺省值,使用SRAMP來設置S曲線; |
4 |
起步時最大加速度,達到最高速時加速度漸變為0;S和SS曲線圖如下所示。 該模式適用于對沖擊沒有要求的高速啟停的加工場合。 |
6 |
新增類型SS曲線,加加速度連續的曲線類型,SS模式比T形減速會增加87%的減速時間。此模式只有減速階段才生效,加速階段則以模式0的方式生效,方便連續小線段插補; 該模式適用于高速啟動,平穩停止的加工場合。 |
7 |
新增類型SS曲線,加加速度連續的曲線類型。動態修改軸參數或連續插補可能導致加加速度無法連續,此時會切換到模式0,因此建議SRAMP也設置合適值。 該模式適用于高精度且啟停速度平穩的無沖擊加工場合。 |
2.使用例程
以下例程均可通過ZMC432控制器實現,連接架構圖如下所示:
(1)VP_MODE設置為模式0,以單軸運動為例。
?
RAPIDSTOP(2) '停止之前的全部軸 WAIT IDLE(0) '等待軸0停止 BASE(0) '設置軸 ATYPE=1 '設置軸類型為脈沖 UNITS=1000 '脈沖當量 DPOS=0 MPOS=0 SPEED=100 '設置速度為100 ACCEL=1000 '設置加速度1000 DECEL=1000 '設置減速度1000 SRAMP=50 '設置S曲線時間為50ms VP_MODE=0 '軸0設置模式0 TRIGGER MOVE(25) '單軸運動25 END當SRAMP=50時,速度和加速度的曲線如下圖所示,分別在加速和減速階段都進行了平滑,而運動時間也會相應地延長。可與SRAMP=0時的曲線圖進行對比。
?
當SRAMP=0時,速度和加速度的曲線如下圖所示:
(2)VP_MODE設置為模式4,以多軸直線插補運動為例。
?
RAPIDSTOP(2) '停止之前的全部軸 WAIT UNTIL IDLE(0) AND IDLE(1) '等待軸0和軸1停止 BASE(0,1) '設置軸,軸0為主軸 ATYPE=1,1 UNITS=1000,1000 DPOS=0,0 MPOS=0,0 SPEED=100,100 '設置軸0和軸1速度為100 ACCEL=1000,1000 DECEL=1000,1000 MERGE=ON '開啟連續插補 SRAMP=0,0 '不設置S曲線 VP_MODE=4,0 '軸0設置模式4,軸1設置模式0 TRIGGER MOVE(25,25) '插補運動 END上述配置下,軸0采用VP_MODE模式4,起步以最高加速度開始運動并遞減至0。該模式適用于需要快速啟停的場合。
?
注:由于該運動為插補運動,軸0為主軸,因此速度及加速度曲線看主軸即可。VP_ACCEL數據源需通過手動輸入,采集S曲線和SS曲線下的加速度值的變化。
(3)VP_MODE設置為模式6,以多軸直線插補運動為例。
?
RAPIDSTOP(2) '停止之前的全部軸 WAIT UNTIL IDLE(0) AND IDLE(1) '等待軸0和軸1停止 BASE(0,1) '設置軸,軸0為主軸 ATYPE=1,1 UNITS=1000,1000 DPOS=0,0 MPOS=0,0 SPEED=100,100 '設置軸0和軸1速度為100 ACCEL=1000,1000 DECEL=1000,1000 MERGE=ON '開啟連續插補 SRAMP=0,0 '不設置S曲線 VP_MODE=6,0 '軸0設置模式6,軸1設置模式0 TRIGGER MOVE(25,25) '插補運動 END
?
當VP_MODE設置為模式6時,只對減速階段進行平滑。當加速階段沒有設置S或SS曲線時,則加速度上電瞬間便達到最大值,以設定的加速度運動。當減速階段設置了SS曲線,由下圖可知,對加速度曲線進行了平滑減速,使得運動在減速階段過渡更為自然平滑。
該模式適用于連續插補場合,保證運動平穩的條件下,提高效率。
注:由于該運動為插補運動,軸0為主軸,因此速度及加速度曲線看主軸即可。
(4)VP_MODE設置為模式7,以鋰電池行業的跑道軌跡加工運動為例。
?
RAPIDSTOP(2) '停止之前的全部軸 WAIT UNTIL IDLE(0) AND IDLE(1) '等待軸0和軸1停止 BASE(0,1) '設置軸0和軸1 ATYPE=1,1 UNITS=1000,1000 DPOS=0,0 MPOS=0,0 SPEED=100,100 '設置軸0和軸1速度分別為100 ACCEL=1000,1000 '設置軸0和軸1加速度為1000 DECEL=1000,1000 MERGE=ON SRAMP=100,100 '設置S曲線時間為100 VP_MODE=7,7 '軸0設置模式7,即設置SS曲線 TRIGGER MOVE(10,0) '軸0正向運動10 MOVECIRC(2.5,2.5,0,2.5,0) '做半徑為2.5的圓弧運動 MOVE(0,10) '軸1正向運動10 MOVECIRC(-2.5,2.5,-2.5,0,0) MOVE(-20,0) '軸0負向運動20 MOVECIRC(-2.5,-2.5,0,-2.5,0) MOVE(0,-10) '軸1負向運動10 MOVECIRC(2.5,-2.5,2.5,0,0) MOVE(10,0) '軸0正向運動10 ENDVP_MODE設置為模式7,對SS曲線進行平滑后的圖像如下,可與下圖的VP_ACCEL加速度曲線(淺藍色線條)進行對比。適用于運動抖動較大的場合。 注:由于該運動為插補運動,軸0為主軸,因此速度及加速度曲線看主軸即可。
?
XY模式下軸0和軸1的插補軌跡:
(5)以下是未設置SS曲線的速度曲線圖。
?
SRAMP=100,100 '設置S曲線時間為100 VP_MODE=0,0 ' SS曲線取消由示波器采樣圖形可知,當前按S曲線運動。
?
由此可以對比得出VP_MODE=7,軸0,軸1的SS加減速的速度曲線更柔和。
審核編輯:劉清
評論
查看更多