在线工博会

一种基于FPGA技术的高频疲劳试验机控制器的研制
浙江工业大学 罗剑波 姜伟
为节省流量,手机版未显示文章中的图片,请点击此处浏览网页版
摘要:将现场可编程门阵列(FPGA)应用在高频疲劳试验机控制器中,以此来满足高频疲劳试验机对于波形频率等方面的特殊要求,使系统整体性能得到提高。
关键词:FPGA,高频疲劳试验机,波形发生器
1 引言
1.1 高频疲劳试验机控制器简介
高频疲劳试验机是一种主要用于测定金属及其合金材料在室温状态下的拉伸、压缩或拉、压交变负荷的疲劳性能试验的机器。其特点是可以实现高负荷、高频率、低消耗,从而缩短试验时间,降低试验费用,是我国工业发展的主要测试设备之一。传统的高频疲劳试验机控制器主要通过光学放大机构来直接测力或振幅,内部采用大量分立元件,所带来的问题有:读数不方便;结构比较复杂,控制精度不高;由于采用大量分立元件,系统稳定性差,易受外界干扰;操作比较繁琐。
1.2 FPGA简介
现场可编程门阵列FPGA(FieldProgrammable Gate Array)是美国Xilinx公司于1984年首先开发的一种通用型用户可编程器件。FPGA既具有门阵列器件的高集成度和通用性,又有可编程逻辑器件用户可编程的灵活性。
FPGA由可编程逻辑单元阵列、布线资源和可编程的I/O单元阵列构成,一个FPGA包含丰富的逻辑门、寄存器和I/O资源。一片FPGA芯片就可以实现数百片甚至更多个标准数字集成电路所实现的系统。
FPGA的结构灵活,其逻辑单元、可编程内部连线和I/O单元都可以由用户编程,可以实现任何逻辑功能,满足各种设计需求。其速度快,功耗低,通用性强,特别适用于复杂系统的设计。使用FPGA还可以实现动态配置、在线系统重构(可以在系统运行的不同时刻,按需要改变电路的功能,使系统具备多种空间相关或时间相关的任务)及硬件软化、软件硬化等功能。
鉴于高频疲劳试验机控制器控制规模比较大,功能复杂,故我们在研制过程中,在传统试验机控制器的基础上,通过FPGA技术及微机技术两者的结合,来全面提升控制器系统的性能,使整机的工作效率、控制精度和电气系统可靠性得到了提高,且操作方便而又不乏技术的先进性。
2 控制器结构及内容
本控制系统的总体结构如图1所示。图1中,下位机是整个高频疲劳试验机控制器的核心。用于实现产生控制试验机的控制信号和数据,反馈信号的处理,以及和上位机进行数据通信。其控制功能强弱也直接影响着整个控制器性能的好坏。图中波形发生器是用于激励和保持电磁激振器的振动。在此,波形发生器应输出正弦波。

(图片)

3 系统采取的技术路线
系统在实现技术参数、功能要求的基础上,结合目前微机及FPGA等微电子技术,采取了以下主要技术路线:
(1)下位机是系统控制的核心。由于本系统控制规模相对比较复杂,控制对象具一定特殊性(如高频率,高负荷等),且牵涉到控制电机,故不采用传统的8位机,而是考虑采用功能相对更强大,速度更快的16位机—87C196系列。
(2)激振器要求输入波形为正弦波,试验的频率范围为80~250Hz。另外,系统还应该能够进行扫频试验。在扫频试验中,系统以1Hz为步长进行扫频(粗调),再在粗调的基础上进行微调(以0.1Hz为步长),以确定系统的共振点。可以看出,能产生精度为0.1Hz波形的电路模块是整个系统设计中很关键的一部分,也是设计难点之一。这部分如通过单片机或其它专用芯片则不能或很难实现。系统采用FPGA作波形发生器,见图1中虚线框所示部分。这样做的优点是:高速(一般芯片频率至少几十兆,甚至上百兆)且能满足上述精度要求;采用数字电路实现,抗干扰性好;能把其它逻辑电路也集成至该芯片中,省掉了许多分立元件,同时也减少了体积;能够按需改变波形。
(3)直流调速通过变压实现,而变压则通过采用晶闸管的可控整流器来完成。通过单片机输出可变电压给移相触发器,触发器输出可控导通角给可控整流器,实现电机速度的调整。有利于提高系统的可靠性。
(4)系统部分重要信号用数字滤波器滤波,该数字滤波器用FPGA实现。与软件滤波相比,此方法有利于改善信号的滤波效果,且滤波速度得到很大提高。
4 部分模块设计
FPGA部分可划分成两个模块,其中正弦波发生器模块又可细分成几个小模块,如图2所示。

