LabVIEW错误代码表

合集下载

Labview错误调试与处理:详细说明

Labview错误调试与处理:详细说明

Labview错误调试与处理:详细说明错误调试与处理:详细说明运⾏箭头变为断线图标就表明LabVIEW不能运⾏VI,错误列表窗⼝中会列出VI断开的具体原因。

第⼆种类型错误通常难以辨别原因,但LabVIEW拥有多种⼯具可监视执⾏的代码,使得过程变得更为容易。

修正断开的VI如⼀个VI⽆法执⾏,则表⽰该VI是断开的或不可执⾏的。

如正在创建或编辑VI出现错误时,运⾏按钮会显⽰为断开。

通常,这是由于需要连线的输⼊没有连线,或者连线是断开的。

单击断开的运⾏按钮,打开错误列表窗⼝。

错误列表对话框列出了所有错误,并且描述了错误的原因。

双击错误可直接找到错误的出处。

查找VI断开的原因警告并不阻碍VI的运⾏。

警告仅帮助⽤户避免VI中的潜在问题。

⽽错误会使VI断开。

VI在运⾏前须排除任何错误。

单击断开的运⾏按钮,或选择查看?错误列表,可查看VI断开的原因。

Error List列出了所有的错误。

错误项列出了内存中所有含有错误的项的名称,如VI和项⽬库。

如果两个或多个项⽬具有相同的名称,该部分会显⽰每⼀项⽬的特定应⽤程序实例。

错误和警告部分列出了在存在错误的项⽬部分选中的VI的错误和警告信息。

详细情况(Details)部分描述了错误信息,有时还会建议如何纠正错误。

单击帮助(Help)按钮,显⽰LabVIEW帮助(LabVIEW Help)中详细描述错误并包含纠正错误的分步指令的主题。

单击显⽰错误(Show Error)按钮或双击错误描述,可以⾼亮显⽰程序框图或前⾯板包含错误的区域。

图1.错误列表对话框的范例VI断开的常见原因下表包含了⼀些在编辑VI时导致VI断开的常见原因:-由于数据类型不匹配或存在未连接的接线端,导致程序框图含有断线。

关于纠正断线的更多信息见LabVIEW帮助中的纠正断线。

-必需连接的程序框图接线端没有连线关于设定必需连接的输⼊端和输出端的更多信息见LabVIEW帮助中的使⽤连线连接程序框图各对象。

LabVIEW系列——自定义错误

LabVIEW系列——自定义错误

LabVIEW系列——自定义错误1、自定义错误代码文本文件在labview 中三处:a)、E:Program FilesNational InstrumentsLabVIEW 8.6projecterrorsb)、E:Program FilesNational InstrumentsLabVIEW 8.6user.liberrorsc)、E:Program FilesNational InstrumentsSharedLabVIEW Run-Time8.6errors 所有的错误代码文件的后缀为- errors.txt,比如Analysis-errors.txt,battery-errors.txt,不是这个后缀名的都是无效的错误代码文件。

a 和b 的错误代码文件在LabVIEW 编程中用到,c 的错误代码文件在应用程序护中用到,两者互不干扰,所以在编程完成后必须将a 和b 中的自定义错误代码文件也同时发布到c 中,有两种方法发布错误代码文件。

2、发布错误代码文件。

1)、应用程序(EXE)发布:应用程序属性»高级»复制错误代码文件将a 和b 目录中的后缀为-errors.txt 的文件复制到c 目录中。

2)、安装程序发布:安装程序属性»高级»安装自定义错误代码文件安装时a 和b 目录中的后缀为-errors.txt 的文件安装到c 目录中。

3、错误叠加在c 目录中有两个文件battery1-errors.txt,battery2-errors.txtbattery1-errors.txt 内容如下:电池报警过压1!过流过温battery2- errors.txt 内容如下:电池报警过压1!过流过温exe 运行错误结果将是两者的组合。

如下图所示:4、自定义错误代码的创建。

自定义错误代码有两者方法创建:1)自定义错误代码文件,创建的是全局自定义错误代码;2)、General ErrorHandler.vi,创建的是本地自定义错误代码,只能在本次创建中有效。

35.LabVIEW 代码中常见的错误

35.LabVIEW 代码中常见的错误

LabVIEW 代码中常见的错误发现了程序的问题再回头去调试,在查找程序错误时就不可避免地要花大量时间。

要调高开发效率,最好是在编写代码时就避免一些常见的低级错误,这样可以节约大量的调试时间。

有些编程错误差不多是每个LabVIEW 程序员都曾遇到过的。

在编写相关代码的时候,对这些问题多留心一下,就可以大大减少调试时间。

1. 数值溢出图1:数值溢出错误图1 中的VI 只做了一个简单乘法300*300 ,不加思索就应该知道答案是90000,但程序中乘法节点给出的结果却是24464。

乘法节点是不会错的,错误是由于程序中使用的数据类型是I16。

I16 能表示的最大数目只有32767,所以在乘法计算中出现了溢出。

避免此类错误的方法是,在程序中使用短数据类型时,一定要确认程序中的数据绝不会超出该类型可以表示的范围。

2. For 循环的隧道循环相关的介绍可以参考《循环结构》。

数据传入传出循环结构可以通过移位寄存器(Shift Register)和隧道(Tunnel)两种方式。

隧道又有两种类型:带索引的和不带索引的。

移位寄存器一般用在需要局部变量的情况下,循环运行一次的输出数据要作为下次运行的输入数据使用;循环外的数组数据通过带索引的隧道在循环体内就可以直接得到数组元素;除此之外,简单地在循环内外传递数据,使用一般的隧道就可以了。

值得一提的是,如果一个数据传入循环体,又传出来,那么就应该使用移位寄存器或带索引的隧道来传递这个数据,尽量不要使用不带索引的隧道。

因为For 循环在运行时,循环次数有可能为0。

在循环次数为0时,大多数情况,用户还是希望传出循环的数据就是传入值,但使用不带索引隧道时,输入值有时会被丢失的。

如果使用移位寄存器,即使循环次数为0,也不会丢失传入的数据。

因为移位寄存器在循环上的两个接线柱指向的实际是同一块内存,而输入输出两个隧道指向的是不同的内存,数据不一定相同。

图2:For 循环上的隧道图2中的程序,vi reference 传入,再传出循环均使用了隧道。

Labview基本常见问题解答2

Labview基本常见问题解答2

Labview基本常见问题解答21、如何用LabView与可编程仪器通信,该仪器没有GPIB接口,但有COM口,能否用LabView操作?A:可以通过LV的串口通信来解决仪器控制问题,参看FIND EXAMPLE的BASIC 2 PORT SERIAL WRITE AND READ.VI2、如何将EVENTSTRUCT中捕获的时间传递到STA TE DIAGRAM?A:使用VENTSTRUCT捕获面板事件后,将不同的事件对应于不同的字符串和其他,再通过QUEUE将VENTSTRUCT中的字符串传递到STA TEDIAGRAM中,再根据得到的字符串进行相应的处理。

3、使用WRITE TO BINARY FILE函数向二进制文件中写入一个1D数组,为什么在READ FROM BIANRY FILE读取时,会多出4个字节数据呢?A:写入时加入了头信息,多出的4个字节就是头信息,代表了数组或字符串的长度。

在WRITE TO BINARY FILE 中的APPEND ARRAY OR STING SIZE这个输入端口中设置,其默认值为T,代表加入头信息;如果将其改为F,就不会多出4个字节了。

4、卸载LabView 7.1时出现错误1603,接着出现错误1722和1721,程序询问是否继续卸载操作,怎样消除该错误并正确卸载7.1?A:该错误通常出现在试图卸载某些共享组件的时候。

按照以下步骤可以解决该问题。

1)注意当错误发生时是在卸载哪一部分组件。

一般讲在卸载LV核心部分或LV RUNTIME ENGINE的时候容易出现。

2)当出现错误代码1603,弹出对话框提示继续卸载操作时候,点击YES3)如果卸载完成之后提示需要重新启动计算机,点击NO。

4)对于卸载过程中产生的错误,从CD相应的文件夹中手动运行相应的组件,路经如下:/components/lvcorefull/lvcorefull.msi或components/lvruntimeeng/lvruntimeeng.msi点击修复按钮。

LabVIEW代码中常见的错误及解决办法

LabVIEW代码中常见的错误及解决办法
【 摘
4 60 ) 7 0 0
要】aVIW 编程过程 中会 出现一些错误 , Lb E 要花 费大量的调试时间。本文介 绍 了常见的几种错误及 其解决办法, 避免这 些错误 , 可以
大 大 提 高 开发 效 率 。
【 关键 词】 虚拟仪 器;aVIW ; Lb E 开发效 率
L b IW 是 N 推 出 的 虚 拟 仪 器 开 发 平 台 软 件 , aVE I 它具 有 直 观 简O
S IN E&T C N L G F R TO CE C E H O O YI O MA I N N
20 年 08
第 3 期 2
L b I W 代码中常见的错误及解决办法 aV E
高 峰 赵纲 领 ( 商丘 师 范学 院物理 与信 息工 程 系 河南 商丘
E rr 据 线 在 传 人 传 出 数 组 时 , 定 要 使 用 移 位 寄存 器 。原 因还 r 数 o 一
的 编程 方式 、 多 的 源 码 级 的 设 备 驱 动 程 序 、 种 多 样 的 分 析 和 表 达 不 仅 是 为 了 防 止 在 循 环 次 数 为 0时 , 误 信 息 丢 失 。通 常 一 个 节 点 的 众 多 错 功 能 。 户 可 以利 用 它 快 捷 地 构 筑 自己 在实 际 生产 中所 需 要 的仪 器 系 E rr u 有错误输出 , 用 r t oO 意味着后续的程序都 不应该执行。在错误 的情 统 。 而 ,a V E 编 程 过 程 中会 出 现代 码错 误 , 些 错 误 差 不 多 是 每 况 下 继 续 执 行 程 序 代 码 , 险 非 常 大 , 能 会 引 起 程 序 , 至 系 统 崩 然 Lb lW 有 风 可 甚 个 L b E 编 程 人 员 都 曾遇 到 过 的 发 现 了程 序 有 问 题 再 回头 去调 溃 。 只有 使 用 移 位 寄存 器 , 次 循 环 产 生 的错 误 才 会 被 传 递 到 后 续 的 aVIw 某 从 试 , 查 找 程 序错 误 时就 不 可 避 免 地 要 花 费 大 量 的 调 试 时 间 。编 程 人 循 环 中 , 而及 时 阻止 后 续 循 环 中 的代 码 被 运 行 。 在 员 最 好 是 在 编 写代 码 时就 避 免 一 些 常 见 的错 误 , 样 可 以 大 大 提 高 开 这 发效率。

labview 错误代码

labview  错误代码
The network operation is in progress.
56
ncTimeOutErr
The network operation exceeded the user-specified or system time limit.
57
ncBusyErr
The network connection is busy.
Multicast connections cannot send to singlecast addresses.
110
ncBadMulticastAddr
Specified IP address is not in multicast address range.
111
ncMcastSockReadOnly
-23096~-23081
Formula Parsing
-23096~-23000
Mathematics
-20699~-20601
Signal Processing Toolset
-20999、-20337~-20301
Signal Processing
-20207~-20201
Point By Point
SMTP
20020、20334、20351~20353
Signal Processing
1073479937~1073479940
Instrument Driver
1073676290~1073676457
VISA

错误代码
错误名称
错误说明
-2147467263
E_NOTIMPL
Not implemented.
Point or tag name is not present in the URL.

2. LabVIEW编程-错误处理

2. LabVIEW编程-错误处理

手动错误处理
错误结构
• 错误条件结构
– 用于手动错误处理 – 在子VI中传递错误的同时,避免执行代码
• 错误监视While/For循环
– 错误出现时,可以终止循环
错误结构
错误相关VIs
错误相关VIS
自定义错误代码
• 为终端用户提供更有价值的信息 • 推荐错误代码范围:-8999 – (-8000), 5000 – 9999, 500000 - 599999 • 工具>>高级>>编辑错误代码 • 文件存储在 ..\user.lib\errors
– 忽略 – 重试 – 纠正
特定的错误处理:分析一段代码
• 这段代码会有问题吗? • 我能为这段代码做些什么吗(包括记录、报 告)? • 处理这段代码需要额外的代码吗? • 有什么将影响后续代码吗? • 如何影响后续代码?
特定的错误处理:准则
• 避免错误影响后续的代码
– 发生错误时,并不是所有的代码行为都相同 – 使用条件结构决定执行哪部分代码
LabVIEW编程:错误处理
刘亮
我们为什么要关心错误处理?
• 应用程序的功能性、调试 • 用户体验 • 安全性、需求
错误举例
• • • • • 错误的用户输入 通讯错误(硬件、网络等) HTTP 404 – File Not Found 编程环境 覆盖系统重要文件
A problem has been detected and windows has been shut down to prevent damage t o y o u r c o m p u t e r. The problem seems to be caused by the following file: SPCMDCON.SYS PA G E _ FA U LT _ I N _ N O N PA G E D _ A R E A If this is the first time you've seen this stop error screen, r e s t a r t y o u r c o m p u t e r. I f t h i s s c r e e n a p p e a r s a g a i n , f o l l o w these steps: Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware or software manufacturer for any Windows updates you might need. If problems continue, disable or remove any newly installed hardware or software. Disable BIOS memory options such as caching or shadowing. If you need to use Safe Mode to remove or disable components, restart y o u r c o m p u t e r, p r e s s F 8 t o s e l e c t A d v a n c e d S t a r t u p O p t i o n s , a n d t h e n select Safe Mode. Te c h n i c a l i n f o r m a t i o n : *** STOP: 0x00000050 (0xFD3094C2, 0x00000001, 0xFBFE7617, 0x00000000) *** SPCMDCON.SYS - Address FBFE7617 base at FBFE5000, DateStamp 3d6dd67c

LabVIEW的错误簇以及错误处理函数

LabVIEW的错误簇以及错误处理函数

LabVIEW的错误簇以及错误处理函数我们可以在LabVIEW的Modern>>Array, Matrix & Cluster控件面板找到表示错误簇数据类型的错误输入(Error In)以及错误输出(Error Out)两个错误簇控件。

其实在很多LabVIEW的内置函数以及VI中,都包括了错误输入以及错误输出这两个错误簇类型的输入与输出参数。

错误簇是LabVIEW中的一个特殊的数据类型,该簇是由一个表示状态的布尔变量(status)、一个表示错误代码的32位整型变量(code)以及一个说明错误原因的字符串变量(source)组成的,错误簇用于传递LabVIEW代码运行期间的出错信息。

程序中出现错误并对错误进行处理是很自然的现象,我们没有必要害怕程序出错,更重要的是我们要学会发现错误发生的原因、获取错误的信息以及处理错误的方法。

在LabVIEW中,什么叫做错误呢?简单的说,一个函数或子VI 不能够完成其所设定的功能就可以称为出错了。

出错的原因可能是无法访问必要的资源或者是函数接受的参数是无效的等等。

在LabVIEW这个数据流的编程语言中,是是使用错误簇这种数据类型来传递错误信息的。

错误簇(Error Cluster)数据类型如下图所示,LabVIEW中的错误簇是由以下三部分组成的:1.status 状态布尔量,当有错误发生时该值为TRUE,没有错误发生时该值为FALSE;2.code 标识错误代码的32位整型变量,当该值为负时表示有程序警告,为零表示没出错,为正表示有错误发生;3.source 错误原因字符串,给出了出错原因的描述性信息。

错误信息传递:错误数据流LabVIEW本身就是一个基于数据流的编程语言,对于错误信息的传递也是使用数据流的形式在LabVIEW的程序框图中实现的。

如下图中的红点标识处所示,错误簇数据在框图中是按顺序、连续的在程序中传递的。

很多LabVIEW函数以及子VI都有错误输入(Error In)以及错误输出(Error Out)端点,一般这两个端点分别位于函数节点图标的左下侧以及右下侧。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

LabVIEW错误代码表
表1 LabVIEW 错误代码(Error Codes)的范围 (1)
表2 网络(Networking)错误代码表 (3)
表3 仪器驱动(Instrument Driver)错误代码表 (6)
表4 VISA错误代码表 (7)
表5 报表生成(Report Generation)错误代码表 (12)
表6 公式翻译器(Formula Parsing)错误代码表 (13)
表7 数学(Mathematics)错误代码表 (14)
表8 信号分析工具包(Signal Processing Toolset)错误代码表 17 表9 信号分析(Signal Processing)错误代码表 (19)
表10 逐点分析(Point By Point)错误代码表 (24)
表11 数据采集(DAQ)错误代码表 (25)
表12 波形(Waveform)错误代码表 (42)
表13 Apple Event错误代码表 (43)
表14 PPC错误代码表 (44)
表15 注册表访问(Windows Registry Access)错误代码表 (45)
表16 GPIB错误代码表 (46)
表17 串口(Serial)错误代码表 (48)
表18 Windows连接(Windows Connectivity)错误代码表 (49)
表19 MATLAB节点错误代码表 (50)
表20 运行时菜单(Run-Time Menu)错误代码表 (51)
表21 波形(Waveform)错误代码表 (52)
表22 SMTP邮件错误代码表 (53)
表1 LabVIEW 错误代码(Error Codes)的范围
表2 网络(Networking)错误代码表
表3 仪器驱动(Instrument Driver)错误代码表
表4 VISA错误代码表
表5 报表生成(Report Generation)错误代码表
表6 公式翻译器(Formula Parsing)错误代码表
表7 数学(Mathematics)错误代码表
表8 信号分析工具包(Signal Processing Toolset)错误代
码表
表9 信号分析(Signal Processing)错误代码表
表10 逐点分析(Point By Point)错误代码表
表11 数据采集(DAQ)错误代码表
表12 波形(Waveform)错误代码表
表13 Apple Event错误代码表
表14 PPC错误代码表
表15 注册表访问(Windows Registry Access)错误代码表
表16 GPIB错误代码表
表17 串口(Serial)错误代码表。

相关文档
最新文档