高精度多路数据采集系统原理及设计
本文以TI公司的10位串行A/D芯片TLC1549为例,设计具有多通道高精度数据采集系统。
A/D转换在电子测控系统中被广泛使用,温度、压力等非电量的测量,电压、电流等电量的测量,一般都是通过单片机(或其他控制芯片)控制A/D转换实现。在转换速度要求不是太高的情况下,一般都采用串行A/D芯片,占用单片机的口线资源少,串行扩展式测控系统是当今的发展趋势。但串行A/D芯片的模拟通道少,不能满足多路信号的测量.
1 系统方案设计
数据的采集有两种方法实现:A/D转换和V/F转换。从转换方式上,A/D转换又分为积分A/D转换器和逐次逼近式A/D转换器等;从接口形式上又分为并行A/D和串行A/D。V/F转换是将电压信号转换为频率信号,然后测出频率再计算出物理量,它需要用计数器来测量频率,只适合信号较少的场合。
目前在以单片机为核心的测量控制系统中,A/D,D/A、存储器等功能部件流行串行接口,可供选择串行接口芯片的种类也日益增多。本课题采用10位串行A/D芯片TLC1549,它是一款单通道逐次逼近A/D芯片,本课题通过提升它的测量分辨率,使之达到12位的精度,用电子开关扩展输入通道,使其能对八路信号进行数据采集。
1.1 提升A/D分辨率方法
图1是提升A/D分辨率的原理电路,其原理是通过调整其转换的参考电压,并将输入信号分档处理,从而提高测量转换的分辨率。
如参考电压设为5 V时,对5 V满量程转换,分辨率为:d=5/1 024;如果将参考电压设置为2.5 V,对2.5 V满量程转换,分辨率为:d=2.5/1 024。显然后一种情况A/D转换的精度高,是前者的一倍,测量精度达到11位,即将10位的A/D芯片提升到11位A/D的分辨率。以此类推,10位的A/D芯片也可以设计成达到12位A/D分辨率。从图1可以看出,只要能对输入的信号进行分档处理,使输入到A/D芯片的电压信号小于等于1.25 V,将A/D转换的参考电压也设置为1.25 V,则10位A/D转换精度可以达到12位。
1.2 八通道12位数据采集器原理图
TLC1549只有一路模拟量输入通道,为达到设计八个通道要求,通过八选一模拟电子开关扩展其八路通道,本系统用TLC1549设计的八路数据采集器原理框图如图2所示,包括模拟电子开关、量程分档处理、10位串行A/D、显示电路、单片机系统五部分。
2 系统硬件电路设计
2.1 电子开关电路设计
图3为模拟电子开关设计的八路A/D输入通道。模拟电子开关采用CD4051。CD4051是八选一电子开关,图4为其引脚图。A0~A7为八路输入端,A为开关输出端,E为芯片使能引脚,VEE是负电源,VCC为正电源,GND为电源地,S0~S2为八路开关选择控制。由于CD4051的电子开关导通时有100 Ω左右的电阻,为消除开关电阻对输入信号的影响,选通的信号通过跟随器再送给后面的电路,同时提高输入通道的输入阻抗。820 kΩ电阻是为了消除通道悬空时跟随器不稳定输出。本系统中采用AT89S51单片机,通道切换通过单片机P1.0~P1.2口分别控制CD4051的S0~S2引脚,选择其中一路电子开关接通。
2.2 量程分档处理电路设计
2.2.1 量程切换电路
图5为量程切换电路。将电子开关输出的模拟电压分别通过跟随器和三个减法运算电路,减法器的反向输入端分别加固定电压:1.25 V,2.5 V,3.75 V。可以得到四组电压输出信号:V,V-1.25,V-2.5,V-3.75的电压,分别加到模拟电子开关的四个输入端,电子开关仍然用CD4051,在输入信号0~5 V变换过程中,上述四组信号中,必有一组信号在0~1.25 V间,通过对电子开关的控制,使该组信号通过电子开关,再经过跟随器送给A/D芯片进行A/D转换。由于只有4路信号切换,将CD4051的S2接地,S0,S1分别用单片机P1.3,P1.4口控制。选择哪路信号作为A/D转换信号,可以通过图6所示的量程判别电路,用单片机口检测。
2.2.2 量程判别电路
图6为量程判别电路。三个比较器的基准分别取1.25 V,2.5 V,3.75 V,当输入电压大于基准时比较器输出高电平,否则输出低电平,将比较器的输出分别送给单片机的P1.5,P1.6,P1.7口检测。
2.3 显示电路的设计
显示电路采用LCM103,LCM103为10位多功能通用型八段式液晶显示,模块内含看门狗(WDT)/时钟发生器,内置显示RAM,其接口电路如图7所示。CS,RD,WR,DATA分别用P2.0~P2.3口控制,最高位显示通道号,后面4位显示数字量,空一位,最低4位显示电压值,显示每秒刷新一次。
2.4 串行A/D接口电路的设计
串行A/D接口电路采用的TLC1549,它是一个10位的逐次逼近式A/D芯片,其接口电路如图8所示。参考电压接1.25 V,可以将1.25 V以下的模拟量转换10位的数字量,转换的分辨率与5 V转换为12位数字量的分辨率相同,实现了由低分辨率A/D进行高分辨率的A/D转换。实际的转换结果与选择的量程有关,设A/D转换结果的结果为X,则四种状况的实际结果分别为:
X,被测信号<1.25 V,A0接通;
X+1 024,1.25 V≤被测信号<2.5 V,A1接通;
X+2 048,2.50 V≤被测信号<3.75 V,A2接通;
X+3 072,被测信号≥3.75 V,A3接通。
2.5 单片机系统及电源电路的设计
单片机选择AT89S51单片机,不采用扩展电路,直接用单片机的输入输出口线控制外围接口电路。取系统的晶振荡频率为12 MHz,机器周期为1μs。程序存储器空间采用单片机内部的程序存储器。
电源电路由运算放大器构成的减法器等模拟信号处理电路组成,原理上有负电压输出,系统电源应有正负电源,取±12 V,单片机系统需要的+5 V电源由+6 V经LM7805稳压得到。采用初级是220 V次级输出双12 V的电源变压器降压,经过桥式整流、滤波,通过LM7812,LM7912三端稳压块稳压,得到±12 V电源。
3 系统软件设计
图9为设计的A/D转换程序流程图。
4 结语
本设计通过利用10位的串行A/D芯片TLC1549,通过精度提升的方法实现12位A/D转换;控制TLC1549的参考电压和切换输入模拟信号的幅度实现;用CD4051模拟电子开关实现了对串行A/D芯片的输入通道扩展,进而实现了高精度多路数据采集。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)