基于单片机和CPLD的高精度数据采集系统设计

发布者:cheng1984最新更新时间:2011-12-21 关键字:单片机  CPLD  高精度数据采集 手机看文章 扫描二维码
随时随地手机看文章

1 引言

数据采集系统的任务,就是采集传感器输出的模拟信号转换成计算机能识别的数字信号,送入计算机,将计算机得到的数据进行显示或打印,以便实现对某些物理量的监视,其中一部分数据还将被生产过程中的计算机控制系统用来控制某些物理量。数据采集系统性能的好坏,主要取决于它的精度和速度。在保证精度的条件下,应有尽可能高的采样速度,以满足实时采集、实时处理和实时控制对速度的要求。

当前科学技术的发展对数据采集系统的采样速率、分辨率、精度、接口及抗干扰能力等提出越来越高的要求,许多领域越来越多地要求具有高精度A/D转换和实时处理功能。同时,市场对支持更复杂的显示和通信接口的要求也在提高,如环境监测、电表、医疗设备、便携式数据采集以及工业传感器和工业控制等。传统设计方法是应用MCU通过软件控制数据采集的A/D转换,这样必将频繁中断系统的运行,从而减弱系统的数据运算能力,数据采集的速度也将受到限制。本文采用MCU+CPLD的方案,由硬件控制A/D转换和数据存储,同时采取多模冗余的模/数转换结构,最大限度地提高系统的信号采集精度和处理能力。

2采集系统硬件设计

本文的设计方案来源于对某控制系统的检测与诊断的研究,该控制系统在工作过程中,有多种产生于不同部件的信号需要检测,其中有模拟输入信号9路(其中6路16位精度要求,3路12位精度要求),数字输入信号3路(16位),要求以CAN2.0总线/RS232输出,误差<=10-5,温度范围为:-400C≤ T ≤ +850C。

2.1数据采集系统硬件设计

根据该系统功能和性能要求以及传统的基于单一的单片机的数据采集系统的缺点,本文设计了结合单片机和CPLD器件的各自优点, 以MCU+CPLD的双片结构设计了高精度的多模冗余的数据采集系统。系统主要由MCU处理模块、CPLD处理模块和ADC阵列、通信模块四个部分组成,其总体硬件框图如图1所示。

图1  数据采集系统总体框图

根据系统精度要求,A/D转换器件要分别达到16、12位精度,为此选用了美国模拟器件公司(ADI)公司的16位高速A/D转换器AD7656以及12位高速A/D转换器AD7864。3路数据采集并行实现,所有的时序信号和控制逻辑由同一片CPLD实现,系统体积小,速度快。本设计选用了Altera公司的MAX3000系列可编程逻辑器件EPM3128芯片。3路ADC模数转换结束后,CPLD调用三模冗余表决程序对A/D转换结果进行判断,并把结果送入运算模块的输入FIFO。三模冗余的原理结构图如图2所示。

图2  三模冗余原理结构图

此处的三模冗余表决程序使用VHDL语言编写,运行速度快,可靠性高。此方案的具体硬件设计如图3所示。

图3  系统硬件原理图
3 系统主要芯片介绍

系统所使用的几个主要的芯片包括MCU、CPLD、A/D等芯片,下面对芯片进行简单的介绍。

3.1 MCU

Cygnal公司的单片机C8051F040具有与8051指令集完全兼容的CIP-51内核。它的最高频率可达25Mhz,内置64KB FLASH RAM和4KB的数据存储器。C8051F040在一个芯片内集成了构成单片机数据采集或控制系统所需要的几乎所有模拟和数字外设及其它功能部件,包括ADC、可编程增益放大器、DAC、电压比较器、温度传感器、SMBus/I2C、UART、SPI、定时器、内部振荡器、看门狗电路以及CAN控制器等,这种高度集成为设计小体积、低功耗、高可靠和高性能的测控系统提供了方便,同时也使测控设备整体成本能够降低。   

C8051F040内部集成有BOTSH CAN,它兼容CAN技术规范2.0A和2.0B,主要由CAN内核、消息RAM(独立于CIP-51的RAM)、消息处理单元和控制寄存器组成。

3.2 CPLD

根据数据采集系统的需要,在现有的CPLD中选择Altera公司中MAX 3000A[50]系列中的EPM3218ATC100-10。MAX 3000A器件具有以下特性:

1) Altera 的MAX 3000A 可编程逻辑器件(PLD)是满足大批量,成本敏感性应用的非易失性和即用性CPLD理想的解决方案。MAX 3000A提供从32到512个宏单元,3.3V逻辑内核电压,并支持通用特性和封装;

2)Altera的MultiVolt™ 多电压接口从工业应用传统所要求的5.0V I/O信号到消费电子应用要求的低电压标准如2.5V,MAX 3000A器件都提供强大的I/O电压选项。

