BH1750 传感器实战教学 —— 硬件设计篇

news/2024/11/28 0:52:59/

前言

前面刚写了一篇 《BH1750 光照传感器文档详解 及 驱动设计》,今天来写一篇简单的传感器实战教学。

文章如下:BH1750 光照传感器文档详解 及 驱动设计

那有些朋友就疑惑了,在上一篇文章其实我们基本都测试成功了,驱动也写了,还有必要在写一篇吗?

如果是用 STM32 做的一个普通产品,确实没有必要再过多说明,但是我们本次的应用稍微特殊一点,需要在一个 51 内核的低功耗无线芯片上使用这个传感器。

硬件上除了低功耗的设计不能少,I2C通讯还需要做电平转换,软件上产品的驱动也需要修改移植。

这种针对有现成驱动和参考资料的传感器实际应用,也有很多初学者不太明白,本文的目的就在于给新人做个实际应用示例,便于大家以后在对面不同应用的时候知道怎么处理。

我是 矜辰所致,全网同名,尽量用心写好每一系列文章,不浮夸,不将就,认真对待学知识的我们,矜辰所致,金石为开!
插一句,技术群在 CSDN 文章结尾后面的的推广,讨论学习。

目录

  • 前言
  • 一、整体说明
  • 二、 AD 绘制 BH1750 封装库
  • 三、 原理图设计
    • 3.1 BH1750 小板子
    • 3.2 芯片板
    • 3.3 传感器供电
      • 方式一:低静态电流 LDO
      • 方拾二:MOS 管开关
    • 3.4 传感器通讯电平转换
  • 结语

一、整体说明

我们上文提到的测试是使用市面上现成的模块,我们只需要连接 4 根线即可完成测试。 但是本次实战,我们需要了自己设计电路图,而且要针对低功耗的应用,所以有些地方有必要说明。

本次采用的无线芯片为 Enocean 芯片,其实不是很通用,国内只有极少的的公司在使用他们的技术,但是这并不影响我们说明传感器的使用。

方案已经确定为 3.6V 的电池供电,需要尽可能的低功耗,处理芯片为 51 内核,I2C 电平为 1.8V。

本次的示例方案很简单,需要用心考虑的地方如下几点:

  1. BH1750 的 供电处理;
  2. BH1750 的 通讯处理;
  3. BH1750 驱动的移植;

二、 AD 绘制 BH1750 封装库

既然是实战,而且我们的 BH1750 是新接触的,要画原理图第一步当然是先画 BH1750 的原理图和 PCB 库了(因为本次是个人学习,所以对 AD 不算侵权 )。

打开 AD ,我们可以打开自己的 库文件,如果没有自己的库文件,可以任何找一个,自己新建也可以,但是一般来说,如果要长期使用这个软件,还是建议自己有自己的一个库文件,这样也方便自己往后项目的设计:

在这里插入图片描述

根据下图进行操作,点击自己的原理图库,打开 SCH Library:

在这里插入图片描述

我们根据手册画好 BH1750 的原理图如下:

在这里插入图片描述

原理图库绘制完成我们还需要进行 PCB 封装的绘制,这时候又需要用到我们的传感器资料了, PCB 封装的设计需要参考下图:

在这里插入图片描述

我们需要用到 AD 自带的一个 封装管理工具,如下:

在这里插入图片描述

手册上面给我们的说明 BH1750 为 WSOF 封装,这里我们并没有对应的,但是我们可以选择一个合适的封装对应 SOP ,如下:

在这里插入图片描述

根据手册参数,填入适当数据,因为封装不是一致的,所以这里需要自己的判断,我填入的数据如下:

在这里插入图片描述

最后生成的封装如下,如果觉得不合适,我们还可以在此基础上微调,如下图:

在这里插入图片描述
保存 PCB 封装,最后我们把 PCB 封装和原理图关联起来:

在这里插入图片描述

最后重新加载一下我们使用的 PCB 库文件:

在这里插入图片描述

就可以在画原理图的时候使用这个封装了:

在这里插入图片描述

三、 原理图设计

原理图设计我们这里考虑的点上面已经说了,因为整体方案是简单的单品传感器,主要注意如何能够保证低功耗。

3.1 BH1750 小板子

考虑到光照传感器的性质(产品设计中外壳是不得不考虑的一个问题):测量光照需要外壳透光,所以对一般的外壳来说,PCB的布局会是一个问题。

为了把这个问题简化,我们本次的示例计划把光照传感器单独做一块小板子,小板子的好处是更容易的适应各种外壳。

这里我们用到我们在手册中我们看过的参考电路了,直接使用推荐电路图即可,如下图:

在这里插入图片描述

使用小板子的好处是,以后即便不用这个芯片,这个小板子还是可以直接使用的。

3.2 芯片板

芯片板子,就是上面提到的我使用的 Enocean 芯片,一个最小系统,这里因为某些原因就 不放出原理图,但是也不会影响我们说明问题,因为芯片出来与传感器连接 的也只有 2 根线, SDA 和 SCL 。

供电是很简答的:

在这里插入图片描述

3.3 传感器供电

传感器供电问题是本文重点之一,本次方案供电为 3.6V 的电池供电,我们在资料中知道,传感器电压最大是可以达到 3.6V 的:

在这里插入图片描述

所以其实我们这里可以直接使用电池过来的电源。

但是这里我们要注意一个问题,传感器一直供电是有消耗的。一般低功耗的传感器大部分情况下是处于休眠状态,传感器并不需要一直工作者。我们可以使用一个简单的电路切断传感器的电源。

当然我们通过手册知道,BH1750 传感器在 Powerdown Current 模式下面的电流很低,最大才只有 1uA 的电流消耗,如下图:

