在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>樂高機器人開源硬件

樂高機器人開源硬件

2022-12-21 | zip | 44.88 MB | 次下載 | 免費

資料介紹

描述

介紹

教您的孩子如何寫字既有趣又令人沮喪。讓這項活動變得更酷將大大有助于讓您的孩子更加專注于這項任務。還有什么比機器人更酷的呢?...樂高機器人!

讓我們為這個項目設定一些目標:

  • 搭建樂高打印機。應該可以用普通的黑色記號筆書寫。運動應該盡可能接近人類。
  • 對打印機進行編程以寫入字母表中的字母。筆畫應該類似于正常人會做的筆畫。
  • 亞馬遜 Alexa 集成。關于如何繪制字母的指示應由 Alexa 通過語音給出。還可以創建一個測驗模式,打印機隨機抽取一個字母,讓孩子嘗試猜出正確答案。
  • 由于電機聲音很大,請避免在 Alexa 說話的同時運行它們。

構建打印機

x 和 y 運動是使用與樂高 42097 套裝(緊湊型履帶起重機)中的其中一個可擴展腿類似的構造完成的:

poYBAGOhLyyAbn9YAB1ZHOBeB10626.jpg
樂高 42097 套裝的可伸縮腿
?

其中兩個放在一起,一個在另一個的擴展中:

pYYBAGOhL1OAaQGhAAneKf046Bw789.jpg
?

兩個蝸輪都與同一根軸相連,而這根軸又由大型 EV3 電機驅動:

pYYBAGOhL3aAG1DuAAiY1d4NHBE850.jpg
?

電機不直接驅動軸,而是通過離合器齒輪(零件號 6198486),然后是普通齒輪(零件號 4514558),然后使用兩個 4 齒齒輪(零件號 4248204)以 90 度角驅動。

poYBAGOhL5iARlbjAAkFopxtuRA802.jpg
?

這可以保護樂高零件在驅動電機時不會出現任何錯誤。

筆夾在兩個帶輪胎的大輪子之間:

poYBAGOhL7yAOEX7AAw5uBU76-c430.jpg
?

移動筆的輪子不是直接驅動的,而是由四個齒輪組成的鏈條驅動,以降低轉速并增加扭矩:

pYYBAGOhL-yAO6sbAA3EAgK768E617.jpg
?

這是必要的,因為我不能通過直接從中型電機驅動它來獲得好的結果。旋轉中的小錯誤(即使是 1 度)意味著筆太低或太高并且沒有接觸到紙。第一個齒輪(來自電機)是 12 齒,驅動輪子的齒輪是 36,因此轉速降低了 3 倍。

“y”部分在輪子上,因為它需要滑動。“x”部分是固定的。

poYBAGOhMCWAfzznAA5hFDF21Yc158.jpg
?

“Y”,完全組裝:

pYYBAGOhMGuANo2vAA-vyzzlmu8662.jpg
?

和“X”:

poYBAGOhMLCAGDL0ABA2bF7uV7k163.jpg
?

構建軟件

我將 VS Code 配置為將這些類型的文件上傳到 EV3;

"ev3devBrowser.download.include": "{**/*.py,**/*.ini,**/*.sh,,**/*.svg}",

確保列表中有 *.svg,否則您將無法運行程序。

  • 字母格式:

我們將使用SVG 格式來表示如何繪制字母表中的字母。

讓我們以字母“B”為例:

pYYBAGOhMLOAbvJoAAAlWD4Bxww157.png
字母B怎么畫
?

指示將是這樣的:

  • 從頂部開始到底部
  • 回到頂部,在中間畫一條曲線
  • 然后在底部畫一條曲線

我們可以用這種格式表示這些信息

"http://www.w3.org/2000/svg" width="100" height="100">
    <rect width="100" height="100" fill="beige"/>
    <line x1="30" y1="10" x2="30" y2="90" stroke="black" >
        
line> "M 30 10 A 35 20 0 1 1 30 50" fill="black" fill-opacity="0.1" stroke="black"> "M 30 50 A 40 20 0 1 1 30 90" fill="black" fill-opacity="0.1" stroke="black">

我創建了一個小程序來模擬打印機。這會記錄打印機將執行的所有動作,并使用打印機在紙上繪制的內容創建圖像。它對實驗有很大幫助,因為它運行起來要快得多。請檢查項目附件中的“Printer Simulation”文件。

讓我們為字母 B 運行它:

poYBAGOhMLaAJEy1AAAOjT_O-fs531.png
請注意,顏色已更改為在 hackster.io 上看起來更好 原來在 VS Code 中看起來更好
?

注:(0, 0)原點在左上角,x 向右增長,y 向下增長。有些公式的符號與正常笛卡爾坐標系中的符號相反!

程序剖析(“打印機模擬”python 文件):

  • SVG 文件被解析。
  • 程序只知道如何解釋和。從 它只知道 M - 移動到,L - 線和 A - 弧。更多信息在這里
  • 線 (draw_line) 是直截了當的——它根據線的公式計算導數(斜率)來計算電機的速度。
  • 對于圓弧,首先需要發生以下事情:

1. 給定兩個點 ((x, y) 和 (dx, dy)),我們必須找到將通過它們且水平半徑為 rad_x 且垂直半徑為 rad_y 的橢圓。

M 和 A 的格式為:

"M x y"
"A rx ry x-axis-rotation large-arc-flag sweep-flag x y"
  • 通解(如果存在)由兩個橢圓組成。這些是通過求解兩個二次方程組(橢圓的兩個點的參數方程)找到的。函數 solve_ellipse 就是這樣做的。我嘗試使用SymPy來求解它,但它在 EV3 程序塊上運行速度非常慢(求解一個方程組大約需要 30 秒)。
  • 從這兩個橢圓有四個可能的路徑(弧)。使用 large-arc-flag 和 sweep-flag 屬性選擇正確的一個。更多信息在這里
  • 從“開始”角度開始,直到達到“結束”角度,我們計算x 和 y的導數以找到電機需要運行的速度,將它們都運行 0.1 秒并重復該過程。這與PID 算法類似,只是沒有誤差的導數部分。我們只使用誤差的整數部分來校正路徑,因為曲線非常簡單并且結果足夠好。

現在讓我們在真正的打印機上運行它——參見(“使用 EV3 繪制字母 B”python 文件)

?

Alexa 整合

第 0 步 - 將附件中的所有內容復制到 VS Code 項目。

它應該是這樣的:

pYYBAGOhMLmANlfDAABOGyu1hXE609.png
?

確保在 svg 目錄中解壓 SVG zip:

poYBAGOhMLuAHzcBAAA5JxMXorE585.png
?

忽略 package-lock.json 和 node_modules/

第 1 步 - 連接 EV3 程序塊和 Alexa:https ://www.hackster.io/alexagadgets/lego-mindstorms-voice-challenge-mission-1-f31925

第 2 步 - 在 Alexa 開發人員控制臺中創建新技能并選擇自定義技能和 Alexa 托管 (Node.js):https ://www.hackster.io/alexagadgets/lego-mindstorms-voice-challenge-mission-3-4ed812

第 3 步 - 轉到“構建”選項卡并將模型(在附件中提供)復制到 JSON 編輯器并保存。還要確保您啟用了“自定義界面控制器”和“自動委派”設置。您可以在“接口”選項卡中找到它們。保存并構建模型。

第 4 步 - 轉到“代碼”選項卡并創建此圖像中的文件。如果它們已經存在,則從 Alexa 創建的 hello world 的附件中復制代碼。保存并部署。

poYBAGOhML6AadHNAAAl1bgZjTI665.png
?

第 5 步 - 轉到“測試”選項卡并啟用技能測試。

