基于ARM的电磁流量计设计

发布者:时光如梦最新更新时间:2011-05-29 关键字:嵌入式系统  电磁流量计  ARM-Linux  TCP/IP  彩屏显示 手机看文章 扫描二维码
随时随地手机看文章

O 引言
    电磁流量计是一种测量导电介质体积流量的计量仪表,具有测量精度高、稳定性好、可靠性高等特点。电磁流量计除可测量一般导电液体的流量外,还可测量液固两相液体、高粘度液体及盐类、强酸、强碱液体的体积流量,可广泛应用于水泥、化工、轻纺、冶金、矿山、造纸、医药、给排水、食品饮料、环保等工业技术部门,其产品的性能、质量和可靠性对上述企业的经济效益有着重要的影响。
    嵌入式系统(Embedded System)是以应用为中心和以计算机技术为基础的,并且软硬件是可以裁减的,能满足应用系统对功能、可靠性、成本、体积、功耗等指标的严格要求的专用计算机系统。它是面向用户、面向产品、面向应用的专用系统,与通用的计算机系统相比具有如下特点:嵌入式CPU通常具有低功耗、体积小、集成度高、成本低等优点,能够把通用的CPU中许多由板卡完成的功能集成到芯片内部;嵌入式系统的开发和应用不容易在市场上形成垄断;嵌入式系统产品一旦进入市场,一般具有较长的生命周期;嵌入式系统的硬件和软件都必须高效率地设计;嵌入式系统必须有一套交叉开发工具和环境才能进行开发。
    检测仪表是实现参数检测过程的重要一环,一般都具有变换、测量装置和显示装置三部分。针对于检测仪表的要求,合理剪裁软硬件实现高集成度、小型化,使得检测仪表不仅具有传感测量、补偿计算、显示的功能,还具有更加强大的信息处理、比较推理、故障诊断、自学习自适应等智能化功能。应用嵌入式系统的网络接入技术,还能使仪表完成远程维护、远程控制、故障报警、信息发布与共享等以前无法实现的功能。嵌入式系统技术的高度发展,给检测与仪表技术带来了前所未有的发展空间和机遇,为检测仪表的智能化、网络化和微型化铺平
了道路,为仪表行业的发展带来了广阔的前景。
    传统电磁流量计一般采用8位或16位的单片机,由于单片机性能较弱和外围接口少,无法完成复杂算法或者多项并行任务;在显示方式上一般采用LED或段式LCD,只能显示数字、字母、汉字和一些粗糙的图案;在数据存储方面一般采用小容量的EPROM存储器,流量数据存储一般以二进制方式存储,不具有通用性;在通信方式上,一般采用RS 232或RS 485,其开放性不高,组网距离短。为了提高性能和功能,有些电磁流量计甚至采用了多个单片机协同工作的方式,增加了电磁流量计设计与实现的复杂度。因此有必要采用高性能的32位处理器来设计电磁流量计。
    基于32位ARM处理器和嵌入式Linux操作系统构建嵌入式系统开发平台,并将其应用于电磁流量计的设计和开发中,将有利于提高高端电磁流量计产品的质量,更好地满足用户需求,而且对我国电磁流量计检测技术水平的发展也具有重要的现实意义。由于嵌入式系统的设计与开发的复杂性和高难度,本文所构建的高性能32位嵌入式系统开发平台,也可推广应用于其他高端仪器仪表的设计中,缩短新产品的设计开发周期,增强企业对客户需求的响应能力和产品的更新换代能力。

1 总体设计
1.1 ARM处理器的选择
    结合电磁流量计的应用背景,选择32位的嵌入式 ARM处理器。根据ARM处理器的应用选型,并考虑到ARM处理器价格、性能、集成度和功能、设计支持及开发工具的支持等因素,以及应用中对于以太网和 USB接口功能的要求,选择了Atmel公司的 AT91RM9200工业级芯片。
