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

【我要为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个回答
黑皮男 回答时间:2016-11-24 18:43:40
cuyebiren 发表于 2016-11-19 11:50
楼主厉害!
手机APP不会是用 Java 写的吧?
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

安卓手机APP就是用Java语言,这个其实也不难,做一些简单的,我现在就是会点皮毛
黑皮男 回答时间:2016-11-24 18:44:35
cuyebiren 发表于 2016-11-19 11:50
楼主厉害!
手机APP不会是用 Java 写的吧?
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

而且IDE里面还可以通过图形界面来进行控件布局,也是挺方便的
Paderboy 回答时间:2016-11-19 13:26:20
cuyebiren 发表于 2016-11-19 11:50
楼主厉害!
手机APP不会是用 Java 写的吧?
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

纯 C 语言 + 控件 编写估计是没有。。。
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
全能通吃,厉害。

多谢多谢
wamcncn 回答时间: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 语言 + 控件 编写,不需要在学习新的 语言 的 语法
cuyebiren 回答时间:2016-11-19 14:53:54
Paderboy 发表于 2016-11-19 13:26
纯 C 语言 + 控件 编写估计是没有。。。

LabWindows CVI 就是的,不过只能在 Windows 系统上运行,很期待 像他这样的能在 安卓 上运行的
Paderboy 回答时间:2016-11-19 15:02:16
嗯期待吧。。。
zbber 回答时间:2016-11-19 21:37:53
楼主厉害,真是难得给力的帖子啊
Paderboy 回答时间:2016-11-19 21:45:37
zbber 发表于 2016-11-19 21:37
楼主厉害,真是难得给力的帖子啊

那都有你啊。。。
五哥1 回答时间:2016-11-20 22:25:13
做的很好
Paderboy 回答时间:2016-11-20 22:59:37
123下一页

所属标签

相似分享

官网相关资源

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