一种低成本复杂信号的设计方法

2022-11-11 04:34黄明俊秦硕王纬国
电子测试 2022年20期
关键词:正弦波寄存器幅值

黄明俊,秦硕,王纬国

(1.国营芜湖机械厂,安徽芜湖,241007;2.空军航空维修技术学院,湖南长沙,410200)

1 设计原理

1.1 设计思路

为降低成本和提高信号发生器的通用性,通过采用频率合成技术,生成基本的正弦波、方波和三角波,再通过乘法器对各种波形进行相乘运算,实现将需要传递的信息调制到正弦波上进行传递,既降低了程序设计的难度,又提高了可靠性。

图1 信号生成框图

本文利用STM32芯片和自带的模拟输出,通过编程直接进行频率合成生成标准的正弦波和三角波直接输出至信号输出端口,正弦波和三角的参数可根据测试需求进行设定。

1.2 DDS技术

频率合成技术的理论起源于二十世纪30年代左右,早期的频综是由一组晶振组成,能输出多少个输出频点,由晶体的数目所决定。需要由人工来实现频率切换,主要由晶体来决定频率的准确度和稳定度,很少与电路有关。

随着数字技术的飞速发展,特别是集成电路集成度的快速上升,使得直接数字频率合成(Direct Digital Frequency Synthesize)技术的实现成为可能。直接数字频率合成技术是一种基于全数字技术,从相位概念出发直接合成所需波形的一种频率合成技术。通过采用非常高速的D/A转换和数字电路,在带宽、分辨率、连续性和转换时间等指标方面极大的超过了一般的数字合成技术。

直接数字频率合成器中除了数模转换器和滤波器之外,几乎所有的部件都属于数字器件,因此便于集成,且调整方便灵活,电路功耗低、体积小和可靠性高。

2 电路设计

对于较为复杂的波形通过乘法器进行处理,接下来重点阐述将正弦波与三角波相乘,得到航空测试用周期性幅值变化中频信号的设计过程。为了将传输信息通过正弦波进行传递,设计一个中频(400Hz)正弦波与一个低频(0.5Hz)的三角波相乘获得一个幅值可变的正弦波信号,也就是将三角波表示的信息调制到正弦波上进行传递。正弦波和三角波采用STM32单片机通过DDS频率合成技术实现,乘法运算采用AD633芯片实现,并进行功率输出。

2.1 STM32单片机

STM32系列单片机是由意法半导体公司设计的32位微控制器,采用了ARM公司的Cortex-M3核心架构,适用于高性能、低成本、低功耗的嵌入式应用场合,具有以下特点:(1)基本型时钟频率为36MHz;互联型、增强型系列时钟频率为72MHz。(2)32k 到 128k 的闪存。(3)功耗低。(4)丰富的内置资源(寄存器和外设功能)。(5)GPIO输入模式包括浮空输入、下拉输入、上拉输入、模拟输入等;输出模式包括开漏复用输出、推挽输出、推挽复用输出、开漏输出等。(6)外围接口丰富。(7)输出功率可以通过软件编程来进行控制。(8)数据处理快,效率高:中央处理单元采用了零等待处理器,在运行过程中能实现无响应时间的数据处理。(9)实用价值高:在数据接口的设计方面,采用了引脚和接口等设计,通过这样的设计使其可以完全满足单片机实际应用的需求。(10)数据采集功能强:在内部接口方面,其实现了温度传感器的集成,并设置了模数转换器。(11)用高级定时器代替了现有的传统通用性定时器。(12)数据传输效率高,内部结构设置了存取寄存器,能够在不影响中央处理单元的运行效率的情况下实现数据的双向传输。

图2 选型说明

根据本文的实际需求,具体型号上选用了STM32F103 RCT6,即基础型、64&66引脚、256Kb闪存容量、QFP(方型扁平式)封装、-40℃~+85℃温度范围。

2.2 AD633乘法器

AD633乘法器是由亚德诺半导体公司(ADI)设计的一款功能完整的四象限模拟乘法器,包括高阻抗差分X和Y输入以及高阻抗求和输入(Z)。低阻抗输出电压为10V标称满量程,由一个嵌入式齐纳二极管提供。AD633经过激光校准,保证总精度为满量程的2%。在10Hz至10kHz带宽内,Y输入的非线性典型值小于0.1%,折合到输出端的噪声典型值低于100μV均方根。AD633具有1MHz带宽和20V/μs压摆率,并且能驱动容性负载,使用方便灵活,成本较低。另外,AD633的简单易用并不影响其多功能性。可以通过Z输入访问输出缓冲放大器,从而可以将两个或更多乘法器的输出相加,提高乘法器增益,将输出电压转换为电流,以适合各种配置应用。

AD633的应用场合包括乘法、除法、平方运算,调制/解调、相位检测,电压控制放大/衰减/滤波等。

