基于ARM的嵌入式多路信号数据采集系统

发布者:Serendipitous55最新更新时间:2012-09-10 来源: 21IC 关键字:ARM  多路信号  数据采集系统  LPC2134 手机看文章 扫描二维码
随时随地手机看文章

由于人们对数字形式信息的需求量越来越大,数据采集及其应用技术受到了越来越广泛的关注和应用。随着技术的发展,数据采集系统正向着高精度、高速度、稳定可靠和集成化的方向发展。目前,大多数的数据采集监控系统都是独立的系统,只能进行数据的现场采集或存储,已不能满足应用的需要,迫切要求接入网络实现远程监控。现代数据采集技术的发展是建立在新型采集系统软硬件平台性能提高的基础之上的。具有强大功能的32位微控制器在一些高端仪器仪表中得到了广泛的应用,而将GPRS无线传输模块嵌入其中,将采集到的数据以无线的方式接入Internet,实现远程监控,非常适合工作人员在比较恶劣的环境下或者需要对多种参量进行采集时使用。而高性能微处理器的应用也极大提高了数据采集的精度和速度。

1 系统整体方案

整个远程多路数据采集系统如图1所示。当无线终端成功连接到互联网后,采集终端将传感器采集到的数据经放大滤波后发送到ARM微控制器,经过A/D转换以及相关处理后,通过RS232口将数据发送到GPRS无线终端,GPRS无线终端又将这些数据打成一个个的IP包,经GPRS空中接口接入无线网络,并由移动通信服务商转接到Internet,最终通过各种网关和路由到达统一的远程数据处理中心,数据中心接收数据并对数据做后续处理。

远程数据中心也可以发送数据信息(各种命令及诊断信息)到无线数据采集模块,通过GPRS终端上的RS232接口输出到ARM微控制器上,采集终端在接收到远程数据中心的信息后,进行解码并执行相应的操作,以实现对采集现场的控制。

GPRS无线终端嵌入了TCP/IP协议和UDP协议(用户可选),本系统采用TCP/IP协议,实际上GPRSDTU上实现的协议栈是TCP/IPOverPPP。

 

GRPS无线数据采集终端

图1 GRPS无线数据采集终端

2 硬件组成

2.1 传感器及放大器

理论上,该系统可以同时进行16路数据的采集,但在实际的调试中,只选用了2路来做模拟。

一路选用温度传感器,表面/液体热电偶NR281530,获取实时现场的温度,另一路采用压力传感器,PPM241BY油井专用型压力传感器,此系统在油田油井中具有较好应用。

在前端信号处理单元,由于各种传感器的输出参数不同,输出信号不仅电平低、内阻高,而且有共模电压以及现场恶劣环境的影响,因此,在选用放大芯片时要综合考虑以上因素。选取常用的MCP6S2X可编程增益放大器对原始信号进行放大,OP07CP做后续滤波芯片。

2.2 微处理器

微处理器是系统工作的核心,其性能的好坏直接决定了数据采集系统性能的优劣。基于本采集系统对数据实时性和精度的要求,以及易操作性方面的考虑,选择32位的ARM7系列处理器,它具有以下特点:

·体积小、低功耗、低成本、高性能;

·支持Thumb(16位)/ARM(32位)双指令,能很好兼容8位/16位器件;

·大量使用寄存器,指令执行速度快;

·指令长度固定;

·寻址方式灵活简单,执行效率高

本系统采用PHILIPS公司的单片32位微控制器LPC2134,它是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI2STMCPU,含有128KB的FLASH,该存储器用作代码和数据的存储。

LPC2134拥有两个异步串行口UART0和UART1,本系统中将UART0与GPRS终端相连,实现数据传输。它采用16字节收发FIFO,内置波特率发生器,包含使能实现软件控制的机制。

硬件SPI接口是一个同步、全双工串行接口,最大数据位速率为时钟速率的1/8,可配置为主机或从机。本系统中SPI接口作为主机,根据不同的中断,控制多个从机,包括可编程增益放大器MCP6S2X,使用SPI总线访问SD卡,以及控制开发板上的数码管显示。

A/D转换器是2个8路10位逼近式模/数转换器,测量范围是0~313V,10位转换时间大于或等于2144μS,一个或多个Burst转换模式。

2.3 GPRS终端

