采用Cyclone系列EP1C6Q240C8 FPGA芯片实现振动模拟器的设计

时间:2025-07-26  作者:Diven  阅读:0

1 引言

采用Cyclone系列EP1C6Q240C8 FPGA芯片实现振动模拟器的设计

振动台的作用是将被测物件置于振动台上测量其受迫振动时的表现,一般振动台的振动是由振动分析仪控制的,但是由于振动台体积形状和考虑到成本等原因,不利于振动分析仪的研发,所以设计振动模拟器对振动分析仪的研发有重要的现实意义。

振动模拟器应尽量对振动台的实际振动情况进行模拟。振动台本身的振动将不可避免地受到噪声的影响,导致振动不一定是符合需求的振动。所以要使振动模拟器对振动台的实际振动情况进行模拟,就必需人为地在采样信号中加入噪声。而出于对振动分析仪研发调试的需要,尽量将噪声范围处理成可控的,这样便于调试振动分析仪。

利用FPGA开发振动模拟器研制开发费用低,不承担投片风险,通过开发工具在计算机上完成设计,电路设计周期短。所以本文采用FPGA实现振动模拟器设计,由ADC模块接收调频和调幅信号,传给FPGA模块,FPGA由调频信号计算出对应的时钟,且按此时钟输出经调幅的数字正弦波,驱动DAC输出模拟的正弦波,最终和模拟的噪声相叠加,实现对实际振动台的模拟。

2 原理框图和基本设计思想

振动模拟器的原理框图如图1所示,图中由ADC模块分别接收调频和调幅信号给FPGA模块,FPGA模块将串行的调频和调幅信号,经串并转换,分别变成一个16位的并行调频信号和一个16位的并行调幅信号。FPGA输出经调频调幅的数字的正弦波,并驱动串行DAC(输出理想信号)输出模拟的正弦波;用户通过按键确定想要产生的噪声的频率范围,FPGA经计算得到满足用户要求的频率,驱动并行DAC(输出噪声),产生模拟 •的噪声,经电流电压转换后由同相求和电路将信号与噪声相叠。

整个系统最终输出0.1~5KHz的振动信号和200KHz以下的振动噪声相叠的模拟量。

3 FPGA功能模块介绍

3.1 芯片选择

在本设计中,选用Altera 公司的Cyclone系列,型号是EP1C6Q240C8的芯片,PQFP封装。这款芯片有240个引脚,其中用户可用185个引脚。有5980个逻辑单元,32列20行逻辑阵列块。有2个PLL锁相环,20个M4K的ROM,每块ROM为4Kbit,可以另加1位奇偶校验位。

3.2 原理说明

FPGA模块接收2个ADS1100的芯片,经串并转换,得到调频和调幅信号。

波形发生的基本原理是:对幅值是1的正弦波在一个周期内的波形按1/200倍周期的时间间隔取200个点,存储这200个时间点所对应的波形的幅度,存储到FPGA的片内ROM中。正弦波幅度表仅需200×16bit=3.2kbit的存储空间,可用FPGA的一块片内ROM实现。通过查表法产生一系列的值,将这些值和调幅信号相乘就得到一系列的幅度值,即串行DAC的数字输入,而这些幅度的输出频率是调频信号值的200倍。类似的,利用FPGA一块片内ROM以存储200KHz以下噪声的正弦波幅度表(一个周期内的波形按1/20倍周期的时间间隔取20个点)。

调频信号和调幅信号的分辨率16比特,输出的正弦信号的分辨率是16比特。

4 AD、DA芯片与FPGA的接口

考虑到本系统需要较多的高频时钟,而若时钟管理不当,则因DAC工作不稳定会导致系统工作出错;由于连线和逻辑单元的延迟作用,使输出信号出现毛刺,产生冒险现象。因此纯粹依靠传统的逻辑电路难以达到理想的性能要求,这时就必须依赖FPGA内部的专用硬件电路PLL和引入高频时钟的方法产生无有害毛刺的同步时钟辅助实现高性能的设计。

FPGA芯片和ADC、DAC芯片的接口电路原理图如图2所示。

4.1 FPGA对ADS1100芯片的控制

调频和调幅信号使用同一款芯片:ADS1100,16位串行,I2C接口,在本设计中数据更新率是8SPS,电压型输出。此芯片仅可在从件模式下工作。ADS1100将模数转换结果传给FPGA模块,由FPGA进行串并转换。

FPGA对ADS1100提供SCLK和SDA引脚,符合I2C协议。FPGA是主器件,在开始与ADS1100通信前先对SDA写2个字节,分别确定和哪个ADS1100进行通信和对ADS1100的配置寄存器(configuration register)进行写以确定对其的操作模式。FPGA外接24MHz的晶振,经分频得到4MHz的时钟,ADS1100按8SPS的数据更新率工作,FPGA探测数据线变化以产生SCLK时钟信号赋给SCLK引脚。篇幅受限,I2C的FPGA实现不一一赘述。

4.2 FPGA对DAC8581芯片的控制

信号输出使用芯片DAC8581,16位串行,SPI接口,在本设计中最高数据更新率是1.8MHz,电压输出。DAC8581接收从FPGA传送过来的串行数据,将其进行数模转换,产生振动信号,模拟实际振动台的理想振动情况。

FPGA中,由PLL倍频得到36MHz的时钟提供给DAC8581的SCLK引脚。由调频信号计算得到串行DAC的数据更新率,按此频率更新串行DAC的数字输入。由同一个PLL倍频得到240MHz的时钟捕捉将由DAC处理的数字输入信号和SCLK引脚信号的跳变沿,从而产生DAC8581的CS片选信号。

数据data一旦准备好,赋给register,240MHz时钟探测到第一次SCLK上升沿,就拉低CS片选,第二次探测到SCLK上升沿时已经至少是下一个240MHz的上升沿了,从而满足Tlead(见图3、图4)参数的要求。CS低时,一旦240MHz时钟探测到SCLK下降沿,将register的最高位数据赋给SDA,将register左移一位,SDA保持不变,直到下一个SCLK下降沿。当捕捉到SCLK的第17个下降沿时,将CS拉高。由此即可满足以上的图3、图4对时序的要求。

4.3 FPGA对DAC8820芯片的控制

DAC8820产生振动噪声。16位并行,最高数据更新率4MHz,是电流输出型。本系统设有2个用户按键,分别表示产生40KHz~100KHz,100KHz~200KHz的噪声频率范围,FPGA接收按键信号确定噪声的频率范围,在此频率范围内产生一个随机频率,由此计算得到DAC8820的数据更新率,FPGA按此频率准备数据以更新并行DAC的数字输入。由DAC8820将其进行数模转换,模拟实际振动台在可能受到外界各种干扰信号后产生的噪声情况。

DAC8820的引脚WR(低有效)是将16位数据加载到输入寄存器;LDAC(高有效)是将数据从输入寄存器加载到DAC寄存器;但是若将同一信号同时赋给WR和LDAC,则可在下降沿将16位数据加载到输入寄存器,在上升沿将数据从输入寄存器加载到DAC输出。

由FPGA将24MHz的晶振时钟分频得到数据更新率,由此得到的时钟信号经高频时钟同步赋给DAC8820的WR和LDAC。由于DAC8820是电流输出的,所以将电流输出经过OPA277电流电压转换输出,见图5。图中的C1是补偿电容,其作用是防止增益峰值的出现。

5

综上,此振动模拟器的调频信号的分辨率是16比特,可产生0 ~5kHz的清晰信号,所以频率精度可达到0.076Hz,并可与200KHz以下的确定频率范围的随机噪声进行合成,输出信号幅度分辨率可达16比特,而且噪声的频率范围是可控的。

本文作者创新点:充分利用了FPGA可现场编程的特点,给读者提供了一个实施简单,成本低,可按用户需求灵活改变,且易升级的振动模拟器的设计方案;且对有特殊要求的信号发生器的设计有一定借鉴意义。

猜您喜欢

2012-07-23 00:00:00

在日常生活和工作中,接头的种类多种多样,在功能、结构和应用上各有不同。按材质分类,接头可以分为金属接头和非金属接头。金属接头通常用于高温高压环境,具有较强的耐腐...
2022-12-02 00:00:00


明确指出具体的国产贴片电阻生产厂家排名比较困难,因为市场份额和排名会随着时间和市场情况而波动。但是,我们可以介绍一些在国内贴片电阻领域较为知名的生产厂家,通常在...
2024-11-29 10:25:58

理想二极管/ORing控制器是高效的电源管理解决方案,专为提高电源系统的可靠性和效率而设计。传统的二极管在电源转换中存在较大的压降,导致能量损耗和发热,而理想二...
2008-09-05 00:00:00

QFN(QuadFlatNo-lead)封装是一种广泛应用于现代电子设备中的封装技术。QFN-16_4X4MM-EP是一种特定规格的QFN封装,具有16个引脚,...
2025-02-24 16:08:40

识别贴片电阻好坏的方法有很多,这里介绍几种常用的简易方法:外观检查: 观察电阻表面是否有裂纹、烧焦、变形等明显缺陷。电阻上的标识应该清晰完整,没有模糊或脱落。引...
2024-11-26 11:29:44

电导仪是用于测量液体电导率的重要仪器,其性能参数直接影响测量的准确性和可靠性。电导仪的测量范围是一个关键参数,通常以微西门子每厘米(μS/cm)表示,范围越广,...
2015-04-13 00:00:00

壁纸不仅仅是装饰墙面的材料,更是体现家庭品味和生活质量的重要元素。YOUR HOME 靓雅壁纸丰富的款式和高品质的材质,深受消费者喜爱。而在壁纸的生产和安装过程...
2020-09-16 05:00:30

电池管理系统(BMS)软件,就像电动车的大脑,默默守护着电池安全,延长电池寿命,并为电动车提供强劲动力。你或许好奇,这个幕后英雄究竟是如何工作的?让我们一起揭开...
2024-09-29 00:00:00