1.2 嵌入式操作系统的选择
    对于一种嵌入式操作系统通常有这样一些评估选择标准:实用性、需要消耗的资源数(包括SDRAM, FLASH MEMORY等)、支持软件的丰富程度、可靠性以及其执行性能等。Linux已经被移植到了很多平台,包括ARM,MIPS,SH3,Alpha,X86,PowerPC等,由成千上万的爱好者开发的应用软件、协议栈以及丰富的设备驱动程序;更重要的是这些驱动很多都以Open Source的形式发布出来,使得大家都从中受益。
1.3 总体设计框架
    通过对电磁流量计的方案选择,并综合国内外电磁流量仪表产品的智能化、集成化、网络化的发展趋势,系统总体结构如图1所示。系统主要由硬件子系统和软件子系统组成。

a.JPG
    电磁流量计的硬件子系统主要由电源模块、信号输入模块、CPU核心模块、励磁输出模块、人机交互模块、通信接口模块和调试接口模块组成。各模块的功能描述如下:
    电源模块:为整个硬件子系统提供稳定可靠的电源。
    CPU核心模块:由ARM处理器、SDRAM, FLASH以及辅助电路构成最小系统,同时也是运行嵌入式Linux的基本硬件平台。
    信号输入模块:将传感器输出的小电压或电流信号进行放大、滤波以及转换为数字量,以便进行软件处理。
    励磁输出模块:通过D/A转换器输出低频三值矩形方波,并通过功率放大输出给传感器。
    人机交互模块:由键盘接口和TFT液晶显示接口组成,通过键盘和菜单界面进行系统参数设定,并由液晶屏实时显示瞬时流量、累积流量和流量曲线等。
    通信接口模块:包括以太网接口、USB接口以及 RS232接口,完成数据通讯和流量传输功能。
    调试接口模块:由JTAG调试接口和DBCOM调试串口组成。[page]

    软件子系统由引导加载程序(Boot Loader)、嵌入式Linux操作系统和应用软件组成。嵌入式Linux的启动需要引导加载程序来辅助完成,Linux、内核主要由进程管理、内存管理、文件系统管理、设备控制及网络协议等几个部分,为应用软件提供了运行环境。图中的硬件设备控制提供了硬件平台中相关的设备驱动程序,实现了操作系统与硬件之间的信息交互和控制,而系统函数调用为Linux内核和应用软件之间的信息交互提供了接口。

2 硬件系统设计
    基于低频三值矩形波励磁的电磁流量计的硬件结构图如图2所示。其中,CPU核心模块是系统软件的运行基础,FLASH存储器用于存储可执行程序的二进制映像文件,供系统启动时加载到SDRAM内存空间运行;由于硬件系统的复杂性,调试模块加强了硬件系统的调试功能;流量传感器由一对励磁线圈和一对对称分布的检测电极构成。

b.JPG
    ARM9处理器通过与其相连的D/A芯片产生低频三值矩形波,励磁线圈接受该低频三值矩形波经功率放大后的励磁信号而产生感应磁场,在电极上产生因流体切割磁力线而产生的感应电动势(即测量信号),并将之送人信号输入模块进行处理,信号输入模块对流量传感器输入的信号进行放大、滤波及A/D采样后输入ARM9处理器。系统由TFT液晶显示屏提供人性化的菜单显示操作界面,结合键盘进行人机交互;同时具有以太网、USB和RS 232通信接口可输出瞬时流量、累积流量和系统参数。

3 软件系统设计
    一个嵌入式Linux系统从软件的角度来看,通常可以分为四个层次,如图3所示。

c.JPG
    引导加载程序:包括固化在固件中的Boot代码(可选),和Boot Loader两大部分。
    Linux内核:特定于嵌入式硬件平台的定制内核以及内核的启动参数。
    文件系统:包括根文件系统和建立于FLASH内存设备之上文件系统,通常采用ramdisk作为根文件系统。
    用户应用程序:特定于用户的应用程序。有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面。
    其中,引导加载程序是嵌入式系统软件开发的第一个环节,它是操作系统和硬件的枢纽,为操作系统内核的启动提供了必要的条件和参数;引导加载程序的工作是初始化内存以及必要的硬件设备,调用内核加载器。从FLASH中加载操作系统映像到SDRAM中,并把控制权交给Li-nux;由Linux对硬件系统做进一步的初始化并控制应用程序。
    基于系统软件结构,在系统的启动过程中有3个主要软件组件参与其中:引导加载程序、Linux内核和Init进程。其启动过程如下:
    (1)系统在上电或Reset之后,AT91RM9200开始执行存放在NOR FLASH(系统将0x10000000映射到0x00000000,即ARM的复位向量)中的引导加载程序。
    (2)引导加载程序初始化CPU和内存控制器,对系统外设做最小程度的初始化,如初始化LED和串口等,检测内存并汇报启动中的诊断信息,然后将Linux内核映像解压到SDRAM中的某个位置并跳转到这个地址,把控制权交给Linux内核。
    (3)Linux的内核接管执行权后完成一系列的系统初始化和设置,包括设置中断向量,启动内存管理,初始化各个硬件设备,初始化网络协议等,最后建立根文件系统并生成系统进程之父Init进程。
    (4)Init进程负责启动所有必要的服务和用户应用程序,并进入嵌入式系统的工作状态。[page]

    在嵌入式Linux系统中,必须有固态存储设备来存储可执行的代码,本系统中采用了FLASH存储器。
    在该系统中,系统的存储设备空间分配结构如表1所示。

d.JPG
    电磁流量计的应用软件设计是根据系统需求,以嵌入式Linux内核为基础,通过Linux内核的系统调用接口函数并按照模块化结构实现的。该系统的最大特色在于提供了人性化的彩色液晶显示操作界面和以太网功能,因此在应用软件中是基于MiniGU1进行设计的,同时基于Modbus协议实现以太网功能。
    电磁流量计的应用软件整体构架需要考虑多任务和实时性两个方面问题。首先是A/D采样和励磁信号输出必须要保证实时性和同步性,这一点可通过AT91RM9200的两个定时器来保证,其中一个定时器用于控制D/A输出三值矩形方波,另一个定时器用于控制A/D采样;考虑到硬件电路的干扰,在应用中首先启动D/A定时器,然后延迟1/8励磁周期再启动A/D定时器。对于嵌入式Linux下应用软件的多任务,可以采用多进程或多线程的方式来实现。应用软件的主程序流程图如图4所示。

e.JPG

 

4 系统测试
    由于采用了嵌入式系统的新技术,特别是引入了32位高性能ARM处理器和嵌入式Linux操作系统,系统除了具备电磁流量计的基本功能外,还具有更强大的功能如流量数据文件存储、TFT彩屏显示以及以太网通讯等传统仪表无法完成的功能。它可以显示实时流量曲线和年、月、日、时、分、秒的实时时间;采用FLASH存储器,测量和运行数据存储保护安全可靠;使用Modbus通讯协议和TCP/IP协议,提高系统的网络化程度。
    分别对系统的图形用户显示操作界面、大容量的数据存储以及基于Modbus/TCP协议网络数据传输等部分进行功能测试。对嵌入式电磁流量计进行了系统测试和实验。结果表明嵌入式电磁流量计不仅具有传统电磁流量计的功能,而且具有流量曲线显示的TFT彩屏显示操作界面、流量数据文件断电存储和管理以及基于Internet的远程数据采集和远程控制功能。

5 结语
    仪器仪表的发展建立在新型检测系统软硬件平台性能提高基础之上。在传统检领域应用很广的8位单片机系统由于其性能和资源的局限性,只能完成仪器仪表的基本功能。随着微电子技术的发展及集成电路制造工艺的大幅提高,以高性能、低功耗、低成本等诸多优点的32位ARM处理器的出现及其在仪器仪表中的应用,使得仪器仪表更具智能化、人性化和网络化。
    流量检测仪表的显示方式、通讯方式和数据存储是仪表的重要组成部分。传统电磁流量计在显示方式上一般采用LED或段式LCD,只能显示数字、字母、汉字和一些粗糙的图案;在数据存储方面,信息存储一般以二进制方式存储,不具有通用性且存储容量小;在通讯方式上,一般采用RS 232或RS 485,其开放性不高。
    为了解决了上述不足,本文采用32位的ARM处理器和嵌入式Linux操作系统研制出了具有信息化、图形化和网络化的电磁流量计。它采用TFT彩色液晶屏显示方式,不仅可以显示流量数据还可以显示流量曲线,提高了显示的质量和内容;通过JFFS2文件系统采用文件的方式进行数据存储,且存储容量可达1 MB。同时可以使用U盘导出数据文件,增强了用户的信息存储和管理功能;采用以TCP/IP协议为基础的工业以
