原创 基于单片机的智能化模拟信号预处理系统

2009-8-13 18:55 1948 8 8 分类: MCU/ 嵌入式
摘 要 以51单片机为核心,对双通道模拟信号实施程控衰减、放大、滤波等预处理,具有本地、远程、自动等控制功能。
+Od"iaJ R"r0  关键词 模拟信号 预处理 单片机

1 引 言
7e5kq%r*pPA0  由传感器输出的模拟信号一般要作放大、衰减、滤波等预处理之后,才能送入ADC进行模/数转换。在自动控制、智能仪表等领域中,要求这一处理过程可由软件控制,自动调整放大或衰减倍数,设置低通滤波器的截止频率,并且,还要将这些参数传送给CPU,以便修正测量结果;大多数市售的成品数据采集板都不具备模拟信号的预处理功能,使用时必须外接人工控制的放大、滤波装置,无法实现自动化。作者正是为了解决这些问题,才开发了这套基于单片机的智能化模拟信号预处理系统,当然,该系统也可以作为一般的放大器、滤波器使用。

Pw0AuR0

2 硬件电路电子园51单片机学习网2k tU`^
  图1为模拟信号预处理电路的简图。由双电流输出型DAC芯片AD7528和运放构成程控放大/衰减器,其原理是利用DAC内部的R-2R电阻网络,一个DAC作为运放的输入电阻,另一个作为反馈电阻。R-2R的其等效电阻可写为:
+s|,J._5H}0  RDACA=256RLDA/NA;RDACB=256RLDB/NB电子园51单片机学习网X8R7LC j{)i/Z
  其中RLDA和RLDB分别为DAC A和B的R-2R梯形网络电阻,NA和NB为十进制的DAC输入数字(1~255)。电路的增益为:Vout/Vin=-(RLDB/RLDA)×(NA/NB)。AD7528为双精密匹配的DAC,其中RLDB=RLDA,所以,电路的增益为:Vout/Vin=-NA/NB,可见,它完全由输入的数字量决定。所以,这个电路和不需要外接精密电阻即可获得精确的放大倍数。放大范围为1/255~255(-48dB~+48dB)。两个AD7528的片选信号由译码器分别提供,因此,双通道的放大倍数可以独立设置。电子园51单片机学习网eh3G5y1_Min3pJ
  经放大或衰减后的模拟信号通过缓冲后,输入到开关电容滤波器RF5609中。RF5609是七极点、六零点的椭圆函数低通滤波器,截止频率为工作时钟频率的百分之一,可变范围为0.1Hz~25kHz,通带内波动0.2dB,阻带衰减100dB/倍频程。也可以使用MAXIM公司的 MAX291~295系列开关电容低通滤波器。滤波器的工作时钟由可编程定时/计数器8254A提供。8MHz晶体经振荡电路为8254A提供输入时钟, 8254A工作于方波发生器方式,由OUT0和OUT1分别提供给通道1和2的滤波器工作时钟,因此,两个通道可以设置相同的或不同低通截止频率。电子园51单片机学习网1Z!N[{|5S,~(p D
  滤波器之后的RC电路用以消除工作时钟所带来的干扰。预处理后的模拟信号经缓冲器后输出。

0J1@F2a(Y2W@;f0

50a.gif (2087 bytes)电子园51单片机学习网Nk_C AA)r


图1 模拟信号预处理电子园51单片机学习网/p*Zqz4Pa5InL%i


  图2为键盘和显示器电路,由8255的PA、PB经驱动后控制6位LED数码显示器;PA和PC控制18个键的键盘,其中包括数字键“0~9”、除号 “÷”、上翻“Up”、下翻“Down”、本地/远程“Local/Remote”、放大器/滤波器“PGA/LPF”、通道 “Channel1/Channel2”、自动设置“Auto”和回车键“Enter”。

/j*x:s%L'k-m"Fz0

50b.gif (2643 bytes)

j9Oqr1V2@ x0

图2 键盘和显示器

s XJU-aJ*~0

  图3为CPU电路。采用8031CPU,EPRO-M2764作为程序存储器,也可以由8751替代。系统运行过程中没有大量的数据需要存储,故不设数据存储器。由A13~A15三根地址线经74LS138译码器译码,形成CS0~CS4片选线,分别控制8254、两片AD7528、8255和DAC-0808。设置DAC的目的在于,当系统设定为“自动设置”时,可根据要求的输出模拟信号电平或ADC的半量程值,由本系统自动调整放大器的放大倍数。另外,设置了RS232收发电路,以便远程控制。电子园51单片机学习网s z wc)F_Tvn


50c.gif (8037 bytes)电子园51单片机学习网{!TSyP5y$V


图3 CPU电路电子园51单片机学习网 U1P"P.jer


3 软件流程
2tH o?5Ge0  主要软件可分为:“本地控制”软件、“远程控制”软件和“自动设置”软件三部分。图4为“本地控制”流程。以“LDCAL”表示系统处于“本地控制” 状态。用户可以通过键盘分别设置双通道的放大倍数和低通滤波器的截止频率,“衰减1/200”显示为“1-200”,输入是1÷200。

nYd'v;d:|nFJD0

6136_200904061949484W31w.gif

e?lWgc?`(]}0

图4 “本地控制”流程图

P4G U#s ^__.W0

  图5为“远程控制”流程。以“232C”表示通过RS232串行口,由主控制机控制本系统。只识别主控机以数字0~4形式发送的5条命令,并作出相应的动作。当主控机要求本系统“自动设置”时,在自动设置好放大倍数后,还会将设定的值传送给主控机,以便标定用。注意,本系统不能自动设置低通滤波器的截止频率,只能使用确省值或在此之前设定的值。

'CGq/A$YI:s1i0cN-t;M;U0

6136_200904061949485v44D.gif

a:Y {j(Y$?} L` x!jh0

图5 “远程控制”流程图电子园51单片机学习网pkvJ:x `a~


  图6为“自动设置”流程。根据主控机发送的或键盘设定的放大器输出电压和ADC0800的量程范围(±10V),可计算出需要采入的数值。例如,设定输出电压为2500mV,则采入的数据对于正电压要大于或等于192,对于负电压要小于或等于64,如果未达到,则再增加一级放大倍数,继续采集和判断。虽然放大倍数可能以1/255的步长递增,但为了加快速度,可以以较大的步长递增,或者以等比序列递增。

#uTPUG0

51b.gif (12259 bytes)

4?dQ Y`_0

图6 “自动设置”流程图

#Q7z;e@r!Kz0

4 总 结
;n3a}@ ^M({ M0  本系统将模拟信号的预处理与单片机有机地结合起来,以其完善的控制功能实现了模拟信号的智能化处理,已在设备的改造、自动控制、智能仪器仪表等的研究和开发等工作中发挥了出色的作用。电子园51单片机学习网1a Ty fk


5 参考文献电子园51单片机学习网Rs'I@BQ%A
 [1]何立民.MCS-51系列单片机系统设计.北京:北京航空航天大学出版社,1993电子园51单片机学习网n X%mS(]2I i
 [2]吕俊芳.传感器接口与检测仪器电路.北京:北京航空航天大学出版社,1994

Peg5Fm LS0
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
8
关闭 站长推荐上一条 /3 下一条