本文以正運動技術具備專用手輪接口的運動控制器ZMC408CE為例,介紹手輪、手輪的作用及原理、控制器手輪接口接線以及手輪程序配置。
01 手輪作用及原理
手輪也稱手搖脈沖發生器,主要用于數控機床、立體加工中心、臥式加工中心、龍門加工中心等數控設備。當手輪旋轉時,編碼器產生與手輪運動相對應的信號,通過數控系統選定座標并對座標進行定位。
手動脈沖發生器它中心有軸的光電碼盤,其上有環形通、暗的刻線,搖動手輪后,由光電發射和接收器件讀取,獲得2組正弦波信號HA、HB,每個正弦波相差90度相位差。由于HA、HB兩信號相差90度,可通過A相在前還是B相在前,給出正轉脈沖或反轉脈沖去控制伺服電機正轉或反轉。
02 手輪介紹
1.通過手輪上的“軸選擇旋鈕”選擇需要移動的坐標軸;
2.通過“倍率選擇旋鈕”選擇合適的移動倍(×1/×10/×100);
3.旋轉“手輪搖柄”移動坐標軸。順時針旋轉為正向移動,逆時針旋轉為負向移動,旋轉速度快慢可以控制坐標軸的運動速度;
4.按鈕“急停”,緊急停止手輪運動;
5.控制器手輪接口為雙排標準DB15母頭,需要手輪接頭為雙排標準DB15公頭。
手輪接口圖示
03 控制器手輪接口接線
1.硬件介紹
案例采用ZMC408CE運動控制器,具備專用的手輪接口。
ZMC408CE是正運動技術推出的一款高性能EtherCAT總線運動控制器,核心技術采用了先進的FPGA技術,實現硬件位置比較輸出、精準輸出功能,保證連續軌跡加工的出色性能和穩定性,以及動態數據捕獲的實時性,從而實現更加精準控制和提高生產效率和品質。
ZMC408CE支持EtherCAT總線軸 + 脈沖軸混合插補,可脫機或聯機運行,可控電機軸數8軸,特殊型號提供16或32軸可選,支持ZDevelop + 多種高級上位機混合編程,可以實現點位運動、電子凸輪、直線插補、圓弧插補、連續軌跡加工和30+種機器人模型的控制。
ZMC408CE產品亮點
1.高性能處理器,提升運算速度、響應時間和掃描周期等;
2.一維/二維/三維、多通道視覺飛拍,高速高精;
3.位置同步輸出PSO,連續軌跡加工中對精密點膠膠量控制和激光能量控制等;
4.多軸同步控制,多坐標系獨立控制等;
5.EtherCAT同步周期可快至125us;
6.EtherCAT總線和脈沖軸混合插補;
7.直線插補、任意空間圓弧插補、螺旋插補、樣條插補等;
8.應用靈活,可PC上位機開發,也可脫機獨立運行;
2.控制器手輪接口MPG定義
接口 | 引腳號 | 信號 | 說明 |
1 | H-5V | 5V電源輸出正極,專為手輪供電 | |
2 | HA- | 編碼器A相信號(IN40) | |
3 | HB- | 編碼器B相信號(IN41) | |
4 | HEMGN | 緊急停止信號(IN51) | |
5 | NC | 懸空 | |
6 | HX1 | 選擇X1倍率(IN42) | |
7 | HX10 | 選擇X10倍率(IN43) | |
8 | HX100 | 選擇X100倍率(IN44) | |
9 | HSU | 軸選3(IN48) | |
10 | HSV | 軸選4(IN49) | |
11 | EGND | 5V電源輸出負極,信號公共端 | |
12 | HSW | 軸選5(IN50) | |
13 | HSZ | 軸選2(IN47) | |
14 | HSY | 軸選1(IN46) | |
15 | HSX | 軸選0(IN45) | |
注意: 1.5V電源輸出僅為手輪供電,切勿為其他設備供電。 2.該接口中的所有信號均為數字輸入信號,編號為IN(40-51)。 |
3.手輪接線參考
4.注意事項
手輪編碼器軸接口接線原理如上圖所示,手輪廠家的設計多種多樣,請先查看手輪內部的設計圖后與運動控制器確認正確后謹慎接線;請使用雙絞屏蔽線,尤其是環境惡劣的場合,務必使屏蔽層充分接地。
04 程序配置
1.參考以上手輪接線示意圖正確連接手輪和控制器;
2.上電后請選EtherNET、RS232、RS485任一種接口連接ZDevelop;
3.配置軸號:該控制器手輪接口無可用默認AXIS軸號(映射需避開脈沖軸號),必須進行重映射,操作步驟如下:
BASE(目標軸號) '重映射的軸號 ATYPE(目標軸號)=0 '軸類型設為0 BASE(8) '手輪接口初始軸號8(無效的) ATYPE(8)=0 '手輪接口初始軸類型設為0 AXIS_ADDRESS (目標軸號)= (-1<<16)+8 '將初始軸號8綁定到目標軸號 ATYPE(目標軸號)=3 '設置手脈軸軸類型為正交編碼器類型
4.配置IO:根據需要賦予軸選(HSX,HSY,HSZ,HSU)和倍率(HX1,HX10,HX100)以及緊急停止(HEMGN)功能;這些信號本質為數字輸入信號,有固定的編號(參見上節),但無固定的功能,需要ZDevelop開發;其名稱為推薦配置的功能,軸選即為CONNECT同步運動的被連接軸,倍率即CONNECT比率。5.完成以上配置即可開始使用手輪。
程序示例如下,運行下方程序后,便可實現手輪的控制。
'不同控制器型號,手輪軸號,倍率和軸選擇IN編號不一樣,參考控制器使用手冊,本例程使用控制器型號為ZMC408CE '不同手輪控制軸數不一樣,本例程控制軸數為6個 '軸號設置 global const axis_X = 0 'X軸 global const axis_Y = 1 'Y軸 global const axis_Z = 2 'Z軸 global const axis_U = 3 'U軸 global const axis_V = 4 'V軸 global const axis_W = 5 'W軸 global const def_R = 8 '手輪默認軸號 global const axis_R = 10 '手輪重新映射軸號 '倍率IN編號設置 const io_Handlow = 42 '1倍率 const io_Handmid = 43 '10倍率 const io_Handhigh = 44 '100倍率 '軸選擇IN編號設置 const io_HandX = 45 '手輪X軸 const io_HandY = 46 '手輪Y軸 const io_HandZ = 47 '手輪Z軸 const io_HandU = 48 '手輪U軸 const io_HandV = 49 '手輪V軸 const io_HandW = 50 '手輪W軸 '緊急停止信號IN編號設置 const io_HandEMGN = 51 '急停 global dim conflag '手輪連接軸標記 conflag = -1 ATYPE(def_R) = 0 '還原軸 8 軸類型 ATYPE(axis_R) = 0 '還原軸 10 軸類型 AXIS_ADDRESS(axis_R) = (-1<<16)+ def_R '將 MPG 手脈軸地址映射到軸 10 ATYPE(axis_R) = 3 '設置手脈軸軸類型為正交編碼器類型 UNITS(axis_R) = 1 '設置手脈軸脈沖當量脈沖為單位 While 1 if in(io_handX) = on then if in(io_handlow) = on then connect(1, axis_R) axis(axis_X) '鏈接到軸X, 倍率 1 elseif in(io_handmid) = on then connect(10, axis_R) axis(axis_X) '鏈接到軸X, 倍率 10 elseif in(io_handhigh) = on then connect(100, axis_R) axis(axis_X) '鏈接到軸X, 倍率 100 endif conflag = axis_X elseif in(io_handY) = on then if in(io_handlow) = on then connect(1, axis_R) axis(axis_Y) elseif in(io_handmid) = on then connect(10, axis_R) axis(axis_Y) elseif in(io_handhigh) = on then connect(100, axis_R) axis(axis_Y) endif conflag = axis_Y elseif in(io_handZ) = on then if in(io_handlow) = on then connect(1, axis_R) axis(axis_Z) elseif in(io_handmid) = on then connect(10, axis_R) axis(axis_Z) elseif in(io_handhigh) = on then connect(100, axis_R) axis(axis_Z) end if conflag = axis_Z elseif in(io_handU) = on then if in(io_handlow) = on then connect(1, axis_R) axis(axis_U) elseif in(io_handmid) = on then connect(10, axis_R) axis(axis_U) elseif in(io_handhigh) = on then connect(100, axis_R) axis(axis_U) endif conflag = axis_U elseif in(io_handV) = on then if in(io_handlow) = on then connect(1, axis_R) axis(axis_V) elseif in(io_handmid) = on then connect(10, axis_R) axis(axis_V) elseif in(io_handhigh) = on then connect(100, axis_R) axis(axis_V) endif conflag = axis_V elseif in(io_handW) = on then if in(io_handlow) = on then connect(1, axis_R) axis(axis_W) elseif in(io_handmid) = on then connect(10, axis_R) axis(axis_W) elseif in(io_handhigh) = on then connect(100, axis_R) axis(axis_W) endif conflag = axis_W elseif conflag <> -1 then '取消連接 cancel(2) axis(conflag) conflag = -1 elseif in(io_HandEMGN) = off then RAPIDSTOP(2) endif Wend
本次,正運動技術EtherCAT運動控制器在數控加工手輪隨動中的應用,就分享到這里。
審核編輯:湯梓紅
-
控制器
+關注
關注
112文章
16203瀏覽量
177414 -
運動控制器
+關注
關注
2文章
393瀏覽量
24655 -
Ethernet
+關注
關注
3文章
295瀏覽量
55882 -
數控加工
+關注
關注
0文章
58瀏覽量
9910 -
ethercat
+關注
關注
18文章
653瀏覽量
38605
發布評論請先 登錄
相關推薦
評論