正文内容
嵌入式测试系统
来源:文库
作者:开心麻花
2025-09-19
1

嵌入式测试系统(精选12篇)

嵌入式测试系统 第1篇

随着电子技术的不断进步, 嵌入式系统也发展到了一个崭新的阶段智能化阶段。在这一阶段, 软件在系统中所占比重和重要性大大增加, 要担负比以往更多的功能实现任务。这种比重的变化使系统具有更好的灵活性、适应性和扩展性。同时, 系统又要求应用也要精简高效、稳定可靠, 这使软件的开发在整个系统开发中所占的时间也越来越长, 软件的质量对产品的最终质量起到了决定性的作用。随着嵌入式操作系统趋于多样和软件的日渐复杂, 研究如何进行系统测试和进行质量评估来保证嵌入式系统的产品质量具有重要意义。而由于嵌入式系统具有软硬件功能界限模糊, 实时性要求高, 内存不丰富, I/O通道少, CPU种类繁多等特点, 嵌入式系统的测试也就与一般的测试有很大的不同。

对嵌入式系统的测试, 是将开发的软件系统 (包括嵌入式操作系统和嵌入式应用软件) 、硬件系统和其它相关因素 (如人员的操作、数据的获取等) 综合起来, 对整个产品进行的全面测试。良好的测试用例是测试成功的关键, 而只有依据正确的系统测试方法, 才能设计出良好的测试用例。

测试方法不仅要保证测试用例具有发现缺陷的高可移植性, 而且还要保证测试用例设计的经济有效。因此, 在实际测试工作中, 将嵌入式系统的测试方法分类如下:根据测试是否动态运行被测程序分为静态测试方法和动态测试方法;根据测试阶段分为需求测试方法、设计测试方法、编码测试 (单元测试、集成测试) 方法及系统测试方法;根据测试目的分为功能测试、性能测试、可靠性测试 (容错性、可恢复性、成熟度测试, 及信息安全保护等测试。由于不同的嵌入式系统面向的应用不同, 测试方法的侧重也很不相同。

1 TEmb测试方法

TEmb方法是一种能够有效组合多种测试技术的结构化测试方法, 它能够提供一种机制, 从适用于任何测试项目的通用元素和一组相关的特定方法中组合出恰当的专用测试方法, 其工作的基本原理是:任何嵌入式软件系统都有着一些通用的组成因素, 例如, 系统都有自己的生命周期, 在整个周期中会不断的加入各种构建系统的基础设施, 采用各种各样的传统的和先进的技术, 而且在周期的每个阶段都离不开特定的管理和技术组织。有了这样一系列共同的特点之后, 我们就可以针对不同因素的不同要求来确定总体的软件测试计划。

TEmb方法主要考虑了4种通用要素:生命周期 (Lifetime) 、基础设施 (Infrasture) 、技术 (Technique) 和组织 (Organization) , 简称为LITO。TEmb方法中所涉及的生命周期 (L) 与一般意义上我们所定义的系统生命周期并不完全相同, 而是只限于产品开发和测试时期, 主要研究将这一期间划分成不同的阶段, 在不同阶段需要执行那些测试活动以及按照什么顺序来执行的。基础设施是指结构化测试所需要的全部工具, 包括执行测试所需的工具 (测试环境) 和支持有效而高效率地执行测试活动的工具 (自动化测试工具) 。TEmb中所提到的。技术 (T) 是指借助设备实现某种活动的方法。组织 (O) 指执行测试活动的人员以及为了有效进行测试而进行的管理活动。

TEmb方法的实质就是借助通用元素和特定方法通过相关机制组合而成专用的测试方法, 其中通用元素与特定方法与LITO四要素都是息息相关的, 相关机制主要是风险和系统特性分析。通过将TEmb方法所归纳出来的四种通用元素与特定系统的各种特殊性质要求组合可以得到一个二维矩阵, 称之为LITO矩阵, 矩阵中的各个组元就是进行测试过程中确认系统某种特性所需要的特定方法, 而整个矩阵所得出的就是整个测试方案的轮廓。TEmb方法的测试过程如图1所示。

2 结语

TEmb是一种全新的嵌入式软件的结构化测试思路, 还有需要进一步研究的地方。运用这种方法虽然无法对测试过程的细节进行跟踪, 但是却可以让测试者对整个测试轮廓有所了解, 因而可以做到有的放矢。TEmb对于特定的嵌入式系统而言就是组合合适的测试步骤集合的方法, 它通过一些基本的测试步骤提供几种特定的措施, 从而有效的处理特定测试系统中的具体问题。

摘要:应用在通信及军事电子等领域的嵌入式系统, 由于工作环境和产品的特殊性, 对系统的稳定性、可靠性等方面要求非常高, 所以需要进行科学、严谨的测试。而由于嵌入式系统的特殊性, 对它的测试, 尤其是软件测试具有很大难度。本文简要介绍了一种新的嵌入式系统测试方法, TEmb测试方法。通过对该方法的研究, 为嵌入式系统的测试工作起到指导和推动作用。

关键词:嵌入式系统,软件测试

参考文献

[1]Bart Broekman, 等[著].张君施, 等[译].嵌入式软件测试 (第2章) [M].电子工业出版社, 2004, 1.

[2]Angela Krstic Embedded software-basedself-test for programmable core-baseddesigns, Embeded System, July-August, 2002:18~27.

嵌入式测试系统 第2篇

嵌入式操作系统(一)Windows系统

Source:

MILY: Arial“>RTOS Basics: The Task Model (Multitasking)

嵌入式系统在温控系统中的应用 第3篇

1.前言

温度作为一个基本物理量,它是一个与人们的生活、生产密切相关的重要物理量。生活和工业生产过程中温度作为一种常用的主要被控参数,我们需要对温度参数进行检测并利用该参数进行自动控制。采用单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此单片机对温度的控制问题是一个工业生产中经常会遇到的问题。

2.国内外发展现状

目前国内外的温度控制方式越来越趋向于微型化和智能化,温度测量首先是由温度传感器来实现的。测温仪器由温度传感器和信号处理两部分组成。随着工业生产效率的不断提高,自动化水平与范围也不断扩大,因而对温度检测技术的要求也愈来愈高,一般可以归纳以下几方面。

(1)扩展检测范围 现在工业上通用的温度检测范围为-200-3000℃,而今后要求能测量超高温与超低温。尤其是液化气体的极低温度检测更为迫切,如10K以下的温度检测是当前重点研究课题。

(2)扩大测温对象 温度检测技术将会由点测温发展到线、面,甚至立体的测量。应用范围己经从土业领域延伸到环境保护、家用电器、汽车工业及航天工业领域。

(3)发展新型产品 利用以前的检测技术生产出适应于不同场合、不同工况要求的新型产品,以满足用户需要。同时利用新的检测技术制造出新的产品。

(4)适应特殊环境下的测温 对许多场合中的温度检测器有特殊要求,如防硫、防爆、耐磨等性能要求;又如移动物体和高速旋转物体的测温、钢水的连续测温、火焰温度检测等。

(5)显示数字化 温度仪表向数字化方向发展。其最大优点是直观、无读数误差、分辨率高、测量误差小,因而有广阔的销售市场。

(6)标定自动化 应用计算机技术,快速、准确、自动地标定温度检测器。根据分析,由单片机组成的温控系统,通过在单片机外部添加各种接口电路,可构成单片机最小系统,用以实现对温度控制对象的温度的显示和控制。同时也能根据实际情况实现数据处理、报警,对各个参数以一定的周期进行检查和测量,检测的结果经处理后再进行显示和报警,以提醒操作人员注意或直接用于生产控制。

3.应用情况

嵌入式温控系统现在应用非常广泛,可以说深入到了生活的方方面面,如蔬菜大棚智能温度控制系统、贮液容器温控系统、汽车空调温控系统、电加热炉温度控制系统等。

(1)蔬菜大棚智能温度控制系统 冬季塑料蔬菜大棚最重要的一个管理因素是温度控制。温度过低,蔬菜会冻死或停止生长,所以要控制温度在蔬菜适宜的范围内。如果仅靠人工控制既耗费人力、物力,又容易发生差错。为此设计智能化温控系统,控制蔬菜大棚温度,适应生产需求。蔬菜大棚智能温度控制系统的研制水到渠成。

(2)贮液容器温控系统 贮液容器溫控系统中以贮液容器温度为被控参数,蒸汽流量为控制参数,输入贮液容器冷物料的初温为前馈控制,构成前馈一反馈控制系统,从而达到控制贮液容器温度,满足工艺要求的目的。

(3)汽车空调温控系统 现代化的汽车空调就是能将汽车室内空间的环境调整到对人体最适宜的状态,创造良好的车内环境,以提高司机的工作效率和保护乘员的身体健康。目前高档轿车中用各种微处理器完成各种控制,汽车空调温控系统技术也有了飞速的发展。

(4)电加热炉温度控制系统 电加热炉随着科学技术的发展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛应用,并且在国民经济中占有举足轻重的地位。嵌入式电加热炉温度控制系统现在正被广泛地使用。

4.技术情况分析

下面对使用80C51和18B20的系统进行分析:

(1)硬件 硬件主要包括中央处理器80C51、温度传感器18B20、键盘、LED等。

(2)软件 系统软件设计时可以采用模块化的结构和层次设计思想,不仅方便了设计和使用,也有利于以后系统的扩展和升级。系统软件可以包括主程序、数据采集处理模块,可以使用PID算法,可以包括声光报警模块、通讯模块等。

从以上分析不难看出,使用单片机进行温控系统的开发已具有成熟的技术。

5.趋势

随着微电子技术的不断发展,集成了CPU、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器甚至A/D、D/A转换器等电路在一块芯片上的超大规模集成电路芯片出现了。以单片机为主体,将计算机技术与测量控制技术结合在一起,又组成了所谓的“智能化测量控制系统”,也就是智能仪器。

与传统仪器仪表相比,智能仪器具有以下功能特点:

(1)操作自动化 仪器的整个测量过程如键盘扫描、量程选择、开关启动闭合、数据的采集、传输与处理以及显示打印等都用单片机或微控制器来控制操作,实现测量过程的全部自动化。

(2)具有自测功能 包括自动调零、自动故障与状态检验、自动校准、自诊断及量程自动转换等。

(3)具有数据处理功能 具有数据处理功能,这是智能仪器的主要优点之一。智能仪器由于采用了单片机或微控制器,使得许多原来用硬件逻辑难以解决或根本无法解决的问题,现在可以用软件非常灵活地加以解决。

(4)具有友好的人机对话能力 智能仪器使用键盘代替传统仪器中的切换开关,操作人员只需通过键盘输入命令,就能实现某种测量功能。与此同时,智能仪器还通过显示屏将仪器的运行情况、工作状态以及对测量数据的处理结果及时告诉操作人员,使仪器的操作更加方便直观。

(5)具有可程控操作能力 一般智能仪器都配有GPIB、RS232C、RS485等标准的通信接口,可以很方便地与PC机和其他仪器一起组成用户所需要的多种功能的自动测量系统,来完成更复杂的测试任务。

随着嵌入式在温控系统的应用,温控系统也具有了操作自动化功能、自测功能、数据处理、人机对话能力、可程控能力等功能,随着嵌入式技术的不断发展,温控系统应用的领域会越来越大,温控系统也会向微型化、高度集成化、控制简单化等方向发展。

6.结论

嵌入式温控系统具有良好的动态性能,控制精度高,控制效果稳定、良好,可以满足各个行业的不同要求。随着智能温控系统的不断普及和发展,基于高性能处理器的嵌入式温控系统将会有更加广阔的用武之地。

微型嵌入式实时操作系统文件系统 第4篇

根据Nand Flash的一些特性, 读写速度快, 生产工艺问题或多或少存在坏块, 最小擦除单位为块, 最小读取单位为字节, 并且不能频繁对其进行擦写操作, 最先对Nand Flash支持最好的就是Yaffs文件系统, 但Yaffs文件系统最大支持的页大小为512Byte, Yaffs2支持页大小可以达到2048Byte但针对那些像linux的大型操作系统不管是Rom和Ram的开销确实不算什么, 但如果只是把它应用在ram只有几十Kbyte的单片机上也是经过裁剪再裁剪才能放进去, 这就需要诞生一种集Yaffs优点于一身, 而且对硬件要求很低的文件系统, 这是微型嵌入式实时操作系统文件系统的初衷, 如图1。

2 微型嵌入式实时操作系统文件系统的优点

2.1 需要的Rom少

一千五百多行左右

需要的Ram少:平均需要建立的全局变量不大于10几个字节基本都是用来存储一些使用Tab表的偏移位置及内容存储区的偏移位置等信息, 其他局部变量的最大开销不会超过80Byte。

2.2 文件系统稳定性好

就算文件系统局部出现灾难性的故障, 依然可以读取文件系统中完整的个别文件, 这点是在其他类型文件系统中不具备的。

2.3 对硬件伤害小

在一块格式化完整的Nand Flash上进行写入文件, 在Nand Flash没有写满的情况下, 微型嵌入式实时操作系统是不会对其进行擦出块操作。

2.4 文件大小没有限制

文件最大可以在一个存储设备上存储一个文件, 最小可以存储的文件个数, 理论上是, 一个存储设备上除去Tab占据的一个块外, 剩余块上每页都可以存放一个文件, 不足占据一页的算作一页, 以K9f2g08为例最多可以存放文件为2048*64-64个文件, 每个文件大小为2Kbyte。

2.5 高效率性

存储一个文件不需要整块空间, 当需要对很久以前的文件进行内容追加时, 系统会寻找空白页写新的内容并且与之前的文件通过地址关联链接成一个文件, 删除文件也可以只删除文件头, 文件中间页可以在块回收的时候进行整理,

2.6 文件类型多样性

可以存放的文件类型除了文件夹文件类型还增加了一些特殊类型, 如链接类型和和根目录类型, 可以在文件系统中建立多个根目录, 相当于硬盘中的多个分区一样。

如下是每个存储页的首字节标志, 用来标识该页的内容。利用Nand Flash的擦除过程是从非1擦除到1的过程, 为了避免再次擦除, 文件类型确定了是不能进行修改, 但该页属于整个文件的的组成部分位置可以从文件头, 改为文件按中或文件尾, 但一旦改为文件尾, 该文件的大小就确定了, 不能对其进行追加操作。

2.7 文件系统的可扩展性

该套文件系统架构是在k9f2g08上测试的, 理论上可以兼容所有规模的Nand Flash, 且如果文件TAB表损坏或丢失, 都可以花一些时间去搜索文件存储区来重构文件TAB表。

2.8 文件的坏块管理

文件的坏块管理通过写页的标志位为0x00来却别该页是否是不可用页, 这比传统的坏块管理好在, 如果一个存储设备的某个块并不是全部算坏, 而只是某个页上局部位置损坏, (Nand Flash坏区的定义为, 擦除不为全1的为损坏) , 那么该块的其他页照常可以使用。

2.9 文件的擦除平衡

往文件系统里写入文件是从前往后找可用页一次向后写, 当写到不能再写入内容的时候, 系统会自动启用删除块回收, 回收是也是从前往后的顺序找出所有可擦除块对其进行擦写, 保证了系统不会频繁的对某个特定块进行反复擦写。从而实现了均衡擦除。

2.10 微型嵌入式实时操作系统文件系统底层架构

包含对Nand Flash的整体规划使用区域划分, 文件Tab位置的确定是在格式化Nand Flash的过程中决定的, 通常, Tab的位置被定在首个非坏块上, Tab占用一个存储块, 文件其余块为文件内容存储区, 文件内容存储区的位置都是使用的相对偏移位置, 即认为紧跟Tab所在块后面一个非坏块的位置为基地址, Tab中每页的Data区域 (存放数据内容的区域) 的每个字节对应内容存储区的每页, 且与内容存储区每页的Spare的首字节的内容是保持一致的, Tab实际上是为加快文件搜索和统计的速度而设定的。

2.11 泛型文件管理层

嵌入式系统 课程感想 第5篇

“嵌入式”反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。而且,嵌入的系统中可以共存多个嵌入式系统。

一个简单的嵌入式系统一般包含以下几部分:嵌入式微处理器外围硬件设备、嵌入式操作系统、特定的应用程序。可见,其实嵌入式系统就是含有微处理器和硬件接口的一个根据应用可裁剪的非标准计算机系统。

嵌入式系统的发展历史:

 嵌入式系统的出现最初是基于单片机的。

 70年代单片机的出现,使得汽车、家电、工业机器、通信装置以及成千上万种产品可以通过内嵌电子装置来获得更佳的使用性能:更容易使用、更快、更便宜。

 80年代早期开始,嵌入式系统的程序员开始用商业级的“操作系统”编写嵌入

式应用软件,这使得可以获取更短的开发周期,更低的开发资金和更高的开发效率,“嵌入式系统”真正出现了。

 目前,嵌入式系统在很多产业中得到了广泛的应用并逐步改变着这些产业,包

括工业自动化、国防、运输和航天领域。例如:神州飞船和长征火箭中肯定有很多嵌入式系统,导弹的制导系统也是嵌入式系统,高档汽车中也有多达几十个嵌入式系统。在日常生活中,人们使用各种嵌入式系统,但未必知道它们。事实上,几乎所有带有一点“智能”的家电(全自动洗衣机、电脑、电饭煲„)都是嵌入式系统。嵌入式系统广泛的适应能力和多样性,使得视听、工作场所甚至健身设备中都有嵌入式系统的身影。

嵌入式系统的特点:

 专用性:嵌入式系统面向用户、面向产品、面向应用,它必须与具体应用相结合才会具有生命力、才更具有优势。也正是这个原因,必须结合实际系统需求进行合理的裁减。

 嵌入性:也就是说系统和被控制的对象是紧密连接的,一般不需要人为干预,从这点上讲,也就对嵌入式系统的环境适应性、稳定性、可靠性等提出了一些要求,在进行软件和硬件设计时必须考虑这些要求。

 智能性:1.嵌入式系统需要有一个中央处理器单元(CPU),来实现对对象的智能控制。

2.嵌入式系统首先是计算机系统,其次是专用的计算机系统,这种系统有别于通用的个人电脑(PC),最后由于其专用的特点决定了其软硬件必须能够进行定制,必须能够进行裁减。

3.单片机也是属于嵌入式系统的范畴。但是由于历史的原因,单片机和嵌入式系统被许多人区分开来对待,嵌入式系统更多地被理解为使用ARM等32位嵌入式微处理器的计算机系统。4.单片机系统一般采用单任务程序或简单的多任务内核,如uC/OS-II操作系统,一般应用于一些小型应用系统中;而ARM嵌入式系统还能很轻松的运行Linux、Windows CE、VxWorks等复杂的操作系统,比较适合于设计大型应用系统。

嵌入式系统开发的分工:

1.芯片制造商:负责制造包括CPU、网卡、RAM、及Flash等芯片的厂商。

2.设备制造商:负责制造硬件开发板和产品板。3.操作系统提供者:负责提供嵌入式操作系统。4.软件开发商:负责在操作系统之上开发具有独

立功能的应用程序。

5.系统集成商:负责向最终用户提供产品解决方

案。

嵌入式开发的一般方法:

嵌入式系统的软件开发通常采用 “宿主机/目标机”方式 :

首先,利用宿主机上的丰富的资 源及良好的开发环境开发和仿真调试 目标机上的软件。

然后,通过串行口或网络将交叉 编译生成的目标代码传输并装载到目 标机上。

最后,目标机在特定的环境下运行。

几种常见的嵌入式系统:

试目标机上的软件

生成的目标代码传输并装载到目标机上

目标机在特定的环境下运行

 嵌入式Linux:

uClinux是一个完全符合GNU/GPL公约的操作系统,完全开放代码。uClinux从Linux 2.0/2.4内核派生而来,沿袭了主流Linux的绝大部分特性。它是专门针对没有MMU的CPU,并且为嵌入式系统做了许多小型化的工作。

适用于没有虚拟内存或内存管理单元(MMU)的处理器,例如ARM7TDMI。它通常用于具有很少内存或Flash的嵌入式系统。

它保留了Linux的大部分优点:稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持、以及标准丰富的API等。

 Win CE:

Windows CE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作,它是精简的Windows 95。Windows CE的图形用户界面相当出色。Win CE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。

 VxWorks :

VxWorks操作系统是美国公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。

 Nucleus:

Nucleus PLUS是为实时嵌入式应用而设计的一个抢先式多任务操作系统内核,其95%的代码是用ANSIC写成的,因此非常便于移植并能够支持大多数类型的处理器。Nucleus PLUS采用了软件组件的方法。每个组件具有单一而明确的目的,通常由几个C及汇编语言模块构成,提供清晰的外部接口,对组件的引用就是通过这些接口完成的。由于采用了软件组件的方法,使Nucleus PLUS 的各个组件非常易于替换和复用

嵌入式系统发展趋势:

我们有理由相信计算机还将继续快速发展并进一步改变我们的生活,让计算变得“无所不能”、“无处不在”。其中“无所不能”将是人工智能技术和超级计算机的结合,而“无所不在”则是嵌入式技术应用的广阔天地,现在普通消费者已经可以从市场中买到数码相机、移动电话、打印机等众多的数码产品、航空设备、ATM机、计算机网络设备等电子产品中都用到了嵌入式技术。

通用计算机的发展变为功能电脑,普遍进入社会,嵌入式计算机发展的目标是专用电脑,实现“普遍化计算”,因此可以称嵌入式智能芯片是构成未来世界的“数字基因”。正如我国资深嵌入式系统专家——沈绪榜院士的预言,“未来十年将会产生同大小、具有超过一亿次运算能力的嵌入式智能芯片,将为我们提供无限的创造空间“。

《嵌入式系统》课程教学初探 第6篇

【关键词】嵌入式系统;嵌入式技术;ARM微处理器;开发板;软件

一、目前嵌入式系统教学概况

嵌入式系统概念的提出已经有相当长的时间,其历史几乎和计算机的历史一样长。但在以前,它主要用于军事和工业控制领域,所以很少被人们关注和了解。随着数字技术、大规模及超大规模集成电路的发展和功能更强的操作系统的出现,它才被广泛应用于航天、航空、工业控制、智能手机、消费类电子产品、信息家电、安防监控、医疗仪器、汽车电子等领域。目前,嵌入式系统产品正不断渗透各个行业,并以其应用领域广、人才需求大等优势,获得更大的关注,特别是将来3G和物联网的普及与推广,应用前景非常好。基于此,我国一些高校的信息类专业相继开设了有关《嵌入式系统》的课程,但大多数是以选修课的形式开设的,课时量少,学校、教师和学生也没有对该课程的教学和学习给于足够的重视,导致教学效果不理想。尽管社会对嵌入式人才需求大,但因为我们的不重视,使得学生在激烈的就业竞争中失去了很多机会。

二、嵌入式系统教学现状分析及对策

《嵌入式系统》课程一般作为选修课开设且一般在大四开设,学生接触嵌入式技术时间较晚,对其没有基本的认识,在有限的课时内也只能对其有一个大致的了解,相比大三、大四学生们学习JAVA、C++的热情,嵌入式的学习气氛就显得很冷清。加之嵌入式系统课程要求的知识面广,涉及基础课程多(与电子类专业相关的基础课程有数字电子技术、电子设计自动化(EDA)、单片机原理、可编程逻辑器件、DSP原理及应用等,与计算机类专业相关的课程有C语言程序设计、计算机组成原理、计算机系统结构、微机原理、数据结构、操作系统等,如果要进行嵌入式应用软件开发的还应掌握计算机网络、网络编程、数据库原理及软件工程等课程),所以,学生学习嵌入式系统课程就存在一定的难度,学习热情也不高。对此,我们应该给与足够的重视,积极帮助学生能在嵌入式领域占有自己一席之地。首先,在对学生进行入学教育专业介绍时,要强调嵌入式方面的就业前景,目前国内外这方面的人都很稀缺,与应用软件开发的行业不同,嵌入式领域人才的工作强度通常低一些,但收入却高一些,利用这样的好的就业前景刺激同学们好好学习。再者,要强调嵌入式系统课程涉及的先行课程多,一定要打好基础;还有,学生在学校学习期间,老师们可以多开展期嵌入式技术的讲座及嵌入式产品的展示,比如无线点餐系统、车载GPS定位、智能家居等;最后,在学生大一、大二学习期间,各科任课教师要督促学生扎扎实实的学好每一门课程,以便为后续课程打好基础。在竞争如意激烈的今天,学生们也该从进入大学就逐步规划自己的职业生涯。

三、《嵌入式系统》课程教学的内容、教学方法的改进

嵌入式系统融合了电子、计算机、微电子等多种学科和技术。对于什么是嵌入式系统,还没有一个明确的定义。嵌入式系统一般定义为以应用为中心,以计算机技术为基础,软硬件可裁减,应用系统对功能、可靠性、成本、体积、功耗和应用环境有特殊要求的专用计算机系统。

1.《嵌入式系统》课程教学的内容

《嵌入式系统》的教学通常以32位微处理器为平台,32位的微处理器主要有ARM、MIPS、POWER PC,目前国内的大多数高校都是以介绍ARM微处理器为主,教学的内容主要包括ARM微处理器内核的介绍、ARM的汇编指令和汇编程序设计、嵌入式系统的C语言设计和嵌入式操作系统、嵌入式Linux开发环境及其在ARM上的移植、设备驱动程序和用户图形界面GUI等内容。在试验内容的安排上,通常包括ARM汇编语言的程序设计、BootLoader的移植、嵌入式操作系统内核的移植、UCOS II、LINUX、WINCE等嵌入式操作系统下的C语言驱动程序设计和应用程序设计等。

2.教学方法的改进

对于嵌入式课程的学习,很多同学都认为很难,除了前面提及到的它涉及的基础学科较多以外,一个很重要的原因是以传统的教学模式讲述的内容学生完全不理解,比如宿主机、目标板、交叉开发环境、GCC交叉编译器arm-Linux-gcc、引导装载程序BOOTLOADER、Linux内核裁减等。这就需要教师在上课时将嵌入式Linux开发流程给学生作演示,包括建立开发环境,下载相应的GCC交叉编译器进行安装(例如arm-Linux-gcc、arm-μclibc-gcc),或者安装产品厂家提供的交叉编译器;配置开发主机;建立引导装载程序BOOTLOADER;下载针对所使用的CPU的Linux操作系统内核、再添加自己的特定硬件的驱动程序;建立根文件系統;开发应用程序;烧写内核、根文件系统、应用程序;发布产品。学校还可聘请企业讲师讲述部分课程以使学生们可以了解到嵌入式的最新的技术。关于嵌入式系统的实验部分,需要有相应的开发板,有的学校实验条件还不成熟或实验设备不足,那么可以在主机上安装模拟器来模拟开发板,使学生了解将嵌入式的开发流程即可。

四、教学保障

前面已提及,嵌入式的教学过程及实验环节都离不开计算机及开发板,这就需要学校投入一定的资金来改善教学和实验条件。因为嵌入式这方面的人才较少,高校教师中也有很多人从未接触过嵌入式相关技术,所以,对于高校要积极寻求与嵌入式相关的企业的合作,以进行师资的培训,从企业吸收最新的嵌入式的技术和成果用于教学过程中。

五、就业及培训

嵌入式系统是一个软件与硬件紧密结合的学科,从事嵌入式开发的人员主要有两类。一类是电子工程、通信工程等偏硬件专业出身的人,他们主要是搞硬件设计,有时要开发一些与硬件关系密切的最底层软件,如BootLoader、Board Support Package,最初级的硬件驱动程序等。另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。嵌入式设备的增值很大程度上取决于嵌入式软件,这占了嵌入式系统的最主要工作,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势。

从事嵌入式开发的好处是:(1)目前国内外这方面的人都很稀缺。一方面,是因为这一领域入门门槛较高;另一方面,是因为这一领域较新,目前发展太快,掌握这些新技术的人当然很难找。嵌入式人才稀缺,身价自然就高,越有经验价格就越高。其实嵌入式人才稀少根本原因可能是大多数人无条件接触,这需要相应的嵌入式开发板和软件,另外需要有经验的人进行指导开发流程。(2)与应用软件开发领域不同,嵌入式领域人才的工作强度通常低一些,但收入却高于普通的应用软件开发人员。搞嵌入式系统的公司,所开发的产品通常是通用的,不会因客户的不同而修改。另外,从事嵌入式软件的每个人工作范围相对狭窄,所涉及的专业技术范围基本上固定,时间越长越有经验。

如果以后想从事嵌入式技术方面的工作,那就需要进行这方面的培训,因为教学计划中的很少的课时量只是让学生们对嵌入式系统有一个大致的认识,而自学的话又不知道该从哪里下手。现在很多培训机构都有脱产的嵌入式就业班,大概学习四五个月的时间就可推荐就业,对于想从事嵌入式开发的学生来说,无疑是一个比较好的途径。

六、总结

嵌入式是一个有很大发展潜力的学科,各个高校也相继开设了嵌入式系统的课程,笔者仅从自己多年的嵌入式教学的角度上提出自己的一些看法,希望能够抛砖引玉,听到同行们更精彩的见解。

参考文献:

[1]刘艺,许大琴,万福编著.嵌入式系统设计大学教程[M].人民邮电出版社,2008(11).

嵌入式软件测试系统的设计与实现 第7篇

随着计算机应用领域的迅速扩大, 人们对软件质量提出了新的更高的要求。而作为保证软件质量最有效手段的测试技术, 己经越来越引起软件用户及开发人员的关注。至今, 有关软件测试方法的研究已有许多重要成果, 最典型的就有黑盒、白盒和灰盒测试方法[1]。其中白盒方法 (代码性能测试) 是一种非常有效的测试手段, 典型的白盒测试, 如语句覆盖测试、分支覆盖测试和路径测试等[2], 主要针对程序内部的控制流结构来制定测试的标准和测试策略。本文采用自动插桩的方法对嵌入式软件系统进行代码性能测试, 并实现了系统的内存分析和时间性能分析, 有效的解决了传统手工测试程序运行效率低、繁琐等一些问题, 保证了嵌入式软件系统的高效稳定的运行。

2. 嵌入式软件测试系统的结构框图

嵌入式软件测试原型系统的组成结构见图一, 该系统由四部分组成:词法语法分析、程序的静态结构分析、程序的插桩、测试信息的分析。

被测试程序, 首先经过语法词法分析, 对待测源程序进行扫描后, 生成一些相互之间有关联的链表 (主要是用来确定插桩的位置) , 然后在确定下来的插桩点插入桩, 最后汇编链接生成可执行文件。插桩语句在执行过程中或者执行完毕后, 就将测试结果记录到事先确定的文件中[3]。然后根据动态测试跟踪信息编码规则, 进行相应的分析, 最后将覆盖测试结果、时间性能分析以及内存分析以GUI的形式显示。

3、嵌入式软件测试系统的设计

3.1 覆盖测试系统设计

1.预处理:

预处设计理部分主要是完成宏替换和将相应的短跳转转换成长跳转[4]。

汇编程序中大量采用短跳转, 即仅用一个8位BYTE表示相对的偏移地址。优点是降低了程序运行的时间和空间消耗, 局限是相对偏移的地址只能在较小的区间内, 为进行软件覆盖测试时的探针插桩增添了障碍。所以在进行汇编程序的探针插桩前, 必须进行预处理。这是因为探测程序的加入使得原来目标程序的相对地址发生改变, 可能超出区间限制, 若不进行目标程序的预处理, 必然导致源被测程序的逻辑混乱。目标程序预处理的方法是将所有的短跳转改为相应的长跳转。

在汇编程序中, 宏调用因其执行速度快而常被采用。宏调用在编译时, 被完整地嵌入调用位置。若在宏里插入探针, 将导致程序规模的迅速膨胀。对于有时空约束的嵌入式软件将无法运行。预处理采用的方法是将宏调用改为等价的过程。

2.词法语法分析:

词法语法分析通常跟程序设计语言有关。词法分析负责将源程序中的若干字符划分为若干记号, 语法分析负责从若干记号中完成程序结构分析, 识别出函数体、语句、表达式、关键字、程序分支等。一般使用unix下的lex/yacc工具进行语法和词法分析。主要是建立一系列表格, 方便确定自动插桩的位置。

3.插桩技术:

一般来说, 对程序进行动态测试的时候, 基本上要使用程序插桩来进行覆盖测试。程序插桩使被测试程序在保持原有逻辑完整性基础上在程序中插入一些探针函数即插桩语句, 它是一个子过程调用, 调用的子过程能在运行到插桩点时记录下有关的运行情况。基于这些运行情况的分析, 可以获得程序执行过程中变量值的变化情况, 也可以用来检测程序的分支覆盖和语句覆盖等覆盖信息。

程序插桩的关键技术包括要探测哪些信息、在程序中什么部位设置探针、如何设计探针、以及探针函数捕获数据的编码和解码。

(1) 插桩位置:

插桩位置主要解决的是在哪儿插, 为此将程序按"块"划分, 探针主要插桩在其"路口"的位置[5]。在汇编中主要考虑四种位置:

插装定位示例于右.

(2) 插桩策略:

插桩策略主要解决的如何在程序中植入探针, 包括植入的位置和方法[4]。我们主要考虑块探针和分支探针。

块探针设计策略: (linear block) 又称"顺序块", 它是若干个相连顺序语句的序列集合。在程序的执行过程中, 它具有线性特征。若该线性块的第一条语句被执行, 则整个线性块都语句都执行了。这样我们仅在线性块的开始或末尾处插入一个探针即可这就避免了对每条语句都进行的冗余插装操作。

分支探针策略:所有进行TURE或FAULSE判断的语句。它是统计分支覆盖率的探针测试点。

(3) 插桩的过程:

首先在被测试的源程序中植入探针函数的桩, 即函数的声明。而插桩函数的原型在插桩函数库中定义。在目标文件连接成可执行文件时, 则必须连入插桩函数库。探针函数是否被触发就要依据插桩选择记录文件了, 要求不同的覆盖率测试会激活不同的插桩函数。

4.动态测试结果存储和分析

将测试结果进行存储和分析, 计算出本次程序运行时所得到的语句覆盖率和分支覆盖率。程序运行后, 将运行的动态信息写到缓冲区中。执行的相应的顺序块、分支和子程序设为1, 未执行的为0。这样通过对动态测试信息的分析和计算, 就可以将缓冲区中的内容翻译成我们所需的动态测试所需的覆盖信息。

将上面测试后得到的结果放到Tresult:={Tbcov, Tccov, Tlcov, Toutput}。其中Tbcov表示语句覆盖率, Tccov表示分支覆盖率Tlcov表示子程序覆盖率;Toutput表示程序运行的结果。期望值定义为:Aresult:={Abcov, Accov, Alcov, Aoutput}。其中, Abcov表示期望达到的语句覆盖率, Accov表示期望达到的分支覆盖率Alcov表示期望达到的子程序覆盖率;Aoutput表示程序运行的期望结果。

3.2 外部存储器访问记录

51单片机本身没有内存管理单元 (NIIVIU, memory management unit) 等硬件支持的内存管理, 同时因为片上资源紧张, 不可能提供内存管理的软件模拟。因此, 内存的使用依赖程序员的经验和恰当的系统分析保证安全性。系统对外部存储器的访问信息记录为开发人员进行内存使用诊断提供了方便。

51单片机对外部存储器的访问定制了指令MOVX, 因此, 在仿真器上对MOVX指令进行模拟的函数movx_xmem_c2s6p2 (.…) 的内部记录下该指令操作的片外RAM地址即可。如有需要还可以记录每一个内存单元被访问的次数以及访存操作是读操作还是写操作等细节。

3.3 时间性能分析

系统提供程序运行期的时间使用细节, 开发人员可以根据程序段之间的时间分配情况, 确定程序是否有错误或者是否需要优化。系统提供的时间分析结果为:模拟运行的时钟周期总数、每一个语句块总共执行的时钟周期数、每个块占用的时钟周期换算比例、直观的图表表示。

4. 实验结果

在实验中采用一个已投入使用的实用串口通信控制系统作为实验对象。在该系统中提取出64个可独立运行的子过程模块, 根据覆盖测试的需要, 为每个模块设计出多个测试用例对其进行覆盖测试 (由于每个模块的逻辑复杂程度以及输入参数的个数不一样, 因此设计的每个模块的测试用例数为18个至52个不等) 。对于每一个模块, 首先采用手工运行程序的方式计算出两种覆盖率指标, 再与本文实现的仿真测试平台上所得的两种覆盖率指标相比较, 从而验证本原型系统自动测试结果的正确性。

为该模块设计的其中一个测试用例为0、0、2、3、5, 在此测试用例下, 用手工运行程序的方式所推算得出的语句覆盖率和分支覆盖率指标分别为76.92%和58.33%, 在本文实现的测试平台上运行后, 其结果和手工运行结果一致, 如图二所示, 从而验证了本原型系统自动测试结果的正确性。但单个测试用例仍没有达到覆盖测试的最低标准。采用本文提出的融合多测试用例信息的方法对该模块做实验后, 得到的综合语句和分支覆盖率分别为94.08%, 和79.17%, 如图三所示。该指标均达到了覆盖测试的最低标准。

图四为进行该实验时, 我们的仿真测试平台原型系统运行时的时间性能信息查看窗口界面;图五为内存使用信息查看窗口界面:

5. 结束语

文中在基于汇编语言的流程图自动生成的基础上, 利用虚拟插桩的方法实现了系统的动态测试, 能够有效的计算出嵌入式软件测试系统的覆盖率, 同时给出了测试中的时间性能和内存使用情况, 基本上满足了国内基于汇编的嵌入式软件测试的要求。对一步研究多语言的嵌入式软件测试平台具有一定的积极意义。

摘要:随着嵌入式软件技术的发展, 如何对它进行快速有效的测试已经成为现在的一大热点。本文利用软件虚拟插桩的方法主要完成了嵌入式软件的语句和分支覆盖率的计算, 同时实现了内存分析和时间性能分析功能, 有效的解决了传统手工测试程序带来的一些问题, 基本满足了国内用户对嵌入式汇编进行测试的需求。

关键词:嵌入式系统,虚拟插桩,覆盖测试

参考文献

[1].郑人杰.计算机软件测试技术.清华大学出版社, 1990

[2].X.Wu, J.Jenny Li, D.Weiss.Coverage-based Testing on Embedded System[C].Proceedings of the Second International Workshop on Automation of Software Test, 2007:7-16.

[3].刘利枚, 周鲜成, 石彪.嵌入式软件测试系统的设计与实现[J].国外电子测量技术, 2008, 27 (1) :59-61.

[4].孙昌爱, 金茂忠.基于程序插装的动态测试技术实现.小型微型计算机系统, 2002, (12)

嵌入式测试系统 第8篇

目前某型号嵌入式武器系统, 软件系统测试尚未建立模型框架, 测试用例设计完全依靠人力进行, 随意性较大;系统测试运行在调试、仿真环境下, 没有专用的系统测试平台, 导致软件测试的覆盖率低;另外, 在系统测试阶段, 无法跟踪嵌入式应用程序运行时的性能, 无法获取测试覆盖率以及内存的动态分配情况等信息, 无法完成对系统测试的覆盖率信息捕获, 因此不能直接观察到测试用例对源代码的覆盖情况。综上所述, 研究软件系统测试的理论、方法与技术[2,3], 建立适合嵌入式软件系统测试的模型框架, 建立需求文档、实现代码、测试用例之间的相互关联, 完善测试设备和手段, 是嵌入式软件系统测试迫切需要解决的问题。

1系统测试模型的构建

在整个嵌入式软件开发过程中, 嵌入式软件系统测试位于软件设计、编码之后, 是不可缺少的验证手段。软件系统测试模型可用于在实时环境下对系统软件进行测试和性能评估, 指导产品的研制。

软件系统测试的目标是覆盖时间特性、资源利用性、容错性、可靠性、断电恢复等测试项目[4], 嵌入式软件系统测试模型的总体框架就是围绕软件系统测试的目标, 以较小的开销, 对被测系统进行测试。

纯硬件的方式由于其准确性、灵活性和可移植性差的原因, 已经逐步被淘汰;纯软件的方式对被测程序的运行效率有一定的影响, 测试环境不够真实;软硬件结合的方式精度高, 处理能力强, 对被测程序运行的影响小, 测试环境接近真实环境, 对软件实时性要求的适应性好[5,6]。因此, 采用软硬件结合的方式作为模型的首选方式, 其总体框架如图1。

1.1 需求分析

需求分析主要完成软件需求规格说明到测试需求规格说明的转换, 将测试需求作为输入, 通过语法和语义的检查、形式化的处理[7], 保证需求规格说明具有良好的形式化、一致性及完整性。

需求分析过程如图2所示。

通过对软件的需求规格说明进行层次化的处理, 可以完成将软件需求分析到测试需求分析的转换, 即定义需要测试什么, 并将其存放到软件配置管理服务器中进行管理。以层次化的测试需求规格说明作为输入, 通过编辑器进行语法和语义的检查, 并进行形式化处理, 保证需求规格说明具有良好的形式化、一致性及完整性, 最后编辑器将结果在系统信息中保存以提供给测试向量生成器及测试覆盖率分析器使用。

1.2 测试用例生成

测试用例生成主要根据形式化的需求规格说明, 通过基于域测试的算法[7]来自动生成最佳数量的测试用例, 每个测试用例都包含一组输入和预期输出, 并且与需求一一对应。

测试用例自动生成过程如图3所示。

根据系统信息中形式化的需求规格说明, 通过测试向量生成器使用基于特定的算法来生成最佳数量的测试用例, 每个测试用例都包含一组输入和预期输出, 并且与需求一一对应, 通过生成的测试用例集用以满足嵌入式软件系统的功能测试、边界测试、性能测试、接口测试、可靠性测试及余量测试等, 从而保证可测量性以及达到预期的覆盖率水平。测试覆盖率分析器用于保证每个独立的需求至少被一个测试用例所覆盖, 同时自动生成软件测试计划。

1.3 测试用例执行

测试用例执行主要是以工程实际应用的仿真模型为基础, 通过调用自动化软硬件环境, 在测试支撑环境下, 将测试用例集注入到被测软件中, 在宿主机/目标机的方式下进行软件的系统测试、实时监控及结果输出。

测试执行工作流程图如图4所示。

测试执行过程中有宿主机和目标机的角色之分。宿主机是执行编译、链接、定址过程的计算机, 目标机是运行嵌入式软件的硬件平台。测试执行部分支持的是宿主机和目标机交联的测试模式, 即Host/Target方式。编译连接和测试分析运行在Host机器上, 被测试程序运行在Target机器上。首先须把应用程序转换成可以在目标机上运行的程序。这一步由交叉编译器实现。所谓交叉编译器就是运行在一个计算机平台上并为另一个平台产生代码的编译器, 它的生成文件是可以在嵌入式平台上执行的二进制代码。然后须加载测试用例和模型环境。因为被测程序运行在软硬件资源相对缺乏的目标机上, 它不能提供测试程序所需要的资源 (如存储空间和CPU时间) , 所有的测试信息必须实时的传回宿主机进行分析和处理。目标系统和测试系统之间的通信均通过通信转换接口模块完成。

1.4 测试结果分析与反馈

结果分析与反馈主要完成测试结果的分析及报告的生成, 为评估测试结果、检查需求覆盖状况、处理软件异常等提供依据。

基于需求的测试覆盖率分析, 公式如下:

undefined

在制定测试计划活动中, 将计算计划的测试覆盖, 其计算方法如下:

undefined

在实施测试过程中, 由于测试过程正在实施中, 在计算测试覆盖时使用以下公式:

undefined

在执行测试活动中, 确定成功的测试覆盖率 (即执行时未出现失败的测试, 如没有出现缺陷或意外结果的测试) 评测通过以下公式计算:

undefined

其中:TestCoverage为测试覆盖率;PTestCoverage为计划的测试覆盖率;DTestCoverage为已执行的测试覆盖率;STestCoverage为成功的测试覆盖率。T是用测试过程、测试用例表示的已计划的、已实施的或成功的测试需求数;RfT是测试需求的总数;Tp是用测试过程、测试用例表示的计划测试需求数;Ti是用测试过程、测试用例表示的已执行的测试需求数;TS是用完全成功、没有缺陷的测试过程或测试用例表示的已执行测试需求数。

实现结果分析与反馈的报告生成器需要辅助完成质量分析和报告文档生成, 具体内容有:质量评价项目管理、项目基本信息设置、软件度量模型管理、报告模板管理、项目数据分析及成果图件的生成、质量评价结果的生成输出等。

2 系统测试模型的实现

如图5所示, 测试人员结合软件需求文档, 进行需求转化, 转化后的测试需求经过形式化建模, 形成形式化测试需求, 经测试向量生成器形成测试用例, 根据测试驱动文件自动生成与该项目对应的测试脚本, 然后执行程序, 测试结束后, 通过交互比较工具比较实际测试结果和生成的期望输出结果, 自动对用例的执行结果进行判别, 并识别失败的测试用例。

3 工程应用

软件设计人员将某型号空空导弹飞行控制软件需求和程序提供给软件测试人员, 测试人员对其进行系统测试, 对提出的方法和技术途径进行验证。

通过分析飞行控制软件的需求, 测试人员对软件分解出15条软件需求。然后对这15条需求进一步按照功能细化, 将其分解为31项。其中的检测和修正功能中的起飞前检测是在载机起飞前检测惯性元件精度的模块, 在模块中累计10 s时间间隔内三个轴向的角度增量和速度增量, 计算三个轴向的速度增量平方和, 如果角度增量和速度增量的平方和是在正常范围内, 则将起飞前惯性测量精度正常标志置1, 否则置0。变量具体定义示例如下。

输入变量为:

ACount为I周期计数器 (整型) ;

BXJ、BYJ、BZJ为在10 ms 时间间隔内产品的转动角增量 (双精度浮点型) ;

NWXJ、NWYJ、NWZJ为10 ms间隔内经过校正的速度增量脉冲数 (双精度浮点型) 。

输出变量为:

Zh为起飞前检验传感器准备好标志 (1:好;0:不好) ;

其中, 中间变量NWK表示10 s间隔内脉冲数的平方和, 即

NWK= (NWXJ*NWXJ+NWYJ*NWYJ+NWZJ*NWZJ) 。

表1直观地表达了输入、输出逻辑关系。

通过表1可看出, 通过形式化方式描述的需求, 比传统的文本描述的需求更清晰, 无二义性, 同时更有利于进一步的分析和使用。

通过工具TVGS[7] (test vector generation system) 自动生成测试用例, 测试用例表指定变量的值 (浮点变量的边界值) 。表2表明源于需求的84个测试用例, 在起飞前检验传感器准备好标志Zh_OUT为预期输出值、TRUE=1为检测完好、FALSE=0为检测故障, 表中具体显示了测试用例所有输入变量的值, 一目了然。

表3为覆盖率分析表, 显示为passed 表明测试用例覆盖了每个需求。

用该系统测试模型实施测试后, 与测试模型使用前进行的上一版本软件的测试数据进行了比较。比较结果见表4。

5 结束语

实验数据表明, 与人工设计测试用例相比, 该模型自动化程度较高, 自动生成的测试用例全面、客观、准确度高, 减少了人工方式引入错误的可能, 从而确保了测试用例设计的完整性、测试覆盖的全面性、测试度量的准确性, 大大提高了测试的效率, 降低了软件开发的成本与风险。通过对某型号空空导弹软件系统测试的工程应用, 取得了相关的工程经验, 相信对航空武器系统研制中的软件系统测试人员会有一定的借鉴作用。

参考文献

[1]中国人民解放军总装备部.GJB2786—96.武器系统软件开发.1996

[2]王轶辰, 刘斌.嵌入式软件仿真测试环境的软件体系结构设计.计算机工程与应用, 2005; (16) :97—99

[3]冯静.嵌入式软件结构化测试方法及其相关案例研究.计算机工程与应用, 2005; (22) :73—75

[4]中国人民解放军总装备部.GJB—Z141—2004.军用软件测试指南, 2005

[5]杜延.嵌入式实时系统软件测试.微计算机信息, 2007; (11) :86—88

[6]于以序, 何艳敏, 左雪梅, 等.实时嵌入式软件测试研究.中国测试技术, 2004; (5) :3—6

嵌入式测试系统 第9篇

嵌入式技术是市场热点和趋势。在工业控制、消费类终端、医疗以及汽车四大领域,嵌入式技术将给人们带来飞跃性的应用感受。在工控方面,未来的工厂将是更加智能化、数字化的工厂,它包括工控机、人机界面、测试仪器、控制系统等多个方面,都有无限的应用空间和发展潜力[1]。

另外,无损探伤技术是在不损伤工件的前提下,根据其缺陷的物理特性而对其进行检测的方法,目的是完成缺陷检测,进行质量控制等。常用的无损检测方法有射线探伤、超声波探伤、着色探伤、磁粉探伤和涡流探伤。对金属类材料进行无损探伤常用方法是涡流探伤,它是根据交流电场在钢铁、铝、铜等金属中产生的涡流磁场进行检测。在线涡流无损探测仪的设计和开发对铜、铁生产和加工企业就具有相当重要的意义。

本论文很好地结合了这两大技术进行涡流无损探测仪的设计。

1 系统总体设计

根据GB/T1448093涡流探伤系统性能测试方法和参考国标GB/T 5248-1998铜及铜合金无缝管涡流探伤方法,设计如图一所示的嵌入式涡流无损探测仪。

按照设计要求安装本系统测试铜线。无损探测仪利用涡流无损探头探测铜线表面,由S3C44BOX嵌入式系统驱动伺服电机匀速拉动被测电线,再用A/D口进行系统的数据采集,并同时实时显示测量数据,对测试结果进行判断打印。

2 无损探测原理

交变磁场在接近被检管材时,在其表面和近表面产生涡电流及相应的涡流磁场。涡流磁场的作用是削弱和抵消激励磁场。管材中存在的缺陷会改变这些作用,引起检测线圈的阻抗变化。这些电磁感应的变化而产生的信号,经过仪器的相位分析、调制分析等信号处理,通过声、光报警,标记或打印等装置做出记录,评定被检管材是否存在缺陷。

对金属类材料进行无损探伤常用方法是涡流探伤。它是根据交流电场在钢铁、铝、铜等金属中产生的涡流磁场进行检测。涡流无损探头是一种在线的高速探测器件,在铜、铁生产和加工线中有比较广泛的应用。

由于涡流无损检测是质量控制的主要措施。在线的涡流无损探头检测精度和灵敏度的计量和测试,就具有相当重要的意义。但是目前这方面还没有相应的设备和手段,产品出现质量问题寄回原生产单位进行检测成本太高,不太现实。设计制造能够测试涡流无损探测头精度和灵敏度的设备,就成了进行质量和成本控制的关键。

3 嵌入式系统

随着电子技术和计算机技术的不断发展,出现了性能优良的嵌人式系统,并且其在工业生产、产品质量控制等领域应用日益广泛。

3.1 S3C44BOX简介

S3C44BOX是Samsung公司推出的16/32位RISC处理器[2]。S3C44B0X为手持设备和一般类型应用提供了高性价比和高性能的微控制器解决方案。为了降低成本,S3C44BOX提供了丰富的内置部件,包括:8KB cache、内部SRAM、LCD控制器、带自动握手的2通道UART、4通道DMA、系统管理器、代用PWM功能的5通道定制器、I/0端口、RTC、8通道10位ADC、IIC-BUS接口、IIS-BUS接口、同步SIO接口和PLL倍频器。

S3C44BOX采用了ARM7TDMI内核,0.25um工艺的CMOS标准宏单元和存储编译器。它的低功耗精简和出色的全静态设计特别适用于对成本和功耗敏感的应用。同样S3C44BOX还采用了一种新的总线结构[3],即SAMBAII (三星ARM CPU嵌入式微处理器总线结构)。S3C44BOX的杰出特性是它的CPU核,是由ARM公司设计的16/32位ARM7TDMI RISC处理器(66MHZ)。ARM7TDMI体系结构的特点是它集成了Thumb代码压缩器,片上的ICE断点调试支持,和一个32位的硬件乘法器。S3C44BOX通过提供全面的、通用的片上外设,大大减少了系统电路中除处理器以外的元器件配置,从而最小化系统的成本。

3.2 μC/OS-Ⅱ简介

μC/0S具有执行效率高、占用空间小、实时性能优良和可扩展性能等特点,最小内核可编译至2KB。μC/OS-Ⅱ已经移植到了几乎所有知名的CPU上。嵌入式实时操作系统μC/OS-Ⅱ是基于优先级的抢占式实时多任务操作系统[4],它包含实时内核、任务管理、时间管理、任务间通信同步和内存管理等功能。

μC/OS-Ⅱ内核的工作原理如下[5]:首先进行CPU初始化,再进行操作系统初始化,主要完成任务控制块(TCB)初始化、TCB优先级表初始化、TCB链表初始化、事件控制块ECB链表初始化和空任务的创建等;然后开始创建新任务,并可在新创建的任务中再创建其它的新任务;最后调用OSSTART ()函数启动多任务调度。在多任务调度开始后,启动时钟节拍源开始计时,此节拍源给系统提供周期性的时钟中断信号,实现延时和超时确认。当时钟中断来临时,系统把正在执行的任务挂起,保护现场,进行中断处理,判断有无任务延时到期。若有则使该任务进入就绪态,并把所有进入就绪态的任务的优先级进行比较,通过任务切换去执行最高优先级的任务;若没有别的任务进入就绪态,则恢复现场继续执行原任务。另一种的调度方式是任务级的调度,是通过发软中断命令或依靠处理器在任务执行中调度。如任务要等待信号量或一个正在执行的任务被悬挂起来时,就需要在此任务中调度,找出目前处于就绪态的优先级最高的任务去执行。当没有任何任务进入就绪态时,就去执行新任务。

3.3 图形界面UC-GUI

UC-GUI是一种嵌入式应用中的图形支持系统。它设计用于为任何使用LCD图形显示的应用提供高效的独立于处理器及LCD控制器的图形用户接口,它适用单任务或是多任务系统环境,并适用于任意LCD控制器和CPU下任何尺寸的真实显示或虚拟显示。

它的设计架构是模块化的,由不同的模块中的不同层组成,由一个LCD驱动层来包含所有对LCD的具体图形操作。UC-GUI可以在任何的CPU上运行,因为它是100%的标准C代码编写的。

UC-GUI能够适应大多数的使用黑白或彩色LCD的应用,它提供非常好的允许处理灰度的颜色管理,还提供一个可扩展的2D图形库及占用极少RAM的窗口管理体系统[5]。

4 结束语

本文将嵌入式系统应用到了涡流无损探伤上,使得探伤精度进一步提高,在一定程度上也满足了在线实时检测的要求。该系统的研究为工件的探伤技术的发展有着积极的促进作用,也在一定程度上控制了工件的质量。

摘要:本文首先介绍了嵌入式系统应用现状和相关技术以及涡流无损探测技术在检测工件缺陷和质量控制方面的应用,然后提出了一种将两种技术相结合的方法,最后,分析了新方法的优点。该方法使得涡流无损探测的结果更加精确,在线检测速度更高,在工件质量控制和缺陷检测领域有一定的应用价值。

关键词:嵌入式系统,无损探测,工件质量检测

参考文献

[1]田泽.ARM嵌入式系统开发与应用教程[M].北京:北京航空航天大学出版社,2006.

[2]王田苗.嵌入式系统设计与实例开发[M].北京:清华大学出版社,2002.

[3]李驹光等.ARM应用系统开发详解-基于S3C44B0的系统设计[M].北京:清华大学出版社,2004.

[4]夏玮玮,沈连丰,肖婕等,嵌入式系统关键技术分析与开发应用[J].单片机与嵌入式系统应用,2003,(2).

嵌入式测试系统 第10篇

后PC时代的到来使得医学信号采集系统出现了新的发展方向:采集终端设备的微型化;系统处理能力强、功能多样化、智能化;网络化。

实现上述功能的系统需要具有以下特征:强大的计算能力以适应信号处理、智能化的要求;丰富的外围接口、外部传感器和控制电路接口;具备联网所需要的处理能力和硬件接口,实现远程医疗的功能;软硬件开发的通用平台。但是,目前很多采集系统都是以传统单片机为核心的系统,虽然价格比较低廉。但系统性能低,不能进行较复杂的数据处理运算。因此,具有32位ARM微处理内核的嵌入式系统,凭着其强大的外部接口扩展和控制功能以及较快的运行速度,将有望成为未来医学信号采集系统的核心技术之一。

嵌入式系统是现代科学多学科的相互融合,它以应用技术产品为核心,以先进的计算机技术、半导体技术和电子技术为基础,以通信技术为载体,以特定产品为对象,引入各类传感器,加入进入Internet网络技术的连接,从而形成适应应用环境的产品。

1 系统总体设计

在许多传统的医学信号采集系统的设计中,针对每一种采集系统,大多需要重新设计,从而做了很多重复性工作,既延长了开发时间,又增加了开发成本。经过分析发现,虽然每种医学信号采集系统都有其自身特点,但还是存在不少共同的规律,因此,通过对多种医学信号采集系统功能需求分析后,建立开发平台框架如图1所示。图中所示平台是开发不同采集系统通常都需要的,故可以作为开发不同医学信号采集系统的基础,许多信号采集系统都可以在此开发平台基础上进行设计。

2 硬件平台设计

结合图1可知,嵌入式医学信号采集系统的硬件开发平台应包括以下几部分:

a) 开发平台最小系统,提供嵌入式处理器运行和调试所必需的条件电路,该部分包括32位微处理器、Flash存储器、SDRAM、电源、系统时钟电路、系统复位电路以及调试测试接口,如图2所示。

