APP下载

如何实现DEVICENET主站设备:基于DEVICENET规范的PCI-5010-D

2011-07-02广州致远电子有限公司

电子技术应用 2011年5期
关键词:测试软件板卡主站

1 引言

从传统的分散型数字控制系统(DCS)到现在的现场总线控制系统(FCS),标志着工业通信及控制技术的飞速发展。在工业自动化领域里,现场总线控制系统作为当今最为主流的工业通信技术,其中现场总线DeviceNet又占据了很大的市场份额。DeviceNet是20世纪90年代发展起来的一种基于CAN总线技术的全球工业标准的开放型通信网络。由于采用了先进的通信概念和技术,以低成本、高效率、高性能、高可靠性等优点,广泛应用于工厂自动化系统。

在整个DeviceNet网络中主站扮演着最重要的角色,它负责整个网络的通信和管理,功能强大和复杂,但是DeviceNet 2.0版本的规范中又未对主站进行详细描述,使其设计起来更加困难。上期文章介绍了如何快速实现DeviceNet从站,本期将介绍如何基于PCI-5010-D快速实现DeviceNet主站设备。

2 DeviceNet典型网络拓扑结构

DeviceNet网络大都采用主干-分支网络拓扑结构,以主/从连接方式通信。实际应用中一个网络通常有一个主站设备和最多63个从站设备,从站设备需要依靠主站的管理来完成数据交换。图1所示为PCI-5010-D在DeviceNet网络中的典型应用形式。

图1 PCI-5010-D典型应用

3 PCI-5010-D DeviceNet主站卡简介

PCI-5010-D是广州致远电子有限公司研发的新一代 PCI接口DeviceNet主站卡,它可以使计算机快速连接到DeviceNet网络,不但可以在最短时间内应用DeviceNet从站设备,实现可视化、参数化的网络分析及控制,而且更能减少开发DeviceNet系统的时间,组建稳定、健硕的DeviceNet网络。

它提供多种操作系统的设备驱动、工具软件等,能真正地满足客户的各种应用需求,为工业通信DeviceNet网络提供了可靠性、高效率的解决方案。在计算机中的硬件与软件结构如图2所示。

PCI-5010-D具有如下特性:

图2 PCI-5010-D在计算机中的硬件与软件结构

·支持ODVA一致性测试软件(A21 DeviceNet Conform);

·带有微处理器的DeviceNet主站卡,完全遵循DeviceNet 2.0协议规范;

·支持最多63个从站节点;

·支持自动检测失效节点位、空闲节点位、错误节点位映射;

· 支持标准波特率:125 kb/s、 250 kb/s、500 kb/s;

·支持用户自设定的 MAC ID,范围:0~63;

·支持无需断开网络,在线移除/安装从站设备;

·自供电DeviceNet设备兼容网络的连接;

·PCI板卡所有元器件均符合工业级要求。

4 PCI-5010-D驱动安装

PCI-5010-D通信卡没有任何开关和跳线用于分配中断和I/O地址,这些都是由BIOS自动分配。因此在安装驱动程序之前板卡必须事先安装到PCI槽上,以下是安装步骤。

通常在新安装PCI板卡后,启动计算机之后会弹出“找到新硬件”的界面,这时需要手动地把PCI-5010-D的驱动所在的文件夹添加到搜索的位置,这样直接点击下一步,系统会自动把驱动程序安装完成。

5 基于PCI-5010-D的PC机端软件设计

图3所示为PCI-5010-D的操作流程,其概括性地描述了PCI-5010-D的所有功能及相应的API函数调用结构。以下详细介绍常用的API函数功能及使用。

(1)初始化 PCI-5010-D

打开PCI-5010-D时,必须按照图3所示的顺序来操作,即需要经历打开、初始化参数、添加节点、保存配置、主站上线、扫描等步骤。在关闭PCI-5010-D时,其操作与初始化的流程相反,启动PCI-5010-D操作代码

图3 PCI-5010-D API函数操作流程图

如下:

void OnStartDeviceNet(void){

......

ZDNMA_Open(1,0,0); //打开 PCI-5010-D

ZDNMA_Init(1,0,0,(ZDNMA_INITCFG*)&Config,0);

//初始化协议及配置主站

ZDNMA_AddSlave(0,(ZDNMA_SLAVECONFIG*)

&SlaveConfig);//添加节点

ZDNMA_SaveCfg(0); //保存当前通道的配置

ZDNMA_Online(0); //主站上线

ZDNMA_StartScan(0);} //开始扫描从站节点

void CloseDevice(void){

......

ZDNMA_StopScan(0); //停止扫描从站节点

ZDNMA_Offline(0); //主站下线

ZDNMA_Uninit(0); //关闭通道

ZDNMA_Close(1,0);} //关闭设备

(2)接收发送从站节点I/O数据

DeviceNet主站设备能接收和发送网络中所有从站节点不同连接的I/O数据,只需要简单地调用读写从站函数即可,其实现代码可参考如下程序。

void IODataTranstmit(void){

.....

ZDNMA_ReadSlaveIO(0,NodeID,POLL,pBuffer,datalen,1000); //读 NodeID的轮询数据,长度为 datalen,超时 1 s

ZDNMA_WriteSlaveIO(0,NodeID,POLL,pBuffer,datalen,1000); //写 NodeID的轮询数据,长度为 datalen,超时 1 s

}

(3)显式报文发送和接收

作为一个DeviceNet主站设备应该具备UCMM服务器、

客服端的功能,这样就可以通过显式报文来访问网络中各

个节点的任意对象数据,其中包括下载和上传数据,其操作

可参考如下代码。

void SDOTranstmit(void){

.....

ZDNMA_EMRequest(0,dwSlaveID,dwService,dwClassID,

ata,dwRecSize,

dwWaitTime);//填写相应的参数,读取或修改网络上对象属

性}

(4)其他功能

PCI-5010-D除具有如上所述的基本功能之外,还具有其他一些DeviceNet相关的功能特性,例如获取指定从站的当前工作状态、获取设备信息功能、支持ODVA一致性测试软件等等(具体操作可参考API函数库手册)。这些功能都为开发一个完整的DeviceNet主站设备提供了必备条件。

6 结语

经过以上步骤,通过调用PCI-5010-D的API函数库实现一个特定功能的DeviceNet主站设备。PCI-5010-D的DeviceNet协议栈经过严格的测试,能兼容其他的DeviceNet设备,同时还可利用测试软件对DeviceNet网络进行配置并检测运行状态。

广州致远电子有限公司于2002年8月加入ODVA协会,并提供各种接口的 DeviceNet接口卡、DeviceNet终端设备(包括数据采集、电机控制等)、DeviceNet分析仪、网关及网桥、OPC服务器以及基于DeviceNet协议的整套组网方案及应用开发。

地址:广州市天河区车陂路黄洲工业区3栋2楼

技术支持:(020)28267846

销售电话:(020)28872342 28872450

电子邮箱:DeviceNet@zlg.cn

猜你喜欢

测试软件板卡主站
网络自适应测试软件运行方法设计
基于PCI9054的多总线通信板卡的研制
基于FPGA的多通道模拟量采集/输出PCI板卡的研制
自动化检测EPU10A板卡系统设计与实现
EtherCAT主站与主站通信协议的研究与实现*
多表远程集抄主站系统
一种基于光纤数据传输的多板卡软件程序烧写技术
远程开放教育学生自主学习能力评价的研究
一款重型包装抗压系统控制软件的设计与开发
基于改进经济压差算法的主站AVC的研究