嵌入式项目研发到量产的流程

本篇文章讨论嵌入式产品的设计到量产的一个完成流程,以车联平台TBox设计为例。

流程简述
1)需求方提需求,项目组对需求进行分析
2)项目组给出设计草案和产品概念模型
3)设计产品原型
4)生产硬件和外壳进行小批量验证
5)针对硬件进行大规模量产

1、需求分析
需求是一款Tbox设备,能够采集和上传发动机和CAN广播数据,以及GPS等信息,还能够实现远程控制、离线存储等功能。
针对需求进行拆分,就需要:1、能够进行网络通讯;2、能够采集GPS信号;3、能够与车辆进行常用的CAN总线通信;4、实现数据采集和上传的业务需求;
讨论和确定需求方对产品的软硬件指标要求,如网络速度/实时性、采集和上传最小频率/最大数据量、数据采集率/有效率等等。

2、给出设计草案
一般商业化产品很少是原创的,大部分是吸收其他家产品的方案进行有特色的自主化设计;针对Tbox设备,也是拆解友商设备来分析和评估其实现方法和用料。
真正的决策点还是降本、提效,怎么才能降低成本并且性能还不受影响?怎么操作才能让硬件的性能提升?这些往往是需要自己研究才能突破和领先的。
1)针对网络通讯,可使用市面上通用的“4G-Cat1模组通讯方案”;芯片操作模组进行MQTT网络连接和数据透传等操作;
2)针对GPS,选用GPS芯片并设计外部天线,实现GPS信号的采集和传输;
3)基于车辆的通用OBD口,实现电路切换(OBD口有16个针脚,除了电源和GND脚外,都可以作为通讯脚但各种车型的定义不同);
4)实现车辆CAN通信和CAN协议下沉、集成;
5)基于SD卡和Fatfs方案实现离线存储功能;
6)进行芯片选型,并设计软件框架,预估硬件性能;

3、设计产品原型
根据自己的设计草案,1)设计产品的外形、外观,2)设计PCB板进行模拟验证;
产品外形、外观,一般由需求方或结构设计工程师给出初步的三维模型图进行设计;如果有类似的产品定义或外形,可以采用公模或共模设计,节省一笔设计开支。
PCB板的设计由硬件工程师进行设计,硬件设计需要考虑的东西方方面面,而且一旦出现问题基本只能返厂维修。

4、进行小批量验证
基于生产出来的PCB板子,进行电路验证和驱动开发,再基于此开发应用程序。
小批量验证中,一般会暴露出来的都是硬件问题,要么是硬件设计遗漏、不足,要么是硬件设计出现缺陷,或者是部分模块设计方案不达标需要重新设计,所以这一阶段一般以驱动开发和验证工作为主。
特别的,应用层业务代码的开发,是可以和产品原型设计同步的。可以先明确好自己需要的驱动接口,在开发/demo版上进行开发。应用层开发在此阶段的任务,一般以架构移植和功能测试、发布为主。嵌入式应用设计最好先考虑好架构设计,方便后续代码移植和优化。

5、进行大批量生产
此阶段的特点就是降本、裁剪,以及软件版本的高速迭代。
验证阶段,PCB板的用料一般都是不计成本的,但是到了大批量生产,涉及到采购部门采购(和芯片短缺问题)就需要裁剪掉高成本模块,电路也要替换低成本材料;同时还要进行软件功能验证测试,直至到稳定版本,其中主要的问题就是软硬件的兼容性能。
生产阶段,一般都需要进行产品工装测试,验证硬件模块的通讯是否正常,解决由于产品生产过程中出现的虚焊、缺料和芯片损坏等因素导致的硬件损坏。
该阶段软件架构基本已经确定和开发完毕,需要解决的是根据需求方的指标进行验收,所以这个时间段内会有大量的版本迭代直至稳定。

6、问题反馈、验证和解决
即使产品能够大批量生产之后,也会出现软件bug和硬件故障,需要分析和定位原因,并迭代硬件设计方案和软件版本。出现bug的因素方方面面,有可能是用户环境特殊,也有可能是用户操作不当但硬件无法抵御,以及更多方案设计时未考虑到的问题。

上一篇:基于MTK方案AG3335芯片设计的款超小型超低功耗定位器


下一篇:CANgps — 无论你在哪,我都想找到你