**

HLK-LD1125H-24G人体测距微波雷达

**


概述

转载官方概述:

HLK-LD1125H-24G 是一款高灵敏度 24GHz 毫米波人体存在检测雷达模块。区别于传统雷达通过检测人体移动的大幅度动作或者微小幅度的肢体动作来判断人体存在,本模块主要特点是通过检测积累人体呼吸等微小幅度的运动,来判断人体的存在。因此对人体存在的检测相比传统移动检测雷达来说,准确率更高。不易漏报。


提示:以下是本篇文章正文内容

一、微波雷达是什么?

微波是波长很短的无线电波,微波的方向性很好,速度等于光速。微波遇到车辆立即被反射回来,再被雷达测速计接收。这样一来一回,不过几十万分之一秒的时间,数码管上就会显示出所测车辆的车速。雷达或微波乃是类似广播传送器所发出的电波,只不过频率较高出许多。当人物或物体在微波的 感应范围内移动时,便会启动感应器。

实物展示


二、使用步骤

1.外观与引脚

引用官方手册图片

2.使用说明

  • 雷达输出的信息

首先我们要知道,他通过串口会传给我们的信息是什么样的,那么我们看下图。

一开始建议新手使用TTL转串口进行调试检测模块是否可以正常使用,也能知道所接受的信息格式。

  • 雷达的信息输出模式

雷达的输出有三种模式

  1. 当雷达检测到较大幅度运动时,则输出 mov,dis=***。
  2. 当雷达检测到人体静止状态或者微小幅度动作时,则输出 occ,dis=***。
  3. 当雷达检测不到目标时,则停止输出。
    dis 代表目标距离,单位米。

雷达配置指令

我们可以配置雷达的一些属性,例如最大检测距离、各个分段的灵敏度。此内容不是本文章的重点,需要了解的可以参考官网的应用手册。
该链接为官方提供的应用手册,免去你们查找资料的时间。添加链接描述

代码展示

注意:配置串口时与LD1125雷达的通讯协议。接受与发送设置选:ASCII

通常我是只需要这个模块所测出人体距离的功能,那么我们就需要提取出我们所需要的距离数字,来实现我们的功能,代码如下。

  • LD1125.C
    这里我使用的是串口4,可以根据自己进行修改使用其他串口。
#include "LD1125.h"
#include "sys.h"
u8 UART4_RX_BUF[UART4_REC_LEN];     //接收缓冲,最大USART_REC_LEN个字节.
u16 UART4_RX_STA=0;       //接收状态标记
u16 len;
void Bluetooth_Init(void)//串口初始化
{GPIO_InitTypeDef GPIO_InitStruct;USART_InitTypeDef USART_InitStruct;NVIC_InitTypeDef NVIC_InitStruct;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO,ENABLE);RCC_APB1PeriphClockCmd(RCC_APB1Periph_UART4,ENABLE);GPIO_InitStruct.GPIO_Mode=GPIO_Mode_AF_PP;GPIO_InitStruct.GPIO_Pin=GPIO_Pin_10;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOC,&GPIO_InitStruct);                      //TXDGPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_InitStruct.GPIO_Pin=GPIO_Pin_11;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOC,&GPIO_InitStruct);                     //RXDUSART_InitStruct.USART_BaudRate=115200;USART_InitStruct.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;USART_InitStruct.USART_Parity=USART_Parity_No;USART_InitStruct.USART_StopBits=USART_StopBits_1;USART_InitStruct.USART_WordLength=USART_WordLength_8b;USART_InitStruct.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制USART_Init(UART4,&USART_InitStruct);USART_ITConfig(UART4,USART_IT_RXNE,ENABLE);USART_Cmd(UART4,ENABLE);NVIC_InitStruct.NVIC_IRQChannel=UART4_IRQn;NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=1;NVIC_InitStruct.NVIC_IRQChannelSubPriority=1;NVIC_Init(&NVIC_InitStruct);
}
void UART4_IRQHandler(void)                 //串口4中断服务程序
{u8 Dat;if(USART_GetITStatus(UART4, USART_IT_RXNE) != RESET)  //接收中断(接收到的数据必须是0x0d 0x0a结尾){Dat =USART_ReceiveData(UART4); //读取接收到的数据if((UART4_RX_STA&0x8000)==0)//接收未完成{if(UART4_RX_STA&0x4000)//接收到了0x0d{if(Dat!=0x0a)UART4_RX_STA=0;//接收错误,重新开始else UART4_RX_STA|=0x8000;  //接收完成了 }else //还没收到0X0D{   if(Dat==0x0d)UART4_RX_STA|=0x4000;else{UART4_RX_BUF[UART4_RX_STA&0X3FFF]=Dat ;UART4_RX_STA++;if(UART4_RX_STA>(UART4_REC_LEN-1))UART4_RX_STA=0;//接收数据错误,重新开始接收   }      }}          }
} double convert (const char* r,int len)//提取数字相关函数
{int len1;int i;float temp;float xiaoshu;char flag;for(len1=0,temp=0,xiaoshu=0,flag=0,i=10;len1<len;len1++){if(r[len1]=='.'){flag=1;continue;}if(flag==0){temp = temp*10+(r[len1]-'0');}else{xiaoshu+=(r[len1]-'0')/(float)i;i*=10;}}return(temp+xiaoshu);
}double GetMidText( char* text,int len)//提取数字相关函数
{int i;char flag=0;for(i=0;i<len;i++){if((text[i]>=0x30)&&(text[i]<=0x39)){return convert(&text[i],len-i);}}return 0;
}
  • LD1125.H
#ifndef __LD1125_h
#define __LD1125_h
#include "stdio.h"
#include "sys.h"
#define UART4_REC_LEN           200     //定义最大接收字节数 200
extern u8  UART4_RX_BUF[UART4_REC_LEN]; //接收缓冲,最大USART_REC_LEN个字节.末字节为换行符
extern u16 UART4_RX_STA;                //接收状态标记
void Bluetooth_Init(void);
extern u16 len;
double convert (const char* r,int len);
double GetMidText( char* text,int len);
#endif
  • main主函数
    提取出我们所需要的距离后,通过串口一printf函数打印到我们的电脑进行数据的查看,是否得到我们所想的效果。
#include "stm32f10x.h"
#include "LD1125.h"
#include "SG90.h"
#include "usart.h"
#include "delay.h"
int main(void)
{   Bluetooth_Init();delay_init();MG_Init();NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级uart_init(115200);   //串口初始化为115200while(1){if(UART4_RX_STA&0x8000){                       len=UART4_RX_STA&0x3fff;//得到此次接收到的数据长度printf("\n%f\r\n",GetMidText((char*)UART4_RX_BUF,len));UART4_RX_STA=0;}}}

总结

LD1125雷达模块总体来说,功能还是不错的,功能性强。另外这是我个人写的第一篇博客,一步一步学习一步一步进步,另外一些概念性问题时转载百度和官方描述,以及一些模块的参数也是使用的官方图片。

HLK-LD1125H-24G人体测距微波雷达相关推荐

  1. RCWL-0516微波雷达模块检测人体移动(发光二极管)

    首先,介绍一下RCWL-0516的主要引脚: 其次是RCWL-0516与UNO和LED灯的连接示意图及实际连接图: VIN-5V OUT-D2 GND-GND D3.电阻.二极管串联 当微波雷达模块检 ...

  2. 微波雷达传感器模块,人体雷达感知存在,场景智能联动

    人们为了从外界获取信息,必须借助于感觉器官.而单靠人们自身的感觉器官,在研究自然现象和规律以及生产活动中它们的功能就远远不够了.为适应这种情况,就需要传感器. 传感器是一种检测装置,能感受到被测量的信 ...

  3. 智能家居领域技术应用,微波雷达人体感应模块,雷达传感器方案

    雷达感知是一种无线感知技术,通过分析接收到的目标回波特性,提取并发现目标的位置.形状.运动特性和运动轨迹,作用类似于人类的眼睛和耳朵. 与其它传感器相比,雷达模块感应具有许多独特的优势.例如,与视觉传 ...

  4. 微波雷达人体感应开关模块 智能感应探测器 XBG-M555

    一.概括 XBG-M555是一款采用多普勒雷达技术,专门检测物体移动的微波感应模块.采用2.9G微波信号检测,该模块具有灵敏度高,可靠性强,感应角度大,工作电压宽等特点.高电平输出,可直接驱动外部 L ...

  5. 微波雷达生命体征检测,人体呼吸心跳感应雷达模块,雷达传感器技术应用

    生命体征参数是人体健康与否的重要表征,实时地检测生命体征信号有着很大的研究价值.现在市场中的生命体征检测装置不仅在价格.体积上难以满足普通用户的要求,装置本身还受制于线缆连接,且传统的常规检测方法大多 ...

  6. 人体存在感应微波雷达模组,静止存在雷达感应技术

    人体存在感应雷达微波雷达模组新型探测模块真实体验,近几年来,人体存在检测技术在民用领域的应用几乎是空白,无论是红外感应还是雷达感应,都是需要人体运动才能探测到的. 现实应用中,如长时间阅读.静心.玩手 ...

  7. FMK24微波雷达测距模块的使用

    应客户要求,使用一款名为FMK24的微波雷达模块测量距离并解算速度,之前小打小闹从未用过这么高大上的距离传感器,某宝上一查居然300多块大洋,略略肉疼,决心好好搞一下子. 附上官方给出的模块说明书 链 ...

  8. 智能FMCW雷达感应方案,报警器微波雷达感应技术,智能安防提醒应用

    智能安防报警产品的初衷是让我们的生活更安全.更放心,智能雷达感应报警,可以感知人体的移动,在安全防护工作中中扮演着"放哨人"的角色. 雷达是利用电磁波探测目标的电子设备,通过发射电 ...

  9. 测量 XW-HLR26-24G 微波雷达模块的性能测试

    简 介: 利用ESP32 MicroPython 模块中的UART1对于 雷达模块性能进行测试.验证了它的基本通信格式,能够读取对应的数据,它的数据更新速率为每秒钟4个测量数据. 关键词: 雷达模块, ...

最新文章

  1. .NET操作注册表的封装类
  2. ffmpeg源码分析:transcode_init()函数
  3. 三层架构实现增删的简单实例
  4. 一个简单的epoll测试例子
  5. 卧槽!12个杭州阿里高学历女员工被初中男骗财骗色1900多万!骗子冒充有钱佬!开豪车保时捷勾搭妹子,法院判无期徒刑!...
  6. matlab dtft的函数,DTFT的Matlab矩阵计算的理解
  7. Linux 压缩和解压命令
  8. 漫画:五分钟看懂车联网
  9. 性能计数器驱动_【Nature Sustainability】机械力驱动的摩擦电高效空气负离子发生器...
  10. HTTP请求和MIME介绍
  11. Windows驱动开发WDM
  12. 每天一个JavaScript小特效——会魔法的旋转魔方相册
  13. C语言格式化输出函数printf详解——C语言基础知识
  14. 下次激活策略10_陈金凌:年流量1-10万独立站关键词策略案例(1)
  15. 微笑哥,工作快乐感与快乐企业文化
  16. vbmsgbox引用变量_vb中msgbox用法
  17. [BZOJ3653]谈笑风生 主席树
  18. JAVA计算机毕业设计中华二十四节气文化传承宣展平台Mybatis+源码+数据库+lw文档+系统+调试部署
  19. hive改表结构的两个坑
  20. android 天气预报

热门文章

  1. ECSHOP快递物流单号查询追踪插件
  2. 5.4 判断两个字符串是否互为旋转词(find函数)
  3. mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
  4. 用热敏电阻测温度STM32
  5. 3. Maven POM
  6. 安川最小巧机器人_速度最快!精度最高!安川发布新一代GP系列机器人
  7. C++实现斐波那契的三种方法
  8. Vue.js学习的第一天
  9. KGB SFX 脱壳
  10. python优化else_python 中 难以理解的for-else语句