图2中扩展的Flash存储器采用K9F2808U0C芯片,其存储容量为16 MB,用来存放嵌入式操作系统代码。扩展的SDRAM芯片采用MT45W4MW16芯片,它含有23位地址总线、16位数据总线,容量为8 MB。

b) A/D转换器,将经医学传感器采集到的模拟信号转换为数字信号。

c) 外部通信接口,如RS-232、USB、以太网。

d) 人机交互接口,如LCD(液晶显示器)、键盘输入。

按以上分析,选用恩智浦半导体公司的LPC2292 作为该硬件平台的主控芯片,它是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-STM CPU,带16 kB片内静态RAM和256 kB片内Flash程序存储器。128位宽接口/加速器可实现高达60 MHz的工作频率。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。由于LPC2292的144脚封装、极低的功耗、多个32位定时器、8路10位A/D转换器、多达9个外部中断。LPC2292包含76(使用了外部存储器)~112(单片)个GPIO口。 可扩展外围电路A/D转换器、IIC、IIS、LCD控制器、UART以太网控制器、USB芯片等来满足平台的需要。硬件平台结构见图3。

该系统是3.3 V系统,所以使用SP3232E进行RS-232串口电平转换,以实现通过串口与PC机通信,SP3232E是3.3 V工作电源的RS-232转换芯片。

