比较LabView和Microsoft Robotics Studio

时间:2010-02-27 04:39:43

标签: labview robotics-studio

表面上看,LabView和Microsoft Robotics Studio在我看来有一个非常相似的编程范例和环境。

比较这两种产品是否公平,还是他们在不同的联赛?

我希望有人使用这两种产品会有助于比较和对比,以便我能够理解何时使用其中一种产品。

3 个答案:

答案 0 :(得分:7)

免责声明。我没有使用过Microsoft Robotics Studio。我只查看了情况说明书和一些文档。但是我对LabVIEW有很多知识。所以这个答案可能(并且可能是)有偏见。

历史明智LabVIEW已经存在了20年,并且具有MSRS没有的以下功能(从第一眼开始)。

  • 独立于平台(LV在Windows,Linux,Mac和各种嵌入式平台上编译),但硬件支持各不相同
  • 编译器,直接进入机器代码
  • LabVIEW是一种非机器人技术但源于测试和测量的编程语言
  • 广泛的DAQ和数据分析支持

与LabVIEW代码相比,VPL(MSRS)看起来非常笨拙,看起来MS并没有真正转向可视化编程(或者第三方的专利不允许)。

价格方面,MSRS对于免费的“爱好者”版本更友好,而LabVIEW基础的价格大约在1300美元左右。

其他MSRS不在机器人上运行,它只通过机器人API(蓝牙或有线)控制机器人,而LabVIEW(以及更具体的NXT-G)在机器人内部的处理器上独立运行。

可能重要的是LabVIEW是NI的主要软件产品,而MSRS是MS的众多产品之一,因此支持和开发应该具有更高的优先级。

答案 1 :(得分:3)

我已经使用MSRDS进行了大量编程,在较小程度上使用了LabVIEW,这是我的观点。早些时候,我们的大部分软件都是使用LabVIEW开发的,但最近几年我们一直将它的主要部分转移到C#,因为使用像C#这样的语言更容易进行面向对象编程。我个人觉得MSRDS,尤其是并发协调运行时(CCR)被低估,部分原因是文档不那么详细。虽然MSDN论坛非常出色,但我们需要搜索它们以找出一些我觉得应该成为文档一部分的内容。另一个很好的信息来源是Kyle Johns和Trevor Taylor撰写的“Professional Microsoft Robotics Developer Studio”一书。

回到比较,我觉得LabVIEW和MSRDS(虽然我不确定LabVIEW Robotics)遵循不同的编程方法。虽然它的目标是Robotics,但MSRDS用于在任何应用程序中利用异步行为。 CCR具有一些出色的协调原语(例如Joins和Interleaves),它使异步编程变得更加容易。 DSS用于开发面向服务的应用程序,这些应用程序分布在驻留在同一台机器或不同机器上的多个节点上。我们开发了一个使用MSRDS开发实验室自动化系统的框架。该框架用于开发基于分布式组件的软件,该软件既具有线程安全性又具有响应性。

值得一提的是,.NET 4.5中的任务并行库数据流基于CCR概念以及.NET RX的概念。我建议你考虑一下这些。

谢谢,

Venkat

答案 2 :(得分:2)

我认为Ton击中了鼻子,但有一些关键点我不同意。

独立于价格LabView是一个非常优越的自动化和嵌入式编程系统。然而,有一个问题是没有许可证,LabView会破坏银行几次。根据您的目标平台,您可以轻松地花费数千美元用于开发环境。

两个系统都有编译器。有一段时间LabView只限于几个嵌入式环境,但是通过添加ARM编译器,现在有大量支持的硬件系统。 LabView是在您编程时实时编译的,MSDS是根据请求编译的(据我所知)。

LabView绝对是针对机器人技术的。 NI已经为机器人应用提出了许多工具,并且从自动化中获得的许多想法可以直接进入机器人设置。有趣的是,FIRST机器人大赛专门使用NI硬件(cRIO),LabView是一种流行的编程选择。

RDS的可视化编程和LabView的可视化编程并不具有可比性。它们不是以相同的范例运作。

RDS确实可以创建机器代码,代码可以在没有干预的情况下在机器人上运行。

如果您想通过LabView购买完整的机器人系统进行开发,请查看此页面:http://www.ni.com/robotics/how_to_buy.htm

作为一个背景知识,我是一名经过认证的LabView开发人员,并使用RDS和乐高NXT系统作为讲师。