LabVIEW的学习心得
扫描二维码
随时随地手机看文章
这些年来,实验室只要有新人入学,导师都会要求他们去学LabVIEW,
因为LabVIEW对我们工科学生来说,像AutoCAD一样,是一个非常重要的工具软件。
LabVIEW用得熟,很多复杂的实验过程都可以用软件来控制。实现很多意想不到的功能。
我观察了很多师弟师妹们学LabVIEW的过程,有的学得好,有的学得较一般,
这最主要取决于他们的学习态度,当然,他们使用的参考书的关系也不小。
虽然我都推荐他们看这本书“LabView-Advanced Programming Techniques”,但很多人因为是英文版而看不下来。
我发现大多数人首选的是去看中文版的入门级教材。
这些教材大多把软件里面各个功能vi简要介绍了一下而已。“功能vi”可理解为系统自带的,随时可调用的子程序,也像Matlab的M文件。因为LabVIEW的功能vi很多,结构、数组、字符串、逻辑与算术运算、簇、文件管理、属性管理、波形生成/测量/计算、信号处理、接口通讯、ActiveX等等很多的功能vi,所以把这些玩意儿挨个介绍一翻,也凑够一本厚厚的书了。这书虽然拿在手上有质感,但内容却非常空洞,让人看着想睡觉。看完之后很快会忘记,一点收获都没有。最终造成的后果是让人对这个软件的热情骤冷。
我上面推荐的教程主要侧重于讲如何实现某个功能,而不是简单地介绍各个功能vi。我觉得这样的书才比较有技术含量,看的时候容易让人思考,而不是死记硬背,也能经常讲一些良好的程序习惯。
有的人可能看到厚厚的英文书就头大,我刚开始用LabVIEW的时候,只有英文版的软件,说明文件都是英文的,所以看英文版的教程比较顺,现在软件跟说明文件都有了中文版,许多人可能不愿意看英文版的教材了,这样的话也可以看一本中文版的书,杨乐平的《LabVIEW高级程序设计》,跟我推荐的那本“LabView-Advanced Programming Techniques”相似程度极高,许多章节都是从英文版翻译过来的,连书名都差不多,如果觉得看英文版比较费劲的话,可以考虑看这一本。
我来谈谈自己比较有趣的入门过程:
上研一的时候,有一天上完课,导师忽然把我叫住,让去我跟一个师兄学LabVIEW。那个师兄也是刚开始学,见了面,他就给我演示了什么是LabVIEW:放了两个“数值输入控件”跟一个“数值显示控件”在前面板,然后在后面板放了个“加”运算符,把三个控件的线连起来,程序就完成了。接着给我演示运行程序,“数值输入控件”分别填入1跟2,结果就输出“3”来了。从1+2=3,我的LabVIEW就开始入门了,简单,明了。
接下来我开始自己去摸索LabVIEW。当年学VB,我逼自己写了个俄罗斯方块的游戏,但对于LabVIEW,写俄罗斯方块太难了,这次我告诉自己,先写一个计算器出来,实现简单的加减乘除功能。于是开始琢磨里面的循环控件、移位寄存器、数组跟布尔按钮。前后花了大概个把星期的时间才写出来了。经过这个小程序的锻炼,基本上对这个软件是完全入门了,懂得使用循环、寄存器、数组、逻辑、显示。后来每个入门的学生,导师都会要他们去写个计算器,呵呵。这确实是不需要其他外部设备,可以直接在单机上写的东西。
写完计算器之后导师便开始交代任务了:写个程序来控制一台惠普的4339B高阻仪(现在是安捷伦了)。
网上搜索了一下,许多人都说可以上NI的网站下载驱动(NI是开发LabVIEW的公司)。驱动是下载来了,就是不知道怎么用。现在看起来多么简单的一件事情,当初跟师兄两个人想破头皮摸索了一个多星期才摸索出来……
但这只是调用别人写的东西而已,因为不满足,自己开始为实验室一台非标准SCPI通讯仪器的温控仪写驱动,第一次研究通讯协议,死活弄不懂该如何计算他们自定义的验证码。可能我的学习热情感染了导师,那天硕士论文答辩,他坐在答辩会员会位置上埋头研究这个通讯协议,还时不时跑出来跟我讨论。现在看起来问题很简单,就是ASCII值没转换成十六进制,导致仪器识别不出我们送过去的代码,而不是我们计算的问题,但第一次写这种程序确实碰了不少钉子,我们怀疑是串口线坏了、怀疑是计算有问题、怀疑是仪器的接口有问题……那天硕士论文答辩,导师连一个问题都没提问,答辩的师兄们说:这是历年来最有惊无险的一次答辩。
后来为了给我学LabVIEW,导师给买了许多东西:如数据采集卡、GPIB转USB线等等硬件设备,我自己也经常跑到学校一个NI赞助的实验室帮那帮人打杂。一年过后就学得滚瓜烂熟了。
总结我的学习过程:
我不是从教程到实践,恰恰相反,我是实践过了一段时间之后再去看教程的。
写计算器的时候,我对功能vi的理解是直接看它的图标,很多功能vi的功能从图标一目了然就能看出来。如果看了还不懂的话,就帮助文件。计算器就是这么摸索出来的。现在很多人写计算器,有的说要看完书之后才能写,结果是花了个把月看完了书,还是一样无从下手,好一点的是边看书边写,我觉得这才是正规学习方法。我那种凭自己想象力的学习方法,也应该算是旁门左道,有时候会很快,但运气不好也会卡壳。但这种方法对我写非标准通讯协议也有帮助,因为写这种东西没有任何一本教科书能教会你。
很多人只看教科书,不看帮助文件,这是一种错误的方法。教科书可能出错,但帮助文件不可能错。与其花时间在教科书上,不如看帮助文件。帮助文件各个相关联的功能vi之间还有连接。
软件的自带的例程很全,基本上可以覆盖你想学的功能。初学者多花时间去研究一下例程的话,提高会很快。
如果有问题,欢迎来讨论,呵呵。
最后我要推荐一个非常不错的LabVIEW的论坛 :http://www.vihome.com.cn/bbs LabVIEW论坛 论坛资料非常丰富
大家可以上去搜索到几乎所有的知识 强烈推荐