LabVIEW 2012 使用心得

LabVIEW 2012 自8月发布已有3月有余,总结了一些使用中发现的优缺点:

优点:

  1. 新加的For循环条件自动索引很方便。2. 新项目向导选项很丰富,模板文档很详尽。3. 新加的Actor Frameworks增加了面向对象的通用架构。4. 可以从NI FTP下载院校系使用权套件的安装镜像,方便批量安装。

缺点:

  1. 启动界面层级太多,找东西不方便。2. 项目向导响应有时候非常迟钝。3. LabVIEW 2009的字体BUG重出江湖。4. 不打补丁会出现无法退出的情况。

点评:

这一次LabVIEW更新增加的Actor Framework给LabVIEW提供基于类和对象的架构选择,不过LabVIEW面向对象带来的好处能否超过其成本还需要在实践中验证。

PS:

LabVIEW 字体BUG修正方案

针对LabVIEW图标编辑器,可以考虑关闭系统ClearType(但是字体仍然不对),或者使用我以前写的字体图片

针对LabVIEW环境,目前最治本的办法是将系统非unicode程序语言更换为英文,但是此时LabVIEW里面的中文会乱码,因此对于中国的LabVIEW使用者没有可行性。

升级至TortoiseSVN 1.7.1

在开源界SVN是一个非常有朝气的项目,这个可以从他的版本每两周一个小版本的升级的速度就看出来。

虽然SVN 1.7出来也有一段时间了,不过一直没有太关注过,最近偶然看到SVN新版本的特性,有几项非常实用的功能和更新,所以果断更新到1.7.1。

值得注目的新特性有:

  1. 数据库整合至根目录(终于解决了目录更名错乱的问题!)

  2. 深度支持Windows 7。新增Windows 7库整合,界面支持Windows 7 Aero特效。

  3. 客户端和服务器均向下互兼容,1.7的客户端也可以配合1.6的服务器使用。
    更新要注意的问题:

  4. 升级安装需要安装两次,第二次选择修复。

  5. 工作副本需要升级至新版本,并且无法降级。
    建议升级流程:

  6. 提交所有工作。

  7. 升级SVN(注意要安装一次修复一次!)

  8. 重新下载或者升级工作副本。
    image

https://decibel.ni.com/content/groups/large-labview-application-development/blog/2010/03/29/using-subversion-svn-with-labview

LabVIEW 2011配套驱动下载地址

NI的最新版本LabVIEW 2011已经发布了,配套的驱动也已经出现在NI的FTP。

NI的驱动包目前分为两种:NI设备驱动和系统驱动集。

区别是系统驱动集会有所有PXI板卡尤其是所有RF的板卡的驱动,

而NI设备驱动只有常用的RFSA和RFSG驱动,不过NI设备驱动会有其他总线如USB-8451的驱动。

推荐下载一个系统驱动集+USB-8451这种组合,可以解决大部分NI板卡的驱动问题。

NI Device Drivers 2011.08
http://joule.ni.com/nidu/cds/view/p/id/2602/lang/zhs
http://ftp.ni.com/support/softlib/driver_cd/aug_11/dcd_aug11.zip
系统驱动集 201108
http://download.ni.com/support/fis/sds/2011.08/SDS-Aug11-1.zip
NI-845x 2.0
http://ftp.ni.com/support/softlib/embedded%20networks/I2C_SPI/ni-845x/2.0.0/NI-845x_200.exe

[Code Share]如何用LabVIEW取得计算机主频

大部分Windows下程序都是使用计算机计时器计算CPU主频,(当然也可以跑个算法自己算)最基础的就是这个了:

  • 使用Win32API取频率

好处是功能简单速度快,下面代码没做返回值处理,如果计算机没有高精度计数器(这个可能性比较小)有可能出不来频率,详细可以去看MSDN:

WINAPI QueryPerformanceFrequency

  • .NET  利用WMI获取系统信息

这个接口是使用系统信息(C:\Windows\System32\msinfo32.exe)能拿到的信息更多,不过方法复杂,速度也慢。

 

System.Management.ManagementObjectSearcher

这两个算法都在Win7 32bit,LabVIEW2009SP1下测试通过。

博客升级至Wordpress

微软的网络战略总是变来变去,而功能更新总是极其缓慢,和其他网站竞争总是处于不利地位,终于MSN Space就要被砍掉重练,M$要玩SNS了。

前前后后也用了不少blog,基本上没有什么太好的选择,国内的说倒就倒了,不倒的隐私也是个问题,国外的不是被墙就是速度不理想,终于趁着MS脑抽升级到Wordpress.com了。还好YO2原来玩过一段时间WP,上手还算简单。

看见这个帖子的大家可以测试一下留言,以前MSN的space留言经常被吃掉,希望这个能好一些。速度就不报什么希望了,只希望晚一点被墙吧。

顺便骂一下Windows Live Messenger 2011的开发人员,每次升级干的两件事就是UI大变+功能缩水,不知道回头是不是要把聊天的功能也砍掉。

记得8.5的时候有个共享文件夹的功能,局域网共享东西还是很给力的,结果2009的时候砍掉了。

然后2009搜索联系人是可以搜索昵称中间的,比如ABC 搜索BC也能出来搜索AB也能出来,结果2011果断悲剧了。

还有2009包括以前的所有版本双击主界面左上角是能滚到后台的,2011果断就关闭了。以前是阴魂不散,现在突然玩消失还真是谢谢啊!

image

唯一长进的地方就是能排排坐吃果果了

image

LabVIEW 2010图标编辑器与库技巧一则

LabVIEW 2009时一个很方便的改进是图表编辑器支持图层,2010版本里又大幅强化了不少:

例如支持图层的复制粘贴,自定义图表模板和图例.

image

对于库(包含LabVIEW Class, X Control)等来说一个很方便的特性是可以批量修改库中VI(包含自定义控件)的模板

通过这一点我们可以简化图标设计的工作:

image

1.首先设计库图标模板:

在库上右键,选择属性,点击编辑图标

image

a)首先选择库模板

image

b)填充颜色

image

C)编辑文字

image

点击OK返回库属性,再点击OK提交图标,LabVIEW提示是否应用至库中其他VI,选择YES

image

2 编辑VI图标:

此时库中VI图标包含如下图层

image

a)首先我们隐藏掉图标编号

image

b)然后选择合适的图标

image

C)填写说明文字

image

这样一个图文并茂,风格统一的Icon就轻松完成了,可以看到利用LabVIEW2010的图层功能,加上良好的程序架构,优美的代码就在我们手中。

imageimage

快速放置快捷键

LabVIEW 2010发布以后无意中发现一个”古老”的新功能:快速放置

这个功能的默认快捷键在LabVIEW英文版下是Ctrl+空格,和输入法切换的快捷键冲突了,因此一直没有使用过,

LabVIEW 2010的中文版将这个快捷键修改为Ctrl+Shift+空格,就可以比较方便的调用了,

LabVIEW 默认的键盘快捷键已经将26个字母全用完了,因此一些不是最常用的功能就放到了快速放置里:

键盘快捷键 说明
Ctrl-D 当快速放置对话框为活动状态时,为选中程序框图对象所有未连接的输入和输出创建输入或显示控件。
Ctrl-Shift-D 当快速放置对话框为活动状态时,为选中程序框图对象所有未连接的输入和输出创建常量。
Ctrl-R 当快速放置对话框为活动状态时,移除选中的程序框图对象和与之相连的控件和常量,并连接删除对象输入输出类型相同的接线端。
Ctrl-T 当快速放置对话框为活动状态时,将前面板控件的输入标签移至控件左边,将前面板显示控件的标签移至控件右边。
Ctrl-P 当快速放置对话框为活动状态时,将选中的前面板或程序框图对象替换为快速放置对话框中选中的对象。
Ctrl-I 当快速放置对话框为活动状态时,在程序框图选中的连线上插入快速放置对话框中选中的对象。
Ctrl-Shift-I 当快速放置对话框为活动状态时,在选中的多条连线上插入快速放置对话框中选中的对象。
Ctrl-B 当快速放置对话框为活动状态时,将选中属性节点、调用节点、类说明符常量的VI服务器类改为在快速放置窗口输入的类。
Ctrl-Shift-B 当快速放置对话框为活动状态时,将选中的属性节点/调用节点的属性/方法转换为快速放置窗口键入的属性或方法。

