資料介紹
描述
介紹
該項(xiàng)目將創(chuàng)建一個(gè)節(jié)拍器,它可以隨著來自 Alexa 設(shè)備的亞馬遜音樂節(jié)拍移動(dòng)。添加圖片,它就變成了……METRO-GNOME!
它是 LEGO MINDSTORMS 語音挑戰(zhàn)任務(wù)的簡單擴(kuò)展。在你開始這個(gè)項(xiàng)目之前,你需要完成設(shè)置,至少完成任務(wù) 1 和 2。這將涵蓋基礎(chǔ)知識,所以我不會(huì)在這里重復(fù)這些說明。
Alexa 界面目前只提供音樂節(jié)奏,但希望將來能擴(kuò)展到提供有關(guān)正在播放的曲目的更多信息。我真的希望我的項(xiàng)目對流派甚至特定歌曲有不同的反應(yīng),但目前還沒有這些信息。
注意:我認(rèn)為這僅適用于現(xiàn)階段的亞馬遜音樂,因此如果您使用其他音樂服務(wù),則不會(huì)提供速度數(shù)據(jù)。
通過與她一起完成示例任務(wù),我?guī)椭遗畠洪_始了她的項(xiàng)目。任務(wù) 2 讓我很煩,因?yàn)閯?dòng)作似乎與節(jié)拍不合拍。我想我會(huì)創(chuàng)建一個(gè)簡單的項(xiàng)目來改進(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)
對于我的,我創(chuàng)建了一個(gè)采用不同方法的 _beat_loop。我在沒有調(diào)整的情況下計(jì)算每個(gè)循環(huán)的秒數(shù),并使用計(jì)時(shí)器來確保每個(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)
為什么是侏儒?
簡單的。我是一個(gè)爸爸,所以壞雙關(guān)語很好!此外,侏儒很酷,它使創(chuàng)作看起來更有趣。
搭建樂高
樂高積木搭建很簡單,但我在Bricklink Studio 2.0文件中包含了搭建說明。您需要的文件位于“原理圖”部分下。
要連接小矮人,您需要發(fā)揮內(nèi)在的工藝技能。對于我的,我只是用一些開口銷連接了一些硬紙板,然后將侏儒圖片粘貼到硬紙板上。

EV3 代碼
該項(xiàng)目不需要任何 Alexa Skill 代碼,因?yàn)樗蕾囉诿慨?dāng)播放歌曲時(shí)通過標(biāo)準(zhǔn)接口提供給 EV3 的信息。享受!
下一步去哪里?
Alexa MusicData界面只是一個(gè)測試版,只包括節(jié)奏。我希望它包含更多關(guān)于未來正在播放的曲目的數(shù)據(jù),這樣你就可以做其他事情,例如圣誕機(jī)器人在播放圣誕類型音樂時(shí)開始跳舞。在那之前,你可以看到你能用節(jié)奏做什么。
?
- 光子日歷通知器開源構(gòu)建
- 聲控皂液器開源構(gòu)建
- 可穿戴節(jié)拍器開源分享
- Arduino節(jié)拍探測器
- 國際Begleitautomat(節(jié)拍音序器)開源
- 使用555定時(shí)器的簡單節(jié)拍器
- 開源網(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ì)與制作 32次下載
- 電子節(jié)拍器 10次下載
- 聲光電子節(jié)拍器原理圖 27次下載
- 由CPLD控制實(shí)現(xiàn)的音樂節(jié)拍器
- 關(guān)于音樂電子節(jié)拍器設(shè)計(jì)功能的思考
- 多功能節(jié)拍機(jī)電路及制作
- PyTorch神經(jīng)網(wǎng)絡(luò)模型構(gòu)建過程 533次閱讀
- 清華等開源「工具學(xué)習(xí)基準(zhǔn)」ToolBench,微調(diào)模型ToolLLaMA性能超越ChatGPT 603次閱讀
- 節(jié)拍頻率指示器電路分享 949次閱讀
- 前沿開源技術(shù)領(lǐng)域的開源大數(shù)據(jù)一一解讀 1180次閱讀
- 尋找開源硬件成功的觸發(fā)器 755次閱讀
- 節(jié)拍器聲音發(fā)生器的電子電路圖 2546次閱讀
- 基于LEON開源微處理器IP軟核實(shí)現(xiàn)SoC系統(tǒng)基本平臺的構(gòu)建 2871次閱讀
- 鴻蒙內(nèi)核源碼分析之時(shí)鐘節(jié)拍的實(shí)現(xiàn)方式 2150次閱讀
- 構(gòu)建開源芯片生態(tài)需要什么要的 4878次閱讀
- 手把手教你如何構(gòu)建一個(gè)能夠識別歌曲類型的神經(jīng)網(wǎng)絡(luò) 4890次閱讀
- NASA的開源軟件是什么?NASA的開源軟件的詳細(xì)分析 7444次閱讀
- μC/OS—II中的時(shí)鐘節(jié)拍管理機(jī)制技術(shù)分析 1451次閱讀
- 用CD4017組裝的電子節(jié)拍器 6128次閱讀
- 多功能呼救器電路原理圖 3268次閱讀
- 聲光節(jié)拍器電路圖 3861次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費(fèi)
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費(fèi)
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費(fèi)
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費(fèi)
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費(fèi)
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費(fèi)
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護(hù)等級說明
- 0.08 MB | 次下載 | 免費(fèi)
本月
- 1貼片三極管上的印字與真實(shí)名稱的對照表詳細(xì)說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設(shè)計(jì)指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍(lán)牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費(fèi)
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論