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

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

3天内不再提示

构建语音控制机器人 - 线性模型和机器学习

海阔天空的专栏 来源:Annabel Ng 作者:Annabel Ng 2024-10-02 16:31 次阅读

2024-07-31 |Annabel Ng

在该项目的[上一篇博客文章]中,我介绍了运行机器人电机、处理音频信号和调节电压所需的电路的基础知识。然而,机器人还没有完全完成!尽管机器人可以正确移动轮子并识别音频信号,但它仍然无法通过语音命令控制或按预定义路径行驶。

线性控制模型

首先要解决的问题是实现直线驱动。为此,我们使用线性模型来控制提供给车轮的电压。使用线性模型适合对汽车系统进行建模,因为线性系统更容易分析,并且我们可以通过找到具有近似线性行为的工作点来估计真实系统。对于我们的每个车轮,我们使用以下模型,其中 v 代表速度,d 代表编码器测量的刻度数,u 代表 PWM 信号传递的电压,theta 代表输入电压的变化以改变速度变化,beta 代表一些常数。

构建语音控制机器人 - 线性模型和机器学习

为了测试不同的数据收集速度,我们改变了脉宽调制信号 (PWM) 的占空比,这些信号是具有可变“开启”时间的方波。这些占空比代表信号所花费的时间百分比,使我们能够控制 PWM 信号的平均电压。这对于电机等系统特别有用,您可以[在此处]阅读有关 PWM 周期的更多信息!例如,占空比为 0.75 的 5V 信号会产生 3.75V 的平均电压,因此通过循环不同的占空比,我们可以轻松测试不同特定电压对汽车速度的影响。

最小二乘法

为了选择直线驱动机器人的运行速度,我们首先收集 50 到 250 个 PWM 周期的一些粗轮速度数据,然后查看数据图表以观察数据的近似线性范围。确定特定的 PWM 范围后,我们重新运行数据收集并对左右车轮速度应用最小二乘模型。最小二乘法的工作原理是找到一个线性方程,最小化到给定数据点的平方距离。这种最小二乘模型使我们能够控制输入 PWM 电压,从而线性控制速度。

构建语音控制机器人 - 线性模型和机器学习

闭环反馈

然而,最小二乘法是一个开环系统,这意味着它不会响应外部反馈。这种开环系统使机器人沿圆周行驶,而不是沿所需的直线行驶。一旦我们将反馈变量纳入系统中,使其成为闭环系统,两个车轮就会以相等的速度驱动,从而使汽车直线行驶。我们的闭环系统必须是稳定的,这意味着系统特征值的大小必须小于 1。最后,为了实现转弯,我们必须采用圆弧的几何形状,并考虑到左圆弧之间行驶距离的差异。和右轮。

现在我们的机器人可以直行并左右转弯,下一步就是建立语音分类模型。由于不同的单词有不同的波形,我们选择了 4 个具有不同音节和声音的单词,以产生不同的波形。我们使用机器人上的麦克风将每个单词录制 50 次,预处理数据,然后将数据分成训练和测试部分。我们通过垂直堆叠数据、贬低数据并对该数据进行奇异值分解(SVD)来构建矩阵。

这是分解任意矩阵的 SVD 方程:

构建语音控制机器人 - 线性模型和机器学习

对数据进行 SVD 使我们能够找到数据的“本质”,或者从头开始重建数据最重要的数据。我们可以通过选择前 3 个主成分作为新的矩阵基础来找到这些重要成分。将数据投影到这个新的基础上后,数据分裂成不同的簇,使我们能够找到每个簇的中心,也称为质心。然后,我们使用这些质心对我们的测试点进行分类:分类的工作原理是找到从测试点到质心的欧几里得距离并将其与阈值进行比较 - 如果距离小于阈值,则该点将被分类为相同的点类作为该特定质心。一旦我们有了很强的模型准确性,我们就在 Arduino 上使用这个模型来测试实时分类。

这是我们选择的四个单词的簇的图像:狗、拉布拉多、柯基犬、汽油。这些簇非常不同且分离,因此可以轻松创建基于欧几里德距离的准确分类模型。

构建语音控制机器人 - 线性模型和机器学习

当机器人能够成功地直线行驶、转向不同方向以及对语音命令进行分类之后,就到了将所有内容组合在一起的时候了。集成涉及将运动命令添加到分类程序中,因此如果 Arduino 将某个词分类为“直”,则相应的运动将是直行。经过大量测试和调整响度和欧几里德阈值,我们的机器人终于工作了!这是整个学期学习电路、控制系统和 PCA 的成果,看到它的实际应用真是太酷了。

这是完成的机器人的图像!

构建语音控制机器人 - 线性模型和机器学习

如果我再次做这个项目,我会尝试以更高层次的视角来研究它,而不是总是试图关注较小的细节。有时,我太沉迷于实际构建电路或编码算法,以至于忘记了电路在大局中的作用,直到最后我才对所有组件有了更好的欣赏。进入了这个项目。有几周我还害怕实验室,因为我知道这需要实验室的整整三个小时甚至更多,但我会提醒自己最终产品,并且我非常感激有机会将我所学到的知识应用到这个项目中!

