NI LabVIEW Real - Time和Microsoft Windows Embedded Standard7三大问题突显性能对比

FPGA/ASIC技术

203人已加入

描述

为了满足您的部署需要,NI提供了两种嵌入式操作系统:NI LabVIEW Real - Time和Microsoft Windows Embedded Standard7(WES7)。每种操作系统对于不同的任务和操作具有不同的优势。 LabVIEW Real-Time保证了关键任务和闭环控制的确定性和可靠性,而WES7则提供了一个可扩展的平台,可以使用众多软件,并集成用户界面功能。在为特定应用选择最好的操作系统时需要有很多因素需要考虑。本指南衡量了两个操作系统的优缺点,以帮助您为您的应用做出最佳的选择。

1. 我的应用需要有多可靠?

图1. 与一般的操作系统相比,LabVIEW Real-Time 和WES7 提供了更高的可靠性

许多嵌入式应用要求高度的可靠性。确定性和长时间连续运行特性都是嵌入式系统可靠性的关键指标。相比Windows7 或者Mac OSX等一般的操作系统而言, LabVIEW Real-Time 和WES7均可以提供更高的可靠性。LabVIEW Real-Time凭借高度的确定性和出色的连续运行特性,提供了最大程度的应用程序可靠性。 虽然WES7并没有确定性可言,但相比一般用途的操作系统,它在连续运行特性方面却有优势。

确定性

通过使用 LabVIEW FPGA 模块,在无需将您的系统部署至硬件的情况下,全新设计的LabVIEW Real-Time操作系统可为您提供最高级的应用可靠性。可靠性的一个关键指标就是确定性,即一个操作系统能始终如一地在已知时间长度内完成一项任务。在LabVIEW中多次或循环执行相同任务时执行时间的变化或抖动范围越大,确定性就越差。 LabVIEW Real-Time的确定性程度非常高,但WES7根本不具有确定性。这是在匹配应用时二者之间的一个关键区别。

LabVIEW Real-Time通过非常精确地对您的应用程序任务进行时序控制来实现确定性。通过使用定时循环以及设置任务优先级,操作系统可以确保关键应用程序执行始终如一,耗时固定。从时间机制上来说,WES7与Windows 7拥有相同的工作方式,允许任何任务优先执行,但这也导致了没有任何确定性可言。

对于闭环比例积分微分(Proportional Integral Derivative, PID)控制这样需要恒定应用执行时间的应用程序、或者紧急制动这样的事件响应来说,都应该使用LabVIEW Real-Time。像EtherCAT这样的确定性的通信协议,通常被用于NI C系列扩展或运动控制,也需要LabVIEW Real-Time,而不能通过WES7来实现。

连续运行
可靠性的另一个关键是确保一个应用程序长时间正常运行。许多嵌入式应用要求连续运行。LabVIEW Real-Time和WES7的特点和性能,使得它们能够满足长时间运行任务的需求。

LabVIEW Real-Time操作系统组件已经精简到了能够实现单个应用程序的确定性的最小数量。减少系统组件、着眼于稳定性,降低了由于系统崩溃和其它不可预见的问题而导致的系统故障发生的概率。而通用操作系统必须为多种不同的应用提供资源和执行时间。每个额外的应用程序,都将增加系统故障的机会和频率。

LabVIEW Real-Time也有一些诸如可靠文件系统和看门狗定时器的附加功能可以进一步保证其长时间应用程序可靠性。由Datalight开发的可靠文件系统是专为那些需要高可靠性的嵌入式系统设计的。它有效减少了如突然断电这种系统事件而导致的文件损坏。看门狗定时器确保了在应用程序出现故障时,系统可自动快速恢复运行状态。

凭借增强型写过滤器(Enhanced Write Filter, EWF)这一新特性,WES7增强了Windows 7的通用操作操作系统属性,以确保更高的可靠性。 在对RAM磁盘进行操作时,EWF会过滤文件写操作,从而保护您的文件不会在诸如系统断电等意外系统事件中损坏。而当系统正常关闭,或得到用户或应用程序的指示时,存储在RAM磁盘的文件就会被写入物理磁盘。当系统非常脆弱、文件易损坏时,您就可以使用这一安全保护功能;确保仅当安全的时候,才进行操作。如果在文件被写入磁盘之前断电了,写操作的文件就会丢失,但重要的应用和系统文件将被保护。

启用EWF功能后,你也可以使用WES7的另一个功能:您可以休眠一次系统,然后可以多次从这一休眠系统镜像中恢复。此功能可缩写为一次休眠/多次恢复(Hibernate once/resume many, HORM)。使用HORM,您可以使用完全按照您希望的方式运行您所部署的应用程序以配置您的系统、休眠系统,并保证在以后每次供电周期内都能这样运行。不需要任何进一步的干预,该系统将以完全相同的正常运行状态。该功能可确保在发生故障时,您的系统可以在最短时间内返回到可用状态。许多嵌入式应用,如信息亭,都将从这个功能中获益。

2. 用户将如何与我的系统进行交互?

大多数应用程序都需要某种形式的用户交互和可视化界面。在选择一款嵌入式操作系统时,开发人机界面(Human machine interface, HMI)是一个重要的考虑因素。

由于LabVIEW Real-Time为了确保确定性和可靠性,一直在走专业化、精简化的道路,图形显示功能已经从操作系统中删除。因此,为了实现图形化的人机界面,必须添加一个单独的计算机系统。它可以是一台PC、笔记本电脑或使用LabVIEW Touch Panel模块开发的触摸屏电脑。 Windows和基于Windows系统的LabVIEW应用程序将在这台单独的计算机上使用,并通过TCP、UDP,或者LabVIEW共享变量以及其它通信方法辅助HMI任务,建立与LabVIEW Real-Time应用通信的接口。

您还可以通过其它手段实现LabVIEW Real-Time系统的人机交互界面。比如连接到一个专用的字符显示器,或者通过串行端口连接其它接口硬件,或者使用如LabVIEW Web UI Builder这样的瘦Web客户端。

WES7不需要一个单独的计算机来实现HMI。您可以使用您的WES7 LabVIEW 应用作为您的HMI。通过相连的VGA显示器来显示前面板,并通过USB与键盘、鼠标和触摸屏交互。这样通过使用更便宜和更容易维护的VGA显示器来取代单独的Windows电脑,可以减少您的整体系统成本。


了解更多关于如何为您的应用选择合适的可视化方案,请点击这里

3. 我需要在我的系统上建一台OPC服务器吗?

用于过程控制的OLE(OLE for process control, OPC),是存在于大量的数据源之间的标准接口。这些数据源包括可编程逻辑控制器(Programmable logic controllers, PLC)、远程终端单元(Remote terminal units, RTU)和传感器等。它使这些设备能够与HMI / SCADA应用程序、应用工具和数据库进行通信。 National Instruments提供了多种使用OPC的通信方式。然而,因为OPC从根本上是基于Windows技术的,如果您打算在嵌入式系统上搭建一台OPC服务器,您必须使用WES7作为您的操作系统。

了解更多关于OPC.

NI OPC 服务器提供了一个拥有多驱动器插件的OPC服务器,可以与多种基于串口或太网的工业设备通信。使用该服务器,再结合您的LabVIEW客户端应用程序,您将能够在WES7中创建一个能够与多种不同器设备通信的独立OPC系统。

除了OPC以外,WES7还可以支持许多工程设备和行业通信协议。 National Instruments提供了多种通信方法,包括Modbus、EPICS,以及通过 LabVIEW数据记录和监控 (DSC)模块的OPC。其中DSC模块仅仅可以工作在Windows操作系统中。

LabVIEW Real-Time本身只接受Modbus和EPICS的通信方法。而OPC通信是基于Windows技术的,所以LabVIEW Real-Time系统本身无法通过OPC通信。所以,它们必须通过TCP、UDP或LabVIEW共享变量,与一个单独的基于Windows的计算机通信,并通过这台计算机的翻译才能与OPC进行通信。这可以很容易地使用LabVIEW DSC和创建在基于Windoss的计算机上的LabVIEW共享变量来实现。

了解如何使用OPC连接LabVIEW和第三方硬件..

4. 我需要将我的系统直接与数据库相连吗?

WES7支持通过LabVIEW DSC模块向数据库写入数据。使用LabVIEW DSC的数据库记录是专为快捷的配置和操作而设计的。它可以轻松地连接并直接登录到许多常见的关系型数据库,如Oracle、MySQL和微软SQL。 LabVIEW的DSC还包括其自身的综合数据库Citadel,该数据库是专为长期高效的数据记录而优化过的。

WES7还可支持LabVIEW 数据库连接工具包,以提供更加自由的数据类型的创建、查询和恢复操作。它允许从任何符合微软AciveX数据对象(AciveX Data Object, ADO)、OPC数据库连接(OPC database connectivity, ODBC),或对象链接和嵌入数据库(Object linking and embedding database, OLE DB)标准的供应商那里获取数据 。 和LabVIEW DSC类似,数据库连接工具包还支持一般数据库(如Oracal和微软SQL)的通信。

像OPC一样,许多常见的数据库通信方法都是基于Windows技术的,如ActiveX。正因为如此,LabVIEW数据库连接工具包并不支持LabVIEW Real - Time应用。

了解更多关于LabVIEW DSC相关数据记录.

使用LabVIEW Real-Time的数据库连接仍然是可行的,但中间的Windows主机必不可少;这与LabVIEW Real-Time实现OPC通信以及HMI功能的方法类似。标准通信方法,如TCP、UDP和LabVIEW共享变量是用来与此独立的Windows电脑主机通信的。

了解更多关于在LabVIEW Real-Time中与关系数据库通信

5. 支持Windows平台的LabVIEW是否能为我的应用提供更多功能?

Windows下的LabVIEW由很多LabVIEW Real-Time中并没有的附加工具包、模块和库所支持。使用LabVIEW应用程序生成器进行部署,WES7将支持完整版本的Windows平台LabVIEW。

如果您的应用程序需要的是仅支持Windows的LabVIEW模块(如LabVIEW DSC),或仅支持Windows的工具包(如报表生成和数据搜索工具包),你应该考虑使用WES7作为您的嵌入式操作系统。

当使用Windows平台的LabVIEW时,还会有一系列DLL、NET程序集和ActiveX控件,可以扩展您的应用程序功能,并缩短开发时间。

LabVIEW平台的很多模块和工具包均可在Windows和LabVIEW Real-Time中使用,如LabVIEW控制设计与仿真模块以及Internet连接工具包。因此,重要的是检查您的需求,确保您所使用的所有模块、工具包以及相关软件都能被LabVIEW Real-Time所支持。
了解更多关于LabVIEW的附加软件

NI

当在LabVIEW Real-Time和WES7之间为您的嵌入式应用进行选择时,首先需要考虑您的应用需要。如果确定性和连续运行是您维护系统正常运行的关键,请选择LabVIEW Real-Time。

但是,如果你的关键需求包括集成的人机界面以及访问由Windows和 LabVIEW Windows平台共同提供给你的软件环境时,请选择WES7。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分