首页 百科知识 基于嵌入式的智能仪表设计方案

基于嵌入式的智能仪表设计方案

时间:2024-09-17 百科知识 版权反馈
【摘要】:基于ARM11的嵌入式智能仪表系统结构明晰,具有良好的通用性和可扩展性,可为各种嵌入式应用提供完善的硬件与软件支持。在传统领域中应用嵌入式系统,将微处理器技术与传感器技术引入传统的仪表中,即可成为具有丰富行业应用性的现代智能仪表。嵌入式仪表开始得到了社会各界的广泛关注。智能仪表已经成为电力系统、燃气系统等能源管理的基础设施。

杨加玉

(长安大学信息工程学院,陕西西安 710064)

作者简介:杨加玉(1991-),男,长安大学信息工程学院硕士研究生交通信息及控制工程专业。

摘 要:基于ARM嵌入式智能仪表系统的设计,系统由上位机和下位机两部分组成。下位机以单片机传感器为主,实现对数据的采集处理和上传;上位机是基于Linux内核的嵌入式处理器,用作控制、处理和通信,在上位机上采用QT图形界面。基于ARM11的嵌入式智能仪表系统结构明晰,具有良好的通用性和可扩展性,可为各种嵌入式应用提供完善的硬件与软件支持。

关键词:单片机;嵌入式系统;ARM;Linux操作系统;QT编程

Abstract:The intelligent instrument based on ARM embedded system design,the system consists of two parts,upper machine and lower machine.Under a machine with single chip microcomputer and sensor is given priority to,to realize the collection of the data processing and upload.PC is based on the Linux kernel embedded processors,used as a control,processing and com-munication,on the upper machine using Qt graphical interface.Embedded intelligent instrument system based on ARM11 structure is clear,has good versatility and expansibility,can provide perfect for various kinds of embedded application hard-ware and software support.

Key words:embedded system;ARM;data acquisition;linux operating system;QT/Embedded programming

1 前 言

在计算机技术与通信技术发展的潮流下,一个全新的后PC时代应运而生。为了使各类仪器设备更智能化、数字化,从而使其更小巧便利或具有某些特定功能,嵌入式技术提供了一种灵活、高效的解决方案

嵌入式系统以其独有的优势很快成为了计算机领域的一个新的技术发展方向。得益于自身具备的小体积、低功耗、强性能、高可靠性等突出特点,嵌入式系统目前广泛的应用于工业控制、交通管理、信息家电以及国防与航天等各个行业领域。由此可见,关于嵌入式系统的应用方向有着越来越广泛的应用前景。

在传统领域中应用嵌入式系统,将微处理器技术与传感器技术引入传统的仪表中,即可成为具有丰富行业应用性的现代智能仪表。嵌入式仪表开始得到了社会各界的广泛关注。此外,借助于智能仪表的发展,诸多新服务和新技术也有了一定的发展趋势。智能仪表已经成为电力系统、燃气系统等能源管理的基础设施。

在智能仪表中运用嵌入式技术手段已经成为控制网络中重要的发展方向之一,有着十分广阔的应用领域和良好的发展前景,涉及到智能家居工业生产农业控制、航空等各个科技领域和行业。该项技术的普及将给人民生产生活带来深远的影响。

2 智能仪表方案简介

嵌入式智能仪表的总体设计分为两个部分:下位机与上位机。下位机模块以传感器和单片机为核心,主要实现对数据的采集和处理,并将处理后的数据结果上传到上位机模块;上位机是基于Linux内核的32位嵌入式处理器,在上位机处理器上通过QT界面进行显示,整体结构框架如图1所示。

温度采集模块采用DS18B20作为数字温度传感器,使用 STC89C52 作为微控制器。DS18B20采用1-WIRE总线协议,以串口线作为通信载体与MCU进行双向通信。该温度传感器通过采集温度状态数据,并通过串口线将数据发送到上位机模块。ARM处理器将由串口接收到的数据进行必要的处理,存储有用数据,在使用QT设计的动态仪表上显示。仪表显示模块则采用Mini6410实现。

图1 整体结构框架

3 环境搭建

由于宿主机和目标机的架构有很大不同,故本设计采用交叉编辑的开发方式,宿主机上完成对程序的调试,将调试完成的代码通过与目标机的通讯转移到目标机上。对于开发环境的搭建流程如下:

第一步:安装Linux操作系统。本设计中采用Fedora9作为宿主机操作系统。

第二步:安装QT 4.7.0,并对其进行编译和简单的配置。

第三步:安装QT SDK,本设计在Fedora9下安装QT Creater IDE。

第四步:在Linux操作系统下安装交叉编译器。

对于上位机模块的环境搭建,首先要通过超级终端链接开发板,并通过USB安装嵌入式系统和交叉编译器,最后将QT4.7.0移植到Min-i6410开发板。

4 硬件系统设计

本设计的传感器采用DS18B20温度传感器。使用DS18B20温度传感器作为本设计的传感器模块,该传感器具有体积微小、简单易用等特点,适合多种小空间条件下使用。

微控制器采用STC89C52。该模块是STC公司生产的一种低耗高性能CMOS 8位控制器,其内部FLASH存储芯片具有8位CPU且具有可编程的特点。

