156
福建电脑2008年第10期
数据采集系统中传感器输出规一化的实现
朱成全
(泉州师范学院理工学院福建泉州362000)
摘要】【:在主从式数据采集系统经常要用到各类模拟量输出不一致的传感器,由于其输出不一致,造成了处理上的困难。本文采用软硬件结合设计了电平调节模块,用户操作PC机向主单片机AT89S52发送上升或下降命令,主单片机AT89S52再转发给电平调节模块,使相应传感器通道输出电压升高或降低,实现对其输的规一化。
关键词】【:主从结构数据采集单片机传感器规一化0、
引言在数据采集系统当中,经常要用到各类模拟量输出型传感
器,各类传感器的输出不一致,有的输出为0-5V,有的输出则是±2.5V。这会造成在存储及应用处理上存在很多的不便。为了对其输出进行规一化,笔者在开发过程中,采用软硬件结合设计了电平调节模块。
1、
电平调节模块的原理为了让系统可配接量程为0-5V或±2.5V的各类模拟量输出型传感器,要将不同传感器的输出规一化,需进行中点电平的偏移调节,即将各路传感器输出的中点电平均调节到2.5V。
输入放大器AD620是一种典型的高性能、低功耗的通用型仪用放大器,它具有以下基本特点:外围元件少,使用方便仅需一个外接电阻RG调整增益,可获得1~1000倍的任意增益;电源电压范围宽,为+2.3V~+18V(对称的正负电源)[1]。
其参考电压输入端⑤脚可以接地,也可以外接一个参考电压实现电平偏移。当直接接地时,输出电压Uo的零位(中点)为0V;当接参考电压UREF时,输出电压Uo的零位(中点)为UREFV。[1]在微机应用系统或一般数字电路应用系统中,可以使用一个D/A(数/模)转换器提供参考电压。D/A(数/模)转换器的输出是一个电压且输出电阻较小,输入是一组数码,根据输入数码的不同,可以相应地改变输出电压(即提供给AD620⑤脚的参考电压),使用这种方案可以由程序控制电平偏移。
D/A转换器MAX521是两通道串行输入并行输出D/A转换器[2]。D/A(数/模)转换器输入是一组数码,输出是一个电压且输出电阻较小,根据输入数码的不同,可以相应地改变输出电压。将其输出端接到AD620⑤脚提供参考电压,使用这种方案可以由程序控制电平偏移。
图1电平调节电路
图2电平调节原理示意图
计算机只能输入0-5V的电压信号,因此需将输出为±2.5V的传感器的输出中点电压"垫高"2.5V,即需进行电平调节。
电平调节是一个人-机系统闭环控制的过程。系统连接好后,人通过观察PC机电平调节界面上显示的电平值,根据需要,
通过向AT89S52单片机发送,并由其转发给AT89S2051单片机调高或调低命令,AT89S2051单片机再控制D/A转换器MAX521来调节仪器仪表用放大器AD620的参考电压,由此影响AT89S52单片机的输入信号,进而调高或调低PC机上显示的电平值[3][4][5]。原理示意图见图2。2、PC机电平调节界面
图3电平调节界面
在该框下用滑块高度及数字显示出16个通道的当前电压。当将所有的模拟量输出型传感器接入插座并上电后,操作者可用"TAB"键选择欲调的通道,用"↑"、"↓"键来调节该通道的偏移电压。当用户按下"↑"或"↓"键时PC机向主单片机发送上升或下降命令,主单片机再转发给电平调节模块,使相应通道电压升高或降低。按住"↑"或"↓"不放可连续调节,当该通道调至所需的电压值后,再用"TAB"键切换至下一通道,或用"SHIFT"+"TAB"键切换至上一通道,用类似的方法进行调节,所有通道调节完毕后,点击"确认"键退出,系统将存储本次调节的结果。3、
电平调节模块与主单片机AT89S52的通讯3.1电平调节模块与主单片机AT89S52的通讯协议
为节省I/O端口资源,电平调节模块与主单片机AT89S52之间采用两根线进行串行通讯,P3.1作为时序线,P3.0作为数据线。时序图如下:
图4时序图
3.2主单片机AT89S52向电平调节模块发送数据
根据通讯协议,编写发送程序,当AT89S52收到PC机的命
令后,判断是不是自己的命令,如不是则调用该程序转发给电平调节模块或其他模块,关键程序段如下:
MOV
A,COMD;取得命令
SETBS_DATA;设置起始状态SETBS_CLKLCALLD;延时CLRS_DATA;SETBS_CLKLCALLDCLR
S_CLK