×

让Segbot与我一起演奏二重奏

消耗积分:0 | 格式:zip | 大小:0.18 MB | 2022-11-16

王辉

分享资料个

描述

顾名思义,我的最终项目是让 Segbot 与我一起演奏二重奏,同时随着我演奏的二重奏部分跳舞。我选择的歌曲是钢琴家中的经典二重唱“Heart and Soul”,最初由 Hoagy Carmichael 于 1938 年创作。为此,最重要的功能是利用 FFT 信号处理来触发不同的动作,例如开始歌曲或基于特定频率信号的 Segbot 的各种舞蹈动作。在二重奏中,Segbot 使用原始蜂鸣器和为本项目添加的另外三个蜂鸣器播放节奏,而我在钢琴上演奏旋律。Segbot 将对钢琴的音符输出的不同频率做出反应,并随着旋律起舞。我想知道原作曲家会如何看待 Segbot 对他作品的演绎。

在我在 UIUC 的最后一个学期,研究这个 Segbot 是我发现在我的本科生涯中最具挑战性但也是最引人注目的课程之一的主要重点。为了开发我在课堂上的期末项目,我的主要目标是建立自平衡能力并使用麦克风传感器。为此,我不仅需要引入一些新代码,而且还严重依赖于整个课程中教授的材料以及 TI F28379D Launchpad 的多功能性。

我在最终项目中使用的代码借鉴了我们迄今为止在本课程中完成的所有实验室作业。然而,该项目最重要的两个实验室是 Lab 3 和 Lab 7。在 Lab 3 中,我们了解了 Segbot 的蜂鸣器,以及使用 Launchpad 中的 PWM(脉冲宽度调制)引脚向主机播放歌曲的能力。周期,或所选 C​​PU 定时器中断的速度。Lab 7 建立在 Lab 4、5 和 6 的基础上,使 Segbot 能够自我平衡,并使用键盘按钮进行控制。实验室 1 中的代码还实现了让 Segbot 上的 LED 灯显示对应于不同舞蹈动作的不同数字。

虽然之前的课程为该项目提供了一个坚实的开端,但仍有一些剩余的步骤。第一步是将三个额外的蜂鸣器和电阻器焊接到 Segbot,并将这些蜂鸣器和电阻器系列中的每一个发送到可用的 PWM 引脚。这是对 Segbot 的唯一物理修改,但为了适应这种变化,还需要更改基于 Lab 3 的代码,以使用分配给每个蜂鸣器的四个不同 PWM 引脚同时播放四个音符。还需要更改基于 Lab 7 的代码,以允许 Segbot 跳舞并执行其他操作以响应特定频率。为此,首先引入了乒乓缓冲区样式代码来读取麦克风给出的 FFT 信号。使用这个,

经过几个晚上的 Segbot 舞蹈课,机器人既可以背诵二重奏,也可以根据钢琴音符的 FFT 缩放频率执行各种舞蹈动作。


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

评论(0)
发评论

下载排行榜

全部0条评论

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