杰瑞科技汇

LabVIEW入门实例教程该怎么学?

LabVIEW 入门实例教程

第一部分:准备工作与第一个程序 (点亮LED)

目标: 熟悉LabVIEW开发环境,创建一个简单的程序,让前面板的“LED灯”亮起来。

LabVIEW入门实例教程该怎么学?-图1
(图片来源网络,侵删)

步骤 1:安装与启动

  1. 确保你已经安装了LabVIEW,如果没有,请从NI官网下载并安装。

  2. 启动LabVIEW,你会看到启动窗口,选择 “文件” -> “新建”,或者直接点击 “新建 VI” 按钮。

    • VI (Virtual Instrument): 这是LabVIEW程序的基本单元,包含两部分:
      • 前面板: 用户交互界面,像仪器的面板,有按钮、指示灯、图表等。
      • 程序框图: 程序的源代码,用图形化的“函数”和“数据线”连接,表示数据流向。

步骤 2:创建前面板

  1. 你应该看到了两个空白窗口:一个是前面板,另一个是程序框图。

  2. 在前面板窗口中,找到 “控件” 选板,如果看不到,可以通过菜单 “查看” -> “控件选板” 打开。

    LabVIEW入门实例教程该怎么学?-图2
    (图片来源网络,侵删)
  3. 在控件选板中,选择 “经典” -> “经典布尔值”

  4. 从选板中拖拽一个 “圆形指示灯” 到前面板,这个指示灯将作为我们的“LED灯”。

  5. 双击“LED灯”上方的文本“布尔”,将其重命名为 “电源指示灯”

  6. 从控件选板中,拖拽一个 “停止按钮” 到前面板,并重命名为 “停止”

    LabVIEW入门实例教程该怎么学?-图3
    (图片来源网络,侵删)

    你的前面板现在应该看起来像这样:


步骤 3:编写程序框图

  1. 切换到 “程序框图” 窗口,你会发现,前面板上放置的“电源指示灯”和“停止按钮”在程序框图上自动变成了对应的“终端”。

    • “电源指示灯”终端有一个小实心方块,表示这是一个输出(它会发光)。
    • “停止”终端有一个小空心方块,表示这是一个输入(它会接收用户的点击)。
  2. 我们需要让“电源指示灯”亮起来,最简单的方法就是给它一个“真”值。

  3. 在程序框图窗口中,找到 “函数” 选板

  4. 在函数选板中,选择 “编程” -> “布尔”

  5. 从选板中拖拽一个 “真常量” 到程序框图上。

  6. 我们需要将“真常量”和“电源指示灯”连接起来,使用 “定位/调整大小” 工具(通常是箭头),将鼠标移动到“真常量”的输出端口上,鼠标会变成一个 卷绕线 样式。

  7. 按住鼠标左键,拖动一条数据线到“电源指示灯”的输入端口,然后松开。

  8. 连接完成后,程序框图应该像这样:


步骤 4:运行与测试

  1. 在工具栏中,点击 “运行” 按钮(一个白色的三角形箭头)。
  2. 切换回 前面板,你会看到 “电源指示灯” 已经亮起来了! 这表示它接收到了程序框图传来的“真”值。
  3. 点击 “停止” 按钮,程序会停止运行。

恭喜! 你已经完成了你的第一个LabVIEW程序!你已经理解了LabVIEW的核心概念:前面板是用户界面,程序框图是逻辑实现,数据通过数据线在函数之间流动。


第二部分:核心实例:温度测量与报警系统

目标: 模拟从传感器读取温度值,并在温度超过阈值时点亮报警灯,这个实例将涵盖数据采集、条件判断和循环结构。


实例 2.1:模拟读取温度并显示

任务: 创建一个循环,每秒随机生成一个温度值(0-100°C),并实时显示在仪表上。

  1. 前面板设计:

    • 从控件选板 -> “新式” -> “数值” 中,拖拽一个 “仪表” 到前面板,重命名为 “当前温度”
    • 从控件选板 -> “经典” -> “经典布尔值” 中,拖拽一个 “圆形指示灯”,重命名为 “高温报警灯”
  2. 程序框图设计:

    • While 循环: 从函数选板 -> “编程” -> “结构” 中,拖拽一个 “While 循环” 到程序框图,它会创建一个边框,你可以将其他代码拖入其中,循环会一直运行,直到其内部的“停止条件”接收到“真”值。
    • 随机数: 从函数选板 -> “编程” -> “数值” 中,拖拽一个 “随机数 (0-1)” 函数到While循环内部。
    • 缩放: 随机数生成的是0到1的小数,我们需要0到100的整数,从函数选板 -> “编程” -> “数值” 中,拖拽一个 “乘” 函数,将“随机数”的输出连接到“乘”函数的一个输入端口,再拖拽一个 “数值常量”(在函数选板 -> “编程” -> “数值” 中),将其值改为 100,并连接到“乘”函数的另一个输入端口。
    • 转换为整数: 从函数选板 -> “编程” -> “数值” 中,拖拽一个 “转换为整数” 函数,将“乘”函数的结果连接过来。
    • 数据连接: 将“转换为整数”的结果连接到“当前温度”仪表上。
    • 停止条件: 将前面板上的“停止”按钮拖到While循环的小方框(条件接线端)上,这样,当点击“停止”时,循环就会停止。

    程序框图最终效果:

  3. 运行测试: 点击运行按钮,你会看到仪表上的指针在0到100之间每秒跳动一次,点击“停止”按钮,程序停止。