对于信号采集部分,在LPC2292芯片中已集成了8路10位的A/D转换器,10位的转换时间最低可达2.44 μs,通过相应医学传感器,不仅可满足对脉象、体温等采样频率要求较低的生理信号采集,还可满足远高于脉象和体温信号频率的心电信号的采集要求。

因为LPC2292 内部没有集成USB控制功能,平台中采用恩智浦公司的PDIUSBD12作为USB控制芯片,它是完全符合USB1.1规范,也能适应大多数设备类规范的设计。

为了实现网络连接功能,该平台还扩展了以太网接口,以便于通过以太网将采集到的数据传到异地医疗中心,实现远程诊断和医疗。这里采用DM9000E芯片作为以太网控制芯片。由Realtek公司生产的RTL80l9AS高集成以太网控制器芯片集成了MAC(介质访问控制层)和物理层的性能,可以方便地设计基于ISA总线的系统,简单地与通用单片机进行接口。它还具有与NE2000兼容、软件移植性好、廉价等优点,在市场上的10 Mbit/s网卡中占有相当的比例。

平台中,LCD显示控制芯片采用T6963C。T6963C是TOSHIBA公司的点阵式图形液晶控制器,其最大特点就是具有独特的硬件初始化值设置功能,显示驱动所需要的参数如占空比系数、驱动传输的字节数、字符的字体选择等均由引脚电平设置。

