USB接口的多功能容栅传感器测量系统

来源:21IC 作者:—— 时间:2011-11-21 10:02

       容栅测量器具有测量可靠、体积小、功耗低、功能多等特点。随着测量技术向精密化、高速化、多功能化发展,具有多种优良特性的容栅传感器应用得越来越广泛。由于容栅传感器数据的传输多采用RS232/RS485总线方式,而USB总线方式方便、高效,并有取代串口通信方式的趋势,因此设计一款带USB接口的容栅传感器测量系统具有实际应用价值。

1 容栅传感器测量原理

       容栅传感器的工作原理是根据平板电容理论而来。一般容栅传感器的结构包括动栅板和定栅板。动栅板包含发射极和接收极,定栅板包含反射极。反射极分别和发射极、接收极形成平板电容器。通过在发射极上施加n相激励信号,反射极将此信号反射到接收极,随着动栅板的移动,接收极的感应信号的幅度变化不大,而相位变化与位移量成一定函数关系:

       θ(x)=arctan[(1-2x/w)/(1+√2)]     (1)
       其中,x为位移量,w为小发射极宽度。当位移发生一个w宽度变化时,接收极产生360°/n的相差。设激励信号的周期为T,则有:
    T=N·β                              (2)
    式中:β为最小计时单位,N为常数。而每周期代表位移量为L(本系统为0.508 mm),在每周期中β代表一个小相位,则一个周期被分解为N个小相位,每个小相位代表位移量即最小分辨率:
    △l=L/N                            (3)
    本系统N为512,即最小分辨率约为0.001 mm。对于最大测量速度Vmax,因为在一个周期内最多能分辨N个相位,所以有:
    Vmax=L/T                           (4)

2 系统硬件设计

       2.1 C8051F321芯片介绍

       C8051F321片内集成了数据采集和控制系统中常用的模拟部件和其他数字外设,采用交叉开关实现I/O端口的灵活配置,自带USB2.0收发器、控制处理器和内部上拉电阻,可在全速(12MHz)或低速(1.5MHz)下运行,支持8个灵活通用的USB端点,内置1K的USB专用缓冲寄存器。

       2.2 传感器信号处理模块设计

       容栅传感器接口为B531,信号线有4根:电源线(1.5 V)、地线(0 V)、时钟线(CK)、串行数据线(DATA),并且通过控制CK、DATA信号线的电平可以实现容栅传感器的不同功能比,如最大值跟踪、最小值跟踪、数据保持和清零等。

       由于容栅传感器内部的专用控制芯片输出的信号电压为1.5 V,而后续数据采集系统工作电压为5 V,要进行数据交换则必须进行电平转换,电平转换原理图如图1所示。电路中采用LM393芯片转换电压,LM393芯片实质上为2个比较器,比较电压为容栅传感器工作电压的一半左右,设为0.6V。通过比较电压0.6V与CK和DATA信号线电平比较,即可将CK、DATA信号线的电压转换为0V或者5V。

a.jpg


       2.3 硬件抗干扰电路设计

       由于系统经常工作在工业现场等领域,各种电磁干扰很常见,为了使系统能稳定工作,采用光耦隔离技术将传感器和单片机隔离。光耦隔离原理图如图2所示。光耦器件采用HCPL2631高速光耦,输出引脚OUT1和OUT2经过上拉电阻处理后,将CK2和DATA2信号传输给C8051F321单片机处理。

b.jpg

 

3 系统软件设计

       3.1 数据采集程序

       容栅传感器时序图如图3所示。其中包含3个CK信号说明和1个DATA信号说明。CK(a)表示要发送的完整数据间的时序关系;CK(b)表示一个完整数据内部各个数据组的时序关系;CK(c)和DATA表示一个数据组内的时序关系和对采样点的说明。由图可知数据每隔250 ms发送一次,在时钟CK的上升沿数据有效。数据由LSB到MSB依次发送,总共24位二进制数据,分成6组,每组数据间隔820μs。其中前5组为数据位,第6组为控制位组(包含符号位和公英制位),控制位组的第0位的“0”表示正数,“1”表示负数,第3位“0”表示公制单位mm,最小单位0.01 mm,“1”表示英制单位inch,最小单位0.000 5 inch,x表示无效。为了能够实时采集数据,采用中断方式检测CK信号,边沿触发。检测CK信号的高电平持续超过820μs时,当出现下降沿时触发中断,进入中断程序,再持续检测低电平直到出现上升沿,读取DATA信号电平并存储,总共采集24位。返回主函数根据符号位和公英制位进行相应处理。相关程序代码如下:
   

c.jpg

d.jpg

 

       3.2 USB程序

       因为C8051F321的USB模块高度集成化,所以对USB接口的设计主要是USB固件程序的设计。其中最重要的是USB描述符和USB传输中断的处理。当USB中断到达时,C8051F321首先读取3个中断寄存器(CMINT、IN1INT和OUT1INT)来判断中断来源(USB复位中断、端点0中断、端点1输入中断、端点2输出中断),然后跳入相应的处理模块进行处理。USB中断程序流程如图4所示。

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子