你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【我要为STM32站台】基于STM32L432家用无线报警系统  

[复制链接]
Paderboy 发布时间:2016-11-18 23:35
本帖最后由 Paderboy 于 2016-11-18 23:40 编辑

这个是基于NUCLEO STM32L432KC作为主控的 小范围家用无线报警系统项目


Screenshot_2016-11-18-08-31-02.png


整体的使用成本,还是很低的。。。用的模块都是市场上常见的产品。。

1.NUCLEO STM32L432KC作为主控 也就是接收端(接收无线数据),这里用到了市场广泛使用的NRF24L01模块作为发射和接收无线数据

2.因为手头有NUCLEO STM32F031的开发板,(也可以使用其他STM32F0系列的或者STM8等等。。。)
所以这个项目就用了这个板子作为无线发射端

3.使用HC-SR501人体红外传感器模块(有进口和台产的,这个小项目用的是进口的,测试后效果不错,灵敏度很高),
   使用HC-SR501的输出高电平去开启单片机供电回路,这样检测到有人的时间,模块默认发送报警信息。。

4.当STM32L432KC主控接收到无线报警信息后,自己判断是那个发射端的报警信息。。处理后,启动报警设备的同时,
通过串口发送给蓝牙设备报警信息。。

5.如果手机APP端默认开启报警功能,这时就会通过震动和声音提示,有外人闯入设定的报警范围。。 同时可以通过手机APP查询报警区域
  (例如.车库..)非常方便,可配置多发射端,只需要修改下不同发送端的识别ID就可以了。。

6.可以通过APP解除报警(可关闭报警系统)和一个在主控的手动按键来解除报警状态。。


好的先介绍下主要的设备:

1.STM32L432KC 开发板
2.STM32F031K6 开发板
3.2xNRF24L01 无线模块
4.人体红外传感器HC-SR501
5.有源蜂鸣器
6.少许杜邦线
7.蓝牙模块2.1
8.发射端电源和触发电路

以下就是这个项目的流程图

L432WirelessAlarm.jpg
开发平台:
CubeMx+Keil5 不得不说,CubeMx用了以后会依赖啊。。变懒了。。。本项目都是使用Cube+HAL库实现的。。

测试工具:
串口助手(主要用于测试程序和调试的反馈)
安卓手机一台(用于APP功能测试)

接下来就上图吧!!

这是发射端STM32F031K6 配置SPI和串口输出,方便调试
fwireless-01.png

使用内部晶振
fwireless-02.png

SPI配置
fwireless-03.png

串口配置
fwireless-04.png

发射端实物图片
IMG_20161118_103731.jpg

人体红外+2片串联的铁锂电池作为发射端的供电测试电源+一个LDO稳压电路(丑陋的转接板请忽悠了
IMG_20161118_103743.jpg

IMG_20161118_103801.jpg

使用HC-SR501的输出端去开关发射端的供电,可以提高电池使用时间。如果人体红外传感器没被触发,发射机是断电状态。。。非常省电。。
wirelessHW.png

好了接下来是主角STM32L432KC 接收端的配置截图如下:

用到了SPI3+串口1+串口2 还有输出GPIO开关蜂鸣器
wireless-01.png

使用内部晶振
wireless-02.png

SPI3 配置
wireless-03.png

串口1配置 DMA IDLE 接收和发送数据给蓝牙模块
wireless-04.png

wireless-05.png

串口2用于调试直接输出测试数据到电脑上
wireless-06.png

wireless-08.png

好了,工程建好了,就开始调试程序。。。 NRF24L01 是非常普通的无线模块了。。这里就不再多介绍了。。。
以下是调试过程的截图片段
wirelesssoft-01.png

wirelesssoft-02.png

wirelesssoft-03.png

wirelesssoft-04.png

程序都编译通过后,直接下载到发射端和接收端来验证吧。。

实体图片是必须要有的。。。。
IMG_20161118_103839.jpg

IMG_20161118_162516.jpg

IMG_20161118_162536.jpg

IMG_20161118_162544.jpg

wirelessyz-01.png

wirelessyz-02.png

wirelessyz-03.png

wirelessyz-04.png


好了。。。。亮点在这。、。




Screenshot_2016-11-18-08-30-49.png

Screenshot_2016-11-18-08-31-49.png

Screenshot_2016-11-18-21-40-29.png

好了这个项目就差不多完成了。。。

总结下:
这个项目功能比较简单,不过还是比较实用的。。。可改进的地方(例如:添加TFT显示提升主机的体验,有条件的可以给主控再添加PM2.5,温湿度等
外设更丰富这个项目的功能整合。)也可以添加Wifi 实现远程IOT控制等等。。。
因为工作比较忙,这个项目弄的比较零散,不过整体框架基本完成。。软件调试也完成的大部分。。APP基本可以用了。等有时间继续优化。。。


希望大伙会喜欢。。。。。。


评分

参与人数 1 ST金币 +30 收起 理由
zero99 + 30

查看全部评分

收藏 4 评论38 发布时间:2016-11-18 23:35

举报

38个回答
zero99 回答时间:2016-11-19 00:05:49
赞一个
Paderboy 回答时间:2016-11-19 07:56:05
yanhaijian 回答时间:2016-11-19 08:19:29
全能通吃,厉害。
Paderboy 回答时间:2016-11-19 08:21:14
yanhaijian 发表于 2016-11-19 08:19
全能通吃,厉害。

多谢多谢
wambob 回答时间:2016-11-19 09:19:19
赞一个,手机APP,软硬通吃
Paderboy 回答时间:2016-11-19 09:47:17
wambob 发表于 2016-11-19 09:19
赞一个,手机APP,软硬通吃

cuyebiren 回答时间:2016-11-19 11:50:59
楼主厉害!
手机APP不会是用 Java 写的吧?
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 + 控件 编写,不需要在学习新的 语言 的 语法
Paderboy 回答时间:2016-11-19 13:26:20
cuyebiren 发表于 2016-11-19 11:50
楼主厉害!
手机APP不会是用 Java 写的吧?
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

纯 C 语言 + 控件 编写估计是没有。。。
cuyebiren 回答时间:2016-11-19 14:53:54
Paderboy 发表于 2016-11-19 13:26
纯 C 语言 + 控件 编写估计是没有。。。

LabWindows CVI 就是的,不过只能在 Windows 系统上运行,很期待 像他这样的能在 安卓 上运行的
1234下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版