《电子技术应用》
您所在的位置:首页 > 测试测量 > 设计应用 > 温控振荡器的环境试验测试技术
温控振荡器的环境试验测试技术
冯 祎 杜太行
1.河北工业大学 信息工程学院,天津 300130;2.西迪斯(天津)电子有限公司,天津 30045
摘要: 阐述了由GPIB接口组成的程控仪器搭建程控测试平台的设计思想,说明了系统总体设计、接口电路、驱动电路以及检测电路设计方法。给出了VB 6.0环境下测试软件、GPIB、I/O以及数据的远程数据库存储的设计方法。
关键词: 自动测试系统
Abstract:
Key words :
</a></a>  石英晶体振荡器虽然具有高振荡频率和高稳定性(Q值很高),但它受外界环境温度的影响也较大,应用场合有较大的局限性。温控振荡器OCXO(Oven-Controlled" title="led">led" title="led">led Crystal Oscillator)正是弥补了石英晶体振荡器易受环境温度影响这一缺陷。它利用恒温槽使石英晶体振荡器所处环境温度保持恒定,将周围环境温度变化引起的振荡器输出频率变化量削减到最小[1]。OCXO是一种高稳定的振荡器,被广泛应用在手机的基站、高精密的测试仪器、标准时钟源和航空、航天领域。因此,它的质量,特别是在不同环境温度下工作的稳定性备受关注,环境试验是考核外界温度变化时产品频率的变化量。它是判断产品好坏十分重要的参数。虚拟测试技术改变了传统以硬件为主的电子测试自动化模式。无论是将数据采集单元装在计算机内构成的虚拟仪器,还是将微处理器装在测试仪器中构成程控仪器,由于充分发挥了软件的强大功能,使电子测试自动化系统的构建成本日益降低,大大扩展了其应用范围。本文主要阐述基于GPIB总线的OCXO环境试验中的测量与控制技术。
1  系统组成
  环境试验测试系统将程控仪器、测试总线、计算机与测试软件相结合,构成通用的虚拟温控测试平台,原理框图如图1所示。
 

   测试平台的构成由主机(采用PC机作为主控设备)和程控仪器群通过通用的标准测试总线连接。测试软件采用VB 6.0语言。
    系统采用GPIB作为接口总线,GPIB是HP公司20世纪70年代初开发的通用仪器控制接口总线标准。它的特点是:积木式结构,可拆卸、易于重建;控制器可以是计算机、微处理器或简单的程序控制器;数据传送可靠,使用灵活,价格低廉[2]。因此,GPIB广泛应用于对测试仪器进行计算机控制。根据测试要求选用了53132A频率计、6632B电源、4366可编程程控温箱和射频切换模块7000/8811A。
2 测试系统的硬件设计
2.1 测试系统的接口模块

  53132A是Agilent公司生产的频率计数器,它的最高频率分辨率可达12位,单次时间间隔分辨率指标规定为150 ps。53132A还具有外同步性能,可用一个外部信号来控制时间间隔测量。为了保证频率计数器测量的准确性,可以加入外部时钟。6632B是Agilent公司生产程控直流电源,该电源具有GPIB控制接口。S&A 4366 Temperature Test Chamber是美国SAUNDERS公司生产具有GPIB控制接口的可编程程控温箱。如果使用CO2作为制冷剂,它的温度控制范围是-55℃~200℃/LCO2。它的稳定范围是±0.2℃,符合系统的要求。7000/8811A是MATRIX SYSTEM公司的产品。它是1个12输入、1输出可选择的射频转换开关模块,工作范围DC~800 MHz,控制转换信号为TTL电平,控制接口为1个形如15针串行口的接口。1~12针为控制端,选通1~12 RF输入,低电位选通、高电位截止。
2.2  温控振荡器振荡信号检测
    系统采用的检测电路原理如图2所示。

    放置在程控温箱中的12个被测试品通过50 Ω RF电缆连接到射频切换模块7000/811A上,计算机通过I/O卡和驱动卡实现12选1,该信号输入到计数器53132A。计算机通过GPIB总线向所有程控仪器发送、接收控制指令。如设置程控电源电压、控制温箱升降温、读取计数器数据等。
