发 帖  
原厂入驻New

[经验] 一个资深工程师的自述:我与LabVIEW十五年

2020-3-2 13:46:27  1190 labview
分享
10
    那是十五年前了,记不清因为什么任务需要编程,我的领导说你去试试labview吧,我说,怎么拼写?
他给了我一个陌生的单词
    那个项目时间紧,任务重,一个程序,用VC6.0编写了很多天,才勉强实现了一个调试小框,运行起来不流畅,做为DEMO展示都勉强,更别说当做成果了,实在不行,有人建议试试C#,我们从CSDN上下载了几个程序,结合研究生时期的课题代码,十来天没怎么休息,又出了一版,效果是好很多,本来是兴高采烈的拿给领导看,没想到还是被泼了冷水,“你这也仅仅实现了局部”,就这样,领导给了我一个陌生的单词。我是一头雾水的应声“好的”。
      那还是下午下班的时候。
    晚饭后回到宿舍,赶快就在笔记本电脑上查资料,找安装包、学习资料和例程。记得那时下载的是LabVIEW8.2版本,网上的资料很少,安装包比较大,用了3个小时,好不容易down下来,赶快迫不及待的安装、试用。因为有一定的VC编程基础,并且用过组态软件,打开LabVIEW面板的一刹那,就感觉到了难得的得心应手。前面板放置各类工程控件,按键、旋钮、油罐图、波形图、表格等等,双击一下,就跳转到后台,forIFwhile、数学运算……,文本编程突然转换到鼠标连线编程,有一些笨拙,但当晚真还是high到不行,拿现在潮的话说,我是真的被这个平台get到了。以前用VC,一个波形图,上千行代码,稍不注意就错了;VC控件与工业应用相去甚远,做象形控件,做个圆锥扫描,几百行代码,都还是线条乱跑的;VC多线程难以调试,变量名称难以控制……。现在这些苦恼全没了,LabVIEW啥都有,啥都方便,除了不同数据类型需要用不同函数,比如数字和字符串,以及数组,要用各自对应的函数包,其他简直就是可以随心所欲了。
    于是乎,那一夜无眠。
    第二天早上,我把成果拿到办公室给同事看,几个人正在围观的时候,突然一个声音:“这个不错”,是领导也在看,我内心带着几许兴奋,但仍然念叨着“我做的不好……”。
    就这样,我们7个人,琢磨了2个月的东西,因为换了一个平台,让我们的进度飞速提升,于是我迅速展开培训,给大家都教了几遍,我们分工协作,没几天功夫,项目大有成果,不仅得到了领导的肯定,我们一群人,还难得的得到了2天休息时间,大家相约去步行街,一个人失约,她发信息告诉我:“感觉空气都是自由的了”。我想是啊,如果不是LabVIEW,不知自由什么时候才能到来。
