新网站如何做快照,石大网页设计与网站建设客观题,wordpress 前台登录,移动端开发工程师1 CustomDevice开发
CD的开发必须遵照NI提供的模板进行。安装完Veristand之后#xff0c;会在LabVIEW 安装目录下的vi.lib文件下生成【NI Veristand】目录#xff0c;例如我安装的LabVIEW2015在D盘下#xff0c;需要的工具就在D:\Program Files(x86)\National Instruments\…1 CustomDevice开发
CD的开发必须遵照NI提供的模板进行。安装完Veristand之后会在LabVIEW 安装目录下的vi.lib文件下生成【NI Veristand】目录例如我安装的LabVIEW2015在D盘下需要的工具就在D:\Program Files(x86)\National Instruments\LabVIEW 2015\vi.lib\NI Veristand\Custom DeviceTools\Custom Device Template Tool\ Custom Device Template Tool.vi。打开这个VI使用它生成一个工程。
1.1 工程生成工具Custom Device Template Tool.vi 图12 CD工程生成工具VI
新建一个工程设置名称为【485 comm】设置工程存储路径后设置参数Execution Mode是别的这个还没有闹明白是什么意思。保持默认。
1.2 Custom Device Types
1.2.1 AsynchronousCustom Devices 已参见帮助文档待补充。
1.2.2 简历工程
运行后看效果。 图13 CD工程
竟然是个LabVIEW的工程。工程名后面自动追加“Custom Device Project”同时生成两个lvlib库和一个xml文件库中的VI名称自动命名不能修改。
最重要的四个文件如下 图14 四个VI
Initialization VI.vi 实现的功能是当 Veristand 中创建该 Custom Device 时为Custom Device 创建相对应的属性和输入/输出通道 Main Page.vi 实现的功能是在Veristand 中显示 Custom Device 相对应的通道和属性信息 RTDriver.vi 实现的是当Veristand 将 Custom Device 部署到 Real-Time 系统之后 Custom Device Loop 中 Custom Device如何执行自己的工作。因此可以看出前两者Initialization和main page运行的环境是上位机(Windows开发程序平台)可以加入“弹出对话框”等调试方式后者的主要操作环境是 Real-Time如果要输出调试信息就要采用前面提到的 Print NI VeriStand Debug String。
1.3 Initialization VI
默认的框架是这样的。 图15 Initialization框架
这个框架的主要功能就是定义你的设备的输入、输出和一些属性。整个VI的输入输出是固定的了。最常用三个VI 创建设备的输入和输出通道功能类型并指定其属性和page其中输入和输出的数据都是浮点数。这里定义的输入和输出是指的板卡或者设备本身的相对于Veristand这个要调用他的平台设备的输出是要给到平台的输入。 具体指定输入和输出的通道名称、单位、默认值等信息。 图16 设定输入、输出通道 设置自定义设备的属性和属性的值类型默认可选择。 属性和输入/输出的区别在于属性在配置好之后 Veristand 在 Custom Device Loop 中只会很有限次数的访问该信息而输入/输出在 Custom Device Loop 的每一次循环中都会被使用到属性的数据类型包含的种类很多比如布尔数值字符串数组、变体簇转换等输入/输出的数据类型在Veristand 中被限定为Double不能更改。
根据以上信息设定我的串口通信设备通道和属性如下 图17 通道设置
创建了一个输入两个输出三个属性但是这些是如何和板卡、Veristand联系起来的呢
先搁置不说等做完一个CD之后导入到Veristand中再看。
1.4 Main page
Main page的作用是将Initlizantion中设置的属性应用起来在Veristand中的界面展示。 图18 main page初始化前面板
在这里放置属性配置所需要的控件。当前CD中属性有三个串口配置参数和两个端口号。 图19 放置控件
在程序面板中通过控件值变化的事件结构将控件值赋给之前设置好的属性。程序中属性名称要和之前得一致。 给属性赋值。具体实现在事件结构中如下图所示。 图20 串口设置赋值 图21 Port1赋值 图22 Port2赋值
1.5 RT Driver
这个就是和板卡相关的了。设置的属性和输入输出通道怎么作用于板卡如何将数据上传到Veristand就在这里实现。
首先先看下整个大过程的数据流是如何执行的。初始化给了两个队列引用进来。 图23 输入、输出队列引用
1.5.1 DeviceOutputs FIFO
设备采集到的值给系统传送队列对应的板卡采集/读取等操作将获取到的数据以数组的形式通过这个队列发送到系统中。 图24 板卡的采集区域
同理Input队列就是从系统中获取到要操作的值写入板卡中。 图25 板卡写操作区
在此之前板卡需要初始化、打开等操作。板卡的配置参数就从属性节点中获取到。 图26 获取属性值后配置串口并打开 图27 板卡写操作 图28 板卡度操作
读写部分完成之后在最后面退出本VI时关闭资源。 图29 关闭板卡
以上就完成了板卡的操作并将数据通过队列与系统进行交互。
1.6 发布CD 图30 程序生成规范
在工程中自动生成一个程序生成规范最后生成的路径要选择在C:\Users\Public\Documents\NationalInstruments\NI VeriStand 2015\Custom Devices下才能被Veristand识别。
生成规范里面目标目录不要修改否则在加载之后会出现错误。 图31 生成路径
源程序和目标程序都使用默认的设置即可。 图32 CD发布
1.7 在Veristand中的应用
新建Veristand工程“485CD Test”进行系统配置 图33 在Veristand中导入
导入之后自动加载配置的属性和通道。 图34 通道和属性节点
由上图可以看出在Initialization VI中设置的通道名、属性名称和默认值都在这里显示两个功能块一个输入两个输出通道属性面板上就是main page VI 的控件。