×

激光雷达入侵探测器开源分享

消耗积分:0 | 格式:zip | 大小:0.35 MB | 2022-10-27

张娟

分享资料个

描述

我需要一个户外入侵传感器用于我的车道,其范围比 PIR 更长,并且没有误报。所需的范围是 40 英尺,而大多数 PIR 传感器只能做大约 30 英尺,并有产生误报的倾向。我有一个家庭安全系统,但没有可靠的传感器可以覆盖我的整个车道。电源将是一个插入交流电源插座的 5 伏直流 USB 变压器,但我也想试验电池电源,因为在我的车道入口附近没有附近的外部交流电源插座。

我从 Arduino Uno 开始,并尝试了各种传感器,包括 PIR、热像仪、超声波 PING 和 X 波段雷达。他们都没有我需要的范围。我尝试了几种不同的 PIR 传感器,发现它们容易出现误报。接下来我尝试了 Garmin LIDARLite v3HP 传感器。这对于光束中断非常有效,并且不受外部天气或光线变化的影响。与车库门光电光束不同,LIDAR 传感器不需要反射器,而且范围更大。起初,我使用了脉冲宽度调制 (PWM) 接口,该接口运行良好,但由于距离读数不稳定而产生了一些误报。

接下来,我需要将它连接到我的家庭 wifi 网络,因此我在 Uno 原型屏蔽上添加了 WINC1500 wifi 屏蔽和 DS1307 实时时钟 (RTC) 分线模块。当检测到入侵时,需要 RTC 提供准确的时间戳。Uno 没有足够的内存用于 WIFI 草图,并且带有两个屏蔽的外形尺寸太大,消耗的电流太大,无法在任何时间长度的 LiPo 电池上运行。

此时我意识到这是 IoT(物联网)板的完美用例,因此我切换到 Arduino MKR WIFI 1010。与 Uno 的 32KB 闪存相比,MKR 1010 具有 256KB 的闪存和 32KB 的 SRAM内存和 2KB 的 SRAM。MKR 1010 体积更小、电流更低,并具有板载实时时钟、WIFI 和蓝牙。

MKR 1010 轻松连接到我的 wifi 网络,并且为我的草图和它需要的所有库提供了足够的内存。RTC 工作得非常好。下一个要解决的问题是如何向我的 iPhone XS 发送推送通知。Internet 搜索确定了三个候选 Web 服务:Blynk、Amazon Web Services (AWS) 和 Pushsafer。向 iOS 或 Android 设备发送推送通知需要您安装侦听器应用程序。它们都不是完全免费的,但之后会提供不同数量的初始事件报告和订阅计划。AWS 是最复杂的,因此我取消了它。Blynk 和 Pushsafer 的价格差不多,但 Pushsafer 实现起来稍微简单一些,所以我选择了它。

我对 LIDARLite v3HP PWM 接口不满意,因为距离读数不稳定,偶尔会导致误报。我尝试使用 LIDARLite_v3HP 库的最新版本 (3.0.5) 和示例草图 v3HP_I2C 为内部集成电路 (I2C) 串行通信重新接线。它不会为 MKR 1010 板编译而不会出现错误。我在 GitHub 上发布了一个问题,在几次交流中附加了详细的编译器错误之后,Brad Wiseman 将 LIDARLite 库更新到了 3.0.6 版,并为我提供了有关如何为 MKR 1010 成功编译的详细说明。我使用了来自LIDARLite_v3HP v3HP_I2C 示例草图来构建我自己的草图。v3HP I2C 接口的最终性能比 PWM 接口更准确、更稳定。

我决定尝试将 LIDAR Lite v3HP 传感器安装在伺服系统上,并让它以 90 - 180 度的弧度扫过车道。在花费大量时间对不同的舵机、舵机定位方法和时间延迟进行试验后,我得出结论,即使使用舵机缓慢移动激光雷达传感器也会产生过多的误报。LIDAR 传感器的内部电路需要一个稳定的环境来纠正误报,并且在传感器处于固定位置时效果很好。距离读数不稳定的原因有多种,例如物体表面的反射率和红外激光束撞击目标的角度。添加移动伺服使情况变得非常复杂,因此我将激光雷达传感器恢复到项目箱上的固定安装。

激光雷达经常用于 3D 映射和障碍物检测,因此可以通过正确的算法解决移动激光雷达传感器的误报问题。我对使用激光雷达来感知光束中断更感兴趣,但在某些时候我可能会重新考虑将传感器安装在伺服系统上以覆盖更大的区域。这会增加电池消耗,我可能需要更大的电池。

对于硬件连接,我使用了 LIDARLite_v3HP 数据表中的标准 I2C 接线图。

自从这个项目发布以来,我已经开始尝试使用安装在伺服系统上的 LIDAR-Lite v3HP 传感器进行有限形式的 LIDAR 映射。目标是最大限度地减少误报,同时最大限度地增加真正的入侵。通过在大多数伺服系统可以处理的 180 度弧上平移传感器,可以构建 180 点距离图作为参考,而不会造成干扰。然后将伺服安装的激光雷达传感器在同一区域连续来回扫描,并与参考地图进行比较。建立阈值以识别真正的入侵,当参考地图和距离读数之间的差异超过阈值时,会生成警报。实现目标的关键在于用于将参考地图与距离读数进行比较的算法。简单地在每个度点减去两者并不足以最大限度地减少误报。机器学习可能是解决这个问题的一种可能的技术。我正在研究如何在这个项目中实施它。一旦发现了可行的技术,我计划引入倾斜伺服系统并水平 180 度和垂直 20 度扫描目标区域。在 20 度倾斜和 40 英尺距离处,激光雷达光束将覆盖约 4 英尺的高度。这应该足以区分动物与人类或车辆之间的区别。我计划引入一个倾斜伺服系统并水平扫描目标区域 180 度和垂直 20 度。在 20 度倾斜和 40 英尺距离处,激光雷达光束将覆盖约 4 英尺的高度。这应该足以区分动物与人类或车辆之间的区别。我计划引入一个倾斜伺服系统并水平扫描目标区域 180 度和垂直 20 度。在 20 度倾斜和 40 英尺距离处,激光雷达光束将覆盖约 4 英尺的高度。这应该足以区分动物与人类或车辆之间的区别。

我发现伺服类型和伺服运动之间的延迟是减少误报的关键因素。由于机械部件的缺陷,许多小型伺服系统可能会出现多达 1.3 度的误差。尼龙齿轮伺服系统更平滑,产生影响距离读数的振动更小。在没有连续位置脉冲的情况下保持在位置的伺服系统也具有较小的振动。伺服定位运动之间的 100 毫秒延迟有助于减少振动,但使 180 度扫描持续 18 秒。我考虑使用滑环电机并连续旋转激光雷达传感器以消除伺服振动、减少机械误差并加快距离读数。Adafruit' s SRC022A-6 滑环电机的转速为 0 - 300 RPM,但我仍然需要倾斜伺服,并且电流消耗可能会增加到无法使用电池操作的程度。我一直在研究直接驱动、数字伺服系统以克服其中的一些限制。

 

 


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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !