基于dn1022的devicenet总线产品设计
孙丽莉
摘要: 以基于can的devicenet技术为基础,采用devicenet从站协议芯片dn1022和意法半导体公司的32位单片机stm32f051r8t6为智能电机保护器设计了一款devicenet从站模块,并介绍了devicenet网络应用系统构建方法。
关键词:智能电机保护器;devicenet;组网
0 引言
随着工业现场底层设备的种类越来越多,功能越来越强大,现场总线技术已经得到了广泛的应用。基于can总线的devicenet技术,由美国rockwell公司提出,并由odva(open devicenet vendors association)进一步开发并做一致性认证。其凭借低成本、高性能、设备级诊断等优异的性能在国际上得到了普遍的采用。devicenet协议主要应用于汽车、半导体、电气机器、运送传输系统、食品、水处理、冲压与注塑等领域。[1]
目前开发该协议的方式有:
(1)向odva购买协议规范,自己完成协议开发,此种方式对研发要求高,优点是成本较低,缺点是开发时间较长。
(2)购买第三方协议包开发。现在市场上一些大的自动化厂商(如德国赫优讯)提供devicenet协议包,供应商可向其购买开发。协议开发包的功能全面,但成本较高、有一定的技术难度。
(3)购买协议模块。一些自动化厂商(如anybus、赫优讯)提供集成了devicenet协议的ic模块,供应商只需要将此ic设计到产品的内部并利用串口等进行一些简单的设置即可。这种方式简便、开发周期短,缺点是结构固定、成本较高。
(4)协议芯片。dn1022内部集成了devicenet协议从站功能,集成度高、封装简单,满足一般的devicenet从节点功能要求,而且成本低、易开发、不受结构限制。[2][3][4]
介绍了一种基于dn1022芯片的电机保护器devicenet从站功能模块的开发,不仅实现了现场控制系统对电机重要参数及运行状态等的实时监控,还可完成总线对电机的远程启/停控制,为工业生产带来了很大便利。
1 智能电机保护器的devicenet通讯模块开发
安科瑞电气股份有限公司为改公司的电机保护器开发了一款devicenet从站通讯模块,并将其集成在产品内部,实现了仪表与通讯模块的一体化结构,非常便于工业现场控制系统的组网安装。改模块的开发基于devicenet从站协议芯片dn1022和意法半导体的cpu芯片stm32f051。
1.1 主要芯片介绍
1.1.1 控制器
mcu芯片采用意法半导体公司的cortex™-m0架构内核的32位处理器stm32f051r8t6,时钟频率高达48mhz,内置64 kb的flash、8k的ram、1个12位d/a 转换器 、11个定时器 、5通道 dma 控制器 、55个高速 i/o口 、2个 i2c 接口、2个usart、时钟管理等多种资源,具有很高的性价比。
1.1.2 dn1022协议芯片
dn1022芯片内置devicenet group2 only slave从站协议栈,具有内置的can口和devicenet处理引擎,高速串行口、并行口和配置口。用户处理器可通过高速串口或者并口和该协议芯片通信,只需实现一个简单的通信协议即可。[5]
dn1022技术指标:
◆支持最大64个输入字节,64个输出字节
◆支持poll(轮询)、cos(状态改变)、cyclic(循环)三种数据触发方式
◆内置can控制器
◆芯片供电电压 3.0v-5.5v
1.2 硬件功能框图
devicenet从站模块的硬件功能如图1所示。设备上电后,用户cpu从保护器读取对dn1022的配置数据。读取成功并配置完成dn1022后,将dn1022设定为运行态。在运行状态下,保护器与devicenet主站间进行数据交互。工作指示灯显示模块cpu的配置、dn1022的初始化及cpu读取保护器数据的状态,网络指示灯显示devicenet的网络状态。
图1 devicenet从站模块的硬件功能
1.3 dn1022工作原理介绍
(1)配置:设备上电后,用户处理器对dn1022进行配置,过程如图2所示。需要配置的参数有地址、波特率、network input连接长度、network output连接长度等。
图2 dn1022配置
(2)i/o数据交换,过程如图3所示。dn1022内部有一个i/o数据缓冲区,devicenet主站与dn1022之间的数据交互是异步进行的。
图3 devicenet主站、dn1022、用户cpu间的i/o数据交换
1.4 软件设计
软件设计用c语言完成。主要包括cpu 的初始化、读保护器配置命令、dn1022配置、保护器与devicenet主站间的交互数据等。
软件主程序:
int main(void)
{
cpu_init(); //cup初始化
disp(1); //cup正常工作,指示灯闪烁第1下
read_setting();
set_1022(); //配置dn1022
while (1)
{
read_master(); //读取实时参数
prepareiorequest(); //给devicenet主站上传保护器数据
; //出错异常处理
}
}
软件流程如图4所示。
图4 devicenet模块软件流程
2 devicenet组网
目前较普遍的devicenet组网方式为主/从连接,依靠主站的管理来完成数据交换。采用的主站有集成了devicenet主站功能的plc、计算机插卡(usb卡、pci卡)等。尤以plc的使用最为普遍。下面分别介绍这两种组网方式。
2.1 周立功devicenet主站(计算机usb卡)
周立功usbcan-e-d主站卡可实现devicenet主从站间的通讯。利用上位机软件canmanager for devicenet设置主从站的波特率、通讯地址、扫描时间、延时时间、数据触发方式(如轮询、状态改变)等参数。周立功主站与安科瑞电气电机保护器(从站)交互i/o数据的软件界面如图5所示。这种方式组网简单、使用方便,特别适合生产与调试。
图5 周立功usbcan-e-d主站监控
2.2 台达dvp plc
台达电子dvp系列小型plc,结合其devicenet主站扫描模块dvpdnet_sl,可作为工业现场的devicenet主站。结合安科瑞集成有devicenet从站功能的ard电机保护器,进行主从站网络的搭建,步骤为:
(1)按要求完成主从站的硬件接线。
(2)利用devicenet通讯配置软件devicenet builder 2.00进行组态,如图6所示。完成网络组态后,主站为dnet scanner,其余为电机保护器从站。
(3)利用编程软件wplsoft软件进行数据监控。
配置好通讯网络后,可通过监控和设置plc的相应寄存器来完成主站对从站的管理和控制如图7所示。启动wplsoft软件后,在装置监控窗口里设置相应寄存器的起始地址和寄存器数量,结合从站的通讯地址表,就可以实时监控从站的电参量等参数。还可以设定寄存器的值,向从站下发命令,实现通信线远程控制。
图6 devicenet通讯配置组态
图7 监控与设置plc的寄存器数值
3 结束语
基于devicenet现场总线技术的智能电机保护器,采用最新的单片机技术,设计体积紧凑,实现了工业过程控制对电动机的远程控制与高效管理。