太网通讯方式,使得电磁流量计成为Internet网络中的独立节点,可实现基于Internet的远程数据采集和远程控制。

 

关键字:嵌入式系统  电磁流量计  ARM-Linux  TCP/IP  彩屏显示 引用地址:基于ARM的电磁流量计设计

上一篇:基于ARM的远程无线视频监控终端设计
下一篇:基于ARM9处理器的嵌入式指纹识别系统设计

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

一见倾“芯”,贸泽电子将亮相第六届深圳国际嵌入式系统
半导体与电子元器件业顶尖工程设计资源与授权分销商贸泽电子(Mouser Electronics) 宣布携手ADI, Cinch, Maxim, TE与TI于本月21-23日参加“第六届深圳国际嵌入式系统展”,现邀请广大观众莅临贸泽电子展位(1号馆1Q12),透过微观沙盘探索智能家居,工厂,农业,养殖,楼宇等背后的科技原理,开启未来都市生活的大门。此外,观众还将有机会体验VR赛车等互动游戏,并参与开发板抽奖活动。 随著物联网的商机和应用逐渐实现,嵌入式技术越来越多地融入生产、工作、生活的方方面面,技术变革带来的便利性、创造力与生产力提升越来越明显,各领域对智能化技术与产品的需求也越来越旺盛。矢志不渝地支持国内电子工程行业展会,促
[嵌入式]
分体式电磁流量计的安装场所要求
分体式电磁流量计是一种高精度的细密仪器,为了能到达抱负的丈量精度,安置所在的选择上我们有严酷的要求。在选择安置所在时应细致以下几个方面的要求。下面小编就给大家简单介绍分体式电磁流量计的安装场所要求: 1、分体式电磁流量计安置只管即便避开铁磁性物体及具有强电磁场的设置装备部署(如大电机、大 变压器 的等),以免磁场影响传感器的事情磁场和流量信号。 2、分体式电磁流量计安置应只管即便制止日晒雨淋,制止情况温度高于60℃及相对湿度大于95%。 3、分体式电磁流量计的安置应选择便于维修,运动方便的地方。 4、分体式电磁流量计应安置在水泵后端,决不克不及在抽吸侧安置;阀门应安置在流量卑鄙侧。 5、分体式电磁流量计应只管即便安置在干燥透风
[测试测量]
分体式<font color='red'>电磁</font><font color='red'>流量计</font>的安装场所要求
一种嵌入式便携数据采集分析仪
引言 对旋转机械的多点振动测试实践中,需要使用多种仪器,如示波器、动平衡仪、振动分析仪等。随着测试技术的进步,虚拟仪器的出现将其合而为一,大大简化了复杂的测试工作。虚拟仪器的概念是使用计算机对被测信号进行数据采集,并对采集到的数据序列进行分析和显示的全过程。按照虚拟仪器概念搭建的仪器需要三部分:计算机、数据采集硬件和分析软件。数据采集硬件一般由A/D板卡实现。然而计算机的进步和总线的变化使曾经可行的测量结构和分析程序在新的总线、操作系统上不能正常工作。各个厂家的A/D板卡一般只具有简单的采样触发方式;硬件和windows底层源代码的保密性又扼杀了用户自行开发新的采样触发方式的可能性。PC机体积过大不便移动工作;笔记本电脑
[单片机]
一种嵌入式便携数据采集分析仪
嵌入式系统U盘实时启动技术
  引 言   随着USB技术的发展,优盘在PC机系统上已得到广泛的应用,基本上取代了软盘,PC机系统可以实现从优盘启动。由于优盘性能稳定,体积小巧,访问速度快,因此它也非常适合作为嵌入式实时系统的存储设备。这为嵌入式实时系统的启动提供了一种崭新的思路,即从优盘启动。这种方法对嵌入式实时系统板上的程序存储空间要求不高,只要在Flash中存储嵌入式实时系统的Bootrom程序即可,将系统的映像文件放在优盘上,实现实时操作系统从优盘加载。 目前基于VxWorks设计的嵌入式实时系统应用非常广泛。嵌入式实时系统的启动方式多种多样,WindRiver公司提供的参考BSP(Board support PACkage)包中就提供了几
