基于LabVIEW的光耦测试仪设计
【摘要】本设计是基于图形化编程语言LabVIEW,配合计算机和通讯电路所组成的一个虚拟测试仪器,用于测量和显示光耦器件的输出特性和电流传输比等参数。
【关键词】LabVIEW;虚拟测试仪器;光耦器件;输出特性;电流传输比
光耦是一种利用光作为传输的媒介而使电信息得到传输的器件。本文主要研究光耦器件的输出特性和电流传输比CTR(Current transfer ratio)。所谓的输出特性,是指在发光电流IF在某一数值的条件下,光敏三极管的偏置电压VCE和输出电流IC之间的关系。CTR,即电流传输比,这里表示的是直流电流传输比。当输出电压保持恒定时,CTR等于直流输出电流IC和直流输入电流IF之比乘上百分数。本文的目的是通过设计电路,在Proteus上仿真出光耦的某些输出特性,然后把数据传输到LabVIEW上自动地测试和显示光耦元件的输出特性曲线及显示出指定IF的电流传输比CTR的数值[1]。
1.测试系统框图
整个测试系统,主要包括为光耦提供正向电流IF的数控恒流源、提供扫描电压的三角波发生电路、采集和与计算机进行通讯的的单片机控制电路以及用于显示光耦的输出曲线的LabVIEW图形化程序。
图1 测试系统总体框图
2.测试电路设计
2.1 数控电流源的设计
这部分的电路主要是由单片机程控设定数字信号,经过D/A转换器AD5320输出模拟量,控制输出功率管的基极,随着功率管基极电压的变化而输出不同的电流[2]。另外,因为需要了解目前所输出的电流数值,单片机系统还兼顾对恒流源进行实时监控,输出电流经过电流/电压转换后,通过A/D转换芯片MAX1241,实时把模拟量转化为数字量,利用数码管显示当前的正向电流IF的数值,方便后面LabVIEW的显示。
2.2 扫描电压的设计
对于扫描电压,需要满足条件是能够连续变化的电压信号,因此正弦波以及三角波发生电路都能够满足要求。但是考虑到三角波电路电压信号的线性度较好,随时间呈y=kx的线性变化,因此设计三角波发生器提供光耦的扫描电压。另外,为了方便测量,在三角波发生器后加入了一个线性全波检波电路,把三角波发生器所产生的电压都变换成正向的压降。用此电压接入光耦的集电极。另一端接入采集通讯模块的A/D,用此电压减去光耦发射极的电位,即为VCE。
2.3 采集与通讯电路的设计
当正向电压通入光耦的发光端,扫描电压接入到光耦受光端的集电极和发射极时,不同的VCE会有相应的IC输出。对于VCE,因为扫描电压接入的是光耦的集电极,相当于是VC的电位,因此在采集VCE的数据时,需要通过转换得到。把扫描电压模块的输出端输入到采集电路的一块A/D中,采集得到的电压VC还需要减去另一块A/D所采集到的电压VE,从而得到集电极-发射极间的电压VCE。对于IC,由于单片机从A/D上所采集到的电压为VE,因此采集后需要除以发射极上的负载电阻,得到发射极电流IE。由于在受光端的光敏三极管上IE=IC+Ib,对于电流传输比很大的光耦器件,它的Ib很小,因此IE可以约等于IC。因此IC≈IE=VE/RL,利用这种方法,就能在单片机上作出运算,把采集到的VE转换成IC的数值。
3.LabVIEW软件设计
在本实验中,LabVIEW作为本系统数据流的终端,用于接收和显示光耦器件的特性曲线,而且还包括CTR的实时计算。而且利用LabVIEW编程的强大功能,可以与计算机上的操作系统以及其他应用程序的使用相结合,大大方便了实验的数据记录和分析[3]。因此LabVIEW的应用是光耦测试系统的核心。LabVIEW在光耦测试中主要起到三部分的作用,一是利用自身的串口通讯函数库接收经单片机串口所传输过来的两组数据VCE和IC。二是利用这两组数据所组成的数组画出对应的XY图。三是计算CTR。下面来详细地说明每个部分作用的具体实现。
3.1 LabVIEW的通讯串口
单片机通过串口与计算机进行通讯,而LabVIEW自带的串口函数库中则包含了基本的串口通讯里常用的功能,包含写入、读取以及COM口设置和初始化等等。由于串口通讯传输浮点数存在一定的困难,因此需要对浮点数进行转换才能完整地传送到计算机上。这里采取的方式是把浮点数的前四位有效数字单独提取出来,作为一个单独的字符进行传输。当在LabVIEW上从缓冲区读取以后,再通过转换为无符号字节数组以及字符数组的索引得到该位的数字,乘上其本来相应的权。如此读取四次,将乘上位权后的数加起来就能完整地得到原来的浮点数据。通过一个层叠式顺序结构就能实现读取四个字符数据,再通过运算把这四个为一组的数据还原成一个四位有效数字的浮点数。
3.2 LabVIEW的图像显示
从串口读取数据,并还原成浮点数据以后,可以把这两组浮点数构成两组数组,分别作为XY图的X轴和Y轴用于显示。以传输到LabVIEW上的IC为Y轴,VCE为X轴,构成光耦输出特性图。放置XY图以后,在程序框图中会出现一个拥有一个输入端的图标,两个数组在输入到XY图之前需要添加一个捆绑,才能把两个数组输入作为X、Y轴。另外不同的正向电流数值间的切换,通过在前面板添加旋钮切换的控件来实现。旋钮控件类似于现实当中测量仪器的旋钮,通过转动来选择不同的档位。在程序框图中,旋钮就类似与一个数值输入的控件,代表着在前面板中档位所指着的数值。对于前面板档位的选择,这时候就要参考在数控电流源模块中所输出的电流大小,这就是数控电流源中设置数码管显示的意义。对于此时输出的正向电流,操作者可以在数码管显示的数值上得到反馈,然后就能在LabVIEW上调整相应的档位。
3.3 LabVIEW的数据处理
由CTR的定义,当输出电压保持恒定时,CTR等于直流输出电流IC和直流输入电流IF之比乘上百分数可得,CTR=IC/IF*100%。由于在循环结构中所输出的数据构成一个数组,而作为IC和VCE的显示只能是某个时刻的具体数值,因此加入了索引数组的方法,随机地从数组当中抽取出一个数字来显示,通过这种方法能够得到IC的数据。对于IF。这里采用的方法是把旋钮控件的数值输入作为IF的数值用于CTR的计算中。因为旋钮数值是人为地根据数码管显示而作出的调整,在数值上与输入的IF大小接近。而且免除了在数控恒流源模块中添加串口传输的步骤,简化了电路的结构。
4.仿真与测试数据的记录
以Proteus中光耦为例,型号为:NEC-PS2501-1。因光耦器件正向电压大小的限制,此数控恒流源输出电流的范围为10mA-30mA,初始条件下,输出20mA,可以通过“+”、“-”按键来实现电流值的调整,调整的步距为:5mA,输出的最大值为30mA。采集通讯电路采集的是 UC和UE的数值,可以看到同一时刻下两个A/D分别所采集到的电压数值。通过在单片机上所设置的算法分别计算出VCE和IC的数值。在Proteus的仿真中,只需要添加串口映射模块COMPIM元件,在Proteus软件里,就可直接使单片机与计算机上的LabVIEW相连,不需要另外加MAX232器件进行TTL和RS232电平[4]。在LabVIEW的前面板设置通讯COM口选择、IF输入旋钮、XY图,以及IC、VCE和CTR的实时数值显示,在电路开始工作以后,XY图表显示出光耦的特性曲线。
图2 光耦特性曲线
数值显示框显示旋钮对应正向电流下IC、VCE和CTR的一组实时数值。如图3所示,显示的是在20mA正向电流下的一个瞬时数据。
图3 VCE、IC、CTR的实时数据
调整VCE至一个恒定值(5V),然后将数控恒流源设置成自动步进递增状态,可以在LabVIEW上得到IF-CTR关系图。
图4 IF-CTR关系图
5.结论
由仿真所得的光耦特性曲线图可知,光耦测试仪所测得的光耦特性曲线与光耦器件产品说明书上所标注的输出曲线基本相符,能够利用虚拟仪器较好地测量出光耦器件的输出特性以及实时的电流传输比,是一种专门为光耦器件设计出的一种测量设备。
参考文献
[1]孙德刚,孙光.光耦线性化与线性光耦器件的应用[J].现代电子技术,2004(1):82-83.
[2]姜宇鹏,肖棋文,陈越惠.基于51单片机的数控恒流源设计[M].企业技术开发,2011(12):63.
[3]林静,林振宇,郑福仁.Labview虚拟仪器程序设计从入门到精通[M].北京:人民邮电出版社,2010.7:2,355.
[4]张力,林卫共.Labview及Proteus软件环境下单片机串口通讯的仿真方法[J].电子测量技术,2010,33(4):87-88.
基金资助:2012年广东省级大学生创新创业训练计划项目(1184512276);2013年度广东工业大学校级教育教学改革项目(2013Y014);2014年广东省精品资源共享课建设项目资助(ZYGX011)。
推荐访问: 测试仪 设计 光耦 Labview