GPRS终端选用的是南京傲屹电子有限公司的AYG285C,它是采用GPRS模块专为工业集成设计的,在温度范围、震动、电磁兼容性和接口多样性等方面均采用特殊设计,保证了恶劣环境下的工作稳定性,基于GPRS公网的数据传输具有通信范围广,传输稳定可靠等特点。通过按键可以进行模块参数设置或者进行网络数据通信,串口波特率在300~115200bps可调,校验位可选:无校验,奇校验,偶校验。支持协议PPP、IP、TCP、UDP、DNS、PING的客户端功能。另外,电源、工作状态有LED指示,方便现场查看MODEM运行情况。

由于人们对数字形式信息的需求量越来越大,数据采集及其应用技术受到了越来越广泛的关注和应用。随着技术的发展,数据采集系统正向着高精度、高速度、稳定可靠和集成化的方向发展。目前,大多数的数据采集监控系统都是独立的系统,只能进行数据的现场采集或存储,已不能满足应用的需要,迫切要求接入网络实现远程监控。现代数据采集技术的发展是建立在新型采集系统软硬件平台性能提高的基础之上的。具有强大功能的32位微控制器在一些高端仪器仪表中得到了广泛的应用,而将GPRS无线传输模块嵌入其中,将采集到的数据以无线的方式接入Internet,实现远程监控,非常适合工作人员在比较恶劣的环境下或者需要对多种参量进行采集时使用。而高性能微处理器的应用也极大提高了数据采集的精度和速度。

1 系统整体方案

整个远程多路数据采集系统如图1所示。当无线终端成功连接到互联网后,采集终端将传感器采集到的数据经放大滤波后发送到ARM微控制器,经过A/D转换以及相关处理后,通过RS232口将数据发送到GPRS无线终端,GPRS无线终端又将这些数据打成一个个的IP包,经GPRS空中接口接入无线网络,并由移动通信服务商转接到Internet,最终通过各种网关和路由到达统一的远程数据处理中心,数据中心接收数据并对数据做后续处理。

远程数据中心也可以发送数据信息(各种命令及诊断信息)到无线数据采集模块,通过GPRS终端上的RS232接口输出到ARM微控制器上,采集终端在接收到远程数据中心的信息后,进行解码并执行相应的操作,以实现对采集现场的控制。[page]

GPRS无线终端嵌入了TCP/IP协议和UDP协议(用户可选),本系统采用TCP/IP协议,实际上GPRSDTU上实现的协议栈是TCP/IPOverPPP。

 

GRPS无线数据采集终端

图1 GRPS无线数据采集终端

2 硬件组成

2.1 传感器及放大器

理论上,该系统可以同时进行16路数据的采集,但在实际的调试中,只选用了2路来做模拟。

一路选用温度传感器,表面/液体热电偶NR281530,获取实时现场的温度,另一路采用压力传感器,PPM241BY油井专用型压力传感器,此系统在油田油井中具有较好应用。

在前端信号处理单元,由于各种传感器的输出参数不同,输出信号不仅电平低、内阻高,而且有共模电压以及现场恶劣环境的影响,因此,在选用放大芯片时要综合考虑以上因素。选取常用的MCP6S2X可编程增益放大器对原始信号进行放大,OP07CP做后续滤波芯片。

2.2 微处理器

微处理器是系统工作的核心,其性能的好坏直接决定了数据采集系统性能的优劣。基于本采集系统对数据实时性和精度的要求,以及易操作性方面的考虑,选择32位的ARM7系列处理器,它具有以下特点:

·体积小、低功耗、低成本、高性能;

·支持Thumb(16位)/ARM(32位)双指令,能很好兼容8位/16位器件;

·大量使用寄存器,指令执行速度快;

·指令长度固定;

·寻址方式灵活简单,执行效率高

本系统采用PHILIPS公司的单片32位微控制器LPC2134,它是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI2STMCPU,含有128KB的FLASH,该存储器用作代码和数据的存储。

LPC2134拥有两个异步串行口UART0和UART1,本系统中将UART0与GPRS终端相连,实现数据传输。它采用16字节收发FIFO,内置波特率发生器,包含使能实现软件控制的机制。

硬件SPI接口是一个同步、全双工串行接口,最大数据位速率为时钟速率的1/8,可配置为主机或从机。本系统中SPI接口作为主机,根据不同的中断,控制多个从机,包括可编程增益放大器MCP6S2X,使用SPI总线访问SD卡,以及控制开发板上的数码管显示。

