Hackaday.io上的树莓派项目-高斯机器学习机器人平台
收藏
分享
脑图
Hackaday.io上的树莓派项目-高斯机器学习机器人平台
关于项目
项目描述:在我学习电子工程的第四年,我决定为上学期的一堂课做一个机器人。这个类被称为系统和信号理论,在那里,我着迷于我们可以完成的东西与简单的数学运算,由程序,如Matlab或编程语言,如Python的计算能力。开发的主要应用包括用于电路中自动驾驶的机器学习、语音识别、远程信息处理远程控制、增强现实和 QR 码识别以及人脸识别。一个机器人应用程序被开发,以控制机器人。
项目详情
机器人它基于树莓派模型 B + 配置与自定义喘息 OS。我有一个WiFi卡,用于创建自己的网络远程连接和远程控制。这允许板连接到计算机并访问主板和 arduino 中包含的远程信息处理数据。连接基于 SSH,更新可以通过互补的 TCP 套接字发送到主板。
树莓派显然没有所需的计算能力,我什么,我抱怨(自动驾驶和图像处理),所以的方式去它处理一切在外部计算机,然后让机器人行动。因此,主要的机器人应用将在机器人外的电脑中运行,机器人将长期充当机器的"木偶"。这样,我们还可以使用操纵杆远程控制机器人,并获取自动驾驶所需的远程信息处理数据。这解决了处理能力以相对较低的成本,使我们能够测试更先进的算法,如VGG16神经架构。
机器人能够提供以下方面的远程信息信息:
60 FPS 时 RGB 图像的视频馈送,分辨率为 1080 比 720
基于 PWM 脉冲频率的车轮速度
摄像机的伺服角度和目标位置
来自摄像机麦克风的单声道音频输入
树莓 PI 中包含的任何信息,如已保存的图像、文件和 GPIO 数据
自动驾驶
对于自动驾驶部分,我们主要使用VGG16网络无头。这意味着我们删除了密集的 netwok,它分类图像的功能,并将其替换为我们自己的,在术语中,它给出了所需的车轮速度作为输出。为了训练,在我的公寓的地板上用纸条画了一个电路,机器人被配置为远程控制。我驾驶机器人通过分路电路, 确保每隔几次改变它。结果是一个包含图像信息和每个帧记录的车轮速度的 havy 数据集。我们在我的大学里训练了几个小时的神经网络。结果是对自动驾驶的一个很好的应用,考虑到图像和处理网络传输的延迟,速度相当合理。每帧需要 80 毫秒来处理黑白调整图像。未来的测试将包括更快的 GPU 用于 RGB 处理和更完全的 Neral 网络。
人脸识别
机器人的另一个应用或用例是识别人的脸。当我在代表我们大学的大会上介绍机器人时,这是主要的吸引力。人们停下来一分钟, 走近我们的海报, 因为他们说 :"我看见那个机器人看着我" 。该算法是使用Python编码的像Haar一样的功能的众所周知的面部识别算法。找到面后,伺服器会移动以使面部在相机中居中居中。简单但相当有效,显然对很多人友好。像这样简单的互动,通过确保人类在机器人面前感到舒适,认为机器人是接近性而不是外星人,帮助缓解人类和机器人之间的关系。
项目图片
1 X 树莓派 B+
1 X Arduino Pro Mini
1 X 定制PCB
2 X 直流电机
2 X S3003 伺服电机
1 X 定制丙烯酸沙西斯
1 X Wifi 加密狗
1 X 9v 电池组
1 X 日志 C170 USB 摄像机
第 1 步
所以我需要设置机器人是无线的,有一个摄像头,并驱动2个直流电机和2个伺服威尔阅读从传感器和相机输入,容易。那么,对于无线部分,我要求机器人自由移动没有以太网电缆,我发现这样做最好的方式是使WiFi热点,他树莓派本身。我将留下链接,我如何设置这个和下几件事在这个项目页面。之后,计算机可以免费连接到raspi,并与Pi建立SSH连接,这里的奖金是Pi总是得到相同的IP地址,所以我不必修改脚本每次运行。对于相机,我第一次看到Raspi凸轮的例子在数学页面,但说实话,在我的国家,Rapi凸轮的成本一样多的开发板,所以我选择了摄像头,我知道它是兼容的。现在我需要从 Matlab 原始功能不支持的凸轮获取图像, 这里的工作是通过 Pi 中的 8080 端口建立 IP 摄像机, 并阅读 Matlabs Ip Cam 支持包的图像 (我仍然试图做到这一点, 现在我使用运动程序, 但我有一个 2 秒的延迟, 现在我倾向于 mjpeg 流, 但还不能配置它相当不错) 。值得一提的是,如果你有一个Raspi相机这个设置是非常直截了当的,不存储这么多的配置。
正如互联网上的每一个博客都说的, Raspi 处理得不好 Pwm 。我在论坛上总是得到的反应是,Raspi 的核心频率可以波动,从而在 PWM 输出信号中产生差异。所以我不能用轮子和伺服器。我的解决方案,使用阿杜伊诺。我在使用Matlab通过串行发送的矩阵之间做了一个简单的通信标准,用两个电阻分压器加压电压,这样事情就完成了。几个小时后,我设计了一个Raspbery帽子,可以容纳Arduino Pro Mini,并调节电压到5v的两个设备,使用鹰CAD。该板还具有两个开发板的所有引脚的连接、作为直流电机驱动器的 L293D、电压调节器、串行编程器引脚以及伺服和直流电机输出引脚。
在所有这些电子和软件混乱的中间,我设法在AutoCAD中设计了一个Chasis,并测试了其结构稳定性和部分间隙与Autodesk Inventor(这样做是因为正如我提到的前一个机器人有一个倾向撕裂自己,我使用了一个容易分解的材料,毕竟不是一个伟大的组合;但正如我所说,我仍然在努力它)。第二天,我把我的剪布打印在我的当地的激光切割车间,到下午,它完成了(这是8月9日)。
这是我第一次更新这个项目,希望我在几个星期内能有更多的介绍给你们。根据我的大学的说法,这个项目的完成日期是3月1日,但这并不意味着我会完成它,告诉你,我们可以用这个东西做很多事情,我相信我不会到3月。你可以通过 Instagram (@ich_heisse_augusto) 关注我作品的更新, 并免费给我发推文 (@Fre4k4zoid) 。
第 2 步
今天 30/11/2016 我刚刚完成编译 mjpg 流为 Raspi, 花了我相当多的时间找到一个很好的指南, 如何做到这一点, 但昨天我发现这个链接( https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=100818), 这完美地解释了如何做到这一点.这允许我通过 Wi Fi 进行连续图像流,延迟最多为 100ms。下周我将研究面部跟踪算法, 因为我发现它行为不正确。
评论
0 / 100
查看更多
1503881740
2020-08-19
787
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号