项目实战|100个蓝牙接收器发货了

还记得之前写的这篇文章不:《一个蓝牙实战项目的掏肺总结》,这个项目最近做完了,交了100套出去,这是发货前的大合照:

e49c5dc386ba193dd726ca9329956f19.png

做完此项目,有些许收获,在此分享给大家。

东西虽简单,但它依然是一个独立完整的硬件产品,所以会涉及到和产品相关的方方面面,包括研发采购生产测试销售等环节,下面逐一对应简单说一说。

1. 研发

研发阶段,刚开始通常会用现有的开发板来实现功能,做前期的方案验证。比如这个项目一开始我就是用的开发板来做功能验证的。

e1ba37b8ea1e82a147ad221436395c23.png

在开发板上验证通过后,就可以画板、制板了,画板包括原理图设计和PCB设计,制板就是将PCB文件交给板厂去加工生产,这是第一次在捷配上做回来的小板子

423dc21be76c7a11bdd24aff55c568f8.png

在这里得夸一夸立嘉立创和捷配,在这种在线平台做板子真的非常便捷、实惠,只需要几十块钱,板子投出去很快就做好发过来了。

板子做完就是焊接了,研发阶段能手焊最好手焊,因为比较方便。这个小板上肯定是直接手焊了。说到焊接,我第一次焊这个板子上邮票孔的模块时,不小心把几个引脚搞到一块了,倒腾了半天才弄开,所以还是有必要练一练焊接技能的。这是焊接后的样子:

81e140aaa453d6b072c4ef481ede427d.png

焊接完之后,就是下载程序和功能测试。

之后就可以装壳了,外壳一般可以选择现有的公模外壳或者自己重新设计,对于这个项目自然用现成的外壳更合适,这是当时找的一款外壳,装上去还有点不合适,盖子合不拢。

b11e2aa99b45f8ecc7706b5e457ed482.png

后来把它也发到了现场做了测试,还可以看到当时我在外面绑的透明胶带

d614e96a3dc93cb324fbd666c62b8527.png

PCB和结构,通常需要相互配合。对于本项目,选定了外壳,那就得PCB配合着外壳去做。

因为不合适,所以后来改动了一版,

这是改动之后的PCB,主要做了两处调整,一是把板子的厚度降低了,从原来的1.6变成了1.0,同时板子长度做了略微的减小。

fd452c7f704b093cb8e3ca26c70146df.png

再后来又找了一款外壳,更好看、牢固且价格也更优惠。

1ad5e88d71a2ba3e68786fba64ac6469.png

这些都验证通过之后,就可以进入到小批量生产环节了。

2. 采购

因为客户需要100套成品,那就需要采购这100套成品需要的原材料,包括PCB、元器件、外壳、贴纸等和产品相关的所有东西。

采购不就是花钱买东西吗,这还不简单嘛,其实并不是。咱们这行业的采购不是花钱买萝卜白菜那种,是需要有一定知识的,比如买的东西的参数、渠道、供货周期、质量、价格等。一般公司都是有专门的采购岗位,采购人员事关公司的成本,进而影响产品的利润,所以至关重要。

客户需要100套,还得多买一些,因为要留些裕量,在采购的过程中当时就遇到了小问题,当时买一颗CH9328芯片,之前买立创商城买5片的时候还有货,后来再次买的时候缺货了,于是就在各个平台包括云汉芯城、在芯间等平台找,最后才找到一家有货的。

3. 生产

生产,就是规模化的做出来一批产品。也就是采购来的分散的元器件变成最终的产品。

大公司有专门的生产厂房、设备和人员,其中包括SMT、组装等环节。

这个100套,本来准备机器贴的,但是综合时间、成本、焊接难度等因素最后选择了手焊的方式,当然不是我自己用烙铁一个个焊的,那不把我累晕了。找了一个专门焊接的师傅,很快就焊完了。

焊接之后下载程序,然后装壳,100多个还是需要花费些时间的,这次也体验了一下工厂工人的工作。

这是下程序现场,使用了飞针大法,

ac5a1ec509b40baf509def5702589f09.png

4. 测试

此项目的测试就比较简单了,上电后,手机搜索到蓝色设备,连接后,发送数据,查看是否接收正常。

bbb7e3ae30560abb0067b48a5c6b998a.png

本来想着抽测,但是发现测试时间也不长,加上我相对认真的做事态度(自吹自擂了下..),还是每个产品都测了一遍。

5. 销售

销售就是把东西卖出去,这可是个大学问,客户为什么要从你这里买东西呢?

在我看来,销售这个人一定要靠谱,比如你要设身处地的解决客户的问题,答应客户的事情要做到,等等。说来话长,以后慢慢再说。

此项目主要就是合同条款的确定,包括交付物、合同金额、付款方式、交货周期、发票、保修期、违约责任等内容。

一般是甲乙其中的一方按照合同模板,先拟定一份合同,双方沟通确认后盖章、执行。

6.结束语

这个项目,对我来说最大的意义看到自己做的东西,可以被真正的使用,非常有成就感。至于赚钱,说实话,是次要的,因为当时朋友找到我,我只是想着把这件事情做好,确实没有把赚钱放到首位。

大部分人在公司里上班,都只是负责上述环节中的一部分内容,在这个小项目里,除了板子不是我自己画的,其他环节基本都是我一个人完成。大家如果有机会的话,最好能完整的参与一个项目或产品的所有环节,不论对日常工作还是未来个人发展都很有帮助。


推荐阅读:

专辑|Linux文章汇总

专辑|程序人生

专辑|C语言

我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/464806.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

删除list中的一个节点

1、删除list中的一个节点,给定位置为i typedef struct _list_t { struct _list_t *next; int data; }list; void delete_node(list *head, int i) {list *p head, *q NULL;int j 0;if ((NULL head) || (0 > i)){return ;}while ((NULL ! p) &&…

内存不足 java.lang.OutOfMemoryError: Java heap space

问题描述Exception in thread "main" java.lang.OutOfMemoryError: Java heap space 解决方案[转] 一直都知道可以设置jvm heap大小,一直用eclipse写/调试java程序。一直用命令行or console加参数跑程序。现象:在eclipse的配置文件eclipse.ini…

【读书笔记】【独立思考】2018-04-03(1)

所有的事物都没有起点,也没有终点,有的只是过程。 不然的话,起点又是从哪里来?起点之前是否还有起点?终点又是从哪里来?终点之后是否还有终点? 从无中来,到无中去,中间的…

深圳的冬天真的来了

天气预报说,明天深圳的天气会很低。热了一整年,这次一定是真的了,大家出门记得穿厚一些。

date js 半年_moment.js 搜索栏获取最近一周,一个月,三个月,半年,一年时间

统计时间label: 统计时间,name: countTime,type: select,data: [{value: 0,text: 最近一周},{value: 1,text: 一个月},{value: 2,text: 三个月},{value: 3,text: 半年},{value: 4,text: 一年}]实现方式searchValue为搜索栏所选所填内容, 以及作为搜索和接口调用条件…

判断CPU大小端模式

int CheckCpuEndian(void) {union{int a;char b;}c;c.a1;return (1 c.b); } 返回1为LittleEndian。 联合体union的存放顺序是所有成员都从 低地址 开始存放, 若是小端模式,由低地址到高地址存放为0x01 00 00 00,c.b被赋值为0x01 CPU有两种字节序&a…

华为eudemon 200E的hrp双心跳热备配置

本文为大家介绍使用两台华为Eudemon200E防火墙实现双机双心跳的HRP热备的配置实例,主要的知识点包括:华为防火墙HRP、VRRP的配置,定义防火墙区域。 一、网络拓扑:二、配置要求: 1、两台防火墙为E200E-A和E200E-B&#…

【洛谷比赛】你的名字。

前言 打比赛的原因只是因为对君名的喜爱! 好吧,准确来说没有参赛,只是赛后研究了一下题。我觉得出得蛮好的,优于昨晚那套题。 由于题不是那么水了,我就分开发题解了。 题解 T1 线索 T2 日常 后记 这套题质量确实不错&a…

2021 年 Linux 界的 12 件大事

2021年即将结束了,今天就和大家分享一些来自Linux世界最重要的大事,这些事件大大影响了Linux用户:1、理查德斯托曼回归2019年,自由软件基金会(Free Software Foundation)创始人理查德斯托曼(Richard Stallman&#xff…

alloca函数的风险_alloca的函数范围中的goto是否有效?

实际上,规则6.8.6.1规定:A goto statement is not allowed to jump past any declarations of objectswith variably modified types.在您的代码中,不存在具有可变修改类型的对象. alloca不声明对象(编译器必须关注).因此,没有类似于alloca的范围,并且没有理由在规则…

atoi()

atoi():将一个字符串转换为int型数 int atoi(const char *str) {assert(NULL ! str);int num0, sign1;while (*str || *str \t){str;}if (*str -){sign-1;str;}else if (*str ){sign1;str; }while (*str ! \0){if ((*str > 0) && (*str …

矩阵的变换。包括缩放、平移、错切

矩阵的变换。包括缩放、平移、错切-the transformation matrix. Incl...原文链接 #include<graphics.h>#include<math.h>typedef struct Matrix{float _a11,_a12,_a13;float _a21,_a22,_a23;float _a31,_a32,_a33;} Matrix;typedef struct Vert3{float x;float y;f…

关于Treap的学习感受

好了我就很愉快的回来补坑了~ Treap也是一种平衡树&#xff0c;它较普通二叉查找树而言&#xff0c;每个节点被赋予了一个新的属性&#xff1a;优先级&#xff08;没错就是类似优先队列的优先&#xff09;&#xff0c;对于Treap中的每个结点&#xff0c;除了它的权值满足二叉查…

2022年考研结束了

为期两天的研究生考试结束了。我没参加研究生考试&#xff0c;所以对研究生考试的压力不从得知&#xff0c;我从一个外人的角度来看&#xff0c;这无非就是一个简单的考试&#xff0c;考上了欢喜雀跃&#xff0c;考不上嘛&#xff0c;我就会说&#xff0c;大不了来年再考一次&a…

挂“洋头”卖奶粉,澳优还要欺骗好久

澳优奶粉近期被质疑非进口产品&#xff0c;公司总部实为湖南一家贴牌商。该奶粉生产商澳优乳业公司回应称其为“国外产品与本国品牌相结合”的国际化企业。但奶粉包装仍被质疑误导消费者&#xff0c;且售价偏高&#xff0c;澳优方称“与其高端品质相比只属于中上水平”&#xf…

DefWindowProc

简介 函数功能&#xff1a;该调用DefWindowProc函数时使用窗口过程接收的相同参数。函数原型&#xff1a;LRESULT DefWindowProc&#xff08;HWND hWnd&#xff0c;UINT Msg&#xff0c;WPARAM wParam&#xff0c;LPARAM IParam&#xff09;&#xff1b;功能 DefWindowProc这个…

mysql通过局域网访问数据库_MySQL数据库之局域网内访问同一个mysql数据库

本文主要向大家介绍了MySQL数据库之局域网内访问同一个mysql数据库 &#xff0c;通过具体的内容向大家展现&#xff0c;希望对大家学习MySQL数据库有所帮助。局域网内访问同一个mysql数据库。一、运行cmd&#xff0c;输入mysql -u root -p。二、输入mysql数据库密码&#xff0c…

排序算法之冒泡排序(C/C++)

冒泡法排序&#xff1a;平均时间复杂度O(n*n) 最差时间复杂度O(n*n) 比较相邻的元素。如果第一个比第二个大&#xff0c;就交换他们两个。对每一对相邻元素作同样的工作&#xff0c;从开始第一对到结尾的最后一对。在这一点&#xff0c;最后的元素应该会是最大的数重复以上工…

约翰·冯·诺依曼:一个向上帝买了挂的男人!!

来源|David 小咸鱼/新智元约翰冯诺依曼是20世纪最有影响力的人物之一。从原子弹&#xff0c;到计算机、再到量子力学、气候变化&#xff0c;你可能很难再找出像这样对我们今天的世界和生活影响更大的科学家了。在20世纪的天才中&#xff0c;有几个杰出的人物&#xff1a;爱因斯…

mysql pdo prepare_PDO::prepare

PDO::preparePDO::prepare — 准备要执行的SQL语句并返回一个 PDOStatement 对象(PHP 5 > 5.1.0, PECL pdo > 0.1.0)说明语法public PDOStatement PDO::prepare ( string $statement [, array $driver_options array() ] )为 PDOStatement::execute() 方法准备要执行的S…