工业用多功能信号发生器设计
2022-12-09姜文龙
沙 莎,姜文龙
(长春电子科技学院 电子工程学院,吉林 长春 130114)
0 引言
信号源又称为信号发生器或振荡器,是电子设备各种测试过程与实验环境中不可缺少的工具[1],在通信测量、雷达控制等方面起到重要作用[2].现如今市场方面,传统信号发生器在对工业现场的设备测试过程中,信号稳定性和信号精度方面有待于进一步改善和提高,因此设计了一款便携式、高稳定性、高精度、多功能的工业现场和实验室使用的信号发生器,方便设备工程师对现场设备调试以及故障检测.该信号源具有完全独立的双路DDS信号和TTL电平输出,不仅预置了两种常用波形信号而且为用户提供了16组自定义波形存储空间.采用高清LCD液晶屏,方便用户使用.优异的技术指标及众多功能特性的完美结合可帮助用户更快地完成工作任务,是电子工程师、实验教学、工业现场PLC与过程仪表、电动阀门等调试的理想信号发生器.
1 系统总体设计
本系统采用模块化设计,由电源模块、单片机控制模块、DDS信号发生模块及模拟量信号输出模块组成.系统结构框图如图1所示.
电源模块设计部分由于AD9833芯片耗热量较大且芯片对电源稳定性要求较高,在设计该电源时使用双电源分别供电,其中AD9833独立使用一个电源,这样设计注重了电源的稳压特性、退耦特点等.
电源模块设计主要是通过稳压装置将输入交流电压220 V转换为直流电压12 V输出,然后由直流电源转换器A1212S-2 W电源转换为±12 V,再由稳压芯片LM1117-3.3 V和LM1117-5 V分别转换成3.3 V电压和5 V电压,分别为STM32单片机和AD9833等后续电路供电.
单片机控制部分,采用STM32单片机为系统核心,连接按键与屏幕显示,通过AD采集放大.稳压电源的设计如图2所示,选用芯片LM1117作为常用的电压转换器件,其中AD9833使用两片.电路最终产生的波形数据传给单片机,单片机做出处理判断,通过按键输入并改变频率、幅度等参数,由LCD屏幕显示.
图1 系统总体框图
图2 LM1117 稳压电路设计
2 硬件设计
主要介绍信号产生模块和信号调理模块,其中信号产生模块主要是DDS芯片AD9833,信号调理模块主要是对信号进行滤波和放大处理.由于篇幅有限,本文只概述方波输出与正弦波输出两路,其余几路原理基本相同,这里不再一一讨论.其方波与正弦波皆能达到高幅值的输出、波形稳定,并可任意调频、调幅以达到理想波形输出.
2.1 DDS信号产生模块
DDS波形生成技术在模拟信号数字化这一方面与传统频率合成技术比较,可以看出它在频率转换速度、信号频带宽度、相位的连续和分辨力有着显著提升,总体性能优于其他类型信号源[3-4].
本系统所使用的DDS产生模块为AD9833 波形发生器,是一块完全集成的DDS(Direct Digital Frequency Synthesis)电路[5],只需要一个外部基准时钟(所使用的是25 MHz的有源晶振)和少许电阻器、电容器即可,不需要外接其他元件,电路结构简单,可通过单片机和软件编程调节,输出频率和相位[6].波形输出分为两部分,一部分为AD9833所产生方波波形,然后通过OPA552放大电路最后通过滤波,使波形良好输出;另一部分则是先经AD9833芯片产生正弦波波形,经过PA78放大电路放大后并滤波,得到相应正弦波输出.
在电路结构方面,需为AD9833提供2.3~5.5 V的供电电压,由于AD9833芯片的兼容性良好,可通过STM32单片机控制AD9833,通过单片机的串口与AD9833相连接进行数据传输,控制灵活方便[7].AD9833模块电路原理图如图3所示,由VOUT 引脚提供各种输出,可完成方波输出和正弦波的输出.
2.2 信号调理模块
通过AD9833数据手册可知,最大输出电流为20 mA.由于输出电流过小,需要对信号进行放大处理.
图3 AD9833电路原理
2.2.1 PA78功率放大器
高压运放芯片PA78是由Apex公司生产,其不仅能够进行高压高速运算放大,而且具有高性能和低成本的优点.PA78芯片在传统放大电路基础上做了改进,将普通放大电路中的输入级、中间放大级和输出级这三部分集成到一个芯片上,不仅使其体积变小,同时电路的集成度也大大提高.PA78同时具备低空载电流的性能,由于输入端的动态偏置,转换速率达到350 V/μs,只消耗小于1 mA的空载电流.外部相位补偿为带宽和稳定性提供了极大的优化性与灵活性,输出级具备限流保护功能.其独特的集成工艺技术可显著降低静态功耗,因此不需要进行散热处理,成本不足同类产品的四分之一[8].
2.2.2 PA78相位补偿
当系统的相移值超出正常区间之后,集成运放电路的稳定性将会被打破,出现振荡情况.因此,为进一步加强系统电路的稳定性能,必要时可以在系统集成电路之中添加一定的相位补偿功能[9].在系统当中,为稳定PA78放大电路的相移值,将电容电阻的连接方式设置为双外接,继而实现对其相位的补偿,具体连接手法是将电源的正极与Rc+、Cc+连接,负极与Rc-、Cc-连接而成[10].为了进一步加强对系统稳定性的控制,在此计算出了具体的电阻、电容相位补偿数值,当电阻Rc+=Rc-=3.3 kΩ,电容Cc+=Cc-=15 pF之时,此时的相移值处于最佳状态.在本文中选取陶瓷电容作为相位补偿电容,这不仅耐压值能够达到运放的全部工作电压,同时还具有良好的温度特性.PA78放大电路如图4所示.
图4 PA78放大电路原理
2.2.3 OPA552放大器
方波信号放大处理采用的是OPA552放大器,是一款低成本运算放大器,输出能力高达60 V,最大电流为200 mA.当输出电压与电流达到最大优化的同时,OPA552的转换速度可达到24 V/μs,还可以同时具备12 MHz的带宽,通过协调配合,最大增益可以高达5以上.
图5 OPA552放大电路原理
结合外部电路补偿技术,使OPA552电路既可以低频运行,又能够产生最低噪声,并且在低增益情况下仍能进行高速转换,在不同的应用环境下,使用外部电路的补偿技术,可以在产生高频噪声情况下,仍可以使环路增益保持良好的稳定性.
OPA552放大原理如图5所示,由电阻比R1/R2来决定低频噪声增益NG1,电容比C1/C2决定高频噪声增益NG2和传输频带.在选择电容C1和C2时,要确保电路具备良好的二阶低通特性,即这里需设定高频噪声增益NG2的值要大于最小稳定值1/R1C2,根据表达式(1)的计算,一般选择为10[11].
NG2=1+C1/C2=10.
(1)
当运放电路信号增益为-1时,低频信号增益为
NG1=1+R1/R2=2.
(2)
此时增益带宽积的值为12 MHz,电路中的电容C1和C2的作用是避免OPA552电路产生振荡现象.
2.3 模拟量信号输出模块
本系统使用的STM32103FZET6属于增强型系列,模拟/数字(A/D)转换、数字/模拟(D/A)转换是该系列单片机的重要功能.STM32-DAC模块是数字输入、电压输出的数字/模拟转换器,STM32103FZET6的DAC模块有2个输出通道并带有直接存储访问功能,每个通道都有单独的转换器.在双DAC模式下,2个通道可以独立地进行转换,也可以同时进行转换并同步地更新2个通道的输出[12].
工业现场使用的设备通常情况下都会具有4~20 mA输出/输入接口,因此可以利用STM32DAC模块特性,使用它自带的DAC模块就可以得到4~20 mA的模拟量输出,并且STM32-DAC模块编程使用方便,它具有稳定性强、精度高、漂移小等优点.如图6所示为4~20 mA转换电路.OPA333—单电源轨至轨运放,是很多测试设备的理想选择,其工作电压为2.7~5.5 V.由于其专有的自动校准技术,针对低电压、单电源运行进行了优化,使它的失调电压仅为10 μV,实测最低输出为30 μV,最高输出可达VCC-30 μV.电路组成压控恒流源,OPA333提供优异的CMRR性能,使得模数转换电路获得了极高的精度和稳定性.STM32的DACOUT可以由D/A1或者D/A2通道输出,经C25滤波之后进入运算,经过1∶1缓冲,再由Q2进行电流放大,负载中的电流在R7上形成压降,经运放反馈后得到Vdacout=VR7=I*R7,所以I=Vdacout/R7,当Vdacout在400~2 000 mV之间变化时,可得到4~20 mA的输出.改变R7的大小,便可改变DACOUT的需求范围.C17进行去抖动处理.4~20 mA信号由AN_OUT+/AN_OUT-之间输出.
图6 4~20 mA转换电路
3 软件设计分析
3.1 系统软件实现方法
STM32F103ZET6单片机完成对DDS模块AD9833的控制和人机交互.电路软件设计包括主程序、按键扫描、数字模拟量转换、运算处理及液晶显示等程序.STM32根据档位选择计算频率、幅度、占空比、相位等送给AD9833实现波形输出;模拟电压电流信号由A/D子程序控制;STM32最后进行运算处理,主程序流程图如图7所示.
图7 主程序流程图Fig.7 The main program flow chart
3.2 频率控制字计算方法
本文在计算频率控制字之时,采用了带有二十八位的AD9833累加器,其工作原理是接收到1个时钟信号之后,AD9833累加器会自动加1,当然具体的数值无法显示,其均是通过波形图进行反映展现,具体是当AD9833累加器自动加1动作完成之后,其会将对应的输出数值传送到波形址域当中,在波形址域与幅值之间相互转换后,最终时钟信号采用幅值的大小来显示,并且数值会自动存入DAC当中,继而得到系统的模拟结果.另外,AD9833累加器的波形周期是采用MCLK输出波形频率控制字采用式(3)进行计算.
M=FMCLK/228×fout.
(3)
其中M是与频率控制字一一对应值;频率的输出数值用fout表示,FMCLK是AD9833加法累加器的参考时钟信号,在文中为了保证精确度,选取了25 MHz的有源晶振,最终通过计算公式可得准确的M取值0≤M≤228-1[13].
3.3 简易滤波算法
方波信号采集完后,采用一个滤波算法,首先对所采集信号标号,按照1,2,3,…,N进行排序,取这串信号中的中值,然后以中值做一个限制,在中值上面的采集数据定义为高幅度区域,在中值下面的采集数据定义为低幅度区域,在高幅度区域取平均值,定义VH平均,在低幅度区域取平均值,定义VH平均,则采集的最终数据值(峰峰值)应是V高平均值减去V低平均值,采用式(4)进行计算.
VP-P=VH平均-VL平均.
(4)
这种算法的优点是适用于一般具有随机干扰信号进行滤波,N值取越大的时候,所采集的值误差越小.
3.4 正弦波采集算法
4 系统测试
以上介绍了信号发生器的硬件设计与软件设计部分,下面是对实际应用调试结果验证:
(1)通过示波器上的波形显示可以看出,图8为经OPA552放大电路放大后的在32 kHz频率下方波波形输出,最终本路方波输出波形峰峰值范围在0~30 V内可调,频率在0 Hz~40 kHz范围内可调,其波形相对稳定,输出效果良好.
图9为经PA78功率放大产生的正弦波波形,输出波形峰峰值可在0~120 V范围内可调,由于输出幅值高,通过示波器检测波形时,需要使用衰减探头乘以10,这样示波器上面显示的值为实际采集值的十分之一,即图9中此时采集的正弦波峰峰值为96.8 V,频率为10.04 kHz,输出波形理想.可用于电子电路试验与调试、工业伺服电机编码器脉冲响应的试验与测量.
图8 方波输出波形图Fig.8 The square wave output waveform diagram
图9 正弦波输出波形图Fig.9 The sine wave output waveform diagram
(2)信号发生器模拟量输出模块可以输出电压、有源电流、无源电流信号.技术指标如表1所示.4~20 mA/4~20 mV电流电压可控输出,可模拟工业设备绝大多数信号和传感器的传输值,方便设备工程师对PLC等自动化设备的调试与故障检测.无源电流输出可作为2线制、3线制变送器模拟器,用于环路测试,测试原理如图10和图11所示.
图10 应用实例1Fig.10 The application example 1
图11 应用实例2Fig.10 The application example 2
表1 模拟量输出技术指标
5 结论
本系统针对工业自动化需求,研究采用DDS技术通过单片机STM32控制输出波形及模拟量信号的便携式信号发生器,可以在一定频率范围内快速准确地输出多种高频信号,适用于实验室中的电路实验和工业现场的PLC、变频器、伺服电机编码器等设备调试.可检测和模拟压力变送器、各类传感器的信号,在设备设计、安装、调试及现场故障检测时解决实际需求.由于该信号发生器使用简单、携带方便,在工业生产实践中具有实际的使用价值和市场前景.