摘 要: 基于DSP 的数字信号处理能力强、运算速度快、外设资源丰富的特点,针对目前中低压电机微机保护,设计了以TMS320F2812 为CPU,基于以太网通信技术的微机保护系统。详细介绍硬件各模块的功能特点和软件各模块具体实现流程图。经测试运行表明,该系统有很好的稳定性和可靠性,将投入实际运行。
1 前言
随着中低压电机在自动化生产中的广泛应用,迫切需要电机的保护和控制设备。对于电机的保护功能要求也日益提高。传统的以单片机为处理器和以RS-232/485 或CAN 总线为通信的系统已无法满足需要。随着DSP(数字信号处理)芯片功能的不断加强和以太网技术的快速发展,为研制高性能的微机电机保护系统, 提供了更大的开发空间。
TMS320F2812 作为新一代功能强大,用于控制的定点数字信号处理芯片,具有丰富的片内外资源和极强的运算速度。它的性能远高于一般的单片机。
因此基于DSP 微机保护系统可使所保护的电机能更可靠、安全、稳定的运行。针对电机保护功能要求的特点,开发和研制了一种基于TM S320F2812 的中低压电机保护系统。
2 硬件设计
该系统的硬件系统框图见图1.按其功能可以主要分为两大模块:(1)由数据采集模块、开入开出模块、外扩存储和TMS320F2812(此后简称F2812)组成的保护模块。(2) 由以太网控制芯片、显示电路、小键盘和F2812 组成的监控模块。
图1 硬件系统结构框图
2.1 保护模块功能分析
保护模块的主要功能是完成数据采集、处理、计算、保护逻辑判断和出口逻辑判断及动作。
2.1.1 数据采集模块
该系统模拟量采集是F2812 自带的12 位、16通道的A/D 转换器。对于装置提出的3%的,可以通过采用过采样技术和设置寄存器ADCTRL1 中ADCQPS0~ADCQPS3 控制采样保持S/H 窗口的长度,来提高数据。从而可以节省外扩A/D 转换芯片,减少了系统功耗和简化系统结构。模拟数据的采集通过F2812 的定时器T0 启动A/D 转换,转换结束时产生中断信号,再通过中断服务程序读取转换结果,并保存在外部RAM 中。对于电流信号,先经过高变换器实现电流信号转化为电压信号,其采集通道分放大通道和不放大通道两种,这样是为了对于小电流信号采集也能同样达到计算准确度,其前端信号调理电路如图2 所示:
图2 电流模拟信号采集通道调理电路。
其中,IN4 为信号不放大通道,AD13 为放大10倍的通道。
2.1.2 开入开出模块
根据开发要求,装置设计了16 路开入量,12 路开出量。开入量用于电机启动、停机和报警状态反馈等信息量的采集。开入量经过限流、去抖等处理加到光电隔离元件TLP521-4 上,考虑到F2812 的I/0 口的资源有限,对16 路开入量用两片74HC153 芯片实现编码,这样便只占用了4 个I/0 口,达到合理有效的使用F2812 片上资源的目的。12 路开出量,主要用于各种故障的跳合闸和报警使用。本系统采用由12 个I/O 口发出开出量信号,为了防止干扰引起的误动,另外提供了1 个I/0 口实现对开出信号的开放与闭锁功能。只有当开出信号开放时,开出量再经过达林顿型(UN2003)光电隔离后输出,驱动外部继电器,实现保护出口动作。
2.1.3 外扩存储模块
为了满足系统运行、参数定值保存、故障录波和故障报警信息记录的要求。该装置外扩了一片64M 的闪存(K9K1208UOM) 和256K 的RAM(IS61LV25616L)。F2812 的外部存储器接口XINTF 是一种非多路选通的异步总线。它包括:19 位地址线,16 位数据线,3 个片选控制线及读写控制线。这3 个片选线映射到5 个存储区域,Zone0,Zone1,Zone2,Zone6和Zone7.其中Zone0,Zone1 共用一个片选线,Zone6 和Zone7 共用一个片选线。且每个区都有独立的等待状态、选通信号建立和保持时间,都能通过编程实现设置。这便可使F2812 与一些外部存储器之间实现无缝连接。K9K1208UOM 存储器的地址、命令和数据信息均通过闪存的I/O 口传输,不需要通过地址线寻址,因此无需考虑采用页面技术解决逻辑存储空间与物理空间的映射问题,大大简化了F2812 与flash 的硬件连接,结合接口XINTF 的时序和K9K1208UO6M 的时序的特点,其应用电路如图3 所示。
图3 TMS320F2812 与K9K1208U0M 接口图。
利用F2812 的Zone0 实现对K9K1208U0M 的读写操作。F2812 的低8 位数据线直接与闪存的I/O0-I/O7 相连; F2812 的通用I/O 口GPIOG4 接R/B,监测存储器的工作状态,当R/B 处于低电平时,表示有编程、擦除或随机读操作正在进行,操作完成后,R/B 会自动返回高电平。由于当R/B 为低时选线 必须为低,并要持续至少10us,而在此期间
,
都为高,因此就不能利用
脚。选GPIOE2 引脚接闪存的片选线
. F2812 的
、
分别接闪存的
,控制读、写操作,
接地禁止写保护。
2.2 监控模块
监控模块主要完成与上位机的通信,数据的显示和键盘操作等功能。
2.2.1 以太网电路
随着TCP/IP 技术的应用,以DSP 为的系统通过与以太网的连接,来实现与DSP 或PC 机之间的网络连接通信。本系统采用的是选用Realtek 公司的RTL8019AS 以太网接口芯片,该芯片与NE2000兼容,支持8 位和16 位数据总线方式,全双工,收发可同时达到100Mbps 的速率,适应于IEEE802.3、10Base5、10Base2 和10BaseT.其与F2812 接口电路如图4 所示。
图4 F2812 与RTL8019AS 接口图。
采用了一片74LVC245 双向数据缓冲器来完成电平转换和数据传输。该电路的突出之处在于根据F2812 的XINTF 口读写时序的特点,把74LVC245决定数据传输方向的T/R 和OE 脚分别接到和
两脚。实现了不要CPLD 来控制时序和不要占用F2812 的I/O 口。
2.2.2 其它模块
作为微机保护系统的显示模块,本系统采用的LCD 是YXD-12864TALCM,它已由制造商装配好了液晶显示驱动,并提供了驱动电路的接口,通过F2812 的I/O 口可以实现对LCD 的读写操作。
选用PCF8583T 实时时钟芯片,为系统每次开始运行提供准确的时间和软时钟的时间校准。它采用I2C 总线,是由电池单独供电。
键盘模块共4 个键,由F2812 的I/O 口,反向器74HC14,和一些上拉电阻组成。
3 软件设计
本系统软件设计采用的是模块化设计,由于微机保护系统是实时要求严格的系统,因而采用主程序模块和中断子程序模块相结合的方法。中断子程序主要由是保护模块和通信模块组成。对于算法通过汇编方式实现,通过混合编程的方式实现软件系统的实时可靠的运行。主程序流程图如图5 所示,保护模块的流程图如图6 所示。
图5 主程序流程图。
图6 保护模块的流程图。
3.1 算法及汇编实现。
在电机保护装置中,需对经过模数变换后的电流、电压、频率等量,进行幅值、相位、正负序等实时参数计算,将得到的实时值用作判断是否发生故障而进行微机保护。根据应用场合和产品不同,采用傅里叶算法及相关改进的傅里叶算法。本文介绍了在半周波傅里叶运算的混合编程中汇编实现过程。 由梯形法可得半周波傅里叶运算式(1)和(2)。
在实际应用中,为了提高计算,需把采样率的提高,但是对于(1)和(2)计算量也必然增加。随着计算通道的增加,通过C 语言编写的算法程序会影响系统的实时性。
其中X(n)为第n 次采样值。
而由TMS320F2812DSP 硬件特点可知,它提供了丰富的乘加指令(MAC、DMAC),这给通过汇编语言快速实现算法提供了可能。完成该功能的C 语言函数如下:
经编译运行,当通道达到14 时便不能实现实时运行。通过反汇编窗口发现该函数并没有用一条MAC指令实现乘加操作,而是通过多周期来完成乘加操作。鉴于此便通过创建C 能调用的汇编子程序实现。编这中汇编程序必须遵循文献[4]中有关混合汇编接口规约。
作为说明如何通过汇编程序优化算法的例子,这里只给出部分汇编程序:
.global _Dfly //函数名,用。def 或。global 定义,
使得C 语言可以调用。
.global _a,_b //在C 程序中定义的全局变量,可
以实现在汇编中直接调用
.global _ADtemp //通道存放数据的首地址
… //其它全局变量
_Dfly: //标号,是C 调用函数和汇编被调用函数
的接口
ADDB SP,#14 //为临时变量开辟堆栈区
SETC SXM
MOV *-SP[4],AL //保存k 值(起始通道)
MOV *-SP[2],AH //保存m 值(中止通道)
…
Loop2: SUBB XAR4,#24
MOVL *-SP[11],XAR4 //实现把数据的地址
传送进XAR4 寄存器
MOVL XAR7,#_a //把余弦表的地址地址传
送进XAR7 寄存器
ZAPA
SPM 0
RPT #23
||MAC P,*XAR4++,*XAR7++//实现单周期
乘加运算。
ADDL ACC,P《PM
ABS ACC
SFR ACC,14
MOVL *-SP[7],ACC
MOVL XT,*-SP[7]
IMPYL ACC,XT,*-SP[7]
MOVL *-SP[7],ACC //实现平方运算
…
LOOPEND: SUBB SP,#14 //释放堆栈
LRETR // 返回函数凋用处
该汇编函数经CCS3.3软件的profile功能得到平均每个通道运行时间约为55 个周期,且在硬件上运算结果准确。而C 语言实现则要140 个周期左右,可见用汇编实现可以成倍提高运算速度,这对计算数据通道较多的系统是非常有效的方法。
4 测试结果分析
为了对系统电气参量的度和保护动作的正确性能进行检测,采用了HM707 微机继电保护测试仪的测试。表1 为速断保护测试的部分数据,其它保护类似测试处理。先对系统通道的校正,以100V,5A校正。
表1 速断测试数据
速度保护测试结果表明,改装置满足为3%的要求,且保护动作正常。其它相关保护测试都满足系统开发要求。
5 结语
设计的系统充分考虑和合理使用F2812 的资源,实现了无CPLD 控制时序的中低压电机保护系统;且通过对算法通过汇编实现,软件系统是通过混合汇编实现对中电压电机保护功能。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。