工控网首页
>

应用设计

>

变频器DeviceNet通讯适配器的开发(下)

变频器DeviceNet通讯适配器的开发(下)

2006/7/19 9:05:00
3.2.3 适配器编程 3.2.3.1 DeviceNet对象模型程序实现 DeviceNet面向对象的设备建模思想要求采用面向对象的程序设计思路,系统选择C为程序实现语言,尽管C语言不是面向对象的语言,但是程序仍然采用面向对象的设计思想。系统对适配器中的每一个对象定义一个结构体类型,并在该结构体类型上定义一套具体操作,程序实现时声明一个结构体类型全局变量,同时将定义的操作应用于该变量,这就如同定义一个类,并实例化该类,程序结构清晰,调整方便。下面以DEVICENET对象的程序实现为例作详细说明,其它对象的实现与其类似。 //定义结构体类型-构建对象的数据结构 typedef struct{ uint uiClassRevision; uchar ucMacID; uchar ucBaudRate; …… uchar ucBautSwitchValue; }DEVICENET; //定义结构体变量-声明和申请对象(对象的实例化) DEVICENET xdata stDevicenet; //定义结构体变量上的各种操作-对象的服务 void dInitializeDevicenet() //初始化对象 void dHandleExplicitMessage(uchar xdata *ucpRequest,uchar xdata *ucpResponse) //显式报文处理 uchar dHandle_UCMM_Port(uchar xdata * ucpRequest,uchar xdata * ucpResponse) //未连接端口报文处理 3.2.3.2 系统主程序实现――事件驱动,消息响应编程思想 事件是指改变系统运行状态和运行流程的系统外部或内部的变化,消息是表示事件是否发生的标志。当系统一有事件发生,系统并不立即处理而是发送一个事件对应的消息,系统的后台不停的捕捉消息,根据收到的消息执行相应的任务,这样尽管系统事件的触发是随机的分散的,但是事件的处理是集中的,程序思路清晰,管理简单,这就是事件驱动、消息响应的编程思想,这种思想源于windows编程,亦可以用于单片机或DSP构成的测控系统软件设计。适配器采用了这种程序组织思路,适配器定义了十多个事件,将这些事件分为7类,分别为:故障事件,DeviceNet事件,Modbus事件,RS232事件,定时器事件,设备更新事件和空闲事件;每一类事件中又包含若干个子事件。考虑事件的紧急程度和重要程度的不同,对事件定义了优先级,优先级高的事件先处理,优先级低的事件后处理。现实世界的事件反映到程序中时,事件绝大部分在中断中发生。为了准确的定位发生的事件,适配器对事件进行编码,每个事件具有唯一的ID。 4适配器测试   对适配器的测试可以分为验证性测试和测量性测试,测量性测试衡量适配器的性能指标,验证性测试检验适配器实现的功能。 4.1测试环境   根据测试要求使用表1中的设备构建了图5和图6两个硬件测试环境,图5测试适配器DeviceNet应用层、物理层、Modbus端口、PC配置端口,验证适配器自身功能的正确性和完善性,图6测试适配器的网络互操作性和运行特性。   图5中阴影为被测试设备(DUT),与DUT相连的分为4部分:  DeviceNet网络,变频器Modbus,PC配置端口RS232和设备电源。图中电压表和毫安表用于测试适配器的功耗,工作电压范围,浪涌电流等,示波器用于测量信号质量和分析网络数据,1770-KFD和运行RSNetWorx的PC用于测试适配器DeviceNet应用层协议特性,5136-DNP-PCI和运行网络分析软件的PC用于侦听DeviceNet网络数据,分析适配器与1770-KFD的通讯过程。   图6是用于测试适配器DeviceNet网络互操作性和网络运行特性的测试环境。测试网络波特率为125K,包含7个节点,节点地址在图中都清楚标出,节点设备详细信息可在表1中查得,另外网络还包含5136-DNP-PCI只听节点,它不干涉网络的正常运行,侦听网络通讯数据供分析使用。图中阴影为DUT,DUT有两台,目的是验证一台在执行测试过程中的行为是否影响另外一台的正常工作。节点5,8,9,14,40为从设备,节点0为控制主设备,节点62为组态主设备。将节点5和14放入节点0的扫描列表中,用RSLogix500编制控制程序下载到SLC,实现如下控制过程:节点14的运行、停止按钮控制节点5的变频器起停,节点14的信号灯用于指示节点5变频器的运行状态,用节点62配置和监视两台DUT设备。这便构建了一个集现场控制,运行组态和网络分析为一体的DeviceNet网络测试环境,可以充分的测试适配器的网络行为。
表1 测试设备和工具
图5 单节点测试架构
图6 网络性能测试架构 4.2测试记录
表2 测试结果记录 4.3 测试评价   从表2中的测量结果可以看出,适配器能够快速响应DeviceNet请求报文,快速执行协议转换并实现变频器的控制,能够低功耗,宽电压范围工作,上电时冲击电流小。 5 结 论   使用W77E58P和SJA1000组合,开发较复杂的DeviceNet从设备是一个经济、适用、可行的方案,文章通过变频器DeviceNet通讯适配器开发实例,从前期分析,硬件设计、软件设计、测试等多方面全面展现了DeviceNet从设备的开发过程,以实践证明了方案的经济性、适用性和可行性。
投诉建议

提交

查看更多评论
其他资讯

查看更多

助力企业恢复“战斗状态”:MyMRO我的万物集·固安捷升级开工场景方案

车规MOSFET技术确保功率开关管的可靠性和强电流处理能力

未来十年, 化工企业应如何提高资源效率及减少运营中的碳足迹?

2023年制造业“开门红”,抢滩大湾区市场锁定DMP工博会

2023钢铁展洽会4月全新起航 将在日照触发更多商机