首页 > 版块 > 物联网 > 帖子正文

ESP8266物联网开发板设计1

张角 发布于 2021-10-27 14:25
收藏 0 回复 0 浏览 190 原创

    大家好,我是张飞实战电子张角老师!

通过这个电源,我们就可以得到12V的电压了,然后我们可以通过线性电源,比如7805把这个电压降压到5V,然后在再通过AMS11175V电压降压到3.3V。这种方案适用于产品开发中,我们甚至可以自己开发一块反激电源放在我们的产品的板子上。因为实际的环境中,可能只有AC 220的电源。对于一些极端的情况,比如AC 220V不能够达到的地方,有的物联网产品甚至只能是太阳能供电,当然这个电源是另外一个方案了。

一般情况下开发板则不同,只是大家学习的工具,对吧。那么供电部分的方案,自然也是不同的。比如我们就可以从我们的笔记本或者台式机上的USB口上获取电源。这样我们就利用了电脑自己的电源模块,是吧。AC降压的部分是电脑自己完成的,我们这里的方案是站在它的基础上的。USB电源的输出电压是5V,一般情况下,这个5V电源的输出能力可以达到500mA左右,可见它的功率还是蛮大的。

上面我们只是分析了大体的情况,那么具体到我们这个开发板中,这些大体的方案合适么?我们下面来具体分析一下。

首先我们来看一下,我们的这个模组的供电要求,从下图可以看出这个模块要稳定工作,供电电流要大于500mA。但从这一个数据来看,我们就没有办法仅仅使用一个USB来供电,那样单片机有可能就不可以正常工作,我们这里说得是有可能呀,也不一定不能工作。但是从产品设计的角度来看,如果只用一个USB接口来供电,这样的设计是不稳妥的。

我们今天使用ESP8266这款芯片设计一块物联网开发板,使用的模组是ESP-12F,这款模组我们在上篇文章已经给大家介绍过,生产厂家是深圳是安信可科技有限公司。我们这款开发板,只是使用这个模组内部的单片机ESP8266,实现的功能来说也相对较为简单,换句话说,也就是没有外挂单片机。

那么总体上要实现什么功能呢?

第一个要实现的功能是温湿度的采集,这个是物联网场景中最为常见的。远程而且在线的数据采集功能,能够为系统决策提供实时的决策依据。我们这里主要是以温湿度的采集以及往云端上传为例,给大家演示一下物联网开发板的流程是什么样子的。

第二个要实现的功能是远程控制继电器的开关。我们从物联网的数据终端获得了数据之后,自然需要根据数据做出决策。那么这个决策执行,一个最简单的示例就是继电器的开通和关断。我们可以通过继电器的开通和关断,来决定相应的模块是不是需要运行。

ESP-12F这个模组要想能够正常工作,首先就是要搭建一个单片机的最小系统。这个最小系统包括如下模块,比如电源模块,程序烧录模块,时钟模块,Reset模块,boot选择模块等等。只有这些模块工作正常了,ESP-12F内部的单片机才有可能工作起来。

我们下面分别来看一下,这些小模块用什么样的方案实现比较合适。

第一个是程序烧录模块,我们这里使用的是USB转串口,芯片是CH340G,这个是南京沁恒公司出品的,属于非常常用的芯片,性能稳定价格相对便宜。具体的电路设计也相对来说比较简单。大体的电路设计如下:

image.png

我们这里只是参考示意图,具体电路实现,我们后面再分析。

第二个是时钟模块,我们这个ESP-12F里面应该已经包含了时钟震荡电路,我们不用再外接震荡电路模块。从模组管脚功能的描述上看,ESP-12F也没有外部晶振的接口,那么我们可以断定这个模组已经自己搞定了震荡器部分,要么是单片机内部的RC震荡器,要么是模组封装的石英震荡器。后面有机会,我们再对这块进行分析。

image.png

image.png

Reset模块和BOOT模块按照芯片给出的说明来就可以了。RESET这个地方一般是低复位,意思也就是说这个管脚在低电平的时候,芯片内部执行复位操作。BOOT引脚,从上图也能看出,IO0为低的时候,单片机处于下载模式。如果要让单片机处于运行模式,这个引脚必须拉高或者悬空。那么我们进行电路设计的时候,按照芯片的说明操作就可以。

再一个就是电源模块,很显然ESP-12F这个模组要能够正常工作,它一定是需要电源的。那么这个电源电压是多少呢?我们来看一下ESP-12Fdatasheet

image.png

这张表里面,我们是不是可以看出来这个模组的供电电压是不是3.3V呀,Io口的最大电流驱动能力是12mA对吧。VilVih表示输入低和高的电平值,从datasheet上可以看出来输入为低的时候,最低值是-0.3V,最大值是0.25倍的Vio;输入为高的时候,最低值是0.75倍的Vio,最大值是3.6VVol的最大值是0.1倍的Vio,也就是说作为输出且输出为低的时候,它的最大值0.1倍的VioVoh的最小值是0.8Vio,这句话的意思是,IO口作为输出,且输出为高的时候,它的最小值是0.8倍的Vio。了解了这些参数,可以对我们进行外围电路的设计起到指导作用。

那么这个3.3V的电压从哪里来最合适呢?我们这里有两条思路,一条思路是从AC 220V上通过反激电源降压到12V,然后再从12V降压到3.3V;另外一条思路是利用USB接线的5V电压,直接变换成3.3V。第一种方案,我们首先要买一个12V的电源适配器,如下图所示。

image.pngimage.png

通过这个电源,我们就可以得到12V的电压了,然后我们可以通过线性电源,比如7805把这个电压降压到5V,然后在再通过AMS11175V电压降压到3.3V。这种方案适用于产品开发中,我们甚至可以自己开发一块反激电源放在我们的产品的板子上。因为实际的环境中,可能只有AC 220的电源。对于一些极端的情况,比如AC 220V不能够达到的地方,有的物联网产品甚至只能是太阳能供电,当然这个电源是另外一个方案了。

一般情况下开发板则不同,只是大家学习的工具,对吧。那么供电部分的方案,自然也是不同的。比如我们就可以从我们的笔记本或者台式机上的USB口上获取电源。这样我们就利用了电脑自己的电源模块,是吧。AC降压的部分是电脑自己完成的,我们这里的方案是站在它的基础上的。USB电源的输出电压是5V,一般情况下,这个5V电源的输出能力可以达到500mA左右,可见它的功率还是蛮大的。

上面我们只是分析了大体的情况,那么具体到我们这个开发板中,这些大体的方案合适么?我们下面来具体分析一下。

首先我们来看一下,我们的这个模组的供电要求,从下图可以看出这个模块要稳定工作,供电电流要大于500mA。但从这一个数据来看,我们就没有办法仅仅使用一个USB来供电,那样单片机有可能就不可以正常工作,我们这里说得是有可能呀,也不一定不能工作。但是从产品设计的角度来看,如果只用一个USB接口来供电,这样的设计是不稳妥的。

image.png

另外一个耗电较大的是继电器,我们这里的继电器选定的是SRA系列的,线圈的开通电压,我们可以选择12V。那么我们来看一下,这个继电器的线圈需要多大的电流。

image.png

从上图中可以看出来,这个电流要50mA,是吧。

我们下面来看一下CH340G的功耗情况。从下表可以看出来,它的功耗最大值是在20mA左右,这个器件待机状态的时候,功耗更低,只有0.2mA左右。

image.png

SHT20(温湿度检测芯片)和其他一些LED等的模块加起来,功耗应该不会超过10mA。这样算下来,这个开发板需要的总的供电能力,差不多在600mA左右。如果再留有一点余量的话,那么我们选用的反激电源适配器,它的输出能力差不多要在1A左右。

从上面情况来看,USB供电是肯定不合适的。我们这个开发板,不适合USB供电,只能是使用适配器从AC 220V上引电下来。

