基于DSP和现场总线的数据采集系统设计方三档,高钦和(第二炮兵工程学院,陕西西安710025)摘要:为了实时、准确的监控电力系统的运行状况,设计了一种基于DSP和CAN现场总线的数据采集系统。详细介绍了系统的结构和主要模块的软硬件设计。该系统利用工控机统一管理各采集节点,具有结构简单、性能可靠和易于应用的特点。关键词:DSP;现场总线;数据采集中图分类号:TP274文献标识码:B文章编号:DesignofDataAcquisitionSystemBasedonDSPandField-busFANGSan-dang,GAOQin-he(TheSecondArtilleryEngineeringCollege,Xi’an710025,China)Abstract:AdataacquisitionsystembasedonDSPandCANField-busispresented,forthestatusmonitorofpowersystemrapidlyandexactly.Thesystemstructureandthehardwareandsoftwaredesignofmainmodulearediscussedindetail.ThesystemintroducesindustrialPCtomanageallthedataacquisitionnodes,andfeaturessimplestructure,stablecapabilityandeasyapplication.Keywords:DSP;Field-bus;dataacquisition引言在电力系统的生产过程中,生产运行部门通常有两方面的考虑:一方面尽量提高设备与线路的利用率,实现系统的经济性;同时保证电力系统的安全、可靠运行,提供高质量的电能。因而电力部门需要对系统中的一些参量进行测量,以便随时掌握系统和设备的工作状态情况。数据采集与监控系统在电力系统中得到广泛的应用,数据采集系统的性能对监控系统更是关系重大[1]。传统电力测量仪器的前端采集单元,在采集电气设备的参数时由于其固有的原因,如采样速度不高,测量精度低,通信速率不高,或者不兼备数据存储、分析、计算等功能,不能满足现场的要求。随着计算机技术、通信技术和电子技术的迅猛发展,电力系统自动化程度也日益提高,通过数字信号处理技术和现场总线技术的应用提高了电力系统的可靠性和可维护性[2]。本文设计的数据采集系统,选用TI公司推出的C2XXX系列的32位定点DSP芯片TMS320F2812,采样精度为12位,采样速度可以达到80ns,完全能够满足采集基本电力参数的要求;利用CAN总线开放性、分散化和低成本的特征,可以解决电力系统分布范围广泛、监控参数较多的情况,具有广阔的应用前景。1总体设计传传传ADC…传传传传传传CAN接口CAN总线传传传传传传ADC传传传传传传CAN接口CAN接口适配卡图1系统总体结构图系统总体结构图如图1所示。该数据采集系统由数据采集节点、CAN总线和工控机三个部分组成。工作流程是:输入的模拟信号经过必要的信号调理电路,送入数据采集节点的A/D转换设备,转换完成后,把数据存贮起来,然后根据系统对数据的需要,通过CAN总线传送到工控机中。该系统中,DSP作为数据采集节点的核心器件,独自完成相应的数据采集。各DSP的工作状态和工作模式由上位机灵活选择,以提高系统的适应能力。通信协议采用现场总线协议。工控机主要是通过现场总线网络对数据采集节点的参数进行设置,实时获取采集节点的数据和信息,并负责存储系统信息、打印生成报表、提供方便操作的人机界面和与更上层网络的通讯。系统硬件框图如图2所示,主要包括采集模块、显示模块和通信模块几个部分。采集模块的核心器件是TI公司生产的DSP芯片TMS320F2812,它采用哈佛总线结构,其32位中央处理器大大提高了处理能力,主频可以工作在150MHz(时钟周期可达6.67ns)。处理器内部还集成了128kb的Flash存储器、4kb的引导ROM、数学运算表以及2kb的OTPROM,从而大大改善了其应用灵活性[3]。显示模块是用TMS320F2812的串行外设接口SPI模块控制MAX7219,从而驱动LED数码管显示的。通信模块的设计主要体现在CAN总线控制器和物理总线的接口驱动电路上。传传传传传传传传传TMS320F2812传传传传传传传传FLASH传传CAN传传ADCCAN传传图2系统硬件框图2采集功能实现2.1采集模块硬件实现为了全面获取电力系统运行的各种状态参数,需要在不同的工作现场安装采集器,由于工作现场的情况通常较为复杂,因此在进入采集模块之前,需要进行滤波、电平变换等,在处理成F2812内置ADC所允许的信号范围时,才能经A/D转换成为数字信号。TMS320F2812DSP芯片的片内A/D转换器完全可以满足电力系统数据采集精度和速度的要求,因此不必外扩A/D转换器。片内ADC的前端为2个8选1多路切换和2路同时采样/保持器,构成16个模拟输入通道,模拟通道的切换由硬件自动控制,并将各模拟通道的转换结果顺序存入16个结果寄存器中。ADC模块的主要特点是:模拟输入电压范围为0.0V~3.0V;具有快速的转换时间,ADC在25MHz时钟下转换时间为80ns;自动排序功能提供多达16个自动转换,每个转换可以编程选择16个输入通道中的一个,排序器可以作为两个独立8状态排序器或者一个16状态排序器;16个结果寄存器用于保存转换值,转换后的数字量表示为:40953ADCLO输入模拟电压值-数字值=其中:ADCLO为偏移量,一般取为0[7]。2.2采集模块软件实现TMS320F2812进行数据采集可以采用多个触发源启动ADC转换,该设计采用事件管理器EVA启动ADC转换。配置事件管理器EVA,设置定时期1周期中断标志启动ADC,使能事件管理器EVA中的EVASOC,启动ADC转换。当ADC转换完毕后,中断标志位置位,进入ADC中断服务子程序。在ADC中断服务子程序中,将转换结果读入数组Voltage中,然后调用CAN通信子程序,将数据传送出去,清除ADC中断标志位,响应中断后返回主函数。采集部分程序流程图如图3所示。初始化触发信号EVASOC?启动ADC开始采样中断标志位INTSEQ1是否置位?进入Adc_isr读取转换结果响应中断调用CAN通信子程序中断返回否是是否图3采集部分程序流程图3信息显示功能实现3.1显示模块硬件电路设计TMS320F2812SPICLKSPISIMOCLKDINLOADGPIOD0MAX7219+5VV+ISET9.53K191811213GNDGND94SEGA-G,SEGDPDIG0-DIG78DIGITS8SEGMENTS图4显示模块电路采用美国MAXIM公司生产的串行输入/输出共阴极显示驱动器芯片MAX7219驱动8位LED数码管,以显示采集到的数据。MAX7219是串行输入方式,故其连接方式比较简单。显示模块电路如图4所示。TMS320F2812的SPI模块中的SPICLK、SPISIMO分别用作MAX7219的时钟信号CLK、串行数据输入信号DIN;TMS320F2812的GPIOD0用作MAX7219的数据锁存信号LOAD。MAX7219的V+引脚接+5V电源信号,两个GND引脚接模拟地。DIG0~DIG7用于驱动8个数码管的显示,SEGA~G、SEGDP用于驱动数码管的7段显示和小数点的显示。3.2显示模块软件实现设计是用TMS320F2812的串行外设接口SPI模块控制MAX7219,所以初始化SPI模块要把工作方式设置为主方式,这样就可以通过SPISIMO端向MAX7219移入数据,并且通过SPICLK为MAX7219提供串行时钟。与之相应的,初始化GPIO就要把SPICLK、SPISIMO配置成外设信号,把GPIOD0配置成通用I/O信号。4通信功能实现4.1通信模块电路设计TMS320F2812是通过内置增强型CAN控制器eCAN模块进行通信的。CAN控制器的传送和接收端不允许和总线直接相连,因为当网络某个节点发生故障时,将影响整个网络的正常工作,另外若总线出现短路故障时,CAN控制器的输出驱动器也有可能损坏。所以eCAN模块必须通过CAN驱动芯片才能与外部的CAN控制器进行通信,即通信管理模块的硬件设计主要体现在驱动电路上。为了提高系统的驱动能力,增大通信距离,采用PHILIPS公司生产的82C250CAN收发器作为CAN控制器和物理总线的接口,以增强CAN总线的差动发送和CAN控制器的差动接受能力,提高恶劣环境下的瞬间干扰、保护总线的能力。82C250的Rs引脚可用于选择3种不同的工作方式:待机方式、斜率控制和高速方式。由于采用非屏蔽的双绞线,为了降低射频干扰,应在Rs管脚通过一个0~200k的电阻接地,用于控制上升沿和下降沿的频率。由于CAN总线利用双绞线进行数据传输,受外界干扰的程度相同,因此可以充分利用接受器的高共模抑制性能,提高通信的抗干扰能力。CAN通信接口电路如图5所示。F2812采用低功耗设计,3.3V供电,CAN收发器82C250是5V供电,假如直接相连,F2812无法承受。因此通过高速光耦6N137与82C250相连。6N137可以进行电平转换保护DSP芯片,还对F2812和物理总线进行光电隔离,以降低由于不同节点的高共模电压引起的串扰和避免对器件造成的损坏,提高系统的可靠性,同时其通信速率高达10Mbit/s,完全能够满足CAN通信的需要。TitleNumberRevisionSizeA2Date:8-Dec-2008SheetofFile:E:\修改资料\硬件电路0\YINGJIAN.ddbDrawnBy:R1390R2390C3100nFVCCC430pFC530pFR3390R4390R65R55VDDD14148D24148C2100nFVCC8EN7OUT6GND5NC1VDD2IN3NC4U356N137VCC8EN7OUT6GND5NC1VDD2IN3NC4U346N137TXD1GND2VCC3RXD4Rs8CANH7CANL6Vref5U4182C250W1200kR8120R7120CANTXACANRXA图5CAN通信接口电路4.2通信模块软件实现使用DSP系统中的CAN控制器发送和接受信息,应该首先对eCAN模块进行初始化,主要包括管脚的配置、波速率的设置等。因为eCAN模块的CANTX和CANRX管脚与DSP的通用输入输出(GPIO)是复用的,所以要把CANTX和CANRX这2个管脚的功能设置为专用的。在eCAN模式下,通信波特率由位定时配置寄存器CANBTC的TSEG1(6-3位)、TSEG2(2-0位)和BRP(23-16位)确定。完成eCAN模块的初始化后,才能对邮箱进行初始化,完成信息的发送和接受。5结束语本文将DSP和CAN总线技术应用于电力系统运行的监控中,设计一种基于DSP和CAN总线的分布式数据采集系统。该系统充分利用TMS320F2812内置ADC和CAN控制器的优势,能够满足电力系统采集精度和速度的要求,可以解决电力系统分布范围广、监控参数多的情况,,对于提高供电安全性和可靠性,具有重要的意义。本文作者创新点:充分利用DSP丰富的片内外设,结合现场总线将各采集节点组成分布式网络,解决了电力系统监控点分散的情况。从工程应用的角度给出了系统的软硬件设计。参考文献:[1]常广,王毅.电力系统在线数据采集系统的研制[J].微计算机信息,2003,19(2):1.[2]李业兴,康晓恩,邓志杰,田建文.基于DSP和CAN总线的数据采集与处理系统[J].兰州交通大学学报(自然科学版),2007,26(1):42.[3]张凤江,王兴松.基于TMS320F2812和USB的数据采集系统的设计[J].机械工程与自动化,2007,141(2):71-72.[4]TIIncorporation.TMS320F2810,TMS320F2811