Ubuntu18.04 配置EtherCAT主站IGH SOEM

news2024/9/21 20:45:02

IGH

IGH 是开源的EtherCAT 主站软件

一、安装依赖

sudo apt update
sudo apt install build-essential linux-headers-$(uname -r) mercurial autoconf libtool

也不知道安装的完全不完全

uname -r 可以查看内核,我安装的ubuntu18.04的内核版本是 5.4.0-84-generic

二、下载EtherCAT主站软件IGH

git clone https://gitlab.com/etherlab.org/ethercat.git 
cd ethercat
git checkout stable-1.5 # 或其他稳定分支

三、安装配置

./bootstrap

./configure --with-linux-dir=/usr/src/linux-headers-$(uname -r) --enable-cycles --enable-hrtimer --enable-8139too=no --enable-generic=yes

make all modules

在./bootstrap 过程中会报了个错

lib/Makefile.am:78: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is undefined

需要安装pkg-confige >= 0.27

sudo apt install pkg-config

四、安装 

sudo make modules_install install
sudo depmod

需要sudo权限哈

五、建立链接和本机相关的设置

ln -s /usr/local/etc/init.d/ethercat /etc/init.d/ethercat

ifconfig 中查看ethercat的地址

修改本机的ethercat地址

vim /usr/local/etc/sysconfig/ethercat


“”“
......
MASTER0_DEVICE="68:ed:a4:70:9b:73"


......
DEVICE_MODULES="generic"

......

”“”

MASTER0_DEVICE改为刚才ifconfig中查询到的接ethercat线的地址

DEVICE_MODULES = "generic"

sudo cp /usr/local/etc/sysconfig/ethercat /etc/sysconfig/ethercat

如果没有/etc/sysconfig的话,需要mkdir创建一个sysconfig,然后把ethercat放进去 

sudo su
echo KERNEL==\"EtherCAT[0-9]*\", MODE=\"0664\" > /etc/udev/rules.d/99-EtherCAT.rules

六、开! 

/etc/init.d/ethercat start #开


/etc/init.d/ethercat stop #关

 

SOEM

GitHub - OpenEtherCATsociety/SOEM: Simple Open Source EtherCAT Master

官网教程很简单

make完了以后 可以测试运行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2037329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Robotics: Aerial Robotics 部分笔记——Week2(1) 运动学

Week 2.1 g ( q ) g(q) g(q) is called g of q.Rotation matrix R R R: P ′ R P PRP P′RP。旋转矩阵都是正交的(orthogonal),即 R T R R R T I R^TRRR^TI RTRRRTI;行列式为1 d e t R 1 det R 1 detR1;且旋转矩…

【JAVA】阿里巴巴的Arthas:Java应用诊断的利器

文章目录 引言1. Arthas概述2. 安装与配置3. 基本使用4. 业务开发示例5. 高级功能6. 实践经验与案例分析7. 结论8. 附录 更多相关内容可查看 引言 在现代软件开发中,Java作为一种广泛使用的编程语言,承担着大量企业级应用的开发任务。然而,随…

Linux驱动入门实验班——Hello驱动(后附百问网课程视频链接)

目录 1.如何编写驱动程序 2.编写驱动程序 ①确定主设备号 register_chrdev函数 ②file_operations结构体 ③实现对应的函数,填入结构体 copy_from_user函数 copy_to_user函数 ④注册驱动程序 方式一 方式二 ⑤入口函数 ⑥出口函数 ⑦提供设备信息&#x…

Type-C接口取电芯片-LDR6500

取电芯片,特别是针对Type-C接口的取电芯片,如LDR6328系列,是近年来电子设备领域的一个重要技术组件。这些芯片通过智能协议控制,实现高效、安全的充电过程,并广泛应用于智能手机、平板电脑、笔记本电脑、小家电等各类需…

18. 基于ES实战海量数据检索

18. 基于ES实战海量数据检索 一. 概述二. Elasticsearch 全文检索1. 分布式搜索引擎2. 搜索引擎种类3. 倒排索引三. elastic使用1. 官网介绍2. docker安装3. elasticsearch-head工具4. 分词与内置分词4.1 内置分词器(了解即可)4.2 `IK`中文分词器*****************************…

打造高效信息发布平台小程序:设计思路与实践

在当今这个信息爆炸的时代,信息发布平台已成为连接用户与内容的桥梁,小程序以其独特的优势成为众多企业和个人开发者青睐的选择。开发一款专注于信息发布与共享的小程序,旨在为用户打造一个便捷、高效、互动性强的信息获取平台,具…

使用docker-compose快速部署Prometheus+grafana环境

初始化 Prometheusgrafana 创建相关目录并给予权限,持久化目录需要给777权限,否则容器启动失败 cd ~ && mkdir prometheus && chmod 777 prometheus cd prometheus && mkdir grafana_data prometheus_data && chmod 777…

过滤器实验

1.过滤器实验 首先写两个页面之间能够互相跳转 Test1.html通过超链接跳转到test2.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <body> <!--&l…

LDR6020在Type-C手机同时充电与USB2.0数据传输方案

随着科技的飞速发展&#xff0c;Type-C接口已成为智能手机等移动设备的主流充电和数据传输接口。为了满足用户对于高效充电与稳定数据传输的双重需求&#xff0c;乐得瑞科技推出的LDR6020芯片凭借其卓越的性能和丰富的功能&#xff0c;为Type-C手机提供了同时充电与USB2.0数据传…

欢迪迈手机商城设计与开发

TOC springboot137欢迪迈手机商城设计与开发 绪论** 1.1 研究背景 当前社会各行业领域竞争压力非常大&#xff0c;随着当前时代的信息化&#xff0c;科学化发展&#xff0c;让社会各行业领域都争相使用新的信息技术&#xff0c;对行业内的各种相关数据进行科学化&#xff0…

JavaScript高阶笔记总结(Xmind格式):第一天

Xmind鸟瞰图&#xff1a; 简单文字总结&#xff1a; js高阶知识总结&#xff1a; 理解Object&#xff1a; 1.返回一个由一个给定对象的自身可枚举属性组成的数组&#xff1a;Object.keys(对象名) 2.in 判断属性是否存在&#xff1a;"属性名" in 对象名 …

巧妙的获取Kimi和Deepseek提示词--结构化提示词真实用啊

文章目录 前言一、Kimi官方提示词Kimi的“提示词专家”Kimi的“爆款网文生成器”Kimi的“小红书爆款生成器”Kimi的“i人嘴替”Kimi的“费曼学习”Kimi的“留学顾问”Kimi的“公文笔杆”Kimi的“公文笔杆”Kimi的“猜猜我在想谁”Kimi的“塔罗师”Deepseek-Chat官方提示词如何防…

JDK源码——ThreadLocal

提供的方法 remove(): 移除当前线程的局部变量值。调用此方法后&#xff0c;当前线程将不再持有任何局部变量值。 set(T): 为当前线程设置一个新的局部变量值。参数T是要设置的值的类型。 get(): 获取当前线程的局部变量值。返回类型为T。 withInitial(Supplier): 创建一个新的…

Java语言程序设计基础篇_编程练习题*16.21(秒表倒计时)

目录 题目&#xff1a;*16.21&#xff08;秒表倒计时&#xff09; 习题思路 代码示例 结果展示 题目&#xff1a;*16.21&#xff08;秒表倒计时&#xff09; 编写一个程序&#xff0c;允许用户在文本域中以秒为单位输入时间&#xff0c;然后按下Enter键来进行倒计时&#xff0…

剪映新手必看!剪映如何实现图片/视频在文字上显示(剪映如何实现图片/视频轨道在文字轨道之上显示/剪映如何实现自由轨道/层级)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 剪映 📒📝 解决方案⚓️ 相关链接 ⚓️📖 介绍 📖 剪映,这款广受好评的视频编辑应用,以其用户友好的界面和强大的功能,成为了许多视频创作者的首选。抱着好奇心,今天我也试用了一下,但在使用过程中,我遇到了一个问…

AI for reading ML paper

心流 心流 Kimi Kimi Humata Humata Bytez Bytez Chatgpt4 scholar 学术版chatgpt4&#xff0c;需要充值&#xff1b; 还有更多AI工具等待你发现&#xff1b;

LVS的NAT模式实战

目录 1.NAT模式的工作原理 2.NAT模式实战---环境准备 1.环境规划 2.克隆主机&#xff0c;生成nat模式的机器 1.设置主机名称 2.更改ip地址 3.添加网卡 4.查看网卡 5.修改网卡配置文件 6.时间同步 7.停用其他服务 8.添加web服务 1.安装nginx 2.修改index.html文件 …

NFS实现多服务器文件的共享

文章目录 一、简介二、部署1、准备1、服务端和客户端&#xff1a;安装nfs-utils2、服务端&#xff1a;创建共享目录3、服务端&#xff1a;配置exports文件4、客户端挂载5、客户端&#xff1a;卸载 三、附录1、NFS服务基本命令2、/etc/exports参数解释3、exportfs命令 参考资料 …

Mysql-B树和B+树的区别

当我们为ID去建立一个主键索引的时候&#xff0c;Mysql底层就会为我们去维护一棵树的结构&#xff0c;从而提升我们的数据检索效率&#xff0c;树的共同特性&#xff1a;小的索引在左边&#xff0c;大的索引在右边&#xff0c;每一次结点的寻址&#xff0c;都是一次磁盘的IO&am…

STM32 F103C8T6学习笔记19:定时器读取旋转编码器

今日学习STM32 F103C8T6 单片机驱动读取旋转编码器&#xff0c;并传输数据给串口&#xff1a; 文章提供测试代码讲解、完整工程下载、测试效果图 目录 旋转编码器&#xff1a; 输入捕获&#xff1a; 硬件连接&#xff1a; 代码编程&#xff1a; 测试效果视频: 测试工程下载&…