图3 AD633乘法器的原理框图与引脚定义

2.3 电路实现

本文首先利用STM32自带的DAC转器模块实现正弦波形和三角波形输出。该DAC模块12位电压输出数模转换器。DAC可以按8位或12位模式进行配置,本方法按12位配置,并且与DMA控制器配合使用。在12位模式下,数据可以采用左对齐或右对齐。DAC有两个输出通道,每个通道各有一个转换器。在DAC双通道模式下,每个通道可以单独进行转换;当两个通道组合在一起同步执行更新操作时,也可以同时进行转换。可通过一个输入参考电压引脚VREF+来提高分辨率。

以三角波为例阐述波形生成方法。进行DAC输出编程时,首先需要将GPIO时钟、DAC时钟使能,配置GPIO引脚功能,初始化DAC配置。将DAC_CR寄存器中的相ENx位置1,即可接通对应DAC通道。采用12位左对齐的方式,利用软件将数据加载到DAC_DHR12Lx[15:4]位,存储到加载寄存器DHRx,通过该寄存器传输到DAC通道x。经过一个APB1时钟周期后,DAC_DHRx寄存器中存储的数据将自动转移到DAC_DORx寄存器,当DAC_DORx加载了DAC_DHRx内容时,模拟输出电压将在一段时间tSETTLING后产生,具体时间取决于电源电压和模拟输出负载。模拟输出电压的大小介于0和VREF之间,由DAC_DORx寄存器内的数字决定,计算公式如下。

式(1)中,VREF表示参考电压,DORX表示寄存器内的数值。V输出表示模拟输出电压。当根据定时器的要求,将三角波的波形建立一个数据库,每间隔一定的时间,就将数据库里的数值输入DORX,那么输出就会产生对应的输出电压,形成三角波输出。

当建立正弦波的参数表,或者根据正弦波的计算公式,在定时器的控制下,每间隔一定时间,就将正弦波的波形数据输入到DORX寄存器,那么波形输出端就会产生正弦波信号。

STM32输出的正弦波信号X接AD633的1号引脚,三角波信号Y接AD633的3号引脚,AD633的6号引脚接地,输出信号表示为:

AD633接线关系如下图4所示。

图4 AD633乘法应用电路

具体电路如下图5所示。

图5 信号生成电路原理图

3 仿真分析

3.1 仿真平台

为验证电路设计的正确性,本文使用Protues 8.0仿真器进行实验仿真。Proteus是英国Labcenter Electronics公司开发的一款电路仿真软件,包括电路仿真、PCB设计和虚拟模型仿真,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086、MSP430、Cortex和DSP等系列处理器。

Proteus可提供30多种元件库,超过8000种模拟、数字元器件。可按照设计的要求选择不同生产厂家的元器件。此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。

Proteus还提供各种虚拟仪器,如常用的电流表,电压表,示波器,计数/定时/频率计,SPI调试器等虚拟终端。支持图形化的分析功能等。

Proteus特别适合对嵌入式系统进行软硬件协同设计与仿真,其包含强大的调试工具,具有对寄存器和存储器、断点和单步模式IAR C-SPY,Keil、MPLAB等开发工具的源程序进行调试的功能;能够观察代码在仿真硬件上的实时运行效果;对显示,按钮,键盘等外设的交互可视化进行仿真。

3.2 仿真实现

仿真电路如下图6所示。

图6 AD633乘法器仿真电路

上图中,两个信号发生器组件分别产生正弦波和三角波输入信号,U1表示AD633,两个信号发生器分别产生正弦波和三角波,示波器显示输入信号和输出信号。通过乘法器将正弦波调制到三角波上面,实现正弦波信号的幅值周期性变化,最终实现信号的传递。

设计正弦波的频率为400Hz,三角波为0.5Hz,将频率高的正弦波调制到低频的三角波,实现信号的传递。

图7 输入波形

图8 输出波形

上图中黄色部分为正弦波,红色为三角波,通过乘法器后得到橘红色的有效值变化的波形。通过调节三角波信号的频率可以使产生信号的幅值变换速度改变。当三角波的频率增加时,幅值改变的频率也增加,当三角波的频率减少时,幅值改变的频率也减少,该信号已经成功应用在某型飞机测试设备中,取得了很好的测试效果。

猜你喜欢
正弦波寄存器幅值
室温下7050铝合金循环变形研究
Lite寄存器模型的设计与实现
常用电子测速法在某数字信号处理器中的应用*
采用BC5016S的纯正弦波逆变器设计及制作
移位寄存器及算术运算应用
超音频正弦波电子管放大器灯丝伺服电路的设计
可靠性步进电机细分驱动技术研究
基于STM32的风力摆控制系统的设计
平地机作业负载谱分析
Prevention of aspiration of gastric contents during attempt in tracheal intubation in the semi-lateral and lateral positions