本文共分为两大部分:LabVIEW常用工具和调试工具介绍。
第一部分主要探讨鼠标在LabVIEW中的功能以及如何使用鼠标完成各种任务,即LabVIEW的常用工具介绍,包括快捷菜单、属性对话框和工具栏等修改VI的重要途径。
第二部分主要介绍LabVIEW的调试工具,如程序无法运行或发生错误结果和行为时,该如何辨别和解决上述两类错误。
第一部分:LabVIEW常用工具介绍
选择工具
LabVIEW提供新建、修改和调试VI的一系列工具。工具是鼠标光标的一种特殊操作模式。选择了一个工具后,鼠标光标就变成了该工具的图标和操作模式。LabVIEW可根据鼠标当前的位置自动选择相应的工具。
![26b028cdacb98f21fef831a3bff9d70a.png](https://i-blog.csdnimg.cn/blog_migrate/65147ab5e24511043ebae61ab2193751.jpeg)
图1. 工具选板
在工具选板中可手动选择所需工具。要打开工具选板,可选择查看»工具选板选板。
自动工具选择器
在工具选板的顶部有一个“自动选择工具”按钮。选中该按钮后,LabVIEW将根据鼠标当前的位置自动选择相应的工具。如要关闭自动选择工具,可取消选择该按钮或者选择选板中的其他项。
如果将选板中的各项工具比喻成家庭常备工具中的螺丝刀、刀片、螺丝锥,那么自动工具选择器就像是一把能够完成所有任务的瑞士军刀。
![fe6af09e7adb55f2f642d42724ee984c.png](https://i-blog.csdnimg.cn/blog_migrate/55bd63d1c7ef1bca5b77441fd8ae2d7a.jpeg)
图2. 各个工具和自动工具选择器
以下是LabVIEW中的一些常见工具。启用“自动选择工具”后,鼠标会变成下列工具之一来完成LabVIEW中的常见任务。
操作工具
![8e85f0af851e5328ff857aee2c868535.png](https://i-blog.csdnimg.cn/blog_migrate/2e5f085e708ade8c843198b4a4d68316.jpeg)
操作工具用于改变控件的值。图3中使用了操作工具来移动水平指针滑动杆。鼠标移至指针上方时,光标自动变为操作工具。
![00cbf2c245e8e6f23f870f532f1176c8.png](https://i-blog.csdnimg.cn/blog_migrate/de0a12e63a4eb0e7dbb03e749fc885a7.jpeg)
图3. 使用操作工具
操作工具大多用于前面板窗口,但也可用于在程序框图窗口中改变布尔常量的值。
定位工具
![3b18e3a70260bdcbb0f4eaa82b6b0ad0.png](https://i-blog.csdnimg.cn/blog_migrate/1745f014b36b48ed4961d6a94052d523.jpeg)
定位工具用于选择或调整对象大小。图4 中使用了定位工具来选择Number of Measurements数值控件。选中对象后,您可以移动、复制或删除该对象。鼠标移至一个对象的边界时,光标会自动变成定位工具。
![a7efea1576a11e4cbb60456cffe72f2e.png](https://i-blog.csdnimg.cn/blog_migrate/bacdb17e03b3b8b1aa5f347796011c82.jpeg)
图4. 使用定位工具选择对象
如鼠标移至对象的调节尺寸节点上,光标将显示为重新调整大小模式,如图5所示。请注意,悬停在XY图左上角尺寸节点上的鼠标变成了双箭头模式。
![a1bb28ed3879263ae20c0c4ef26fb016.png](https://i-blog.csdnimg.cn/blog_migrate/aea09f7247703ca89c0eb385b2091d3f.jpeg)
图5. 使用定位工具改变对象大小
定位工具在前面板和程序框图中皆可使用。
标签工具
![cb46dececc661e46dfe550e5f04e8514.png](https://i-blog.csdnimg.cn/blog_migrate/c847d7eef6de40f1b332e6d828e6793c.jpeg)
标签工具用于在输入控件中输入文本、编辑文本和创建自由标签。图6中使用了标签工具在Number of Measurements控件中输入文本。鼠标移至控件内部时,光标会自动变成标签工具。单击鼠标使光标位于控件内部,双击鼠标选中当前文本。
![de80f9b7324f84ccefce3b3405d08647.png](https://i-blog.csdnimg.cn/blog_migrate/402d03e5c0147938c8a10f2bf9ad2a6e.jpeg)
图6. 使用标签工具
如鼠标位于前面板或程序框图中不可使用工具的位置,光标显示为十字线。如启用了自动选择工具,双击任意空白处可打开标签工具来创建自由标签。
连线工具
![85493eca6a4b4683fa67e27ca9e4ff39.png](https://i-blog.csdnimg.cn/blog_migrate/b556836e68c8f5447722cf444de02e92.jpeg)
连线工具用于连接程序框图上的对象。图7中使用了连线工具将Number of Measurements接线端连线至For循环的计数接线端。鼠标移至接线端的输出/输入端或连线上时,光标自动变为连线工具。
![20cef6e2dbef6c404073a38a0c0ebdc6.png](https://i-blog.csdnimg.cn/blog_migrate/2b72b4a02752713c694830fbef763ab9.jpeg)
图7. 使用连线工具
连线工具主要用于程序框图窗口,以及在前面板窗口中创建连线板。
工具选板中的其他工具
工具选板中还包含下列工具:
![6b55c2b77069165e02657745e476ba5b.png](https://i-blog.csdnimg.cn/blog_migrate/67954f7112d8d4c291a0caae6cc734e5.jpeg)
“对象快捷菜单”工具,用于通过单击鼠标左键打开对象的快捷菜单。在LabVIEW中,右键单击对象也可打开对象的快捷菜单。
![6354de7d8d95f88a03a462aaaaa2f0b4.png](https://i-blog.csdnimg.cn/blog_migrate/91db7c8ca6b0ed7fc85a10eb222e0bca.jpeg)
“滚动窗口”工具,用于在不使用滚动条的情况下滚动窗口。
![178a217d5da2b489cab5d512575e8d47.png](https://i-blog.csdnimg.cn/blog_migrate/b036b4518195f642c5eadf70731f2164.jpeg)
断点工具,用于在VI、函数、节点、连线和结构中设置断点,使其在断点处暂停运行。
![6d64aceefca03ab24e730330903dfa74.png](https://i-blog.csdnimg.cn/blog_migrate/f78aab4fd77839f9d75e9db7a7ebd3ba.jpeg)
探针工具,用于在程序框图的连线上创建探针。使用探针工具可即时查看出现问题或意外结果的VI中的值。
![74e177b4d5e7faca5ffbf782da8b8ba5.png](https://i-blog.csdnimg.cn/blog_migrate/c34fa69f229aeacbe7d4174f34dd4f14.jpeg)
上色工具,用于为对象上色。同时,该工具还显示当前的前景和背景色。
![a2e6b45a1faab69a1962b2560c30478e.png](https://i-blog.csdnimg.cn/blog_migrate/b5346ac5d4e7c4a22e1b685a5e7e6223.jpeg)
取色工具,用于获取颜色,然后通过上色工具上色。
快捷菜单
所有LabVIEW对象都有快捷菜单,它也叫即时菜单、弹出菜单,或右键单击菜单。创建VI时,快捷菜单上的选项可以改变前面板和程序框图上对象的外观或运行方式。要打开快捷菜单,可右键单击对象。
![4a9a9eda1c93adcd31dd3ceb0ff72cf8.png](https://i-blog.csdnimg.cn/blog_migrate/a11f0a3f84ab6616951f32b7e33feacc.jpeg)
图8. Meter的快捷菜单
属性对话框
前面板窗口的对象也有属性对话框,用于改变前面板对象的外观或者动作。要打开属性对话框,可右键单击对象,从快捷菜单中选择属性。图9显示了图8所示Meter的属性对话框。对象属性对话框中的选项与该对象快捷菜单中的选项类似。
![978d5ec009273a5c318a51dc29d6d8d7.png](https://i-blog.csdnimg.cn/blog_migrate/8d23dfe7f19be7ca2500b07d73e90126.jpeg)
图9. Meter的属性对话框
你可在前面板或程序框图上一次选择多个对象,编辑其共同属性。要选择多个对象,可使用定位工具拖曳矩形方框来选定这些对象,或在按下键的同时单击对象。然后右键单击对象,从快捷菜单中选择属性,打开属性对话框。此时属性对话框仅显示所选对象的共同属性。如所选对象相似,则对话框中的选项卡和属性较多。如所选对象无共同属性,则属性对话框中不会显示任何选项卡或属性。
前面板窗口工具栏
每个LabVIEW窗口都有一个工具栏。前面板窗口的工具栏按钮用于运行和编辑VI。
下图是前面板窗口显示的工具栏。
![614cefa713b255f934ef3fbb33478699.png](https://i-blog.csdnimg.cn/blog_migrate/e45cb277fab9e09a65591335813b454a.jpeg)
![8537b77477e6bfa60ff7156b0b4d1c13.png](https://i-blog.csdnimg.cn/blog_migrate/125e12aae42e7ebff02e76d9b932982d.jpeg)
运行按钮,单击该按钮运行VI。如有需要,LabVIEW将对VI进行编译。如运行按钮显示为上图所示的白色实心箭头,则说明VI可以运行。同时,白色实心箭头也说明如果为该VI创建一个连线板,该VI可作为子VI使用。
![029a9e2e5a39a9af816e93334785fa47.png](https://i-blog.csdnimg.cn/blog_migrate/2702b424538d3fa914ee2e1645c878d1.jpeg)
VI运行时,如运行按钮如上图所示,说明该VI是一个顶层VI,即没有调用它的调用方。
![067fc664427d2828bc6ee86b7492fa29.png](https://i-blog.csdnimg.cn/blog_migrate/059f7c0cf804de9c524dcae58510b3cd.jpeg)
如运行中的VI是一个子VI,则运行按钮如上图所示。
![b6c7dd051b7b1a880661b0c34da045d3.png](https://i-blog.csdnimg.cn/blog_migrate/a80b5d92be0277119ff05b6b3d414d8b.jpeg)
如创建或编辑中的VI包含错误,运行按钮显示为断开。如在程序框图中完成连线后,运行按钮仍显示为断开,说明该VI不能运行。可单击该按钮打开错误列表窗口,查看窗口中列出的错误和警告。
![b7550a590d8b1486f0bbe891294447f6.png](https://i-blog.csdnimg.cn/blog_migrate/b4a9525c28a619a3f7ed11443cc99fcf.jpeg)
连续运行按钮,单击该按钮使VI连续运行,直至中止或暂停执行。再次单击该按钮可以停止连续运行。
![1ff385a3120708109e9c765ae55f0724.png](https://i-blog.csdnimg.cn/blog_migrate/5f359dc2cb7c093714e39255217c155d.jpeg)
中止执行按钮,该按钮在VI运行后激活。当没有其他方法停止VI时,单击该按钮可立即停止VI。如多个调用该VI的顶层VI正在运行,该按钮显示为灰色。
注意:
按下中止执行按钮将立即停止VI,而不论VI是否完成了当前循环。如VI使用了外部资源,如连接了外部硬件,中止VI可能使资源处于未知状态,既不能重置,也不能释放。因此,建议为VI设计一个停止按钮来防止这种问题。
![c24b43c620ec1a7da493e14062b447da.png](https://i-blog.csdnimg.cn/blog_migrate/17ccd0d79a296192b87b38623481b9ab.jpeg)
暂停按钮,单击该按钮暂停运行VI。单击暂停按钮后,程序框图高亮显示暂停的节点,同时暂停按钮变成红色。再次单击暂停按钮可继续运行VI。
![2f5ab8872d3de766bb911838f433a5e1.png](https://i-blog.csdnimg.cn/blog_migrate/ff5723a3d9dfff2fffe58cf04fd86dcb.jpeg)
文本设置下拉菜单,用于改变所选VI部分的字体设置,如大小、样式和颜色等。
![fe5eb683b4da3387379f817c394f278c.png](https://i-blog.csdnimg.cn/blog_migrate/53dd70b2f969f39cf15e9c23a288ca34.jpeg)
对齐对象下拉菜单,用于按轴(包括垂直边缘、上边缘、左边缘等)对齐对象。
![13b60104d9aebefc69e4df7a4a4fea45.png](https://i-blog.csdnimg.cn/blog_migrate/694c408ccc7f383d6fda0dcf776ba5f1.jpeg)
分布对象下拉菜单,用于均匀分布或压缩对象之间的间隔等。
![56afeb5ab27405c2c3b20e8cc0481b36.png](https://i-blog.csdnimg.cn/blog_migrate/7f8d0025e8e3c26fdc200449ae494f77.jpeg)
调整对象大小下拉菜单,用于将多个前面板对象设置为同样大小。
![a86a3ffb2f1669395ff9429554a7a620.png](https://i-blog.csdnimg.cn/blog_migrate/09b811dc88ab9d29b1b086b86666d4f3.jpeg)
重新排序下拉菜单,用于确定重叠对象的前后关系。可先用定位工具选择其中一个对象,然后在下拉菜单中选择向前移动、向后移动、移至前面或移至后面。
![368c272c20ebdadec3108ecab6b1be98.png](https://i-blog.csdnimg.cn/blog_migrate/764f32e65078841766a743949eff4ee4.jpeg)
LabVIEW搜索,用于在LabVIEW帮助、控件和函数选板以及ni.com中的NI技术支持、社区支持、下载和的产品信息页面中查找相关信息。
![5dfac027ce1b8f506eb57f17914f631f.png](https://i-blog.csdnimg.cn/blog_migrate/ed2173b95f87da93d1375f9b255f7e8c.jpeg)
显示即时帮助窗口按钮,单击该按钮可启用即时帮助窗口。
![f3bc04b55395ed427e431c1ad26425b1.png](https://i-blog.csdnimg.cn/blog_migrate/ede4639fb12e266ec6dc95503c2b963b.jpeg)
确定输入按钮,用于提醒用户有一个新值可以替换旧值。单击确定输入按钮、按键,或单击前面板或程序框图工作区,该按钮即消失。
程序框窗口图工具栏
![9d00ab8d8c6074491e8d44e18661ca61.png](https://i-blog.csdnimg.cn/blog_migrate/207e909ff8143ab8662e3ffe6cf8fd14.jpeg)
![6d9418c789a7791e8a66545d1db49551.png](https://i-blog.csdnimg.cn/blog_migrate/a8002aebf918e3849a46c5c7ec7a3dc9.jpeg)
整理程序框图按钮,单击该按钮重新整理程序框图上的已有连线和对象,使布局更加清晰。要配置整理选项,可点击工具»选项,在类别中选择程序框图设置。
第二部分:LabVIEW调试工具介绍
介绍完LabVIEW一些常用工具后,我们再来看看LabVIEW的调试工具有哪些:
LabVIEW提供功能强大的调试工具,帮助用户定位问题代码以作出恰当的更改。常见软件问题有两类:程序无法运行或发生错误结果和行为。
如VI无法运行,LabVIEW中的运行箭头显示为断开,同时错误列表窗口会列出VI断开的详细原因。对于较难追踪原因的第二类软件问题,LabVIEW提供数种观察代码执行的工具,帮助大家排查代码错误。
修正断开的VI
![b6c7dd051b7b1a880661b0c34da045d3.png](https://i-blog.csdnimg.cn/blog_migrate/a80b5d92be0277119ff05b6b3d414d8b.jpeg)
如一个VI无法执行,则表示该VI是断开的或不可执行的。如果正在创建或编辑的VI包含错误,运行按钮将显示为断开。
这种情况通常说明某个必须连接的输入端未连接,或存在断开的连线。可单击断开的“运行”按钮,打开错误列表窗口。错误列表中列出了所有错误并描述了错误的原因。双击错误可直接跳转至出现错误的节点。
查找VI断开的原因
警告并不阻碍VI的运行,而旨在帮助用户避免VI中的潜在问题。错误则会使VI断开,因此运行VI前必须排除所有错误。
单击断开的运行按钮或选择查看»错误列表可查看VI断开的原因。错误列表窗口列出了所有的错误。其中,“错误项”一栏列出包含错误的对象。如出错的项目同名,则显示出错的具体应用程序实例。“错误和警告”部分列出了“错误项”中所选VI的错误和警告信息。
“详细信息”部分给出了错误的详细信息以及纠正错误的建议。单击“帮助”按钮可打开“LabVIEW帮助”中详细描述该错误的主题,查看纠正错误的说明步骤。
单击显示错误按钮或双击错误描述,可高亮显示程序框图或前面板中包含错误的区域。
![9c9dc9cb073bced6a09a26718eb86b01.png](https://i-blog.csdnimg.cn/blog_migrate/5fc5005be668861132a3d9ec7bf98729.jpeg)
图1. 错误列表对话框示例
VI断开的常见原因
下列为VI编辑时常见的断开原因:
▲接线端数据类型不匹配或未连接,导致程序框图中有断线。
▲程序框图上必要的接线端未连线。
▲子VI断开,或将子VI添加到程序框图后又编辑了其接线板。
修正错误的行为
如VI能运行但生成的结果不正确,说明代码出现了功能性错误。LabVIEW提供多项工具,可帮助用户定位未按预期运行的代码段。
程序框图工具栏
VI运行时,程序框图工具栏中的工具可帮助您调试VI。以下是对程序框图工具栏中工具的介绍。
![9d00ab8d8c6074491e8d44e18661ca61.png](https://i-blog.csdnimg.cn/blog_migrate/207e909ff8143ab8662e3ffe6cf8fd14.jpeg)
![2d9be79816ce2ab237a49e9cc7fe7548.png](https://i-blog.csdnimg.cn/blog_migrate/6676c14b3db6224e6813932488dfa46c.jpeg)
“高亮显示执行过程”按钮,单击该按钮可观看VI运行时程序框图的动态执行过程,同时观察程序框图的数据流动。再次单击该按钮则停止执行过程高亮显示。
执行过程高亮显示时,程序框图连线上圆点的流动显示了数据从一个节点流向下一个节点的过程。结合单步执行按钮使用执行过程高亮,可逐个节点查看数据的流动。
注:高亮显示执行过程会明显降低VI的运行速度。
![4cc58266ab9e2c386c355140aa0e7447.png](https://i-blog.csdnimg.cn/blog_migrate/76fe8698f38809a4af2b02303bd2a12a.jpeg)
图2. 高亮显示执行过程的示例
![8a71cf2deba811520ee535bb0b3c6dff.png](https://i-blog.csdnimg.cn/blog_migrate/ae0598bba2f3ce90243ae8c54b677216.jpeg)
“保存连线值”按钮,单击该按钮可保存数据流连线上各点的值,探针置于连线上时,用户可以马上获取最近流经该连线的值。获得连线值的前提是VI已至少成功运行过一次。
![7acbf330488b73b50629d2c60fef9d8c.png](https://i-blog.csdnimg.cn/blog_migrate/b83d497f520c1d1cd0ccfee567655b9a.jpeg)
![cdf1f78f1e608e38fa839b6864a3f54f.png](https://i-blog.csdnimg.cn/blog_migrate/5e2bfc15eb0a23f053f08064bfd63702.jpeg)
“单步步入”按钮,单击该按钮打开一个节点并暂停执行。再次单击“单步步入”,将执行节点中的第一个操作并在子VI/结构的下一个操作前暂停。此外,也可同时按下和向下箭头键执行单步步入。单步步入按照节点顺序逐步执行节点中的操作,最后执行完整个VI。每个节点准备执行时会闪烁。
![6cd292ad08dbe149cf531eb72f6dce44.png](https://i-blog.csdnimg.cn/blog_migrate/031c2f3639291d0219ba56a7f8e317f0.jpeg)
“单步步过”按钮,单击该按钮执行一个节点并在下一个节点处暂停。此外,也可同时按下和向右箭头键执行单步步过。单步步过将逐个执行节点,而不进入节点执行其中的操作。
![9eabcbb02ed378e33a09b4a8b769e995.png](https://i-blog.csdnimg.cn/blog_migrate/7914e166333e557b52ca8ca7a36ced1d.jpeg)
“单步步出”按钮,单击该按钮完成对当前节点的执行并暂停。VI执行结束后,单步步出按钮变为灰色。此外,也可同时按下和向上箭头键执行单步步出。单步步出将完成单步步入一个节点后的剩余操作并跳至下一节点。
![0680a8b68012df5ad3d32a4dd571c7a3.png](https://i-blog.csdnimg.cn/blog_migrate/cb4becdd2f4fb0226846be8026bb30bd.jpeg)
“警告按钮”。如VI中包含警告信息且错误列表窗口中“显示警告”选项已勾选,工具栏将显示警告按钮。警告表示程序框图存在潜在问题,但不会停止VI运行。
探针工具
![6d64aceefca03ab24e730330903dfa74.png](https://i-blog.csdnimg.cn/blog_migrate/f78aab4fd77839f9d75e9db7a7ebd3ba.jpeg)
“探针工具”,用于在VI运行时检查连线上实时传递的值。
如程序框图比较复杂,操作繁多,且每一步都可能返回错误的值,此时可以使用探针工具。探针工具结合执行过程高亮显示、单步执行以及断点,可用于确定是否产生了数据错误以及错误发生在哪里。高亮显示执行过程、单步调试或在断点处暂停时如有数据产生,探针会立即更新并在探针监视窗口中显示数据。执行过程由于单步执行或断点而在某一节点处暂停时,可用探针探测刚才执行的连线,查看流经该连线的数值。