LabVIEW 8.5实时模块的已知问题和已解决的问题
主要软件:
主要软件版本: 5.0
主要软件修正版本: N/A
次要软件: N/A
问题: LabVIEW 8.5实时模块的已知问题和已解决的问题是什么?
解答: 已知问题
所有目标平台
- 如果用一个8.5的格式磁盘或者Utility USB驱动来格式化一个RT目标终端,该目标终端将不能再使用前期版本的实时模块。如果要将一个LabVIEW 8.5实时模块的目标终端在前期版本的实时模块中使用,需要用前期版本实时模块的格式磁盘或者Utility USB驱动来重新格式化该目标终端。
- 通过USB驱动器启动RT台式PC终端时,某些BIOS会停止在"Waiting for USB to initialize..."。移除USB驱动器,等待几秒,然后重新插入USB驱动器就可解决这个问题。
- 修改或重新部署VI时,探针会阻止更新。所以修改VI之后,要关闭并重新创建探针。
- 用Utility USB驱动器格式化RT目标终端之后,不能紧接着用软盘驱动器格式化该RT目标终端。
- RT目标终端不支持USB硬盘。如果需要通过USB传输文件,可以使用U盘。
- 实时模块的磁盘和存储器覆盖面比8.2.1提高了10%。
- 在项目浏览器窗口中在某个特定目标下创建或添加VI时,面板上所有的VI和函数并不都是被目标终端所支持。
- 和局部变量相关联的显示控件通过远程前面板不能正确更新。
- 通过远程前面板,子VI中的波形图和波形图表不能正确显示。
- 字符串[]属性节点不支持任何值,直到通过远程前面板连接至该应用程序。
- 不能从第二级或可移动硬盘运行LabVIEW实时模块。
- 在RT VI中分配的队列占预期内存的150%。
- 同时通过FTP添加文件或传输目录列表时,RT目标终端会死机并需要重启。
ETS
- 在RT PXI 8106和8196终端目标上执行TCP/IP写操作时,如果字符大小大于64kB,将会耗尽CPU资源达几秒钟。
- 如果DHCP服务器强行指定一个无限租约时间,将会导致ETS终端目标死机。
- ETS终端上有些U盘不可用。以下U盘经过验证在ETS终端是可用的:Memorex 1GB USB 2.0 TravelDrive, SanDisk Cruzer 128MB (non-U3), NexDisk USB 32MB (PSD-32N)。
- 如果安装了2GB的RAM,ETS终端将不能启动。
- 台式PC的处理器如果没有64位可写RDTSC寄存器,那么它和NI RT Extensions for SMP不兼容。如果你没有在目标终端上安装NI RT Extensions for SMP,那么你可以放心地在单核模式下将一个受病毒感染的系统(affected system)作为RT目标终端。要将RT台式PC作为多核RT目标终端,该PC必须使用带64位可写RDTSC寄存器的CPU。
- 使用AMD family 0Fh CPU的台式PC,拥有集成式存储器控制器,在BIOS中通常会启用节能特性。当该PC安装了NI RT Extensions for SMP并被用作RT台式终端时,这些节能特性会导致系统不稳定。要想使用一个受病毒感染的PC作为RT台式终端,必须在单核模式下使用终端或者在BIOS中禁用节能特性。如果BIOS不允许禁用节能特性,那么你不安装或卸载终端上的NI RT Extensions for SMP之后就可以放心地在单核模式下将受病毒感染的系统作为RT目标终端。
- ETS RT终端上可以同时打开的最大文件数量是256。
- 打开TDMS文件时如果报错,这时关闭文件会使RT终端系统崩溃。
VxWorks
- 读取一个不含任何数据的共享变量会导致VxWorks终端的速度降低。
- VxWorks终端和夏令时(Daylight Savings Time)的最新准则不符。所以,VxWorks终端在3月初到4月初和10月底到11月初这段时间内返回的时间不准确。夏令时的实际起始和结束时间每年都不一样,而且并不是所有的地方都使用夏令时。关于您所在区域每年夏令时的实际起始和结束时间请参见官方的夏令时准则。 为防止终端上的时间波动,可以在BIOS中禁用夏令时。如果需要在终端上补偿夏令时,可以使 用Set Date and Time VI在夏令时的起始和结束时更新时间。
- 在VxWorks终端上SMTP Email Send Message VI不可用。
- 在VxWorks终端上,在同一个应用程序中使用Semaphore VI和Rendezvous VI会导致错误和不可预期的行为。如果应用程序除了使用Semaphore VI和Rendezvous VI还使用vi.lib\Platform\_goopsup.llb\GOOP Object Repository.vi,也会导致错误。
- cRIO 9012终端上,RT Ping.vi不返回IP或MAC地址。
- cRIO 901x终端上,在没有DNS服务器的私人网络上DNS搜索的时间很长。如果网络上没有DNS服务器,那么没有必要进行DNS搜索。
- 卸载和重装共享库(.OUT文件)会导致VxWorks终端系统崩溃。要解决这个问题,可以改变目标终端上的ni-rt.ini文件使其包含token: InihibitDLLUnload=True。这个INI token确保了共享库保留在RAM内。但是,你必须确保应用程序所使用的共享库的大小不会超出会接近于目标终端上RAM的可用空间。
RT 8.2.1已知问题
下面存在于实时模块8.2.1自述文件中的问题仍然存在于实时模块8.5中。
所有目标平台
- 对于Windows Vista,在NI Measurement & Automation Explorer中不能使用RT磁盘工具(Disk Utilities)来创建启动软盘。但是如果你有Vista管理员的身份,你可以在MAX中选择Tools»RT Disk Utilities»Create Desktop PC Utility USB Drive来创建台式PC工具USB驱动器。
- Real-Time FIFO VI已经被Real-Time FIFO函数所替代。这些函数速度更快并且功能更丰富。关于升级后的兼容性问题,以前的Real-Time FIFO VI仍然可以从LabVIEW程序框图上下载下来,但是Real-Time面板上不再有这些VI。
- 在RT目标终端上安装Network Variable Engine时,也必须安装相同版本的Variable Client Support。将目标终端从LabVIEW 8.0.x升级到LabVIEW 8.2.x时,也必须升级Network Variable Engine和Variable Client Support。对于LabVIEW实时模块8.2.x,必须在Measurement & Automation Explorer中使用LabVIEW Real-Time Software Wizard在RT目标终端上安装Variable Client Support 1.2和Network Variable Engine 1.2。
- 实时模块8.0返回的错误代码–2222用于指示一个启用了Real-Time FIFO选项的共享变量没有任何值。实时模块8.2.x不会再返回错误代码–2222,而是返回错误代码–1950679034 (0x8BBB0006)来指明发生了相同的问题。这个错误代码与禁用了Real-Time FIFO选项的共享变量一致。
- 将NI PXI-8145RT控制器的RT Engine从7.1.1版本升级到8.0或8.2.x版本时必须启用W2硬件跳线。关于板上跳线、开关的配置及选项的详细信息请参见PXI-8140RT Series User Manual。
- 在实时模块8.0中,为用LabVIEW和实时模块开发的应用程序创建可执行文件,文件后缀名是.rtexe,与早期版本的后缀名.exe不同。尽管文件后缀名的改变只是外观上的改变,但是在实时模块8.2.x中你可能会注意到随着后缀名的改变会有不同的行为。在实时模块8.0及更早的版本中,你可以在Windows上运行由LabVIEW和实时模块创建的可执行文件,然后使用FTP将该可执行文件传到RT目标终端上,并在启动RT目标终端时运行该可执行文件。在实时模块8.2.x中则不能在Windows上运行一个RT可执行文件(.rtexe)。
如果你希望在Windows上和RT目标终端上都可以运行RT可执行文件,必须创建两个程序生成规范(一个用于Windows;另一个用于RT可执行文件),并在项目中为每个目标终端拖放程序生成规范所需的VI。
为VxWorks目标终端创建的可执行文件不能在Windows或者Phar Lap ETS目标终端上运行。
ETS
- 实时模块8.2.x及更新版本不再支持NI PCI-7041。
- 下面的U盘不可再用于启动RT目标终端或者用于存储:SanDisk Cruzer with U3 smart technology。
VxWorks
- 如果从文件读取路径或者从字符串转换至路径,并且使用不同的文件路径分隔符,那么即使两个路径在功能上是相同的只是分隔符不同,在比较操作中它们还是不匹配的。检查所有的路径并确保它们使用了相同的分隔符。不要使用UNC路径。
- 在一个包含定时循环的VI上运行执行跟踪工具包时,如果跟踪时间超过几秒钟,可能会显示出不正确的定时循环线程名称。
已解决的问题
实时模块8.5已解决的问题包括:
Bug ID |
解决的问题 |
3X1C4GZU |
部署Advanced Analysis函数会导致主机CPU超载。 |
36ICTIQ0 |
如果没有经过批量编译(mass compile),自定义探针在RT上工作不正常。 |
41OJDUMD |
通过VI Server调用一个远程面板的VI,显示控件不刷新。 |
41PFRKBK |
一次打开多个子VI前面板时,前面板将不再更新。 |
49R37CRW |
通过集线器联网的8106 RT控制器的网络性能太差。 |
42991O21 |
getenv() SDK函数没有相关支持。 |
42TCTSSQ |
在密集调试时,LabVIEW有时会死机。 |
3VKB599Z |
改进了将VI和配置部署到目标终端上的速度。 |
3ZKCK4HL |
当按下运行按钮时,不能使用VI窗口的左下角切换到RT目标终端并部署程序。 |
3YKCPCWO |
改变DLL的名称之后将不能下载Call Library节点。 |
3ZHEF2UF |
连接到一个正在运行可执行程序的目标终端时,会导致.cpp协议错误。 |
3ZRB9JWO |
在VxWorks目标终端上RT Set Date and Time会忽略本地配置。 |
497G11NM |
VxWorks目标终端会报告不正确的时间簇。 |
42NB6NTE |
VxWorks不能加载通过绝对路径引用的.out库。 |
4619C4ZU |
在Phar Lap上,在本地客户端及服务器上快速传递数据时,TCP会被挂起。 |
3XADIL86 |
在多文件FTP传输中,VxWorks目标终端会被挂起。 |
3YIBCT45 |
对于OHCI高速USB驱动器的更多支持。 |
3YQBSDNQ |
在等待RT目标终端响应时,安装了FPGA的主机会死机。 |
3ZCCLRFB |
使用太多时,Variable Engine会被挂起。 |
49O8FF00 |
如果没有勾选"Discard missed periods"和"Maintain original phase",在第一次运行时并行定时循环会被挂起。 |
49DA21BK |
如果使用了前面板属性节点,Time-Critical VI将以正常优先级运行。 |
相关链接:
附件:
报告日期: 08/10/2007
最近更新: 11/14/2007
文档编号: 4C9ANR4I
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.