A/D转换器是2个8路10位逼近式模/数转换器,测量范围是0~313V,10位转换时间大于或等于2144μS,一个或多个Burst转换模式。

2.3 GPRS终端

GPRS终端选用的是南京傲屹电子有限公司的AYG285C,它是采用GPRS模块专为工业集成设计的,在温度范围、震动、电磁兼容性和接口多样性等方面均采用特殊设计,保证了恶劣环境下的工作稳定性,基于GPRS公网的数据传输具有通信范围广,传输稳定可靠等特点。通过按键可以进行模块参数设置或者进行网络数据通信,串口波特率在300~115200bps可调,校验位可选:无校验,奇校验,偶校验。支持协议PPP、IP、TCP、UDP、DNS、PING的客户端功能。另外,电源、工作状态有LED指示,方便现场查看MODEM运行情况。

3 系统软件实现

3.1 μC/OS2Ⅱ嵌入式操作系统

当需要进行多任务处理和调度时,一个嵌入式实时操作系统就必不可少。为此系统中采用源码公开的μC/OS2Ⅱ操作系统,它具有执行效率高、占用空间小、实时性能优良以及可扩展性强等特点,最小内核可编译至2K字节。

μC/OS2Ⅱ的移植需要满足以下要求:

·处理器的C编译器可以产生可重入代码;

·可以使用C调用进入和退出临界区代码;

·处理器必须支持硬件中断,并且需要一个定时中断源;

·处理器需要能够容纳一定数据的硬件堆栈;

·处理器需要有能够在CPU寄存器与内核和堆栈交换数据的指令。

本系统使用的LPC2134ARM7处理器满足以上所有条件,因此可以对其进行移植。根据μC/OS2Ⅱ的要求,移植μC/OS2Ⅱ到一个LPC2134ARM7体系结构上需要提供2个或3个文件:OSCPU.

H(C语言头文件)、OS-CPU-C.C(C程序源文件)及OS-CPU-A.ASM(汇编程序源文件)。

数据采集任务中,采用C语言进行编程,但对于系统的初始化,仍然采用汇编来制作启动代码,它可以实现向量表定义、堆栈初始化、系统变量的初始化、中断系统初始化、I/O初始化、外围初始化、地址映射等操作。

芯片复位后,系统初始化流程如图2所示。

 

系统初始化流程图

图2 系统初始化流程图

3.2 接口程序及SD卡驱动的实现

在实时内核下,接口程序读取A/D采样数据的方法通常有三种:程序延时法、ADC转换完毕时产生中断法和程序循环等待的方法。其中循环等待的方法CPU开销小,不需要中断服务,比较适合嵌入式系统中采用。

循环等待A/D读取数据的伪代码如下:

 

 

之间通过串口相连,采集数据先通过开发板串口UART0发送到无线数据终端AYG285C的缓冲区,然后缓冲区将数据打成一个个数据包,通过GPRS网络发送到远程数据处理中心。因此,在μC/OS2Ⅱ下LPC2134的UART底层接口驱动显得尤为重要。

UART0初始化函数片断如下:

 

 

在本系统中,串口通信采用8位数据位,1位停止位,奇校验,无流控制。在实际使用中为接收数据稳定波特率设置为9600bps效果较好。在测试系统中,测量到的数据范围为10-6~101,有效数字为4位,所以在发送数据时采用每帧数据由3个字节组成,第1个字节为数据指数部分,高四位为0,低四位中的第四位表示指数符号,0表示正数,1表示负数;其余三位表示指数的数值部分。

后续两个字节为数据底数部分,采用压缩的BCD码编码方式,高位在前,低位在后,即一个字节表示两位十进制数,则两个字节表示四位十进制数。

[page]

LPC2134的UART0使用中断方式进行通信,这样不会占用CPU很多时间,效率比较高。当中断服务处理子程序接收到一次中断,它仅能知道UART0产生了中断,还需要查询中断标志寄存器U0IIR,依据不同中断源类型进行不同处理。在处理完当前的中断源类型之后,不能立即退出服务,而应当继续判断U0IIR寄存器最低位是否为0。

如果为0,则表示还有尚未处理的中断,应该继续根据U0IIR[3∶0]判断中断源类型,进行处理,直到U0IIR的最低位为1,最后发送中断结束命令结束中断服务处理程序。