另外,平台中还为扩展GPRS(通用分组无线电业务)模块预留了接口,以满足无线网络的开发需求。

3 软件平台设计

软件是一个应用系统的灵魂,嵌入式软件的开发与硬件紧密相关。由于嵌入式软件的开发是针对具体硬件进行的,故嵌入式医学信号采集系统的软件平台应针对所设计的硬件平台来设计。

为了给嵌入式医学信号采集系统的开发带来方便,要求软件平台具有可扩展、可升级、通用等特性。基于嵌入式系统的医学信号采集系统软件平台包括以下4个层次:

a) 系统引导代码,是操作系统内核运行之前运行的一段程序,通过该程序可以完成相关硬件设备的初始化,并建立内存空间映射图的功能,从而将系统的软硬件环境带到一个合适的状态,为最终调用系统内核做好准备。

b) 嵌入式操作系统,主要用来完成系统初始化以及嵌入式应用的任务调度和控制等核心功能。

c) 设备驱动程序,是硬件设备与操作系统之间的接口程序,为操作系统和应用程序提供一个标准的访问接口。

d) 应用程序,根据不同系统需求所设计的完成特定功能的任务代码。

系统引导代码的开发可采用在U-Boot(UniversalBootloader)基础上修改的方式,U-Boot是遵循GPL开放源码项目,支持多种嵌入式操作系统内核和嵌入式微处理器,会给编写系统引导程序带来很大方便。

嵌入式操作系统采用μClinux。μClinux是Linux2.0版本的一个分支,适用于微控制领域,是针对微控制领域而设计的Linux系统。它的最大特征是没有MMU(内存管理模块),很适合没有MMU的微处理器,例如摩托罗拉公司的M68EX328、恩智浦公司的LPC2200系列等。针对Linux内核的二进制代码和源代码都经过了重新编写,以紧缩和裁减基本的代码,这就使得μClinux的内核非常小(<5I2 kB),加上相关的工具和常用的API不到900 kB,但是它仍然保持Linux操作系统的主要优点,如良好的稳定性、强大的网络功能和出色的文件系统支持功能等。

μClinux操作系统具有以下特点:

a) 灵活的内核加载方式。μClinux内核有2种可选的运行方式,既可在Flash存储器上直接运行,也可以将内核从Flash存储器中加载到内存中运行。

b) 独特的根(root)文件系统。μClinux采用romfs文件系统,该系统相对一般的ext2文件系统,要求的空间少,可满足具有少量内存的嵌入式设备需要。

c) 精简的应用程序库。μClinux小型化的一个做法是重写应用程序库,uclib对libc做了精简,对用户程序采用静态连接形式,以适应无MMU的处理器。

d) 使用vfork()完成多任务。μClinux没有对MMU的支持,采用vfork( )函数实现多任务。

针对平台硬件组成开发的设备驱动程序,μClinux 有两种使用方式:第1种方式是直接编译到内核中;第2种方式是运行时加载。直接将硬件驱动程序写入内核的好处是用户可以随时调用而无须安装,但这样大大增加了内核占用的空间,而将硬件驱动程序编写成一种可加载的内核模块,虽然会由于寻找驱动模块而增加系统资源的占用和运行时间,但与庞大的内核所消耗的资源相比显得微不足道,而且会给软件开发带来许多便利,当需要对某一硬件驱动程序进行开发与纠错时,可以动态地卸载旧版本后加载新版本,如果驱动程序已经写入内核,那么就必须对内核进行重新编写,并且每次对修改后的程序进行测试时,都必须重新启动系统,总之,选用第1种方式灵活性差,于是采用第2种方式。

在编写各种应用程序时,是针对各个特定的功能设计一个个专门的进程或线程,为了缩短开发周期,将软件的主要任务功能都做成标准模块,以便二次开发使用。在开发新的系统时,只要根据需要,对已有的模块进行添加、删除或者作少量的改动便可满足新系统的需要,可以大大地缩短应用程序的开发时间。

医学信号采集系统的主要任务包括:数据采集模块、数据存储模块、数据处理模块、人机交互模块、网络通信模块、控制决策模块等。

在采集系统中,医学临床生理信号一般需要相应算法进行处理,为了给开发应用程序带来方便,降低开发难度,节约开发时间,可以建立针对该开发平台的算法库,例如数字滤波算法、心音小波分析算法等,这样,在采集系统中进行医学信号处理时,就可以方便地调用这些现成的算法函数。

4 结束语

本文所提出的基于嵌入式系统的医学信号采集系统设计方案,通过应用先进的嵌入式系统开发技术,可以有效地弥补用传统单片机所设计系统的不足,具有以下特点:采用ARM核使系统小型化,便于提高系统整体性能;采用嵌入式Linux操作系统,使得系统便于管理和维护;提出建立开发平台的思路,可以有效地缩短开发周期,节约开发成本。

参考文献

[1]广州周立功单片机发展有限公司.LPC2292用户手册[S].2004.

[2]周立功.ARM嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2005.

[3]周立功,陈明计,陈渝.ARM嵌入式Linux系统构建与驱动开发范例[M].北京:北京航空航天大学出版社,2006.

[4]邹思轶.嵌入式Linux设计与应用[M].北京:清华大学出版社,2002.

[5]许海燕,傅炎.嵌入式系统技术与应用[M].北京:机械工业出版社,2002.

嵌入式系统设计与应用研究 第11篇

关键词:嵌入式系统;应用;设计

中图分类号:TP368.1文献标识码:A文章编号:1007-9599 (2011) 16-0000-01

The Design and Application of Embedded System

Gu Yingping

(Changsha University of Science&Technology,Changsha410114,China)

Abstract:The embedded systems is specific computer applications

system.Combining the characteristics of embedded systems,this article discussed the basic components,structural design,application,and current research directions of embedded system.

Keywords:Embedded system;Application;Design

一、嵌入式系统含义

嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。嵌入式系统一般指非PC系统,有计算机功能但又不称之為计算机的设备或器材。它是以应用为中心,软硬件可裁剪的专用计算机系统。

嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软件(OS)和应用程序编程;有时设计人员把这两种软件组合在一起,应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用。

二、嵌入式系统硬件结构

嵌入式系统的硬件架构是以嵌入式处理器为中心,由存储器、I/O设备、通信模块以及电源等必要的辅助接口组成。嵌入式系统是量身定做的专用计算机应用系统,有不同于普通的计算机组成,在实际应用中的嵌入式系统硬件配置非常精炼,除了微处理器和基本的外围电路以外,其余的电路都可根据需要和成本进行裁剪、定制。嵌入式系统硬件核心是嵌入式微处理器,有时为了提高系统得信息处理能力,常外接DSP和DSP协处理器,已完成高性能信号处理。随着计算机技术、微电子技术、应用技术的不断发展及纳米加工工艺技术的发展,以处理器为核心的集成多功能的SoC系统芯片已成为嵌入式系统的核心,在嵌入式系统设计中,要尽可能选择满足系统功能接口的SoC芯片,这些SoC集成了大量的外围USB、UART、以太网、AD/DA、IIS等功能模块;嵌入式处理器包括A、EMPU-嵌入式微处理器;B、EMCU-嵌入式微控制器;C、EDSP-嵌入式数字信号处理器3类。随着嵌入式系统复杂性的提高,控制算法更复杂。嵌入式Internet的广泛应用、嵌入式操作系统的引入以及触摸屏等复杂人机接口的使用,使32位处理器核的应用也日趋广泛。

三、嵌入式系统软件系统

