梁山派-一页书-智能窗帘 - 嘉立创EDA开源硬件平台

编辑器版本 ×
标准版 Standard

1、简单易用,可快速上手

2、流畅支持300个器件或1000个焊盘以下的设计规模

3、支持简单的电路仿真

4、面向学生、老师、创客

专业版 professional

1、全新的交互和界面

2、流畅支持超过3w器件或10w焊盘的设计规模,支持面板和外壳设计

3、更严谨的设计约束,更规范的流程

4、面向企业、更专业的用户

专业版 梁山派-一页书-智能窗帘

简介:通过本次训练营实现智能窗帘控制V1.0,实现基础功能。

开源协议: GPL 3.0

(未经作者授权,禁止转载)

已参加:立创·开发板电子设计训练营

创建时间: 2023-08-15 23:21:31
更新时间: 2024-04-02 08:38:24
描述
# 1、智能窗帘功能 智能窗帘控制器V1.0能实现:雨滴检测、红外检测、光线明亮检测,语音交互、电机控制;附件是V1.0的程序源码,基础功能都已经调试完毕。 基础功能主要技术指标: (1)可以通过红外遥控与语音设置是否打开自动模式; (2)在自动模式下,当光照强度很高时,自动展开窗帘;当光照强度很低时,自动关闭窗帘; (3)在自动模式下,当检测到大量雨滴时,自动展开窗帘,此优先级比光照检测高; (4)在任何时候,可以通过红外遥控或语音命令展开与关闭窗帘,并关闭自动模式; (5)主控芯片接收到数据后,驱动电机运转,现实智能窗帘窗户系统。 智能窗帘控制器V2.0在上述功能基础上,还能实现屏幕显示关键数据。 V2.0版本代码还在调试中,后续会增加链接。 # 2、器件选型及原理图绘制 ## 2.1雨滴传感器 传感器移植模块,可以去**[梁山派模块移植手册](https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc)查看原理及代码**https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc **手册使用教程**:**ctrl+f**在文档内**搜索**:雨滴,然后点击**下一处**即可快速跳转到雨滴传感器移植章节。 ![下一处.png](//image.lceda.cn/pullimage/SW8oF7OQ6ngWPpnnsVfANab0H9UcdwlNxSU8tMHe.png) 雨滴传感器**功能**:用来检测是否下雨以及雨滴大小。 雨滴传感器**原理**:通过检测水滴的导电性来判断是否下雨。详情见[手册] **原理图**:雨滴传感器,正极接一个10k电阻,没有雨滴的时候,RAIN标签处测量电压为0;也可以把10K电阻放右边和GND连在一起,这样RAIN标签有要放置在右边,没有雨滴的时候,RAIN标签处测量电压为5V;两种电路画法如下: ![雨滴传感器.png](//image.lceda.cn/pullimage/kRC8AjMYcM7Gmr7oDs9VCNpmaab9x9eVArlI2jXB.png) ## 2.2光线强度传感器模块 在**梁山派模块移植手册**查找**光敏电阻传感器**; 光敏电阻传感器**功能**:检测光线亮度。 光敏电阻传感器**原理**:随着光照强度的升高,电阻值迅速降低。**其在无光照时,几乎呈高阻状态,暗时电阻很大**。详情见[手册](https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc)。原理图如下: ![光敏电阻.png](//image.lceda.cn/pullimage/OHBgKoBvESEGLObiKWhruozNYkv0TJSYmy6UfKyp.png) LM393使用:-比+电压高,输出低电平,+比-电压高,输出高电平; 为了节省成本,不用这个现成的光敏电阻传感器检测电路,只用上图的R2和R3; 光敏电阻选择C125626,[亮电阻:5kΩ~10kΩ 暗电阻:500kΩ](https://item.szlcsc.com/136904.html); **ADC注意**:梁山派的ADC检测范围是0~3.3V,因此不能接+5V,要接3.3V;上述雨滴传感器同理,也要把5V改为3.3V; ## 2.3红外接收模块 在**梁山派模块移植手册**查找**红外接收模块**; 红外接收模块**功能**:实现红外信号接收。 红外接收模块**原理**:详情见[手册](https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc)。通过检测OUT端口,低电平说明有红外信号。 需要一个红外遥控器和一个接收头;**画PCB的时候是只需要接收头;但实际需要一个遥控器**; 接收头选择C16216,查看数据手册,输入电压范围:2.7V~5.5V,可以接3.3V;手册里提供了参考电路,直接拿来用即可; 为了避免干扰出现OUT低电平但又没有红外信号的情况,于是OUT接了个上拉电阻; ## 2.4语音识别模块 在**梁山派模块移植手册**查找**语音识别模块**;这是一个纯离线语音识别模块,只能通过特定命令识别。 型号:HLK-V20; 接线图参考**梁山派模块移植手册**,通过麦克风来识别语音,还需要一个喇叭来做出回应; 注意:**下载注意事项:点击下载时,不要给模块通电,只需要连接B6,B7,GND即可**;因此VCC还需要接一个开关;如果是按键,使用时要一直按着很不方便,此处推荐**拨码开关**。 ## 2.5步进电机 在**梁山派模块移植手册**查找**步进电机模块**;推荐**二相四线步进电机**;根据购买链接点进去,选择带转换座的; **原理**:二相指的是有两个线圈,四线指的是每一个线圈有两根线。其中A+与A-为一相,B+与B-为一相。 **电机驱动芯片**:推荐:L9110S,便宜好用;电路参考该芯片数据手册中的典型应用电路; ## 2.6短接符确定引脚 在原理图上通过短接符来确定接入梁山派的各个引脚,方便直接查看; **PCB小技巧**:PCB走线,走不过去的时候,可以大范围铺铜连接过去,然后打孔; # 3、**注意** V2.0版本因为增加了屏幕接口,视屏教程中的原红外接口PF7改为PA1;该屏幕保留了贴片和直插两种接线方式。V1.0版本的源码也是在PA1的基础上进行调试的; # 智能窗帘程序设计 # 4、雨滴+光敏电阻传感器 ## 在[梁山派模块移植手册](https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc),下载雨滴传感器移植代码; ## 修改移植代码,主要是修改通道参数 打开移植工程:打开bsp_raindrop.h文件,AO引脚对应PF8,DO引脚用不到,删除DO引脚定义相关代码,并在bsp_raindrop.c文件中删除DO相关代码;PF8对应的是ADC2通道6,因此修改ADC定义相关代码; ## 移植现象 移植现象:输出检测雨滴大小程度的百分比。(当滴一些水在裸露的铜皮上时,输出高于50%;当将水擦掉时,输出2%左右) ## 光敏电阻模块移植同理,直接在雨滴传感器移植代码里进行修改即可; # 5、步进电机 ## 在[梁山派模块移植手册](https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc),下载二相四线步进电机移植代码; ## 用完电机之后,及时给电机输出低电平。不然一直高电平的状态,相当于电机一直通电,发烫是正常的; ## 电机驱动的时候,因为有正反转两个状态,在确定一个状态为1的时候,另一个状态也必须手动确定为0,否则可能出现两个状态都为1的情况。因此,在写代码的时候必须两个状态都明确表示出来。 # 6、红外接收 ## **红外线的通讯原理**,查看梁山派模块移植手册;采用**NEC****协议的频率就是38KHZ** NEC协议一次完整的传输包含: 引导码、8位地址码、8位地址反码、8位命令码、8位命令反码。这里我们主要讲解如何接收红外发送端发送的NEC协议内容。 **引导码:** 由9ms的低电平+4.5ms的高电平组成; **4个字节的数据:** 地址码+地址反码+命令码+命令反码。 这里的反码可以用来校验数据是否传输正确,有没有丢包。 > **重点: NEC协议传输数据位的时候,0和1的区分是依靠收到的高、低电平的持续时间来进行区分的。这是解码关键。** 数据发送0码:0.56ms低电平+ 0.56ms的高电平。 数据发送1码:0.56ms低电平+1.68ms的高电平。 **还有一个重复码,它是由一个 9ms 的低电平和一个 2.5ms 的高电平组成**。当一个红外信号连续发送时,可以通过发送重复码的方式快速发送。 **注意:**按下遥控按键的时候,串口显示接收到的数据是这样的,四个一组(8位地址码、8位地址反码、8位命令码、8位命令反码): ![QQ图片20231015154729.png](//image.lceda.cn/pullimage/4WnRUJ1SXMEwkZVBRaHzMVuAwY9kXJKiyZa5HWxq.png) 因此在进行命令处理的时候,用的是第三组数据(命令码); ## 按键功能: **右箭头按键,打开窗帘** **左箭头按键,关闭窗帘** **自动模式 ,*键** **手动模式,#键** 因为本人接口用的是PA1(教程是PF7),因此要更改bsp_ir_receiver.h相关代码,注意:"bsp_ir_receiver.c文件中的中断函数代码也要进行相应更改,把原来的函数名改为void EXTI1_IRQHandler(void)即可; # 7、语音识别固件烧录教程 此处需要一个CH340转换器; ## 方法一:海凌科 进入[海凌科产品中心](http://voice.hlktech.com/yunSound/public/toWebLogout):http://voice.hlktech.com/yunSound/public/toWebLogout [海凌科语音识别模块的语音固件创建与下载](https://lceda001.feishu.cn/docx/LQkZd74b7o8aEHxAGzbcGvHynle):https://lceda001.feishu.cn/docx/LQkZd74b7o8aEHxAGzbcGvHynle 按照**海凌科语音识别模块的语音固件创建与下载**文档操作即可; **下载注意事项:点击下载时,不要给模块通电,只需要连接B6,B7,GND即可。** ## 方法二:机芯智能 [机芯智能](https://www.aimachip.com/):https://www.aimachip.com/ 进入后,进入智能公元平台,要登录; 按照[教程视频](https://www.bilibili.com/video/BV1iV411P7H4?p=16&share_source=copy_web)操作即可;https://www.bilibili.com/video/BV1iV411P7H4?p=16&share_source=copy_web # 如何语音识别 ## 在[梁山派模块移植手册](https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc),下载语音识别移植代码; # 8、代码集成 以语音识别代码为主,复制该代码并重命名为窗帘控制系统,打开其它几个驱动的程序目录下的Hardware文件夹,把对应驱动的文件夹复制到窗帘控制系统下的Hardware文件夹下面,最终效果如图: ![QQ图片20231008093509.png](//image.lceda.cn/pullimage/hZUhF1gkk6t4BARs0Ifs9HG9vP6zR7G2vLNrgjd6.png) 打开工程,并添加刚刚新增的文件夹目录; 代码集成部分需要注意的点太多,建议直接看视频教程。
设计图
原理图
1 /
PCB
1 /
未生成预览图,请在编辑器重新保存一次
工程成员
侵权投诉
相关工程
换一批
加载中...
添加到专辑 ×

加载中...

温馨提示 ×

是否需要添加此工程到专辑?

温馨提示
动态内容涉嫌违规
内容:
  • 153 6159 2675

服务时间

周一至周五 9:00~18:00
  • 技术支持

support
  • 开源平台公众号

MP