基于ARM的海底大地电磁信号采集系统主控模块改进

发布者:知者如渊最新更新时间:2012-10-29 来源: 21ic 关键字:ARM  大地电磁  μCOS-II  动耗 手机看文章 扫描二维码
随时随地手机看文章

1 海底大地电磁仪的分析

海底大地电磁数据采集器是对海底大地电磁场和海底环境信息进行自动采集的智能化仪器,旨在建立具有我国特色的海底大地电磁探测技术,并使之实用化,为我国海域区域地质调查提供新的技术支撑,为发展我国海洋电磁探测奠定基础。仪器于2000年研制成功后,在我国东海大陆架进行了成功试验。

整个数据采集器由电道前放板、磁道前放板、主放板、辅助通道板、时钟板、数字板、标定信号板和主控单元构成层叠式电路结构。整个电路板的整体何种为90×96×170mm3,重量约1kg。采集器使用+5V和±12V三路电源,工作状态下整机功耗为7W,正常工作的环境温度为-50℃~+70℃。目前一期完成的海底大地电磁仪最长记录时间为7天,频率范围为0.0001Hz~100Hz。数据采集器配置容量为144MB的固态电子盘。从数据处理的逻辑次序看,整个系统分为八部分,包括前置放大、数字和模拟滤波、低通滤波、高通滤波、主放大器、数据转换、缓冲存储和数据存储。


一期建设中,海底大地电磁仪器整体效果还是令人满意的。但也存在一些不足,主要体现在以下几个方面:

(1)系统功耗

目前系统正常工作下,功耗约为7W。其中主要包括磁场传感器功耗290mW、倾斜传感器功耗45mW、振动传感器功耗0.5W、主控电路功耗2W等。在电池电能一定的情况下,整个采集可以持续7天左右,采集时间长度不够。

(2)主控单元

目前采用286系列主控单元,在嵌入式系统发展到很高水平的今天,已不适应高效率、高集成度的技术需要。

(3)采集稳定性

海底大地电磁采集要求各采集点精确同步,所以系统对稳定性的要求十分高。而目前系统采用单道大循环程序实现各项系统任务。这样不利于提高数据采集的稳定性。

2 改进方案的设计思路

海底电磁数据采集需要的海上作业,采集成本大。为了达到效率最大化,就必须明显降低原有系统的功耗,并提高数据采集的稳定性。鉴于此,改进方案如下:

(1)用ARM芯片取代286系列主控单元

ARM具有集成度高、能耗低等特点,通过使用ARM芯片取代目前的286系列主控单元将极大地降低系统的功耗,同时也可以缩减电路,进而降低电路的复杂度,减小系统的体积。


(2)用μC/OS-II取代目前的单道程序

μC/OS-II取得了美国联邦航空管理局(FAA)对于商用飞机的、符合RTCA DO-178B标准的认证,表明μC/OS-II具有足够的安全性和稳定性。使用操作系统管理多任务,实现多任务的并发和同步。通过这种方式取代目前的单道大循环程序,可以提高系统的稳定性。

3 改进主控单元的硬件组成

ARM架构在推出后获得了成功,各种ARM核心版本以及不同系统方案种类繁多。使用ARM本身已经比原有主控电路功耗降低,在满足实际需要的情况下,还可以在ARM各架构中选择功耗较低的。最终选择了ARM7TDMI结构,部分架构功耗比较见表1。由于原有数据采集系统前台采集部分和后台主控部分使用ISA总线标准进行连接,在ARM7TDMI架构的ARM芯片中,选择了ATMEL公司支持ISA总线扩展的AT91M40800。为完成系统所需任务,根据ATMEL公司发布的EB40开发板电路设计主控单元。片内SRAM 8KB,外部Flash2MB,另有外部器件如串行接口和网络接口等。AT91m40800共有37个寄存器,其中包括31个32位通用寄存器(含程序计数器PC在内)、6个32位状态寄存器(但目前只使用其中的12位)。运行时的任意时刻,可见寄存器包括15个通用寄存器(R0~R14),一个或两个状态寄存器及程序计数器PC,其他寄存器多用于备份。经测试证明:所购芯片功耗测量均值小于0.25mW,较之原有主控单元2W的功耗,显著降低。[page]

表1 部分ARM架构功耗比较表

CPU Description Area(mm2) Power(mW) Clock(MHz) Mips(MHz)
ARM7TDMI Core 0.53 <0.25 60~110 0.9
ARM9TDMI Core 1.1 0.3 167~220 0.9
ARM9E-S Synthesizable Core - 1 133~200 1.1
ARM1020E Macrocell32+32KB cache 10 0.85 200~400 1.24

4 嵌入式实时操作系统μC/OS-II的移植

尽管μC/OS-II是用标准C语言写的,但当应用到某个具体的CPU上时,还需要用C和汇编语言写一些与处理器相关的代码。改写过程主要结合改进系统所采用的新主CPU AT91m40800的一些具体参数,完成整个操作系统的移植。

μC/OS-II可以大致分为内核、任务处理、时间处理、任务同步与通信、与CPU的接口等五部分。内核(OSCore.c)是操作系统的处理核心,包括操作系统初始化、系统运行、中断处理、时钟节拍、任务调度和事件处理等多任务。任务处理部分(OSTask.c)是与任务操作密切相关的,包括任务的建立、删除、挂起、恢复等。时钟部分(OSTime.c)定义μC/OS-II的最小时钟单位是Timetick(时钟节拍)。任务同步和通信部分包括信号邮箱、邮箱队列和时间 标志等部分,主要用于任务间的互相联系和对临界资源的访问。与CPU接口部分是指μC/OS-II针对所使用的CPU的移植部分,主要包括中断级任务切换的底层实现、任务级任务切换的底层实现、时钟节拍的产生和处理、中断和相关处理部分等内容。

μC/OS-II除了良好的稳定性和安全性以外,很重要的特点就是对多任务管理的优异表现。μC/OS-II可以管理多达64个任务。除了8个μC/OS-II自用的任务以外,用户的应用程序最多可有56个任务。用户可以通过系统提供的任务结构来自行创立任务。改进方案中需要管理的任务包括GPS校时、读采集数据、数字滤波和存数据,执行框架如图1。

在初始化时,进行GPS校时。读优先级最高,采集器不停地读数据。当数据在缓冲区中还没填满时,进行滤波和写存储器的任务,一旦缓冲已满就要继续执行读操作。这里所说的读操作实际上是系统从缓冲中读的操作,并不是实际的采集器读地磁信号操作。写任务其次,必须连贯地完成一次写任务,中途不能被打断。所以只有在不进行读操作时,才可以进行写操作。滤波任务在读任务完成后执行,但是如果前一个写任还没有完成,就不能滤波,以防止新数据无法写入。所以只有当新的读任务结束,且旧的写任务完成后方可执行新读数据的滤波任务。通过μC/OS-II提供的信号量机制,可很好地实现任务进程的互斥与并发。


5 ARM对外围设备的扩展

主控单元与前台数据采集模块间仍保留原有ISA总线接口标准,只是自行设计ARM主控单元的接口电路如图2所示。符合原有协议标准后,改进电路成功替代了原来的主控。

虽然串行接口速度较慢,但完全可以满足与上位机之间的通信。改进方案首先实现了ARM对于串口的扩展,作为通信手段之一。使用ARM公司自行开发的的ARM调试专用环境ADS1.2测试串行接口的效果:扩展程序所设计的输出结果为AT9140800USART_CUGB,连接采集仪和PC机,使用Windows自带的超级终端可以看到输出结果与设计一致,表明扩展是成功的。

各采集器间及采集器与上位机交互还可通过网络实现。改进方案基于μC/OS-II移植IP协议栈后,通过扩展网络接口卡,可实现网络功能。由于网络接口芯片本身也遵守ISA标准,所以扩展的网络接口还可以用来仿真测试ISA总线。检测总线时序情况就可测试主控模块的功能情况。抓取ISA设备时序,即得出系统接总线是否符号ISA协议标准。写一次后,逻辑分析仪截出几次时序,结果如图3所示。图3时序情况:/CS8019为网络接口芯片片选信号,/WE为写使能信号,/OE为输出使能信号,A1~A5为低5位地址,D0~D7为8位数据位。图3中显示写使能一次后,输出多次,对应地址循环(程序设定的输出效果),数据位则是输出8019的数据,具体内容没有意义。如图3虚线处,在C1时刻,开始进行写操作;C2时刻输出,低5位地址为00000;C3时刻第二次输出,地址为00001;C4时刻第三次输出,地址为00010。依次类推,表明主控单元改进满足了ISA总线的要求,网络接口扩展也正常。基于此,通过与前台数据采集模块直接连接,即可进行海底大地电磁数据的高效采集。

由于采用ARM芯片取代原有主控单元,仅此一项就降低功耗约25%,实现了功耗降低的要求。另外在采用了操作系统后,将使整个采集过程更稳定有序,提高了整个采集过程的准确性和安全性。


关键字:ARM  大地电磁  μCOS-II  动耗 引用地址:基于ARM的海底大地电磁信号采集系统主控模块改进

上一篇:基于嵌入式Linux的智能手机省电设计
下一篇:基于uCLinux和S3C4510B的网络通信设计

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