第 6 步 - 使用 VS Code 在 EV3 程序塊上運行 script3r.py 文件。(查看鏈接的教程

有關代碼的詳細信息:

因為電機噪音很大,我們不希望 Alexa 在電機運行時說話。這就是為什么我們不僅要啟用自定義事件,還要啟用 ini 文件中的語音數據:

[GadgetSettings]
amazonId = YOUR_OWN_AMAZON_ID
alexaGadgetSecret = YOUR_OWN_SECRET
[GadgetCapabilities]
Custom.Mindstorms.Gadget = 1.0
Alexa.Gadget.SpeechData = 1.0 - viseme

在從 EV3 向 Alexa 發送“說話”命令后,我們將等待靜音。這是這樣做的:

def on_alexa_gadget_speechdata_speechmarks(self, directive):
    try:
        if self._waiting_for_speech:
            if directive.payload.speechmarksData[-1].value == 'sil':
                self._waiting_for_speech = False
    except KeyError:
        print("Missing expected parameters: {}".format(directive), file=stderr)

由于我們不希望電機控制干擾發送或接收通知,我們將使用不同的線程:

self._waiting_for_speech = True
threading.Thread(target=self.draw_letter, args=(
payload["letter"], False), daemon=True).start()

我們在新線程中做的第一件事是等待 Alexa 說完:

while self._waiting_for_speech:
    sleep(0.1)

在發送給 Alexa 的每個“說出”命令后,我們都執行相同的操作:

self._waiting_for_speech = True
self.send_custom_event('Custom.Mindstorms.Gadget', 'speak', {'txt': pos_title.text})
while self._waiting_for_speech:
    sleep(0.1)

意圖

model.js 中定義了三個意圖:

  • LearnIntent - 這有一個類型為“Letter”的插槽。可以通過說“畫字母 {Letter},學習字母 {Letter},寫字母 {Letter}”開始。此意圖將向 EV3 發送命令以繪制請求的字母,同時提供有關如何繪制它的語音指示。
  • PlayGameIntent - 沒有插槽。從說“玩游戲”或“測驗”開始。它將隨機選擇字母表中的一個字母并請求 EV3 繪制它。沒有給出語音指示。
  • PlayGameAnswerIntent - 有一個“字母”類型的插槽。這是從說出先前意圖的答案開始的。答案可以是:“{Letter}”、“答案是{Letter}”、“字母{Letter}”等

LearnIntent 的用戶、回顯設備、自定義技能、lambda 函數和 EV3 程序塊之間的交互:

pYYBAGOhMMOAImNPAAD2J2SAKLA708.png
學習意圖的序列圖
?

PlayGameIntent/PlayGameAnswerIntent 的交互與 LearnIntent 的交互類似。

附上源碼:

  • script3r.py - 這是在 EV3 程序塊上運行的主要文件。
  • script3r.ini - 包含 Amazon Gadget 的密鑰及其功能。
  • SVG.zip - 包含 svg 格式的所有字母的 zip 文件。它必須在項目的根目錄中提取并與 script3r.py 和 scrip3r.ini 文件一起復制到 EV3 程序塊上。
  • model.json - 此文件包含 Alexa 自定義技能的交互模型。必須在 Alexa Developer Console -> Script3r -> Build -> Interaction Model -> JSON Editor 中復制過來。復制后保存并構建。
  • package.json - 在 Alexa Developer Console -> Script3r -> Code -> Skill Code -> lambda -> package.json 中復制
  • util.js - 包含 lambda 函數使用的一些實用程序。在 Alexa Developer Console -> Script3r -> Code -> Skill Code -> lambda -> util.js 中復制這個
  • index.js - Alexa 自定義技能的主要代碼。在 Alexa Developer Console -> Script3r -> Code -> Skill Code -> lambda -> index.js 中復制這個
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1涂鴉各WiFi模塊原理圖加PCB封裝
  2. 11.75 MB   |  76次下載  |  1 積分
  3. 2錦銳科技CA51F2 SDK開發包
  4. 24.06 MB   |  29次下載  |  1 積分
  5. 3錦銳CA51F005 SDK開發包
  6. 19.47 MB   |  3次下載  |  1 積分
  7. 4蘋果iphone 11電路原理圖
  8. 4.98 MB   |  3次下載  |  2 積分
  9. 5基礎模擬電子電路
  10. 3.80 MB   |  3次下載  |  1 積分
  11. 6RA-Eco-RA6M4-100PIN-V1.0開發板資料
  12. 34.89 MB  |  1次下載  |  免費
  13. 7STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊
  14. 3.32 MB   |  1次下載  |  免費
  15. 8聯想A820t手機維修圖紙包括主板原理圖 尾板原理圖 點位圖
  16. 0.62 MB   |  次下載  |  5 積分

本月

  1. 1AI智能眼鏡產業鏈分析
  2. 4.43 MB   |  383次下載  |  免費
  3. 2蘇泊爾電磁爐線路的電路原理圖資料合集
  4. 2.02 MB   |  296次下載  |  5 積分
  5. 3貼片三極管上的印字與真實名稱的對照表詳細說明
  6. 0.50 MB   |  94次下載  |  1 積分
  7. 4長虹液晶電視R-HS310B-5HF01的電源板電路原理圖
  8. 0.46 MB   |  91次下載  |  5 積分
  9. 5涂鴉各WiFi模塊原理圖加PCB封裝
  10. 11.75 MB   |  76次下載  |  1 積分
  11. 6錦銳科技CA51F2 SDK開發包
  12. 24.06 MB   |  29次下載  |  1 積分
  13. 7AO4803A雙P通道增強型場效應晶體管的數據手冊
  14. 0.11 MB   |  28次下載  |  2 積分
  15. 8長虹液晶彩電LS29機芯的技術資料說明
  16. 3.42 MB   |  16次下載  |  2 積分

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191388次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183342次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81588次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73815次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
主站蜘蛛池模板: 久久久久久久国产精品电影 | 成人伊人亚洲人综合网站222 | 亚洲乱码卡一卡二卡三永久 | 五月婷婷六月爱 | 一区二区三区影院 | 午夜精品久久久久久久久 | 久久婷婷国产综合精品 | 欧美黑人巨大xxx猛交 | 日本黄色高清视频 | 天堂在线资源网 | 日本美女视频网站 | 九九视频这里只有精品 | 国产精品主播在线观看 | 老师别揉我胸啊嗯上课呢视频 | 天天操女人| 香蕉视频啪啪 | 国产精品天天爽夜夜欢张柏芝 | 综合爱| 成人欧美一区二区三区小说 | 午夜日韩视频 | 丁香在线 | 久久精品亚洲热综合一本奇米 | 婷婷日日夜夜 | 天天综合天天操 | 亚洲天天做夜夜做天天欢人人 | 欧美日韩亚洲色图 | 亚洲精品视频在线 | 久久久久激情免费观看 | 欧美一级做一级做片性十三 | 国产亚洲美女精品久久久久狼 | 9984四虎永久免费网站 | 国产免费一级在线观看 | 国产乱淫a∨片免费视频 | 婷婷亚洲综合 | 七月婷婷在线视频综合 | 欧美性三级 | 欧美毛片网站 | 国产精品视频一区国模私拍 | 美女视频久久 | 国产亚洲欧美一区 | 婷婷 综合网站 |