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

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

3天内不再提示

【雷达灯控】安信可 Rd-03E+ 灯 + Ai-M61

AIoT行业洞察 来源:AIoT行业洞察 作者:AIoT行业洞察 2024-06-07 09:45 次阅读

模块资料

当活动开始的时候就看模块的相关资料了,不过刚开始也没太在意,所以从RD-03系列从头开始看。不过后来才发现RD-03系列的产品有很多,本次活动涉及的产品是RD-03E。所以我赶紧去看03E的相关产品。产品的资料有很多,不过感觉有些文件的内容有些重复,上位机软件的各个参数可能是因为涉及到内部逻辑所以没有详细说明。模块资料链接:Rd-03 系列模组 | 安信可科技 (ai-thinker.com)

模块应用场景

首先官方给的应用场景是智能马桶(手势识别模式),这在上位机当中也是有体现的,在此就不多说了。其次是本次活动要求的是应用在智能灯控上,有感应开关灯、距离改变光照模式等。除了智能家居外,该模块也可以应用在智慧城市和工业控制领域等。

上位机使用体验

在拿到模块后,想必大家都会先用官方的例程或软件体验一下。我也简单的用上位机连接模块看了一下。首先安信可给的模块是没有损坏的,在质量把控方面上安信可确实做得很好,至今也没发现有质量问题。

刚开始时数据波动比较大,波动范围有20CM,也不知道大家是否会关注用户手册中写的探测范围0.3~2.2M。这可能是数据处理不是那么好吧。上位机软件距离显示曲线如下图

wKgZomZiZkSACZQOAACNGXD_sVY30.jpeg

但是我又用串口软件进行测试发现数据是50ms发一次,这让我再次怀疑控制芯片处理数据的能力,不过看论坛上的文章和群消息后好像官方也在进行调整。但是我觉得在官方给出新的驱动前可能还有其他的解决方法。于是再次盯住这些杂乱无章的曲线,然后自己在前面不停的微动,这种场景是真的挺搞笑的,但是也没办法,研发就是这样。看了一段时间后,发现问题可能出现在模块发送数据的间隔时间非常短,50ms就发一次。我们一般是一个处理芯片会接很多的模块,对某一个模块接收的数据也不会这么频繁,反正是我没遇见过。所以就想着我1S接收一次是不是就会避免了。在上位机软件中也无意发现有上报周期这一选项,于是就把这个参数改成1000及1S后,发现数据波形确实变平了,但是好像数据波动还是有,不过没有之前那么大了。之前看距离数据时也是发现数一直在跳变,很难看清数值是多少。现在是可以看清的。

修改上报周期后的结果如下图。

wKgZomZiZkWAWDvrAABcou3M4zc04.jpeg

不过我对此还是不够满意,所以就把数值改成5000及5S,发现效果和1S的差不多。所以我在后续的程序是采用1S接收一次数据并进行处理。也不知道大家是否注意到这一点,在此将我注意到的点分享给大家。

除了注意到时间间隔外,还注意到一点是在采集到的数据波形有一段时间是0。对此我也开始不断地测试在何种情况下会导致数据是0。后来发现有两种情况会有这种现象。第一种是你超出他的探测范围,这一点我确实没有注意到,因为之前看到的的范围是0.3M~2.2M,也没想到没人的情况下探测距离是多少;第二种是当探测的物体没有晃动或移动,简单来说就是站在那里一动不动就会接收到距离是0的情况,这让我猜到模块的采集数据的方式应该是检测磁场的变化,也就是有物体切割磁感线,模块就会有数据,具体的就没有深究了。

作品功能描述

因为要求作品是与灯有关的,但是我身边也没有与灯相关的模块。而是准备了一个其他的模块,这个在下次的文章中展现给大家。不过好在M61板子上有三个灯,所以就简单的模拟上位机灯泡的显示效果了。代码实现起来非常简单,就是1S采集一下模块的数据,然后判断数据在哪个阶段就亮哪个灯。为了拍摄效果,所以就没把数据选的那么大。

首先是Rd-03E串口数据处理代码,代码如下

void RD03E_GetGestDataPoll()

{

unsigned char i = 0;

unsigned char DistTemp = 0;

bflb_uart_get(pstUARTHandle, au8UartReceData, RD03E_GEST_DATA_MAX_LEN);

printf("RD03E Receive Data is:");

for (i = 0; i < RD03E_GEST_DATA_MAX_LEN; i++)

{

printf("%X ",au8UartReceData[i]);

}

printf("rn");

for (i = 0; i < RD03E_GEST_DATA_MAX_LEN; i++)

{

if (RD03E_GEST_DATA_HEAD_MARK == au8UartReceData[i])

{

/* 找到数据帧开头标志0xAA */

break;

}

}

if ((i < (RD03E_GEST_DATA_MAX_LEN - RD03E_GEST_DATA_LEN -1))

&& (RD03E_GEST_DATA_TAIL_MARK == au8UartReceData[i + RD03E_GEST_DATA_LEN + 1]))

{

/* 找到数据帧 */

DistTemp = au8UartReceData[i + 1] | ((unsigned int)au8UartReceData[i + 2] << 8);

stGestData.GestDist = DistTemp;

stGestData.Gest = au8UartReceData[i + RD03E_GEST_DATA_LEN];

}

}

串口一次性接收10个字节的数据,测试发现若接收5个字节的数据的话,后面会出现解析不到数据帧的开头。这也是为了后面1S采集一次数据的适配。接收到数据后会先找帧开头标志0xAA,找到后便判断后面的第4个字节是否为帧结束标志0x55。若是则将中间的3个数据解析出来,分别为手势识别模式中的距离和手势数据。这样可以防止数据解析有误。

主函数主要是获取串口数据,然后进行处理,逻辑比较简单,所以不再详细讲解。代码如下

int main(void)

{

GestData *RD03EGestDataTemp = {0};

board_init(); /* 板卡初始化 */

LED_Init(); /* 板卡LED引脚I/O初始化 */

UART_Init(); /* RD03E串口初始化 */

while(1)

{

/* 获取RD03E数据 */

RD03EGestDataTemp = RD03E_ReadGestData();

if (RD03EGestDataTemp->Gest != RD03EGestData.Gest)

{

RD03EGestData.Gest = RD03EGestDataTemp->Gest;

/* 检测到有手势变化 */

if (RD03EGestData.Gest)

{

if (LEDSwitch)

{

LEDSwitch = 0;

/* 关闭全部灯 */

LED_SetSta(LED_STA_OFF, GREE_LED_PIN);

LED_SetSta(LED_STA_OFF, RED_LED_PIN);

LED_SetSta(LED_STA_OFF, BLUE_LED_PIN);

}

else

{

LEDSwitch = 1;

}

}

}

if (LEDSwitch == 1)

{

/* 当灯是开的状态再检测距离数据是否发生变化 */

if (RD03EGestDataTemp->GestDist != RD03EGestData.GestDist)

{

RD03EGestData.GestDist = RD03EGestDataTemp->GestDist;

/* 先关全部的灯,再亮其中的一个 */

LED_SetSta(LED_STA_OFF, GREE_LED_PIN);

LED_SetSta(LED_STA_OFF, RED_LED_PIN);

LED_SetSta(LED_STA_OFF, BLUE_LED_PIN);

if (RD03EGestData.GestDist < 50)

{

printf("Dist:%d Green LED ONrn",RD03EGestData.GestDist);

LED_SetSta(LED_STA_ON, GREE_LED_PIN);

}

else if (RD03EGestData.GestDist < 100)

{

printf("Dist:%d Red LED ONrn",RD03EGestData.GestDist);

LED_SetSta(LED_STA_ON, RED_LED_PIN);

}

else

{

printf("Dist:%d Blue LED ONrn",RD03EGestData.GestDist);

LED_SetSta(LED_STA_ON, BLUE_LED_PIN);

}

}

}

/* RD03E轮询不断更新数据 */

RD03E_GetGestDataPoll();

/* 设置1秒已更新,否则灯跳变比较大 */

bflb_mtimer_delay_ms(1000);

}

}

