LabVIEW程序快速开发流程
引言
对初学者,LabVIEW应用程序的开发总是想到一个功能就做一个功能,功能多了之后会发现整个程序结构混乱,程序的阅读性不好,程序的后期维护也不方便。
经过一段时间的开发后,我认为程序的架构设计是十分重要的。我们在设计程序架构的时候要明确功能需求、各个功能之间的控制关系,以及那些功能可以独立成子VI。
这里用我的一个项目来简单讲解一下我的个人观点。
一、明确功能
我这里要实现的功能是:
1、用采集卡采集传感器数据,并进行数据上传到数据库 信号去噪 和 特征提取 并 显示。
2、查询数据库中的数据,绘制波形图等
3、按键实现数据初始化
二、程序框图(后面板)区域划分
根据功能划分程序框图的区域,也就是先把相应的框摆在那里,框预设的大一点,再排个版。
-
区域1
这肯定是要用多个页面的,所以需要使用选项卡控件,并在程序框图中实现按键跳转页面,应该通过while循环嵌套事件结构实现。 -
区域2
对于采集卡采集数据这个部分,需要通过一个开关来控制开启;
然后,需要判断是是否需要将信号上传到数据库。
然后,需要判断是是否需要信号去噪和特征提取。
所以需要用一个条件结构来判断采集功能是否开启,开启之后进入顺序结构,每个顺序结构只能要使用条件结构判断该功能是否启动。
这部分成程序结构为:最外层是while循环结构,第二层是条件结构,第三层是顺序结构,每个顺序结构中嵌套条件结构 -
区域3
对于数据库数据查询,需要通过按键来触发,所以需要通过事件结构来完成,程序结构为 while循环结构 嵌套 事件结构 -
区域4
由于我们在数据库中用到了好多个表,在程序移植的时候需要创建相应的表,这种操作虽然不难,但是要花很多时间。所以需要做个自动创建表的功能,这个功能只是在第一次使用的时候有行了。偷懒的话,就用一个事件结构嵌套顺序结构即可; -
区域5
为了管理我们的显示控件,也方便我们了解程序到哪一步了,时候正确的进入了哪一步,需要设计一个实时的监控功能。只需要在一个while循环中放我们想监控的控件即可。 -
区域6
一般程序都会有个初始化的按键,在程序运行之前,或者程序中止后实现程序的复位。因为要按键来控制,所以需要一个while循环结构嵌套一个事件结构
注:
- 最好打开每个结构的 子程序框图标签,这样显得思路清晰。
- 最好将使用到的变量集中摆放,
这样整个程序就划分成了 6 大部分。
三、前面板的初步设计
大致划分一下整个程序前面板分为那几块,需要什么控件,需要多少个。可以用线条划分一下,显得逻辑清晰。
对于控件,要先确定其显示的风格,labVIEW中提供了几种控件的风格。个人觉得银色风格还可以。不想自定义风格就拿来直接用吧。
对于数据采集这个部分,应该需要设个采集卡开启的通道(布尔型开关),设置采样率(数字输入 / 枚举输入),启动开关(布尔型开关)
对于数据处理这个部分,需要控制几个功能是否开启,需要几个开关(布尔型控件)
以此类推。。。
注:多预留几个返回按键,在程序框图中设置好,后面要是增加页面就可以拿来直接使用
本文地址:https://blog.csdn.net/qq_39325245/article/details/109008567
上一篇: 开关电源讲解 -- 以反激式开关电源为例
下一篇: 柯洁在让子棋中负于围棋AI