SD卡读写软件移植到ARM7微处理器LPC2134上的结构图如图3所示。其中硬件抽象层是读写SD卡的硬件条件配置,是与硬件相关的函数;命令层包含SD卡的相关命令以及卡与主机之间数据流的控制,这一层与实时操作系统μC/OSⅡ相关,与硬件无关;应用层是向应用程序提供卡的API函数,这一层由实时操作系统μC/OSⅡ控制。

 

SD卡读写软件移植结构图

图3 SD卡读写软件移植结构图

3.3 应用程序实现

系统初始化完成后,创建各个任务,进入多任务调度处理。应用程序框架流程如图4所示。

本系统的主要任务是完成数据采集。系统在得到远程数据中心的采集命令后,选择适当的采集通道,并设置A/D模块参数。在采集过程中判断是否要停止,如果停止,任务处于等待挂起状态。

 

应用程序框架流程图

图4 应用程序框架流程图

4 结语

本系统采用了ARM+RTOS以及ARM+GPRS的方案,选取适当的器件构成了多路的数据采集系统,具有一定的实用价值。考虑到现场采集到的多是小信号,为了有较好的准确度和精确度,对A/D后的采集数据还要进行分析和调整,然后再发送到数据处理中心。为此,可以进行反复实验,获得多组数据,最后通过最小二乘法曲线拟合来提高准确度。另外,随外界环境的变化,也可以修改拟合曲线以适应具体的应用。随着3G时代的来临,大量数据信息的传输成为可能,可以考虑采集现场的相关视频信号。在短消息功能,数据加密技术以及软件操作和文件管理上还有待进一步开发和优化。

关键字:ARM  多路信号  数据采集系统  LPC2134 引用地址:基于ARM的嵌入式多路信号数据采集系统

上一篇:STM32单片机硬件关键基础精华及注意事项
下一篇:基于ARM9的船载海水监测系统设计

推荐阅读最新更新时间:2024-03-16 13:07

ARM嵌入式平台的VGA接口设计(ADV7120)
大多数嵌入式产品的显示终端都选择LCD,但在某些需要大屏幕显示的应用中,工业级LCD的价格比较昂贵,且现有的大屏幕显示器(包括CRT显示器和LCD显示器)一般都采用统一的15针VGA显示接口.三星公司ARM9芯片S3C2410以其强大的功能和高性价比在目前嵌入式产品中得到广泛的应用.笔者在开发基于ARM嵌入式平台的血液流变测试仪的过程中,成功地利用高性能视频D/A转换芯片ADV7120,将S3C2410自带的LCD扫描式接口转换为VGA接口,使之能够驱动VGA接口的显示器. 1 VGA接口介绍 近年来,业界制定出了众多数字化的显示接口协议,较为典型的是DVI(Digital Visual Interface).由于数字接口
[单片机]
<font color='red'>ARM</font>嵌入式平台的VGA接口设计(ADV7120)
ARM在2009 GSMA上展示移动技术创新
      在2009 GSMA Mobile World Congress上,ARM将向观众展示最新的移动技术发展趋势和战略。ARM将进行一系列产品演示,并与合作伙伴一起举办活动,让观众立即了解未来的移动通信技术。ARM在2008年取得了多项重大成绩,包括:      • ARM®合作伙伴在手机市场中的芯片出货量突破100亿大关,平均每部手机含两个ARM处理器      • 首次在32nm HKMG晶圆上展示ARM技术      • 推出多种新型设备,包括G1手机和第一部采用Cortex™-A8处理器的手机       此外,ARM首席技术官Mike Muller将在“开放源代码总动员分会场进行题为“移动 Web2.0和