对于使用操作系统的嵌入式系统来说,嵌入式系统软件结构一般包括4个层面:设备驱动层、实时操作系统RTOS、应用程序接口API层、实际应用程序层。有些分类将应用程序借口API归属于OS层,是按3层划分的,由于硬件电路的可裁剪性和嵌入式系统本身的特点,其软件部分也是可裁剪的;对于功能简单,仅包括应用程序的嵌入式系统,一般不使用操作系统,仅有应用程序和设备驱动程序。现代高性能嵌入式系统的应用越开越广泛,操作系统的使用成为必然的发展趋势。

操作系统应用程序接口API是一系列复杂的函数、消息和结构的集合体,它和一般操作系统下的API在功能、含义及知识体系上完全一致;在操作系统中提供标准的API函数,可加快用户应用程序的开发、统一应用程序的开发标准,也为操作系统版本的升级带来了方便。在API函数中,提供了大量的常用模块,可大大简化用户应用程序的编写。

四、嵌入式系统的应用

嵌入式系统在不同工业领域的设计与应用已经超过了30年,包含了航空航天、铁路、能源和工业控制等方向由于嵌入式系统的性能不断提高而成本不断下降,嵌入式系统也作为日常使用的电子设备在汽车、家电和移动通信等领域得到了广泛的应用。

嵌入式操作系统(RTOS)包括VRTX、PSOS、VXWORK,WINCE,EPOC、LINUX、PALM、OS-9、JAVA CHORUS OSQN-X、NAVIO等。嵌入式系统与SoC之间并没有明确的界定,嵌入式系统更多地是指对单片机系统所做的集成,是SoC的一个子集。SoC则是指更广泛的系统集成。单片机在推动IC应用,促进IC发展方面发挥过而且还将继续发挥重要作用。单片机以微处理器为核心,在相应的应用环境下开发出软件写入码点,再配上周边的外围电路,就构成了应用于各行各业的单片机系统。可以说基于单片机的嵌入式系统是SoC的最初形式,有些单片机系统,例如家电控制器等,有着非常广大的市场。对于这种单片机实现系统集成,把所用的微处理器和外围电路集成为一个芯片,这样做不仅可以降低成本,提高可靠性,同时还有利于保护知识产权,这就构成了SoC的最初形式。不少Foundry为了扩大营业范围,建立了嵌入式微处理器的渠道,为嵌入式系统的设计和加工提供了方便。

参考文献:

[1]苏东.主流ARM嵌入式系统设计技术与实例精解[M].电子工业出版社,2007,7

[2]田泽.嵌入式系统开发与应用[M].北京航空航天大学出版社,2005,1

[3]嵌入式系统的研究方向[Z].网络资源

[4]李小将,樊天晴,胡正国.嵌入式系统在信息家电中的应用[J].西北工业大学学报,2002,4,28

[5]苏东.主流ARM嵌入式系统设计技术与实例精解[M].电子工业出版社,2007,7

作者简介:

嵌入式测试系统 第12篇

关键词:自动化配送,ARM,无线通信,GPRS

自动化管理操作系统已经是现代企业必不可少的一部分, 视频图像传输监控系统已经广泛的应用于交通、医院、银行、家居和视频会议等重要场合。早期的模拟视频监控系统不能联网, 只能与管理中心进行点对点 (Point-to-Point) 通信, 随着图像与视频处理技术、网络技术和自动控制技术的发展, 视频图像系统已经过渡到了数字化的网络传输。它以数字视频的压缩、传输、存储和播放 (回放) 为核心, 采用先进的数字图像压缩编/解码技术和传输技术, 将智能图像处理与识别技术用于图像显示、调整、跟踪, 根据现场环境 对物体进行跟踪识别, 对图像进行分析和处理。

1自动化配送系统构成

本系统基于USB摄像头的图像采集子系统, ARM处理器子系统和无线网络数据传输子系统组成了视频服务器系统。通过三星S3C2410开发板上的GPRS模块实现了与管理中心的数据交互传输。通过USB摄像头接收图像数据, 实施对货架位置的定位识别, 然后将识别信息通过GPRS模块设备发送到配送管理中心。管理中心向配送车发送控制命令, 将配送车上的货物放置到指定的货架位置, 或从指定的货架位置上取出货物, 装载到该配送车。如图1所示。

2视频服务器系统的硬件实现

上图中的网络视频服务器主要是由USB摄像头、网络视频服务器等组成。其工作流程如图2所示。

2.1 ARM嵌入式微处理器

嵌入式微处理器是硬件部分的核心, 采用三星的ARM微处理器S3C42410。该微处理器内置了16/32位ARM9TDMI内核, 可以执行32位的ARM指令或16位的Thumb指令, 操作频率最高达203 MHz, 提供了8 K字节的Cache, 以及2个全双工UART (通用异步收发) 通道, 具有低成本和高性能的特点。

2.2无线通信系统

随着GPRS技术在无线通信领域的发展, 在ARM系统中运用GPRS modem实现Internet接入也已开始得到应用。GPRS可以发挥永远在线、快速登录、按流量计费等特点。本文采用了在嵌入式实时操作系统ARM CPU利用AT指令进行拨号, 反馈应答后, 就在本系统中的GPRS modem和Internet之间建立起来一条数据传输通道即GPRS网络, 从而实现了配送车和监控管理中心的数据交互, 实现了远程无人值守时的自动化配送。

2.3视频采集压缩模块设计

视频采集压缩模块由视频数据采集和视频数据压缩两部分组成。视频数据采集芯片负责采集USB摄像头发送来的模拟视频数据并进行模数转换, 进行MPEG4格式的压缩, 然后通过数据总线将数据存储到缓冲存储器中, 由S3C2410进行处理。该压缩芯片采用VW2010, 这是一种常用的实时视音频压缩/解压缩芯片, 兼容MPEG-1、2、4, H.263标准, 具有很高的实用性和性价比, 可以以每秒25帧或30帧的采样速度对视频信号进行实时、动态的捕获和压缩。

3自动化配送系统的软件结构及实现

3.1软件结构

视频服务器上运行嵌入式Linux操作系统和应用程序。服务器端软件开发采用C/S模式, 视频服务器端软件的主要功能是对摄像机摄取的图像进行采集、压缩、存储、传送等操作, 当操作系统启动后, 启动实时时钟, 系统加载串口、USB等驱动模块, 等待视频图像采集的完成, 然后不断重复采集图片, 发送图片的操作。

3.2客户端软件

客户端指的是管理中心, 可以接收来自视频监控服务器传送的数据。其功能主要包括通过GPRS网络接收图像、数据分析、文件存储。当客户端 (管理中心) 接收到数据后, 首先根据协议数据规范对截获的数据进行分析, 剥离出协议头, 分析下层数据, 一层层进行直至得到最终图像数据, 并对其中的信息和流量进行统计, 再对这两个部分信息进行存储或传给相应的显示模块。在自动化配送系统中就是监控中心通过图像来判断配送车的位置, 物体的大小来调整机械臂, 装配货物。

4结束语

基于ARM嵌入式系统的自动化配送系统具有抗干扰能力强, 适合远距离传输该系统。基于实时操作系统Linux, 具有体积小、功耗低、可靠性强、易于安装、而且实时性强, 使管理人员实现了远距离对配送车的实时操作, 采用无线网络GPRS技术实现视频信号的传输, 在网络的任意位置都可实现对整个自动化配送系统的指挥、调度。

参考文献

[1]张绮文, 谢健雄, 谢劲心.ARM嵌入式常用模块与综合设计实例精讲[M].北京:电子工业出版社, 2007.1.

[2]徐兵.基于Web的远程视频监控系统在自动化中的设计与应用[J].微计算机信息, 2006, 10 (1) :286-287.

相关文章
创新公共服务范文

创新公共服务范文

创新公共服务范文(精选12篇)创新公共服务 第1篇科学技术是第一生产力,科技公共服务平台对国家或区域的技术创新具有巨大的推动作用。科技...

3
2025-10-24
匆匆中学生读后有感

匆匆中学生读后有感

匆匆中学生读后有感(精选9篇)匆匆中学生读后有感 第1篇匆匆读后感500字_读《匆匆》有感当细细地品读完一本名著后,大家心中一定有不少感...

1
2025-10-24
草莓教学范文

草莓教学范文

草莓教学范文(精选17篇)草莓教学 第1篇“风儿轻轻吹,彩蝶翩翩飞,有位小姑娘上山摘草莓,一串串哟红草莓,好像……”优美的歌词,动听...

3
2025-10-24
仓储类课程范文

仓储类课程范文

仓储类课程范文(精选7篇)仓储类课程 第1篇物流产业是复合型产业,发达的物流能加速传统运输、仓储和零售等行业向现代物流服务领域延伸。...

1
2025-10-24
创造性批评:解说与解读

创造性批评:解说与解读

创造性批评:解说与解读(精选8篇)创造性批评:解说与解读 第1篇创造性批评:解说与解读作为诗性文化重要组成部分的审美批评,同文学艺术实践...

2
2025-10-24
初二地理试卷分析

初二地理试卷分析

初二地理试卷分析(精选6篇)初二地理试卷分析 第1篇莲山 课件 w ww.5 YK J.COM 4 初二地理试卷分析二、试题所体现的新课程理念和...

4
2025-10-24
常州市河海中学文明班小结

常州市河海中学文明班小结

常州市河海中学文明班小结(精选2篇)常州市河海中学文明班小结 第1篇常州市河海中学2008~2009学年第一学期 八(1)班创 文 明 班 ...

4
2025-10-24
财务负责人身份证明

财务负责人身份证明

财务负责人身份证明(精选14篇)财务负责人身份证明 第1篇财务负责人身份证明及签字样本兹证明为我公司财务负责人。特此证明。身份证复印...

3
2025-10-24
付费阅读
确认删除?
回到顶部