資料介紹
描述
介紹
該項(xiàng)目將創(chuàng)建一個(gè)節(jié)拍器,它可以隨著來(lái)自 Alexa 設(shè)備的亞馬遜音樂(lè)節(jié)拍移動(dòng)。添加圖片,它就變成了……METRO-GNOME!
它是 LEGO MINDSTORMS 語(yǔ)音挑戰(zhàn)任務(wù)的簡(jiǎn)單擴(kuò)展。在你開(kāi)始這個(gè)項(xiàng)目之前,你需要完成設(shè)置,至少完成任務(wù) 1 和 2。這將涵蓋基礎(chǔ)知識(shí),所以我不會(huì)在這里重復(fù)這些說(shuō)明。
Alexa 界面目前只提供音樂(lè)節(jié)奏,但希望將來(lái)能擴(kuò)展到提供有關(guān)正在播放的曲目的更多信息。我真的希望我的項(xiàng)目對(duì)流派甚至特定歌曲有不同的反應(yīng),但目前還沒(méi)有這些信息。
注意:我認(rèn)為這僅適用于現(xiàn)階段的亞馬遜音樂(lè),因此如果您使用其他音樂(lè)服務(wù),則不會(huì)提供速度數(shù)據(jù)。
通過(guò)與她一起完成示例任務(wù),我?guī)椭遗畠洪_(kāi)始了她的項(xiàng)目。任務(wù) 2 讓我很煩,因?yàn)閯?dòng)作似乎與節(jié)拍不合拍。我想我會(huì)創(chuàng)建一個(gè)簡(jiǎn)單的項(xiàng)目來(lái)改進(jìn)這種能力,這就是結(jié)果。
這與任務(wù) 2 有何不同?
如果您查看任務(wù) 2 中的 _dance_loop 代碼,它會(huì)計(jì)算 milli_per_beat,然后乘以 0.65(?。?。我猜這個(gè)調(diào)整是為了讓每個(gè)電機(jī)每拍運(yùn)行 150 毫秒。結(jié)果是一個(gè)近似值,但有誤差。如果您仔細(xì)觀察整個(gè)曲目中的動(dòng)作是否保持節(jié)拍,則此錯(cuò)誤很明顯。
def _dance_loop(self, bpm):
"""
Perform motor movement in sync with the beat per minute value from tempo data.
:param bpm: beat per minute from AGT
"""
color_list = ["GREEN", "RED", "AMBER", "YELLOW"]
led_color = random.choice(color_list)
motor_speed = 400
milli_per_beat = min(1000, (round(60000 / bpm)) * 0.65)
print("Adjusted milli_per_beat: {}".format(milli_per_beat), file=sys.stderr)
while self.trigger_bpm == "on":
# Alternate led color and motor direction
led_color = "BLACK" if led_color != "BLACK" else random.choice(color_list)
motor_speed = -motor_speed
self.leds.set_color("LEFT", led_color)
self.leds.set_color("RIGHT", led_color)
self.right_motor.run_timed(speed_sp=motor_speed, time_sp=150)
self.left_motor.run_timed(speed_sp=-motor_speed, time_sp=150)
time.sleep(milli_per_beat / 1000)
對(duì)于我的,我創(chuàng)建了一個(gè)采用不同方法的 _beat_loop。我在沒(méi)有調(diào)整的情況下計(jì)算每個(gè)循環(huán)的秒數(shù),并使用計(jì)時(shí)器來(lái)確保每個(gè)電機(jī)運(yùn)動(dòng)都與節(jié)拍同步。為了允許更快地移動(dòng)更高節(jié)奏的曲目,電機(jī)速度也根據(jù)每分鐘的節(jié)拍進(jìn)行縮放。這可確保電機(jī)在進(jìn)行下一次運(yùn)動(dòng)之前到達(dá)終點(diǎn)。
def _beat_loop(self, bpm):
"""
Perform motor movement in sync with the beat per minute value from tempo data.
:param bpm: beat per minute from AGT
"""
self.motor.position = 0
pos = 40
speed = min(1000,bpm*2)
seconds_per_beat = 60/bpm
next_time = time() + seconds_per_beat
print("Adjusted seconds per beat: {}".format(seconds_per_beat), file=sys.stderr)
while self.trigger_bpm == "on":
# wait until next movement time
while time() < next_time:
pass
# move motor to next position
self.motor.run_to_abs_pos(position_sp=pos, speed_sp=speed, stop_action="hold")
# change so next position is on opposite side
pos = -pos
# set time for next movement
next_time = next_time + seconds_per_beat
# move to straight position when tempo has stopped
self.motor.run_to_abs_pos(position_sp=0, speed_sp=speed, stop_action="hold")
print("Exiting BPM process.", file=sys.stderr)
為什么是侏儒?
簡(jiǎn)單的。我是一個(gè)爸爸,所以壞雙關(guān)語(yǔ)很好!此外,侏儒很酷,它使創(chuàng)作看起來(lái)更有趣。
搭建樂(lè)高
樂(lè)高積木搭建很簡(jiǎn)單,但我在Bricklink Studio 2.0文件中包含了搭建說(shuō)明。您需要的文件位于“原理圖”部分下。
要連接小矮人,您需要發(fā)揮內(nèi)在的工藝技能。對(duì)于我的,我只是用一些開(kāi)口銷連接了一些硬紙板,然后將侏儒圖片粘貼到硬紙板上。

EV3 代碼
該項(xiàng)目不需要任何 Alexa Skill 代碼,因?yàn)樗蕾囉诿慨?dāng)播放歌曲時(shí)通過(guò)標(biāo)準(zhǔn)接口提供給 EV3 的信息。享受!
下一步去哪里?
Alexa MusicData界面只是一個(gè)測(cè)試版,只包括節(jié)奏。我希望它包含更多關(guān)于未來(lái)正在播放的曲目的數(shù)據(jù),這樣你就可以做其他事情,例如圣誕機(jī)器人在播放圣誕類型音樂(lè)時(shí)開(kāi)始跳舞。在那之前,你可以看到你能用節(jié)奏做什么。
?
- 光子日歷通知器開(kāi)源構(gòu)建
- 聲控皂液器開(kāi)源構(gòu)建
- 可穿戴節(jié)拍器開(kāi)源分享
- Arduino節(jié)拍探測(cè)器
- 國(guó)際Begleitautomat(節(jié)拍音序器)開(kāi)源
- 使用555定時(shí)器的簡(jiǎn)單節(jié)拍器
- 開(kāi)源網(wǎng)絡(luò)協(xié)議分析器WireShark軟件下載 15次下載
- 使用PIC單片機(jī)驅(qū)動(dòng)節(jié)拍器 4次下載
- 如何使用AT89C51單片機(jī)實(shí)現(xiàn)節(jié)拍器的設(shè)計(jì)與制作 21次下載
- 節(jié)拍器設(shè)計(jì)與制作 34次下載
- 電子節(jié)拍器 10次下載
- 聲光電子節(jié)拍器原理圖 28次下載
- 由CPLD控制實(shí)現(xiàn)的音樂(lè)節(jié)拍器
- 關(guān)于音樂(lè)電子節(jié)拍器設(shè)計(jì)功能的思考
- 多功能節(jié)拍機(jī)電路及制作
- 基于開(kāi)源鴻蒙的視頻播放開(kāi)發(fā)樣例 1.5k次閱讀
- 如意玲瓏應(yīng)用構(gòu)建規(guī)則實(shí)用案例 922次閱讀
- PyTorch神經(jīng)網(wǎng)絡(luò)模型構(gòu)建過(guò)程 1.4k次閱讀
- 清華等開(kāi)源「工具學(xué)習(xí)基準(zhǔn)」ToolBench,微調(diào)模型ToolLLaMA性能超越ChatGPT 1.1k次閱讀
- 節(jié)拍頻率指示器電路分享 1.8k次閱讀
- 尋找開(kāi)源硬件成功的觸發(fā)器 1.1k次閱讀
- 節(jié)拍器聲音發(fā)生器的電子電路圖 3.4k次閱讀
- 基于LEON開(kāi)源微處理器IP軟核實(shí)現(xiàn)SoC系統(tǒng)基本平臺(tái)的構(gòu)建 3.5k次閱讀
- 鴻蒙內(nèi)核源碼分析之時(shí)鐘節(jié)拍的實(shí)現(xiàn)方式 2.8k次閱讀
- 構(gòu)建開(kāi)源芯片生態(tài)需要什么要的 5.9k次閱讀
- 手把手教你如何構(gòu)建一個(gè)能夠識(shí)別歌曲類型的神經(jīng)網(wǎng)絡(luò) 5.2k次閱讀
- μC/OS—II中的時(shí)鐘節(jié)拍管理機(jī)制技術(shù)分析 1.7k次閱讀
- 用CD4017組裝的電子節(jié)拍器 7.1k次閱讀
- 多功能呼救器電路原理圖 4.1k次閱讀
- 聲光節(jié)拍器電路圖 4.5k次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論