浅谈嵌入式设计在图形化编程的快速应用

时间:2011-09-01

  概览

  随着嵌入式系统日益普及,机器制造商、测试工程师、控制工程师等许多领域的都需要嵌入式技术来开发系统,而他们目前又都不具备开发嵌入式系统的技能。嵌入式系统是"控制、监视或者辅助装置、机器和设备运行的装置"(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统,对功能、对可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由以下几部分组成: 随着系统日趋复杂,随着需要该技术的非嵌入式日益增多。

LabVIEW的并行定时循环直观地显示出并行任务 www.elecfans.com

  图 1. LabVIEW的并行定时循环直观地显示出并行任务

  文本代码令各领域的众多们难以实现该水平的定时与并行;而图形化表示对于科学家和工程师而言,却显得更为清晰、更易访问。如果LabVIEW范例被扩展至包括FPGA和微处理器的芯片,您会发现:LabVIEW还能以同样的一致性和可升级性LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显着区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。

  嵌入式系统设计的另一项关键需求是:软件平台应当用于实时嵌入式设计常用的各类算法设计浏览。Edward Lee博士身为伯克利(Berkeley)地区加利福尼亚大学(University of California)在嵌入式软件平台方面的研究,将设计浏览统统视作运算模型 .这些运算模型与系统设计师浏览系统的方式匹配,降低了将系统要求转换为软件设计的复杂性。

  许多嵌入式系统可自主运行,需要并行处理许多有特殊定时要求的任务。假设某个机器控制系统用以控制直线台、旋转多轴、控制照明并读取视频数据;在这样一个系统中,则必须以确定、实时、并行的方式开展多进程。若在此类应用中采用C等传统且基于文本的工具,会令复杂性立刻提高。LabVIEW相反却可借助自身功能,轻松开发复杂编程和定时模型。早在20多年之前,NI便创造出具有LabVIEW图形化开发环境形式的组件和技术。

  在过去的几年里,LabVIEW已经扩展性地纳入了多种运算模型,从而更好满足了嵌入式系统设计师及其各种技术装置的需求。 LabVIEW现已包括基于文本的数学、连续时间仿真、状态图和图形化数据流模式,用以代表各类算法。LabVIEW还纳入交互式工具,从而推进数字滤波器、控制模型、数字信号处理算法的设计体验,令此类垂直应用的设计更为简易。  商用现成建模平台

  如前所述,由于许多设计延迟或是根本无法面市,甚至更糟;由于设计会在推出之后宣告失败,我们必须采取行动,确保以更短的时间获得更优质的产品。一举两得的途径之一便是:通过更快地在设计中集成实际信号和实际硬件,更好地建模系统,从而实现优质设计的迭代并能更早发现(并解决)问题。

  如 图 2的设计过程所示,LabVIEW FPGA模块能够将LabVIEW设计到NI的FPGA硬件上;LabVIEW已能够通过该模块,将算法设计与逻辑设计相互结合。现在我们可以集中精力,探寻缩短硬件路径的效率与手段。

  图 2. 反映软件和硬件独立设计过程的典型性嵌入式系统软硬件设计过程

  目前,若您在为终的部署创建自定义硬件,则很难并行开发软件和硬件。因为只有进入系统集成阶段,软件方能在实际的硬件上接受测试。此外,您并不希望进行纯理论型的软件开发;在系统集成测试阶段纳入I/O并通过实际信号测试设计,可能造成:发现问题时为时已晚,因而无法按时完成设计。

  许多设计者目前采用测试板卡一类的方式,建模系统。然而,此类板卡往往只包括少数的模拟和数字I/O通道,很少包括视觉、运动或同步I/O的能力。此外,设计师往往只是为证明概念,便不得不将时间浪费在开发传感器或特定I/O的自定义板卡上。

  如 图 3 所示,通过灵活的COTS建模平台,COTS是commercial off-the-shelf的缩写,意为商品化的产品和技术。当前对于应用在某一特定环境的测控系统,人们已很少像过去那样开发研制专用的软硬件设备,而是利用市场上的各类产品和技术(COTS)去集成所需的测控系统。毫无疑问,与开发专用系统相比,采用COTS组件的系统集成是既省力又省钱的方法,这对于批量少、专用于某一场合的测控系统来说尤为如此。 COTS技术一方面体现了军方对测试需求商业化和采用开放式工业标准、互换性、互操作性的要求,另一方面体现了测试仪器标准向计算机相关标准靠拢的趋势。您却能真正简化该过程,并省去许多配合硬件验证和板卡设计的工作。

  Figure 3. Stream-lined development flow with Graphical System Design

  对于许多系统而言,建模平台必须纳入与终发布完毕的系统相同的组件。这些组件通常是:用于执行确定算法的实时处理器、用于高速处理或将实时处理器连至其他组件的可编程数字逻辑,以及各类I/O与外设 [图 4].,若I/O在与各个系统配合使用时,无法满足您的全部需要,平台也应能在需要时得到扩展并接受定制。

  图 4. 嵌入式系统的典型组件

  National Instruments公司提供了数种类型的建模平台,其中包括NI CompactRIO.该平台含有嵌入式系统的所有基本模块。 该控件包含一个运行实时操作系统的32位处理器。 CompactRIO背板包含的FPGA可执行高速处理,且为包含模拟输入与输出、数字输入与输出、计数器/定时器等功能的I/O模块,配置并提供实际接口。每个模块都包括:与传感器和激励器的直接连接,以及内置的信号调理与隔离。

  此外,CompactRIO采用工业化封装(-40 oC到70 oC,50G防振动)、占地小(3.5英寸 x 3.5英寸 x 7.1英寸)、供电要求低(典型的7W到10W),这使它不仅非常适于建模,而且非常适于车载、机器控制和板载预测性维护应用的部署。

  自定义部署功能

  如前所述,由于包装、耐用性和成本方面的优势,CompactRIO常用作建模和部署。然而,用户有时会因为规格或供电因素,选择更小的自定义板卡设计。为满足该需求,设计师可通过LabVIEW嵌入式开发模块,将代码部署于任一32位处理器,从而节省软件购买成本。

  LabVIEW嵌入式开发模块结合了图形化开发的上述所有优点,以及现成的分析函数、集成式I/O和交互式图形化调试。该模块能够将任一32位微处理器作为对象;由它提供的框架能够开放地集成各类目前以C为基础的第三方工具链(tool chain)和操作系统,从而将自定义板卡设计作为对象。一经集成,用户便能实现100%的图形化开发,并交互式地调试其应用。

  这种新技术使越来越多的科学家、工程师和各领域的,能够更为便捷地设计算法、开发应用、编程逻辑、建模系统并将系统部署于指定的对象。

  结论

  图形化系统设计带来了结合硬件平台的软件平台,这能够极大缩减开发成本和面市时间。集成多种运算模型的软件平台,地缩短了将项目指标实现为具体设计的时间。灵活的COTS硬件建模平台可支持软件平台并提供自定义组件,通过缩减自定义硬件的设计时间和设计成本,地缩短次建模的时间。,由于图形化软件从设计到平台建模,到终的目标部署均保持一致,从而使代码利用率达到,并且使得向终部署的转换简单易行。借助LabVIEW,您便能通过单一的图形化平台,对嵌入式系统进行设计、建模和部署。嵌入式系统不论从数量还是从复杂度来说都在飞速地发展,而且在嵌入式系统中,通过软件实现的功能越来越多。传统的先硬件后软件的设计方法对这种复杂的嵌入式系统开发已不再适用。包括要求设计师创建并维护模型的多个"角度".要解决这些问题,硬件系统的软件模型必需同时具备快速和准确两个特点。具备了这两个特点的模型就有可能既适用于系统架构阶段,又能成为出色的软硬件协同开发参考模型


  
上一篇:解析嵌入式Linux下LCD驱动程序的设计
下一篇:Windows CE在嵌入式系统结构的设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料