笨了很长时间
    得心应手的事情,但并不一定轻松,更谈不上厉害,尤其是几个小错误,让我可能终生羞涩。
    第一就是图层叠加。大家知道,前面板的控件是可以叠加的。为了形象,美观,我们甚至需要很多修饰图层。那个项目的确规模有点大,修饰图层都有好几十层,有时觉得不错了,就继续添加图层,但问题也随之而来。前期的图层或者控件不协调,需要删除了重新导入,怎么办。我当时想了一个“聪明”的办法,为了方便程控,我把修饰图层,也放在控件上,然后在后台把控件和程序一起分类,这样要修改谁,就剪贴到另外一个VI,然后复制回来就行了。我们一群人,乐此不疲三个月,最后因为我们做的不错,NI工程师说过来看看,他对我们很是赞赏,但也给了我一个小建议,“尽量使用工具栏里的图层移动功能”,那是八月酷暑,我顿时汗如雨下。殊不知,我们有时为了改一个小东西,要粘贴复制上百个控件,我还信誓旦旦的给大家说,LabVIEW没有图层整理的功能。
    随着项目的增多,成果的积累,我们做的东西,不能仅仅是源代码跑起来就行了,还要拿去给别人使用。为了保护源代码,我们想到了程序发布。可问题也随之而来。那时网上没多少资料,国内熟悉LabVIEW的人也比较少,英文资料看的似懂非懂。我琢磨了几天,好不容易可以生成exe了。但别的电脑不安装LabVIEW平台,还是运行不了。制作Setup,怎么弄都不成功,硬是不知道要添加什么好,源代码,exe,一愣的往里塞。话说回来,那时的平台,自动化程度没有现在的高,的确是比较麻烦。最后还是不成,实在没办法,只好手动裁剪LabVIEW,一点点的删除,然后拷贝到其他电脑,留下最核心的库,终于,我花了几个月的时间,做了一个压缩包,把它解压到另一个电脑的指定文件夹下,exe就可以运行了!真可谓大功告成,从此,我们的成果不仅获了奖,还和几个单位签了合同,卖出去了很多套,领导带着大家举杯庆祝了好几次。实在是意义重大,什么“人生第一款第三方应用产品出炉”,什么“咱们单位卖出的第一套软件”,一系列的评价接踵而至,作为事业单位,以前都是问国家要钱,做完了发个论文,报个奖就行了。突然赚钱了,那个兴奋,真是无法言语描述。领导一开心,每人发了一百元过节费。
    殊不知,现在生成一个Setup,几分钟的事情,并且网上教程,少说也有几十个版本。
    转眼两年后,做的软件慢慢多起来了,对我认可的人也多了。但有一个软件,却折腾人的很。本来就是十来个功能,中文做,最后不断增加功能,程序规模越来越大,界面元素越来越多,尤其是还加了好几种语言版本,不同语言,描述的长短不一样,问题随之而来。相比于以前做的展示类软件,这个软件是应用型的,客户会安装在不同的电脑上,面对分辨率、语言以及客户左右手习惯等现实,控件的布局就尤其显得重要了。随着产品的推出,各种抱怨、投诉接种而至,有一些截图摆到我面前,简直是不忍直视。逻辑不合理、位置错乱、颜色奇怪、文字跑偏,描述起来,似乎就是几十个字,但那种痛苦,不知道有多少人经历过。因为接下来三年,我都因为要微调颜色、位置、大小和对齐,不断生产exesetup,发布……,发布……,再发布。我几乎每天最主要的技术工作,就是午饭前发布,晚饭后发布,睡觉前发布,半夜偶尔被叫醒发布了。这种因为没有良好的UI习惯,没有人伴我而行,独自闭门造车引起的煎熬,没多少人知道有多么苦涩。这其中,真还让人感受到了一点“天将降大任于斯人也”的感觉。
    我从小是一个自卑的人,随着自己的拼搏,以及成果的取得,慢慢自信起来,但这件事,把我打回了原形,我意识到,LabVIEW虽然门槛低,简单易学,并且在很多方面的理解上,都能比其他平台更容易让人悟透,但如若长期独自编程,闭门造车,不去学习,不与高手交流,那自己永远就是一个让人抱怨的“技术猿”而已!
深深的爱,且行且珍惜
    能,然后不能,而后使其能。学习大抵都是如此。
    每逢出差空隙,我就赶去当地的书店,买LabVIEW,以及UI和美学设计的书,看书是让人感觉酣畅淋漓的,尤其是闭门造车久了,感觉别人都不如自己的时候,看看别人的书,那真是大开眼界。我喜欢的是陈树学教授的《LabVIEW宝典》,它就像一个字典,无所不包。而我最喜欢的是阮奇祯工程师的《我与LabVIEW十年》,这本书,我推崇备至。但有一个人让我推荐LabVIEW教材,我推荐了阮老师,他买到了,看了几天后,告诉我,写的不怎么样,我电话中当场发飙,并且从那以后,再也没和此人交往。因为我感觉这个人,大言不惭,实在不适合在技术领域“修行”。是的,我认为做技术就是修行。不过现在想来,我是不是太过激了一点,毕竟人家是新人,他没有经历我这样工作的痛苦,自然不懂别人写的奥妙。
    这是一爱。
    LabVIEW的爱,还能体现在我想让它在国内发扬光大,这不是口头的,还付诸很强的行动了。我和朋友们 一起,利用LabVIEW做生态,那就是结合市场上LabVIEW配套硬件品类不足,其他厂家与LabVIEW兼容性不好,使用不便,定型太差等问题,我们从武汉亚为的USB ADIO入手,利用STM32芯片,做LabVIEW配套硬件。别看ADIO这个产品鸡蛋大小,那可是一番心血的结晶。
    没有轰轰烈烈的计划,没有伟大的规划,ADIO的出生,仅仅是因为不想面对其他公司无动于衷而给我带来的苦涩回忆。我们做的也并不高深,仅仅是利用HID协议,努力让它发挥到极致而已。但这条路,这个板子,我们整整优化了4年。亚为有一个光荣榜,记录着ADIOLabVIEW的兼容之路上,亚为人前赴后继的努力。它硬件升级了二十余次,软件升级了数百次,大大小小,亚为人在100余个技术点上,有三十余人,为其出谋划策,为其舔砖加瓦。不为其他,只为LabVIEW在基层,在不太有经费的人手里,被用的更多,更好。
    公司运营久了,烦于琐事,会让人觉得业务不前,或者管理不畅,此时,我总是习惯浏览一下NI的官网,哦,其实不是浏览,应该是看的痴迷,经常一看就是几个小时,详细了解每一个板块更新了什么,尤其是每年LabVIEW升级的时候,我会关注和测试新功能,并推荐给大家;平时给大家培训的时候,我会了解最新产品和动态;年终做公司规划的时候,我会看NI的行业白皮书,并带领大家一起学习,有时候他们介绍的内容,并不一定和我们业务相关,但我也竭尽去理解、领悟、宣传,总感觉别人能驾轻就熟、高屋建瓴,也可以让我们触类旁通。
    一晃就是十五年,不是回忆,还真不在意那些苦痛,更多的,是与LabVIEW为伴,感觉到了人生的惬意与轻松。


《双ccd+视觉通用框架-LabVIEW视觉必学高阶课程》

《龙哥labview手把手视觉设计

《龙哥手把手教你学视觉-运控控制》

Ladies丶 2020-3-2 14:26:02
太厉害了吧谢谢铁柱的分享

评分

参与人数 1积分 +1 收起 理由
wrjifeng + 1

查看全部评分

2 回复

举报

qingfeng0515 2020-3-2 16:20:56
谢谢铁柱的分享
1 回复

举报

修一道佛缘 2020-3-2 16:32:26
感谢分享,确实有共鸣
1 1回复

举报

wrjifeng 2020-3-2 17:33:37
谢谢鼓励,作为一个十几年的工程师,以后要向各位学习新知识了。
回复

举报

白菜心疼 2020-3-3 11:43:32
挺好的,多些这分享。
1 回复

举报

efans_776edd 2020-3-5 23:07:44
LabVIEW的不冷不热 “只适合做测试” 我不认同 他的潜力没法发掘出来 如利剑未开锋
1 1回复

举报

  • wrjifeng 2020-3-10 11:16

    认同!那要看NXG的表现了,LabVIEW追赶技术潮流的能力的确不太强,做的东西还是考虑的太小众化。我倒是建议他们多积累一些net编程和基于网络的应用算法和风格界面,否则不会被主流认可。

tronca 2020-3-10 11:10:20
厉害了,十五年的高手
1 回复

举报

蜗牛的大衣 2020-3-10 12:11:36
同楼主使用labview的经验差不多,我也有十一年了,中间经历的苦涩无人能晓,所有单纯认为labview只能做测试的看法显得很愚昧,只有深入了解和学习的人,才会有体会,图形化的编程符合人类的认知,替代文本编程,还有很长的路要走
1 1回复

举报

  • wrjifeng 2020-3-13 23:09

    非常认同您的看法,编程都是从抽象语言逐步走向接近现实的语言的。从文字走向声音和图像的。 现在图像编程是大趋势。 在大数据领域,叫做数据可视化,很多安卓编程、少儿编程平台,都是图形化的了。

huzhiyuhaha 2020-3-10 22:58:57
谢谢分析,挺你,加油
1 1回复

举报

wrjifeng 2020-3-18 21:12:11
干一行爱一行,不盲目追求大众的。做小我,有小爱,这样的技术,更惬意一些。LabVIEW无所不能。近期在本论坛有一个视频直播课,欢迎大家参与。
回复

举报

LBD99 2020-3-19 10:43:04
过程的心酸与喜悦,别人永远无法体会
1 回复

举报

LBD99 2020-3-19 10:43:19
过程的心酸与喜悦,别人永远无法体会
1 回复

举报

jf_44451349 2020-3-20 16:03:50
感谢楼主分享,我是要做产品性能测试需要采集信号进行分析,才接触不久,感觉比纯粹的代码编程要好用很多,继续学习中!
回复

举报

wrjifeng 2020-3-23 09:31:42
是的,图形化的东西,信息量更大,更接近人的直觉,可以用象形、颜色、中英文汉字来多维表达,非常容易上手,这是一个趋势。
回复

举报

wrjifeng 2020-3-23 09:32:17
直播定在3.27日晚上8点,敬请关注
回复

举报

idianze 2020-3-23 11:48:56
好帖子顶一顶!感谢楼主
1 回复

举报

过程的心酸与喜悦,别人永远无法体会
回复

举报

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
发经验
关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表