到2012年,ARM将取代x86在军工业与医疗的主导
市场研究机构Semicast预估,工业与医疗应用领域的32/64位微控制器(MCU)与嵌入式微处理器(eMPU)营收,可由2010年的16亿美元成长一倍,到2015年达到32亿美元的水平,这期间的年平均复合成长率(CAGR)约为15%。而其中受益最多的厂商是ARM,该机构预测在以上应用市场采用ARM核心的微控制器/嵌入式微处理器销售额,可在2015年超越10亿美元。 Semicast指出,从历史记录来看,工业与医疗应用领域通常被视为对组件处理效能要求不高,但事实上,这些应用领域已经成为32/64位嵌入式微处理的大客户许多年。在过去,对嵌入式处理器的需求一般是以“类PC(PC-like)”应用的x86架构组件为主,例如AT
[医疗电子]
ARM Linux (S3C6410架构/2.6.35内核)的内存映射(二)
本文讲述Linux系统启动过程中内核空间的映射。 Linux系统内核启动过程中,会在start_kernel() - setup_arch() - paging_init()函数中建立页表,下面详细记录一下其中每一个重要的步骤。(下面演示的代码经过删减) 先看函数prepare_page_table() static inline void prepare_page_table(void) { unsigned long addr; for (addr = 0; addr MODULES_VADDR; addr = PGDIR_SIZE) { pmd_clear(pmd_off_k(addr)); } for ( ;
[单片机]
嵌入式JavaPOS系统测试的设计与实现
0 引 言    随着嵌入式计算机应用技术的发展,嵌入式技术已经广泛应用到现代生活的方方面面。在零售系统方面,零售收款机是嵌入式应用的一个重要领域。目前,市场上的收款机大体上可分为三类:第一类是基于PC和DOS/Windows体系的,这类产品目前占市场绝大多数,属于高端产品,价格太高,适合大的商场和销售系统;第二类是基于单片机(51系列居多)的,基本上没有操作系统的支持,功能也较弱,主要用于餐饮娱乐,占据中低档市场;第三类是正在快速发展的基于嵌入式芯片和嵌入式操作系统的,价格较低,功能较强,适用于中高档市场,这类产品将是未来市场的主体。以上三类收款机的开发平台形形色色,基本上是每一款就是一种开发平台,没有统一的规范、开发和调试平台。
[测试测量]
嵌入式JavaPOS系统测试的设计与实现
DSP + ARM架构处理器为机器视觉带来强大运算和控制能力
一些工业、航空电子控制、视觉应用和高端测量测试,如生物影像处理等在实现控制、显示的同时,还需要较强的运算和信号处理能力。德州仪器 (TI) 近日宣布在现有DSP + ARM产品的成功基础上推出Integra系列处理器C6A816x,集成了高性能ARM Cortex-A8内核和高达1.5 GHz的单内核浮点与定点DSP性能。   “有很多算法在DSP平台可以实现,在ARM上也可以;但有些特定的算法,如数据滤波、图像处理等放在DSP上运行的效率会高很多,可能达到60%以上。因此DSP + ARM 的组合架构堪称理想架构”,TI数字信号处理系统业务拓展经理程自清说,因为 DSP 可专门用于处理密集型信号处理需求、复杂的数学函数以及
[单片机]
DSP + <font color='red'>ARM</font>架构处理器为机器视觉带来强大运算和控制能力
基于ARM7嵌入式系统的数据采集与无线传输模块的设计方案
    本文提出了一种基于ARM7嵌入式系统的数据采集与无线传输模块的设计方案,实现高精度、快速、实时的数据采集与传输。介绍了基于LPC220芯片的数据采集系统,给出了由嵌入式LPC2220微处理器和射频收发芯片nRF905组成的无线传输模块设计。当其工作在868 MHz频段时,数据传输速率可达1 Mbit·s-1,采用高增益天线,使得传输距离可达800 m以上,且表现出良好的稳定性。最终实现高精度、快速、实时的数据采集与传输。     随着数据监测、无线通信和EDA技术等应用领域的不断扩展,人们对数据采集系统的采集精度、采集速度以及数据存储量都提出了更高的要求。针对当前数据采集系统的不足,提出了一种基于ARM7处理器LPC222
[单片机]
ARM命名规则
ARM==Advanced RISC Machines 它开创了一种崭新的商业模式,实现了无厂房式工厂,依靠出售芯片技术知识产权的授权来盈利。 其次,ARM是一种architecture,同MIPS、PowerPC、X86等并列。谈到架构,这实际上本身就是一个很复杂的概念。就现在的理解来看,架构是一种系统设计蓝图,规划了方方面面的技术规范。应该说,架构是理论,那么采用同样的架构,实现的形式可以不相同。这也就是为什么同一架构会有那么多衍生的处理器实现。 ARM可以看作是一种技术,是RISC的代表。 应该说,ARM公司位于产业链的最上层,盈利也最多。中国国内的一些OEM厂商,只是处于下游的小鱼,盈利有限。中国的信息产业要
[单片机]
<font color='red'>ARM</font>命名规则
ARM指令分类(详细)
指令: 数据处理指令只能对寄存器内容进行操作,而不能对存储器内容操作 所有数据处理指令均可使用s后缀影响标志位 数据处理指令 数据传送指令 算数逻辑运算指令 比较指令 跳转指令 程序状态寄存器访问指令 存储器访问指令 数据传送指令: 算数运算指令 逻辑运算指令 比较指令 跳转指令 程序状态寄存器访问指令 存储器访问指令 单数据传送指令 块数据传输 后一个数为寄存器 伪指令 伪指令不像机器指令那样在处理器运行期间由机器执行,而是在汇编程序对源程序汇编期间进行处理 符号定义伪指令 数据定义伪指令 报告伪指令 汇编控制伪指令
[单片机]
<font color='red'>ARM</font>指令分类(详细)
IAR推出新版IAR Embedded Workbench for Arm功能安全版,该版本配备经过认证的静态代码分析功能
IAR推出新版IAR Embedded Workbench for Arm功能安全版,该版本配备经过认证的静态代码分析功能 瑞典乌普萨拉,2024年2月20日 – 全球领先的嵌入式系统开发软件解决方案供应商IAR宣布 :推出其旗舰产品IAR Embedded Workbench for Arm功能安全版的最新版本9.50.3。此次发布进一步加强了IAR支持开发人员创建安全、可靠和符合标准的嵌入式应用程序的承诺,涵盖了汽车、医疗设备、工业自动化和消费电子等多个行业。该版本中最重要的新功能是经过认证的C-STAT,这是专为安全关键应用程序设计的静态代码分析工具。 IAR Embedded Workbench for Ar
[嵌入式]
IAR推出新版IAR Embedded Workbench for <font color='red'>Arm</font>功能安全版,该版本配备经过认证的静态代码分析功能
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

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

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