数据采集控制器输入输出接口

本文作者:admin       点击: 2007-03-13 00:00
前言:
摘要:本文详细论述了数据采集控制器包括数字输入/输出、模拟输入/输出接口电路等部分,并介绍了一些抗干扰措施。
关键词:数据采集控制器、数字输入/输出、模拟输入/输出、抗干扰。
本文的数据采集控制器是基于Rabbit2000系列单板机的一个高性能的、Dynamic C语言可编程的系统,数据采集控制器包括数字输入/输出、模拟输入/输出以及以太网接口等部分,硬件结构框图如图1所示。
                 
数字量输入输出接口

数字量输入接口完成对各种开关量和数字量的采集,例如按键的输入、行程开关状态的采集等。数字量输出接口输出开关控制量,完成对一些执行机构的控制,在本系统中,主要是对一些继电器状态的控制。为了提高系统的抗干扰能力,数字量输入输出接口全部采用光电耦合的方式。
设计中扩展了一片8255芯片,具体的电路图如图2所示,图中拨码开关用于设定本机地址。
8255在单片机应用系统中被广泛用作可编程外部I/O扩展接口,它的主要逻辑结构括:
1、双向8位的数据总线驱动器,用于和单片机的数据总线相连,以实现单片机和8255之间的数据传送。
2、并行I/O端口,A口、B口和C口,每个8位I/O端口功能完全由编程决定,每个口都具有自己的特点。
3、读/写控制逻辑用于管理所有的数据、控制字和状态字的传送,它接收单片机的地址线和控制信号来控制各个口的工作状态。
8255有3种工作方式,分别是基本输入输出方式、选通输入输出方式和双向总线方式。在本设计种,A口用于数字量输出,B口、C口用于开关量的输入,A口、B口、C口均工作在基本输入输出方式。
A口输出的信号经过光电耦合器隔离后驱动三极管,推动继电器动作,如图3所示,由于篇幅有限,这里只画出一路继电器输出。图中的二极管D401是为了防止继电器在动作的时候线圈所产生的高压损坏三极管T401而设置的。

模拟量输入接口

模拟量输入接口用于输入各种传感器信号,如温度信号、湿度信号等。输入为标准的4~20mA信号。
设计中采用了TLC2543串行A/D转换器,TLC2543芯片是美国德州仪器公司(TEXAS INSTRUMENTS)于近几年推出的一种性能价格比较优的12位A/D转换芯片,自1998年起在我国开始推广应用。TLC2543与微处理器芯片的接口部分有5个引脚,分别是:时钟输入CLK(I/O CLOCK)、串行控制字输入DIN(DATA INPUT)、片选输入、A/D转换串行数据输出DOUT(DATA OUTPUT) 、转换结束电平输出EOC。具体的电路实现如图4所示。图中MAX873是基准电压源,产生+2.5V的基准电压信号。
从编程角度看,TLC2543内部寄存器有输入数据寄存器与输出数据寄存器。输入数据寄存器存放从DIN端移入的控制字。输出数据寄存器存放转换好的数据,从DOU端移出。控制字为从DIN端串行输入TLC2543芯片内部的8位数据,它告诉TLC2543要转换的模拟量通道、转换后的输出数据长度、以及输出数据的格式。经分析可以得出由于TLC2543为12位A/D转换芯片,一般定义在12位输出,但是为了与Rabbit2000相配合,定义在16位输出,但实际转换结果仍为12位,只不过在数据传送过程中4个LSB位被置为0。
可以用四种传输方法使TLC2543得到全12位分辩率,每次转换和数据传递可以使用12或16个时钟周期。一个片选脉冲要插到每次转换的开始处,或是在转换时序的开始处变化一次后保持为低,直到时序结束。图5显示每次转换和数据传递使用16个时钟周期和在每次传递周期之间插入的时序,图6显示每次转换和数据传递使用16个时钟周期,仅在每次转换序列开始处插入一次的时序。
 
模拟量输出接口