特别感谢我的实验室合作伙伴 Eric Wen(他也是加州大学伯克利分校 EECS 的学生),以及使学习所有这些内容成为可能的课程工作人员!所有数据均来自官方网站[https://www.eecs16b.org/]。

审核编辑 黄宇

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

    关注

    210

    文章

    28053

    浏览量

    205728
  • PWM
    PWM
    +关注

    关注

    114

    文章

    5109

    浏览量

    213045
  • 机器学习
    +关注

    关注

    66

    文章

    8337

    浏览量

    132255
  • 语音控制
    +关注

    关注

    5

    文章

    477

    浏览量

    28206
  • 线性模型
    +关注

    关注

    0

    文章

    9

    浏览量

    7797
收藏 人收藏

    评论

    相关推荐

    Al大模型机器人

    丰富的知识储备。它们可以涵盖各种领域的知识,并能够回答相关问题。灵活性与通用性: AI大模型机器人具有很强的灵活性和通用性,能够处理各种类型的任务和问题。持续学习和改进: 这些模型可以
    发表于 07-05 08:52

    SPCE061A语音识别机器人应用方案

    为了提高广大单片机爱好者学习单片机的兴趣,凌阳科技大学计划教育推广中心推出了应用SPCE061A作为主控制器,外加电机驱动电路制作的语音识别机器人。该
    发表于 03-08 17:09

    智能避障语音遥控机器人

    我们设计的这款智能机器人,通过语音识别功能对智能机器人进行遥控,遥控的语音指令有前进、后退、左拐、右拐等运动控制指令,另外还加入一个音频播放
    发表于 10-26 22:50

    会物体识别和语音识别的nao机器人

    是nao机器人的伟大之处。面部探测与识别这是最广为人知的一项互动功能。nao机器人可探测并学习记忆不同的面部,此后,它可对其进行识别。语音合成nao
    发表于 02-13 14:09

    智能语音机器人

    ` 本帖最后由 星希望532 于 2015-12-2 20:06 编辑 作品名称:基于微型操作系统的智能多平台控制语音机器人http://v.youku.com/v_show
    发表于 12-02 19:08

    企鹅机器人是怎么样的?

    企鹅机器人由BS2控制控制两个角度舵机实现模拟企鹅的行走,包括前进,后退与转向,同时还可以控制另外两个角度舵机模拟企鹅翅膀的动作;语音播放
    发表于 03-29 17:29

    请问电销机器人智能语音识别的原理是什么?

    一个人们最为关心的问题大概就是,电销机器人如何做到语音识别,通俗来讲,就是电销机器人如何“听懂”人们说话?其实语音识别技术是人工智能的一项基础研究,但同时也是多年来一直横亘在研究者面前
    发表于 06-12 14:03

    AI语音智能机器人开发实战

    第四期直播PPT下载:第三期直播PPT+程序下载:第二期直播PPT下载:第一期直播PPT下载:主题简介及亮点:以AI智能语音陪护机器人为载体,彻底讲解整个机器人研发的全流程,从开发环境搭建、到软硬件
    发表于 01-04 11:48

    机器人基础书籍

    列举部分学习过程中接触的部分书籍,部分有中文版,部分有更新版本。1.机器人基础书籍适合入门的书籍:机器人机器人建模规划与控制
    发表于 05-22 06:53

    ROS环境下控制Baxter机器人学习记录

    1、前记:这篇博文为自己学习是的记录,做这一切的目的就是熟悉ROS环境下如何控制Baxter机器人做运动。以便将来对其控制的扩展,如基于视觉(单目,双目,或Kinect)交互的
    发表于 05-28 07:50

    “协作机器人”如何快速处理传感器数据

    无论是传统的工业机器人系统,还是当今最先进的协作机器人(Cobot),它们都要依靠可生成大量高度可变数据的传感器。这些数据有助于构建更佳的机器学习
    发表于 08-05 07:08

    四足机器人的机构设计

    机器人结构本体能够有效承受运动冲击、模拟四足动物运动的先决条件;高性能驱动器为机器人运动提供足够动力,行走稳定性控制负责协调多个关节驱动器,实现机器人稳定行走;强化
    发表于 09-15 06:54

    机器人技术和机器学习

    机器人技术和机器学习正成为嵌入式系统硬件和软件供应商的下一个重大事件。嵌入式系统可以通过网络连接和物联网(IoT)来传递信息、共享资源。无论是智能,低能耗,边缘设备,中间网关还是计算节点,都需要
    发表于 12-20 06:03

    将Simulink模型与Lego机器人结合使用

    。Simulink工厂和控制模型与LEGO的最新高科技机器人(基于ARM的LEGO Mindstorms NXT)一起使用,以说明基于模型的设计与生产代码生成的工业应用。注意
    发表于 12-20 07:15

    语音机器人构建

    电子发烧友网站提供《语音机器人构建.zip》资料免费下载
    发表于 07-06 09:59 0次下载
    <b class='flag-5'>语音</b><b class='flag-5'>机器人</b>的<b class='flag-5'>构建</b>