[单片机]
<font color='red'>嵌入式系统</font>U盘实时启动技术
嵌入式系统联谊会10周年纪念活动圆满结束
2018年11月24日,“嵌入式系统联谊会10周年纪念暨嵌入式系统联谊会第24次会议”在北航隆重召开。全国各地从事嵌入式教育、研发和科技媒体界的朋友们近200人汇聚一堂,共同回顾了过去10年里嵌入式系统联谊会的发展历程以及为推动嵌入式技术发展所做的点点滴滴,同时,一起展望了嵌入式技术未来的发展趋势,用嵌入式系统独有的视角诠释大科技!嵌入式系统联谊会委员北航何立民、北理工马忠梅、北工大韩德强、北大林金龙、天大郭玮,太原理工常晓明和北邮邝坚教授,以及孙加兴和曹重英博士到会。会议由嵌入式系统联谊会秘书长何小庆主持,北京航空航天大学资产公司副总经理、北航科技园总经理、北航文化传媒集团总经理刘小龙先生为本次会议致辞。刘总对联谊会成立10周年
[嵌入式]
<font color='red'>嵌入式系统</font>联谊会10周年纪念活动圆满结束
使用电磁流量计 需避开这些错误
电磁流量计,具有精度高、寿命长的特点,在化工、环保、冶金等多个领域和行业都有所应用。但是在使用过程中,由于多方面的因素的影响,很容易会引起电磁流量计测量结果的不准确。那么造成电磁流量计产生误差的原因是哪些呢? 1、管内液体未充满 由于背压不足或流量传感器安装位置不良,致使其测量管内液体未能充满,故障现象因不充满程度和流动状况有不同表现。 若少量气体在水管管道中呈分层流或波状流,故障现象表现为误差增加,即流量测量值与实际值不符; 若流动是气泡流或塞状流,故障现象除测量值与实际值不符外,还会因气相瞬间遮盖电极表面而出现输出晃动; 若水平管道分层流动中流通截面积气相部分增大,即液体未满管程度增大,也会出现输出晃动; 若液体未满管情况较严
[测试测量]
嵌入式系统用Java语言
Java是在C++基础上改进了的面向对象的语言。它可以得到类的封装、继承、多态等的优异重用性的好处,Java的小应用程序(Java Applet)还特别适合于上网。看来,用Java开发上的网的嵌入式应用应是很理想的,可惜,实现起来受嵌入式设备硬件在速度、存储器容量、和其它资源的限制,加上桌面Java语言操作不到硬件,和执行时间的不确定性,使Java应用于嵌入式系统遇到新的问题。Sun公司按PersonalJava规范开发的J2ME(Java 2 Micro Edition),是专用研制用于开发嵌入式的上网个人消费类设备的。因此J2ME除有面向对象的优点外,还包含了Web能力。J2ME使用的是Java
[嵌入式]
嵌入式系统的系统测试方法和可靠性评估
      引言   随着嵌入式系统硬件体系结构的变化,嵌入式系统的发展趋势向嵌入式系统高端,即嵌入式软件系统转移,具体体现在嵌入式操作系统趋于多样和应用软件日渐复杂。由于嵌入式系统软硬件功能界限模糊,研究如何进行系统测试和进行质量评估来保证嵌入式系统的产品质量具有重要意义。   首先,这里明确嵌入式系统的系统测试定义,是将开发的软件系统(包括嵌入式操作系统和嵌入式应用软件)、硬件系统和其它相关因素(如人员的操作、数据的获取等)综合起来,对整个产品进行的全面测试。嵌入式系统的系统测试比PC系统软件测试要困难得多,主要体现如下:   ① 测试软件功能依赖不需编码的硬件功能,快速定位软硬件错误困难;   ② 强壮性测
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 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