这里设计了两路4~20mA电流输出,电路图如图7所示。D/A转换器选用的是TLC5618,它是带有缓冲基准输入的双路12位数模转换器,通过3线串行总线,单片机可对TLC5618实现数字控制。器件接收的用于编程的16位字中,前4位规定数据的传送模式,后12位形成模拟输出。数字输入端带有斯密特触发器,具有较高的噪声抑制能力。
图7为TLC5618的时序图。当片选CS信号为低电平时,输入数据由时钟定时,并以最高有效位在前的方式读入16位移位寄存器。在SCLK输入信号的下降沿,数据被移入寄存器A或B。当片选信号CS上升沿到来时,再把数据送至12位D/A转换器。16位数据在传送时,前4位为可编程控制位,后12位为数据位,用于模拟数据输出。
具体的电路实现如图8所示。
TLC5618输出电压范围是0~5V,为了输出4~20mA的标准工业控制信号,必须采用电压/电流变换电路。该变换电路由运放U24、三极管T601和T602组成。运算放大器除了放大作用外,还兼有比较器的功能,它将输入电压和反馈电压进行比较。T601为倒相放大级,T602为电流输出级,Ub为偏置电压,加在运算放大器的同相端,可以实现零点迁移。输出电流经电阻R609得到反馈电压,经电阻R605、R606加到运算放大器的两个输入端,形成放大器的差动输入信号,由于具有深度的电流串联负反馈,因此具有较好的恒流特性。下面根据理想运算放大器的特征推导输出电流与输入电压之间的关系。
由于R605、R606远远大于R609+R(R为负载电阻),可以认为电流I0全部流过R609。利用叠加原理,分别求得运算放大器的同相端和反相端电压为:
(1)
               

(2)

对于理想的运算放大器,当开环增益足够大时,认为同相端电压和反相端电压相等,并取,可以得到

(3)

式中 ,R605取20K,R602取100K。分别将
和代入式(3),可以得到一个方程组,求解该方程组,得到。

抗干扰措施和PCB板设计

为了避免或减小这些干扰对统造成的影响,提高系统的可靠性,必须采取必要的抗干扰措施:
1. 电源的处理
稳压器的输入、输出端设置高频和低频的滤波电容;在容易受到干扰的芯片的供电引脚使用磁珠,所有芯片的供电引脚加装高频电容。

2. 保证数据采集的可靠性
采取数字滤波等软件措施保证数据采集的可靠性。

3. 使用“看门狗”定时器。
在设计印刷电路板的时候,主要注意下面几个问题。
(1)、元器件封装类型的选择
设计本系统的时候,我们尽量选择了贴片封装的元件,一方面减小了电路
板的尺寸,使得元器件的排列比较紧凑,提高了印刷电路板的电气性能;另一方面可以加强印刷电路板的机械结构。
(2)、板上元器件的布局
板上元器件的布局也很重要,良好的布局可以提高系统工作的可靠性,同时也可以降低布线的复杂程度,对于以高速系统总线相连的器件,彼此之间的距离一定要尽量短,功能类似的器件尽可能的放在板上同一区域。
(3)、电源质量与分配
在设计印刷电路板的时候,能给各个单元电路提供高质量的电源,就会
使系统的稳定性大幅度提高。在本控制系统印刷电路板的设计过程中,如何提高电源的质量,主要采取了下面一些措施: 
①合理的电源滤波。为提高系统的电源质量,消除低频噪声对系统的影响,在电源进入印刷电路板的位置和靠近各器件电源引脚处加上滤波器,以消除电源的噪声。本控制系统采用可充电的镍镉电池供电,电源本身的噪声比较少,但滤波器的添加还是有必要的,常用的方法是在上述位置上加上几十到几百微法的电容。同时,还要注意元器件工作时产生的高频噪声,具体的做法是在靠近器件电源引脚的地方,在电源和地之间加上0.1μF左右的电容。对于一些易受干扰的器件,电源的引入要使用磁珠。
②要注意电源的分配。在印刷电路板上,电源的供给一般采用电源总线
(双面板)或电源层(多层板)。
(4)、同类型信号线的分布
在各种信号线中,总有相当一部分是相同类型的,例如数据线、地址线。
对这些相同类型的信号线应该成组、平行分布,同时要注意它们之间的长短差异不要太大,采用这种布线方式,不但可以减少干扰,增加系统的稳定性,还可以使布线变得简单,印刷电路板的外观也比较美观。在本系统中,成组的信号线主要是数据线和地址线,我们的具体做法是,在元器件位置确定后,首先完成成组信号线的布线,尽可能做到成组、平行分布,同时保证同类型的信号线的长度和每根信号线使用过孔(Via)的数量尽可能的相同。