[网络通信]
ARM之汇编与C混合编程
于ARM体系来说,不同语言撰写的函数之间相互调用(mix calls)遵循的是 ATPCS(ARM-Thumb Procedure Call Standard),ATPCS主要是定义了函数呼叫时参数的传递规则以及如何从函数返回,详细内容可以查看ADS1.2 Online Books ——Developer Guide的2.1节。这篇文档要讲的是 汇编代码中对C函数调用时如何进行参数的传递以及如何从C函数正确返回。 不同于x86的参数传递规则,ATPCS建议函数的形参不超过4个,如果形参个数少于或等于4,则形参由R0,R1,R2,R3四个寄存器进行传递;若形参个数大于4,大于4的部分必须通过堆栈进行传递。 ATPCS中个寄
[单片机]
<font color='red'>ARM</font>之汇编与C混合编程
DSP与ARM存储器架构和指令集有哪些差异
DSP DSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度。另外还允许在程序空间和数据空间之间进行传输,因为增加了器件的灵活性
[嵌入式]
从0开始学ARM-CPU原理,基于ARM的SOC讲解
一、计算机架构 在了解计算机架构之前,我们先来认识几位对计算机的发明做出关键共享的几位大佬。 1. 巴贝奇 机械计算机之父,英国贵族,曾孤军奋战下造出的第一台差分机,运算精度达到了6位小数,后来又设计了20位精度的差分机,其设计理念已经达到了机械设计登峰造极的境界。 1985~1991年,伦敦科学博物馆为了纪念巴贝奇诞辰200周年,根据其1849年的设计,用纯19世纪的技术成功造出了差分机2号。 巴贝奇堪称上个世纪最强大脑,他的大脑现保存在英国科学博物馆。 程序员的祖师奶奶Ada正是在和巴贝奇共同工作时提出了程序循环分支等等我们现在都习以为常的编程理念。 2. 图灵 被称为计算机科学之父,人工智能之父。1931年图灵
[单片机]
从0开始学<font color='red'>ARM</font>-CPU原理,基于<font color='red'>ARM</font>的SOC讲解
基于ARM的卷烟32位码防伪识别系统的设计与实现
为了保证消费者利益,卷烟防伪技术越来越受到烟草行业的重视,烟草工商企业不断寻求技术含量高、保密性强的新型防伪技术和防伪产品。目前常见的卷烟防伪技术有包装新型激光全息防伪标识和防伪技术光致变色油墨等。一些卷烟产品采用数码防伪技术,如部分“芙蓉王”香烟在每一盒(条)产品透明纸上喷印有一组惟一性的18位产品防伪数码(即产品的身份代码),使造假者无法批量假冒,对该数码进行查询,便可获得产品真伪信息。该方法可以确定该产品是否出自正规厂家,但无法得知卷烟是由哪家零售户出售的,且只适用于特定品牌的香烟。因此,本文利用国家烟草专卖局对每条卷烟所编32位代码进行查询,32位代码是每条卷烟的惟一身份代码,与零售户信息存在对应关系,通过32位码可获取条
[单片机]
恩智浦将基于ARM的Layerscape®系列处理器与微软Azure IoT集成
德国纽伦堡,2018年2月27日 – 作为全球领先的高级连接解决方案提供商,恩智浦半导体 (NXP Semiconductors™ N.V.)(纳斯达克代码:NXPI),今日宣布其Layerscape片上系统(SoC)平台与微软Azure IoT Edge集成。如此一来,开发人员便能够借助可信计算平台,在Azure IoT Edge所提供的丰富框架内轻松创建各种即时可用的应用。 若要在边缘设备上运行基于云的应用,需要一个安全的执行环境。Layerscape SoC能够保证Azure IoT Edge计算的安全执行,帮助运行网络、数据分析和计算密集型机器学习应用。 恩智浦数字网络资深副总裁Tareq Bustami评价道:“
[半导体设计/制造]
基于ARM的太阳能发电控制系统功率研究
引言   目前,我国国内太阳能自动跟踪器主要有:压差式太阳能跟踪器,控放式太阳跟踪,时钟式太阳跟踪器,比较控制式太阳跟踪器。纯机械式的跟踪器和时钟式的机电跟踪器精度偏低,本系统采用了精度相对较高的光敏电阻控制的双轴太阳跟踪器的控制方式使光伏电池始终朝向太阳;在天黑后,能够使电池板重新朝向东方,实现日循环运行。   太阳能发电控制系统   传感器结构   该跟踪器的传感器结构见图1。设置一个圆筒形外壳,在圆筒外部东、南、西、北四个方向上分别布置4 只光敏电阻;其中P1、P3 东西对称安装在圆筒的两侧,用来粗略的检测太阳由东往西运动的偏转角度即方位角;P2、P4 南北对称安装在圆筒的两侧,用来粗略检测太阳的视高度即高度角;在圆
[单片机]
基于<font color='red'>ARM</font>的太阳能发电控制系统功率研究
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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