可编程逻辑
1 概 述
转速数据是水轮发电机组运行状况的重要标志之一。准确地测量机组的转速并根据转速的变化及时地进行各种必要的控制操作,以保证水轮发电机组正常、安全运行,是该监控装置应完成的功能。
目前,国内水电站使用的大多是永磁发电机加电压继电器式、机械式等旧式转速信号器,存在结构复杂、测量精度低、工作可靠性差等缺点。本文所述的水轮发电机组转速监控系统是采用CPLD(ComplexProgrammable Logic Device)及少量的接口器件构成的,系统的功能结构描述采用VHDL(Very HighSpeed Integrated Circuit Hardware DescriptionLanguage)。由于采用的CPLD芯片能够高密度、高速度、高性能地实现复杂数字系统的设计,使硬件设计大大简化。具有设计硬件结构简单、测量精度高、抗干扰能力强等特点。
2 设计原理
硬件结构如图1所示。CPLD芯片是整个系统设计的核心器件。
2.1 转速传感器
本设计中的转速传感器采用光电式脉冲编码器,与待测发电机主轴同轴相连。传感器上均匀分布有60个感光孔,使转速为n的水轮发电机,每分钟有60n个脉冲输出,即每秒有n个脉冲,故可以通过对传感器的输出脉冲频率fp的测量得到水轮发电机的转速值n(脉冲频率fp与转速n在数值上相等)。
2.2 输入电路
输入电路由施密特触发器和光电耦合器件构成,对光电传感器的输出脉冲信号进行整形放大,并实现光电传感器与CPLD的输入隔离,提高系统的工作可靠性。
2.3 CPLD芯片
由于所有的Altera系列器件都使用CMOS处理工艺,与双极型工艺相比,具有功耗更低、可靠性更FLEX10K系列CPLD芯片。
FLEX(Flexible Logic ElementMatrix,可更改逻辑单元阵列)10K系列器件是嵌入式PLD产品,每个FLEX10K器件包含一个嵌入式阵列和一个逻辑阵列。嵌入式阵列由一些嵌入式阵列块(EAB)组成,用于实现各种复杂的逻辑功能。逻辑阵列由逻辑阵列块组成,用于实现通用逻辑。FLEX10K器件采用可重构的CNOSSRAM单元,其结构集成了实现通用多功能门阵列所需的全部特征,器件容量可达1万~25万门。具有功耗低(多数器件在静态模式下电流小于0.5 mA)、互连方式灵活、支持多电压I/O接口等特点,能够高密度、高速度、高性能地将整个系统集成于单个器件中。表1提供了FLEX10K系列典型器件的特性。
考虑本系统的性能、经济性等因素,选用EPF10K10器件完全能满足设计要求。
2.4 转速显示部分
由于水轮发电机组的转速一般在3 000 rpm左右,所以用4个共阴极七段LED数码管构成水轮发电机组的4 b转速数字显示电路。
2.5 控制继电器组
由于水轮发电机组的转速过低或过高都会影响发电系统正常、安全地工作,因此需相应的驱动报警电路和控制电路来保障其工作速度在允许的范围内。
转速的上、下限值设定可根据实际机组的需要从CPLD的I/O功能引脚预置输入,应用VHDL语言描述,将CPLD测得的转速值与预置值比较,超限即送出信号到控制继电器组,使相应的继电器动作,驱动相应的报警电路和控制电路工作。
3 CPLD的配置
本设计中选用的CPLD芯片内部采用SRAM存储配置数据。由于SRAM的数据是易失的,每次系统上电时,必须用配置芯片对其进行配置,只有在配置正确的情况下,系统才能正常工作。因此常采用CPLD器件以外的EPROM,E2PROM或FLASHROM等非易失存储器作为配置芯片,保存配置数据。常用的配置芯片分为一次编程型和可擦除型2种。目前,在可编程逻辑器件的开发阶段多采用可擦写的配置芯片,例如EPC2LC20,最终产品采用不可擦写的配置芯片,例如EPC1441PC8。但可擦除型芯片价格昂贵且擦写次数有限(100次左右),因此势必增加产品的开发成本。
本次设计中采用单片机与外部串行E2PROM进行被动串行(PS)方式配置,组成配置板来替代一次编程型和可擦除型配置芯片。把配置板插在PS方式下载线的10针插头上,将把配置管脚与单片机的I/O端口相连,对单片机编程仿真PS方式配置时序,将配置数据存入外部E2PROM。由于不同的系统采用的电压不同,所以要求所选取的单片机和串行E2PROM必须支持多电压工作。本设计选用MSP430系列的F1121型单片机,他是一种FLASH型超低功耗16 b单片机,20个管脚,表贴封装(SMT),体积非常小,内部资源丰富,具有数控晶振,看门狗定时器,3个捕捉/比较寄存器的16 b定时器,2个具有中断功能的8 b并行端口,4 kBROM,256 BRAM。不用附加任何外围电路即可工作,有效地节省了配置电路板的面积。F1121单片机支持多电压工作,可以使配置板适应不同的工作电压。F1121的FLASH型主存储器,通过JTAG控制器可以实现程序代码的下载,实现运行控制和在系统编程。
4 系统功能的VHDL描述
本系统的顶层设计由3个子模块组成,顶层设计图如图2所示。
下面给出测速模块和7段译码模块的VHDL描述,至于上下限比较模块,可根据预置值及具体的控制需要,编制相应的VHDL程序,使模块输出要求的控制信号。[page]
4.1 测速模块
模块说明:fp为光电传感器的输出脉冲,reset是8复位端子,speed0,speed1,speed2,speed3分别为脉冲计数的个位、十位、百位、千位的BCD码输出,c1,c2,c3分别为个位向十位、十位向百位、百位向千位的进位。
4.2 7段译码模块
模块说明:speed0,speed1,speed2,speed3分别为脉冲计数的个位、十位、百位、千位的BCD码输出,作为7段译码模块的输入,segcode0,segcode1,segcode2,segcode3分别为个位、十位、百位、千位的7段字段码输出。
7段译码模块的VHDL语言描述如下:
5 结 语
本设计的VHDL程序在Altera公司的MAX+PLUSⅡ(Multiple Array Matrix and ProgrammableLogic User System)CPLD设计开发工具上进行编译仿真,较好地完成了设计要求的功能。
在本系统的设计中,由于CPLD及EDA开发工具的使用,大大简化了硬件电路,降低了产品成本,缩短了设计周期,提高了系统的可靠性和灵活性。
责任编辑:gt
全部0条评论
快来发表一下你的评论吧 !