摘 要:研究在发电机励磁系统中设计实时数据记录及参数显示模块,将总线传递的数据进行处理,并实时存储的一种设计方案。系统采用铁电存储器、磁电阻随机存储器扩展了存储容量,使故障录波得以实现;应用RTC和PIT,完成了毫秒级的计时,完善了录波功能。
关键词:FRAM;MRAM;故障录波;SPI模块;励磁系统
随着计算机技术、自动化技术不断发展和CAN总线等现场总线技术的日益完善,励磁控制系统逐步向分布式现场总线方向发展。本设计所研究的励磁系统实时数据记录及参数显示模块,既是发电机励磁控制部分的重要部分,也是励磁控制系统体现控制分散、信息集中的关键环节,用以实现完成现场数据显示、便捷的参数修改及故障录波。本系统采用铁电存储器和磁电阻随机存储器[1],可大容量支持掉电保存的存储器,存储故障时的开关量和模拟量,用于故障显示和分析。
1 铁电存储器
1.1 存储器基本工作原理
当一个电场被加到铁电晶体时,中心原子顺着电场方向在晶体里移动。并通过能量壁垒,引起电荷击穿。内部电路感应到电荷击穿并设置存储器。移去电场后,中心原子保持不动,存储器的状态也得以保存。铁电存储器不需要定时更新,掉电后数据能够继续保存,速度快而且不容易写坏。
1.2 铁电存储器的应用
本系统采用的是Ramtron公司的FM25L256,用来存储时间标签和对应的开关量。
FRAM可以像RAM一样以总线速度完成读写操作,由于不是用电荷来存储数据而是工作在极化状态,所以在写入数据后无需等待,没有写操作延时,同时还可以像传统非易失性存储器一样提供非易失性的存储功能。可以保存数据达10年以上,使用起来更加简捷,提高了系统的可靠性。与高速RAM相同,支持几乎无限次的读写循环操作。这些优点使得将RAM的功能和ROM的技术结合在一个芯片中[2]。FM25L256的功能框图如图1所示,引脚功能表如表1所示。
1.3 SPI模块的工作原理
FM25L256通过SPI总线与单片机相连。图2给出了SPI总线接线图。主机(单片机)中的8位数据寄存器和从机(FM25L256)中的8位数据寄存器通过MOSI和MISO组成了一个16位分散式移位寄存器。在数据传输
1.4 SPI软件程序设计
在本系统中,SPI工作在主机、模式3下。以下程序完成的内容主要包括SPI初始化。
void initial_SPI1(void)
{
SPI1CR1 =0x5E;
SPI1CR2 =0x10;
SPI1BR =0x22;
}
读操作主要是访问存储在FM25L256中的数据,写操作是把采集到的数据存储到FM25L256中的指定位置。SPI的读写操作具体过程如下所述:
(1)读操作
首先判断是否进入读操作函数。进入后,读状态寄存器SPI0SR,判断数据寄存器是否为空,空时发送读数据命令。发送完毕后读状态寄存器SPI0SR,判断数据寄存器是否为空,空时发送高位地址,直到发送完毕再读状态寄存器SPI0SR。判断数据寄存器是否为空,空时发送低位地址,直到发送完毕再读状态寄存器SPI0SR。判断数据寄存器是否为空,此时若为空,读数据寄存器,此次读操作完成。
(2)写操作
首先判断是否进入写操作函数。进入后,读状态寄存器SPI0SR,判断数据寄存器是否为空,空时发送写使能命令。经过延迟后读状态寄存器SPI0SR,判断数据寄存器是否为空,空时发送高位地址,直到发送完毕再读状态寄存器SPI0SR。判断数据寄存器是否为空,空时发送低位地址,直到发送完毕再读状态寄存器SPI0SR。判断数据寄存器是否为空,此时若为空,发送数据,此次写操作完成。
2 磁电阻随机存储器
2.1 磁电阻随机存储器原理介绍
MRAM是一种非易失性的磁性随机存储器。MRAM中每个存储元件采用磁隧道结(MTJ)器件来进行数据存储。当向MTJ施加偏压时,被磁层极化的电子会通过一个称为遂穿(Tunneling)的过程,穿透绝缘隔离层。当自由层的磁矩与固定层平行时,MTJ器件具有低电阻;而当自由层的磁矩方向与固定层反向平行(Anti-Parallel)时,则具有高电阻。随着器件磁性状态的改变,电阻也会变化,其数据作为一种磁性状态(而不是电荷)存储,并且通过测量电阻来感应,不会干扰磁性状态[3]。
2.2 磁电阻随机存储器的应用
设计采用Freescale Semiconductor提供的磁电阻随机存储器MR2A16A,以存储励磁系统的各种电参量。引脚功能如表2所示。
2.3 外部扩展总线
MCU与外部扩展总线有关的引脚如表3所示。本设计采用独立的16位数据总线DATA[15,0]和18位地址总线ADDR[18,1],外部扩展的内存映射地址为0x20_0000到0x27CFFF,共512 KB。MCU与MR2A16A的连接方式如图4所示。
MCU通过以下步骤完成一次读的操作:驱动/CS1 、驱动ADDR、/UDS&/LDS、驱动/RE、等待、从DATA线上读取数据、恢复/RE、恢复/CS1及/UDS&/LDS。
编写程序时只需将变量定义到外部地址,然后像对待普通变量一样对外部变量进行操作就可以完成在外部存储器上的读写。
3 时间标签
没有时间记录的数据是不完整的。对于本系统来说,准确、快速地存储CAN总线上传输来的数据非常重要。本系统采用DS3234和MCU内部的PIT一起记录时间,同时可记录数据传输来的时间,并精确到毫秒级[4]。
本模块体现了励磁控制系统向控制分散、信息集中发展的趋势,实现了系统所需的功能,即MCU分析所接收的现场数据,判断故障。当故障发生时将数据存储于铁电存储器或磁电阻随机存储器中,并加入毫秒级的时间标签。用户可以随时查看任意次故障的电压等电参量的波形。
本文所讨论的设计方案已经通过了实验室验证,方案真实可行。所研究的对象不但适用于励磁系统,而且可以应用在其他工业控制领域,如各种仪器仪表、各种监控系统等。只要对设计内容稍加修改,或者通过对各个模块简单的组合就可以适用于多种系统中,令系统具有很强的实用性和多用性。
参考文献
[1] 周志刚,王耘波,王华.铁电存储器研究进展[J].信息记录材料,2002,3(1).
[2] 孙树印.铁电存储器原理及应用比较[J].单片机与嵌入式系统应用,2004(9):15-18.
[3] 孟臣,李敏.高性能铁电存储器FM24C256及其在单片机中的应用[J].电子技术,2003(1).
[4] 贾文峰.人机界面设计研究[J].洛阳大学学报,1999,14(4):55-56.