(图片)

4.1 锁存器设计
锁存器用来将单片机送来的频率数据锁存稳定在FPGA中,可以用片内的锁存器资源(或用触发器)来构成。
4.2 运算器设计
运算器是用来将频率数据转换成正弦波点与点之间的定时数据。该运算器实际上最终可转换成一除法器。该除法器描述如下:

(图片)

—VECTOR(WIDTH— R-1 DOWNTO 0));
END COMPONENT;
上述描述实际上是调用了Altera公司的参数化模块库(LPM)中的一个元件。元件描述后,只要在程序中用Generic map和port map语句映射该元件即可。所要注意的是,上述口信号remainder是numerator和denominator模运算的结果,所以应将remainder与denominator/2相比较,实际结果应在比较的基础上决定加1还是不加1。
4.3 定时器设计
定时器根据运算器传来的定时数据定时。它可以通过对基准时钟计数来实现,当定时时间一到,就触发波形的输出。
设计中采用了两个计数模块来同时计数,一个模块计数时钟的上边沿,而另一模块则计数时钟的下边沿。这样相当于使系统时钟频率提高了一倍,充分利用了系统资源。
4.4 波形输出
波形输出是当定时器满足定时要求触发后就输出此时的正弦值,多个点的触发输出就形成了一个正弦波。
为节省芯片资源,这部分求某时正弦值的功能不采用构造运算器来算出正弦值,而是利用查表结构。象Xilinx公司FPGA芯片则可以利用CLB块来配置RAM或直接利用Logiblox来生成。还有象Altera公司的Flex10k系列就用查找表结构(LUT)来构建片内ROM或RAM。在工程文件中创建RAM或ROM块以后,可以通过将各时刻的正弦值(以ASCII字符表示)写进MIF文件(初始化文件)中,从而存储在RAM或ROM块中。在定时器触发后生成该时的地址,通过查询该RAM或ROM块就可输出该时得正弦值。
5 芯片的具体实现
本系统的FPGA采用Altera公司的Flex10k系列芯片。芯片利用开发软件Max+plusII将各个模块(图1虚线框部分)用VHDL语言描述并输入,由软件自动编译、综合、布局和布线,生成编程用的数据文件,加载到FPGA的配置存储单元。对FPGA芯片进行配置可有多种模式,由于本系统中有单片机,所以采用串行从模式,省掉了用一片EPROM来存储编程数据。当系统上电时,单片机自动将存在其内部的配置数据送到FPGA内部存储单元中。
6 结束语
系统通过引进现场可编程门阵列芯片FPGA,来实现波形发生器这一模块,且将周围其他数字逻辑电路也集成至该芯片中。这样既可以解决了系统的特殊性,又增强系统抗干扰性,提高控制精度,也简化了调试。此外,本系统还将波形发生器、滤波器等硬件通过VHDL语言在FPGA芯片中实现,而将控制算法等软件用FPGA这一硬件来实现,使系统体现出“硬件软化,软件硬化”这一重要特点。
参考文献
1 Altera公司.The Programmable Logic Data Book.2000
2 Jesse H.Jenkins.Designing with FPGA and CPLD.1995
3 张明勋.电力电子设备设计和应用手册.北京:机械工业出版社,1990.6
4 天水红山试验机厂.PLG-10型高频疲劳试验机技术讲座.1980.1 1/5/2006


电脑版 客户端 关于我们
佳工机电网 - 机电行业首选网站