2.3  I/O卡和驱动卡
    I/O卡和驱动卡的电路原理图如图3所示。

    I/O卡是1块8255可编程并行接口为核心的接口卡。8255的PB口用PB0~PB3实现12选1,通过驱动卡控制7000/8811A射频切换模块的输入端与频率计53132A计数器连接。8255的PC口用于驱动卡的选通,以便于系统扩展[3]。
3  软件系统
   测试程序软件采用VB 6.0语言编写。VB 6.0是Microsoft公司推出的一种可视化编辑软件,适合于Windows平台,它简单易用,适用面广,无论是通信、数据库,还是多媒体以及普通的Windows应用程序,都可以用VB进行开发。VB的可视化指的是开发图形用户界面(GUI)的方法。使用这种方法,用户不需要编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象托放到屏幕上即可,方便快捷[4-5]。
3.1 测试流程
    图4为此环境试验测试程序的主界面,程序流程图如图5所示。

    系统首先进行预测,其作用是在对测试品进行温度环境测试之前,检查测试本身或测试与测试制具接触是否存在问题。具体方法是,检测试品否有频率输出、输出频率是否合理。当确定所有产品工作状况正常时,进入测试程序。
    测试程序启动后,系统根据用户选择的试品型号调入预先设定的测试参数,根据控制参数设定电源电压以及最大电流,轮流给试品供电。然后根据温度控制参数,控制温箱升、降温,当到达指定温度后,根据设定等候一段时间使试品在该温度下稳定,确保测量的准确性。
    计算机通过I/O以及驱动卡控制7000/8811A模块切换试品,由频率计53132A读出当时产品的实际输出频率保存数组,并进行下一个温度点的测试。
   当所有温度点的测试完成后并合格时,需要进行有源效应测试,即检测供电电源变化对产品输出频率的影响。具体要求是,控制电源在额定电压范围内变化,由53132A读出频率值并算出频差。
3.2 GPIB总线与I/O卡的驱动程序
    计算机通过GPIB总线与53132A频率计、6632B电源、4366可编程程控温箱等设备连接。这些测量仪器和设备均带GPIB接口并预先设定好地址。计算机内部插入GPIB控制卡,美国NI公司提供的一个程序模块GPIB.bas用于驱动该控制卡,实现计算机与外围设备和测量仪间的数据传输。下面程序是计算机与53132A频率计数据通信程序片段:
53132A频率计初始化
Private Sub ini_counter ( )
Dim setstr As String
Send 0, counter, “*RST”, Nlend  ‘Reset counter, counter变
           ‘量代表计数器的地址,0代表控制卡地址
Send 0, counter, "*CLS", NLend   ′Clear status
Send 0, counter, "*SRE 0", NLend    ′Disable service
                      ′request (0)
Send 0, counter,":FUNC 'FREQ 1'",  NLend ′Measure
                      ′frequency on channel 1
Send 0, counter, ":INPUT1:IMPEDANCE 50", NLend ′Input
                      ′1 set to 50 ohms
setstr= ":SENSE:FREQ:ARM:STOP:TIM " & "1.0"
Send 0, counter, setstr, NLend     ' Set the gate time
Send 0, counter, ":SENS:EVEN1:LEV 0V", NLend
Send 0, counter, ":TRIG:COUN:AUTO OFF",NLend ′Single measurement when triggered
Exit Sub
  读取53132A频率计数据
Public Sub Read_freq(ByRef F As Double)
Dim Freq As String
     Send 0, counter, ":SENSE:FREQ:ARM:STOP:
     TIM " & "1.0" & ";:READ?", NLend
  Freq = "                               "
  Receive 0, counter, Freq, STOPend
  F=Val(Freq)
End Sub
    计算机通过I/O以及驱动卡控制7000/8811A模块切换试品,该驱动程序为NTPort Library 2.5,程序片段如下:
   I/O计初始化
Private Sub init_iocard()
Outport CR, &H90 ′Port A as input, port B & C as output
Outport PB, &H0  ′clear ports
Outport PC, &H0
End Sub
    程序运行Outport时,程序会调用IO_Routine这个模块,如下:
