0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于安防的大背景设计的一款智能安防系统

RTThread物联网操作系统 来源:RT-Thread 作者:Tom_onemore 2022-07-01 14:38 次阅读

应用背景

无论是在家里还是在公司,安防都尤为的重要,与其亡羊补牢,更重要的是防患于未然。安全是目的,防范是手段。通过防范的手段达到或实现安全的目的,就是安全防范的基本内涵。


本项目就是基于安防的大背景设计的一款智能安防系统,目前提供的功能有红外检测,有毒气体及烟雾检测,后续还会对项目功能有所完善。

实现功能

红外检测

红外检测使用的是HC-SR501模块,传感器在检测到红外信号后,会触发高电平,将高电平信号送入蜂鸣器(本项目使用的是有源高电平触发蜂鸣器),进行报警,当红外信号消失后,会返回低电平,将低电平信号送入蜂鸣器,停止报警。

有毒气体及烟雾检测

有毒气体及烟雾检测使用的是MQ-2模块(大家如果想实现别的功能检测还可以使用MQ系列的其他模块),在检测到有毒气体或烟雾时,输出的模拟量会变大,根据不同的使用环境,我们可以通过调整代码实现在一定范围内触发蜂鸣器报警。

系统框架

962d470a-f863-11ec-ba43-dac502259ad0.jpg

RT-Thread使用情况

基于官方文档的试例Demo开发,使用了FSP。

模块介绍

HC-SR501

产品特点

HC-SR501是基于红外线技术的自动控制模块,采用LHI778探头设计,灵敏度高,可靠性强,超低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。

实物图片

963c045c-f863-11ec-ba43-dac502259ad0.jpg

9657570c-f863-11ec-ba43-dac502259ad0.jpg

MQ-2

产品特点

MQ-2气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。MQ-2气体传感器对丙烷、烟雾的灵敏度高,对天然气和其它可燃蒸气的检测也很理想。这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传感器。

实物图片

966e996c-f863-11ec-ba43-dac502259ad0.jpg

电气参数

967ae686-f863-11ec-ba43-dac502259ad0.jpg

所需软硬件

软件

RT-Thread Studio,FSP

硬件

CPK-RA6M4开发板,USB转串口工具,HC-SR501,MQ-2,蜂鸣器,USB数据线,杜邦线若干。

作品完整图片

968649a4-f863-11ec-ba43-dac502259ad0.jpg

视频演示效果

https://www.bilibili.com/video/BV16T411G7PF?share_source=copy_web

代码地址

https://gitee.com/tom-onemore/intelligent_security_system

项目过程

1. 开发环境搭建

首先请参考官方教程搭建好环境:环境搭建

2. 新建RT-Thread标准项目

首先,我们打开RT-Thread Studio,文件—新建—RT-Thread 项目。

9696bd20-f863-11ec-ba43-dac502259ad0.png

接着,在弹出的框中我们依次选择基于开发板,起项目名称(自拟),其余保持默认(最好也检查一下),点击完成。

96a91056-f863-11ec-ba43-dac502259ad0.png

等待进度条走完,项目创建成功,在Studio左侧的项目资源管理器中可以找到我们新建的项目。打开项目文件夹,在src文件夹中新建一个.c文件。

96ba0348-f863-11ec-ba43-dac502259ad0.png

文件名自拟,点击完成。

96c9961e-f863-11ec-ba43-dac502259ad0.png

输入以下代码,点击保存。


	
  1. /*

  2. * Copyright (c) 2006-2021, RT-Thread Development Team

  3. *

  4. * SPDX-License-Identifier: Apache-2.0

  5. *

  6. * Change Logs:

  7. * Date Author Notes

  8. * 2022-06-21 Tom_onemore the first version

  9. */

  10. #include

  11. #include

  12. #include"hal_data.h"

  13. #define ADC_DEV_NAME "adc0"/* ADC 设备名称 */

  14. #define ADC_DEV_CHANNEL_1 0/* ADC 通道 HC-SR501 */

  15. #define ADC_DEV_CHANNEL_2 1/* ADC 通道 MQ-2 */

  16. #define BUZZER BSP_IO_PORT_06_PIN_11 /* 蜂鸣器I/O引脚 */

  17. staticint adc_vol_sample(int argc,char*argv[])

  18. {

  19. rt_adc_device_t adc_dev;

  20. rt_uint32_t value1, vol1, value2, vol2;

  21. rt_err_t ret1 = RT_EOK;

  22. rt_err_t ret2 = RT_EOK;

  23. /* 查找设备 */

  24. adc_dev =(rt_adc_device_t)rt_device_find(ADC_DEV_NAME);

  25. if(adc_dev == RT_NULL)

  26. {

  27. rt_kprintf("adc sample run failed! can't find %s device! ", ADC_DEV_NAME);

  28. return RT_ERROR;

  29. }

  30. /* 初始化蜂鸣器引脚为低电平 */

  31. rt_pin_write(BUZZER, PIN_LOW);

  32. while(1)

  33. {

  34. /* 使能设备 */

  35. ret1 = rt_adc_enable(adc_dev, ADC_DEV_CHANNEL_1);

  36. ret2 = rt_adc_enable(adc_dev, ADC_DEV_CHANNEL_2);

  37. /* 读取采样值 */

  38. value1 = rt_adc_read(adc_dev, ADC_DEV_CHANNEL_1);

  39. value2 = rt_adc_read(adc_dev, ADC_DEV_CHANNEL_2);

  40. rt_kprintf("the value1 is :%d the value2 is :%d ", value1,value2);

  41. /* 转换为对应电压值,3.3V对应12位最大值4096,数据精度乘以100保留2位小数 */

  42. vol1 = value1 *330/4096;

  43. vol2 = value2 *330/4096;

  44. rt_kprintf("the voltage1 is :%d.%02d the voltage2 is :%d.%02d ", vol1 /100, vol1 %100, vol2 /100, vol2 %100);

  45. if(vol1 >3.3|| vol2 >13)

  46. {

  47. rt_pin_write(BUZZER, PIN_HIGH);/*打开蜂鸣器*/

  48. }

  49. else

  50. {

  51. rt_pin_write(BUZZER, PIN_LOW);/*关闭蜂鸣器*/

  52. }

  53. }

  54. /* 关闭通道 */

  55. ret1 = rt_adc_disable(adc_dev, ADC_DEV_CHANNEL_1);

  56. ret2 = rt_adc_disable(adc_dev, ADC_DEV_CHANNEL_2);

  57. return ret1;

  58. return ret2;

  59. }

  60. /* 导出到 msh 命令列表中 */

  61. MSH_CMD_EXPORT(adc_vol_sample, adc voltage convert sample);

接着我们打开FSP,会跳出一个弹窗提示,点击“是”,然后选择FSP的安装文件夹,点击“选择文件夹”,等待进入FSP即可。

96d29a48-f863-11ec-ba43-dac502259ad0.png

96e50520-f863-11ec-ba43-dac502259ad0.png

下图为FSP界面。

96f4bb96-f863-11ec-ba43-dac502259ad0.jpg

选择Pins,在Pin Selection中依次点击Peripherals—Analog:ADC—ADC0,然后再Pin Configuration中将P002~P005上锁。

97001ed2-f863-11ec-ba43-dac502259ad0.png

接着选择Stacks,在右上角点击New Stack—Analog—ADC(a_adc)。

970dab88-f863-11ec-ba43-dac502259ad0.jpg

在左下角Settings中,点击Common—Parameter Checking,将Value改为Enabled。

971b317c-f863-11ec-ba43-dac502259ad0.png

然后点击Module g_adc0 ADC(r_adc)—Input—Channel Scan Mask(channel availability varies by MCU),将Channel 0和Channel 1打√,然后保存,点击右上角Generate Project Content,关闭FSP。

9733c156-f863-11ec-ba43-dac502259ad0.png

接着我们回到Studio中,在新建的项目下,进入RT-Thread Settings,找到组件和服务层,鼠标放到Pins上,会弹出候选框,选择配置项。然后选择硬件,点击芯片设备驱动,打开Enable ADC,接着打开Enable ADC0,保存。

974679a4-f863-11ec-ba43-dac502259ad0.png

回到我们刚刚新建的.c文件,点击编译,控制台显示0 errors, 0 warnings,到这里我们的代码部分完成,将程序下载到开发板,可以正常工作,具体代码和演示请参考上文的代码和视频地址。

3. 接线方式

9753000c-f863-11ec-ba43-dac502259ad0.png

参考资料

  1. ADC设备

  2. CPK-RA6M4介绍:

  3. CPK-RA6M4用户手册

  4. CPK-RA6M4原理图

  5. RT-Thread BSP

  6. RT-Thread 官网

  7. 瑞萨电子官网

致谢

感谢主办方及一切帮助过我的人。

END


审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蜂鸣器
    +关注

    关注

    12

    文章

    848

    浏览量

    45282
  • 安防系统
    +关注

    关注

    2

    文章

    241

    浏览量

    32952

原文标题:基于RT-Thread+RA6M4的智能安防系统

文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    鸿蒙系统平板怎么样

    鸿蒙系统平板是一款功能强大、性能卓越的平板电脑,其独特的三设计使其成为各种恶劣环境下的理想选择。无论是户外探险、工地作业还是军事应用,鸿蒙系统
    发表于 04-12 14:26

    鸿蒙系统平板电脑突出的性能和环境的适用性

    摔等方面表现出色,能够在恶劣环境下稳定运行,满足用户在各种场景下的使用需求。、性能卓越鸿蒙系统平板搭载了高性能的处理器和大容量内存,使得平板在运行各类应用时都能够保持流畅。无
    发表于 04-09 14:24

    厚度

    的厚度厚,造成玻璃膜层拉裂,是什么原理
    发表于 03-11 13:37

    【爱芯派 Pro 开发板试用体验】基于爱芯派 Pro 开发板的警用智能机器人设计

    技术的可用性。 基于基于爱芯派 Pro 开发板的警用智能机器人设计: AX650N是一款兼具高算力与高能效比的SoC芯片,集成了八核A55 CPU,43.2TOPs@INT4或
    发表于 01-14 21:56

    D3485是什么?主要有那些特点呢?为什么可以应用在智能电表和监控等产品上

    D3485是一款5V供电、半双工的RS-485收发器,芯片内部包含路驱动器和 路接收器。D3485使用限摆率驱动器,能显著减小EMI和由于不恰当的终端匹 配电缆所引起的反射,并实现高达
    发表于 12-05 10:26

    物联网应用之智慧档案馆八体化平台

    ​ 原标题:智能化档案馆八十二体化监控系统
    发表于 09-14 10:33

    智能卡的封装和芯片连接解决方​​案

    地承受智能卡的弯曲。与焊接相比的另个优点是导电粘合剂不含铅和溶剂。田新材料为智能卡制造商提供了广泛的适用于芯片贴装应用的导电粘合剂。该粘合剂是单组分粘合剂,可以使用分配器简单地涂抹
    发表于 08-24 16:40

    智能家居系统传感器设计(1)#传感器

    传感器智能家居
    未来加油dz
    发布于 :2023年08月20日 14:45:13

    求助,路CPLD可以支持背景升级不?

    路CPLD可以支持背景升级不?
    发表于 08-11 06:08

    DSGW-090 PoE(以太网供电)网关用于智能家居、智能和智慧养老服务

    智能
    东胜物联
    发布于 :2023年08月04日 13:32:18

    迅为国产化RK3588开发板在前后端应用解决方案

    K3588是瑞芯微推出的一款高性能处理器,针对领域的应用具备强大的计算能力和图像处理能力。下面是关于RK3588的前后端应用解决方案
    发表于 05-30 10:28

    求24G雷达软件

    需24G雷达软件,发FMCW体制,用GD32F303和SRK1101A芯片。
    发表于 05-23 11:14

    交流24G雷达传感器软件

    寻找用于的24G雷达传感器的软件,用STM32F303或GD32F303,C开源软件。
    发表于 05-23 08:38

    UM2010一款单片集成低功耗 Sub-1GHz 射频收发器芯片

    和 Packet 数据处理模式,支持标准四线 SPI 和自定义三线 SPI 接口。 应用场景:  工业传感及工业控制  系统  自动抄表  无线标签,无线门禁  遥控装置,无线玩具 
    发表于 05-19 10:32

    瑞芯微RK3568开发板后端方案赋能NVR/XVR全面硬件升级

    在视频监控系统数字化、网络化、高清化、智能化的发展趋势过程中,网络视频监控系统的市场需求日益提升。随着行业的大范围涉及,尤其是平安城市、
    发表于 05-06 10:52