电路设计论坛
直播中

杨雪

7年用户 1103经验值
私信 关注
[资料]

建立一个开放的软件和硬件平台

描述
该项目旨在建立一个开放的软件和硬件平台(分别为 Hivemind 和 Hiveboard),允许实施机器人群,从异构机器人和 Android 智能手机进行同步定位和映射 (SLAM)[1]。Android 手机可以用作增强现实界面来查看生成的共享地图,也可以用作机器人群的控制界面。这项技术突破正在一个重大工程设计项目中进行,并将在 2021 年 MegaGéNIALE 博览会上展示。该项目本质上是学术性的,将由机器人研究小组 IntRoLab[3] 的 3IT[2] 的客户使用。

机器人部分
SwarmUS 团队的任务是更新其客户实验室 (IntRoLab) 未使用的两台旧 Pioneer 2DX。这些机器人不仅会返还给客户,还会作为基准测试来测试我们的 swarm 平台。由于这些机器人的电子设备和软件已经过时,因此需要对该机器人进行全面升级,只保留底盘和电机。


力量
机器人由 12V GOOLOO GP37-Plus LiPo 电池供电。这些电池具有一些内部保护和集成充电器,从而简化了围绕机器人电源的设计。但是,需要额外的欠压保护,以防止机器人将电池电量耗尽至低于 LiPo 电池的电压限制。

欠压锁定板
然后,该团队设计了一个包含欠压锁定 (UVLO) 和电压监控电路的定制 PCB。该解决方案在电压降至选定阈值以下时会发出高音,并在另一个较低阈值以下打开主电源继电器。


电力调配
电源树分为 3 个主要部分:12V 主电源、12V 电机电源和 5V 计算机电源。一个由拨动开关和 UVLO 板控制的主继电器将电池连接到 12V 主电源,该主电源反过来为 5V@5A 稳压器和另一个控制电机电源的继电器供电。电机继电器由红色蘑菇按钮控制,可在紧急情况下轻松切断电机的 12V 电源。5V 稳压器为主计算机和所有机器人传感器供电。


传感器、计算机和电机控制器
机器人大脑是在 Linux 20.04.1 LTS 上运行的 Raspberry Pi 4 4GB。为了感知其环境,机器人配备了 RPLidar A2M8 以可视化其周围的障碍物,并配备了 Realsense D435i 或 Realsense D455,具体取决于机器人,以获得其前方场景的视觉和深度信息。除了传感器之外,BasicMicro 的 RoboClaw 2x60A 还用作电机控制器,因为它具有内置保护、PID 控制和正交编码器读取功能。电机控制器和所有传感器通过 USB 连接到 Rasberry Pi。此外,Hiveboard 和 BeeBoards 被集成到机器人中,并通过以太网连接到 Raspberry Pi,为机器人提供必要的硬件来加入一个群体。


机械改装
电子元件和计算机由采用激光切割技术制成的木板进行维护,以完美贴合机器人狭窄的内部。机器人的传感器支撑和侧面板是 3D 打印的,为我们在设计过程中提供了更大的灵活性。


机器人软件
Raspberry Pi 在 ROS(机器人操作系统)中间件中运行所有机器人的软件。在传感器、导航堆栈和 RTAB-Map 的帮助下,机器人可以在其环境中移动,同时对其进行映射并在其中定位自己。团队制作了额外的 ROS 包,以将 ROS 环境连接到在 HiveBoard 上运行的 HiveMind,让群体行为控制机器人。


我们的一个机器人制作的地图


硬件部分
以下部分将详细介绍 SwarmUS 项目的 3 块 PCB:
· HiveSight:Decawave 超宽带 (UWB) 集成电路 (IC) DW1000 的测试平台
· Hiveboard:上一次迭代的中心板
· BeeBoard:UWB“传感器”
HiveSight
如前所述,HiveSight 是团队的测试平台。它证实该团队可以使用我们可以使用的设施来制作功能正常的 PCB(从设计到测试)。它也是 UWB 技术的测试平台。让我们回顾一下董事会:


1、保护:具有过压、过流、反极性功能
2. USB:USB IC打开一个COM端口用于调试目的。它连接到 u-USB 端口
3. 3V3&1V8 Gen:板载 3v3 和 1v8 电源轨生成。1.8V 来自 3.3V 电源轨。板上的所有组件都使用 3.3V 电源轨。只有 Decawave IC DW1000 使用 1.8V 电源轨。
4. IMU:惯性测量单元
5. WROOM 复位:ESP32-WROOM 的物理按钮(位于 PCB 的底部) ESP32-WROOM 是一个 Wi-Fi IC。
6. Flash 32k:32 Kb闪存。由我们的 ESP32 定制解决方案使用。
7. ESP32:ESP32(Wi-Fi IC)的自定义实现。此实现用于在我们的自定义实现和 WROOM IC 之间进行比较。
8. CLK Gen:为 DW1000 生成 38.4MHz 时钟。还包括两个 DW1000 的同步信号。
9. DW1000:超宽带IC。用于定位其他 HiveSight 的距离和角度。每个 DW100 有 4 个 LED 用于调试目的。

5V 电源轨可以来自 2 个不同的地方:
· 从左上角的绿色连接器
· 从 u-USB 连接器

此外,3.3V 电源可以来自 3V3 电源轨或由 Nucleo 供电。Hivesight 还可以为 Nucleo 提供 5V 或 3.3V 电压。然而,在测试我们的设计时,我们注意到当 Nucleo 向 HveSight 提供 3V3 电压时,它会闪烁过电流警告。我们建议为 HiveSight 使用单独的(如绿色连接器/u-USB 连接器)电源。

HiveSight 和 Nucleo 之间的 SPI 通信有点不足,因为我们在布线时没有正确处理 SPI 线路(从上到下变化太多),并且接地回路不是最小的。我们没有正确连接 HiveSight 的每个连接器的接地,这会减慢 SPI 总线。我们可以做的总线的最大速度是 1Mbit/s 的数据。

到COM口IC的USB线切换了正负数据线,导致COM口出错。我们建议通过移除 ESD 保护并焊接一些导线来更改设计或以正确的顺序放置数据线。在我们的实现中,这是我们使用的方法,并在顶部涂上热胶以防止意外断开连接。




此外,IMU 从未安装在我们的版本上,因为足迹没有焊膏开口,因此没有焊料,并且该部件从未连接到电路板。这个简单的错误将在下一个实现中修复:Hiveboard。
HiveSight 设计用于与 STM32F429ZIT Nucleo 一起使用(尽管丝印上提到了 STM32F426,这是我们的另一个错误)。
所有文件(原理图、BOM、PCB、Gerbers)都在 Github 链接中。

PCB+展示












代码
https:///www.github.com/swarmus

更多回帖

发帖
×
20
完善资料,
赚取积分