12| 1
|
[项目] 【Arduino 动手做】用于递送小包裹智能送货机器人 |
智能送货机器人 我制作了一个智能送货机器人作为 2023 年 OpenCV AI 竞赛的参赛作品。您可以在下面的视频或文本中获取简要信息。 我的项目视频 该项目是一辆六轮机器人车。它可以将小包裹运送到医院、餐馆、办公室或仓库等许多地方。运输包裹时,顶盖被锁定。到达目的地后,机器人等待在盖子上的键盘上输入 PIN 码,或者您可以向它出示一个特殊的二维码来接收包裹,如果验证成功,顶盖就会解锁。车辆行驶在绿色的引导线上,必须放置在机器人可以通过的地方,更多信息在名为“使用机器人”的章节中。 机器人的构建 3D 打印 首先,您必须 3D 打印所有机械部件。您可以在 CAD 文件列表中找到它们并下载它们,但必须重新排列。我用 PLA 3D 打印了它们,填充物为 15%,只有轮胎是用 FLEX 打印的,还有 15% 的填充物。 底座组件 下一步将介绍底座(带有 Raspberry Pi 4B 的板、电机等)的组装。取一个 3D 打印的 BasePlate,将 Raspberry Pi 4B 放在打印件上的四个棒上,然后用四个 3D 打印部件覆盖它们RPI_EndCap。然后,您需要将两个带有双面胶带的 L298N 电机控制器粘在它们的框架上(您必须调整它们的方向,使电源连接器彼此相对)。然后,取一个 3D 打印的CPU_Fan_Holder,用速溶胶将其粘在用于风扇的孔(细长矩形)上。现在放入 30x30x8 mm 风扇并将其放入(电缆必须穿过部件的侧孔。用 3D 打印 FanFrame 覆盖它。之后,按照下面的 Fritzing 图连接 L298N 模块。将 CPU 风扇的红线连接到树莓派的 5v 引脚,将黑线连接到 GND 引脚。 电机和底部组件 建造基地后,您必须建造车辆的底部。将所有六个电机放入名为 Motor_Case 的 3D 打印中。然后,取Bottom_Plate并用速溶胶将其粘在底座上(方向无关紧要。现在将所有带盖的电机放入圆形边的半圆柱体中。不要忘记将电缆穿过底部的小孔,这可能很棘手,但这是必要的。然后将Motor_EndCap胶在所有电机的外端。现在,把轮胎装上轮子。之后,在电机的轴上安装轮子。现在您已经安装了底部部件,让我们继续安装带有灯和电源管理的中型部件。通过小孔,您必须安装巡线传感器。将左侧传感器连接到 GPIO 6,右侧连接到 GPIO 5。 灯和电源管理组件 现在,取一个名为 LightsPowerMain 的 3D 打印件,并将其底部棒粘在先前组装的部件的顶部 - 三个大矩形(电池座位于 Raspberry Pi 4B 上方,位于机器人的前面)。如下图所示将电线焊接到电池座上,然后将它们放入前面提到的三个矩形中。现在拿一条双面胶带贴上一个 5v 继电器、电池保护模块、两个升压模块、一个 6-24v 转 USB 降压模块和一个 HX711 AD 转换器。将 DC 插孔连接器粘在侧面的小孔中,以便可触及。现在,按照电池的 Fritzing 图焊接电源管理电路的第一部分。接下来,将电池放入电池座中。之后,在前孔中放入第二个 30x30x8 毫米风扇,电线必须进入车辆内部。用 FanFrame 3d 打印部件覆盖它。现在组装四组 LED(五个白色(正面)或红色(背面)LED,两端一个黄色 LED)并将它们连接到 Raspberry Pi,如 Fritzing 图所示。之后,用胶带固定前置摄像头,镜头必须可见,如果不合适,则必须为网络摄像头重新设计文件。将该网络摄像头插入 Raspberry Pi 的 USB 端口。接下来,从内部安装两个 HC-SR 04 传感器。现在不要连接它们。然后,连接 USB A 转 USB C 线缆,将模块向下移动,并将线缆的第二端连接到树莓派上的电源插座。最后,再次将风扇的红色电缆连接到 Raspberry Pi 的 5 V 引脚,将黑色线连接到 GND 引脚。 传感器板组件 以名为 SensorPlate 的 3D 打印件为例。将其粘在灯和电源板上(方向 - 小孔朝后。将 RPi 相机 v 1.3 粘贴到该孔(镜头可见),将 CSI 电缆连接到 RPi。将 Arduino nano every、MPU 6050 陀螺仪加速度计和 HMC5883L 磁力计(指南针)放入此打印中。连接上一章中的两个 HC-SR04 传感器,如下面的第一个 Fritzing 图所示。然后连接 MPU 6050,并按照 Fritzing 图 2 和 3 中的 HMC5883L。然后,将称重传感器焊接到 HX711 上,并将 HX711 模块连接到 Arduino nano,如第四张 Fritzing 图所示。在将称重传感器放入 3D 打印中之前,您必须在称重传感器的一侧拧上两个 M4x16 螺钉,螺钉头朝下,在另一侧拧上螺钉头。用螺丝头粘在底部。将顶部螺钉头粘在称为 Loadcell_Top 的部件上。现在返回电池并将 10K NTC 热敏电阻粘在一个电池的顶部。通过第五张图中的 10K 电阻器将其连接到 Arduino(不要连接将在构建结束时连接的 LDR。此外,将继电器连接到 Nano 每个引脚的 D6,如图 6 所示。您是否在照片中发现了两个未使用的孔?它们用于可选安装 NEO 6M GPS 模块和天线,代码中未使用(用于将来的升级),如果您想放置它,请像上一个 Fritzing 图一样接线。最后,将 micro USB 电缆从 Arduino nano Every 连接到 Raspberry Pi 4B,并用 CompassCover 覆盖HMC5883L,用 GyroCover MPU6050,Arduino Nano Every 用 NanoEveryCover 覆盖 封装区域组件的底部 这部分组装将非常简单。只需取一个名为 BottomPackagePlate 的 3D 打印部件并将其粘在先前组装的部件上(方向 - 称重传感器的孔必须位于称重传感器上方)。 包装盒组装 下一个简单的部分是包装盒的组装。您只需将名为 PackageBox 的 3D 打印件放在组件上(方向 - 两件上的大电缆组织孔是合适的。最后,您将将它们粘合在一起。 顶部组件 在构建的其余部分之后,机器人构建的最后一个部分将非常困难 - 机器人车辆的顶部。进行名为 Top 的 3D 打印,将名为 lid 的打印件放在那里,将 LidRod 拉过并将 LidCaps 连接到杆的末端(如下图所示)。让我们继续讨论太阳能电池板。将其连接到开关以打开和关闭太阳能电池板,如下面的 Fritzing 图所示,然后将其连接到升压模块之一并将升压模块设置为 8.4v(在太阳能电池板上发光,连接万用表上的输出引脚,旋转升压模块上的微调器并达到 8.4v)。之后,将 12 V 电磁锁连接到继电器的 NO 和 COMs 引脚以及其他升压模块,如第二个 Fritzing 图所示。将锁粘成矩形,并在打印件底部写上“lock”字样,锁闩必须在移动部分的外部,安装时需要按下闩锁。在顶部的小孔中安装 LDR,如热敏电阻的 Fritzing 图所示。现在将 3 个带有 200 欧姆电阻器的绿色 3 毫米 LED 安装到带有三个小孔的隔间中,并将它们连接到 Arduino,作为第三个 Fritzing 图。现在将 6 个带有 200 欧姆电阻器的 3 mm LED 连接到 CD4017 中,并将 LED 放入一个带有六个小孔的小隔间中。之后,您需要将 CD4017 连接到 Arduino,就像第四个 Fritzing 图中所示。然后连接 12 按钮键盘,如第五张 Fritzing 图所示。下面。将所有电缆穿过背面的一个大细孔。接下来,将组装好的顶部粘在机器人上(圆角正方形位于机器人前面)。最后,在前面的圆角方块中,您可以粘贴 NFC 标签并在上面放置 3d 打印 NFCSign,或者不使用 NFC 并使用 NoNFCSign 打印。你做到了! 使用机器人 如果要使用机器人,则必须将 Python 脚本复制到 Raspberry Pi4 并使其以这种方式自动运行。 1) 首先,打开终端并运行要在登录时执行 python 脚本的用户的 crontab 脚本 $ crontab -e 2) 如果你是第一次使用 crontab,你可能需要在终端中选择文本编辑器,如果可能,请选择 nano。 3) 从我的 Hackster.io 项目中下载主程序 4) 运行这两个命令(您可能需要输入密码) cd /home sudo mkdir robot 5) 找到您的文件 - 如果您已将文件下载到默认文件夹,请运行此代码,但您需要更改用户名,或者如果您没有将其下载到默认文件夹,请输入 cd /,后跟您的文件位置(文件夹)。 cd /home/your_rpi_username/Downloads 6) 将文件移动到正确的目录 sudo mv robotmainscript.py /home/robot 7) 将此代码添加到文件中。它使脚本在 Raspberry Pi 的引导上运行。 @reboot /home/robot/robotmainscript.py 8) 测试 sudo reboot 在视频中使用黑线而不是彩线。您可以从代码中获得很多信息(只有用于您自己目的创建代码的草稿,可能不适用于某些版本的 Raspbian)。可以使用 https://www.the-qrcode-generator.com/ 创建 QR 码。我在这个项目上工作了很长时间,感谢你的制作。 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
【Arduino 动手做】用于递送小包裹智能送货机器人 项目链接:https://www.hackster.io/vit-skvara/smart-delivery-robot-d9bd76 项目作者:Vit Skvara 项目视频 :https://www.youtube.com/watch?v=cLOtk59aklc 项目代码: https://www.hackster.io/code_files/648248/download https://www.hackster.io/code_files/648469/download 机器人 F3D :https://hacksterio.s3.amazonaws. ... t_v1_S9m3DHmT6W.stl 机器人 3MF:https://hacksterio.s3.amazonaws. ... t_v1_3d0nL8PMZq.3mf ![]() ![]() |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed