Skip to content

Commit 4c93eed

Browse files
authored
added example configuration files for generic slaves (#4)
* added example configuration files for generic slaves * fixed dependencies
1 parent 60b8960 commit 4c93eed

23 files changed

+585
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Example repository for the [EtherCAT Driver ROS2 stack](https://github.com/ICube
77
This repository contains the following example packages :
88
- EtherCAT compatible CIA402 motor drive (example using Maxon EPOS3)
99
- Custom Force Sensor EtherCAT slave using strain gauges and EasyCAT
10+
- Example configuration files for the some EtherCAT modules
1011

1112
## Contacts ##
1213
![icube](https://icube.unistra.fr/fileadmin/templates/DUN/icube/images/logo.png)
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
cmake_minimum_required(VERSION 3.8)
2+
project(ethercat_slave_description)
3+
find_package(ament_cmake REQUIRED)
4+
5+
install(
6+
DIRECTORY config
7+
DESTINATION share/${PROJECT_NAME}
8+
)
9+
10+
ament_package()
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# ethercat_slave_description
2+
Collection of EtherCAT module example configurations for the `ethercat_driver`.
3+
4+
## Modules using `GenericEcSlave`
5+
The list of available example EtherCAT module configurations for the `GenericEcSlave` Hardware Interface plugin.
6+
### Beckhoff
7+
- **Beckhoff_EL1008**: EtherCAT Terminal, 8-channel digital input, 24 V DC, 3 ms.
8+
- **Beckhoff_EL1018**: EtherCAT Terminal, 8-channel digital input, 24 V DC, 10 us.
9+
- **Beckhoff_EL2008**: EtherCAT Terminal, 8-channel digital output, 24 V DC, 0.5 A.
10+
- **Beckhoff_EL2088**: EtherCAT Terminal, 8-channel digital output, 24 V DC, 0.5 A, ground switching.
11+
- **Beckhoff_EL2124**: EtherCAT Terminal, 4-channel digital output, 5 V DC, 20 mA.
12+
- **Beckhoff_EL3102**: EtherCAT Terminal, 2-channel analog input, voltage, ±10 V, 16 bit, differential.
13+
- **Beckhoff_EL3104**: EtherCAT Terminal, 4-channel analog input, voltage, ±10 V, 16 bit, differential.
14+
- **Beckhoff_EL4132**: EtherCAT Terminal, 2-channel analog output, voltage, ±10 V, 16 bit.
15+
- **Beckhoff_EL4134**: EtherCAT Terminal, 4-channel analog output, voltage, ±10 V, 16 bit.
16+
- **Beckhoff_EL5101**: EtherCAT Terminal, 1-channel encoder interface, incremental, 5 V DC (DIFF RS422, TTL), 1 MHz.
17+
18+
### ATI
19+
- **ATI_FTSensor**: ATI EtherCAT F/T Sensor
20+
21+
### Advantech
22+
- **AMAX-5051**: Digital Input Module, 8-channel digital input, 24 V DC, 4 ms.
23+
- **AMAX-5056**: Sink-type Digital Output Module, 8-channel digital output, 24 V DC, 0.3 A.
24+
25+
### Omron
26+
- **Omron_NX_ECC201_NX_ID5442**: Omron EtherCAT Coupler NX_ECC201 with Input module NX_ID5442.
27+
- **Omron_NX_ECC201_NX_OD5256**: Omron EtherCAT Coupler NX_ECC201 with Output module NX_OD5256.
28+
29+
## Motor drive modules using `EcCiA402Drive`
30+
The list of available example EtherCAT motor drive module configurations for the `EcCiA402Drive` Hardware Interface plugin.
31+
### Maxon
32+
- **EPOS3**: EPOS3 70/10 EtherCAT, digital positioning controller, 10 A, 11 - 70 VDC
33+
- Plugin : `EcCiA402Drive`
34+
35+
### Schneider Electric
36+
- **Schneider_ATV320**: Schneider Electric Variable frequency drive. Coupled with VW3A3601 communication card.
37+
- Plugin : `EcCiA402Drive`
38+
39+
### Elmo
40+
- **Elmo Gold**: Elmo Gold servo drive.
41+
- Plugin : `EcCiA402Drive`
42+
43+
### Technosoft
44+
- **Technosoft IPOS 3604**: Technosoft IPOS 3064 motor drive.
45+
- Plugin : `EcCiA402Drive`
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Configuration file for Advantech AMAX-5051
2+
# Description : 8-ch Digital Input EtherCAT Slice IO Module
3+
vendor_id: 0x000013FE
4+
product_id: 0x00035051
5+
tpdo: # TxPDO
6+
- index: 0x1a00
7+
channels:
8+
- {index: 0x3001, sub_index: 0x01, type: bool, mask: 1, state_interface: d_input.1}
9+
- {index: 0x3001, sub_index: 0x02, type: bool, mask: 2, state_interface: d_input.2}
10+
- {index: 0x3001, sub_index: 0x03, type: bool, mask: 4, state_interface: d_input.3}
11+
- {index: 0x3001, sub_index: 0x04, type: bool, mask: 8, state_interface: d_input.4}
12+
- {index: 0x3001, sub_index: 0x05, type: bool, mask: 16, state_interface: d_input.5}
13+
- {index: 0x3001, sub_index: 0x06, type: bool, mask: 32, state_interface: d_input.6}
14+
- {index: 0x3001, sub_index: 0x07, type: bool, mask: 64, state_interface: d_input.7}
15+
- {index: 0x3001, sub_index: 0x08, type: bool, mask: 128, state_interface: d_input.8}
16+
sm: # Sync Manager
17+
- {index: 0, type: input, pdo: tpdo, watchdog: disable}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Configuration file for Advantech AMAX-5056
2+
# Description : 8-ch Sink-type Digital Output EtherCAT Slice IO Module
3+
vendor_id: 0x000013FE
4+
product_id: 0x00035056
5+
rpdo: # RxPDO
6+
- index: 0x1600
7+
channels:
8+
- {index: 0x3101, sub_index: 0x01, type: bool, mask: 1, command_interface: d_output.1}
9+
- {index: 0x3101, sub_index: 0x02, type: bool, mask: 2, command_interface: d_output.2}
10+
- {index: 0x3101, sub_index: 0x03, type: bool, mask: 4, command_interface: d_output.3}
11+
- {index: 0x3101, sub_index: 0x04, type: bool, mask: 8, command_interface: d_output.4}
12+
- {index: 0x3101, sub_index: 0x05, type: bool, mask: 16, command_interface: d_output.5}
13+
- {index: 0x3101, sub_index: 0x06, type: bool, mask: 32, command_interface: d_output.6}
14+
- {index: 0x3101, sub_index: 0x07, type: bool, mask: 64, command_interface: d_output.7}
15+
- {index: 0x3101, sub_index: 0x08, type: bool, mask: 128, command_interface: d_output.8}
16+
sm: # Sync Manager
17+
- {index: 0, type: output, pdo: rpdo, watchdog: enable}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Configuration file for ATI EtherCAT F/T Sensor
2+
# Description : ATI EtherCAT F/T Sensor
3+
vendor_id: 0x00000732
4+
product_id: 0x26483052
5+
rpdo: # RxPDO
6+
- index: 0x1601
7+
channels:
8+
- {index: 0x6000, sub_index: 0x01, type: uint32} # Control 1
9+
- {index: 0x6000, sub_index: 0x02, type: uint32} # Control 2
10+
tpdo: # TxPDO
11+
- index: 0x1a00
12+
channels:
13+
- {index: 0x6000, sub_index: 0x01, type: int32, state_interface: force.x} # Fx/Gage0
14+
- {index: 0x6000, sub_index: 0x02, type: int32, state_interface: force.y} # Fy/Gage1
15+
- {index: 0x6000, sub_index: 0x03, type: int32, state_interface: force.z} # Fz/Gage2
16+
- {index: 0x6000, sub_index: 0x04, type: int32, state_interface: torque.x} # Tx/Gage3
17+
- {index: 0x6000, sub_index: 0x05, type: int32, state_interface: torque.y} # Ty/Gage4
18+
- {index: 0x6000, sub_index: 0x06, type: int32, state_interface: torque.z} # Tz/Gage5
19+
- {index: 0x6010, sub_index: 0x00, type: uint32} # Status Code
20+
- {index: 0x6020, sub_index: 0x00, type: uint32} # Sample Counter
21+
sm: # Sync Manager
22+
- {index: 0, type: output, pdo: ~, watchdog: disable}
23+
- {index: 1, type: input, pdo: ~, watchdog: disable}
24+
- {index: 2, type: output, pdo: rpdo, watchdog: enable}
25+
- {index: 3, type: input, pdo: tpdo, watchdog: disable}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Configuration file for Beckhoff EL1008
2+
# Description : EtherCAT Terminal, 8-channel digital input, 24 V DC, 3 ms.
3+
vendor_id: 0x00000002
4+
product_id: 0x03f03052
5+
tpdo: # TxPDO
6+
- index: 0x1a00
7+
channels:
8+
- {index: 0x6000, sub_index: 0x01, type: bool, mask: 1, state_interface: d_input.1}
9+
- index: 0x1a01
10+
channels:
11+
- {index: 0x6010, sub_index: 0x01, type: bool, mask: 2, state_interface: d_input.2}
12+
- index: 0x1a02
13+
channels:
14+
- {index: 0x6020, sub_index: 0x01, type: bool, mask: 4, state_interface: d_input.3}
15+
- index: 0x1a03
16+
channels:
17+
- {index: 0x6030, sub_index: 0x01, type: bool, mask: 8, state_interface: d_input.4}
18+
- index: 0x1a04
19+
channels:
20+
- {index: 0x6040, sub_index: 0x01, type: bool, mask: 16, state_interface: d_input.5}
21+
- index: 0x1a05
22+
channels:
23+
- {index: 0x6050, sub_index: 0x01, type: bool, mask: 32, state_interface: d_input.6}
24+
- index: 0x1a06
25+
channels:
26+
- {index: 0x6060, sub_index: 0x01, type: bool, mask: 64, state_interface: d_input.7}
27+
- index: 0x1a07
28+
channels:
29+
- {index: 0x6070, sub_index: 0x01, type: bool, mask: 128, state_interface: d_input.8}
30+
sm: # Sync Manager
31+
- {index: 0, type: input, pdo: tpdo, watchdog: disable}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Configuration file for Beckhoff EL1018
2+
# Description : EtherCAT Terminal, 8-channel digital input, 24 V DC, 10 us.
3+
vendor_id: 0x00000002
4+
product_id: 0x03fa3052
5+
tpdo: # TxPDO
6+
- index: 0x1a00
7+
channels:
8+
- {index: 0x6000, sub_index: 0x01, type: bool, mask: 1, state_interface: d_input.1}
9+
- index: 0x1a01
10+
channels:
11+
- {index: 0x6010, sub_index: 0x01, type: bool, mask: 2, state_interface: d_input.2}
12+
- index: 0x1a02
13+
channels:
14+
- {index: 0x6020, sub_index: 0x01, type: bool, mask: 4, state_interface: d_input.3}
15+
- index: 0x1a03
16+
channels:
17+
- {index: 0x6030, sub_index: 0x01, type: bool, mask: 8, state_interface: d_input.4}
18+
- index: 0x1a04
19+
channels:
20+
- {index: 0x6040, sub_index: 0x01, type: bool, mask: 16, state_interface: d_input.5}
21+
- index: 0x1a05
22+
channels:
23+
- {index: 0x6050, sub_index: 0x01, type: bool, mask: 32, state_interface: d_input.6}
24+
- index: 0x1a06
25+
channels:
26+
- {index: 0x6060, sub_index: 0x01, type: bool, mask: 64, state_interface: d_input.7}
27+
- index: 0x1a07
28+
channels:
29+
- {index: 0x6070, sub_index: 0x01, type: bool, mask: 128, state_interface: d_input.8}
30+
sm: # Sync Manager
31+
- {index: 0, type: input, pdo: tpdo, watchdog: disable}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Configuration file for Beckhoff EL2008
2+
# Description : EtherCAT Terminal, 8-channel digital output, 24 V DC, 0.5 A.
3+
vendor_id: 0x00000002
4+
product_id: 0x07d83052
5+
rpdo: # RxPDO
6+
- index: 0x1600
7+
channels:
8+
- {index: 0x7000, sub_index: 0x01, type: bool, mask: 1, command_interface: d_output.1}
9+
- index: 0x1601
10+
channels:
11+
- {index: 0x7010, sub_index: 0x01, type: bool, mask: 2, command_interface: d_output.2}
12+
- index: 0x1602
13+
channels:
14+
- {index: 0x7020, sub_index: 0x01, type: bool, mask: 4, command_interface: d_output.3}
15+
- index: 0x1603
16+
channels:
17+
- {index: 0x7030, sub_index: 0x01, type: bool, mask: 8, command_interface: d_output.4}
18+
- index: 0x1604
19+
channels:
20+
- {index: 0x7040, sub_index: 0x01, type: bool, mask: 16, command_interface: d_output.5}
21+
- index: 0x1605
22+
channels:
23+
- {index: 0x7050, sub_index: 0x01, type: bool, mask: 32, command_interface: d_output.6}
24+
- index: 0x1606
25+
channels:
26+
- {index: 0x7060, sub_index: 0x01, type: bool, mask: 64, command_interface: d_output.7}
27+
- index: 0x1607
28+
channels:
29+
- {index: 0x7070, sub_index: 0x01, type: bool, mask: 128, command_interface: d_output.8}
30+
sm: # Sync Manager
31+
- {index: 0, type: output, pdo: rpdo, watchdog: enable}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Configuration file for Beckhoff EL2088
2+
# Description : EtherCAT Terminal, 8-channel digital output, 24 V DC, 0.5 A, ground switching.
3+
vendor_id: 0x00000002
4+
product_id: 0x08283052
5+
rpdo: # RxPDO
6+
- index: 0x1600
7+
channels:
8+
- {index: 0x7000, sub_index: 0x01, type: bool, mask: 1, command_interface: d_output.1}
9+
- index: 0x1601
10+
channels:
11+
- {index: 0x7010, sub_index: 0x01, type: bool, mask: 2, command_interface: d_output.2}
12+
- index: 0x1602
13+
channels:
14+
- {index: 0x7020, sub_index: 0x01, type: bool, mask: 4, command_interface: d_output.3}
15+
- index: 0x1603
16+
channels:
17+
- {index: 0x7030, sub_index: 0x01, type: bool, mask: 8, command_interface: d_output.4}
18+
- index: 0x1604
19+
channels:
20+
- {index: 0x7040, sub_index: 0x01, type: bool, mask: 16, command_interface: d_output.5}
21+
- index: 0x1605
22+
channels:
23+
- {index: 0x7050, sub_index: 0x01, type: bool, mask: 32, command_interface: d_output.6}
24+
- index: 0x1606
25+
channels:
26+
- {index: 0x7060, sub_index: 0x01, type: bool, mask: 64, command_interface: d_output.7}
27+
- index: 0x1607
28+
channels:
29+
- {index: 0x7070, sub_index: 0x01, type: bool, mask: 128, command_interface: d_output.8}
30+
sm: # Sync Manager
31+
- {index: 0, type: output, pdo: rpdo, watchdog: enable}

0 commit comments

Comments
 (0)