博客
HK-CIFX板卡作为EtherCAT从站的基本使用举例
HK-CIFX是一款基于PC的协议板卡,用于为PC扩展各类现场总线与工业以太网协议接口。其扩展接口多样,包括PCI,PCIe,MiniPCIe,M.2.,PC/104,PCI104,CPCI等。支持的现场总线与工业以太网协议众多,包含PROFIBUS,PROFINET,CANopen,EtherCAT,DeviceNet,EtherNet/IP,CC-Link,CC-Link IE Field Basic,Modbus,POWERLINK等。本篇文章旨在举例说明如何将HK-CIFX板卡作为EtherCAT从站使用。
1. 插板卡
第一步是在工控机未上电的情况下,将CIFX板卡插入到对应的PCI插槽中并固定住,确保板卡的金手指部分与PCI插槽是充分接触的。详细的接口定义可查看光盘中的文档《PC Cards CIFX 50 50E 70E 100EH UM 48 EN》。
2. 装驱动
给工控机上电,打开设备管理器,会发现新的PCI设备,如图2.1。
图2.1,已插入的PCI设备
在以下光盘路径中找到对应的Windows
驱动并双击运行安装,如图2.2,详细安装过
程可参考文档《cifX Device Driver Installation
for Windows OI 09 EN》。
图2.2,CIFX的Windows驱动
路径:Communication_Solutions_DVD_2017-08-1_V1_400_170125_19044\Driver and Toolkit\Device Driver (NXDRV-WIN)\Installation
驱动软件安装完成后建议重启工控机,CIFX板卡会自行寻找驱动并安装,安装完成后如图2.3。
图2.3,驱动安装完成
注:如在安装过程中提示驱动程序未经签名,如图2.4,请先自行下载并更新Windows补丁文件
KB3033929,下载链接如下:https://docs.microsoft.com/en-us/security-updates/SecurityAdvisories/2015/3033929
补丁更新过程如图2.5,更新补丁之后请重启工控机。
图2.4,未经签名的驱动程序 图2.5,补丁KB3033929安装
3. 加固件
板卡驱动成功安装后,在Windows的控制面板中会出现cifX Setup以及cifX Test两个工具,其中cifX Setup可为板卡加载所需的固件,固件决定了板卡的协议类型以及主从站类型。而cifX Test可查看板卡的基本信息,也可进行简单的数据交换测试。
3.1 cifX Setup
打开cifX Setup工具,点选DevNr/SN——Active Devices——cifX0——CH#0——Add(选择所需固件,如cifxecs做EtherCAT从站,注意图中示例是加载的EtherCAT主站)——Apply。如图3.1。
图3.1加载固件
3.2 cifX Test
打开cifX Test工具,点选Device——Open——cifX0——Channel0——Open,打开对应的通道,如图3.2。选择Information可查看板卡的信息,可以看到板卡的Channel0已经加载了EtherCAT Slave固件(图中示例是加载EtherCAT主站的情况,从站类似)。选择Data Transfer可进行数据交换测试
图3.2,cifX Test打开板卡通道
图3.3,cifX Test查看板卡固件信息
4. 安装SYCON.net软件
SYCON.net软件用于赫优讯全部系列产品的配置,并可进行状态监控和通信测试。
本例中CIFX板卡作为EtherCAT从站,需要用SYCON.net软件进行EtherCAT网络的组态,并下载给CIFX板卡,让CIFX板卡具备初始化默认的EtherCAT从站配置。下载完网络配置信息后也可用该软件监控板卡的状态,并测试通信过程,如切换网络状态,CoE通信,点亮某个DO,采集某个DI等。
使用者可在产品光盘下找到SYCON.net软件的安装包。路径如下:
Communication_Solutions_DVD_2017-08-1_V1_400_170125_19044\Software\SYCON.net\SYCON.net
5. 在SYCON.net软件中配置板卡
根据应用的需要在SYCON.net软件中配置板卡并下载,具体过程如下。
5.1 打开SYCON.net软件
在开始菜单下找到SYCON.net并打开,默认密码为空,使用者可自行添加,如图5.1。
图5.1,打开SYCON.net软件
5.2 添加CIFX板卡
在Device Catalog中找到EtherCAT——Gateway/Stand-Alone Slave——CIFX RE/ECS V4.6,并用鼠标左键将CIFX拖拉到界面中间的灰线上,如图5.2。
图5.2,添加CIFX板卡
双击拖拉出来的CIFX图标,或在图标上右键——Configuration打开配置界面,点开Device Assignment——Scan,找到CIFX 50-RE并打勾,最后Apply.在Configuration选项下可设置从站输入输出数据长度等信息,点击Apply——OK关闭窗口,如图5.3。
图5.3,Device Assignment/Configuration
在CIFX图标上右键——Download,下载EtherCAT从站相关配置给CIFX板卡。主站一侧加载从站xml文件后,可以扫描到板卡。
图5.5,Download
6. 用SYCON.net软件进行监控与测试
6.1 状态监控
下载配置完成后,板卡就根据配置运行起来了。此时,右键CIFX图标——Connect,再右键CIFX图标——Diagnosis…可以监控板卡的运行情况,如图7.1所示。
图7.1,Diagnosis
可以看到,板卡当前的状态是Communication+Run,表示板卡已经运行,且正常进行数据交换.
6.2 数据交换测试
6.2.1 用IO Monitor测试PI数据收发
板卡运行起来后,进入Diagnosis——Tools——IO Monitor,同样可以看到上下两部分,如图7.9,上部分为Input data,即主站读从站的数据,下部分为Output data,即主站写从站的数据。
图7.9,IO Monitor
图7.9中Input部分出现叹号,提示“COM-flag not set”,那是因为板卡的Device state未处于Communication+Run状态,通过右键CIFX图标——Additional Functions——Service——Start Communication可以让板卡RUN,再通过Packet切换状态机让板卡与IO进入Communication状态。板卡进入状态后再回到IO Monitor,点击Clear可以清除提示。
7. CIFX的二次开发包
通过7.2章节的测试,相信每一个使用者对CIFX的通信机制都有一定的了解了,但如果使用者想基于CIFX板卡写应用程序,那么就需要用CIFX的二次开发包,二次开发包提供的API可实现7,2章节用到的所有通信过程,如切换状态,CoE,PI update等。
CIFX的API以库的方式提供,该库可以在以下的光盘路径下找到。
路径:Communication_Solutions_DVD_2017-08-1_V1_400_170125_19044\Driver and Toolkit\Device Driver (NXDRV-WIN)\API
CIFX的API主要分三部分的内容,Driver Functions,System Device Functions,Communication Channel Functions。
- Driver Functions:带前缀xDriver的函数,用于选定某个板卡,一台PC可连接了多个板卡;
- System Device Functions:带前缀xSysdevice的函数,与系统重置,下载,设备信息等相关的函数;
- Communication Channel Functions:带前缀xChannel的函数,与协议,数据通信相关的函数。
每一部分Functions的使用方法是先打开,如xDriverOpen(),再调用别的API。详细的API说明可以参考《cifX API PR 04 EN》第11页。
接下来通过一个简单的例程来介绍开发包的基本使用流程与方法,该例程可联系虹科获取。
该例程调用API的流程如图8所示。其中黄色部分表示main函数,绿色部分表示main函数内包含的几个调用块,蓝色部分为每个调用块内用到的API函数,灰色部分为对API函数实现的功能说明。
EnumBoardDemo和SysdeviceDemo这两部分以及内部的API实现的只是一些基本调用,如找开设备,查看设备信息等,与协议和数据通信无关,使用者可以参考调用即可。而ChannelDemo部分刚实现了周期数据收发(PI数据)和非周期数据收发(切换状态,CoE,FoE等)的所有过程,是使用者应该重点考虑的。
图8,API调用流程
8.1 Main函数代码部分
8.2 PI周期数据更新部分
定义
通过xChannelIORead()和xChannelIOWrite()函数实现周期数据更新,可以看到,发送的数据abSendPIData与测试时保持一致。
CIFX板卡的功能非常强大,几乎支持市面上的所有协议,使用板卡作为其它协议时,只需要重新加载对应协议的固件,重新配置网络即可,且使用者本身无需对协议非常了解即可进行使用和二次开发。
本文所有内容经由本人测试与整理,如有歧义,请与英文原版说明书为准。
全文目录
近期文章
- 虹科免费直播 | CAN XL国际研讨会:多位CAN XL创始成员,带您解锁CAN XL的巨大能量!
- 虹科应用|煤矿机械数据传输监测难?试试虹科PCAN优选方案
- 虹科新闻|新合作启航,服务如初!虹科与HMS及PEAK合作升级
- 虹科方案|CAN(FD)/LIN远距离通信,难题何解?
- 以太网分析仪netANALYZER Scope软件介绍
- 虹科干货 | 无需外部Redbox即可无缝合并PRP和HSR网络实现时间同步
- 虹科干货 | 解决连接到IEEE 1588高可用性网络的SCADA系统的NTP同步参考问题
- 虹科案例 | 使用PRP协议解决广播行业中实现高可用性和亚微秒同步的难题
- 虹科方案|从CAN到以太网:车载网络数据采集方案
- 虹科干货 | 虹科干货 | Linux终端设备的时间敏感网络协议实现
搜索内容
订阅邮件
想要获取虹科最新资讯?欢迎订阅我们的邮件简报!