LinuxCNC+EtherCAT(1)~~~~~~
2015-10-24 09:40
2086 查看
最近对这个比较感兴趣,就来研究。
1,在Ubuntu上自己编译的话,会比较麻烦的,在google文档上有一个说明,还好。
编译好之后,Virtual Box的增强功能有问题,真的是很难受。
同时,LinuxCNC2.5以后,已经不再发布在Ubuntu上的支持,但是据说在Debian上的抖动有问题,这里作为入门,没关系的。
2,直接安装Debian,和Ubuntu操作很像。然后是安装EtherCAT Master, IgH的1.5.2.
安装文档在这里。http://wiki.linuxcnc.org/cgi-bin/wiki.pl?EtherCatDriver
LinuxCNCKnowledgeBase | RecentChanges | [url=http://wiki.linuxcnc.org/cgi-bin/wiki.pl?EtherCAT]EtherCAT realtime
HAL driver[/title2]
Some of the often used Beckhoff devices like digital and analog I/O, encoder input and pulse train output are already supported just as the [Stöber] MDS5000
series of servo drives. The driver is based on [IgH's EtherCAT master] and builds a glue layer like the etherlab component.
It consists of an userspace component for configuration and a RT HAL module for the data processing.
The config module reads in and parses a xml config file and provides a prepared form of configuration data via shared memory to the RT part. The RT module is organised in a global part that is common to all submodules and a .c and .h file for each supported
(class off) hardware device.
Since this driver is sill under development you can find the code [here]. Feel free to test or review the code and send me
suggestions and hints. There is a discussion thread about this driver in the [forum].
EK1100* - EtherCAT Coupler
Digital in
EL1002 - 2-channel digital input terminal 24 V DC, 3 ms
EL1004 - 4-channel digital input terminal 24 V DC, 3 ms
EL1008* - 8-channel digital input terminal 24 V DC, 3 ms
EL1012 - 2-channel digital input terminal 24 V DC, 10 µs
EL1014 - 4-channel digital input terminal 24 V DC, 10 µs
EL1018 - 8-channel digital input terminal 24 V DC, 10 µs
EL1024 - 4-channel digital input terminal 24 V DC for type 2 sensors
EL1034 - 4-channel digital input terminal 24 V DC, potential-free inputs
EL1084 - 4-channel digital input terminal 24 V DC, switching to negative potential, 3 ms
EL1088 - 8-channel digital input terminal 24 V DC, switching to negative potential, 3 ms
EL1094 - 4-channel digital input terminal 24 V DC, switching to negative potential, 10 µs
EL1098 - 8-channel digital input terminal 24 V DC, switching to negative potential, 10 µs
EL1104 - 4-channel digital input terminals 24 V DC, 24 V and 0 V sensor supply, 3 ms
EL1114 - 4-channel digital input terminals 24 V DC, 24 V and 0 V sensor supply, 10 µs
EL1124 - 4-channel digital input terminals 5 V DC
EL1134 - 4-channel digital input terminals 12 V DC
EL1144 - 4-channel digital input terminals 48 V DC
EL1808* - HD EtherCAT Terminal,
8-channel digital input 24 V DC, 2-wire connection
Digital out
EL2002 - 2-channel digital output terminal 24 V DC, 0.5 A
EL2004 - 4-channel digital output terminal 24 V DC, 0.5 A
EL2008 - 8-channel digital output terminal 24 V DC, 0.5 A
EL2022 - 2-channel digital output terminal 24 V DC, 2 A
EL2024 - 4-channel digital output terminal 24 V DC, 2 A
EL2032 - 2-channel digital output terminal 24 V DC, 2 A
EL2034 - 4-channel digital output terminal 24 V DC, 2 A
EL2042 - 2-channel digital output terminal 24 V DC, 2 x 4 A/1 x 8 A
EL2084 - 4-channel digital output terminal 24 V DC, negative switching
EL2088 - 8-channel digital output terminal 24 V DC, negative switching
EL2124 - 4-channel digital output terminal 5 V DC
EL2808* - HD EtherCAT Terminal,
8-channel digital output 24 V DC, 0.5 A
Analog in, 2ch, 16 bits
EL3102 - 2-channel analog input terminal -10 to +10 V, differential input, 16 bits
EL3112 - 2-channel analog input terminal 0 to 20 mA, differential input, 16 bits
EL3122 - 2-channel analog input terminal 4 to 20 mA, differential input, 16 bits
EL3142 - 2-channel analog input terminal 0 to 20 mA, single-ended, 16 bits
EL3152 - 2-channel analog input terminal 4 to 20 mA, single-ended, 16 bits
EL3162* - 2-channel analog input terminal 0 to 10 V, single-ended, 16 bits
Analog out, 2ch, 16 bits
EL4102 - 2-channel analog output terminal 0 to 10 V, 16 bits
EL4112 - 2-channel analog output terminal 0 to 20 mA, 16 bits
EL4122 - 2-channel analog output terminal 4 to 20 mA, 16 bits
EL4132* - 2-channel analog output terminal -10 to +10 V, 16 bits
Encoder inputs
EL5151* - 1-channel incremental encoder interface
EL5152* - 2-channel incremental encoder interface
Pulse train (stepper) output
EL2521* - 1-channel pulse train output terminal RS422/24 V DC
Motion Interfaces
EL7041-1000* - 1-channel stepper motor terminal, 50 V DC, 5 A, 1 with Enc In
EL7342* - 2-channel DC motor output stage 50 V DC, 3.5 A with Enc In
EM7004* - 4-axis interface, 16 Dig in, 16 Dig Out, 4 Analog Out, 4 Enc In
Servo Inverters
Stöber MDS5000 series*
DELTA Electronics ASDA series*
Generic driver for manual mapping of POSs to HAL pins
Devices with an asterisk (*) are tested, all other devices are supported due to an equal process image. If you have hardware that is supported and not tested and you like to test it or you have hardware that is not supported yet und you like to support development
for this device, just drop me a line.
(LCNC 2.6 Debian Wheezy based at time of writing) the installation is pretty simple:
create a file "/etc/apt/sources.list.d/linuxcnc-mds.list":
# sudo apt-get update
# sudo apt-get install linuxcnc-ethercat
edit /etc/default/ethercat to match your setup
# sudo update-ethercat-config
reboot
# ethercat slaves
start working with Ethercat enabled LinuxCNC
# git clone https://github.com/sittner/linuxcnc-ethercat.git linuxcnc-ethercat
# cd linuxcnc-ethercat
and do a
# make
and
# sudo make install
You need etherlabmaster-dev (from the repos mentioned above) and linuxcnc-dev to be installed for this.
... to be continued
( [Configuration tutorial for IndraDrives.] )
Search:
Published under a Creative Commons License
1,在Ubuntu上自己编译的话,会比较麻烦的,在google文档上有一个说明,还好。
编译好之后,Virtual Box的增强功能有问题,真的是很难受。
同时,LinuxCNC2.5以后,已经不再发布在Ubuntu上的支持,但是据说在Debian上的抖动有问题,这里作为入门,没关系的。
2,直接安装Debian,和Ubuntu操作很像。然后是安装EtherCAT Master, IgH的1.5.2.
安装文档在这里。http://wiki.linuxcnc.org/cgi-bin/wiki.pl?EtherCatDriver
EtherCatDriver
LinuxCNCKnowledgeBase | RecentChanges | [url=http://wiki.linuxcnc.org/cgi-bin/wiki.pl?EtherCAT]EtherCAT realtimeHAL driver[/title2]
Overview
This driver tries to provide an easy-to-expand framework for the connection of LinuxCNC to EtherCAT devices.Some of the often used Beckhoff devices like digital and analog I/O, encoder input and pulse train output are already supported just as the [Stöber] MDS5000
series of servo drives. The driver is based on [IgH's EtherCAT master] and builds a glue layer like the etherlab component.
It consists of an userspace component for configuration and a RT HAL module for the data processing.
The config module reads in and parses a xml config file and provides a prepared form of configuration data via shared memory to the RT part. The RT module is organised in a global part that is common to all submodules and a .c and .h file for each supported
(class off) hardware device.
Since this driver is sill under development you can find the code [here]. Feel free to test or review the code and send me
suggestions and hints. There is a discussion thread about this driver in the [forum].
Currently supported devices
Bus couplerEK1100* - EtherCAT Coupler
Digital in
EL1002 - 2-channel digital input terminal 24 V DC, 3 ms
EL1004 - 4-channel digital input terminal 24 V DC, 3 ms
EL1008* - 8-channel digital input terminal 24 V DC, 3 ms
EL1012 - 2-channel digital input terminal 24 V DC, 10 µs
EL1014 - 4-channel digital input terminal 24 V DC, 10 µs
EL1018 - 8-channel digital input terminal 24 V DC, 10 µs
EL1024 - 4-channel digital input terminal 24 V DC for type 2 sensors
EL1034 - 4-channel digital input terminal 24 V DC, potential-free inputs
EL1084 - 4-channel digital input terminal 24 V DC, switching to negative potential, 3 ms
EL1088 - 8-channel digital input terminal 24 V DC, switching to negative potential, 3 ms
EL1094 - 4-channel digital input terminal 24 V DC, switching to negative potential, 10 µs
EL1098 - 8-channel digital input terminal 24 V DC, switching to negative potential, 10 µs
EL1104 - 4-channel digital input terminals 24 V DC, 24 V and 0 V sensor supply, 3 ms
EL1114 - 4-channel digital input terminals 24 V DC, 24 V and 0 V sensor supply, 10 µs
EL1124 - 4-channel digital input terminals 5 V DC
EL1134 - 4-channel digital input terminals 12 V DC
EL1144 - 4-channel digital input terminals 48 V DC
EL1808* - HD EtherCAT Terminal,
8-channel digital input 24 V DC, 2-wire connection
Digital out
EL2002 - 2-channel digital output terminal 24 V DC, 0.5 A
EL2004 - 4-channel digital output terminal 24 V DC, 0.5 A
EL2008 - 8-channel digital output terminal 24 V DC, 0.5 A
EL2022 - 2-channel digital output terminal 24 V DC, 2 A
EL2024 - 4-channel digital output terminal 24 V DC, 2 A
EL2032 - 2-channel digital output terminal 24 V DC, 2 A
EL2034 - 4-channel digital output terminal 24 V DC, 2 A
EL2042 - 2-channel digital output terminal 24 V DC, 2 x 4 A/1 x 8 A
EL2084 - 4-channel digital output terminal 24 V DC, negative switching
EL2088 - 8-channel digital output terminal 24 V DC, negative switching
EL2124 - 4-channel digital output terminal 5 V DC
EL2808* - HD EtherCAT Terminal,
8-channel digital output 24 V DC, 0.5 A
Analog in, 2ch, 16 bits
EL3102 - 2-channel analog input terminal -10 to +10 V, differential input, 16 bits
EL3112 - 2-channel analog input terminal 0 to 20 mA, differential input, 16 bits
EL3122 - 2-channel analog input terminal 4 to 20 mA, differential input, 16 bits
EL3142 - 2-channel analog input terminal 0 to 20 mA, single-ended, 16 bits
EL3152 - 2-channel analog input terminal 4 to 20 mA, single-ended, 16 bits
EL3162* - 2-channel analog input terminal 0 to 10 V, single-ended, 16 bits
Analog out, 2ch, 16 bits
EL4102 - 2-channel analog output terminal 0 to 10 V, 16 bits
EL4112 - 2-channel analog output terminal 0 to 20 mA, 16 bits
EL4122 - 2-channel analog output terminal 4 to 20 mA, 16 bits
EL4132* - 2-channel analog output terminal -10 to +10 V, 16 bits
Encoder inputs
EL5151* - 1-channel incremental encoder interface
EL5152* - 2-channel incremental encoder interface
Pulse train (stepper) output
EL2521* - 1-channel pulse train output terminal RS422/24 V DC
Motion Interfaces
EL7041-1000* - 1-channel stepper motor terminal, 50 V DC, 5 A, 1 with Enc In
EL7342* - 2-channel DC motor output stage 50 V DC, 3.5 A with Enc In
EM7004* - 4-axis interface, 16 Dig in, 16 Dig Out, 4 Analog Out, 4 Enc In
Servo Inverters
Stöber MDS5000 series*
DELTA Electronics ASDA series*
Generic driver for manual mapping of POSs to HAL pins
Devices with an asterisk (*) are tested, all other devices are supported due to an equal process image. If you have hardware that is supported and not tested and you like to test it or you have hardware that is not supported yet und you like to support development
for this device, just drop me a line.
Installation
If you are using the current LinuxCNC Distribution(LCNC 2.6 Debian Wheezy based at time of writing) the installation is pretty simple:
create a file "/etc/apt/sources.list.d/linuxcnc-mds.list":
deb http://repo.modusoft.de/linuxcnc/wheezy ./
# sudo apt-get update
# sudo apt-get install linuxcnc-ethercat
The etherlabmaster should be installed automaticaly. Currently you will get a warning about missing key.
edit /etc/default/ethercat to match your setup
# sudo update-ethercat-config
reboot
# ethercat slaves
this sould show your connected slaves
start working with Ethercat enabled LinuxCNC
Building
If you like to build the driver by you own, you could just clone the git# git clone https://github.com/sittner/linuxcnc-ethercat.git linuxcnc-ethercat
# cd linuxcnc-ethercat
and do a
# make
and
# sudo make install
You need etherlabmaster-dev (from the repos mentioned above) and linuxcnc-dev to be installed for this.
Configuration
You can find some examples under /usr/share/linuxcnc-ethercat/examples... to be continued
( [Configuration tutorial for IndraDrives.] )
Usage
LinuxCNCKnowledgeBase | RecentChanges | Koppi (diff)Search:
Published under a Creative Commons License
相关文章推荐
- 【Linux】RedHat9.0添加module和编译内核
- linux ps 命令参数详解
- 「Linux命令行」sed
- Linux系统安装JDK后gij问题
- Centos 7 上安装 Gitlab的步骤和一些设置方法
- 如何在 Linux 中永久修改 USB 设备权限
- test_bit、set_bit和clear_bit
- CentOS运行与控制后台进程的方法
- Linux 安装java
- Linux相关命令
- CentOS6.X 系统安装图文教程,超详细
- Linux常用命令大全
- 基于arm9的linux3.0内核移植
- Linux环境安装配置Swftools
- 【鸟哥的linux私房菜-学习笔记】Linux的档案权限与目录配置
- 在 Ubuntu 和 Linux Mint 上安装 Terminator 0.98
- 查看linux的出错信息
- iptables详解
- linux系统常用命令和解析
- 【鸟哥的linux私房菜-学习笔记】首次使用相关知识、在线求助 man page