0 简介
EWB(电子工作台)是模拟数字电路仿真软件,具有界面直观、操作方便、分析方法多等优点。非常适合于电子工程师和学生使用。EWB软件有绿色版,不必安装,解压后即可使用,点击wewb32.exe运行软件。在主界面中,以图形方式显示了所用的各种操作功能,包括:元件库、仪器仪表、分析方法等,关于 EWB的具体内容,请参考书籍《实用通信与电子线路的计算机仿真》。分析方法的应用往往给试验带来极大的方便,甚至比真实的实验更方便,本文将运用的 EWB的瞬态分析和温度扫描分析来设计一款价廉实用的测温电路。
1 电路原理与设计
本文所述的测温电路针对水温的测量(可用于类似的场合),测量范围是0~100℃。通常温度测量的方法是用温度传感器将温度信号经过A/D转换器送到单片机中,从而取得温度数据。如果要求测量显示的精度高(达到10位以上),则成本大大增加。图1是本文的测温电路原理图,电路中没有采用专用的温度传感器,也不用A/Di转换的方式,而是采用三极管Q1作为测温元件,利用其pn结的温度电压特性,测得温度的变化。将温度电压信号和R2、C1积分信号送到比较器输入端,在R2、C1开始充电后,直到其电压超过温度电压时,比较器翻转,用单片机测量翻转前的充电时间,即可测量温度的电压值。下面通过对RC积分和温度测量的仿真,详细叙述测量原理。
图2是三极管pn结测温电路,根据三极管手册参数,pn结两端的电压随温度变化。本例测量水温,温度范围是0~100℃。在实际应用中需要知道对应的电压变化范围和起始、终止点的电压值。用EMB进行温度扫描分析,具有直观、快捷的优点。在EMB中画出图2电路,选择主菜单的分析(analysis)选项,选择其中的温度扫描(temperature sweep)功能,在打开的对话框中设置温度的起始和终止范围,其中starttemper-ature(起始温度)设置为0,end temperature(终点温度)设置为100,sweep type选择linear,output node选择要仿真的节点,其它选择默认,然后点击simulate(仿真),得到仿真结果如图3所示,单击cursors(游标),可以精确测量曲线各点坐标的x、y(温度、电压)值,实测结果是,对应x值的0~100℃范围,y值是0.642~0.442V,电压变化范围是200mV,变化规律是线性的。
图4是R、C积分电路,在通电的初始时刻,电容两端的电压为0V,以后随着对电容的充电,电容两端的电压将增加,其电压的变化规律是:
由式(1)可知,Uc不是线性的,但是如果R、C的数值很大,则Uc接近于线性,这个过程可以用数学方法求出Uc的曲率来判断线性,最终确定R、C的大小,但是过程比较麻烦而且不直观。如果用EWB仿真,则方便、快捷、直观,针对图4电路,选择主菜单的analysis下的transient(瞬态)仿真,在打开的对话框中修改start time(开始时间)为0,endtime(结束时间)为0.02s,将测量的节点添加到nodes for analysis对话框中,然后点击simulate,得到图5的结果。打开游标测得x、y的数据是:当电压变化范围是0.442~0.642V时,对应的时间范围是4ms。
由温度仿真图形和R、C仿真图形可知,两者都是线性的,将温度仿真与R、C仿真结合,确定温度与R、C充电时间的关系,当温度变化从0~100℃时,对应的R、C充电时间变化范围是8~12ms,设温度变量为tem,时间变量为t,则有
t的单位是ms。
为了更精确地显示测量值,采用定点运算方法,增加2位小数,则式(2)修改为
t的单位是μs
tem为带2位小数的温度值。
如果用单片机测量出时间的变化过程,就可以求出对应的温度值。
图6是完整的测温电路。单片机采用89c2051,4位数码管显示温度数值,显示精度是2位小数。89c2051自带一个比较器,比较器的输入端口是 P1.0和P1.1,输出端是P3.6,三极管的温度测量值接到P1.1端口,R、C充电电路与P1.0连接,P1.0既是比较器的输入端,同时还是单片机的输出端口,它具有单片机端口的性质,即:P1.0输出高电平时,相当于内部集电极开路状态。在此,利用该功能实现电容充放电的控制,不测量温度时,P1.0输出低电平,电容两端电压为0V。测量温度时,首先启动T0计数器,然后将P1.0置高电平,R2给C1充电,此时不断地判断P3.6的状态,直到P1.O的电压大于P1.1的电压,比较器输出端P3.6翻转,取出计数数值(如果单片机采用12MHz晶体,每记一个数恰好是1 μs),从而得到了时间值,根据式(3)可以得到温度值。程序代码如下:
2 结论
综上所述,EWB在测温电路中所起的作用,主要体现在单元电路的仿真,包括温度扫描分析和RC瞬态分析。这些工作如果用真实测试来完成,都是很麻烦的,需要很多苛刻的条件,在业余的条件或一般条件下,几乎是不可能完成的,而运用EWB软件顺利地达到了目的。