Declare Function Inport Lib "IO.dll" Alias "PortIn" (ByVal port As Integer) As Integer
Declare Function Outport Lib "IO.dll" Alias "PortOut" (ByVal port As Integer, ByVal Data As Integer) As Integer
Global Const PA = &H2C0
Global Const PB = &H2C1
Global Const PC = &H2C2
Global Const CR = &H2C3
    当程序调用I/O控制时,程序调用:
Private Sub RF_Switch(Switch As Integer, Switch_Pos As Integer) ‘Switch代表第几个驱动卡,Switch_pos代表1个驱动卡上控制的第几个位置
Switch_Pos=(Switch-1) * 16+Switch_Pos-1
Outport PC, Switch
Outport PB, (Switch-1) * 16+Switch_Pos-1
End Sub
3.3 测试数据存储技术
    测试子程序运行完毕后,所有数据将被存入网上的Access 2000数据库中。VB提供了DAO模型与Microsoft Jet数据库引擎接口的方法。DAO模型是全面控制数据库的完整编程接口,它是设计关系数据库系统结构的对象类的集合。首先在网上服务器使用Access 2000创建1个TempData.mdb数据库,并将其路径Map到本地机上,即I:\ 镜像盘。
    在VB 6.0中从工程(P)-〉部件(O)选择Microsoft ADO Data Control 6.0(OLEDB),从工程(P)-〉引用(N)选择Microsoft ActiveX Data Objects 2.0 Library,将Adodb控件添加到程序的图形界面上。在程序中使用Dim语句给数据库中的每1个对象创建对象变量。如下:
Private objConn As Adodb.Connection
Private objRec As Adodb.Recordset
Dim strconnectionstring As String
   然后指明对象变量:
strconnectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=I:\Tempdata.mdb"  ‘指明数据源
Set objConn = New Adodb.Connection  ‘Connection对象描述了到数据源的物理连接
objConn.Open strconnectionstring  ‘打开一个数据源连接
Set objRec = New Adodb.Recordset  ‘通过Recordset对象可对几乎所有数据进行操作
objRec.Open "Data_SN", objConn, adOpenKeyset,adLockPessimistic   ‘打开数据库中的Data_SN表
  将测得的数据存入数据库中的Data_SN表中
     With objRec
       .AddNew         ‘向表中增加新的数据
       !SN = sn(i)        ‘输入序列号
       !Model = model      ‘输入机种号
       If mark(i) = “FAIL” Then  ‘输入产品测后状态(好、坏)
          !Passed = False
       Else: !Passed = True
       End If
       .Update
  End With
  objRec.Close             ‘存储完后关闭表Data_SN
  objConn.Close            ‘关闭数据库连接
  Set objRec = Nothing
  Set objConn = Nothing
3.4 检测结果判定
   采用式(1)计算实际频率的偏差值(ppm),式中f0为试品规定中心频率。
  
  按照式(1)计算各个温度点间频率的漂移是否超限。当漂移在允许范围内,继续进行有源效应测试。实际测量时也可以采用如下的方法:
  

   利用程控仪器搭建虚拟温控测试平台来测试不同温度环境下产品频率,通过网络将数据汇总于网络上的数据库服务器。直观地展示了测试结果,并便于数据查询。这种方法改变了以往繁琐的手动设置温度、测量和读数、计算过程,既节省了测试时间,又提高了测试测量的精度,使整个测量过程变得方便、快捷、准确、可靠。
参考文献
[1] 高益,刘刚,于军,等.微机控制OCXO测温电路的设计与分析[J].压电与声光,2006,28(1).
[2] 于英民,于佳.计算机接口技术[M].北京:电子工业出版社,2004.
[3] PAUL Oh. 8255 PPI IBM PC interface card[EB/OL].
http://www.boondog.com/tutorials/8255/8255.htm.2000.
[4] 郑阿奇,曹戈.Visual Basic实用教程[M].北京:电子工业出版社,2003.
[5] 李兰友.Visual Basic程序设计教程[M].天津:天津大学出版社,2004.
 

此内容为AET网站原创,未经授权禁止转载。