作品展示及工程文件请点击原贴查看:https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=44476&highlight=%E3%80%90%E9%9B%B7%E8%BE%BE%E7%81%AF%E6%8E%A7%E3%80%91%E5%AE%89%E4%BF%A1%E5%8F%AF%2BRd-03E%2B%2B%E7%81%AF%2B%2B%2BAi-M61&_dsign=31a6d697

作品展示

wKgaomZiZkWAZbuBAABKzar8Yu803.jpeg


审核编辑 黄宇

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

    关注

    50

    文章

    3096

    浏览量

    119637
  • 安信可
    +关注

    关注

    0

    文章

    187

    浏览量

    4395
收藏 人收藏

    评论

    相关推荐
    热点推荐

    推出24G人体存在雷达模组Rd-03H

    Rd-03H是科技开发的雷达模组,搭载矽典微的S1KM0000芯片、高性能 24GHz 、1T1R天线和外围电路。S1KM0000 是
    的头像 发表于 06-19 14:25 207次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>推出24G人体存在<b class='flag-5'>雷达</b>模组<b class='flag-5'>Rd-03</b>H

    成本可降20%!新版雷达模组上架!

    随着物联网技术的快速发展,毫米波雷达作为感知层的重要组成部分,正在广泛应用于智能家居、防监控、智能照明、楼宇自动化等各类场景中。
    的头像 发表于 04-23 13:52 194次阅读
    成本可降20%!<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>新版<b class='flag-5'>雷达</b>模组上架!

    能和Ai-M61模组对话了?手搓一个ChatGPT 语音助手

    起猛了, Ai-M61模组能说话了! 超低延迟实时秒回 ,对话超丝滑的那种,先来看一段VCR: 小安派+ChatGPT语音实测:对话丝滑到忘记对面是
    的头像 发表于 03-12 11:57 515次阅读
    能和<b class='flag-5'>Ai-M61</b>模组对话了?手搓一个ChatGPT 语音助手

    雷达模组+智能照明?让“亮”出高级感

    雷达模组的应用范围非常广泛,尤其在IoT环境搭建中起到重要作用。不同的雷达模组工作波段有很大区别,应根据具体的应用环境和所需的性能指标来选择合适的雷达模组。
    的头像 发表于 02-26 14:17 281次阅读
    <b class='flag-5'>雷达</b>模组+智能照明?让<b class='flag-5'>灯</b>“亮”出高级感

    Ai-M61系列模组实现蓝牙歌词播放功能

    以下作品由社区用户 sujingliang 制作 Ai-M61 系列模组是由
    的头像 发表于 02-26 14:16 457次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-M61</b>系列模组实现蓝牙歌词播放功能

    你家也有“隐形守护者”?Rd-03雷达模组了解一下

    ,并且集成度高,这使得它能够快速推动照明市场的发展,并更好地融入到照明智能中。此外,雷达感应方案还能实现人来亮,人走灯灭的效果,从而达到节能的目的。 Rd-03
    的头像 发表于 02-14 09:33 289次阅读
    你家也有“隐形守护者”?<b class='flag-5'>Rd-03</b><b class='flag-5'>雷达</b>模组了解一下

    Rd-03高性能毫米波雷达模组介绍

    在快速发展的智能照明行业中,雷达感应技术的性能更加稳定,功耗低,体积小,并且集成度高,这使得它能够快速推动照明市场的发展,并更好地融入到照明智能中。此外,雷达感应方案还能实现人来亮,人走灯灭的效果,从而达到节能的目的。
    的头像 发表于 01-21 11:26 629次阅读
    <b class='flag-5'>Rd-03</b>高性能毫米波<b class='flag-5'>雷达</b>模组介绍

    Rd-03E改造小米门窗传感器

    )到(嫖)的Rd-03E改造小米门窗传感器,可以自由控制卫生间的。 01 Rd-03E   第一次参加
    的头像 发表于 01-15 09:23 655次阅读
    用<b class='flag-5'>Rd-03E</b>改造小米门窗传感器

    Ai-M61/M62系列模组支持CAN接口了?

    hello,小伙伴们,经过一段时间的开发和测试,Ai-M61/M62模组可以支持CAN接口了。 起因是前段时间,突然有客户想拿小安派-
    的头像 发表于 12-27 10:59 738次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-M61</b>/<b class='flag-5'>M</b>62系列模组支持CAN接口了?

    科技:更小尺寸的60G毫米波雷达模组Rd-61

    Rd-61是由科技基于RS6130开发的⼀款60GHz的毫⽶波雷达传感器模组,模块内部集成60GHz FMCW载波的AiP毫米波
    的头像 发表于 11-15 18:18 1245次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>科技:更小尺寸的60G毫米波<b class='flag-5'>雷达</b>模组<b class='flag-5'>Rd-61</b>

    60G毫米波雷达模组Rd-61产品介绍

    Rd-61是由科技基于RS6130开发的⼀款60GHz的毫⽶波雷达传感器模组,模块内部集成60GHz FMCW载波的AiP毫米波
    的头像 发表于 11-15 15:23 1021次阅读
    <b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b>60G毫米波<b class='flag-5'>雷达</b>模组<b class='flag-5'>Rd-61</b>产品介绍

    可进行精准测距、手势识别,24G高性能毫米波雷达模组Rd-03E

    Rd-03E是一款24GHz 单雷达,高性能24GHz一发一收微带天线模组,可对运动、微动人体进行探测、识别,并上报实时距离,能够探测指定区域内的目标与手势并实时上报结果。 产品可应用在 智能马桶
    的头像 发表于 08-27 16:25 979次阅读
    可进行精准测距、手势识别,24G高性能毫米波<b class='flag-5'>雷达</b>模组<b class='flag-5'>Rd-03E</b>

    24GHz轨迹跟踪人体感应雷达模组,检测区域内人员位置、数量

    ,实现对区域内目标进行 测速/测距 。 可用于 智能控制空调,风扇等家电运行,智能马桶,感应,台灯,镜子,智能调节屏幕亮度 等各行业场景中。 01高稳定性,抗干扰能力,好低功耗
    的头像 发表于 08-13 14:10 1587次阅读
    24GHz轨迹跟踪人体感应<b class='flag-5'>雷达</b>模组,<b class='flag-5'>可</b>检测区域内人员位置、数量

    告别接线!手机一键调参,Rd-Kit雷达蓝牙底板,让雷达模组使用更简单

    Rd-Kit是由深圳市科技有限公司开发的雷达蓝牙底板。该蓝牙底板核心处理器芯片PHY6252(SSOP24),是一款高集成度的低功耗蓝
    的头像 发表于 08-09 11:29 830次阅读
    告别接线!手机一键调参,<b class='flag-5'>Rd</b>-Kit<b class='flag-5'>雷达</b>蓝牙底板,让<b class='flag-5'>雷达</b>模组使用更简单

    如何用Ai-M61系列控制WS2812实现小夜灯?

    小夜灯控制主要在两个方面 一个是 MQTT 控制,实现 RGB 各种颜色的切换 这种也就是 HA 控制模式 不过缺点也很明显,只能控制单一颜色 亮度,也就是 25 个要什么颜色
    的头像 发表于 07-23 10:34 1495次阅读
    如何用<b class='flag-5'>安</b><b class='flag-5'>信</b><b class='flag-5'>可</b><b class='flag-5'>Ai-M61</b>系列控制WS2812实现小夜灯?