有了12V电源以后,我们第一步要做的事情,就是把12V电压变成5V的,常用的器件就是LM7805。我们来看一下LM7805的输出能力,从下图中可以看出来,它差不多有1A的输出能力,是吧。这个能力是可以满足模组功耗需求的。但是我们可以计算一下它自身的功率。 P = 12V  5V* 500mA  = 3.5W,也就是说仅仅带载ESP-12F这个板子,就需要3.5W的功率。这个对LM7805的封装来说是不可以承受的。即使加上散热片,也难保散热片不烫手,这个功率太大了。那怎么办呢?我们这里只能选择能效比更好的电源方案,比如开关电源。我们可以选择一个buck降压方案。这个buck电路,可以直接从12V降压到3.3V,也可以从12V先降压到5V,然后再通过LDO模块把电压从5V降低到3.3V。这两个方案,我们可以都用一下,看一看哪个更合适。为什么一般情况下,单片机前端电源一般采用LDO(比如AMS1117等)呢?主要是LDO输出的电压精度比较高。还有一个,如果Buck电源坏掉了,buck上的高压信号,一般也不会直接伤到单片机,中间还有一个LDO电源起到了隔离作用。另外,Buck电路输出的电压文波率相对来说也比较大,一般在2%-5%左右,这个波动对单片机的工作也会有影响。但是呢,现在的单片机一般也是宽电压输入,就像我们这个ESP-12F,它的输入电压可以从3.0V-3.6VBuck的文波率按理说应该是可以满足要求的。我们这里可以把两个方案都试一试,通过跳线帽或者0欧姆电阻的方式选择供电电源。一个是测试一个LDO电源(AMS1117)的发热量怎么样,再一个看看buck电源能不能满足单片机的需求。

image.png

那么我们这里还需要一个5V3.3V的电压变换,我们这里也选择最为常用的AMS1117。这个片子上面的功耗也是蛮大的,P = 5V  3.3V* 500mA = 0.85W。我们需要对这个片子的散热做一些特殊的处理,比如在地上需要大面积敷铜或者加散热片。我们这里AMS1117选择SOT223的封装,等板子搞好之后,实测一下温升能有多少。buck芯片我们采样SY8120 DCDC的片子,具体buck电路的设计,我们有机会展开来讲。

讲完了单片机的最小系统,我们看一看器件封装的一些问题。

对于各个器件原理图和PCB的封装,站在开发板这个需求程度上,我们可以直接采用立创上给出来的。但是如果实际做产品的时候,元器件pcb的封装,我们就要格外注意了。pcb的封装要和实际生产工艺匹配起来,这样才能最大程度上降低生产成本,进而能够降低产品总的成本。比如封装不能过大,否则可能就会有立碑现象;再比如,如果封装大小不合适,虚焊的可能性就会加大,进而产品的质量可能就会受到影响。做产品的问题,我们暂且不说,我们先来看一下,如何直接利用立创商城提供的封装。第一步,我们要先把这些封装导出来,我们这里以DHT11为例(目前这样使用有效,后续网站可能会改版,大家留意)。

比如我们这里首先选择直接使用厂家提供的封装,点击立即使用以后,就会出现schdocpcbdoc两个类型的文件。我们后面把可以把它导出来,变成AD软件支持的格式。这里说一下,我这里习惯使用AD软件,可能和一些同学的习惯不太一样。如果大家直接使用立创的画图软件,也就不需要导出来了。这个地方大家酌情使用。

image.png

image.png

image.png

这些文件导出来之后,我们就可以在AD软件里面生成相应的lib文件了,以便于我们在画原理图和PCB图的时候使用。

今天关于这个开发板的分享,就先到这里。我们下篇文章会继续探讨相关原理图模块的设计。

 

①基于ESP8266STM32物联网开发板设计

https://blog.csdn.net/weixin_42107954/article/details/97494269

②物联网开发板-ESP8266   https://lceda.cn/jixin003/iot_board_esp12

ESP8266教程-技小新 https://www.yuque.com/lingyao/jing/ob5wia

ESP-12F 规格书

https://item.szlcsc.com/84052.html

https://atta.szlcsc.com/upload/public/pdf/source/20210219/C82891_ABD84A460F4F056A2757267CCCA4B508.pdf

SRA系列继电器说明书

https://item.szlcsc.com/61221.html

https://atta.szlcsc.com/upload/public/pdf/source/20180525/C60169_619C103F264B8308190CF1E1CA37960C.pdf

CH340C datasheet https://item.szlcsc.com/85852.html

LM7805 datasheet https://item.szlcsc.com/520584.html

 


0 0
发表评论 侵权投诉
评论 (0)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表乌云踏雪网立场。

文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。