专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »嵌入式开发 » 图形化开发环境:LabView平台 »正文

图形化开发环境:LabView平台

来源: 发布时间:星期五, 2008年12月12日 浏览:2次 评论:0

嵌入式系统正在渗入现代社会各个方面广泛地应用于航空航天、通信设备、消费电子、工业控制、汽车、船舶等领域据统计在美国平均每个中产阶级家庭要使用40~50个嵌入式系统巨大市场需求推动了嵌入式系统向更高技术水平发展设计师们方面采用性能更强大嵌入式处理器如32位、64位RISC芯片取代传统8位、16位微处理器;另方面嵌入式系统也由单处理器单操作系统传统结构向混合型Multi-core系统发展通过采用多个处理器和OS提高系统并行度来提高系统运行效能并且设计师们往往同时采用MPU、DSP和FPGA等多种可编程器件来增强处理能力满足应用功能升级

嵌入式系统复杂性不断增加给设计师们带来了很大挑战代码长度呈指数级增加根据十年前估计嵌入式系统平均代码量为10万行到2001年实际已经超过了100万而现在估计为500万第三方独立市场预测机构EMF在对900多名嵌入式系统开发人员进行调研后指出超过50%嵌入式设计比预期时间晚上市而平均延迟高达4个月;在已发布产品中有近30%设计未达到预期功能和指标由此可见随着嵌入式系统复杂性不断增加软件工程重要性毋庸置疑而大部分嵌入式系统开发人员都缺乏这方面专业训练与此同时随着嵌入式系统广泛应用越来越多领域专家比如机器人设计师、控制工程师、测试工程师需要使用嵌入式技术来构建他们系统他们既缺乏嵌入式系统专业知识也不定经过软件工程专业训练因此无论是嵌入式系统本身发展还是开发人员专业限制都需要种新设计模式和解决问题途径来应对目前挑战
嵌入式系统开发工具发展趋势

随着嵌入式系统快速发展和复杂性不断增加基于文本编程方式所面临挑战愈发严峻这种编程模式在将来不可能彻底解决问题加州大学伯克利分校嵌入式研究专家Edward Lee博士指出现有嵌入式系统开发手段如基于文本编程和面向对象工具都难以用来构建嵌入式实时系统面向对象很难直观地表达时间和平行性(parallelism)而时间和平行性或并行(concurrency)在现在嵌入式系统中是必不可少面向角色(actor-oriented)图形化方法是更适合嵌入式软件设计工具

应对嵌入式系统所面临挑战工程师们已经有了些解决方向比如采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性、简化应用设计、保障软件质量和缩短开发周期但是现有嵌入式系统开发工具非常多全世界嵌入式处理器品种总量已经超过1000种流行体系结构有30多个系列在其上运行操作系统环境也非常多样化包括VxWorks、QNX、Linux、 Nuclears、WinCE等等不仅各种操作系统有各自开发工具在同系统下开发不同阶段也有不同开发工具如在用户目标板开发初期需要硬件仿真器来调试硬件系统和基本驱动在调试应用阶段可以使用交互式开发环境进行软件调试在测试阶段需要些专门测试工具软件进行功能和性能测试等等最合理解决方案是向基于平台工具转移它能够更好地表达整个系统减少与特定硬件以及操作系统相关性使更多软件设计和算法容易理解并被重复使用;而从基于文本工具向图形化工具转移则可以直观地表达系统图形化系统设计(Graphical Design)理念就是源于这两大趋势通过简化嵌入式编程复杂性降低了对工程师在嵌入式设计流程中各个步骤要求;同时提供了从设计、原型到部署从软件调试、功能测试到生产检测环境使得工程师们可以更快速地进行重复设计

在嵌入式系统中实现图形化已经成为大势所趋现在市场上工具都在向图形化方向转变但往往仅限于基于嵌入式操作系统图形界面开发;而且由于它们是针对特定硬件或操作系统工具与硬件和操作系统平台有很大相关性这不足以彻底解决行业将要面临挑战现在市场需要种完全图形化编程语言提供足够灵活性和功能以满足更广泛应用需求因此图形化系统设计关键因素是图形化编程
对于时间和平行性支持

