8971| 3
|
[项目] 【骑驴玩儿漂移】原创-废物利用之DIY家用甲醛测试仪 |
好久没有来论坛踩踩水, 发现牛人辈出,后生可畏~ 于是乎,趁着高温,赶紧准备了一篇帖子共各位在炎热的夏天窝在空调房的小伙伴们有个避暑的消遣。(太高估自己了,估计没有人看。哈哈) 话说, 用了自己半辈子的积蓄加上老婆家人一辈子的积蓄, 再加上我老爸老妈一辈子的积蓄,终于在上海买了一间一亩三分地的房子,砸锅卖铁装修完后, 还没有搬进去, 通风透气了快半年了,可老婆总是说家里还是有味道,我也想检测一下,但是市面上甲醛检测仪器的价格都比较贵, 也不经常会用到,这个市场有时候很小众, 现在的很多新风系统上就能够检测, 但是又不想买新风系统, 不是不想买,是没钱.....反正是各种没钱, 没钱怎么办? 很快要搬家,最近收拾东西的时候, 突然发现角落里面一个不起眼的盒子里藏着一个没开封的 mq138有机气体传感器模块, 还有一堆1602啊, Nokia5110也有一个,但是从来没有用过...突然想到是否能用现有的硬件组一个甲醛测试仪呢?(实际上做出来没有检测到甲醛, 因为不知道怎么写算法... 好吧,现在想法是:
步骤1: 先去搜一下各种传感器的 datasheet,了解一下特性,然后就有了下面这些 datasheet. 新的社区不知道哪里上传文件,所以只好给你们看看名字,自己搜索啦.. 原理图看完了就准备画图了...中间遇到很多问题, 首先是,我的苹果电脑上无法安装 AD, 跑虚拟机又觉得 windows 不习惯... 所以就安装了 eagle 这个开源的软件,其实还挺轻量级的,就是里面的封装和库都太老了... 很多都是直插...搞得我很多东西都要自己画封装... 中间省去各种折腾...终于原理图画好了! 原理图: 其实很简单的.你们应该一眼就看懂了.哈哈,没错~我就是用的 Atmel 的328p 的拆机芯片... 接着是 layout: 比较丑, 各位高手, 大神手下留情,不要吐槽的太狠,这是第一版, 请别让我没有开发第二版的勇气... 我这个全开源哦,大家有兴趣都可以试着做做看.. 然后各种焊接...慢工出细活儿... 话说这次打板花了我快一周的时间才拿到....之前元器件涨价比较凶..特别是电容..电阻... 还有一些瑕疵需要继续改进改进啊.. 然后就是焊接....原则是,先焊小的,再焊大的,最后焊接直插件....哈哈 焊接完一定要用万用表测试一下是否短路, 一定, 一定, 一定要测试后再上电. 不然有可能遇到蘑菇云, 猛一点儿的直接一上午的工作白做了... 我使用 USB-ASP 直接下载到板子上的,没有安装 BootLoader, 因为没有引出串口. 焊接了两个,但是只有一个 Nokia5110, 回家再找找,也准备去网上淘一下,估计价格低的出奇. 你你如果想更小巧还可以试试 oled 的屏幕,那个看上去更高大上一些,当然了, 如果用 oled 成本也上去了.看个人的喜好了! 背面一个18650的大电池盒.. 屏幕上去了,除了颜色有点儿不搭,其他的感觉还是很不错的.. 再来点儿别的地方的谍照,背面看看效果,这个 mq138的传感器像不像测试酒驾的啊? 侧面也来个特写 顶部的特写,位置刚刚好,简单粗暴,还不带套~ 两节之前笔记本电脑的电芯, 拆出来就是18650, 平时做树莓派小车的供电电源,今天来给我捧个电场... 开机后,需要稳定大概10秒的样子,然后读数就比较稳定了, 这个数值是我直接读取到的模拟值, 并不是甲醛的具体含量, 我查资料说 mq138品种好多..不知道这个模块是什么品种的, 我淘宝上淘来的,估计当时花了没几块钱...这个应该是最便宜的那种... 代码也非常简单: /*************************************************************************** Created by: 骑驴玩儿漂移 License: GPL? No, 全开源! 随便你怎么折腾! 电路图和 bom 表回头放在 github 上(稍安勿躁) ***************************************************************************/ #include <Wire.h> #include <LCD5110_Basic.h> LCD5110 myGLCD(3, 4, 5, 6, 7); extern uint8_t SmallFont[]; extern uint8_t MediumNumbers[]; extern uint8_t BigNumbers[]; float mq138 = A0; void setup(void) { pinMode(mq138, INPUT); myGLCD.InitLCD(); } void loop(void) { int a = 70; myGLCD.clrScr(); myGLCD.setFont(SmallFont); myGLCD.setContrast(a); myGLCD.print("YOYOJACKY TECH", 0, 0); myGLCD.print("Formaldehyde" , 0, 8); myGLCD.print("CH2O Concent:", 0, 16); float data = analogRead(A0); if (data < 300.0) { myGLCD.printNumF(data, 2, 0, 24); delay(200); } else { myGLCD.print("Warning!!!", 12, 32); delay(200); } } 回家后给老婆一看,被吐槽的体无完肤: 1. 老婆大人: 你前面那个红灯什么意思? 我: 电源灯啊. 2. 老婆大人: 电源灯那么亮有什么用? 我: 就这个亮度啊. 3. 老婆大人: 你应该用红色灯表示甲醛超标, 黄色表示还行, 绿色表示空气质量良好!! 都不懂得用户体验还装什么产品经理? 我: ....下次改还不行么? 4. 老婆大人: 你为啥不搞个外壳让我好拿着.... 我: 3D 打印机你回家看电影嫌吵又不让开,白天开着猫主子没事儿就老去捣乱...晚上又不能打... ..... 不过, 虽然对我吐槽了很多,但是她还是拿起来仔细研究了一会儿,左一个造型,右一个造型,发朋友圈去炫耀了...... 大家也可以尝试一下,有空多玩儿起来啊! 我是骑驴玩儿漂移, 菜鸟中的小白,小白中的战斗机.... 你们谁知道怎么计算和校准MQ138传感器的方法,请不吝赐教哈! 目前显示的内容并不是真实甲醛的值,还在摸索中,等我整理好了会将PCB,bom表,还有代码开源。 请各位看官拭目以待~~ |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed