色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

擴展模塊EIO16084在運動控制系統中的應用

正運動技術 ? 來源:正運動技術 ? 作者:正運動技術 ? 2022-08-23 18:59 ? 次閱讀

EIO16084擴展模塊的使用分為如下幾步,硬件接線;總線初始化建立總線通訊連接,初始化中執行擴展資源的映射,分別配置軸資源和IO資源;擴展資源配置完成可通過控制器端訪問,擴展軸為脈沖型,設置相關軸參數,發送運動命令即可控制電機運動。

01 產品簡介

EIO16084擴展模塊是EtherCAT總線控制器使用的擴展模塊,可擴展數字量IO和脈沖軸這兩類資源,當控制器本體上資源不夠的時候,EtherCAT總線控制器可連接多個EIO擴展模塊進行資源擴展,可查看控制器的IO最大擴展點數和最大擴展軸數,支持IO的遠程擴展。

poYBAGMErFKAZuHfAAX7fNfQdkY698.pngEIO16084擴展模塊

每個EIO擴展模塊在擴展接線完成后,不需要進行進行二次開發,只需使用指令在EtherCAT主站控制器配置唯一的IO地址和軸地址,配置完成即可訪問。

IO地址編號通過總線指令NODE_IO來設置,控制器上程序只需通過IO編號就可以訪問到擴展模塊上的資源。軸地址的配置使用“AXIS_ADDRESS”指令映射綁定軸號,綁定完成通過BASE或AXIS指令指定軸號。

EIO16084擴展模塊功能特點:

(1)支持4軸脈沖軸擴展。

(2)脈沖輸出模式:方向/脈沖或雙脈沖。

(3)每軸最大輸出脈沖頻率10MHz。

(4)支持16進+8出IO擴展,每個脈沖軸另外各有2進2出IO可供配置。

(5)脈沖軸以外的輸出口最大輸出電流達300mA,可直接驅動部分電磁閥。

(6)ECAT最快500us的刷新周期。

(7)電源供電,連接主電源即可,無需IO電源。

此系列產品選型指南:

產品型號

電機軸數

編碼器

總軸數

內部輸入/輸出口

ECAT IN/ECAT OUT

EIO1616

-

-

-

16/16

1/1

EIO16084

4

4

4

16/8

1/1

EIO24088

8

8

8

24/8

1/1

EIO系列帶軸的擴展模塊的使用方法相同,僅是擴展資源數量的區別,EIO16084和EIO24088的使用方法完全相同,EIO1616相比上面兩個型號,無需軸映射相關操作。

pYYBAGMErMSAVicHAAmTLOFoMIo389.pngEIO24088擴展模塊

02 接口說明

1.總線接口

EIO16084帶兩個EtherCAT總線接口,“EtherCAT IN”和“EtherCAT OUT”,使用標準網線完成接線。

接線時注意:“EtherCAT IN”連接上一級模塊,“EtherCAT OUT”連接下一級模塊,IN和OUT口不可混用。

2.通用輸入口

通用輸入口IN的內部電路參考圖如下,EIO16084帶16個通用輸入口,輸入口需要NODE_IO配置IO地址編號才能通過控制器端操作,輸入口參數參見下表。

pYYBAGMErTOAbmnLAABVg215QLw970.png通用輸入口IN的內部電路參考圖

輸入口參數說明:

項目

規格

通道數

16(IN0-IN15)

輸入方式

NPN型

輸入電壓等級

DC24V

輸入電流(典型值)

4.8mA

輸入開通電壓

<14.5V

輸入最小電流

1.8mA

輸入阻抗

4.7KΩ

隔離方式

光電隔離

輸入頻率

<5kHz

3.通用輸出口

通用輸出口OUT的內部電路參考圖如下,EIO16084帶8個通用輸入口,輸出口需要NODE_IO配置IO地址編號才能通過控制器端操作(NODE_IO使用一次便可配置好輸入和輸出),輸出口參數參見下表。

pYYBAGMErVaAdmHYAABK9m_JtKo183.png通用輸出口OUT的內部電路參考圖

輸入口參數說明:

項目

規格

通道數

8(OUT0-OUT7)

輸出方式

晶體管NPN型,OD輸出。

輸出電壓等級

負載電源≤36V

最大輸出電流

300mA

關閉時最大漏電流

25μA

導通響應時間

12μs

關閉響應時間

80μs

隔離方式

光電隔離

過流保護

支持,動作電流600mA

輸出頻率

<8kHz

4.軸接口