3)出众的硅片特性:MAX 3000A器件是具有即用性,非易失性,提供全局时钟,在系统可编程,IEEE-1532标准支持,和开路输出特性的器件,MAX 3000A器件适用于大量系统级的应用;

4)易用的设计软件:MAX器件为易用的Quartus® II网络版和MAX+PLUS® II 基础版设计软件所支持。这两个平台提供综合布局布线,设计验证和器件编程功。

本文中采用的EPM3218ATC100-10具有128个宏单元,80用户I/O管脚数,工作电压为3.3V,具有2500个可用门和ISP,管脚间延迟快至10ns,计数器速度可高达100MHz,可以很好的满足系统的需要。

3.3 A/D

ADI公司16位模数转换芯片AD7656采用iCMOS工艺制造的,是高集成度、6通道16-bit逐次逼近(SAR)型ADC,内含1个2.5V基准电压源和基准缓冲器。AD7656在每通道250kS/s采样速率下的精度(±4LSB最大值积分线性误差)是同类产品的2倍,可以满足工业领域对高分辨率、多通道、高转换速率和低功耗的要求。AD7864是一种高速、低功耗、可以4通道同时采样的A/D转换器。它的主要特性有:高速12位A/D转换器;同时采样4个输入通道,并具有4个采样、保持放大器;0.35ms采样保持获取时间,每一个通道转换时间1.65ms;可以通过软件或者硬件的方法选取用于采样的通道;多个转换电压范围;具有高速并行接口,可以与处理器直接连接;低功耗,每通道功耗90mW;对于每一个模拟输入通道均有过压保护电路。AD7864 4通道同时工作时,最大采样率可以高达130KHz。以上两种芯片能满足系统的精度和实时性的要求。

4数据采集系统软件设计

在一般的数据采集系统中,每次数据采集过程,单片机和A/ D 转换之间都存在数据的传送,由于受单片机执行指令时间的限制,采集一个数据需要几到几十微秒的时间,这样的数据采集系统难以适应高速信号采集的需要。本系统是在单片机控制下,完全由CPLD自动实现数据采集的全过程。在该系统中单片机只控制数据采集的启动和采集结束后对数据的处理或传输,在数据采集的过程中,单片机并不对采集通道进行任何控制,这样就使系统的采集速率完全不受单片机速度的限制,从而实现高速数据采集的目的。系统的主程序的基本流程框图如图4所示。

图4  主程序流程图
主程序主要采用中断的方式对整个系统进行操作和控制。其中,数据采集使用外部中断方式,当CPLD的数据缓冲器数据存满时发出中断申请,单片机就转入相应的中断程序,进行中断数据处理,把CPLD中的数据转移到SRAM里进行保存;与PC机的数据连接使用串行口中断方式(设置为最高优先级,响应时屏蔽其他一切任务的执行),将SRAM中的数据传送到PC机。与主机通信主要由C8051F040通过中断方式接收PC机发送过来的字符,在进行码字的判别之后,把相应的数据送回到PC机。

5 应用分析与结论

本文作者的创新观点是:针对某军工产品的设计需要,采用CPLD和MCU设计了一种多路高速实时数据采集系统的设计方案及实现,该系统能够实现多通道同步采样或异步采样,利用CPLD实现对A/D的逻辑控制,使用C8051F040对A/D转换数据进行处理。测试结果表明,所设计的基于CPLD的多通道数据采集系统,能够准确有效地进行A/D数据采集。本系统的设计思想和方法不仅适用于多路数据采集,而且能有效地扩MCU访问外设的能力,在成本控制、可扩展性以及资源利用效率上都有非常大的提高。此设计方案已经成功的运用于该产品上,对其数据采集的精度有了较大幅度的提高,产生了较好的经济效益。

关键字:单片机  CPLD  高精度数据采集 引用地址:基于单片机和CPLD的高精度数据采集系统设计

上一篇:利用单片机实现的无线遥控技术
下一篇:基于51单片机的康复仪研究

推荐阅读最新更新时间:2024-03-16 12:49

