LabVIEW技能加持,完美实现,汽车行业复杂测试

你的29岁在干嘛?
同样是汽车软件系统控制工程师,有人29岁了在准备面试,还要恶补各种知识,而有的人早已独当一面,带团队了。
即使没有换工作的惶恐和焦虑,不同人的工作状态也是不相同的。
LabVIEW技能加持,完美实现,汽车行业复杂测试的图1
有的人,在研究商务谈判技巧。希望通过巧妙的沟通策略,能让供应商便宜一些。殊不知这种“策略”在强势供应商那里,基本上就是小儿科,不care。
有的人,在到处忙着救火。样车甚至量产车,仍然有一堆问题,按下葫芦浮起瓢,整天去工厂调试样车、排查问题。这种低质量的重复性辛苦,完全是不必要的,原本是可以设计环节,通过严密的测试,提前排查出来的。
而有的人,早已靠着自己独一无二的技能,创建了完全自主开发的测试技术体系,在公司里闯出了一片天,赢得了同事、领导的普遍信赖和好感,工资蹭蹭张,岗位也持续提拔……
LabVIEW技能加持,完美实现,汽车行业复杂测试的图2
区别在哪里呢?
非常简单,前两者只是简单的岗位劳动,随便一个人都能干,而后者是货真价实的突破性贡献。
给公司节省了大量的经费同时,也通过高质量的输出,给项目工作增添了不少亮点,提前发现了问题!
你说,工资不加给他,加给谁?不提拔他还能提拔谁?

我的成长史

LabVIEW技能加持,完美实现,汽车行业复杂测试的图3

师子一号第一次接触LabVIEW,是在大三,当时觉得它好复杂,各种操作真反人类,好讨厌。

但是,日久真的是可以生情的~
工作这么多年,我用LabVIEW做过很多东西,其中几个较大的成果有(展示图仅为其中一小部分):
  • CAN上位机。用的ZLG的盒子

LabVIEW技能加持,完美实现,汽车行业复杂测试的图4

  • HIL远程自动化测试平台。用的NI的平台

LabVIEW技能加持,完美实现,汽车行业复杂测试的图5

  • 串口协议。控制的对象为modbus板卡

LabVIEW技能加持,完美实现,汽车行业复杂测试的图6

  • TCP协议。跟其他电脑通信

LabVIEW技能加持,完美实现,汽车行业复杂测试的图7

  • 调用一般DLL。比如淘 宝上买的各种数采板卡

  • 图像处理。比如本公众号的下面的图片,带边缘阴影和淡红色水印,都是自己做出来的,里面用到了很复杂的底层数学处理逻辑

LabVIEW技能加持,完美实现,汽车行业复杂测试的图8
  • CANDE汽车网络设计平台。用到了很复杂的报文结构体处理逻辑,使得师子一号坚定认为:数据结构是代码的核心

  • 收银软件。用LabVIEW+C#实现,走的支付宝的支付通道。

LabVIEW技能加持,完美实现,汽车行业复杂测试的图9

  • 软件加密技术。用的是LabVIEW直接控制MBR保留分区字节,以及对BIOS的控制技术,使用了自己开发了一个DLL。

LabVIEW技能加持,完美实现,汽车行业复杂测试的图10

  • Excel2DBC工具 。纯LabVIEW实现,这个软件目前正在无偿共享给广大同行。毫不谦虚地说, 是目前业内最好用的转换工具,也是我们在LabVIEW领域雄厚实力的证明 。有需要的朋友,可以转发一下本文并截图发给我,免费领取工具。
LabVIEW技能加持,完美实现,汽车行业复杂测试的图11
  • PID仿真及控制

  • 对ActiveX的调用。调用Excel,实现形形色 色的自动报告格式

LabVIEW技能加持,完美实现,汽车行业复杂测试的图12

  • 汽车UDS诊断

LabVIEW技能加持,完美实现,汽车行业复杂测试的图13

  • 汽车NM网络管理

  • 汽车BOOTloader

  • 示波器数据的获取和分析

  • 前面板控件自动布局。这个是Labview的软肋,缩放几次就扭曲了,所以我自己做了个程序,自动识别前面板大小、各个控件的大小及在前面板的坐标,从而实现动态自动布局。不过,一般而言,我们使用labview的目的是实现功能,对界面的美观度要求一般不高。

LabVIEW凭借着简单易用的特性,以及强大的扩展功能,给我带来了太多的惊喜,也帮我解决了不少的问题。

LabVIEW技能加持,完美实现,汽车行业复杂测试的图14

我个人觉得,对于一般exe、虚拟仪器以及仿真测试而言,对于各种高级自动化验证分析方向而言,LabVIEW是这个星球最好用、最优美、最简洁高效的开发语言,没有之一。
使用labview,延年益寿,很少掉头发。
也难怪苹果公司、特斯拉公司这样的人类明星企业,会成为LabVIEW的忠实粉丝,连老友记的镜头都有不少工程师是在使用LabVIEW。
遗憾的是
不过,对于我个人而言,遗憾也还是有的,就是,我摸索学习labview所用的时间太长了,直到好几年之后才掌握它的精髓。
而当初同一个专业的一个同学,不知道找的什么门路,大学的时候就把labview学得很好,然后毕业找工作的时候,凭借着扎实的labview技能,顺利进入了某国家级汽车汽车研发检测中心,很快就成了单位的扛把子了,日子过得舒服极了,工作强度参照公务员,福利待遇向烟草、电网看齐。