EIO16084的軸接口有4個,采用DB26針腳,針腳定義如下表,軸接口包含差分脈沖輸入和差分編碼器輸入信號,同時還有兩路通用輸入口(其中一路為報警輸入),兩路通用輸出口(其中一路為驅動使能)

EIO16084擴展軸時,為總線轉脈沖,將脈沖型驅動器接入到EIO16084擴展模塊上的脈沖軸接口上。通過總線初始化建立EtherCAT總線控制器和EIO16084擴展模塊之間的通訊連接,總線初始化過程中必須包含軸映射,之后參考脈沖型控制器的使用方法操作脈沖驅動器。

poYBAGMErXaAG7dRAACMi4s3BTE409.png

針腳號

信號

說明

1

EGND

外部電源地

2

IN16-19/ALM

通用輸入,建議做驅動報警

3

OUT8-11/ENABLE

通用輸出,建議驅動使能

4

EA-

編碼器輸入

5

EB-

編碼器輸入

6

EZ-

編碼器輸入

7

+5V

內部5V電源輸出

8

備用

備用

9

DIR+

伺服或步進方向輸出

10

GND

內部電源地

11

PUL-

伺服或步進脈沖輸出

12

備用

備用

13

GND

內部電源地

14

OVCC

E24V輸出(建議僅供伺服IO )

15

OUT12-15/CLR

通用輸出,建議驅動報警清除

16

IN20-23/INP

通用輸入,建議做到位信號

17

EA+

編碼器輸入

18

EB+

編碼器輸入

19

EZ+

編碼器輸入

20

GND

內部電源地

21

GND

內部電源地

22

DIR-

伺服或步進方向輸出

23

PUL+

伺服或步進脈沖輸出

24

GND

內部電源地

25

備用

備用

26

備用

備用

可以通過數據字典配置EIO擴展板直接使能與告警,缺省不使用,需要主控制器來操作。

告警輸入、位置到位信號、軸使能、誤差清除可以為通用的輸入輸出,由于驅動能力偏小建議做軸功能IO使用。

“EGND,OVCC電源”是控制器內部輸出供伺服IO使用,請勿連接到開關電源,不使用時懸空。

03 接線參考

EIO16084擴展模塊接線規則:EIO16084可接到EtherCAT總線上的任意節點。

EIO16084為總線上的一個設備節點,可接入4個脈沖型驅動器,驅動器按照AXIS 0到AXIS 3的順序依次編號,并且遵從總線上的驅動器編號規則。

驅動器的使能信號為脈沖接口內的通用輸出口,直接通過主控制器的OP指令來使能?;蚴褂?a target="_blank">SDO指令配置數據字典為自動使能后,主控制器無法直接控制對應的輸出口來使能。

注意:軸擴展模塊的使用個數不是無限制的,參考控制器可擴展的最大軸數。

如下圖,ZMC416BE運動控制器本體支持連接16個脈沖驅動器,最大擴展軸數為20,故可以通過EtherCAT總線連接一個EIO16084擴展到支持20個脈沖驅動器。

擴展軸映射軸號時注意避開本地脈沖軸,若本地脈沖軸使用了16個,默認對應軸號0-15,則擴展軸上的AXIS0-3(對應下圖中驅動器編號0-3)分別手動映射為軸號16-19。

poYBAGMErbqADSEjAASfH7g3OoI927.png

如下圖,ZMC432運動控制器本體支持連接32個軸(脈沖驅動器+Ether,CAT總線驅動器一共32個),控制器本體只有6路脈沖接口,通過一個EIO16084可擴展4路脈沖接口,支持脈沖驅動器和總線驅動器混合使用。

pYYBAGMErcOAUbJmAAIuRtKocrE162.png

上圖涉及的編號概念如下:總線相關指令參數會用到如下編號。

(1)槽位號(slot)

槽位號是指控制器上總線接口的編號,EtherCAT總線槽位號為0。

(2)設備號(node)

設備號是指一個槽位上連接的所有設備的編號,從0開始,按設備在總線上的連接順序自動編號,可以通過“NODE_COUNT(slot)”指令查看總線上連接的設備總數。

(3)驅動器編號

控制器會自動識別出槽位上的驅動器,編號從0開始,按驅動器在總線上的連接順序自動編號。

驅動器編號與設備號不同,只給槽位上的驅動器設備編號,其他設備忽略,映射軸號時將會用到驅動器編號。

04 擴展資源映射方法

EIO16084擴展模塊上有兩類資源需要映射,軸資源和IO資源。

1.IO映射

控制器上程序只需通過IO編號就可以訪問到擴展模塊上的資源,EtherCAT總線擴展模塊IO編號通過總線指令NODE_IO來設置,同時配置輸入和輸出。

IO映射時先查看控制器自身的最大IO編號(包括外部IO接口和脈沖軸內的接口),再使用指令設置。

若擴展的IO與控制器自身IO編號重合,二者將同時起作用,所以IO映射的映射的編號在整個控制系統中均不得重復。

IO映射語法:

NODE_IO(slot,node)=iobase

slot:槽位號,0-缺省node:設備編號,編號從0開始

iobase:映射IO起始編號,設置結果只會是8的倍數

示例:

NODE_IO(0,0)=32 '設置槽位0接口設備0的IO起始編號為32

若設備0為EIO16084,按如上語法配置后,擴展模塊上的通用輸入口IN0-15對應的IO編號依次為32-47,軸接口內的通用輸入口編號48-55,其中軸AXIS 0-3的驅動報警輸入分別為48-51。通用輸出口OUT0-7應的IO編號依次為32-39,軸接口內的通用輸出口編號40-47,其中軸AXIS 0-3的驅動使能輸出分別為40-43。

pYYBAGMErgCAa9keAABsu9Qnak0782.png

2.軸映射

擴展模塊的軸使用前需要使用“AXIS_ADDRESS”指令映射軸號,軸映射也需要注意整個系統的軸號不得重復。EIO系列擴展軸的映射與總線驅動器的軸映射語法相同。

軸映射語法:

AXIS_ADDRESS(軸號)=(槽位號<<16)+驅動器編號+1

示例:

AXIS_ADDRESS(0)=(0<<16)+0+1 'EtherCAT總線上的第一個驅動器,驅動器編號0,綁定為軸0
AXIS_ADDRESS(1)=(0<<16)+1+1 'EtherCAT總線上的第二個驅動器,驅動器編號1,綁定為軸1

若第一個節點是EIO16084,EIO16084上連接了驅動器,那么這里的驅動器0是連接在EIO16084上的第一個脈沖驅動器,否則便是EtherCAT總線驅動器。

05 拓展脈沖軸的使用方法

EIO16084擴展模塊需要經過總線初始化之后才能使用,我們這里把一個脈沖型驅動器接到EIO16084擴展模塊上的AXIS 0接口上,使用步驟如下。

第一步:執行總線初始化程序(參見下節),初始化過程中識別EIO擴展模塊的設備編號和連接的驅動器編號,根據驅動器編號操作軸映射,根據設備號操作擴展模塊的IO映射,設置DRIVE_PROFILE和ATYPE。

第二步:初始化成功后,使能EIO16084擴展模塊上的脈沖驅動器,同樣也是操作脈沖軸接口內的OP信號使能驅動器,由于擴展模塊映射的起始編號是32,這里的AXIS 0-AXIS 3口內的使能信號對應通用輸出口編號是40-43。在輸出口窗口內按下OP(40)或在程序中執行指令OP(40,ON)均可使能AXIS 0的驅動器。

第三步:使能完成設置相關軸參數,再發送運動指令便可驅動電機。

poYBAGMEsQSAclbxAAJuNNMCXPY227.png

在初始化操作成功后,總線上能識別該擴展模塊,可查看擴展模塊上的軸接口數,IO映射后可查看輸入輸出的編號范圍。

例如設置起始編號為32,該擴展模塊上的輸入編號為外部自帶的16點+軸接口通用輸入8點,一共24點,范圍32-55,輸出編號為外部自帶的8點+軸接口通用輸入8點,一共16點,范圍32-47。

poYBAGMEsUiAG4N5AABskl0d_FE876.png

EIO16084使用注意事項:

擴展模塊上的IO不管有沒有使用都需要使用NODE_IO指令映射EIO16084的輸入輸出編號。擴展模塊的DRIVE_PROFILE配置為0,ATYPE設為65,但實際由于是脈沖型驅動器,軸類型并不是65,真實軸類型的配置使用SDO指令配置數據字典6011h設置。初始化過程中若產生硬限位報警,可在軸參數窗口將硬限位FWD_IN和REV_IN的映射編號指向-1,表示不映射,需要接入限位開關時再去修改FWD_IN和REV_IN。

EIO16084擴展模塊設置:

通過SDO指令讀寫數據字典設置,只開放了部分數據字典供設置,更多驅動器參數使用驅動器軟件修改。

SDO指令配置輸入輸出:

編號

描述

類型

讀寫

其它說明

6000h

input

ARRAY U8

RO

1-閉合

6200h

Output

ARRAY U8

RW

1-打開

6206h

異常輸出模式

ARRAY U8

RW

1-使用異常輸出

6207h

異常輸出使用狀態

ARRAY U8

RW

/

SDO指令配置驅動器參數:

例如:擴展的脈沖軸的真實軸類型設置通過數據字典6011h設置,(參考下表的參數,按軸號依次設置,第一個驅動器設置數據字典6011h+0*800h,第二個驅動器設置6011h+1*800h,以此類推,每個驅動器加800h,其他參數同理)

編號

描述

類型

讀寫

其它說明

6011h

Atype

UNSIGNED8

rw

擴展板軸的類型

0 虛擬軸

1 脈沖方向方式的步進或伺服

2 模擬信號控制方式的伺服

3 正交編碼器

4 步進+編碼器

5 步進+脈沖方向編碼器

6 脈沖方向方式的編碼器

7 脈沖方向方式步進或伺服+EZ信號輸入

6012h

Invert_Step

UNSIGNED16

rw

參見控制器說明書Invert_Step

6013h

Iolevel

UNSIGNED32

rw

B0-原點電平

B1-限位電平

B8-自動使用使能信號

B9-使用ALM信號告警

B11-B15 原點信號選擇

6014h

Axisstatus

UNSIGNED32

ro

參見控制器說明書AXISSTATUS

6040h

Controlword

UNSIGNED16

rw

對應主控制器DRIVE_CONTROLWORD

B0- Switch on

B1- Enable voltage

B3 - Enable operation

B7- Fault reset

6041h

Statusword

UNSIGNED16

ro

對應主控制器DRIVE_STATUS

B0 Ready to switch on

B1 Switched on

B2 Operation enabled

B3 Fault

B4 Voltage enabled

B5 Quick stop

B7 Warning

B8 EZ status

B9 Remote

B10 Target reached

B11 Internal limit active

B12 - 13 Operation mode specific

B14 EA status

B15 EB status

6060h

Modes of operation

INTEGER8

rw

6 回零

8 周期定位

607Eh

極性

INTEGER8

rw

1 反向, 0-正常方向

60fDh

驅動器輸入兼容

UNSIGNED32

rw

/

數據字典讀取語法:

SDO_READ (槽位號, 設備編號, 數據字典編號, 數據字典子編號, 數據類型, 讀取數據存儲TABLE位置)SDO_READ_AXIS (軸號, 數據字典編號, 數據字典子編號, 數據類型, 讀取數據存儲TABLE位置)

數據字典寫入語法:

SDO_WRITE (槽位號, 設備編號, 數據字典編號, 數據字典子編號, 數據類型, 寫入數據值)SDO_WRITE_AXIS (軸號, 數據字典編號, 數據字典子編號, 數據類型, 寫入數據值)

數據字典讀寫示例:

global sub Sub_SetNodePara(iNode,iVender,iDevice,Iaxis)
if iVender = $41B and iDevice = $1918 then '正運動16084脈沖擴展軸
SDO_WRITE(Bus_Slot,iNode,$6011+Iaxis*$800,0,5,4) '設置擴展脈沖軸ATYPE類型,值為4表示脈沖和編碼器信號在同一個軸號上
SDO_WRITE(Bus_Slot,iNode,$6012+Iaxis*$800,0,6,0) '設置擴展脈沖軸INVERT_STEP脈沖輸出模式,模式0,脈沖+方向
NODE_IO(Bus_Slot,iNode) = 32 + 32*iNode '設置16084上IO的起始映射地址
endif
end sub

如果擴展模塊之后還連接了EtherCAT驅動器,使用時注意總線掃描設備數量的設置,EtherCAT驅動器在初始化程序執行完便使能成功,后續設置軸參數便能運行,注意初始化過程中的DRIVE_PROFILE給EtherCAT驅動器配置合適的PDO列表,需要用到驅動器IO時,還需操作DRIVE_IO映射。

06 總線初始化

此初始化程序可用來初始化EtherCAT驅動器和EtherCAT總線擴展模塊,建立通訊連接(通用模板,適用于多種品牌的驅動器)。

pYYBAGMEsZqASZQ7AAJNP2AmP7I334.png

'*******************************************************ECAT總線初始化
global CONST BUS_TYPE = 0 '總線類型??捎糜?a target="_blank">上位機區分當前總線類型
global CONST MAX_AXISNUM =32 '最大軸數
global CONST Bus_Slot = 0 '槽位號0(單總線控制器缺省0)
global CONST PUL_AxisStart= 0 '本地脈沖軸起始軸號
global CONST PUL_AxisNum = 0 '本地脈沖軸軸數量
global CONST Bus_AxisStart = 6 總線軸起始軸號
global CONST Bus_NodeNum = 2 '總線配置節點數量,用于判斷實際檢測到的從站數量是否一致
global Bus_InitStatus '總線初始化完成狀態
Bus_InitStatus = -1
global Bus_TotalAxisnum '檢查掃描的總軸數
delay(3000) '延時3S等待驅動器上電,不同驅動器自身上電時間不同,具體根據驅動器調整延時
?"總線通訊周期:",SERVO_PERIOD,"us"
Ecat_Init() '初始化ECAT總線
while (Bus_InitStatus = 0)
Ecat_Init()
wend
end

'****************************************ECAT總線初始化**********************************
'初始流程: slot_scan(掃描總線) -> 從站節點映射軸/io -> SLOT_START(啟動總線) -> 初始化成功
'*****************************************************************************************
global sub Ecat_Init()
local Node_Num,Temp_Axis,Drive_Vender,Drive_Device,Drive_Alias
RAPIDSTOP(2)
for i=0 to MAX_AXISNUM - 1 '初始化還原軸類型
AXIS_ENABLE(i) = 0
atype(i)=0
AXIS_ADDRESS(i) =0
DELAY(10) '防止所有驅動器全部同時切換使能導致瞬間電流過大
next
Bus_InitStatus = -1
Bus_TotalAxisnum = 0
SLOT_STOP(Bus_Slot)
delay(200)
slot_scan(Bus_Slot) '掃描總線
if return then
?"總線掃描成功","連接從站設備數:"NODE_COUNT(Bus_Slot)
if NODE_COUNT(Bus_Slot) <> Bus_NodeNum then '判斷總線檢測數量是否為實際接線數量
?""
?"掃描節點數量與程序配置數量不一致!" ,"配置數量:"Bus_NodeNum,"檢測數量:"NODE_COUNT(Bus_Slot)
Bus_InitStatus = 0 '初始化失敗。報警提示
return
endif
'"開始映射軸號"
for Node_Num=0 to NODE_COUNT(Bus_Slot)-1 '遍歷掃描到的所有從站節點
Drive_Vender = NODE_INFO(Bus_Slot,Node_Num,0) '讀取驅動器廠商
Drive_Device = NODE_INFO(Bus_Slot,Node_Num,1) '讀取設備編號
Drive_Alias = NODE_INFO(Bus_Slot,Node_Num,3) '讀取設備撥碼ID
if NODE_AXIS_COUNT(Bus_Slot,Node_Num) <> 0 then '判斷當前節點是否有電機
for j=0 to NODE_AXIS_COUNT(Bus_Slot,Node_Num)-1 '根據節點帶的電機數量循環配置軸參數(針對一拖多驅動器)
Temp_Axis = Bus_AxisStart + Bus_TotalAxisnum '軸號按NODE順序分配
'Temp_Axis = Drive_Alias '軸號按驅動器設定的撥碼分配(一拖多需要特殊處理)
base(Temp_Axis)
AXIS_ADDRESS= Bus_TotalAxisnum+1 '映射軸號
ATYPE=65 '設置控制模式 65-位置 66-速度 67-轉矩
Sub_SetPdo(Node_Num,Drive_Vender,Drive_Device) '設定PDO參數
Sub_SetNodePara(Node_Num,Drive_Vender,Drive_Device,j) '設置特殊總線參數,包含EIO16084的配置
disable_group(Temp_Axis) '每軸單獨分組
Bus_TotalAxisnum=Bus_TotalAxisnum+1 '總軸數+1
next
else 'IO擴展模塊
Sub_SetNodeIo(Node_Num,Drive_Vender,Drive_Device,1024 + 32*Node_Num) '映射擴展模塊IO
endif
next
?"軸號映射完成","連接總軸數:"Bus_TotalAxisnum
DELAY 200
SLOT_START(Bus_Slot) '啟動總線
if return then
wdog=1 '使能總開關
'?"開始清除驅動器錯誤"
for i= Bus_AxisStart to Bus_AxisStart + Bus_TotalAxisnum - 1
BASE(i)
DRIVE_CLEAR(0)
DELAY 50
'?"驅動器錯誤清除完成"
datum(0) '清除控制器軸狀態錯誤"
DELAY 100
'"軸使能"
AXIS_ENABLE=1
next
Bus_InitStatus = 1
?"軸使能完成"
'本地脈沖軸配置
for i = 0 to PUL_AxisNum - 1
base(PUL_AxisStart + i)
AXIS_ADDRESS = (-1<<16) + i
ATYPE = 4
next
?"總線開啟成功"
else
?"總線開啟失敗"
Bus_InitStatus = 0
endif
else
?"總線掃描失敗"
Bus_InitStatus = 0
endif
end sub

'*****************************************手動配置PDO**********************************
'部分特殊品牌可能需要手動配置,大部分只需要通過DRIVE_PROFILE設置自動配置相應的POD參數即可
'*******************************************************************************************
global sub Sub_SetPdo(iNode,iVender,iDevice)
IF iVender = 0 then '自定義PDO
SDO_WRITE (Bus_Slot, iNode, $1c12, 0 ,5 ,0) '禁用PDO,禁用后才可以修改內容
DELAY(50)
SDO_WRITE (Bus_Slot, iNode, $1c13, 0 ,5 ,0)
DELAY(50)
SDO_WRITE (Bus_Slot, iNode, $1600, $0 ,5 ,0) 'RxPDO配置對應參數
SDO_WRITE (Bus_Slot, iNode, $1600, $1 ,7 ,$60400010) '控制字
SDO_WRITE (Bus_Slot, iNode, $1600, $2 ,7 ,$607a0020) '目標位置
SDO_WRITE (Bus_Slot, iNode, $1600, $3 ,7 ,$60fe0120) '驅動器IO輸入
SDO_WRITE (Bus_Slot, iNode, $1600, $0 ,5 ,3)
SDO_WRITE (Bus_Slot, iNode, $1a00, $0 ,5 ,0) 'TxPDO配置對應參數
SDO_WRITE (Bus_Slot, iNode, $1a00, $1 ,7 ,$60410010) '狀態字
SDO_WRITE (Bus_Slot, iNode, $1a00, $2 ,7 ,$60640020) '反饋位置
SDO_WRITE (Bus_Slot, iNode, $1a00, $3 ,7 ,$60fd0020) '驅動器IO輸出
SDO_WRITE (Bus_Slot, iNode, $1a00, $0 ,5 ,3)
SDO_WRITE (Bus_Slot, iNode, $1c12, 1 ,6 ,$1600) 'RxPDO分配對象
DELAY(50)
SDO_WRITE (Bus_Slot, iNode, $1c13, 1 ,6 ,$1a00) TxPDO分配對象
DELAY(50)
SDO_WRITE (Bus_Slot, iNode, $1c12, 0 ,5 ,1) '啟用PDO
DELAY(50)
SDO_WRITE (Bus_Slot, iNode, $1c13, 0 ,5 ,1)
SDO_WRITE (Bus_Slot, iNode, $1C32, $1 ,6 ,2) '設置DC同步模式
SDO_WRITE (Bus_Slot, iNode, $1C33, $1 ,6 ,2)
DRIVE_PROFILE = -1 '使用驅動缺省PDO配置
elseif iVender = $66f then
DRIVE_PROFILE = 4
else
DRIVE_PROFILE = 0
endif
end sub

'***************************************從站節點特殊參數配置*****************************
'通過SDO方式修改對應對象字典的值修改從站參數(具體對象字典查看驅動器手冊)
'**********************************************************************************************
global sub Sub_SetNodePara(iNode,iVender,iDevice,Iaxis)
if iVender = $41B and iDevice = $1918 then '正運動EIO16084脈沖擴展軸
SDO_WRITE(Bus_Slot,iNode,$6011,Iaxis*$800,5,4) '設置擴展脈沖軸ATYPE類型
SDO_WRITE(Bus_Slot,iNode,$6012,Iaxis*$800,6,0) '設置擴展脈沖軸INVERT_STEP脈沖輸出模式
NODE_IO(Bus_Slot,iNode) = 32 + 32*iNode '設置16084上IO的起始映射地址
elseif iVender = $66f then '松下驅動器
SDO_WRITE(Bus_Slot,iNode,$3401,0,4,$10101) '正限位電平 $818181
SDO_WRITE(Bus_Slot,iNode,$3402,0,4,$20202) '負限位電平 $828282
SDO_WRITE(Bus_Slot,iNode,$6091,1,7,1) '齒輪比
SDO_WRITE(Bus_Slot,iNode,$6091,2,7,1)
SDO_WRITE(Bus_Slot,iNode,$6092,1,7,10000) '電機一圈脈沖數
SDO_WRITE(Bus_Slot,iNode,$607E,0,5,224) '電機方向0-反轉224
SDO_WRITE(Bus_Slot,iNode,$6085,0,7,4290000000) '異常減速度
'SDO_WRITE(Bus_Slot,iNode,$1010,1,7,$65766173) '寫EPPROM(寫EPPROM后驅動器需要重新上電)
elseif iVender = $100000 then '匯川驅動器
SDO_WRITE(Bus_Slot,iNode,$6091,1,7,1) '齒輪比
SDO_WRITE(Bus_Slot,iNode,$6091,2,7,1)
endif
end sub

