時間:2025-02-14 14:31:52來源:深圳市正運動技術有限公司
今天,正運動小助手給大家分享一下6軸步進光柵尺全閉環的EtherCAT運動控制器之ZMC432CL-V2的硬件接口與功能。
一、ZMC432CL-V2產品簡介
ZMC432CL-V2高性能多軸運動控制器是一款兼容EtherCAT總線和脈沖型的獨立式運動控制器,具備高速實時反饋功能,支持脈沖全閉環控制,能夠實現高精度、高響應速度的運動控制。高精度定位,有效消除機械傳動誤差,滿足高精密加工場景應用要求。

1.ZMC432CL-V2硬件功能
(1)豐富的運動控制功能:支持直線、圓弧、空間圓弧、螺旋插補等。(2)硬件接口豐富:支持脈沖軸(帶編碼器反饋)和EtherCAT總線軸,具備24路輸入和12路輸出的通用IO,部分為高速IO,2路模擬量輸出(DA)。(3)EtherCAT刷新周期最快達250us,滿足高速通信需求。(4)支持4通道硬件比較輸出、硬件定時器、運動中精準輸出,適用于多通道視覺飛拍等場合。(5)支持掉電檢測、掉電存儲,多種程序加密方式,能夠有效防止系統故障,保護項目工程文件數據,并提高系統的可靠性。(6)通過純國產IDE開發環境RTSys進行項目開發,可實時仿真、在線跟蹤以及診斷與調試,簡便易用,支持多種高級上位機語言聯合編程進行二次開發。

更多關于ZMC432CL-V2詳情介紹點擊→步進控制的光柵尺全閉環解決方案:32軸EtherCAT總線運動控制器ZMC432CL-V2。
二、硬件接口


三、硬件接線
1.數字量輸入口IN接線

輸入口通用接線圖

輸入口單端編碼器接線圖
2.數字量輸出口接線

輸出口通用接線圖

輸出口單端脈沖軸接線圖
四、脈沖全閉環應用

1.使用現成的API開發
2.步進電機的外置光柵尺全閉環解決方案①ZMC4系列高效的網口讀寫,PCIe/PCI系列卡可共享內存接口(共享內存的批量讀寫3-5us)②內置反向間隙補償,雙向螺距補償,2D平面補償等③可以同時支持脈沖軸和EtherCAT軸運動混合使用④開放的PT/PVT接口客戶可自定義加減速算法的二次編程
3.脈沖全閉環接線

全閉環運動控制器產生相應的控制信號,發送到步進驅動器來驅動電機運動,同時負責接收來自光柵尺的反饋信號,并與預設的目標值進行比較。步進驅動器接收來自控制器的控制信號,并將其轉換為角位移去驅動電機。步進驅動器能夠精確控制電機的步進角度和速度,從而實現高精度的運動控制。光柵尺用于實時監測物體的位置和運動狀態。在脈沖全閉環系統中,光柵尺通常被安裝在電機的運動部件上,以測量其實際位置。脈沖全閉環運動控制系統,具備外部光柵尺的全閉環位置反饋,實時糾正平臺機械傳動誤差,通過實時反饋,確保步進系統的高精度閉環與加工精度。
ZMC432CL-V2控制器脈沖軸Axis0~Axis5都可以支持脈沖發送DPOS與編碼器反饋MPOS,也可以通過參數設置實現脈沖發送與編碼器反饋的實時全閉環。
五、步進驅動器接口接線
1.ZMC432CL-V2與步進驅動器接線(差分接法)

2.ZMC432CL-V2與步進驅動器接線(單端共陽極接法)

六、光柵尺的接口接線
1.ZMC432CL-V2與增量式光柵尺接線(差分接法)

2.ZMC432CL-V2與絕對值光柵尺接線

