找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4067|回复: 1
收起左侧

灰常时期做的灰尘检测器

[复制链接]
ID:71235 发表于 2014-12-27 20:57 | 显示全部楼层 |阅读模式
      这个真的是灰常时期做的这么个小东西~
      极客群体很多人做用GP2Y1010或者GP2Y1050做了PM2.5检测,我也很想做一个,但是我不认同这么个40块左右的东西真能检测PM2.5,所以我老老实实的称他为灰尘检测器。10月末买了个GP2Y1050,项目正式上马。
      方案大致有这些选项:显示器用LCD1602或者4位段式液晶,系统用M8做核心,用arduino编程或者直接用C,电源用聚合物或者18650或者外部电源供电,GP2Y1050用串口输出或者模拟量输出。还是老规矩,先用arduino快速编程验证一下模块读取、显示等基本功能,确定基本功能能够实现,然后是上面包板编写程序,最后打板调试,完成项目。经过权衡,最后方案是这样的,显示用LCD1602,直接用c编程,采用串口方式接受数据,3个按键实现内容切换、上限、开关设定、背光调节、统计值清除等功能,电池用18650,因为GP2Y1050要求5v供电,所以,系统的充电升压完全采用了上次做大字液晶钟的方案,而且不用考虑效率问题,因为用LCD1602本来就很耗电,开了背光后,升压损耗都可以忽略不计了,系统带串口输出口和开关输出口,可以当采集终端和控制中心,控制空气过滤器等设备,本来是要装上温湿度模块的,想想必要性不是很大,用SHT10太贵了,用廉价但是精度很差的DHT11又不甘心,最后还是放弃了。
     11月1日周末,项目正式启动,用面包板搭建了系统,开始编程。陆续用了三四个周末完成了编程工作,然后用了2天的午休时间绘制了PCB,因为大部分元件都是贴片元件,所以这次PCB绘制是以底层为基准开始绘制的,作为直插的LCD1602在顶层,从底层看过去,元件必须是镜像,所以要特别小心。11月22日这一天晚上,开始制作PCB了,因为担心做错,反复校对了校对,可就是太小心了,结果图纸打印的时候打反了!等到做出PCB,开始钻孔安装元件的时候,才发现PCB做反了,彻底报废!按照过去的脾气,这已经算是重大挫折了,项目很有可能半途而废,至少也要拖上个半年一年的,但是我现在正在改我的拖延症啊,所以下定决心,明天早上重新做一个。
     可就是悲剧发生,消化道大出血,差点挂掉,然后是住院10天,昨天也就是12月3日才回到家里,因为医院恢复的还行,觉得出院当天就开始重做PCB!傍晚的时候PCB完成,修补好缺陷,先焊好电源系统,确认充电升压,以及输出全都正常后,焊接好M8,和LCD1602的插座,通电,只看到一行黑格,当时有点蒙了,仔细一想,原来M8程序还没烧进去!烧好程序后,1602显示出来了数字英文字母,也就是说系统以及在运行了,只不过灰尘数值总是显示是0,这个问题困扰了好久,先是怀疑系统死循环了或者死机了,然后又怀疑是GP2Y1050损坏了,最后查出来是GP2Y1050的VLED端的电容接错了,应该一头接VLED,另一头接到地,我错接到了VCC,修改好后,灰尘数值马上活蹦乱跳了,改了改程序,按钮也有用了,一直闹腾到9点半,看了大出血没有损坏我的大脑~。板子最后发现2处错误,1处失误,1处错误就是上面的 VLED问题,还有就是LCD1602的背光电阻,本来用电阻接到地的,我错接成用电位器输入电压了,1处失误是没有加入电源开关接口,这样以后充电的时候就必须开着电源了。

      本来大病初愈,应该整日躺床上的,但是为了现在不拖延,今后也不拖延,还是一口气把它完成了吧。

      裸奔状态的






上面的是错误的,下面是正确的,一些焊盘也改成长圆型的,以增加强度
回复

使用道具 举报

ID:497598 发表于 2020-3-27 22:49 | 显示全部楼层
老哥,我对GP2Y1010的串口读取不太明白,最近一直在困扰这个,可否分享一下程序
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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