为了方便用户准确掌握手中RLC(电阻电容电感)的各项参数,笔者提供了一种采用FPGA和MCU的测量系统,可自动测量RLC的多项基本参数,系统以液晶屏显示测量结果,并可根据需要打印测量的结果,与现有的昂贵测试仪相比,该测量系统功能精简、操作智能化、人机接口友好。
1 方案设计与论证
为满足高校实验室教学需要,设计一个低成本RLC电参数测量系统,本系统采用基于C8051F020单片机的可编程控制系统方案,单片机生成各种波形的数据表传输给FPGA,使用DDFS技术使FPGA生成所需要的波形并进行输出,通过DA转换模块,将数字信号转换成模拟信号,通过程控放大器AD603,由单片机控制AD603进行增益的调整,再经过NE5532构成的调理电路对其进行电压放大¨’2]。产生高精度的正弦波信号流经待测的电阻、电容或者电感和标准电阻的串连电路,通过测量电容或者电感和标准电阻各自的电压,利用电压比例计算的方法推算出电容值或者电感值,利用C8051F020单片机控制测量和计算结果,运用自校准电路提高测量精度,采用液晶模块实时显示数值。系统总体组成框图如图1所示。
1.1 DDS简介
直接数字频率合成(DDS)技术是通过累加相位来合成所需波形的频率合成技术。利用DDS设计的波形发生器具有精度高、稳定性好、频率和波形易于控制等优点¨1。DDS主要由参考时钟、相位累加器、波形存储器、数模转换器和滤波器组成,近年来在频率合成、通信、仪器测量领域均有广泛地应用。
1.2信号产生模块
要求设计的正弦波信号发生器的频率范围较宽,其频率范围是1Hz~1MHz,且可以对频率进行设置,还有频率步进调节的功能,一般传统的LC谐振回路或无源RC结合运放的方式很难达到这一要求,所以我们提出利用DDS原理使用FPGA实现的解决方案。用FPGA实现波形信号的输出,只需要在FPGA内部建立一个波形数据表,然后在时钟的驱动下,读取数据表中的数据,经过高速DA的转化,即可得出需要的波形。要输出不同的波形,改变波形数据表中的内容即可实现。若要实现频率的设置和步进,只需要给FPGA相应的数据关键字即可”’5。。采用FPGA中DDFS技术,对于不同波形,可建立不同存储表即可输出相应的波形,也可由外部输入波形表来完成任意波形的输出。频率范围高、精度高,方便与其它设备接口。FPGA中实现波形输出原理图如图2所示。
1.3控制器方案选择
C8051F020是集模拟和数字信号为一体的混合信号系统级高速单片机,他采用贴片封装,体积小、运算速度快。具有与MCS-51指令集完全兼容的CIP-51内核,具有所有8052外设器件,采用流水线指令结构,除此之外,C8051F020单片机具有丰富的I/O,具有高达20个中断源,而且具有丰富的外设:UART、SPI、ADC、定时器等。该单片机具有高达128k的FLASH和8k+256的RAM,无需外部扩展便可实现高速度运算和掉电存储,并具有JTAG接口,便于在线调试,非常适合于各种工业控制和仪表的使用。
1.4信号调理模块
增益可调的AD603的放大倍数可以通过单片机调节,由微控制器来判断当前信号幅度的大小,经过一定的运算处理后给出一一对应的数字量控制信号,然后经过DA转换输出一个对应的模拟量来控制放大电路的增益,可以输出电压的连续变化。NE5532可实现固定放大倍数放大H’51。AD603通过软件控制输出,使之输出电压连续变化通过调节反馈电位器可实现输出幅度不小于5V,信号调理电路如图3所示。
1.5时间模块
利用DSl2887作为时钟显示模块。DSl2887自带晶体振荡器和电池,连接方便。通过修改其内部控制寄存器可以方便的加以控制㈨。DSl2887内部自带114字节通用RAM,因此可以通过它实现掉电存储功能。
3程序设计
3.1软件实现方法
本测量系统软件部分有以下几个模块:键盘控制模块、显示模块、计算及量程控制模块、数据存储模块、时钟模块、频率控制模块、打印与语音播报控制模块。软件控制由C8051F020单片机实现。单片机完成对FPGA、AD603、NE5532的控制和人机交互。波形数据和频率控制字K由串口写入FPGA,增益控制由单片机的DA接口输出到AD603的控制端,电压输出控制由单片机输出控制数字电位器来控制NE5532的输出。
3.2单片机软件设计流程图
单片机担任着整个系统的控制任务,不仅要控制FPGA产生固定频率的波形,还要控制AD603的增益,对于电压放大模块中,要对数字电位器进行控制,反馈中的结果还要输入到FPGA中进行处理。单片机软件流程如图4所示。
4系统测试
硬件系统测试:焊接硬件电路后,分模块进行测试,每个模块焊接完成后,测试通断,判断电路是否存在短路、虚焊,硬件部分全部焊接完毕后,采用自制电源给硬件电路供电,通过测量AD637输出,计算出待测元件的参数,对比LCR数字电桥测量值进行硬件电路的优化。
软件系统测试:采用自下而上调试的方法,先对每个编程模块进行测试,最后组合每个模块的功能进行软件部分整体测试。
整体功能测试:通过加被测元件,通过按键实现被测元件信息的输入,对比液晶显示和LCR数字电桥WY2812A测量值观察效果。并检查语音功能与液晶显示的一致性。结果见表1~表3。
5 结束语
笔者设计并实现了一种基于FPGA与单片机的电参数测量系统,给出了主要硬件功能电路和控制软件的设计过程,制作了实验样机并对实验样机进行了测试。系统产生最高频率可达lMHz,且步进可以设定为l Hz和10 Hz的正弦波。实验结果表明该测量系统具有价格低廉、效率高、适应性强、可靠性好等优点,可以用作实验室中低成本电参数测量系统。