51单片机音乐播放程序
#include REG52.H #include bofangyinyue1.h void Delay1ms(unsigned int count) { unsigned int i,j; for(i=0;i count;i++) for(j=0;j 120;j++); } //*****************************Music****************************************************** //同一首歌 unsigned char co de Music_Same ={ 0x0F,0x01, 0x15,0x02, 0x16,0x02, 0x17,0x66
[单片机]
从零造单片机,需要哪些知识?
第一步,做出实体芯片。 单片机一般理解为MCU(Microcontroller Unit,微控制单元),包含定时器、ALU(Arithmetic Logic Unit,算术逻辑单元)、内存、寄存器、总线等部分。而普通意义的单片机还包含GPIO、串口(UART)、DMA、协处理器、ADDA等。 前置:计算机组成原理、微机原理。 流水线: 前置:数字逻辑电路、集成电路设计及其EDA技术、verilog。 把各个模块细分为寄存器级,比如移位运算器、节拍器、译码器、存储器等。 物理上是这样的: 然后还要会调试BUG、会看时序。 前置:时序用MODELSIM,综合用QUARTUS II等。 如果你以为这就完事了,那你就错了
[单片机]
基于单片机89C51制作的频率计的设计方法,
1 引 言   本设计综合考虑了频率测量精度和测量反应时间的要求。例如当要求频率测量结果为3位有效数字,这时如果待测信号的频率为1 Hz,则计数闸门宽度必须大于1 000 s。为了兼顾频率测量精度和测量反应时间的要求,把测量工作分为两种方法:      (1)当待测信号的频率>100 Hz时,定时/计数器构成为计数器,以机器周期为基准,由软件产生计数闸门,计数闸门宽度>1 s时,即可满足频率测量结果为3位有效数字;   (2)当待测信号的频率<100 Hz时,定时/计数器构成为定时器,由频率计的予处理电路把待测信号变成方波,方波宽度等于待测信号的周期。这时用方波作计数闸门,当待测信号的频率=100 Hz,使用12 MHz时钟时的
[单片机]
基于<font color='red'>单片机</font>89C51制作的频率计的设计方法,
51单片机实现数码管中的倒计时程序
一、使用proteus绘制简单的电路图,用于后续仿真 二、编写程序 /******************************************************************************************************************** ---- @Project: LED-74HC595 ---- @File: main.c ---- @Edit: ZHQ ---- @Version: V1.0 ---- @CreationTime: 20200607 ---- @ModifiedTime: 20200611
[单片机]
51<font color='red'>单片机</font>实现数码管中的倒计时程序
免费软件工具让用户通过STM8微控制器开发微型智能设备
新的Cosmic CXSTM8 C编译器让免费且无限制使用的开发工具链更完善 功能丰富的编译器工具可支持STM8全系产品,包括存储容量最高128KB的产品,对代码量不设任何限制 STM8S-DISCOVERY硬件开发工具使设计项目启动资金降至8美元 中国,2016年5月10日 横跨多重电子应用领域、全球领先的半导体供应商意法半导体 (STMicroelectronics,简称ST;纽约证券交易所代码:STM)进一步扩大其深受市场欢迎的STM8微控制器的选择范围,支持智能装置设计人员选用STM8微控制器开发方便现代工作生活的经济型计算任务。 意法半导体与Cosmic的最新合作代表包括开发、调试、优调STM
[物联网]
免费软件工具让用户通过STM8<font color='red'>微控制器</font>开发微型智能设备
STC89C5x系列单片机内部EEPROM
// (c) Copyright 2007-2017, Guozhou Chen. All Rights Reserved. /******************************************************************************** * 个人申明: * * 本人在运用STC89C5x系列单片机内部EEPROM时,了解其对非0xff值的存储空间* * 不能通过字节编程直接写入。这一约定可能给一些人带来应用的麻烦,所以本* * 人决定编写一能够让程序员不考虑这一约定的API。
[单片机]
2864串口接线方式与实例程序
百度了好长时间都没有找到带字库的12864使用串口如何接线,后来参阅了一下12864的产品说明,终于摸索出来了,本人是刚入门单片机,还有好多的不懂的,我把接线的方式还有实例程序分享出来,只要对大家有一丁点的帮助就满足了。首先看引脚定义 RS=CS; R/W=SID; E=CLK; FSB高电平为并行接口,用并口时接高电平,FSB接低电平时为串口,高低电平可以直接接VCC或者GND也可以用软件去控制,实现并口和串口的切换。RET不接线也能使用,用串口时除了DB0--DB7就不再使用外,其他的接口按手册上说明使用。下面是测试代码,也是参阅从51黑电子论坛的不过有些错误无法显示,已经更改。 #include reg52.h
[单片机]
2864串口接线方式与实例程序
基于单片机和PWM控制方法调速实现无刷控制器检测设计
引言 伴随着城市化进程,人们生活的交通距离不断扩大,代替燃油汽车和自行车的电动车的普及大幅度的提高了电力资源的利用效率,促进了国民经济的健康发展。电动自行车以电力作动力,骑行中不产生污染,无损于空气质量。从改善人们的出行方式、保护环境和经济条件许可情况等因素综合来看,电动自行车目前乃至今后都有着广阔的发展空间。电动自行车所用直流电机分为有刷电机和无刷电机两种。其中有刷电机控制较简单。但其易磨损的电刷带来维修保养工作量相对较大、使用寿命相对较短等缺点。而直流无刷电机本身没有易磨损部件,电机寿命长,维修保养工作量小。但直流无刷电机采用电子换向原理工作,其控制过程比有刷电机复杂得多,因此对控制器质量的要求也高得多。 目前电动自行车采
[单片机]
基于<font color='red'>单片机</font>和PWM控制方法调速实现无刷控制器检测设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved