導(dǎo)讀
想深入了解ZMC600E運(yùn)動(dòng)控制器的速度規(guī)劃嗎?T型線性加減速簡(jiǎn)潔高效,S型過渡自然減震,避免沖擊。通過合理的規(guī)劃選擇,可有效提升設(shè)備精度、效率與性能。深入探索其核心,為工業(yè)自動(dòng)化設(shè)備的控制賦能。
ZMC600E?是廣州致遠(yuǎn)電子股份有限公司開發(fā)的最新一代高性能智能總線型控制器,是面向工廠智能化時(shí)代的機(jī)器人控制器。ZMC600E采用多核異構(gòu)應(yīng)用處理器為核心,其內(nèi)核包括2個(gè)64位的Arm?Cortex?-A53核,主頻1.0GHz;4個(gè)Cortex?-R5F內(nèi)核,主頻800MHz。同時(shí)板載1GB DDR4、4GB eMMC以及32KB FRAM。
ZMC600E EtherCAT主站控制器為了滿足不同的自動(dòng)化應(yīng)用需求,在硬件接口上面,精心設(shè)計(jì)了1路EtherCAT主站接口,ms 周期任務(wù)抖動(dòng)?±5μs 以內(nèi);3 路以太網(wǎng)接口,其中1路是千兆網(wǎng)口;2路RS485;2路CAN;32個(gè)用戶I/O,其中16路DI,16路DO,輸入支持最多2路正交編碼或兩路脈沖計(jì)數(shù);1個(gè)USB3.0接口;支持TF卡;系統(tǒng)電源采用高穩(wěn)定隔離電源,支持掉電檢測(cè);提供多種程序加密手段,保護(hù)用戶應(yīng)用軟件知識(shí)產(chǎn)權(quán)。
ZMC600E 示意圖及接口圖如下所示:
圖1 產(chǎn)品示意圖
圖2 ZMC600E接口圖
ZMC600E EtherCAT主站控制器為設(shè)備制造商提供多軸數(shù)、多IO點(diǎn)數(shù)控制的新一代可靠智能的運(yùn)動(dòng)控制解決方案,提供T型、S型速度規(guī)劃算法,可以廣泛應(yīng)用于注塑行業(yè)、沖壓行業(yè)、車床行業(yè)、搬運(yùn)碼垛、關(guān)節(jié)機(jī)器人、噴涂、玻璃機(jī)、壓鑄機(jī)、包裝設(shè)備、3C設(shè)備、鋰電池設(shè)備、紡織、流水線工作站、非標(biāo)自動(dòng)化裝備、特種機(jī)床等高端設(shè)備應(yīng)用。
速度規(guī)劃的概念
速度規(guī)劃這里特指,在已知運(yùn)動(dòng)的起點(diǎn)和終點(diǎn)和完整路徑的情況下,基于給定的時(shí)間約束, 最大速度約束和最大加速度減速度約束的條件,設(shè)計(jì)運(yùn)動(dòng)的速度隨時(shí)間的曲線。速度規(guī)劃是運(yùn)動(dòng)控制領(lǐng)域中的一個(gè)關(guān)鍵環(huán)節(jié),其核心目的是為機(jī)械設(shè)備或機(jī)器人在運(yùn)動(dòng)路徑上設(shè)計(jì)合適的速度曲線,以確保整個(gè)運(yùn)動(dòng)過程的平滑性、效率、安全性和舒適性。合理的速度規(guī)劃能夠有效提升設(shè)備的運(yùn)行效率、精度和穩(wěn)定性,同時(shí)減少能耗和機(jī)械磨損。因此,在自動(dòng)化系統(tǒng)中,速度規(guī)劃是提高性能和可靠性的核心技術(shù)之一。常用的速度規(guī)劃主要為T型和S型速度規(guī)劃算法。
T型規(guī)劃
T型規(guī)劃,也稱為梯形速度規(guī)劃,是工業(yè)界最廣泛采用的形式,它是一種時(shí)間最優(yōu)的簡(jiǎn)單速度規(guī)劃方法。它通常包括三個(gè)階段:加速、勻速和減速。在加速階段,速度從零逐漸增加到設(shè)定的最大速度;在勻速階段,速度保持恒定;在減速階段,速度逐漸減小到零。
T型速度規(guī)劃圖示如下:
圖3 T型速度規(guī)劃曲線
T型速度規(guī)劃問題可以定義為:已知路程S,初始速度V0,結(jié)束速度Vn,限制條件最大速度Vmax,最大加速度Accmax,最大減速度Decmax。被控對(duì)象從A點(diǎn)運(yùn)動(dòng)到B點(diǎn),要求生成的速度軌跡在這些條件下時(shí)間最優(yōu)。
從圖3可以明顯看出,T 型規(guī)劃的加速度表現(xiàn)出不連續(xù)性。具體而言,在加速階段與勻速階段以及減速階段與勻速階段的銜接處,存在著較為顯著的突變情況。這種突變會(huì)對(duì)執(zhí)行器產(chǎn)生沖擊,影響舒適性。T 型規(guī)劃適用于機(jī)械加工快速定位及對(duì)響應(yīng)速度要求高、舒適性要求低的工業(yè)自動(dòng)化領(lǐng)域。
S型規(guī)劃
S型規(guī)劃,也稱為S曲線速度規(guī)劃,是一種平滑的速度規(guī)劃方法。S型規(guī)劃通常包括7個(gè)階段:加加速、勻加速、減加速、勻速、加減速、勻減速、減減速。這種規(guī)劃方法可以減少機(jī)器的振動(dòng)和噪音,提高運(yùn)動(dòng)的平滑性。
S型速度規(guī)劃圖示如下:
圖4 S型速度規(guī)劃曲線S型速度規(guī)劃問題可以定義為:已知路程S,初始速度V0、結(jié)束速度Vn、以及限制條件最大速度Vmax,最大加速度Accmax,最大減速度Decmax、最大加加速度Jerkmax。被控對(duì)象從起點(diǎn)A移動(dòng)到終點(diǎn)B,要求生成的速度軌跡在滿足上述約束條件下時(shí)間最優(yōu)。
與T 型速度規(guī)劃不同,S 型速度規(guī)劃在加速和減速階段不僅考慮加速度的限制,還引入了加加速度(jerk)的限制。這使得速度曲線在加速和減速時(shí)呈現(xiàn)平滑的 S 型曲線,避免突然的加速度變化,從而減少?zèng)_擊,提高運(yùn)動(dòng)的平穩(wěn)性。因此,S 型速度規(guī)劃通常用于對(duì)平滑度要求較高的運(yùn)動(dòng)控制場(chǎng)景,如機(jī)器人、數(shù)控機(jī)床等應(yīng)用中。
速度規(guī)劃API
ZMC600E 運(yùn)動(dòng)控制器提供了T型和S型運(yùn)動(dòng)控制 API 接口,方便用戶進(jìn)行速度規(guī)劃的設(shè)置和調(diào)整。
創(chuàng)建T型速度規(guī)劃
創(chuàng)建S型速度規(guī)劃
刪除速度規(guī)劃的句柄
配置速度規(guī)劃限制參數(shù)
設(shè)置速度規(guī)劃
獲取執(zhí)行速度規(guī)劃的所需的總時(shí)間
獲取某個(gè)時(shí)間點(diǎn)的規(guī)劃信息
示例
從A點(diǎn)到B點(diǎn)路程共50m,從起點(diǎn)開始運(yùn)動(dòng),起始和結(jié)束速度為0,最大速度5m/s,最大加速度2m/s2,最大減速度2m/s2,分別使用T型和S型速度規(guī)劃,?使用S型時(shí)最大加加速度4m/s3。
代碼如下:
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include "velocity.h"
int main(int argc, char *argv[])
{
?if (argc != 2)
?{
? ?printf( "Usage: ./velocity_test 0/1n");
? ?return -1;
?}
?
?velocity_handle handle = NULL;
?
?if(strcmp(argv[1], "0") == 0)
?{
? ?handle = velocity_new_t();
? ?velocity_set_config(handle, 5, 2, 2, 0);
?}
?else if(strcmp(argv[1], "1") == 0)
?{
? ?handle = velocity_new_s();
? ?velocity_set_config(handle, 5, 2, 2, 4);
?}
?else
?{
? ?printf( "Usage: ./velocity_test 0/1n");
? ?return -1;
?}
?
?velocity_set_plan(handle, 50, 0, 0);
?double time = velocity_get_plan_time(handle);
?for(double t = 0; t < time; t+=0.001)
?{
? ?double pos = 0, vel = 0, acc = 0;
? ?velocity_get_plan_slice(handle, t, &pos, &vel, &acc);
? ?printf("pos:%f, vel:%f, acc:%fn", pos, vel, acc);
?}
?velocity_delete(handle);
?return 0;
}
執(zhí)行結(jié)果如圖下圖所示。
圖5 T型速度規(guī)劃示例
圖6 S型速度規(guī)劃示例
ZMC600E 運(yùn)動(dòng)控制器提供T型和S型速度規(guī)劃算法可以滿足不同應(yīng)用場(chǎng)景下的速度控制需求。深入掌握速度規(guī)劃技術(shù),將有助于提高設(shè)備的控制精度和效率,為工業(yè)生產(chǎn)帶來(lái)更大的價(jià)值。