APP下载

基于C8051F342的高精度US B电感测头设计

2018-01-19范江波

三门峡职业技术学院学报 2017年4期
关键词:检波电感单片机

◎范江波 杨 丽

(三门峡职业技术学院 电气工程学院,河南 三门峡 472000)

目前市场上传统电感测头在设计和使用中调试复杂,尤其是在一个正常工作的系统中因为一根电感测头故障需要更换时,需要将系统测试数据等重新进行修正方可使用。修正数据过程复杂且需要专业技术人员才能完成,严重影响了电感测头的使用。为解决传统电感测头调试和更换难的问题,本文设计开发了一套基于USB接口的高精度电感测头,目的在于提高电感测头在使用过程中更换的便捷性,同时提高电感测头的通用性及测量精度。

1 系统分析及组成

1.1 电感测头非线性分析

电感测头是利用线圈的自感或互感原理来进行微小位移量测量的一种传感器[1],常用的电感测头主要有差动电感式传感器,这种结构受外界影响小,如温度的变化、电源频率的变化等基本上可以互相抵消,衔铁承受的电磁吸力也较小,可以有效减小测量误差。其计算电感量的公式为:

其输出特性如图1所示。

图1 差动电感式传感器输出特性

从输出特性图中可以看出,差动式电感传感器线性较好,但整个输出段并非全部线性,在设计使用时必须从其中选择一段相对线性好的进行测量,即使如此,在使用中仍然存在一定的非线性[2]。为了提高传感器的测量范围和非线性校正,本系统设计USB接口的处理模块,通过软件处理,实现非线性校正,方便电感测头的使用调试与更换[3]。

1.2 USB接口电感测头系统组成及工作原理

本项目设计的USB接口电感测头主要由电感测头、USB接口及信号、数据处理和PC机的数据线性化处理组成。系统整体框图如图2所示。

图2 USB接口电感测头系统组成

本系统将传统电感测头连接到USB接口模块的输入端,然后将测头固定于标准台架上,USB接口模块的USB端连接至计算机并打开电感测头线性校准软件,按照线性校准软件要求首先调整电感测头及台架位置使输出显示为0,然后按照软件提示调整台架的螺旋尺开始线性校准,提示校准结束后,按照要求将相应的校准数据写入USB模块即可完成整个系统的线性校准工作。该电感测头即可由原来传统的电感测头转为具有USB接口的电感测头,在以后更换和使用过程中不再需要调试。

2 USB接口电感测头硬件电路设计

电感测头的硬件电路主要是完成电感测头信号的处理并提供给计算机正确的数据。在硬件电路中一方面向电感测头提供10KHz左右的正弦激励信号,另一方面将电感测头输出的信号放大、滤波、检波变换为直流电压信号,利用微处理器进行数据采集、分析处理后通过USB口提供给计算机控制系统。硬件电路设计的好坏将直接影响到测量微小位移量的精度。

2.1 激励信号产生电路设计

硬件电路提供给电感测头的激励信号源对测量精度影响极大,因此要求提供的激励信号的幅度和频率必须稳定,不能产生偏移和变化,常用的激励信号源产生电路有LC振荡电路和文氏电桥振荡电路,这两种电路结构简单,但产生的正弦波信号稳定性不好,而且调节范围比较窄,容易受到干扰信号的影响,调试非常麻烦。在本设计中采用AD9833来完成激励信号的产生,采用25MHz的有源晶振作为AD9833的时钟源,保证了芯片时钟的稳定性,也保证了AD9833产生的正弦波信号的频率稳定[4]。通过微处理器C8051F342的 P12、P13、P14连接到 AD9833的串行数据、串行时钟、控制输入端,利用软件调整激励振荡电路输出的正弦波信号频率,在调试过程中可以获取最佳激励频率,激励信号振荡电路如图3所示。

图3 激励信号产生电路

2.2 相敏检波电路设计

经过硬件电路放大后的信号已满足相敏检波的要求,输出信号可以直接加载至相敏检波电路。相敏检波电路采用ADG1201芯片和TL062运放芯片完成,将比较电路产生的激励脉冲波信号加到ADG1201的控制输入端,控制D端和S端的导通与截止,当控制输入端为高电平1时,D端和S端导通,当控制脉冲为低电平0时,控制D端和S端断开,配合运放TL062完成相敏检波电路,产生脉冲直流信号[5]。相敏检波电路及其仿真结果如图4所示。

图4 相敏检波电路及其仿真

2.3 三阶滤波电路设计

由相敏检波电路输出的脉冲直流信号并不能直接进行采样,还必须进行直流滤波,将其转换为稳定的直流电压信号方可。在本设计中采用RC的三阶滤波电路完成滤波工作。电路及仿真结果如图5所示。

图5 三阶RC滤波电路及其仿真

2.4 USB接口电路设计

微控制器采用美国Cygnal公司推出的C8051F系列单片机C8051F342,这是一款用于USB设备的小型单片机。该器件内部集成有4352Byte RAM和64K Byte的Flash存储器。该芯片具备USB接口,利用该芯片进行设计时只需采用少量的外部元件即可。电路如图6所示,电源部分提供了退耦电容C19和C20。电源指示发光二极管D1,USB接口直接利用微处理器的第4端口D+和第5端口D-连接到USB口。P0.7端口连接VCC电源端,输入基准电压。

3 USB接口电感测头系统软件设计

3.1 系统软件整体结构

系统软件整体由单片机和计算机两部分程序组成,软件整体结构如图7所示。

图6 微处理器及USB接口电路

数据采集程序主要是实现模数转换,USB的接口驱动程序主要为单片机和计算机及其相关的检测仪器设备提供通讯接口使用,计算机主要是通过调用底层驱动完成和USB接口电感测头的数据交互以及数据线性化后的数据下传功能,在计算机上同时提供了电感测头校准的人机界面,方便在测头生产后的调试与校正,提高工作效率。

3.2 数据采集模块程序设计

电感测头硬件电路采用ADS1112模数转换器件进行数据采集,该芯片是一个16位高精度的AD转换芯片,采用I2C协议写入,同时支持软件模拟I2C和硬件I2C两种方式[6]。ADS1112对于I2C的时序要求如图8所示。

首先根据该时序图编写了I2C的基本模块程序,一是对ADS1112进行写入命令,即将命令写入其控制寄存器。二是对ADS1112进行读操作,即将ADS1112数据寄存器中的16位数值读取出来。然后利用I2C模块程序进行数据采集。

ADS1112的部分程序代码如下所示:

Void RdA1112(unsigned char *RamAddress,unsigned char bytes)reentrant

图7 系统软件结构

图8 ADS1112的I2C时序

图9 上位机校准软件处理流程

{

Start();

Write8Bit(ReadDviceAddress);

TestAck();

usDelay(i2clk);

while(bytes!=1)

{

*RamAddress=Read8Bit();

Ack();

RamAddress++;

bytes--;

}

*RamAddress=Read8Bit();

NoAck();

Stop();

}

3.3 USB通讯接口程序设计

为了使系统便于同上位机通讯,系统采用了Silicon Laboratories的USBXpress平台方案,使程序难度大大降低,不需要了解更多的USB协议即可进行USB设备的开发。USBXpress软件包包含了固件库文件USBX_F34X.LIB、头文件USB_API.H、动态链接库文件(dll)SiUS-BXp.Dll、驱动程序 SiUSBXp.sys、INF驱动安装文件SiUSBXp.inf等[7]。系统直接将测头作为USB设备访问,单片机直接通过调用USBXpress的硬件函数库完成同上位机的通讯,将测量数据发送到上位机;同时在标定和参数设置时上位机将参数模型写入到MCU的FlashROM中。

在下位机的单片机中直接调用USB库,并在开始进行初始化,