七、脈沖全閉環測試代碼
測試程序如下:
·
'/************************************************************'任務編號: 無'函數功能: 系統初始化'Input: 無'Output: 無 '返回值: 無'備注: 無 '*************************************************************/GLOBAL SUB SysInit() '測試固件信息 '?"測試固件信息: ver 24.8.28 : "version_build, "SERVO_PERIOD: "SERVO_PERIOD '軸分配 GLOBAL CONST TestAxisId=5 '線程分配 GLOBAL CONST IntCycleTask=1 GLOBAL CONST OtherTask=2 '其他變量 GLOBAL gvCLStstus,gv_HandMode GLOBAL gv_P,gv_I,gv_D GLOBAL gv_VF,gv_AF,gv_OV '軸初始化參數 GLOBAL gv_Speed,gv_Accel,gv_Decel GLOBAL gv_Sramp,gv_Inch GLOBAL gv_Units GLOBAL gv_mpos,gv_input GLOBAL VpMode '*********************軸參數初始化********************* gv_Units=100 gv_mpos =4000 gv_input=-20043 gvCLStstus=0 gv_Speed=10 gv_Accel=100 gv_Decel=100 gv_Sramp=0 gv_Inch=1 gv_HandMode=0 VpMode=0 '**********************系統初始化********************** RAPIDSTOP(2) '停止所有軸 WAIT IDLE DELAY(100) DATUM(0) '清除軸報警 WAIT IDLE '**********************軸參數初始化********************* BASE(TestAxisId) '關閉閉環功能 SERVO=OFF ENCODER_SERVO=OFF '關閉閉環功能后要遠程ATYPE從0到4的切換 ATYPE = 0 DELAY(100) ATYPE = 4 '軸坐標清零 DPOS=0 MPOS=0 '更新軸參數 UpDataAxisPara() '更新PID參數 UpDatePid(0) ENDSUB'/************************************************************'任務編號: 無'函數功能: Hmi掃描函數'Input: 無'Output: 無 '返回值: 無'備注: 無 '*************************************************************/GLOBAL SUB SysScan() '更新閉環狀態 IF SERVO(TestAxisId) = ON AND ENCODER_SERVO(TestAxisId)=ON THEN gvCLStstus=1 ELSE gvCLStstus=0 ENDIFENDSUB'/************************************************************'任務編號: 無'函數功能: 軸參數設置'Input: 無'Output: 無 '返回值: 無'備注: 無 '*************************************************************/GLOBAL SUB UpDataAxisPara() BASE(TestAxisId) UNITS = gv_Units ENCODER_RATIO (gv_mpos,gv_input) VP_MODE = VpMode SPEED = gv_Speed '更新軸速度 ACCEL = gv_Accel '更新軸加速度 DECEL = gv_DEcel '更新軸減速度 SRAMP = gv_Sramp '設置S曲線時間 MERGE = ON '打開連續插補功能 FS_LIMIT = 10000 '正向軟限位 RS_LIMIT = -10000 '負向軟限位 FE_LIMIT= 500 '設置最大隨動誤差 FE_RANGE = 500 '報警時隨動誤差ENDSUB'更新閉環狀態'/************************************************************'任務編號: 無'函數功能: Pid參數更新'Input: 無'Output: 無 '返回值: 無'備注: VR(0-10) '*************************************************************/GLOBAL SUB UpDatePid(Dir) IF Dir=0 THEN IF VR(0)=1314 THEN gv_P = VR(1) 'P:比例增益 gv_I = VR(2) 'I:積分增益 gv_D = VR(3) 'D:微分增益 gv_VF =VR(4) '速度反饋的前饋增益 gv_AF =VR(5) '加速度反饋的前饋增益 gv_OV =VR(6) ELSE gv_P = 100 'P:比例增益 gv_I = 50 'I:積分增益 gv_D = 50 'D:微分增益 gv_VF = 1000 '速度反饋的前饋增益 gv_AF = 2000 '加速度反饋的前饋增益 gv_OV = 0 '數據更新到VR TABLE(1,gv_P,gv_I,gv_D,gv_VF,gv_AF,gv_OV) Local lv_i VR(0)=1314 FOR lv_i=1 to 6 VR(lv_i) = TABLE(lv_i) NEXT ENDIF ELSE VR(0)=0 VR(1) = gv_P 'P:比例增益 VR(2) = gv_I 'I:積分增益 VR(3) = gv_D 'D:微分增益 VR(4) = gv_VF '速度反饋的前饋增益 VR(5) = gv_AF '加速度反饋的前饋增益 VR(6) = gv_OV VR(0) = 1314 TRACE "PID參數保存成功" ENDIFENDSUB'/************************************************************'任務編號: 無'函數功能: 全閉環功能切換'Input: 無'Output: 無 '返回值: 無'備注: 無 '*************************************************************/GLOBAL SUB ClosedLoop(Mode) IF Mode=0 THEN IF gvCLStstus= 0 THEN '配置脈沖軸TestAxisId為全閉環的功能 '配置PID參數 BASE(TestAxisId) P_Gain = gv_P 'P:比例增益 I_GAIN = gv_I 'I:積分增益 D_GAIN = gv_D 'D:微分增益 VFF_GAIN = gv_VF '速度反饋的前饋增益 AFF_GAIN = gv_AF '加速度反饋的前饋增益 OV_GAIN = gv_OV '速度增益 '打開閉環功能 AXIS_ENABLE=1 ENCODER_SERVO = ON '0-不開啟(缺省). 1-開啟閉環功能 '重要,打開servo之前打開encoder_servo后 '要完成一次atype由0變為4的切換,否則會報axis:0 config not support Servo. '無法打開閉環控制,原因未知 ATYPE = 0 DELAY(20) ATYPE = 4 '脈沖輸出+正交編碼反饋 SERVO = ON '0-不開啟(缺省). 1-開啟閉環功能 DELAY(20) IF SERVO = ON THEN ?"閉環參數配置完成,閉環控制已打開,使用move指令移動,并在示波器中監測運動參數。" ELSE ?"閉環參數配置完成,閉環控制打開失敗,請檢查軸配置。" ENDIF ELSE BASE(TestAxisId) SERVO = OFF ENCODER_SERVO = OFF '關閉ENCODER_SERVO后需要完成一次 ATYPE從0到4的切換,保證閉環功能完全關閉 ATYPE = 0 DELAY(100) ATYPE = 4 ?"已關閉閉環控制開關(switch),使用開環移動" ENDIF ELSEIF gvCLStstus=1 THEN '配置脈沖軸TestAxisId為全閉環的功能 BASE(TestAxisId) P_Gain = gv_P 'P:比例增益 I_GAIN = gv_I 'I:積分增益 D_GAIN = gv_D 'D:微分增益 VFF_GAIN = gv_VF '速度反饋的前饋增益 AFF_GAIN = gv_AF '加速度反饋的前饋增益 OV_GAIN = gv_OV '速度增益 ?"PID參數已更新 " ENDIFENDSUB
測試結果:

本次,正運動技術步進的光柵尺全閉環EtherCAT運動控制器ZMC432CL-V2(一):硬件接口介紹,就分享到這里。
更多精彩內容請關注“正運動小助手”公眾號,需要相關開發環境與例程代碼,請咨詢正運動技術銷售工程師:400-089-8936。
本文由正運動技術原創,歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。
傳動網版權與免責聲明:凡本網注明[來源:傳動網]的所有文字、圖片、音視和視頻文件,版權均為傳動網(www.mytsb.cn)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-11-07
2025-10-31
2025-10-22
2025-10-17
2025-10-11
2025-10-09