導(dǎo)讀
想深入了解ZMC600E運動控制器的插補算法嗎?空間直線插補適用于精確定位,圓弧插補提供平滑曲線過渡。合理應(yīng)用這些算法,能提升多軸協(xié)同能力,保障工作精度與可靠性,讓工業(yè)自動化更高效、更智能。
ZMC600E是廣州致遠(yuǎn)電子股份有限公司開發(fā)的最新一代高性能智能總線型控制器,是面向工廠智能化時代的機(jī)器人控制器。ZMC600E采用多核異構(gòu)應(yīng)用處理器為核心,其內(nèi)核包括2個64位的ArmCortex-A53核,主頻1.0GHz;4個Cortex-R5F內(nèi)核,主頻800MHz。同時板載1GB DDR4、4GB eMMC以及32KB FRAM。
ZMC600E EtherCAT主站控制器為了滿足不同的自動化應(yīng)用需求,在硬件接口上面,精心設(shè)計了1路EtherCAT主站接口,ms 周期任務(wù)抖動±5μs 以內(nèi);3 路以太網(wǎng)接口,其中1路是千兆網(wǎng)口;2路RS485;2路CAN;32個用戶I/O,其中16路DI,16路DO,輸入支持最多2路正交編碼或兩路脈沖計數(shù);1個USB3.0接口;支持TF卡;系統(tǒng)電源采用高穩(wěn)定隔離電源,支持掉電檢測;提供多種程序加密手段,保護(hù)用戶應(yīng)用軟件知識產(chǎn)權(quán)。
ZMC600E 示意圖及接口圖如下所示:
圖1 產(chǎn)品示意圖
圖2 ZMC600E接口圖
ZMC600E EtherCAT主站控制器為設(shè)備制造商提供多軸數(shù)、多IO點數(shù)控制的新一代可靠智能的運動控制解決方案,提供空間直線、圓弧插補算法,可以廣泛應(yīng)用于注塑行業(yè)、沖壓行業(yè)、車床行業(yè)、搬運碼垛、關(guān)節(jié)機(jī)器人、噴涂、玻璃機(jī)、壓鑄機(jī)、包裝設(shè)備、3C設(shè)備、鋰電池設(shè)備、紡織、流水線工作站、非標(biāo)自動化裝備、特種機(jī)床等高端設(shè)備應(yīng)用。
?插補的概念
插補是數(shù)控機(jī)床中的一項關(guān)鍵技術(shù),它通過特定的算法精確確定刀具或機(jī)械部件的運動軌跡。這一過程的核心目標(biāo)是根據(jù)預(yù)定的運動要求,實時計算出各個坐標(biāo)軸的運動指令,驅(qū)動執(zhí)行部件協(xié)調(diào)地運動,確保機(jī)械部件能夠沿著理想的軌跡和速度精確移動。插補算法的基本原理涉及數(shù)字計算,它不斷地生成各軸的進(jìn)給指令,使得在運動過程中各軸能夠同步且協(xié)調(diào)地運動,從而確保設(shè)備能夠精確地完成預(yù)定的路徑。
插補通常涉及至少兩個軸的協(xié)同工作。首先,通過建立坐標(biāo)系,將運動軸映射到相應(yīng)的坐標(biāo)系中。然后,運動控制器依據(jù)插補算法來控制各個軸的運動,實現(xiàn)所需的軌跡。在常見的插補類型中,直線插補用于實現(xiàn)兩個點之間的直線運動,而圓弧插補則用于實現(xiàn)沿圓弧軌跡的運動。這兩種插補都依賴于算法的實時計算,以保證軌跡運動的精度和平穩(wěn)性。簡而言之,插補是數(shù)控系統(tǒng)中確保機(jī)械部件按照預(yù)定軌跡精確、高效運動的一種技術(shù)。
?直線插補
以二維空間簡化說明,如圖1所示,直線插補運動:由起始點處沿X 方向走一小段(給一個脈沖當(dāng)量軸走一段固定距離),發(fā)現(xiàn)終點在實際輪廓的下方,則下一條線段沿 Y 方向走一小段,此時如果線段終點還在實際輪廓下方,則繼續(xù)沿 Y 方向走一小段,直到在實際輪廓上方以后,再向 X 方向走一小段,依次循環(huán)類推,直到到達(dá)輪廓終點為止。空間直線適用于任意維空間的直線,插補方法也是一樣的道理。
圖3 直線插補示意圖
?圓弧插補
圓弧插補與直線插補類似,都是通過給定起止點及相關(guān)參數(shù),計算出一系列逼近實際圓弧的離散點。這些點構(gòu)成插補軌跡,控制各個軸沿此軌跡運動,最終完成圓弧路徑的加工??臻g圓弧插補既可以在二維平面進(jìn)行,也可以是三維空間的協(xié)同運動。
以二軸為例簡化說明,如圖2所示,圓的插補運動:將通過一定的算法,逐步計算出圓弧的離散點,并控制兩個軸按這些點進(jìn)行協(xié)調(diào)運動,最終加工出目標(biāo)圓弧路徑。這一過程能夠?qū)崿F(xiàn)精確的曲線軌跡控制,確保機(jī)械部件沿指定的圓弧軌跡平穩(wěn)移動。
圖4 圓弧插補
空間圓弧默認(rèn)為三維,構(gòu)造圓弧時,方向逆時針為正、除起始點和終點外,輔助參數(shù)輸入分為三種:
圖5 空間圓弧構(gòu)造
輔助點為圓弧上的點,其優(yōu)勢在于,路徑方向唯一,且實際輔助點可以通過示教獲得。
輔助點為圓心點,正常情況下是有兩個方向的解,因此需要額外指定方向。但與起點、終點的夾角不能是180度,否則有無數(shù)解;缺點在于圓心處于障礙物區(qū)間時無法通過示教獲得。
輔助點為與與原點形成的向量為平面法向量,向量長度為半徑坐標(biāo),方向根據(jù)右手原則。但已知半徑下,圓心在它們的中垂線上,同樣有兩個解。算法會選擇起點和終點之間距離較短的那個圓,即總的運動角度最多為180度。缺點是圓弧角度必須小于或等于180°。
?插補算法API
ZMC600E 運動控制器提供了直線和圓弧插補 API 接口,方便用戶進(jìn)行插補運動的設(shè)置和調(diào)整。
創(chuàng)建直線軌跡規(guī)劃
創(chuàng)建圓弧軌跡規(guī)劃
刪除軌跡規(guī)劃的句柄
設(shè)置起始位置
設(shè)置終點位置
開啟軌跡規(guī)劃
獲取當(dāng)前軌跡規(guī)劃經(jīng)過的總距離
獲取某個經(jīng)過距離點的規(guī)劃信息
?示例1. 直線插補示例:起始點{0, 10, 20},終點{ 10, 0, -20}代碼如下:
#include #include #include #include#include "trajectory.h"int main(){ double startPos[3] = { 0, 10, 20 }; double endPos[3] = { 10, 0, -20 };
trajectory_handle handle = trajectory_new_line(3); trajectory_set_start_pos(handle, startPos); trajectory_set_end_pos(handle, endPos); trajectory_set_plan(handle);
double dist = trajectory_get_plan_distance(handle); for(double d = 0; d <= dist; d+=0.1) { double pass_dist[3]; trajectory_get_plan_slice(handle, d, pass_dist); std::cout << "pass_dist :" << pass_dist[0] << "," << pass_dist[1] << "," << pass_dist[2] << endl; } trajectory_delete(handle); return 0;}
執(zhí)行結(jié)果如圖下圖所示:
圖6 直線插補軌跡
2.圓弧插補示例:起始點{-10,0,10},終點{ 10, 0, 5 }, 經(jīng)過圓弧點{0, 10, 7.5}
代碼如下:
#include #include #include #include#include "trajectory.h"int main(){ double startPt[3]= { -10, 0, 10 }; double auxPt[3] = { 0, 10, 7.5 }; double endPt[3] = { 10, 0, 5 };
trajectory_handle handle = trajectory_new_arc(0, auxPt, 0); trajectory_set_start_pos(handle, startPt); trajectory_set_end_pos(handle, endPt); trajectory_set_plan(handle);
double dist = trajectory_get_plan_distance(handle); for (double d = 0; d <= dist; d+=0.1) { double pass_dist[3]; trajectory_get_plan_slice(handle, d, pass_dist); std::cout << "pass_dist :" << pass_dist[0] << "," << pass_dist[1] << "," << pass_dist[2] << endl; } trajectory_delete(handle); return 0;}
執(zhí)行結(jié)果如圖下圖所示:
圖7 空間圓弧插補示例
ZMC600E運動控制器 配備了直線和圓弧插補算法,這些算法能夠靈活應(yīng)對各種應(yīng)用需求,確保軌跡的精確性。掌握這些運動插補技術(shù),有助于提高設(shè)備的控制精度和工作效率,為工業(yè)生產(chǎn)帶來顯著的效益提升。
-
控制器
+關(guān)注
關(guān)注
112文章
16427瀏覽量
178901 -
機(jī)械
+關(guān)注
關(guān)注
8文章
1609瀏覽量
40688 -
運動控制器
+關(guān)注
關(guān)注
2文章
408瀏覽量
24772 -
硬件接口
+關(guān)注
關(guān)注
0文章
45瀏覽量
10859
發(fā)布評論請先 登錄
相關(guān)推薦
評論