其主频最高可达到667MHz,内部继承了强大的多媒体处理单元,带有3D图形硬件加速器,并支持2D图形图像的平滑缩放等操作;外接256MB SDRAM和2GB NANDFLASH;转换处理模块内部集成CAN-RS232转换器及24位的A/D转换器LTC2414,接收相关传感器采集的各种汽车状态信号,并经过处理后,将处理完成的数据上传至处理器;外接LCD模块采用8寸TFT液晶显示屏,处理器内部集成的LCD控制器信号线经过驱动电路后即可连接LCD模块,为虚拟仪表显示提供了硬件平台[1]

处理器模块则采用ARM11核的S3C6410芯片。由于其最高667MHz主频,且具有强大的图形处理单元和3D硬件加速器,有利于为用户提供高灵敏度的温度状态动态显示。串口连接信号转换处理模块,转换模块内部集成了RS23转换器及A/D转换器,可以将接受的信号经过处理并将处理完成的数据上传至上位机模块。外部连接的8寸TFT显示屏则为图像处理结果提供了硬件平台支持,硬件的总体设计方案如图2所示。

图2 硬件总体设计方案

5 软件设计

本设计的软件模块主要分为两部分,一部分是下位机部分的单片机数据处理和温度采集程序,另一部分是在ARM上运行的QT界面的程序。在下位机上的驱动程序实现温度的采集和数据的串口发送的功能;上位机的程序主要是实现串口数据的接收,QT界面的绘图,数据的更新等。

下位机部分数据处理流程图如图3所示,其模板程序的流程步骤为:

第一步,单片机进行串口的初始化,为数据的串口传送做好准备;对计时器进行初始化,为每隔一秒进行一次温度数据的采集中断进行准备;

第二步,给DS18B20传感器低电平信号进行,传感器返回存在脉冲,即达成通信协议,控制器和传感器可以开始通信;

第三步,在每个工作周期内发送一条ROM指令,ROM指令由读取数据、指定芯片、跳跃、搜索等五条指令组成。ROM指令的作用是区分同一条总线上多个不同的元器件,并根据元器件的ID号来识别,进行相应的处理;

第四步,继续连续发送存储器操作指令。存储器操作由数据读取、数据写入、复制指令、温度转换指令、切换工作方式等六种指令组成;

第五步,在等到存储器操作指令结束时,执行指令就开始执行。根据DS18B20的时间序列,控制器等待其执行指令过后即可;

第六步,数据的LED显示以及数据的串口发送:将单片机接收到的温度数据在LED上进行显示,并且通过串口,将数据发送到上位机ARM上进行更高级的处理。

图3 下位机部分数据处理流程图

为了读取当前的温度数据,必须执行两个时间周期。第一个周期中特别注意需要等待500 μS的温度转换时间,第二个周期中便可调度数据。

6 现场测试结果

在现场多次测试,发现下位机数码管一旦有温度变化,结果会立刻反应到QT仪表上,几乎不存在时间延迟,现场记录温度数据如表1所示。

分析认为,造成嵌入式仪表显示温度显示与实际温度有偏差的原因如下:主要误差是由于温度传感器经下位机处理后结果为整数,无小数位,造成一定的显示误差;其次,温度传感器自身精度有+/-0.5℃的温差,属于测量精度误差。

表1 现场测试结果统计

7 结 论

本文描述了一种基于嵌入式Linux操作系统智能仪表开发流程。硬件方面,本文在单片机、Mini6410开发板的基础上设计智能仪表的温读采集系统,给出了硬件的结构框架图,主要包括智能仪表的硬件平台的搭建。软件上给出了软件流程图,包含上位机的软件与下位机的软件设计,主要工作在于上位机的软件设计,通过Linux系统进行编译和移植,最后在虚拟机环境下使用QT进行集成开发。

该系统已经完成基本的功能要求,还可以进一步完善系统的功能。例如加入数据的存储功能,将温度数据加以保存,以备查用;加入网络接口,使用网络通信来进行远程传输;将采集后的数据进行分类按照需求提供给数据库,进行存储和处理等。

8 结束语

随着社会信息化水平的不断发展,人们更加追求智能化、精准化的工业控制,基于嵌入式的智能仪表这时候发挥了重要作用,是未来技术发展的方向。同时国家宏观政策的支持也为智能仪表的发展创造了良好的条件。未来可将智能仪表与云计算相结合,实现现场测量,云端计算与储存,随时随地查看和统计测量数据。已具备各种成熟技术的智能仪表体系将在今后一段时间得到巨大的发展。

参考文献

[1] 王润民,赵祥模,惠飞.基于嵌入式Linux与QT的汽车虚拟仪表设计[J].现代电子技术,2012,35(6).

[2] 邓宗权,蒋向东,王继岷,等.基于嵌入式Linux汽车智能仪表系统的设计[J].微型机与应用,2014.

[3] 孔祥洪,李新慧,孙玉强.嵌入式系统中触摸屏交互功能模块设计.《微计算机信息》(嵌入式与SOC),2005,22.

[4] 赵拯宇,张雪英,金刚.Qt/Embedded和Qtopia在OMAP5912平台上的移植及应用[J].仪器仪表用户,2009,(02).

[5] 王亚林.嵌入式智能仪器仪表弱故障信号的有效检测[J].微计算机信息,2008.

[6] 宋宝华.Linux驱动程序开发详解.北京:人民邮电出版社,2008.

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