//InitUSB clock *before* calling USB_Init

USB_Clock_Start();

USB_Init(USB_VID,USB_PID,USB_MfrStr,USB_ProductStr,USB_SerialStr,USB_MaxPower,USB_PwAttributes,USB_bcdDevice);

USB_Int_Enable();

3.4 PC测头校准程序设计

计算机部分的校准软件的具体处理过程如下:

1)通过运行标定软件建立测头的测量数据库;

2)对测量数据进行处理,过程如下:

a)按测量的先后顺序记录下各个测量值;b)计算算术平均值;c)计算残余误差;

d)校核算术平均值及残余误差;e)判断是否有粗大误差,若有,剔除;

f)计算单次测量的标准差;g)计算算术平均值的标准差:

h)计算算术平均值的极限误差;i)列出测量结果。

3)程序调用Matlab的多项式拟合函数 “polyfit(x,y,n)”,建立测头的数学模型;

4)分析测量偏差,将模型存入测头。

测量校准流程图如图9所示。

4 测试数据分析与处理

测试硬件连接如图10所示。

图10 USB电感测头系统测试

USB接口电感测头进行实际连接调试,将电感测头安装在测试台架上,通过手动调节,对USB接口电感测头的各个部分电路进行测试。测试用台架为中原量仪生产的BCT-EC型号台架,测试用示波器为美国Tek示波器,型号为TBS1102。

利用示波器测试电感测头的激励信号如图11所示。利用示波器测试的相敏检波后波形如图12所示。从测量波形分析,该电路实现了设计的技术指标,能够完成设计的功能。

图11 激励信号实测波形

图12 电感测头输出信号检波后波形

最终利用电感测头及校准软件校准后的测量结果如表1所示。对所有数据进行分析和系数标定后,可以看到整体线性度较好,只需对各个测量数据段进行标定后即可完全满足系统测试需求。在标定结束后,将线性校准数据写入USB接口模块后,再次多次重复对非标定点数据进行测量结果如表2所示,测量的结果的最大重复性误差不大于0.3um。该产品可以正常使用于企业产品生产线用于检测。

表1USB接口电感测头校准AD测量结果

表2 标定后USB接口电感测头测量结果

5 结论

通过本项目的研究,设计完成一种新型高精度USB接口电感测头,该测头可通过USB接口直接连接到PC机。PC机可以直接获取测头测量值,同时也可以校正测头,最大重复误差不大于0.3um。通过本产品可以减少测头的生产、调试时间,在提高电感测头测量精度和通用性方面有着重要意义。

[1]范江波,霍海波.基于C8051F005的电感式电子柱测微仪设计[J].电子测量技术.2012,35(6):109-112.

[2]范江波,郭志冬.基于过采样技术的磨加工主动测量控制仪设计[J].常州信息职业技术学院学报.2012,11(3):34-36.

[3]王玲.基于最小二乘法的系统模型算法研究[J].工业控制计算机.2012,25(5):100-102.

[4]黄斌,洪嬴政,朱康生.基于AD9833的高精度可编程波形发生器系统设计[J].电子设计工程.2009,17(5):6-7.

[5]叶斌.差动变压器式传感器中的相敏检波电路的改进研究[J].陕西能源职业技术学院学报,2009(11):185-186.

[6]黄宋魏.ADS1110芯片及其应用[J].仪表技术.2006(3):11-13.

[7]李腾飞.C8051F340的USBXpress开发包USB通信设计[J].单片机与嵌入式系统应用.2010(6):74-75.

猜你喜欢

检波电感单片机
一种实时频谱仪中帧检波器的FPGA 实现
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
基于NCP1608B的PFC电感设计
GSM-R系统场强测试检波方式对比研究
隔离型开关电感准Z源逆变器
Microchip推出两个全新PIC单片机系列
改进型抽头电感准Z源逆变器
基于TDFT的有效值检波法测量短时闪变