'********************************總線IO模塊映射**************************************
'通過NODE_IO(Bus_Slot,Node_Num)分配模塊IO起始地址
'******************************************************************************************
global sub Sub_SetNodeIo(iNode,iVender,iDevice,i_IoNum)
if iVender = $41B and iDevice = $130 then '正運動EIO1616
NODE_IO(Bus_Slot,iNode) = i_IoNum
endif
end sub

參考配置采用控制器依次連接一個EIO16084擴展模塊和一個EtherCAT總線驅動器,采用以上初始化程序,成功建立通訊連接,控制器狀態窗口顯示當前掃描連接的節點情況。

總線上的主站為控制器,控制器連接的第一個從站設備為EIO16084擴展模塊,第二個從站設備為EtherCAT總線驅動器,沒有使用控制器的本地脈沖軸接口??偩€上的驅動設備映射軸號可以從6開始,EIO16084擴展模塊的AXIS 0-3接口上的脈沖驅動器映射為軸號6-9,EtherCAT總線驅動器映射為軸號10,EIO16084擴展模塊的IO編號起始為32。

注意:映射的軸號和IO編號整個控制系統中不得重復,根據具體情況去選擇編號。

pYYBAGMEsiCAZG1TAACEUIn2iJ0211.png

在沒有IO設備的情況下,我們可以通過OUT和IN端口直接相連判斷IO的響應情況,如下圖,測試EIO擴展模塊的IO配置,將EIO的OUT2(映射編號34)端子連接到EIO的IN8(映射編號40)上,操作OP(34)可見輸入口40收到信號。

poYBAGMEsi6AGMsBAAEE0CEG9V8998.png

EtherCAT總線初始化執行后,配置軸參數,發送運動指令便可控制電機運行,或參考下圖,通過手動運動窗口,快速檢測EtherCAT總線驅動器能否正常運行。

poYBAGMEskCAe7nAAAJbkfJqQVo942.png

本次,正運動技術EtherCAT軸擴展模塊EIO16084在運動控制系統中的應用,就分享到這里。

本文由正運動技術原創,歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 總線控制器
    +關注

    關注

    0

    文章

    29

    瀏覽量

    12590
  • ethercat
    +關注

    關注

    18

    文章

    686

    瀏覽量

    38673
  • 運動控制系統

    關注

    0

    文章

    90

    瀏覽量

    14149
