Qizhen's profileLabVIEWPhotosBlogListsMore Tools Help

Blog


    我和 LabVIEW - 序

         当我开始在键盘上敲打出这句话的时候,我已经使用 LabVIEW 7 年了。7 年的时间,就算天赋平平也可以积攒下一箩筐可供参考的经验了。所以我打算利用今后的闲暇时间写一些这方面的东西,既可以同大家交流,也是作为自己这七年工作的总结。

     

         还是在上大学的时候,有一次老师让编写一段软件,用来模拟一个控制系统:给它一个激励信号,然后显示出它的输出信号。那时我就想过,可以把每一个简单的传递函数都做成一个个小方块,使用的时候可以选择需要的函数模块,用线把它们连起来,这样就可以方便地搭建出各种复杂系统。

         后来,我第一次看到别人给我演示的LabVIEW编程,就是把一些小方块用线连起来,完成了一段程序。我当时就感觉到,这和我曾经有过的想法多么相似啊。一种亲切感油然而生,从此我对LabVIEW的喜爱就一直胜过其他的编程语言。

         LabVIEW 的第一个版本发布于1986年,是在 Macintosh 机上实现的,后来才移植到了PC机上,并且LabVIEW 从未放弃过对跨平台的支持。这也给 LabVIEW 带来了一些麻烦。最明显的就是LabVIEW开发环境的界面风格。它总是与一般的 Windows 应用程序有些格格不入:面板是深灰色的,按键钮是看起来别别扭扭的 3D 模样。还有一些可能不太容易发现:比如对于整数的存储,LabVIEW即便是运行在x86系统上,采用的也是高地址位存高位数据(big-ending)。这与我们习惯了的x86 CPU使用的格式正相反,这往往给编写存取二进制文件带来了不多不少的麻烦。

         我接触过的最早的LabVIEW版本是4.0版,发布包是一个装有十几张三寸软盘的大盒子。安装的时候要按顺序把软盘一个一个塞到计算机里。尽管当时LabVIEW的界面不是很好看,但我还是非常喜欢它。真方便呐!比如说要画一个开关,用 LabVIEW 一拖就行了。如果要自己动手用C 语言设计一个好看的开关,,那得费多少时间啊!我尤其喜欢它通过连线来编程的方式,尽管很多熟悉了文本编程语言的人刚开始时会对这种图形化编程方式非常不适应。

         从 4.0 到现在的 8.2,LabVIEW 的一些技术革新给我留下了非常深的印象。比如说 LabVIEW 5 中实现了多线程运行; LabVIEW 6 里漂亮的 3D 控件,和对事件响应的支持;LabVIEW 7 中的 Express VI 以及 LabVIEW 8 中的工程库。这些新特性都已成为了现在 LabVIEW 版本中富有特色并不可缺少的一部分了。

     

        我对使用 LabVIEW 编程的认识在这些年里经历了不少转变。刚开始接触 LabVIEW 的时候,第一印象就是觉得这东西编程序比 C 语言简单多了,尤其在设计界面时确实方便简易。LabVIEW 是一种真正意义上的图形化编程语言。与文本编程语言,如 C、Basic 等相比,它在编程过程中有更详细的提示信息,如函数的功能、参数类型等等,程序员再不需要去记忆这些枯燥的信息了。编写风格良好的图形程序代码要比文本代码更加清晰直观,便于阅读。

        刚开始用 LabVIEW 编程时,我连一本相关的书籍都没读过,差不多完全靠自己摸索。当时,市面上几乎没有有关 LabVIEW 的中文书籍,而阅读英文资料又感觉得太累。但是,靠自己摸索的方法也有好处,最明显的就是有成就感:自己琢磨着解决了一个问题,比模仿别人的方法做更令人兴奋。再者,他人的方案并不一定是最佳的,自己独自思索就不至于被他人的方案局限住思路。

        当然,我不会满足于只用 LabVIEW 编写一些简单的程序。我还希望能够用它来编写大型的软件,并且提高自己的开发效率。这时,自己的编程水平有一个质的提高,不阅读相关的书籍资料就不行了。有些问题,不读书,自己可能永远都得不到最佳的答案。同样,有些 LabVIEW 的功能,如果不阅读原始资料,自己也许永远都掌握不了。于是,我把能得到的LabVIEW 的中高级教程都看了一遍。因为自己有了一定的基础,我就可以在读书的过程中反思自己以前的编程方法是否合理,高效。我觉得最好的 LabVIEW 教程还是NI自己编写的 LabVIEW 中高级教程。但书本中一般原理讲得多,具体的编程技巧涉及得少,所以还必须大量阅读别人的代码,才能学习到更多更好的编程方法。

        随着时间的流逝,我慢慢地产生了LabVIEW 应当进一步改善的想法。作为一名忠实的 LabVIEW 语言的使用者,我衷心地期望着 LabVIEW 在日后也可以成为一种被广为使用的通用编程语言,能够在更广泛的领域与 C,Java等争得一席之地。LabVIEW 虽然有它独特的优势,但其不足之处也很明显。我在编程过程中就曾感觉到它很多的使用不方便之处。下一步,我追求的目标就是能尽自己所能,对 LabVIEW 作一些改进和完善,使它更适应于通用编程之用。 

    相关文章:
     

    Comments (16)

    Please wait...
    Sorry, the comment you entered is too long. Please shorten it.
    You didn't enter anything. Please try again.
    Sorry, we can't add your comment right now. Please try again later.
    To add a comment, you need permission from your parent. Ask for permission
    Your parent has turned off comments.
    Sorry, we can't delete your comment right now. Please try again later.
    You've exceeded the maximum number of comments that can be left in one day. Please try again in 24 hours.
    Your account has had the ability to leave comments disabled because our systems indicate that you may be spamming other users. If you believe that your account has been disabled in error please contact Windows Live support.
    Complete the security check below to finish leaving your comment.
    The characters you type in the security check must match the characters in the picture or audio.

    To add a comment, sign in with your Windows Live ID (if you use Hotmail, Messenger, or Xbox LIVE, you have a Windows Live ID). Sign in


    Don't have a Windows Live ID? Sign up

    Zhu Rocky-wrote:
    我们公司也常用labview作开发,,LV的确很出色,欢迎交流。rocky.zhu@jinhorn.com
    Jan. 4
    你好,看了 你写的关于labview的东西 感觉帮助很大。
    Sept. 14
    Qizhen Ruanwrote:
    一年的 LabVIEW 写作成绩今天回头查看了一下自己到底写了多少东西。
    杂七杂八的随笔不算,我把《我和LabVIEW》系列的文章都拷贝到了word文档里。总共有大约45篇文章,5万多字。加上图片也有一百多页纸了。
    和我一年前的估计差不多。说明我还是比较勤劳的:)
    Aug. 12
    树袋熊wrote:
    我是一个初学者,有这样好的交流平台太好了!
    July 14
    Ryan Chengwrote:
    我应为去年在接触LV,有很多的地方不是很懂得,我现在千方百计的学习LV,自己解决一写问题,实在解决不了的,能不能向高手请教??
    June 25
    善在琳心wrote:
    请问在哪里可以找到NI自己编写的 LabVIEW 中高级教程呢?我也想看看有关这方面的教程,可是还没有找到,不知可否提供一些资源,谢谢!!
    Apr. 23
    No namewrote:
    谢谢你的文章,给我们初学者带来不少启发!好人呀
    Mar. 5
    晶 张wrote:
    收获啊!以后打算常来看看:)
    Nov. 13
    8错,以后会长来看看这里,游泳的东西顶顶顶....
    Oct. 18
    Qizhen Ruanwrote:
    不知提供下载 LabVIEW 有否涉嫌违法,所以为了安全,我是不会在自己的 blog 里散布这些信息的。
    Aug. 25
    程 张wrote:
    最近也在研究Labview,不知道什么地方可以下载到8.2啊~
    Aug. 25
    Picture of Anonymous
    (没有名称) wrote:
    清继续。
    June 30
    Picture of Anonymous
    (没有名称) wrote:
    Very good!
    June 20
    Qizhen Ruanwrote:
    因为我用的是拼音输入法,待我一一把他们改正 :)
    June 20
    Picture of Anonymous
    Gloria wrote:
    写的还不错,就是错别字太多了,为什么每篇文章里都要出现错别字呢?不是个好习惯
    June 20
    76wrote:
    我来咧。。。
    瓦嘎嘎嘎。。。
    看球ing。。。
     
    June 20

    Trackbacks

    The trackback URL for this entry is:
    http://ruanqizhen.spaces.live.com/blog/cns!5852D4F797C53FB6!1434.trak
    Weblogs that reference this entry
    • None