CAN(Controller Area Network)即控制器区域网,CAN总线是由德国BOSCH公司为实现汽车测量和执行部件之间的数据通讯而设计的、支持分布式控制及实时控制的串行通讯网络。CAN BUS现场总线已由ISO/TC22 技术委员会批准为国际标准IOS11898(通讯速率小于1Mbps)和ISO11519(通讯速率小于125kbps)。CAN总线开始主要应用于自动化电子领域的汽车发动机部件、传感器、抗滑系统等应用中。
1 系统结构
基于现场总线的电力系统数据采集系统由数据采集模块、CAN总线、工控机(IPC)3部分组成,其系统结构如图1所示。
图1 系统结构图
其中数据采集模块采集现场数据,直接面向生产过程;工控机主要功能是通过现场总线网络对数据采集模块的参数进行设置,实时获取数据采集模块的数据和信息,以及显示、数据分析和完成报表等功能;CAN总线部分主要由CAN总线适配卡、通信介质和相应软件构成。
2 系统硬件设计
三相电压、三相电流模拟信号先输入到信号调理电路,输出的双极性信号进入A/D转换专用芯片ADS7864电路,数据信号经过电平匹配后传入DSP。该系统还包括开关量输入电路、开关量输出电路、时钟、电源和CAN接口等电路。如图2所示。
图2 硬件总体框图
2.1 TMS320LF2407A的主要特点
美国德州仪器公司生产的TMS320LF2407A芯片将实时信号处理能力和控制器外设功能集于一身,特别适合于工业控制应用。具有丰富的通用输入、输出引脚。该芯片供电电压为3.3V,降低了控制器的功耗;还提供了符合CAN2.0B规范要求的CAN通信模块;一个16位的同步串行外围接口(SPI)和串行通信接口(SCI)模块;具有低成本、低功耗、高速运算能力和高性能处理能力等优点。
2.2 采集模块电路设计
该部分电路采用ADS7684作为A/D转换芯片,ADS7684是一种高速、低功耗、六通道、同时采样保证无失码的双12位A/D转换器。信号调理部分采用互感器对电网信号进行隔离变化,所选用的是电流型互感器,既可测电压也可测电流,输入、输出额定电流6mA/6mA再采用普通运算放大器LM324构成电流电压转换器#运放工作在放大状态,输出-5~+5V信号。从调理部分得到的双极性模拟信号经过运算放大器OPA340组成的转换电路变成0~5V的输入信号,接入ADS7864的+IN和-IN端子,如图3所示。
图3 双极性输入转换电路
ADS7684使用独立的8MHZ有源时钟,由5V电源供电。TMS320LF2407A供电电压是3.3V,而ADS7864供电电压是5V,所以二者接口需电平转换,ADS7864的16位数据线经过SN74LVTH16245A电压转换芯片再与DSP相连,片选信号CS和读信号RD分别由2407A的外部I/O空间选通信号CS和读信号RD经电平匹配模块引入,它的A/D转换结束标志信号BUSY同样须经电平匹配模块引到2407A的XINT1。ADS7864同时采到6路输入信号并将它们保存在保持寄存器,然后顺序启动转换,将转换的结果分别存放在6个寄存器中,转换完后发出BUSY中断信号,DSP响应中断,顺序读出转换结果,然后再进行下一次采样、转换。
2.3 通信模块电路设计
目前电力系统的分布式监控系统几乎都是基于RS-485构建的网络,采用半双工的电气协议,这种机制使得在构建复杂工业现场的实时监控网络时存在不足,可靠性低,系统故障隔离能力差。在本设计方案中采用了CAN总线技术。该总线技术具有独特的机制,其主要有以下几个优点:网络节点不分主动主从;采用非破坏总线仲裁;支持竞争;传输距离远;通信速度较高(最大1Mbit/s);组网灵活;其报文采用短帧结构,传输时间短,受干扰小,具有自己的协议等;所以现场总线CAN以其自身的优点有效支持分布式控制系统或成为实时控制的串行通信网络。
TMS320LF2407A内带CAN控制器,使整个电路的外围设计简单化,可靠性也得到提高。考虑到CAN 总线数据传输的高速率和抗干扰性,CAN通信方案做了如下几方面设计:DSP的CANRX和CANTX先通过74LVC04A进行3.3V与5V的电平匹配,然后再通过高速光隔TLP113与TJA1050连接;采用了TJA1050作为驱动器代替以往的82C250,TJA1050的优点是完全符合ISO11898标准;高速率最高达1 Mbit/s;输出驱动器受到温度保护;至少可以连接110个节点。数字电源VCC和GND是用小功率隔离模块DC/DC进行一次隔离后得到的。增加了通信的抗干扰能力。CAN通信接口电路如图4所示。
图4 CAN通信接口电路
3 系统软件设计
本系统的软件在CCS2000的开发环境下编辑、调试的,采用C2000 DSP汇编语言和C语言混合编程。与硬件两部分相对应,其软件功能划分为采样和通信两个环节。
3.1 采样环节
ADS7864 含有两个可以同时工作的12位A/D转换器,其3个保持信号选择输入的多路开关并且启动A/D转换。这3个保持信号同时有效就可以同时保持6路输入信号,转换的数据分别存放在6个寄存器中。ADS7864的BUSY端接到DSP 的XINT1端,ADS7864把数据转换完成后发出中断请求信号,DSPC相应中断,进入中断服务程序,读取数据。一次读到16位信息,其中DB15表明数据的有效性(高电平有效),DB14,DB13,DB12表示哪个通道,DB11~DB00为该通道的转换的结果。地址/模式信号(A0,A1,A2)选择数据读取数据的方式,本系统设置为全“1”。根据电路编写程序,程序流程图如图5所示。
图5 采样模块程序流程图
3.2 通信环节
在使用CAN控制器之前首先必须对它的内部寄存器进行初始化设置。包括相关I/O口、位定时器以及邮箱的相关设置。第1步即为正确配置两个引脚CANTX和CANRX。第2步初始化位定时器:位定时器主要由BCR1和BCR2这两个寄存器组成,包括CAN控制器的通讯波特率、同步跳转宽度、采样次数和重同步方式。第3步初始化邮箱:邮箱初始化主要是设置邮箱的标识符、控制域以及对相应的邮箱赋初值。以下是寄存器初始化的部分原代码:
数据的发送与接收:当完成以上3步之后,接着就实现对数据的发送与接收请求。数据的接收,采用中断方式接收CAN信息,而且所接收到的信息标识符必须与相应的接受邮箱的标识符相同才能被接收,否则被滤除。
4 结束语
本系统充分利用DSP具有内置CAN控制器的优势,设计了具有双CAN总线接口的DSP中间控制器,采用分级、分层、区域组合的思想实现双层、多区域数据信息的采集。文中给出了本数据采集系统的结构,并设计了DSP中间控制器双CAN总线网络接口的硬件电路,在实际应用中取得良好的效果,也为相关的电力系统中的电量检 测提供了一定的参考。
上一篇:以DSP器件为核心的嵌入式系统技术分析
下一篇:莱迪思半导体收购SiliconBlue公司
推荐阅读最新更新时间:2024-05-02 21:47