嘉立创产业服务站群
发作品签到
标准版

【训练营_进阶班】基于阿里云的物联网智能插座_By_RHJ

工程标签

5.4k
0
0
1

简介

基于51单片机结合EMW3080、阿里云服务器的智能插座,可以通过APP控制并接收继电器开关状态、LED的亮灭状态,温湿度可以在OLED显示并上报到APP,云端服务器也可以接收到相应的信息。

简介:基于51单片机结合EMW3080、阿里云服务器的智能插座,可以通过APP控制并接收继电器开关状态、LED的亮灭状态,温湿度可以在OLED显示并上报到APP,云端服务器也可以接收到相应的信息。

开源协议

GPL 3.0

创建时间:2020-08-05 12:40:57更新时间:2021-05-19 01:40:56

描述

基于EMW3080的阿里云物联网智能插座

目录

一、实物展示

二、APP展示

三、服务器端展示

四、项目需求

五、产品需求

六、元器件选型及模块功能说明

七、功能描述

八、布局布线设计

九、大型翻车~~(调试)~~现场

十、在阿里云生活物联网平台创建一个项目

十一、有待改进之处

####十二、小结
####十三、视频演示(4个)




一、实物展示

image.png
image.png

二、APP展示

image.png

image.png
image.pngimage.png




三、服务器端展示

image.png


![image.png](//image.lceda.cn/pullimage/laCBcit1XAfSgiOULsggWr102Lo9h8DwHvwfL6RJ.png)

image.png

image.png


四、项目需求

  设计一个能通过手机APP和天猫精灵控制家电及板载LED灯的电路板。

五、产品需求

  5.1 5V给整个系统供电,并利用稳压芯片产生3.3V稳定电压给特定芯片供电;

  5.2  硬件部分包含电源稳压、WIFI模块、OLED、USB转TTL模块、继电器、驱动芯片、单片机、按键、LED等;

  5.3  嵌入式软件编程、手机APP、服务器等。



六、元器件选型及模块功能说明

6.1 主控芯片

  选择型号为STC15W4K56S4,该芯片有56Kb用来存储程序的ROM,4Kb的数据存储器RAM,拥有丰富资源,足以解决本项目的主控问题。

image.png

6.2 WIFI模块

  选择庆科生产的EMW3080模组,板载天线,免去外接天线的麻烦,并且它支持阿里云飞燕(ILOP)固件,有官方技术手册可以参考,性能基本能满足本工程,而且价格比较便宜。EMW3080购买地址,固件选择阿里飞燕,型号选择EMW3080V2P(板载天线)

image.png

6.3 USB转TTL芯片

  选择CH340E,并在VCC引脚加100uf的去耦合的钽电容,以提供芯片强劲的电流,防止继电器打开瞬间CH340E复位。在TXD端330Ω电阻是防止TXD的电流倒灌到单片机的RXD,使单片机可以正常复位。

image.png

6.4 LDO低压差线性稳压器

  选择ME6215C33M5GAMS1117-3.3分别给单片机和EMW3080模组供电,保证各通信模块正常工作。ME6215C33M5G带有使能引脚,加上一个按键即可实现系统复位。AMS1117-3.3最大可输出电流1A,足以给正常通信时的WIFI模组供电。【AMS1117-3.3的2脚和4脚内部是连在一起的】

image.png

6.5 继电器及其驱动电路

  继电器选择汇科的DC5V,由于单片机的普通IO口默认上电输出高电平,但我们希望开始上电时,继电器是关闭的,故给IO口接入一个反相器,并加入一个专用于驱动继电器的NUD3124LT1G芯片,确保继电器可靠驱动。

####  继电器的工作说明:2脚和5脚是常闭端,1脚和5脚是常开端。继电器被打开后,磁力将铁片吸合到1脚,变成1、5导通(即接线端子P2导通),2、5断开:

image.png


6.6 OLED显示屏

  选择中景园4脚IIC驱动的OLED,配有详细Demo,便于移植不同的平台。

image.png

6.7 温湿度模块

  采用DHT11模块,自带上拉电阻,无需外加。该模块传输距离长,低功耗,体积小,精度足够,价格低廉,发送和读取数据仅占用单片机的一个IO口,占用资源少。

image.png

6.8  独立按键

  使用立创商城的3*6*5贴片轻触开关

  SW2点动用于控制继电器开关状态,长按进入配网模式。另外额外添加2个按键,用于点动控制2个LED的亮灭,需要在程序中将按键的数量改为3,并且增加SW3、SW4点动的业务。

image.png

6.9 LED

  使用贴片式的LED,封装为0805,较为好焊。

  LED用途很多,可以在调试过程中与串口printf一起debug。本项目中,4个OLED的作用分别为:

  LED1:慢闪表示程序正常运行;快闪表示正在配网;

  LED2、LED3:用来被按键或APP控制亮灭;

  LED4:快闪表示配网成功。

image.png

七、功能描述

7.1 板载4颗轻触按键,对电路进行控制:

  SW1控制系统复位;

  SW2短按控制继电器的开关,并上报继电器的开关状态和DHT11读取到的温湿度给服务器和APP,长按则进行配网;

  SW3控制LED2的亮灭,并把亮灭状态上传到服务器和APP;

  SW4控制LED3的亮灭,并把亮灭状态上传到服务器和APP。

7.2 一键配网

  板子第一次上电前,在阿里云物联网官网产品配网引导设置为一键配网,上电后,板载LED1慢闪表明程序正常执行,长按SW2,LED1快闪,进入配网模式,使用手机APP进行扫码配网即可,成功配网后,LED4快闪,LED1恢复慢闪,此后重新上电时会自动配网,无需长按SW2。



7.3 数据互动

  板子联网成功后,APP、服务器云端、真实设备可实时互动,在服务器网页设置好APP配置面板后,单片机通过DHT11读取到的温湿度可以显示在OLED上,并按时上报温湿度数据、继电器开关状态、2颗LED的亮灭的状态,也可以通过按键触发即时上报。APP和云端会接收到对应的数据进行显示,并且用户可以查看数据表格、图表等进行结果分析。APP也可以控制继电器、LED灯的开关。



7.4 接入天猫精灵控制

  首先从云智能APP删除已绑定设备(长按SW2进入配网模式时,会自动解绑,然后配网),并将EMW3080配置为一键配网模式,天猫精灵也与连接上与前者一样的WIFI。之后通过语音“天猫精灵,找队友”,此时板子同步长按SW2进入配网模式,大概几秒后天猫开始配网,十几秒后配网成功。

####  通过语音“天猫精灵,打开插座”,即可打开小风扇;
####  通过语音“天猫精灵,关闭插座”,即可关闭小风扇。


八、布局布线设计

8.1 强电部分

  强电部分不铺铜,这部分往往是有高的电压,和强的电流,有强的电磁场,容易带来干扰,也容易造成电压击穿,或电流烧毁,是PCB板上的危险部位,高压走线要处理好绝缘及隔离,为防止击穿,有的地方PCB板上可以挖空,挖槽,加长路径,还要考虑爬电等,在电流较大的布线要粗:

image.png

                图8-1-1 强电部分注意事项


8.2 USB-Micro接口及CH340E芯片

  采用挖槽型USB口,尽量贴近板子边缘,便于进行插接;USB口和CH340E的D+、D-数据线,须采用差分走线,并走线距离尽量短。在立创EDA中采用差分走线,相邻差分线的命名的后缀需要添加**“+”和“-”或者是xx_N和xx_P**,系统才能识别:

image.png

            图8-2-1 差分走线


8.3  滤波电容

  电源VCC要先经过滤波电容再到达需要用到电的模组,否则可能会导致供电不稳定,模组不能正常工作。如下图,从USB口过来的VCC不能直接连绿色的线到达3.3V稳压芯片,要根据橙色的路线连线,电容才可以起到作用,其他部分同理:



![image.png](//image.lceda.cn/pullimage/abDZrQfJjRcE57PQW2X4Pdl1AvOShFHn3DqbypHJ.png)

                图8-3-1 滤波电容的正确利用


8.4 WIFI模块

  EMW3080附近需要净空区,尽量不要铺铜和放置元器件,并且把板载天线部分伸出板子外面,尽可能降低外部因素对WIFI通信的干扰:



![image.png](//image.lceda.cn/pullimage/tBl8YlUaqk7du6XzgMoMosxdjSphv4CxaQlFbiT0.png)

            图8-4-1 WIFI模块在布线时的注意事项


8.5 线宽、铜厚与电流的关系

  设计中需要注意那个部分通过的电流比较大,需要参考下表进行线宽的修改:

image.png

                图8-5-1 合理参考电流与线宽、铜厚关系表格



8.6 合理放置丝印,便于后期焊接调试

image.png

         图8-6-1 用丝印标注参数


8.7 焊接时,注意芯片的方向的标志,避免焊反

image.png

                                图8-7-1 注意防焊反

8.8 PCB的DRC检查

image.png

                  图8-8-1 无DRC错误


九、大型翻车~~(调试)~~现场

9.1  测试电源

  画完PCB、嘉立创打样、立创商城BOM表下单后,板子、元器件都到了,第一步先把USB接口、LED灯和它的限流电阻、两个3.3V稳压芯片给焊上,并测试电压值,基本稳在3.3V左右,核心电源部分OK:



![image.png](https://image.lceda.cn/pullimage/PgpLyqcYZX6hKAGHKuGQX9trF3EsCX4VA597ZhlA.png)

                图9-1-1 ME6215C33M5G成功输出3.28V


![image.png](https://image.lceda.cn/pullimage/EsxeepTccKI2SYoMPfFffKNMOM5kcN6rTzONO8X4.png)

                图9-1-2 AMS1117-3.3成功输出3.29V


9.2  测试LED及单片机

  把剩余部分焊好,用万用表蜂鸣档测试电路有无短路、虚焊,然后想测试下载进去的程序是否正常运行:

```

    LED1 = 0 ;   LED2 = 0 ;

    LED3 = 0 ;   LED4 = 0 ; //函数主体部分

```

  正常来说,四个灯都会亮,因为LED的正极连到了3.3V,负极连到IO口,IO口给低电平,LED导通,但程序烧录完成后,发现只有LED3和LED4亮, LED1和LED2是熄灭的状态。用万用表检测完LED并没有焊坏后,查看原理图和手册后,发现连在LED1和LED2的两个引脚都是单片机的PWM输出引脚,上电复位后是高阻输入状态,要对外能输出,要软件将其改为强推挽输出或准双向口/弱上拉。



![QQ图片20200819221954.png](https://image.lceda.cn/pullimage/u4md5Qi8Yd0gIOQYP64LIIb0H9JclQtNBIRvop8u.png)

                图9-2-1 LED1、LED2对应的引脚


![image.png](https://image.lceda.cn/pullimage/SgYJH68WiGXYOiewGLpwTpajg8jI6uSlZWrAEFqk.png)

                图9-2-2 PWM输出引脚默认为高阻输入状态



![image.png](https://image.lceda.cn/pullimage/dPwvZYYJWTNRocwSDtLpGj07QRDlAfVhVdh3Kwzo.png)

                图9-2-3 STC15W4K56S4 IO口模式设置



  这里,我将全部IO口初始化为普通IO口(准双向口),重新烧录程序,成功点亮所有LED灯:

```

    P0M1=0;P0M0=0;P1M1=0;P1M0=0;

    P2M1=0;P2M0=0;P3M1=0;P3M0=0;

    P4M1=0;P4M0=0;P5M1=0;P5M0=0;   //上电初始化所有IO口为普通IO

    LED1 = 0 ;   LED2 = 0 ;

    LED3 = 0 ;   LED4 = 0 ;

```

image.png

        图9-2-4 成功点灯

9.3 调试串口1

  单片机读取DHT11温湿度数据(测试时将返回值均设为0),并使用串口1发送数据,调试效果如下:

  PS:一定要注意选择IRC频率为22.1184MHz,每次打开软件默认为11.0592MHz,另外串口波特率为115200,若使用默认频率,串口助手会收到乱码!!翻了好几次车!!所以这个频率要根据具体芯片的手册来选择。

image.png

                图9-3-1 串口1成功接收数据(注意切换IRC频率)




9.4 调试WIFI串口

  用烧录器直连EMW3080,RX1->TX2 ,TX1->RX2 ,之后利用格西烽火串口调试助手,波特率选择115200,给EMW3080发送模块AT指令,WIFI模组可以返回正确的数据:

image.png

image.png

                图9-4-1 利用格西烽火执行AT指令,并返回连接成功的数据



9.5 调试OLED

  店家给的4脚IIC的OLED是STM32的例程,故有些地方要稍作修改,比如SDA(P34)和SCL(P35)脚要设为推挽输出模式,按照上面的IO口模式设置表格,即有:P3M1的对应脚设为0,P3M0的对应脚设为1, 即:

    P3M1 = 0000 0000   -> P3M1 = 0

    P3M0 = 0011 0000   -> P3M0 = 0x30

####  但是在编译程序时提示如下错误:
image.png

                图9-5-1 编译错误

####  然后去百度,发现128字节的data数据空间已经用完,需要使用xdata数据空间:

image.png

                图9-5-2 选择XDATA

  之后成功编译,执行程序,OLED可以正常工作,显示正确的数据,但是将OLED的驱动程序整合到整个工程时,只有OLED屏幕在闪烁,并且之前正常慢闪的LED1熄灭了,后来发现生成的Hex文件已经超过了56Kb,而 STC15W4K56S4的存储程序用的ROM(FLASH)只有56Kb(查阅手册或观察名字可得),注释掉一些用不到的函数后,Hex文件成功降到56Kb以下,重新烧录测试,测试效果如下,成功在指定位置显示指定的字符串:



![image.png](https://image.lceda.cn/pullimage/FgDy5NTKfJnlC7eutTl3nesYThZeY0XAxjNB3teq.png)

        图9-5-1 OLED成功显示数据



9.6 调试DHT11模块

  移植对应Demo后,将读到的温度、湿度分别转化为字符串输出给OLED,这里要注意湿度只有整数部分,温度有小数部分并且DHT11的数据引脚Dat必须接上拉电阻(可选为5.1KΩ),增强驱动能力,并在空闲状态下保持高电平,另外VCC和GND之间可以 加一个100nF的电容,用于去耦滤波,使接收到的数据更精确:

  PS:购买的DHT11已自带上拉电阻,故本次不用外加

image.png

        图9-6-1 DHT模块原理图


![image.png](https://image.lceda.cn/pullimage/Z9TCXnK2VgyULRwTTKQj1HBSEsFCxQgtDn5Qs9En.png)

        图9-6-2 成功读取温湿度数据



9.7 调试继电器模块

  为了使继电器更稳定的工作,给它加上了专门的驱动芯片,并希望它在上电时为关闭的状态,故在IO口(P26上电默认为高电平),加上一个反相器,下面写一个简单的程序测试继电器能否正常工作:

```

......

    #define Relay P26

    void main()

    {

        P2M1=0;P2M0=0;

        while(1)

        {

          delay_ms(3000);

          Relay = ~Relay;    //约3秒翻转一次继电器开关状态

        }

    }

```

  烧录程序后,成功实现3秒翻转一次继电器开关状态。

9.8 调试配网

####  调试配网之前,需要在IAP_EPPROM.c文件中,将自己设备的四元组信息更改。
image.png
                图9-8-1 更改四元组信息

  所有模块已调试完毕,目前均可正常工作。利用USB线供电,LED1慢闪,表示程序正在执行,然后长按SW2,进入配网模式,打开云智能APP扫码配网,跟着步骤走后,出现以下情况:

image.png

        图9-8-2 无法发现 adh_xxx_xxx WIFI


  然后并没有在WIFI列表找到**_adh_xxx_xxx**,经在群里讨论,发现了不对劲的地方:



![image.png](https://image.lceda.cn/pullimage/xFFEAs8ul0l6o1f85yw6tvMqHQrjQa2GKA9hBT3A.png)

                图9-8-3 配网方式默认为设备热点配网



![image.png](https://image.lceda.cn/pullimage/qowIPBjTC6fjnRpSH00YSALxCXbqwO5GuTQd8l0z.png)

                图9-8-4 程序默认为一键配网模式


  也就是说,两种不同的配网方式混用了,导致无法配网,于是我修改后采用两种方式配网,一种是修改为一键配网,不需要修改程序,设置如下:

image.png
            图9-8-5 修改配网方式

  另一种方法是,配网方式仍为设备热点配网,配网的代码改为将设备设置为AP模式的AT指令:"AT+ILOPWASAP\r",EMW3080如果配网成功,服务器会向EMW3080发送回应,表示配网成功,到此处配网成功。

image.png

            图9-8-6 WIFI模块成功收到连接成功的信息


  配网成功后,可以使用APP控制板子继电器开关、LED亮灭;并且操作板子的状态,也会实时传给APP和服务器网页端。只要板子位于原来配网连接的WIFI范围内,我们就可以通过手机APP全球任意范围内,只要有网络,就可以远程控制板子,并获取其状态信息。若要换一台手机控制,因为我设置的分享方式是授权式,故要先解绑,长按SW2即可先解绑后等待重新配网,使用新手机扫码配网即可。



9.9  调试WIFI模组上报继电器状态和温湿度数据到APP和网页端

  首先标识符要对应,即在网页选的功能定义的标识符要与程序里的一致,位置如下图

image.png


![image.png](https://image.lceda.cn/pullimage/6WR7NDczEEG62V13ydoNT6koz5O6IqRFMZWoPogs.png)
![image.png](https://image.lceda.cn/pullimage/WZTZ1xFDb2Cazj98LfiemXAxigTiTAmONcFWyQ4j.png)

                图9-9-1 两者的标识符要一一对应



  做完这一步后,发现按动SW2,继电器的开关状态可以正确的上报到APP和网页,但是APP不能控制继电器的状态,就是说WIFI模组没有收到正确的信息,使单片机执行对应的功能,于是我去检查WIFI接收数据的函数,发现有处标识符没有改动,修正后,成功通过APP控制继电器的开关:

image.png

                图9-9-2 接收数据用的标识符均要改成对应的标识符



9.10 增加APP控制LED2、LED3的亮灭功能

  修改按键点动函数,成功使得按下SW3可以翻转LED2的亮灭,按下SW4可以翻转LED3的亮灭(LED初始状态均为熄灭),板子上可以实现该功能,但是不能上传数据到APP和网站;如果用APP执行对应操作,板子会响应,这说明设备数据上传出了问题,设备接收数据正常,当时上报的数据如下:

image.png

                图9-10-1 一次性上报5个数据失败

  于是我在想是不是一次不能上报那么多数据,服务器承受不住?本来上报3个数据(继电器状态、温度、湿度)是正常可以互动的,现在5个不行,那4个呢?于是乎我注释掉1个(保留任意4个),重新烧录程序,发现又可以互动了!!经群里老铁点明,可以上报5个数据,但是上报数据用的数组SendBuf和JsonStr要增大才行,我尝试这增大这两个数组,于是乎本来就55KbHex文件,FLASH遭不了重,增大后又超56Kb了。后来我尝试分两次上报,于是再复制一个上报函数,用来上报2个LED灯的状态,继续烧程序,发现5个数据均可上报,互动成功!!!

image.png

                图9-10-1 2个函数分开上报【注意在.c文件增加函数时,要在对应的.h文件声明


![image.png](https://image.lceda.cn/pullimage/fZvHOoThfuX5ocgcwkspfsW1C7CayXkGOQghWQew.png)                                                                          图9-10-2 服务器网页端接收到的实时数据,经比对,数据正常
![image.png](https://image.lceda.cn/pullimage/FtslkhQupRRc57J1wvPobLTOMwH9NS0nrM363qDN.png)

        图9-10-3 APP接收到的数据,与服务器网页端一致



9.11 二度调试串口2

  诡异的事情终究还是发生了......前一天板子还能正常上电就自动配网,第二天早上上电后就毫无反应,无法配网,检查完不是路由器网络的问题后,再反复切换一键配网模式和设备热点配网模式后,发现LED4(配网成功的指示灯)始终不闪,于是我用烧录器直连EMW3080进行串口调试,使用AT指令启动一键配网模式,发现WIFI模块能收到服务器发送回来的成功连接信息,并且操控APP的按键,可以上报到服务器日志里,但是APP和板子毫无互动:

image.png
图9-11-1 WIFI模块可以连上服务器


![image.png](https://image.lceda.cn/pullimage/B9HR7Us3da8IbGtWCzDUHQqxVGW9WvHtEwiGo1qi.png)                                                                            图9-11-2 网页端日志显示成功收到数据


  这说明WIFI是接收到服务器给它发送的连接成功的信息,但是单片机没有收到,因为如果单片机收到,LED4灯的闪烁标志位会被置1,置完1后就会快速,表示配网成功:

image.png
图9-11-3 单片机收到成功配网信息后会将配置闪烁标志位

  所以,我推测,WIFI接收到的表示连接成功的字符串"ILOP,CONNECTED",单片机并没有通过串口2成功读取,而这两者的RX和TX各通过一个330Ω的限流电阻交叉互连,我了解到这2个电阻是起到防电流倒灌到单片机,从而使单片机可以正常复位的作用,我隐约记得零妖说可以把这两个330Ω电阻给拆掉,于是乎我把这两个电阻换成0Ω电阻,重新上电,一切恢复正常...orz...经群里的老铁反映,有可能是单片机发出去的信号太弱了,电流过小。

9.12 调试小风扇

  由于宿舍没有什么可以改造的电器,搜刮一顿后 ,发现舍友的散热用小风扇,是DC12V/0.09A,由于板子最大能供电5V,尝试用USB口供电,发现电压可以,但是电流不够,小风扇无法转动,故使用烧录器接上充电宝给小风扇供电。

image.png

9.13 调试天猫精灵

####  在产品管理中的人机交互设置页面中,发现天猫精灵中的插座品类的状态映射属性只有一个,为开关状态,其标识符为**“powerstate”**,正好对应继电器开关的标识符。

image.png

####  长按SW2解绑并进入配网模式,板子会先和云智能APP解绑。天猫精灵接入与前者一样的WIFI,并通过语音**“天猫精灵,找队友”,即可自动配网。后续通过“天猫精灵,打开插座”来打开小风扇,“天猫精灵,关闭插座”**来关闭小风扇。

十、在阿里云平台创建一个项目

10.1 注册阿里云账号,并进行实名认证,登录阿里云生活物联网平台

网址:阿里云官网 、阿里云生活物联网平台

10.2 创建一个新项目

image.png


![image.png](//image.lceda.cn/pullimage/BxbXkVtfjNHItwauDhnzrKqMlaMpu2zcik7h13Cv.png)

image.png

image.png

image.png


10.3 设置产品的功能定义

image.png



10.4 配置人机交互界面

image.png


需要注意的是配网模式,要和程序中的配网模式一样,说明如下:

image.png

image.png


10.5 添加测试设备

image.png

image.png


![image.png](//image.lceda.cn/pullimage/hjSFGcVjuLJtOw0UpN4VGGhijn1DG6cDqYZgw3GX.png)

image.png

image.png


  至此,设备添加成功,EMW3080可以在后续操作中连上阿里云生活物联网平台。



十一、有待改进之处

11.1 串口调试方面

  由于本次使用到多个串口,但没有考虑到通过跳线帽来选择串口,导致后期调试困难,需要另外焊接跳线。

####  3-1、4-2 用于下载程序、调试串口1

  3-5、4-6 用于调试WIFI串口

image.png

11.2 WIFI模组散热情况

####  当WIFI模组正常工作时,发现模组附近摸上去温度有点高,或许会影响到WIFI模组正常工作,参考其他同学的散热方法,发现可以在其底部挖槽,增大散热面积,能起到一定的作用:

image.png

11.3 一路继电器改进为多路继电器

####  弄懂如何控制一路继电器,可以举一反三地设计出多路继电器控制家用电器,实现智能生活。

11.4 电源部分

####  调试中发现USB供电提供的电流不够大,当连接多个用电器时,某些模块无法正常工作。可用220Vac-5Vdc模块给整个板子供电,注意添加保险丝和安规电容。

image.png
image.png


十二、小结

  说起立创EDA,之前都是用来找给AD封装,那时候还没有发现自己错过了一件大宝贝(手动狗头)。这学期遇上立创EDA是因为立创在线上为我们学校做校赛培训,后续有个基础训练营,但是由于期末考试都堆一起,还有个校赛,所以就很遗憾没有报名。不过后来发现公众号推送进阶班训练营,于是我就报名了~

  之前是没有接触过物联网这方面的,只接触过单片机、嵌入式这些,对自己也是一个全新的挑战,项目实战方面的经验几乎为没有,是一个小白从零开始的过程。然后自己一步一步跟着宋工、周工他们走,第一次真正在立创EDA画板子、第一次在立创商城根据BOM表下单、第一次体验SMT、第N次嘉立创打板,直接一条龙服务,非常方便。板子到了之后,就分模块来焊,焊完一个模块就调试一个,先用万用表检查有没有虚焊、短路之类的,再上电逐一测试。硬件部分头疼完就到软件部分了,指针在大一学完后就忘的七七八八了,读起来还是有点吃力的,听完宋工讲完一遍不懂,自己再看回放,读程序,并修改相关参数,下载到板子来测试,逐渐有点头绪。有很多问题可以在群里提问得到指点,但最终还是得靠自己慢慢调试,硬件和软件一起调,不过主要是硬件的问题,软件要改的地方不多,标识符是其中一点,后面读懂程序后,就自己额外添加业务,成功上报湿度、按键点动控制LED亮灭的信息,并且可以使用APP控制LED的亮灭。天猫精灵到手后,也成功利用天猫配网成功,并控制小风扇开关。

  通过这次训练营实战,自己调代码、调硬件的能力也有一定的提升,通过项目实战,我也一定程度上了解到了物联网的联网、通信、控制过程,以一个商业化的案例,从需求分析开始,再到方案设计、硬件设计、软件设计,一步一步学习解决问题的方法。还有自己不太懂,之前不太想深入了解的指针、结构体,让我重新有了想拾起它们的学习冲动,加油!

####  在此感谢立创EDA举办本次活动,感谢宋工、周工、莫工、叶工等工作人员,为我们提供资金和技术支持。小伙伴们寒假班有缘再见~

十三、视频演示(4个)

####  1、板子与网页端互动
####  2、APP与板子互动
####  3、可视化界面
####  4、天猫精灵控制

设计图

原理图
PCB

BOM

IDNameDesignatorFootprintQuantity
1HLK-10M05U7PWRM-TH_HLK-10M051
25.1KR4,R5,R6,R7,R8,R9,R10R08057
31000uFC17,C18CAP-SMD_BD10.0-L10.3-W10.3-RD2
4ME6215C33M5GLDO1SOT-23-5_L3.0-W1.7-P0.95-LS2.8-BR1
5100uF钽电容C5CAP-SMD_L7.3-W4.3-R-RD1

附件

序号文件名称下载次数
1
网页端和板子互动.mp4
63
2
APP与板子互动.mp4
186
3
工程源代码V6.zip
37
4
15单片机_DHT11温湿度检测 oled.zip
17
5
中景园电子0.91寸OLED模块资料.zip
97
6
基于阿里云智能的插座-源码分享(零妖).zip
39
7
格西烽火串口助手.zip
105
8
可视化界面.mp4
29
9
PCB设计规范.xlsx
13
10
天猫精灵配网控制-merge.mp4
202
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

全部评论(1)
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航