另外LabVIEW的快捷键时可以在选项里面修改的,个人最喜欢的就是Ctrl+`这个组合,比较冷僻,一般不会冲突。

image

批量安装LabVIEW及组件

有了命令行我们只不过节约了几下鼠标,还要安装好一个组件之后再手动装下一个组件,还是很麻烦,有没有什么省事的办法呢?

当然有,我们有请批处理文件(*.bat)出场.

![image](https://aftv2q.bay.livefilestore.com/y1mqqNVZcgJPai7kLPfP-bwMXNiRj29p8OYhJkPI15R4vn-ro4qQ2lmU7LvHK1j8vfdh80QCLBLHUUlNPZ8CGUSbKVIA0-GWa2ehglraOPJmcCneWxwzrX6qOYGMC-_ATAVTbAGb9Tm6YnLhpCHrvT4lA/image_thumb[3] 61095F84.png “image”)

[![image](https://aftv2q.bay.livefilestore.com/y1mi-lnu06Lw7420S6HuMj8vWvDELiUrYj5iFZh4uw6XG8ORN_jYecm_QDrc07hu3RGxH1HiXUe6FW4TdMn3h6mhcfBrgK-V3dyrx033bkzAzVBJlOr23tK3rI6MB8wA1ukQGmrQh3218WNIc-kGtsWaw/image_thumb[5] 2B50062B.png “image”)](https://aftv2q.bay.livefilestore.com/y1mvtOis4jV9Le2-VIxUzE8D0cQwamCCNhUO-ndQNg3MCQ5ElsW3S70crQNR2pKO9BgeMwPvD8QNK3VYn2isBius6dsvpwOoV9sIEVwNuy8T8wC246WqxJpAudZsF1O0INPxzTdfRK85AWTO7BTzcLePg/image[11] 0C99DDE7.png)

对于上面这种情形,我们只要建立一个文本文件,输入以下内容,命名为Install.bat双击运行就可以一次安装LabVIEW2009SP1,实时,控制设计仿真等软件:

"o:NI SoftwareLabVIEW 2009 SP1LabVIEW 2009 Service Pack 1 32-bitsetup.exe" /qb /acceptlicenses yes /disableNotificationCheck /r:n
"o:NI SoftwareLabVIEW 2009 SP1LabVIEW 2009 SP1 Real-Time Modulesetup.exe" /qb /acceptlicenses yes /disableNotificationCheck /r:n
"o:NI SoftwareLabVIEW 2009 SP1LabVIEW 2009 SP1 Control Design and Simulation Modulesetup.exe" /qb /acceptlicenses yes /disableNotificationCheck /r:n

假如安装包放在其它计算机的共享里面呢?可以使用命令行把共享映射到本地驱动器:

net use o: \pansinoagtreadonly

image

这样我们就可以让他自己安装,而不需要我们操心了。

快速安装LabVIEW

通常我们安装LabVIEW最常干的事情就是不停点的下一步,然后等进度条,然后再不停的点下一步,再等待进度条,最后重启。

image image image image image image

其实LabVIEW是支持命令行安装的

在CMD里面运行SETUP.EXE加上不同的参数就可以实现快速安装,例如下面这条就是快速安装LabVIEW到C盘并且装完不重启

D:NI SoftwareLabVIEW 2009 SP1LabVIEW 2009 Service Pack 1 32-bit>setup.exe /qb /acceptlicenses yes /disableNotificationCheck /r:n

一旦运行就直接开始扫进度条

image

一个更简单的办法是创建Setup.exe的快捷方式,然后再目标后面直接加上 /qb /acceptlicenses yes /disableNotificationCheck /r:n

image

这样可以减少我们鼠标点击的次数…

最省事的办法还是建立一个批处理文件,批量安装多个软件~

image

LabVIEW 2009 SP1已经可以下载

下载地址:(须注册)

https://lumen.ni.com/nicif/us/evallvmaint/content.xhtml

据说修正了不少错误,比较令人郁闷的是需要用下载器下载,还好我猜测出了实际下载地址。

因为牵涉到NI的版权问题,我就不放出实际的下载地址了,大家自己试验吧,还是有迹可寻的。

对应的DCD可以在ftp://ftp.ni.com/support/drivercd/找到,

Index of /support/drivercd/

Name
Size
Date Modified

[parent directory]

2008.08/ LabVIEW 8.6
9/22/08 7:31:00 PM

2008.11/
7/1/09 9:39:00 PM

2009.02/ LabVIEW 8.6.1
2/6/09 5:02:00 PM

2009.08/ LabVIEW 2009
7/17/09 4:31:00 PM

2009.11/
11/15/09 7:57:00 PM

2010.02/ LabVIEW 2009 SP1
1/26/10 10:58:00 PM

2010.08/ LabVIEW 2010
1/22/10 5:38:00 PM

2010.02目录就是LabVIEW2009SP1的对应驱动。可以看到已经出现了八月的站位目录,LabVIEW 2010应该正在Beta测试中,预计八月份就可以正式发布。现在NI的开发工具还是保持着一个快速演进的生命周期,还是非常有活力的,每年一个大版本升级能不断加入新的特性和功能,小版本修正错误。

As of August 2010, new LabVIEW releases will no longer support:

  • Windows 2000
  • Mac OS X 10.4

    1 Prior to LabVIEW 2009, LabVIEW was only a 32-bit application that was compatible with Windows Vista x64 through Windows on Windows (WoW) 64. LabVIEW 2009 and later will provide both 32-bit and 64-bit versions of the LabVIEW development environment.

    而微软还是保持2~3年一代Visual Studio的速度发布,基本上和操作系统相差半年左右。VS2010预计4月份完成,针对Win7和2K8R2开发,个人的感想是.net开发终于进入一个比较成熟的阶段,VS本身也应用了.net来开发,OS也普遍内置.net,以后普及就比较快速了。

http://support.microsoft.com/lifecycle/search/?sort=PN&alpha=Visual+Studio

http://tech.it168.com/a2009/1208/821/000000821252.shtml

总体来说LabVIEW的演进和Visual Studio越来越像,不断地拓展新功能和增加新特性,推动技术的发展和进步。

最后提醒一下 LabVIEW2009SP1是一个收费升级,安装需要重新激活软件。