资源预览内容
第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
第9页 / 共30页
第10页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Ch.8 模拟量的输入输出,本章内容 模拟量输入输出通道的组成 A/D转换器 原理及连接使用方法,模拟量I/O接口的作用: 实际工业生产环境连续变化的模拟量 例如:电压、电流、压力、温度、位移、流量 计算机内部离散的数字量 二进制数、十进制数 工业生产过程的闭环控制,概述,模拟量,D/A,传感器,执行元件,A/D,数字量,数字量,模拟量,模拟量输入 (数据采集),模拟量输出 (过程控制),计算机,8.1 模拟量I/O通道的组成,模拟接口电路的任务,模拟电路的任务,00101101,10101100,工 业 生 产 过 程,传感器,放大 滤波,多路转换 & 采样保持,A/D 转换,放大 驱动,D/A 转换,输出 接口,微 型 计 算 机,执行机构,输入 接口,物理量 变换,信号 处理,信号 变换,I/O 接口,输入通道,输出通道,模拟量输入通道,传感器(Transducer) 非电量电压、电流 变送器(Transformer) 转换成标准的电信号 信号处理(Signal Processing) 放大、整形、滤波 多路转换开关(Multiplexer) 多选一 采样保持电路(Sample Holder,S/H) 保证变换时信号恒定不变 A/D变换器(A/D Converter) 模拟量转换为数字量,模拟量输出通道,D/A变换器(D/A Converter) 数字量转换为模拟量 低通滤波 平滑输出波形 放大驱动 提供足够的驱动电压,电流,8.3 模/数(A/D)转换器,用途 将连续变化的模拟信号转换为数字信号,以便于计算机进行处理。 常用于数据采集系统或数字化声音。 A/D转换的四个步骤 采样保持量化编码 采样/保持:由采样保持电路(S/H)完成 量化/编码:由ADC电路完成(ADC:AD变换器),1) 采样和保持,采样 将一个时间上连续变化的模拟量转为时间上断续变化的(离散的)模拟量。 或:把一个时间上连续变化的模拟量转换为一个脉冲串,脉冲的幅度取决于输入模拟量。 保持 将采样得到的模拟量值保持下来,使之等于采样控制脉冲存在的最后瞬间的采样值。 目的: A/D转换期间保持采样值恒定不变。 对于慢速变化的信号,可省略采样保持电路,采样保持电路(S/H),由MOS管采样开关T、保持电容Ch和运放构成的跟随器三部分组成。,采样控制信号S(t)=1时,T导通,Vin向Ch充电,Vc和Vout跟 踪Vin变化,即对Vin采样。S(t)=0时,T截止,Vout将保持前一 瞬间采样的数值不变。,采样保持电路的波形,Vin,S(t),Vout,进行A/D转换时所用的输入电压,就是对保持下来的采样电压(每次采样结束时的输入电压)进行转换。,采样周期的确定,采样通常采用等时间间隔采样。 采样频率fs不能低于2fimax(fimax为输入信号Vin的最高次谐波分量的频率); fs的上限受计算机的速度、存储容量、器件速度的限制。 实际中一般取fs为fimax的4-5倍。,2) 量化和编码,量化就是用基本的量化电平的个数来表示采样到模拟电压值。即把时间上离散而数值上连续的模拟量以一定的准确度变换为时间上、数值上都离散的具有标准量化级的等效数字值。(量化电平的大小取决于A/D变换器的字长) 只有当电压值正好等于量化电平的整数倍时,量化后才是准确值,否则量化后的结果都只能是输入模似量的近似值。这种由于量化而产生的误差叫做量化误差。量化误差是由于量化电平的有限性造成的,所以它是原理性误差,只能减小,而无法消除。为减小量化误差,根本的办法是减小量化电平(即增加字长)。 编码是把已经量化的模拟数值(它一定是量化电平的整数倍)用二进制码、BCD码或其它码来表示。,A/D转换器的分类,根据A/D转换原理和特点的不同,可把ADC分成两大类:直接ADC和间接ADC。 直接ADC是将模拟电压直接转换成数字量,常用的有: 逐次逼近式ADC、计数式ADC、并行转换式ADC等。 间接ADC是将模拟电压先转换成中间量,如脉冲周期T、脉冲频率f、脉冲宽度等,再将中间量变成数字量。常见的有: 单积分式ADC、双积分式ADC,V/F转换式ADC等。,各种ADC的优缺点,计数式ADC:最简单,但转换速度最慢。 并行转换式ADC:速度最快,但成本最高。 逐次逼近式ADC:转换速度和精度都比较高,且比较简单,价格低,所以在微型机应用系统中最常用。 双积分式ADC:转换精度高,抗干扰能力强,但转换速度慢,一般应用在精度高而速度不高的场合,如测量仪表。 V/F转换式ADC:在转换线性度、精度、抗干扰能力等方面有独特的优点,且接口简单、占用计算机资源少,缺点也是转换速度慢。在一些输出信号动态范围较大或传输距离较远的低速过程的模拟输入通道中应用较为广泛。,8.3.1 工作原理及技术指标,逐次逼近型A/D转换器 结构:由D/A转换器、比较器和逐次逼近寄存器SAR组成。见P360(340)页图。,VIN,-,+,逐次逼近寄存器,8位 D/A转换器,Vc,比较器,数字量输出,置位/复位控制电路,模拟量输入,D0D7,置数选择逻辑,脉冲源,工作原理,类似天平称重量时的尝试法,逐步用砝码的累积重量去逼近被称物体。 例如: 用8个砝码20g,21g,27g,可以称出1255g之 间的物体。现有一物体,用砝码称出其重量(假定重量为176g)。,1)ADC从高到低逐次给SAR的每一位“置1”(即加上不同权重的砝码),SAR相当于放法码的称盘; 2)每次SAR中的数据经D/A转换为电压VC ; 3)VC与输入电压Vi比较,若VCVi,保持当前位的1,否则当前位置0; 4)从高到低逐次比较下去,直到SAR的每一位都尝试完; 5)SAR内的数据就是与Vi相对应的2进制数。,主要技术指标,精度 量化间隔(分辨率) = Vmax/电平数(即满量程值) 例:某8位ADC的满量程电压为5V,则其分辨率为 5V/255=19.6mV 量化误差: 用数字(离散)量表示连续量时,由于数字量字长有限而无法精确地表示连续量所造成的误差。(字长越长,精度越高) 绝对量化误差 = 量化间隔/2 = (满量程电压/(2n-1)/2 相对量化误差 = 1/2 * 1/量化电平数目 * 100% 例:满量程电压=10V,A/D变换器位数=10位,则 绝对量化误差 10/211 = 4.88mV 相对量化误差 1/211 *100% = 0.049%,主要技术指标(续),转换时间 转换一次需要的时间。精度越高(字长越长),转换速度越慢。 输入动态范围 允许转换的电压的范围。如05V、-5V+5V、 010V等。,典型的A/D转换器简介,ADC0809 8通道(8路)输入 8位字长 逐位逼近型 转换时间100s 内置三态输出缓冲器(可直接接到数据总线上) 外部引脚见教材p359,引脚功能,D7D0:输出数据线(三态) IN0IN7:8通道(路)模拟输入 ADDA、ADDB、ADDC:通道地址(通道选择) ALE:通道地址锁存 START:启动转换 EOC:转换结束,可用于查询或作为中断申请 OE:输出允许(打开输出三态门) CLK:时钟输入(10KHz1.2MHz) VREF(+)、VREF(-):基准参考电压,ADC0809内部结构,START EOC CLK,OE,D7 D0,VREF(+) VREF(-),ADDC ADDB ADDA ALE,IN0,IN7,比较器,8路模拟开关,树状开关,电阻网络,三态输出锁存器,时序与控制,地址锁存及 译码,D/A,8 个模拟输入通道,8选1,逐位逼近寄存器SAR,工作时序,ADC0809的工作过程,根据时序图,ADC0809的工作过程如下: 把通道地址送到ADDAADDC上,选择一个模拟输入端; 在通道地址信号有效期间,ALE上的上升沿使该地址锁存到内部地址锁存器; START引脚上的下降沿启动A/D变换; 变换开始后,EOC引脚呈现低电平, EOC重新变为高电平时表示转换结束; OE信号打开输出锁存器的三态门送出结果 。,ADC0809与系统的连接,模拟输入端INi 单路输入 模拟信号可连接到任何一个输入端; 地址线可根据输入固定连接;也可以由CPU给一个固定地址。 多路输入 模拟信号按顺序分别连接到输入端; 要转换哪一路输入,就将其编号送到地址线上(动态选择)。,单路输入时,ADDC ADDB ADDA,IN4,ADC0809,输入,多路输入时,ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,输入0 输入1 输入2 输入3 输入4,CPU指定 通道号,+5V,地址线ADDA-ADDC 多路输入时,地址线不能固定连接到5V或地线,而是要通过一个接口芯片与数据总线连接。接口芯片可以选用: 锁存器74LS273,74LS373等(要占用一个I/O地址) 可编程并行接口8255(要占用四个I/O地址) CPU用一条OUT指令把通道地址通过接口芯片送给ADC0809,用锁存器作为ADC0809的接口,用8255作为ADC0809的接口,数据输出线D0-D7 内部已接有三态门,故可直接连到DB上 也可另外通过一个外部三态门与DB相连 上述两种方法均需占用一个I/O地址,D0-D7,ADC0809,DB,OE,来自I/O译码,D0-D7,ADC0809,DB,OE,来自I/O译码,直接与DB相连,通过三态门与DB相连,74LS244,+5V,DI,DO,E1# E2#,地址锁存信号ALE和启动转换信号START 两种连接方法: 分别连接:用两个信号分别进行控制需占用两个I/O端口或两个I/O线(用8255时); 统一连接:用一个脉冲信号的上升沿进行地址锁存,下降沿实现启动转换只需占用一个I/O端口或一个I/O线(用8255时),参见教材p362图。,ADC0809,ALE START,独立连接,来自I/O译码1,来自I/O译码2,ADC0809,ALE START,统一连接,来自I/O译码,转换结束EOC 软件延时等待(比如延时1ms)不用EOC信号 CPU效率最低,只能按最大转换时间延时 简单,容易实现 软件查询EOC状态 EOC通过一个三态门连到数据总线的D0(或D1、D2等) 三态门要占用一个I/O端口地址 CPU效率低 把EOC作为中断申请信号,向CPU申请中断 在中断服务程序中读入转换结果,效率高,D0,IN0,A15-A0 IOR# IOW#,D7-D0,D7-D0 EOC OE START ALE ADDC ADDB ADDA,译 码 器,ADC0809,一个连接实例(用查询方式),模拟信号输入,进行一次A/D转换的程序(以上图为例),用延时等待的方法 MOV DX, start_port OUT DX, AL ;启动转换 CALL DELAY_1MS ;延时1ms MOV DX, oe_port IN AL, DX ;读入结果 ,用查询EOC状态的方法 MOV DX, start_port OUT DX, AL ;启动转换 LL: MOV DX, eoc_port IN AL, DX ;读入EOC状态 AND AL, 01H ;测试第0位(EOC状态位) JZ LL ;未转换完,则
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号