一、注意事项:

1.xChannelIORead()第一次读取到数据是空的。
2.系统安装cifX驱动之前一定先安装有uio模块和libpciaccess库;建议系统内核为3.X.X版本,测试版本为3.13.5;GCC为4.X.X,测试版本为4.6.3。
3.SYCON.net选择从站设备描述文件时建议通过扫描功能添加,因为手动配置的文件版本可能不匹配,导致网络通信无法开启。
4.默认的配置文件存储目录为"/opt/cifx",再运行应用程序或者demo时,可以通过"/opt/cifx/cifXn.log"文件查看硬件加载配置文件的结果,n为硬件流水号。
5.三种配置文件名字不可更改,设备描述文件为“device.conf”,协议栈文件(EtherCAT)为"cifxecm.nxf",网络配置文件为“config.nxd“。
6.SYCON.net扫描出的从站需要更换别名,格式:从站型号_从站类型_同类从站的序号_所有从站的序号  如: EL1004_DI_0_0。
7.首次安装好uio_netx模块,系统下一次开机并不会自动加载uio_netx模块,建议在"/etc/modules"中添加一行"uio_netx"使系统每次重启自动加载uio_netx模块。
8.EtherCAT主站协议栈是支持Hot Connect这个功能的,但是目前版本的SYCON.net不能支持Hot Connect的配置,需要使用ENI文件(该文件也是配置文件,是由EtherCAT Configurator生成,这个软件不是赫优讯的,是Beckhoff公司的)。也就是 使用ENI文件替换SYCON.net生成的config.nxd文件。
9.EL模块不支持热插拔的。

更多关于安装cifX驱动的问题可以查看“cifX Device Driver - Linux DRV 08 EN.pdf”手册的第7章节。

二、应用问题:

1.第一次read必须过滤掉吗?

  不要。

2.报文是从第一次读取才开始吗?之后报文才会不停的发送吗(既然我不read)?

   EtherCAT主站协议栈会根据设定的Freerun cycle时间,自动发送数据。应用程序写了什么数据,那么主站协议栈就会发送什么数据。如果应用程序没有写数据,那么主站协议栈就发送上个周期的数据。比如,当前周期,应用程序写了0x11,那么主站协议栈就发送0x11。如果隔了5个周期,应用程序才写新的数据0x22,那么在间隔的这5个周期,主站协议栈还是发送0x11。

3.循环周期可控吗?图中的”Freerun cycle”指的是当前循环周期吗?如果不是它指的是最大循环周期还是最小循环周期?

  

  这个是总线循环周期,设定好之后,应用程序无法更改。赫优讯提供的EtherCAT主站的最小循环周期是250us。最大周期不要超过5000us。

  简单理解,总线循环周期,就是EtherCAT主站协议栈每次发送IO数据的数据间隔。

  

  

4.如果从站数量不变,”Freerun cycle”设置甚至过小或者过大会怎么样?会有警告吗?

  设置过小,会丢包。在双端口内存的偏移地址0x032D,bErrorPDInCnt会有计数。

5../ build_install_driver和图中步骤执行的结果是相同的吗?

   

  一样。

6.每次上电都只能通过./ build_install_dr。iver来安装驱动和加载各种配置文件吗?

  驱动安装好了之后,接下去只要运行例子程序就可以了。

7.目前是否支持热插拔?支持的话如何实现?(貌似最新版本的SYCON.net已经支持,有待确认)

  参看 文档EtherCAT Master V4 Protocol API 05 EN.pdf

  赫优讯提供的EtherCAT主站协议栈是支持Hot Connect这个功能的,但是目前版本的SYCON.net不能支持Hot Connect的配置,需要使用ENI文件(该文件也是配置文件,是由EtherCAT Configurator生成,这个软件是Beckhoff公司的)。也就是使用ENI文件替换SYCON.net生成的config.nxd文件。

cifX使用心得的更多相关文章

  1. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  2. NoSql数据库使用半年后在设计上面的一些心得

    NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 这个疑惑非常大,为此我看了很多分析文章, ...

  3. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  4. 我的MYSQL学习心得(三) 查看字段长度

    我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  5. 我的MYSQL学习心得(四) 数据类型

    我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(五) 运 ...

  6. 我的MYSQL学习心得(五) 运算符

    我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  7. 我的MYSQL学习心得(六) 函数

    我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  8. 我的MYSQL学习心得(七) 查询

    我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  9. 我的MYSQL学习心得(八) 插入 更新 删除

    我的MYSQL学习心得(八) 插入 更新 删除 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得( ...

随机推荐

  1. 阶段01Java基础day25网络编程

    26.01_网络编程(网络编程概述) A:计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源 ...

  2. Asp.net APP 重置密码的方式

    在开发ASP.NET WEB APP的时候,时间长了容易忘记最初设置的密码,即使打开数据库也不好重置,因为密码都是加密存储在数据库中的.下面是几种通过代码重置密码的方式: 第一种: string re ...

  3. 前端特效demo | 一起围观 10 种创意时钟

    时钟动画应用非常广泛,我们经常会看到一些相当个性化的HTML5时钟动画.今天我们向大家分享 10 款形态各异的超时尚时钟动画,其中有圆盘时钟.创意时钟.电子时钟等,希望大家会喜欢. 文内附有时钟效果代 ...

  4. elasticsearch(1) 安装和使用

    一.简介 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎.无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进.性能最好的.功能最全的搜索引擎库. 但是 ...

  5. 马凯军201771010116《面向对象与程序设计Java》第十周学习总结

    一.理论知识学习部分 泛型类的约束与局限性: 不能用基本类型实例化类型参数 运行时类型查询只适用于原始类型 不能抛出也不能捕获泛型类实例 参数化类型的数组不合法 不能实例化类型变量 泛型类的 ...

  6. python学习-迭代器,列表解析和列表生成式

    迭代器为类序列对象提供了一个类序列的接口.Python 的迭代无缝的支持序列对象,而且还允许程序猿迭代非序列类型,包括用户定义的对象. 迭代器是一个next()方法的对象,而不是通过索引计数.当需要下 ...

  7. python之三级目录

    #python之三级目录低配版 menu = { '北京':{ '朝阳':{ '国贸':{ 'CICC':{ }, 'HP':{ }, '渣打银行':{ }, 'CCTV':{ }, }, '望京': ...

  8. jdbc工具类的封装,以及表单验证数据提交后台

    在之前已经写过了jdbc的工具类,不过最近学习了新的方法,所以在这里重新写一遍,为后面的javaEE做铺垫: 首先我们要了解javaEE项目中,文件构成,新建一个javaEE项目,在项目中,有一个we ...

  9. 匹配URL

    使用一个不错的正则表达式来配对一个正确的url. string reg = @"(?i)(http://|https://)?(\w+\.){1,3}(com(\.cn)?|cn|net|i ...

  10. SpringBoot的学习【7.引入配置文件】

    1.@PropertySource 作用:加载指定的配置文件 2.@ImportResource ---恢复内容结束---