工作中遇到老外的项目,用的是Actor Framework框架,所以最近这段时间学习了下。但网上这块资料非常少,就算是有也是非常简单的介绍。后面看到这篇博客 http://blog.csdn.net/u011520129/article/details/51628175(相信很多在网上找过资料的盆友都看到过),但是作者没有提供源码 。所以我只能按照他的说明,自己写了代码并调试,功能基本差不多,但代码实现可能有些地方不一样。 源码我已经放在附件中( labview 2014),有兴趣的盆友可以对照那篇博客看看,不明白的地方可以留言问我。
打开项目后,运行Launcher.vi,就会打开界面。然后打开global.vi,可以在里面修改Water Level Value 和Temperature Value。当Water Value 低于界面中Water DeadBand的下限值时,Water State会亮(水阀打开),高于上限值时,关闭水阀。Water DeadBand限值可以在界面中设置。
然后就是可以在global.vi中修改温度值,高于限值pumb打开,延时3S打开Fan A。 如果Fan A 出现故障,Fan B自动会打开(这里有点小复杂,最好是先看看那篇博客的功能介绍)。其实global.vi就是用来模拟实际当中的传感器信号的,若要模拟FanA 故障,可以创建个新的vi,给global中的Fan A Fault 赋值。
其实Actor Framework的难点我觉得还是在类的关系处理上,就像这个项目中,类之间关系处理的很好(毕竟是NI的例子),希望想学这个框架的人可以好好看看这个项目,最好是自己跟着写一遍,写的时候肯定会遇到一些问题。
10
|
|
|
|
本帖最后由 lcsj1517 于 2017-11-23 09:36 编辑
Labview范例好像有这个,记得好像是
|
|
|
|
|
非常感谢,最近也想把这方面学好,先下载楼主的代码看看,学习一下。
|
|
|
|
|
头像被屏蔽
· 2017-12-10 22:13:46
|
|
|
|
|