当前位置:首页 > 工作计划 > 数据采集系统设计 基于LPC2378的数据采集系统的设计
 

数据采集系统设计 基于LPC2378的数据采集系统的设计

发布时间:2019-01-06 03:55:37 影响了:

  摘要:本文介绍了以LPC2378微处理器为核心的数据采集及处理系统,给出了各模块、接口和软件设计。   关键词:LPC2378;数据采集;模块功能   
  引言
  
  在工业控制系统中,为了更好地实现对系统的控制,除了控制单元和执行单元外,还必须有反馈环节。在反馈环节中,最重要的就是对数据的采集和处理。一般的工业控制中,数据有很多种形式,最常见的有电流、电压的模拟量、以二进制形式输入的开关量以及以脉冲形式输入的脉冲信号。
  本文主要讨论了以LPC2378微处理器为核心的数据采集和处理系统的实现过程。
  
  
  系统结构
  
  以NXP公司LPC2378为核心构成的控制系统的结构如图1所示。该控制系统主要包括:嵌入式主控模块、电源控制模块、数据采集和处理模块(A/D、D/A、R/D)、串口扩展模块(SC16C554)。由主控模块进行控制,其他模块协同工作,共同实现数据采集和处理的功能。处理器和CPLD模块是整个系统的核心,它控制各模块间的协同工作;电源控制模块负责为芯片提供所需要的工作电压,并对电压进行监测,同时提供系统的复位功能;数据采集和处理模块由A/D、D/A、R/D构成,实现数据的数模或模数转换;串口扩展模块实现了与LPC2378之间数据的串、并行转换,并完成与上位机的通讯功能。
  SC16C554扩展出4路UART接口,波特率等底层协议由程序独立设置,每个通道具有16字节的FIFO,兼容16C550。通过线路板接插件引入2组外部双口RAM的存取接口,符合IDT7130的时序要求,数据、地址及控制信号等驱动。为方便客户未来的扩展应用,系统向外部预留2组CAN总线接口。系统中实现2路A/D,2路D/A,2路R/D;并预留12位IO控制口,每位可单独设置为输入或输出。
  
  硬件设计
  
  主控模块
  该模块由LPC2378和CPLD(EPM7128AE)构成。LPC2378是一款基于ARM7TDMI-S核的高性能32位RISC微处理器。处理器带有Thumb指令扩展;主频高达72MHz;片内集成512KB Flash,支持ISP及IAP,58KB SRAM,PLL加强型矢量中断控制器,10/100M以太网带DMA,USB2.0全速设备接口,2路CAN 2.0接口,通用DMA控制器,4个UART接口,1个具有全功能Modem的接口,3个12C串行接口,3个SPI/SSP串行接口,一个12S接口,SD/MMC记忆卡接口,8路10位ADC,1路10位DAC,4个32位捕获/比较时钟,看门狗时钟,PWM模块支持3相马达控制,RTC实时时钟带可选后备电池,通用I/O等。CPLD主要负责整个系统的译码工作,从而为系统中的某些芯片产生片选和控制信号。
  
  电源控制模块
  通过接插件向线路板提供±15V、±12V、+5V的直流电源。由于系统中大多数芯片的工作电压均为3.3V或5V,故选择的电源电压调节器为TPS76633,它能对外提供3.3V的电压及250mA的电流,且误差在3%以内。为了使系统能稳定的工作,抑制信号线、电源线上的高频噪声和尖峰干扰,需要使用磁珠进行系统的模数隔离。
  系统工作时,会经常要求进入复位工作状态,所以,系统的复位电路必须能准确、可靠地工作。这里的复位电路采用LTCl326芯片,同时实现低电平复位和手动复位功能。LTCl326能够在有多种电压供电的系统中实现同时对3种电压的监控功能。为了提高芯片的抗干扰能力,应给每个Vcc引脚接一个0.1 μ F的对地旁路电容。
  
  数据采集和处理模块
  ・A/D接口电路
  LPC2378本身提供有8路10位ADC和1路10位DAC,而该系统要求提供的A/D和D/A精度均为12位,故需要扩展外部A/D和D/A。
  AD7922是12位逐次逼近型高速、低功耗的A/D转换器,吞吐率最高可达1MSPS。本系统采用通过LPC2378的SPI接口直接与其相连,不需要其他的附加逻辑电路。在采集过程中,选择不同的通道进行采集。
  ・D/A接口电路
  DAC7574是12位、低功耗、4路带缓冲器的电压输出型D/A转换芯片,最高速率可达3.4Mbps。外部为该芯片提供的工作电压为5V,故转换后的电压输出范围是0~5V,需要设计D/A转换后输出电压范围是一10V~+10V,所以要用到两级运算放大器,第一级构成反相求和电路,第二级构成反相比例运算放大电路。经过第一级运放后,得到一2.5V-+2.5V的电压值,再经过第二级运放后得到-10V~+10V的电压范围。为了在第一级运放的输入端获得精准的-2.5V电压,这里使用LM236,它是能够提供精确的-2.5V电压的稳压芯片。
  
  R/D接口电路
  AD2S80A是最新一代旋转变压器数字转换芯片,又叫角分解器(Resolver),是一种特殊的模数转换器,用来测量旋转物体的转轴角位移和角速度。AD2S80A的分辨率有10、12、14、16bits几种可选。用户通过选择不同的外接电阻和电容,可以得到不同的带宽和跟踪速率。本系统中只用到了R/D的8条数据线(DB1-DB8),其余8条数据线(DB9~DB16)接地。LPC2378负责处理AD2S80A送来的信号,AD2S80A与LPC2378的相关引脚直接相连,接口电路如图2所示。
  
  
  串口扩展模块
  MAX3074是RS-422总线的收发器,其功能是实现RS-422总线信号电平到SC16C554可接受信号电平的转换。该系统中共使用6片MAx3074,其中4片与SCl6C554的4路UART端口连接(其中两路作为备用),其余2片与LPC2378的两路UART端口相连。
  MAX3221是RS-232总线的收发器,其功能是实现RS-232总线信号电平到LPC2378可接受信号电平的转换。系统中使用2片MAX3221与LPC2378其余两路UART端口相连(图3)。
  
  系统软件设计
  
  系统的软件开发工具采用ADS1.2,设计语言使用ARMC。为了实现系统各部分的正常运行,在进行软件设计时必须充分考虑3个因素:程序的可靠性;程序的严密性;程序的稳定性。
  软件程序由主程序和中断服务程序构成。主程序中首先完成系统的初始化,接着进入一个无限循环的后台程序,巡回地执行多个事件,完成相应的操作;使用向量IRQ中断,中断服务程序采用基于定时器的巡回服务流程,完成事务处理。对于CPLD的软件设计工具采用Altera公司的MAX PlusII,使用VHDL编程语言。
  
  结语
  
  本文从硬件设计和软件设计两方面对基于LPC2378微处理器的数据采集系统的设计进行了介绍。该系统现已在中国兵器工业集团某研究所的一大型系统中得以应用,工作可靠、稳定。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3