为什么没有针对cDAQ设备的Simulink模块?



我目前正在做一个涉及Simulink中数据采集和实时处理的项目。我们继承了一些相当时髦的数据采集硬件,这是专门为这个项目购买的——也就是说,一个国家仪器公司的数据采集设备(USB)。在这一点上,更换硬件太昂贵了。

我以前见过与DAQ工具箱一起工作的Simulink块,所以很自然地假设我可以在Simulink中使用我们的cDAQ。然而,在进一步的调查中,似乎这些块只适用于PCI NI设备,而不是像我们这样的"紧凑型"USB设备。

我通过编写一个使用DAQ工具箱的基于会话的接口的2级m - s函数创建了一个解决方案,将传入的数据放在队列中,并通过onOutputs中的输出将其推出。这似乎工作良好。

我的问题是:MathWorks决定不让他们的DAQ块与cDAQ设备一起工作是有原因的吗?我知道USB往往有一些延迟问题,但我真的疯了吗,认为这是可能的?我甚至会说,它实际上看起来相当简单,但肯定有动机缺乏Simulink支持的cDAQ设备在DAQ工具箱。我是不是把问题简单化了?如果有,是怎么做到的?

谢谢你的帮助。

Mathworks的动机可能是由需求驱动的,可能没有多少用户需要它。

不知道这是否对你有帮助,但是编写C库来完成数据采集非常容易,而且可能更快。然后你可以从Simulink中调用库中的函数。这个解决方案也有给你完全控制的DAQ板的优势。DAQmx的发行盘上有很多C语言的例子。

最新更新