在这里插入图片描述

1uA 的电流消耗其实算是很小了,因为我所用的芯片最小系统随眠模式的电流 大概是 5、6uA,但是这里写了一个条件, No input Light ,就是没光照的情况,但是我们传感器很多情况下,即便有光照我们也不需要他工作,所以这里电源控制电路是加定了。

电源控制电路怎么选,这里我不废话,直接推荐两种方式:

方式一:低静态电流 LDO

使用超低静态电流低压降线性稳压器控制 传感器的 电源,EN 引脚为供电开关引脚,如下图:

在这里插入图片描述

注意,此电路控制选用需要保证静态电路越低越好,因为 LDO 一直通电,他自己也有能量消耗。 但是这个电路的好处是可以提供稳定的电源,有些传感器的耐压值只有 3.3V ,甚至是 3.0V (使用 TPS78230),需要 LDO 降压。

方拾二:MOS 管开关

通过 MOS 管开关,可以直接切断传感器的供电,而且消耗极低,考虑到我们的 BH1750 传感器可以支持 3.6 V 的供电,我们本次采取这种方式 :

注意,开关电路是由 一个 PMOS 和一个 NMOS 构成的!

在这里插入图片描述

而且还有一点,此方法成本低。

3.4 传感器通讯电平转换

传感器通讯,在《BH1750 光照传感器文档详解 及 驱动设计》文章中,我提到过,使用 STM32 的时候, BH1750 都不需要做电平转换, SDA 和 SCL 可以直接和 STM32 的 IO 口连接。

但是在我们本次设计中,使用的芯片 I2C 引脚电平为 1.8V,就是下图中的 DVDD 为1.8V的电平,所以需要电平转换,如下图:

在这里插入图片描述

电平转换电路的说明可参考我的另外一篇博文:结合实际聊聊电平转换电路(常用电平转换电路总结)

图中预留了两个端子(其实两个接口不相同),一个是为了接收头现成的传感器模块方便测试,另外一个就是给我们自己设计的传感器模块预留的。

这种预留的测试在实际产品的设计中是很有用的,再产品设计初版的时候,如果产品出问题,可以更快的查出问题所在。

至此,加上芯片最小系统,我们的一个低功耗的传感器就设计完成。

结语

本文我们通过一个简单的示例,手把手的说明了一个传感器的实际应用电路设计。

虽然简单,但是有一些细节还是值得新人们注意和学习。

本文作为实际的设计应用,把硬件设计部分给大家说清楚了,但是我们在单片机上移植 I2C 程序,还需要我们花一些时间,还是老样子,下一篇博文,会来更新 BH1750 传感器在单片机上的驱动移植篇。

本文就到这里,谢谢大家! 另外,别忘了下面可以加我的技术群哦!


http://www.ppmy.cn/news/907650.html

相关文章

树莓派集成BH1750光敏传感器配置

树莓派集成BH1750光敏传感器配置 我是代码小白,一个正在做毕设的秃头少年。鄙人拙作,有不当之处,还请指教。 今天介绍的是在树莓派上集成BH1750光照传感器并收集信息的配置过程。 1.硬件 树莓派PI3BRS GY-302 BH1750 FVI模块 2.树莓派环境 可以执行 cmake、ma…

【NLP】一项NER实体提取任务

一、说明 从文本中提取实体是一项主要的自然语言处理 (NLP) 任务。由于深度学习(DL)的最新进展使我们能够将它们用于NLP任务,并且与传统方法相比,在准确性上产生了巨大的差异。 我试图使用深度学习和传统方法从文章中提取信息。结果是惊人的,因为DL方法…

Deep Residual Learning for Image Recognition

2015-ResNet 关键词: residual connection CV论文:一般在第一页就放一个很“好看”的图 从图可以得到的结论:深的网络更难训练 ( 不仅因为过拟合,因为训练时误差都很难降低 ) 网络结构图 1*1卷积作用:改变通道数 ,提出维度匹配方法:1)补零;2)投影projection…

常用计算机储存设备有哪些,计算机的存储设备有哪些

大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答。 计算机的存储设备有软盘、硬盘、光盘、U盘、移动硬盘。 “计算机”一般是指“电子计算机”,电子计算机(electronic computer)通称电脑,是现代一种用于高速计…

win10解除usb禁用_Windows10系统禁用usb存储设备的方法

一位用户担心自己电脑中的资料被别人偷偷拷贝走,就想要设置禁用usb存储设备。这该如何操作呢?在本文中系统城小编将给大家分享下Win10防止连接USB媒体的设置方法!感兴趣的朋友们,都可以一起来看看! 方法一:…

组策略 禁用域用户移动存储U盘

背景:为了避免病毒通过U盘传入内网,为了工作单位的网络安全,通过在域控端创建组策略的形式,实现灵活控制域用户端U盘使用(灵活的原因在于不能禁用所有人的U盘使用权限,只能禁止一部分)。 首先在域控服务器…

计算机硬盘的存储时间,存储访问时间

存储访问时间,也可以称之为存取时间,是指从启动一次存储器操作到完成该操作所经历的时间。具体讲,从一次读操作命令发出到该指令完成,将数据读入数据缓冲寄存器为止所经历的时间[1] 。存储访问时间略小于存储周期。存储访问时间和存储周期反映了主存速度的指标。 中文名 存…

域控制器组策略:域用户加入域,禁止USB移动存储

标注:对于Windows Server 2008 R2域控组策略禁用USB移动存储设备要求是客户端操作系统要求Windows Vista以上,针对 XP以下的操作系统则只能使用Windows Server 2003操作系统作为域控服务器才可以进行限制(操作方法跟windows server 2008 R2操作方法不一样…