第3章输入输出通道接口技术_第1页
第3章输入输出通道接口技术_第2页
第3章输入输出通道接口技术_第3页
第3章输入输出通道接口技术_第4页
第3章输入输出通道接口技术_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第3 3章章输入输出通道接口技术输入输出通道接口技术第3章 输入/输出通道接口技术 概述 输入输出通道的结构 模拟量输入通道接口技术 模拟量输出通道接口技术 开关量输入输出通道3.1 概 述 在计算机控制系统中,为了实现对生产过程的控制,必须把现场的各种测试参数,如温度、压力、流量等连续变化的物理量或开关量,转换为计算机可识别的数字量输入到计算机进行数据处理。处理结果又必须转换为电压或电流 ,以推动执行机构工作。因此在计算机和生产过程之间,必须设置信息传递和变换装置,这个装置称为过程输入/输出通道。典型的单片机测控系统硬件组成框图典型的单片机测控系统硬件组成框图 单片计算机接口DAAD多路开

2、关反多路开关开关量输入开关量输出执行机构传感器变送器接口接口接口生产设备或过程通用外设输入/输出通道 输入/输出信号一般有两种类型:一种是随时间连续变化的物理量,称为模拟信号;一种是只有开和关(或1和0)两种状态的量,称为开关量(数字量)。因此计算机控制系统中,输入/输出通道分模拟量通道和数字量(开关量)通道两类。3.2 输入/输出通道的结构 信息种类信息种类信息来源信息来源通道类型通道类型数字量数字量开关量输入开关量输入阀门的开、关,接点的通、断,阀门的开、关,接点的通、断,电平的高、低电平的高、低数字量数字量输入通道输入通道数据数码数据数码各类数字传感器、控制器等各类数字传感器、控制器等脉

3、冲量输入脉冲量输入 长度、转速、流量测定转换等长度、转速、流量测定转换等中断输入中断输入操作人员请求、过程报警等操作人员请求、过程报警等模拟量模拟量电流信号电流信号压力、温度、液位、湿度、速压力、温度、液位、湿度、速度、质量、位移等度、质量、位移等模拟量模拟量输入通道输入通道电压信号电压信号信息信息来源来源 输出驱动输出驱动输出信息输出信息种类种类通道类型通道类型数字量数字量计算机输出的计算机输出的阀门的开、关,触点的通、阀门的开、关,触点的通、断,电机的启、停等断,电机的启、停等开关量开关量 数字量数字量输出通道输出通道数字量(数字设备)数字量(数字设备)数字量数字量执行器(电动、气动、液执

4、行器(电动、气动、液压执行器械)压执行器械)电压或电压或电流电流 模拟量模拟量 输出通道输出通道3.2.1 模拟量输入通道的结构输入通道的一般结构:1、并行转换结构CPUI/O接口电路A/D转换采样/保持器采样/保持器A/D转换来自现场的信号2、共享转换结构多路开关信号处理信号处理信号处理 放大器逻辑控制S/HA/DI/O接口电路CPU3.2.2 模拟量输出通道的结构输出通道的一般结构:1、多通道独立D/A转换形式CPUI/O接口电路D/A转换隔离执行器放大转换D/A转换隔离执行器放大转换2、多通道共享D/A转换形式CPUI/O接口电路D/A转换反多路开关保持器保持器3.3 模拟量输入通道接口

5、技术 在单片机的实时测控和智能化仪表等应用系统中,常需将检测到的连续变化的模拟量(如温度、压力、流量、速度、液位和成分等)通过模拟量输入通道转换成单片机可以接收的数字量信号,输入到单片机中进行处理。A/D转换器是模拟量输入通道的主要组成部分,完成模拟量到数字量的转换。 A/D转换接口设计主要是根据用户提出的数据采集精度及速度等要求,按一定的技术准则和经济原因合理的选择通道结构和A/D转换器芯片,并适当配置多路模拟开关、前置放大器、采样保持器、接口和控制电路等,实现模拟量到数字量的线性转换,对被测信号进行采集和处理。A/D转换器一般分类如下:(1)按转换输出数据的方式,可分为串行与并行两种,其中

6、并行(串行)ADC又可根据数据宽度分为8位、12位、14位、16位等。(2)按输出数据类型可分为BCD码输出型和二进制输出型。(3)按转换原理可分为逐次逼近式、双积分式和并行式。3.3.1 A/D 主要技术指标1、分辨率:用数字量的位数来表示,位数越高,分辨率越高,对输入量的变化越灵敏。2、量程:所能转换的电压(电流)范围。3、转换时间:转换时间是指启动A/D转换到转换结束所需的时间 。4、线性误差:满量程输入范围内,偏离理想转换特性的最大误差。 另外还有工作温度范围、对参考电压的要求、转换精度(绝对精度和相对精度)、偏移误差、满刻度误差等 。 ADC0809 主要特性:主要特性:1)8路输入

7、通道,路输入通道,8位位A/D转换器,即分辨率为转换器,即分辨率为8位。位。2)具有转换起、停控制端。)具有转换起、停控制端。3)转换时间为)转换时间为100s(时钟为时钟为640kHz时时),130s(时钟为(时钟为500kHz时)。时)。4)单个)单个+5V电源供电电源供电5)模拟输入电压范围)模拟输入电压范围0+5V,不需零点和满刻度校准。,不需零点和满刻度校准。6)工作温度范围为)工作温度范围为-40+85摄氏度。摄氏度。7)低功耗,约)低功耗,约15mW。3.3.2 并行ADC及接口技术ADC0809地址锁存和译码OE通道选择开关ADDAADDBADDC1N0IN1IN2IN3IN4

8、IN5IN6IN78位三态锁存缓冲器DACVcc比较器CLOCKSTARTGNDVREF(+)VREF(-)ALE逐次逼近寄存器SAR定时和控制D0D1D2D3D4D5D6D7 EOCADC0809的内部结构例例1:如图所示,试用中断方式编写程序,对IN0IN7通道上的模拟电压数据进行一次采集,并将转换结果送入内部RAM 20H单元开始的数据缓冲区中。RDWRCP DQQD0D1D2CLKSTARTALEOEEOCIN0IN1IN2IN3IN4IN5IN6IN774LS 373P1.0 ADDAADDBADDCD0D7ALEP0INT0 P2.7 MCS-51单片机1 1 OEGADC0809

9、;主程序主程序START: MOV DPTR,#7FFFH MOV R2,#08H MOV R0,#20H MOV R1,#00H ;IN0通道号通道号 SETB EA SETB EX0 ;开外中断;开外中断0 SETB IT0 ;中断请求信号为下降沿触发;中断请求信号为下降沿触发 MOV A,R1 MOVX DPTR,A ;启动;启动A/D转换转换 LOOP: SJMP LOOP ;等待中断;等待中断;中断服务程序中断服务程序 ORG 1000HADINT0: MOVX A,DPTR ;读取;读取A/D转换数据转换数据 MOV R0,A ;存储数据;存储数据 INC R1 ;指向下一个通道;

10、指向下一个通道 INC R0 DJNZ R2,ROT CLR EX0 JMP EXIT ROT:MOV A,R1 MOVX DPTR,A EXIT:RETI END采用C语言编程,清单如下:#includereg51.h#define uchar unsigned charuchar xdata *adch;uchar data *addata;uchar i;void main() adch=0 x7fff; addata=0 x20; i=0; EA=1; EX0=1; IT0=1; *adch=i; while(1); void ADint0 (void) interrupt 0 uch

11、ar j; j=*adch; *addata=j; addata+; i+; if(i=0 x08) EX0=0; else *adch=i; 串行ADC具有输出占用的数据线少,转换后的数据逐位输出,输出速度较慢的特点,但它具有两大优势:其一,便于信号隔离,在数据输出时,只需少数几路光电隔离器件,就可以很简单地实现与单片机间的电气隔离;其二,在转换精度要求日益提高的前提下,使用串行ADC的性价比较高,且芯片小,引脚少,便于线路板制作。 3.3.3 串行ADC及接口技术 ADC0832由NS公司研制的8位逐次逼近型串行A/D转换器,其主要特点如下: 1) 8位分辨率; 2) 双通道A/D转换;

12、3) 输入输出电平与TTL/CMOS相兼容; 4) 5V电源供电时输入电压在05V之间; 5) 工作频率为250KHZ,转换时间为32S; 6) 一般功耗仅为15mW; 7) 8PDIP(双列直插)、PLCC多种封装;ADC0832ADC0832引脚及功能Vcc:电源端,接+5V电源。GND:信号地。CLK:串行时钟输入端。 DO:数字量串行输出口。CS:使能端。DI:两路模拟输入选择端。 CH0、CH1:两路模拟信号输入端。12348765 CS CH0 CH1 GND Vcc/ref CLK DO DIADC08321. 转换时,先将CS置于低电平并且保持到转换完全结束。2. 由DI端输入

13、启动位和配置位,同时输入CLK时钟脉冲。在第1个时钟脉冲的下降沿之前DI端必须是高电平,表示启始信号启始信号。在第2、3个脉冲下降沿之前DI端应输入2位数据(SGL、Odd)用于选择通道选择通道功能,当此2位数据为“1”、“0”时, 选择CH0。当2位数据为“1”、“1”时,选择CH1。3. 完成输入启动位、通道选择之后,就可以开始读出数据。 4.7F 例例2:编写令ADC0832工作的程序。ADC0832 ADC0832与MCS-51接口电路 Vcc DICSCLKGNDCH0 P1.0 P1.1 P1.2 MCS-51 单 片 机0.1F +5V + P1.3 DO #include sb

14、it CS=P10; sbit CLK=P11; sbit DI=P12; sbit DO=P13; void delay(int timer) while(-timer); void pulse(void) CLK=1; delay(4); CLK=0; void main(void) char i, a; CS=0; /选芯片 a=0 x03; /03选择通道0; / 07通道1 for(i=0;i1; pulse(); /启动 a=0 x00;delay(50); /等待转换结束for(i=0;i8;i+) pulse(); a = a1; if(DO) a = a+1; /读数 CS=

15、1; /关闭芯片选择 3.4 模拟量输出通道接口技术 D/A转换器是模拟量输出通道的主要组成部分,完成数字量到模拟量的转换。D/A转换器一般可分类如下: 1)根据输出是电流还是电压,可以分为电压输出型和电流输出型。 2)根据输出端是串口还是并口,可以分为串行输出型和并行输出型。 3)根据内部是否有锁存器,可以分为无锁存器型和带锁存器型。 3.4.1 DAC的主要性能指标 1. 分辨率:是D/A转换器对输入量变化敏感程度的描述。 2. 转换精度:实际模拟输出和理论值的接近程度。3. 非线性误差 :是指实际转换特性曲线与理想转换特性曲线之间的最大偏差。 4. 建立时间:建立时间是描述D/A转换速率

16、快慢的一个重要参数。3.4.2 并行DAC及接口技术DAC0832主要特性:主要特性: 1)分辨率为)分辨率为8位;位; 2)电流稳定时间)电流稳定时间1s; 3)可单缓冲、双缓冲或直接数字输入;)可单缓冲、双缓冲或直接数字输入; 4)单一电源供电()单一电源供电(+5V+15V);); 5) VREF的范围为的范围为-10V+10V 6)低功耗,)低功耗,20mW LE2LE1RfbAGNDDAC0832VccILEVREF输入寄存器DGND DI0DI7D/A转换器DAC寄存器Iout2Iout1CSWR1WR2XFER1. DAC0832的内部结构VoutIout1Rfb (D/28)V

17、REF单极性电压输出单极性电压输出2.DAC0832的输出方式RfbIout2Iout1Vout+_AGNDADIVREF设 VREF5VnDFFH255时,最大输出电压:Vmax(255/256)5V4.98VnD00H时,最小输出电压:Vmin(0/256)5V0VnD01H时,一个最低有效位(LSB)电压:VLSB(1/256)5V0.02V双极性电压输出双极性电压输出Vout2(D27)/27)VREFR1(R)R3(2R)R2(2R)RfbIout2Iout1AGNDDIVREFVout1+_A1Vout2+_A2设 VREF5VnDFFH255时,最大输出电压:Vmax(25512

18、8)/1285V4.96VnD00H时,最小输出电压:Vmin(0128)/1285V5VnD81H129时,一个最低有效位电压:VLSB(129128/1285V0.04V3.DAC0832 的工作方式及与MCS-51的接口例例3:根据下图分别输出锯齿波、三角波及方波信号。设选通地址为FEH。VoutFEH CS +5V ILE WR +5V XFER D0D7 WR2 ALE P0 _ARfb Iout2 Iout1 VREF DAC0832 MCS-51单单片片机机 锁锁存存器器 译译码码器器 WR1 锯齿波程序:锯齿波程序: ORG 0100H MOVR0,#0FEH CLRA ;转换

19、初值LOOP: MOVX R0,A ;D/A转换 INC A ;转换值增量 NOP ;延时 NOP NOP SJMP LOOP END#include”absacc.h”#include”intrins.h”#define DA0832 PBYTE0 xfe#define uchar unsigned charvoid main()uchar i;while(1) for (i=0;i=255;i=i+) DA0832=i; _nop_(); _nop_(); _nop_(); 三角波程序:三角波程序: ORG 0100H MOV R0,#0FEH CLR ADOWN:MOVX R0,A ;线

20、性段下降 INC A JNZ DOWN MOV A,#0FEH ; UP:MOVX R0,A ;线性上升段 DEC A JNZ UP SJMP DOWN END#include”absacc.h”#define DA0832 PBYTE0 xfe#define uchar unsigned charvoid main()uchar i;while(1) for (i=0;i0;i=i-) DA0832=i; 方波程序:方波程序: ORG 0200H MOV R0,#0FEH LOOP: MOVA,#00H;置上限电平 MOVX R0,A ACALL DELAY;形成方波顶宽 MOV A,#0F

21、FH;置下限电平 MOVX R0,A ACALL DELAY;形成方波底宽 SJMP LOOP END#include”absacc.h”#define DA0832 PBYTE0 xfe#define uchar unsigned charvoid delay() uchar i; for (i=0;i0 xff;i=i+);void main() uchar i; while(1) DA0832=0; delay(); DA0832=0 xff; delay(); 3.4.3 串行DAC及接口技术 并行D/A转换芯片,转换时间短,通常不超过10s,但它们的引脚较多,芯片体积大,与单片机连接

22、时电路较复杂。因此,在有些远距离通信中,为节省连结导线,而且对转换速度要求不是很高的场合,可以选用串行D/A转换芯片,虽然输出建立时间较并行D/A转换芯片长,但是串行D/A转换芯片与单片机连接时所用引线少、电路简单,而且芯片体积小、价格低。 TLV5614是美国TI公司生产的4路12位电压输出型串行输入的D/A转换器,其数字量由高位到低位逐次一位一位地输入。主要特点如下: 1) 12位分辨率,电压输出型; 2) 四通道D/A转换; 3) 可以与TMS320、SPI、QSPI和51内核单片机接口; 4) 采用双电源供电,即DVDD和DGND、AVDD和AGND; 5) 转换时间为3 9S; 6)

23、一般功耗仅为8mW; 7) 具有两种封装形式: SOIC 和TSSOP;TLV56141234567816151413121110 9 DVDD PD LDAC DIN SCLK CS FS DGND AVDD VrefAB OUTA OUTB OUTC OUTD VrefCD AGNDTLV5614DVDD、DGND: 串行接口电源, 范围为: 2.7 5.5 V。AVDD、AGND: 输出端口的模拟电源, 范围为: 2.7 5. 5V; 在用户对精度和抗干扰的要求不是很严格的情况下, 两种电源可以合用。VrefAB、VrefCD: 输出端基准电压输入端, 二者可以不同。由于TLV5614采

24、用 2倍增益输出方式, 当需要输出 05V的模拟量时, 基准电源为2.5V, 需要输出010V 的模拟量时, 基准电源为5V。PD: 掉电模式。CS: 片选。LDAC: 为低电平时, DAC 输出端口进行数据刷新。FS: 帧同步输入, 帧同步脉冲的下降沿表示串行数据帧的开始。SCLK: 串行时钟输入。DIN: 串行数据输入。VoutA、Vou tB、VoutC、VoutD: DAC 输出端口。1.TLV5614引脚功能1)TLV 5614输出16位数据,16位数据字由两部分组成: 控制位( D15 D12)和数据位( D11 D0)。 PWR: “1”快速转换模式, “0”慢速转换模式;SPD

25、: “1”DAC 掉电状态, “0”DAC正常状态;2)注意LDAC引脚,低电平的时候才会刷新DA数据。3)FS是帧同步信号,和片选CS一样,芯片必须检测到一个下降沿才开始第一帧的数据同步。 4)数字量由高位到低位逐次一位一位地输入。D15D14D13D12D11 D0A1A0PWRSPD 数据位2.TLV5614使用说明2.TLV5614与MCS-51单片机的接口电路SCLKLDACDINFSP1.0 P1.1P1.2VOUTATLV5614MCS-51 单单 片片 机机P1.3VOUTBVOUTCVOUTDCSPD+5V#include sbit LDAC=P10; / /控制DAC 的刷

26、新sbit DIN=P11; / /数据输入sbit SCLK=P12; / /时钟输入sbit FS=P13; / /帧同步输入void TLV5614(char CH, int DAcode) int data com; char data i ;switch ( CH )case 0: com = DAcode | 0 x2000;break;case 1: com = DAcode | 0 x6000;break;case 2: com = DAcode | 0 xa000;break;case 3: com = DAcode | 0 xe000;break;default:break

27、; / /通道选择LDAC = 0; / /数据刷新FS=1;FS=0; / /下降沿帧同步输入for(i=16; i0; i-) DIN= (bit) (com&0 x8000); / /写数据SCLK=1;com=1; / /数据移位SCLK=0; / /时钟输入LDAC =1;FS= 1; 3.5 开关量输入输出通道 开关量输入通道的主要任务是将现场的开关信号或仪表盘中各种继电器接点信号有选择地传送给计算机,在控制系统中主要起以下作用:1)随时检测系统的启动、停止、暂停按钮状态,以做相应的处理。2)定时记录生产过程中某些设备的状态,例如电动机是否在运转、阀门是否开启、行程开关是否

28、到位等。3)对生产过程中的某些状态进行定时检查,以保证生产顺利进行,如是否过温过压、料位是否超限、是否发生故障等。 这些开关量信号的电平状态通常无法满足单片机控制系统中I/O接口的工作电平,因此在开关量输入通道中,需要完成电平转换任务,同时为了系统的安全、可靠,还需考虑信号的消抖、滤波和隔离等问题。 3.5.1 开关量输入通道1.输入信号调理电路_R1 C1 D2+ D1R2来自现场 数字信号2.防抖动输入电路+5V输出信号双稳态电路斯密特电路B +5V +5V C 3.6KD A 3.6KK 可以应用于计数、位置状态、转速等多方面的测试。 D T P1.0 8031 3. 防干扰输入隔离及电

29、平转换电平转换电路+24V+5VL_ D T X C1R1 C2 R2利用光电隔离及电平转换光电传感器在产量计数中的应用光电传感器在产量计数中的应用 图中,红外发光二极管和红外接收三极管分别安装在产品图中,红外发光二极管和红外接收三极管分别安装在产品流水线传送带的两边,每当传送带上有一个产品经过,就会遮流水线传送带的两边,每当传送带上有一个产品经过,就会遮挡红外光线一次,使红外接收三极管输出一个脉冲电平信号。挡红外光线一次,使红外接收三极管输出一个脉冲电平信号。单片机对输入的脉冲信号进行计数,就可以对产品的产量进行单片机对输入的脉冲信号进行计数,就可以对产品的产量进行统计。统计。 光电传感器在

30、位置检测中的应用光电传感器在位置检测中的应用 图中,当移动的物体一旦挡住红外光线,红外接收三图中,当移动的物体一旦挡住红外光线,红外接收三极管就会输出一个脉冲信号。此装置可以用来检测物体的极管就会输出一个脉冲信号。此装置可以用来检测物体的有或无,可以作为运动物体的限位检测电路,可以作为外有或无,可以作为运动物体的限位检测电路,可以作为外人侵入的报警检测电路,也可以作为自动门的控制电路。人侵入的报警检测电路,也可以作为自动门的控制电路。 除了光电传感器外,还有电感式接近开关。下图是电感式接近开关的应用原理图。 感应线圈产生高频振荡信号形成一交变磁场,当有金属类物体接近时,在金属物体内产生涡流并吸

31、收振荡器的能量,使振荡信号变弱或停止振荡,在检波放大器和输出电路的作用下,产生一个开关信号输入单片机的P1.0端口,用于有无物体接近的检测。因此电感式接近开关可以和红外光电管一样,用于有无物体接近或对经过物体进行计数,或者用于物体的位置状态进行检测。利用电磁感应隔离及电平转换R利用继电器隔离及电平转换 现场的开关触点控制小型继电器,由继电器触点经电平转换电路得到逻辑电平再输入到接口。+12V+5VL_X继电器继电器CD3.5.2 开关量输出通道 在工业过程控制系统中,对被控设备的驱动常采用模拟量输出驱动和开关量输出驱动两种方式。 模拟量输出是指其输出信号(电压、电流)可变,根据控制算法,使设备

32、在零到满负荷之间运行,在一定的时间T内输出所需的能量P。 开关量输出则是通过控制设备处于“开”或“关”状态的时间来达到运行控制目的。如根据控制算法,同样要在T时间内输出能量P,则可控制设备满负荷工作时间t,即采用脉宽调制的方法,可达到相同的要求。 开关量输出控制已越来越广泛地被应用,由于采用数字电路和计算机技术,对时间控制可以达到很高精度。因此,在许多场合开关量输出控制精度比一般的模拟量输出控制高,而且利用开关量输出控制往往无须改动硬件,而只需改变程序就可用于不同的控制场合。1. 光电耦合接口光电耦合接口是通过光电元器件来实现的,光电元器件由发光二极管和光电三极管构成。可应用于信号隔离、开关电路、数模转换、逻

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论