实例 2.2:添加温度判断逻辑

任务: 如果温度大于80°C,就让“高温报警灯”亮起来。

  1. 程序框图修改:

    • 比较函数: 从函数选板 -> “编程” -> “比较” 中,拖拽一个 “大于?” 函数到While循环内部。
    • 设置阈值: 拖拽一个 “数值常量”,将其值改为 80,并连接到“大于?”函数的输入端口。
    • 连接比较对象: 将“乘”函数(产生温度值)的输出连接到“大于?”函数的另一个输入端口。
    • 连接报警灯: “大于?”函数输出的是一个布尔值(“真”或“假”),将这个输出连接到“高温报警灯”上。
  2. 理解逻辑:

    • 当温度值 > 80 时,“大于?”函数输出“真”,报警灯亮。
    • 当温度值 ≤ 80 时,“大于?”函数输出“假”,报警灯灭。

    程序框图最终效果:

  3. 运行测试: 再次运行程序,当仪表上的温度值超过80时,你会发现“高温报警灯”会立刻亮起,当温度降到80以下时,灯会熄灭。


第三部分:文件 I/O 实例:保存温度数据

任务: 将每次测量的温度和时间戳保存到一个文本文件中。

  1. 前面板设计:

    • 添加一个 “停止按钮”(如果还没有的话)。
    • 添加一个 “布尔指示灯”,重命名为 “文件写入状态”,用于提示数据是否成功保存。
  2. 程序框图设计:

    • 获取日期/时间字符串: 从函数选板 -> “编程” -> “对话框与用户界面” 中,拖拽一个 “获取日期/时间字符串” 函数。
    • 格式化字符串: 从函数选板 -> “编程” -> “字符串” 中,拖拽一个 “格式化字符串” 函数,这个函数可以将多个输入合并成一个格式化的字符串。
      • 右键单击函数,选择 “选择项” -> “添加输入”,再添加一次,让它有三个输入。
      • 将“获取日期/时间字符串”的输出连接到第一个输入。
      • 将“乘”函数(产生温度值)的输出连接到第二个输入。
      • 添加一个 “字符串常量”,输入文本 ,连接到第三个输入,作为温度和时间之间的分隔符。
      • 右键单击函数的“格式字符串”输入,创建一个常量,输入 "%s, %s\n",这表示:第一个输入是字符串,第二个输入是字符串,最后换行。
    • 写入文件:
      • 从函数选板 -> “编程” -> “文件 I/O” 中,拖拽一个 “写入文本文件” 函数。
      • 重要: 第一次写入文件时,需要指定文件路径,右键单击“文件路径(输入)”端口,选择 “创建” -> “输入控件”,这会在前面板上创建一个路径输入控件,你可以手动输入或选择要保存的文件(C:\Temp_Data\log.txt)。
      • 将“格式化字符串”的输出连接到“文本(输入)”端口。
      • 将“文件写入状态”指示灯连接到“新建文件?(输出)”端口,如果为“真”,表示创建了新文件;如果为“假”,表示在旧文件后追加。

    程序框图最终效果:

  3. 运行测试:

    • 设置好文件路径后运行程序。
    • 程序运行一段时间后停止。
    • 打开你指定的文本文件(log.txt),你会看到里面记录了每一秒的时间戳和对应的温度值,每一行一条记录。

总结与下一步

通过以上三个实例,你已经掌握了LabVIEW最核心的几个概念:

  1. VI结构: 前面板与程序框图的分离。
  2. 数据流: 程序的执行由数据在函数间的流动驱动。
  3. 基本函数: 数值运算、布尔逻辑、比较运算。
  4. 核心结构: While循环(实现重复任务)。
  5. 文件I/O: 与外部数据进行交互。

下一步学习建议:

  • 学习For循环: 与While循环类似,但用于执行固定次数的循环。
  • 学习条件结构: 相当于C/C++中的 if-else 语句,用于根据条件执行不同的代码分支。
  • 学习数组与簇: 用于组织和处理多个数据。
  • 学习子VI: 将常用的程序框图部分封装成一个可重用的函数,这是LabVIEW模块化编程的关键。
  • 探索实际硬件: 如果你有NI的数据采集卡,可以尝试使用DAQmx函数库来读取真实的传感器数据。

LabVIEW的魅力在于其直观的图形化界面和强大的工程应用能力,多动手实践,多尝试连接不同的函数,你会很快上手!祝你学习愉快!

分享:
扫描分享到社交APP
上一篇
下一篇