收藏 人收藏

    評論

    相關推薦

    運動控制系統基本架構及控制軌跡要點簡述

    運動控制起源于早期的伺服控制,本文與讀者分享的是運動控制的定義、運動
    發表于 04-07 10:47 ?3872次閱讀

    怎么設計懸掛運動控制系統

    在現代的工業控制、車輛運動和醫療設備等系統,懸掛運動系統的應用越來越多,在這些
    發表于 08-12 08:21

    什么是運動控制系統

    文章目錄第1章 緒論第2章 運動曲線2.0 引言2.1 運動學的基本概念2.2 常見運動曲線2.2.1 梯形速度曲線2.2.2 S 形速度曲線第3章 傳動鏈設計第1章 緒論什么是運動
    發表于 09-01 07:06

    什么是運動控制系統?運動控制系統的任務是什么?

    什么是運動控制系統?運動控制系統的任務是什么?
    發表于 10-29 07:40

    運動技術EtherCAT擴展模塊接線參考以及使用流程

    本帖最后由 正運動技術 于 2023-12-5 10:04 編輯 一、EtherCAT擴展模塊接線參考 EIO16084數字量擴展
    發表于 12-05 09:29

    FPGA 在運動控制系統的設計Design of FPGA

    本文是在基于ARM+FPGA 的硬件平臺上進行嵌入式運動控制系統的設計,ARM實現應用管理,FPGA 實現插補運算,發出脈沖到伺服驅動系統,形成運動指令
    發表于 06-01 15:09 ?27次下載

    MPC07控制卡在運動控制系統的應用

    MPC07控制卡在運動控制系統的應用本文采用MPC07控制卡來作為運動控制系統的開發平臺,并利
    發表于 04-29 10:37 ?1609次閱讀
    MPC07<b class='flag-5'>控制卡在運動</b><b class='flag-5'>控制系統</b><b class='flag-5'>中</b>的應用

    上位控制單元在運動控制系統的應用

    本文對運動控制系統的幾種上位控制單元方案-單片機系統,專業運動
    發表于 07-22 16:55 ?28次下載
    上位<b class='flag-5'>控制</b>單元<b class='flag-5'>在運動</b><b class='flag-5'>控制系統</b><b class='flag-5'>中</b>的應用

    傳感器在運動控制系統起到了核心的作用

    傳感器是數據收集,系統監測和控制反饋的重要組成部分。在運動控制應用,傳感器采用旋轉或直線編碼器進行位置反饋,傳感器(如用于速度傳感的轉速計
    發表于 11-04 11:34 ?5283次閱讀

    EtherCAT軸擴展模塊EIO16084在運動控制系統的應用

    IO地址編號通過總線指令NODE_IO來設置,控制器上程序只需通過IO編號就可以訪問到擴展模塊上的資源。軸地址的配置使用“AXIS_ADDRESS”指令映射綁定軸號,綁定完成通過BASE或AXIS指令指定軸號。
    發表于 09-05 11:31 ?663次閱讀

    運動控制系統是什么

    運動控制系統 其實運動控制系統是一個比較大的系統,就像前面的通信系統一樣,通常會由眾多的組成部分
    發表于 04-21 18:02 ?1861次閱讀

    運動控制系統是什么?什么是運動控制系統?

    運動控制系統其實運動控制系統是一個比較大的系統,就像前面的通信系統一樣,通常會由眾多的組成部分構
    的頭像 發表于 10-25 08:07 ?2095次閱讀
    <b class='flag-5'>運動</b><b class='flag-5'>控制系統</b>是什么?什么是<b class='flag-5'>運動</b><b class='flag-5'>控制系統</b>?

    EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(四):板載IO與總線擴展IO的編碼器與脈沖配置的應用

    以正運動EIO24088和EIO16084為例,講解編碼器與脈沖配置的應用。
    的頭像 發表于 12-01 09:04 ?563次閱讀
    EtherCAT超高速實時<b class='flag-5'>運動</b><b class='flag-5'>控制</b>卡XPCIE1032H上位機C#開發(四):板載IO與總線<b class='flag-5'>擴展</b>IO的編碼器與脈沖配置的應用

    8軸/4軸的EtherCAT軸模塊EIO24088-V2及EIO16084的使用(一):RTSys總線配置與使用

    EIO24088-V2及EIO16084結合RTSys進行總線配置與使用
    的頭像 發表于 10-19 17:56 ?302次閱讀
    8軸/4軸的EtherCAT軸<b class='flag-5'>模塊</b><b class='flag-5'>EIO</b>24088-V2及<b class='flag-5'>EIO16084</b>的使用(一):RTSys總線配置與使用

    8軸/4軸的EtherCAT軸模塊EIO24088G-V2及EIO16084G的使用(一):TwinCAT總線配置與使用

    EIO24088G-V2及EIO16084G結合TwinCAT總線配置與使用
    的頭像 發表于 10-25 08:53 ?327次閱讀
    8軸/4軸的EtherCAT軸<b class='flag-5'>模塊</b><b class='flag-5'>EIO</b>24088G-V2及<b class='flag-5'>EIO16084</b>G的使用(一):TwinCAT總線配置與使用
    主站蜘蛛池模板: 美女被男人撕衣舔胸| 欧美一区二区视频97色伦| 美女用手扒开粉嫩的屁股| 日本A级作爱片金瓶双艳| 亚洲精品电影天堂网| 999人在线精品播放视频| 国产精品自产拍在线观看网站| 久久电影精品| 日韩成人在线视频| 一边亲着一面膜下的免费过程 | 精品免费在线视频| 欧美日韩永久久一区二区三区| 亚洲国产精品嫩草影院永久| 99国产精品免费视频| 国产午夜精品鲁丝片| 欧美男男网站免费观看videos| 亚洲AV一宅男色影视| bbbbbxxxxx肥胖| 精品淑女少妇AV久久免费| 轻轻cao| 亚洲综合久久一本伊伊区| 高h全肉图| 免费视频精品38| 亚洲欧美综合乱码精品成人网| 绑着男军人的扒开内裤| 久久丫线这里只精品| 無码一区中文字幕少妇熟女网站| 97国产精品人妻无码免费| 好硬好湿好大再深一点动态图| 日本女人bbb| 4438成人情人网站| 黄子佼81岁父亲现状曝光| 色偷偷7777www| chinesedaddy80老年人| 久久日本片精品AAAAA国产| 亚洲AV成人无码网天堂| 成人国产一区| 男宿舍里的呻吟h| 在线播放一区| 含羞草完整视频在线播放免费| 首页 国产 亚洲 中文字幕|