我正试图确定这两件东西中哪一件要买给我的作品。我使用了SIMULINK,但没有使用LabVIEW。有没有人使用过这两种方法,并想提供一些细节?我的调查标准是:用户友好性、库和模板功能的可用性、实时探测设备、COTS硬件接口机会、代码生成质量、可测试性设计(即容易生成单元/验收测试)等。但是,如果有人想用更多的标准来教育我,请尽一切努力!
对于不了解SIMULINK和LabVIEW的人来说,这两种语言都是专门用于图形数据流建模的特定领域语言(DSL)(以及代码生成)。这些是多工业工具,并大量用于工程设计和建模。
重要的-我很想知道SIMULINK和LabVIEW是否提供实时探测.例如,我有一个我想要模拟的模型。如果在该模型中存在与某些构建块相关的变量,那么随着模拟的继续,我能看到它们的变化吗?我知道,这肯定是不可能与SIMULINK,因为它有一个逐步调试器。我不知道在LabVIEW中有类似的东西。
我真的没有使用过LabVIEW,也不能暂时获得它,因为我的工作互联网有下载限制和管理特权问题。这就是为什么我不能仅仅使用NI网站得出结论的原因。如果有任何解决这个问题的白皮书,我也想知道:)
自上一次发布以来的更新
我已经使用了MATLAB代码生成器,不会说它是最好的。然而,我现在听说SIMULINK嵌入式编码器是最好的代码生成器,几乎是它自己的同类。能否确定这是否有利于安全关键系统的设计,即从安全关键子系统模型生成代码。我知道Mathworks一直在努力缩小差距,以实现完全灵活的生产级C/C++代码生成。
我知道一个理想的答案是,“取决于你想要做的事情,两者兼而有之”。有趣的是,我认为我正朝着这个方向前进。ATEOTD,这是一大笔钱,需要花得“好”。
提前谢谢。
发布于 2013-06-19 10:25:18
我完全没有使用Simulink的经验,所以我只会评论LV,尽管在维基百科上快速阅读Simulink似乎表明它主要集中在仿真和建模上,LabVIEW的情况肯定不是这样。
好的,首先,LV不是DSL。虽然您不想在任何项目中使用它,但它是一种通用的编程语言,您应该考虑到这一点。我知道NI有一个LV的模拟工具包,如果你想要的话,这可能会对你有所帮助,但我绝对没有经验。我所看到的图像似乎表明,它为LV添加了一种特殊的图表来进行模拟。
第二,LV不限于任何类型的硬件。它是一种通用语言,因此您可以编写根本不使用任何硬件的代码、将使用或运行在NI硬件上的代码或使用任何硬件的代码(无论是通过DLL调用、.NET程序集、RS232、TCP、GPIB或任何其他您可以想到的选项)。用于各种设备的LV驱动程序有相当多的集合,驱动程序的质量通常取决于是谁编写的。
第三,你当然可以在LV中实时探测。您可以编写代码,就像在C或Java中那样,在运行它时,您有几个调试选项:
当然,由于您是在讨论代码,所以您也可以编写代码将这些值显示到图形或数字指示器上的屏幕上,或者将它们记录到文件中,因此不需要进行实际的探测。您还可以添加分析代码等。
第四,您可以尝试在功能完整的评估模式下下载和运行LV。如果我没记错,NI目前给你7天,然后45天,如果你在他们的网站注册。如果你不能在电脑上做到这一点,你可以在家里试一试。如果你的问题只是下载,你可以尝试联系你当地的NI办公室,并要求他们给你一张DVD。
请注意,我对建模和仿真并不了解,所以我不知道您需要编写什么样的代码才能做您想做的事情。我假设如果NI有一个特殊的模块,那么它就不是您可以在普通代码中完全涵盖的东西(至少如果您想要原始表示法的话),但是我想说,如果您可以用C编写您想要的代码,那么您就没有理由不能用LV编写它(当然,假设您知道如何用LV编写代码)。
发布于 2013-06-26 14:13:15
许多最好的答案将取决于您的最终设计要求。你在开发产品吗?如果是的话,你是在哪个发展阶段?还是你在做研究?
我最近做了一个比较,就像你做的一样。我知道LV,但想要转向一个更硬件可伸缩的选择,因为NI HW是非常昂贵的体积。也就是说,我的公司想要转向一种产品。LV和NI HW给你的是灵活性。与C相比,您可以非常快地更改代码,另一方面,LV在几乎没有C那么多不同的HW平台上运行,所以我想找到一个廉价的平台,它可以很好地用于实时控制和数据采集,这样如果我们想以30K的价格销售一个产品,我们的控制器就不会花费15000美元。我们最终得到了钻石系统Linux SBC。有趣的是,Simulink最终使用了最昂贵的硬件!它确实具有很大的灵活性,可以生成代码,以及模型工厂和控制器。但是,LV也能做到这一点。
正如Yair所写的,LV有很多好的调试工具。一个不太出名的更有趣的工具是用于调用时挂起的SubVI选项。这允许您在暂停执行时随心所欲地处理SubVI的输入和输出。
发布于 2016-03-30 15:06:01
MATLAB和Simulink是控制系统设计和仿真的实际标准。Simulink控制器模型可以结合对象模型进行离线仿真,从而实现嵌入式目标的实时仿真。它是一个通用的仿真框架,具有广泛的内置库和一个定制的专用库,可以通过用C语言和其他语言创建自定义块(S-函数块)来扩展。它包括在进行非实时模拟时,能够在图形、数字显示、量规等中显示值。来自Mathworks的实时目标支持包括x86 (xPC Target)和几个嵌入式目标(MPC555等),还有对其他目标的第三方支持。前面提到的dSPACE提供了完整的原型控制器,包括对其强大硬件的支持。xPC目标包括对大量COTS数据采集卡的支持。实时目标支持包括图形、数字显示、量规等GUI元素。
https://stackoverflow.com/questions/17185249
复制相似问题