普通PC机,安装NI Linux RT系统(注意网卡要intel)
首先,很多做HIL仿真的人,第一时间是考虑买一个仿真计算机,国内比较常用的,有3种方式。
第1个是MATLAB原生支持的Speedgoat仿真计算机,这个支持MATLAB编程下载,十分方便。还有dspace,这种据说比较贵,还不轻易卖别人。大厂肯定都用它。最后一种就是NI的PXI设备,使用NI公司的Veristand平台,也可以将MATLAB生成的文件导入到计算机,进行实时仿真。
国内也有其他的仿真计算机,航空航天很多,基本都是自己用vxworks跑软件,自己拼硬件,然后售卖,这种不通用就不讲了。
今天介绍的是,不花额外的特殊的钱,构造自己的仿真计算机。方法即使使用NI的ni linux rt系统。这个系统在linux系统上做了实时补丁。在自己电脑上安装ni linux rt系统后,就可以用veristand+MATLAB做试试仿真了。
特别地,这个系统下,计算机串口默然都是可以直接用的,如果自己电脑有PCI可以插入其他采集卡硬件的话,也可以进行实时采集仿真。
另外,USB-CAN这种设备在实时系统下也可以使用。
ni linux rt的安装,见文章开始的视频。网上介绍很多,但是都没做成视频,个别容易卡住。
按视频,使用普通PC装好了ni linux rt之后,就需要使用linux知识,一般的硬件,都会提供调用说明,ni linux rt里面集成了很多硬件的驱动,这个插上USB-CAN之后,利用系统命令,就可以识别到,在NI max种,也会识别到USB。
和其他linux一样,在linux下使用usb-can需要厂家提供so文件,也就是类似windows下面的dll文件,调用方式在LabVIEW当中都是一样的。使用调用共享库。只是末尾换成了so文件。使用so文件,需要注意几点,一是在rt下需要把这个so文件放到bin文件下去。二是在上位机RT里,so文件也要放进去系统的这个目录下:/home/lvuser/natinst/bin。不然会提示so文件调用错误。
然后就使用普通的RT操作就行了。部署vi到rt目标机运行。
需要注意的是,在RT种,如果不在NI max启用RT 的UI嵌入式界面,那么,LabVIEW的很多功能再RT是用不了的,很明显的就是事件结构,在RT里不会运行。需要用事件结构相应RT的用户操作的,请**启用UI嵌入式界面。*
启用UI嵌入式界面后,在上位机可以直接运行UI,也可以独立到RT种,给RT安装一个显示器,使用鼠标键盘操作RT上的LabVIEW界面,即脱离上位机开发环境使用RT的LabVIEW。
当然,使用Veristand做HIL仿真的话,其实用不到UI界面,大不分是一个一个功能的VI。