LabVIEW技能加持,完美实现,汽车行业复杂测试的图15

再回过头来看,当初大学时期学习labview的经历,其实当时没有学好,也不能全怪我,实在是当时学习过程太过匆忙,教材也有点晦涩、不够接地气。
现在网上的各种labview视频教程也是,我甚至弄不明白它们到底是来捣乱的还是真的想教别人知识的。
这些教程特别喜欢在一些常识性、碎片化、微观的知识上花费大量篇幅,比如什么叫字符串、数组怎么使用、如何把空间拖进来之类的等等。
这些都太简单了,稍微有点数学常识的人都会。
labview入门很简单,做和简单的a+b=c,没有任何难度,但是实际的项目应用中,不可能这么简单的,真正实践的时候,是需要大量复合型知识的。
网上现有的这些视频教程,一般不去从整体上告诉大家,我为什么要设计这样的程序结构?如何从宏观到微观逐步细化?这些琐碎的知识点如何拼装起来,形成一个大型的成果?
可能是,他们觉得这种教程是自己的私房货,不能外传吧。
所以我就想,如果在当初我学习labview的时候,能有个真正的专家高手,从新人的认知模式上,教教我,给我指点,帮我少走弯路、快速提高,那我的职责生涯发展绝对比现在要好,在职场上绝对能占据更多的先机……哪怕这样的“指点”要花个三五百块,我也觉得非常值。
所以,为了帮助后来人少走弯路,学到真东西,帮助那些对自己职业发展有想法的同学们,车辆技术公众号专门录制15期labview视频教程,帮助大家真正地从入门到精通,成长为labview大牛。
本视频教程有别于网上所有的labview教程,我们将按照人类普遍的认知特性,先简要介绍一下基本知识,然后 从具体任务入手,逐层细化深入,一个个引入各种知识点,在实践中让大家切实体会到这些知识点的用途及注意事项,从而最终融会贯通,帮您成为labview高手

场景0

LabVIEW技能加持,完美实现,汽车行业复杂测试的图16

公司卖给客户的电池系统,在充电的时候出问题了,有点小故障,需要出差去排查一下问题。

但是客户的通信协议有点特殊,公司现有的上位机解析不了,没法定位问题。

这个时候,你作为系统负责人,如果懂得如何解析通讯矩阵,懂得如何开发一些简洁直观的上位机,你就更能把这个质量问题搞定!

电池系统的CAN通讯,往往是大量的id,用来表达N个电池单体的状态,有的甚至是multiplex类型的复用报文。

是,凭借着在labview二次开发CAN通讯方面的优秀技能,你在去客户现场的路上就做好了全套的软件工具,到了现场分分钟定位到了原因。

然后你凭借着这个贡献,获得了当年的优秀标兵。

技多不压身,这个时代需要的是复合型人才,这样的人才在当代社会中更能抵御职场动荡。


场景1

LabVIEW技能加持,完美实现,汽车行业复杂测试的图17

项目接口人丢给了你一份blf文件,说这是从实车上录制下来的报文,让你去核对一下它和设计文档的区别,看看这个车上的各个网段中,哪些控制器多发了、少发了、错发了……

这绝对是一个让人抓狂的事情,在汽车电子测试领域,这是一个巨大痛点。

从CAN总线诞生近30年来,特别是最近10年来汽车电子电控飞速发展,车上的ID越来越多,管控越难越难,从来没有人能高质量、低成本地完成这个事情,行业最优秀的供应商,也鲜有搞定这个事情,几乎无解

传统的做法是怎么样的呢?

  • 第一步:在CANoe中打开这个blf,然后run一下,统计出各个网段的ID实际属性,比如周期、DLC、ID等等。

  • 第二步,打开通讯矩阵文件,一般是excel。然后肉眼观察,CANoe里面的ID清单,和通讯矩阵中定义的是否一样。这一步非常麻烦,非常难受~

这个工作实在是太不好做,以至于相当多的工程师,就只查看最近一次设计变更有没有实现,就算完事了。比如某个控制器新增了一个id,就只查看这个id有没有发出来,就算完事了。

窃以为,这样做有一丢丢不负责任。。。

优秀的你,会怎么做呢?

你可以用LabVIEW,花了7天时间,自己开发了一个工具,读取dbc和blf文件。提取其中的信息,就能实现了二者的双向核对,并且自动出具格式精美的测试报告。

完美识别各个网段的多发、漏发、错发,2分钟即可自动分析完成。

不查不知道,一查吓一跳,借助这个用LabVIEW开发的工具,你甚至会发现了好几个很早就存在了的问题。

有好几个网段、ID都和设计状态有出入……

然后由于这项贡献,你被大领导重重地表扬了一把,心里美滋滋的。

LabVIEW技能加持,完美实现,汽车行业复杂测试的图18

从此之后,这个行业痛点被彻底搞定,公司内部这个业务方向归你占有。


场景2

LabVIEW技能加持,完美实现,汽车行业复杂测试的图19

公司的试制样车,新开发的网关死机,再也不工作了。

网关供应商也承认是质量问题,并保证抓紧整改。

可是,车型计划不等人呀,当务之急网关缺件。于是项目组决定,临时去买个网关快速原型回来装上,并紧急申报预算50万。

你自告奋勇,把这个活儿接了下来,告诉项目经理,不需要花这50万,给你3天就能搞定。
因为你会用LabVIEW调用各种品牌的CAN工具,所以你就找了一个6通道的CAN设备,按照网关的功能需求,用LabVIEW实现了转发功能,并在样车上获得了成功。
供应商的网关,25天之后完成了bug修复,不死机了。
但是无论如何,这22天里,你是最亮眼的员工之一,是项目的大功臣!

场景3

LabVIEW技能加持,完美实现,汽车行业复杂测试的图20

公司的HIL测试工作,急需协同、横向配合,需要远程操作,避免形成“业务孤岛”、一直不显成绩。

由于你既擅长LabVIEW,又很懂Web开发,还很擅长HIL,这个事情又落到了你头上。
你自然没有让公司和领导失望,3个月之后,一整套拥有完全自主知识产权的远程HIL测试体系就开发并部署完成了。
提交测试用例、查看测试报告、查看统计数据……一系列的工作只在浏览器中就可以完美完成。
HIL测试工作从此变得更加有趣好玩,输出物也更加丰富,HIL测试在领导眼中的地位也是持续上升。

场景4

LabVIEW技能加持,完美实现,汽车行业复杂测试的图21

公司的NM网络管理总体采用的是osek,统一要求各个控制器的供应商按照公司发布的osek【企标】网络管理规范予以实现。

但是,这个规范有一些自定义的部分,供应商可能会理解错、做错,而且部分供应商是没有osek协议栈开发经验的,也可能做错。

这就要求你们公司具有osek网络管理功能自动化测试核查的能力,保证对产品质量的控制,确保心中有数。

向供应商询价,购买这样一套工具,对方报价60万,开发周期9个月,且后续如果修改,另行收取开发费。

费用是“小事“,你们公司可能“不差钱”,但是9个月的时间还是太长了。
最终这个事情还是落到了你的头上,因为你懂LabVIEW,还会用LabVIEW调用CAN,也会用LabVIEW调用继电器设备,还会做复杂数据分析,并且对各种数据格式都很精通。
你做了5页的PPT,向领导证明了这个东西自主开发的经济性、、可靠性、可行性。
最终你花了1个半月的时间,花了3000块钱的物料成本,完成了这项工作。
结果也是相当的漂亮,各种供应商,所犯的五花八门的错误,都被你一一查出,在测试报告中一一罗列,手把手指导供应商逐一修改,直至没有任何错误……
很好,你又重重地出彩了一次!!


场景5

LabVIEW技能加持,完美实现,汽车行业复杂测试的图22

你们公司前年买了一套高大上的HIL设备,供应商当时说,改一下工程配置、模型、修改一下线束,啥都能测,BMS、VCU、EMS都能做。

但是,改来改去几次之后,设备出了点小问题,质保期也过了,没人管了。

领导想把仓库的一堆第三方板卡用起来,用CustomDevice来实现,做好多套紧凑型HIL,放办公桌上用。

OK,你的机会又来了,因为你会开发CustomDevice,然后你又一次成为了“突出贡献员工”。

那一排紧凑型HIL,整齐划一地站着,跟示威似的,就是你的成绩,你又牛逼了一把。


为什么是LabVIEW?

LabVIEW技能加持,完美实现,汽车行业复杂测试的图23

师子一号对汽车电子测试技术有深入的研究,对各种开发语言均有应用经验,比如python、C#、java、Matlab、LabVIEW,但是最终还是发现,对汽车行业的测试分析工作而言,还是LabVIEW最好用、效率最高。

LabVIEW是汽车黑盒测试领域最优秀、最简单直观的工具,没有之一,它能够让我们的工作轻松得像混日子一样,而成果产出却硕果累累!

LabVIEW的主要特点

  • 图形化编程界面,非常直观、友好,编程不烧脑,debug不烦躁,长期使用也不辛苦、延年益寿。

  • 入门非常简单,试用广泛,所以几乎所有的工控硬件、CAN卡、数采设备,都支持LabVIEW,淘 宝上卖的数采板卡,几乎都支持LabVIEW,都会提供LabVIEW的二次开发例子。

  • 网络上的资源、开源库、商业库,非常丰富,非常方便直接拿来用。


登录后免费查看全文
立即登录
App下载
技术邻APP
工程师必备
  • 项目客服
  • 培训客服
  • 平台客服

TOP

1
2