20年来科学家和工程师直在使用LabVIEW为他们设计实验室、验证实验室和生产现场构建自动化数据采集和仪器控制解决方案并在这些应用领域成为业界事实标准其核心在于LabVIEW图形化编程语言使没有太多软件背景技术专家能够快速搭建高级自动化测量和控制系统和传统文本编程相比LabVIEW天生是种并行结构编程语言而时间和并行性在现在嵌入式系统中是必不可少比如LabVIEW在已有定时循环结构上新加了硬件定时功能它是种表示时间和并行语义可以设置操作系统优先级、延时、循环速率等等如图1所示如果我们将图1所示两个并行任务执行目标扩展到嵌入式对象比如FPGA或微处理器就可以发现通过编程环境致性和可升级性LabVIEW能够容易地实现和管理嵌入式系统并行性回想在文章前面所提到向多处理器转移趋势现在我们可以憧憬使用可扩展直观图形化编程来开发应用并将处理过程分配到不同处理器上



图1 LabView对两个并行任务编程支持多种算法设计

谈到嵌入式系统设计人们所指其实包括两部分工作:算法设计和固件设计对于嵌入式系统设计来说个关键要求是软件平台必须能够兼顾实时嵌入式设计中常见多种算法设计即计算模型这些计算模型符合系统设计师们筹划系统时方式从而降低从“系统要求”转换到“软件设计”复杂性近年来LabVIEW已经包含了多种计算模型以更好地满足不同专业背景嵌入式系统开发者需求LabVIEW现在可以通过连续时间仿真、状态图、图形化数据流模型和基于文本数学语言mathscript等多种方式来表达各种算法同时它提供了很多交互式工具用来帮助数字滤波器、控制模型、通信系统设计以及数字信号处理算法开发从而在这些顶层应用中进步简化设计师工作

快速构建原型—沟通虚拟世界与物理世界桥梁

如前所述很多设计比预期时间晚上市并且有些在投入市场以后发现未达到预定功能和指标因此必须采取措施来加快设计流程、提高设计质量种解决方案就是更早地将真实世界信号和硬件引入到设计流程之中进行更好系统原型化从而在早期就发现并修正潜在问题

但是在任何设计和开发流程中基于软件设计和仿真工具虚拟世界与电子或机械测量物理世界之间有个很大鸿沟而LabVIEW平台最明显价值就是在虚拟和物理世界鸿沟上建座桥梁物理测量是与设计和仿真完全不同挑战要求与广泛测量和控制硬件紧密集成并以优化性能处理大量通道数或超高速吞吐量LabVIEW平台经过不断演进在物理测量领域具有很高性能和灵活性更重要LabVIEW平台是开放设计人员可以将测量数据与仿真结果相映射甚至互换仿真和物理数据以用于设计中行为建模或者以仿真激励驱动物理测试从而更有效快速地进行系统原型构建

嵌入式系统开发人员如果要定制硬件用于最终发布很难同时并行地开发软件和硬件而如果直到系统集成测试时候才引入I/O用真实世界信号检验设计旦发现存在问题那就意味着很难在预期时间完成设计任务了大多数设计师当前用评估板来进行系统原型化但是原型板往往只具备少量模拟和数字I/O通道也很少支持视觉、运动或同步功能此外设计师经常需要传感器或特殊I/O支持而花费大量时间来开发定制原型板而这些仅仅是为了设计概念验证使用灵活、商业化原型平台可以大大简化这个过程消除其中硬件验证和板级设计大量工作对于大多数系统原型化平台必须包括最终发布系统同样部件比如用于执行算法实时处理器、用于高速处理可编程逻辑器件或者将实时处理器接口到其他部件因此如果这个商业化系统不能满足所有要求那么这个平台必须是可扩展并且支持自定义NI提供了各种硬件平台与LabVIEW集成完成从设计、原型到部署全过程例如使用LabVIEW和NI 可重复配置I/O(RIO)设备或NI CompactRIO平台可以快速而便捷地创建嵌入式系统原型
标签:

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: