在系统可编程模拟电路(In System ProgrammabilityProgrammable Analog Circuits,ispPAC)是可编程模拟器件的一种,其内部有可编程的模拟单元(如放大、比较、滤波),他可在不脱离所在应用系统的情况下,通过计算机编程实现模拟单元电路指标参数的调整和模拟单元电路之间的连接等,从而获得功能相对独立的模拟电路。
在系统可编程模拟电路提供以下3种可编程性能:
(1) 功能可编程
在系统可编程器件可实现信号调理(对信号进行放大、衰减、滤波)、信号处理(对信号进行求和、求差、积分运算)、信号转换(数字信号转换成模拟信号)。
(2) 互连可编程
能把器件中的多个功能块进行互连,对电路进行重构,具有百分之百的电路布通率。
(3) 指标特性可编程
能调整电路的增益、带宽和阈值。
ispPAC器件可以被允许反复编程,编程次数可达10 000次。通常,编程软件还提供仿真功能。设计人员可根据系统提供的仿真结果重新修改电路,直至满意为止。然后将编程结果通过isp接口电缆下载至芯片,从而完成了
2 小信号测量系统的实现
2.1 小信号测量系统的硬件框图
小信号的测量历来是智能仪器仪表及测控领域中的关键技术。一般传统的小信号测量系统的硬件框图如图1所示。
在图1中可以看到小信号在测量之前必须被滤波整流和放大,但考虑到放大器本身的漂移,所以还要加入调零网络。如果采用通常的模拟电路搭建方法,将需要6~8个高精密运算放大器和大量的电阻电容。像这样设计的电路调试复杂繁琐,且测试精度不高。
用ispPAC器件替代其中一部分的模拟电路,简化了设计过程,降低了成本。加上单片机和ADC的使用,使得增益可控,并可用LED显示测量值。其框图如图2所示。图中单片机可采用89C51常用8位单片机,ADC是ICL7135 4位半双积分ADC,抗干扰能力较强,输入为差分信号,输出为4位半十进制数0.000 0~±1.999 9,数据采取BCD码动态扫描输出形式。
2.2 用ispPAC10做测量放大器
ispPAC10实现系统前端的模拟测量功能,即对信号整形滤波和放大。在系统可编程器件所用的开发软件为PAC Designer。该软件采用原理图设计输入方式,并可对电路的幅频特性和相频特性直接进入模拟分析。不同的参数(R,C)值可以得到相应的幅频/相频曲线,从仿真曲线上可对原理图设计进行适当修改,直到满足设计的要求。当完成设计输入和仿真操作后,最后一步工作是对PAC器件进行编程。ispPAC器件的硬件编程接口电路是IEEEll49.1-1990定义的JTAG测试接口。ispPAC器件的JTAG串行接口通过编程电缆和PC并口连接,这样就可以对ispPAC10进行下载,电路如图3所示。
信号采用单端输入,为了减少系统本身的零漂,使用简单的精密电阻网络进行零漂的调整,500 kΩ的可调电阻几乎能覆盖可能出现的所有参考电压的偏差。信号输入后,首先经过一个低通滤波器,减少高频杂波的干扰和影响,然后再经过放大,由OUT3输出。为了调整系统本身的零漂,需外输入一个1 mV的小电压,根据ispPAC10的可编程特点,以步进为1 mV达到调整范围-10~+10 mV,这样可以消除PAC器件本身的零漂。当然,如果增益不够的话,可以再级联一级放大器,即:OUT3输出和OUT4输入相连,输出电压由OUT4输出。最后得到一个差分输出信号,送给模数转换器。其中,低通滤波器的设计可用双二次电路用于实现二阶滤波。典型的二阶滤波器传递函数为:
当M=C=0时为低通滤波器;M=D=0时为带通滤波器;C=D=0时为高通滤波器。
2.3 小信号测量系统的电原理图
小信号测量系统的电原理图如图4所示。为了充分利用和扩大ICL7135测量范围以及提高精度,可使用双4路模拟开关C4052,并利用ICL7135的过量程和欠量程示意功能实现了量程的自动切换。
图4中用P3.4控制A/D转换。如果置P3.4=1不变,则ICL7135连续进行A/D转换而不会停止。
如果用软件在P3.4输出一个正脉冲则启动A/D转换,转换完一次便不再进行A/D转换,并不断输出数据。把STB与P3.3(INT0)相连,可实现INT0中断,在A/D转换期间STB为高电平。在A/D转换完毕后,在STB出现5个负脉冲,可以利用STB的下降沿请求中断,每个STB负脉冲可使相应的显示位获得驱动信号,而a8~a1是相应位的BCD码。因此软件设计是采用连续响应5次中断(或进行5次查询),读出5个BCD码的方法。在数据读入后单片机通过查表的方式,将得到的BCD码转换成相应的LED七位显示码,接着通过串行口方式发送给移位寄存器74LS164进行显示。符号位和精度位分别由独立的引脚进行控制。当发现量程过大时会预警,当放大增益不足时会自动切换量程。
3 系统调试
3.1 关于漂移的问题
工作状态中出现漂移时,如果是线性的可以使用调节零漂的方法进行调节;如果是非线性的可以建立与输入电压相关联的步进电压进行调整;如果是离散的可采取软件取平均的方法。
3.2 ICL7135的参数选择
为了抑制交流干扰信号(最大的干扰频率为供电电源的干扰),ICL7135的时钟频率设为fck,应该使:
其中:K为正整数,ff为于扰信号的频率,即50 Hz。
对于ICL7135而言,N=10 000,在工业现场,考虑到通用性,K取值为2,则fck=250 kHz。假设单片机的工作频率为6 MHz,那么ALE脚输出的信号为晶振的6分频即1 MHz,然后通过计数器74LS163进行4分频就可以得到ICL7135所需要的工作频率250 kHz
假设满量程为2 V,那么根据数据手册可得参考电压VREF=1 V;积分电阻Rint=Vxm/20μA=100 kΩ;积分电容Cint≥N*20 μA/(fckVm)=0.2μF,其中Vm为积分器输出的可能最大值,对于ICL7135而言Vm在3.5~4 V之间。调零电容和基准电压滤波电容应该取足够大的值,一般为1μF,而且要使用优质电容。其余的电容可按常规方法选用,均取0.1μF。
3.3 单片机的外围电路
应该注意NMOS和CMOS结构的单片机相应的时钟电路和复位电路是不同的,否则会引起不必要的器件损坏。图4给出的是NMOS型单片机的电路,在一些输入输出口上需要加上上拉电阻(图中未画出)。为了确保系统的稳定运行,在可能的情况下,还可以使用硬件看门狗。
3.4 数字和模拟混合电路
对于数字和模拟混合的电路,布线时应避免相互的干扰,而作为小信号测量系统,这一点尤为重要。在必要之处应加上隔直和滤波电容。
4 结 语
在系统可编程模拟器件结合单片机等系统构成的各种应用系统,特别是用在系统可编程模拟器件构成的各类智能化测量系统,由于体积小、功能多、精度高、使用方便灵活,已成为测量的发展方向。用在系统可编程模拟器件设计的小信号测量系统实现了其整流滤波和放大的功能,且电路的调试简单、测试精度高。随着模拟可编程技术的不断进步和应用需求的增加,可编程模拟器件的类型和品种也会日益丰富和完善。