狠狠撸

狠狠撸Share a Scribd company logo
mBot2移動控制
Revised on November 1, 2022
? 直流馬達原理與應用
? 編碼馬達控制指令
? 星形路徑自走車
? 定距離前/後移動控制
? 客制化路徑自走車
? 轉彎控制
? 螺旋路徑自走車
? 安培右手定則
? 用右手握住通電螺線管,四指指向電流方向,則大拇指端是磁場N極
直流馬達原理
2
電流方向
磁場方向
N
S
同性相斥,異性相吸
運動貫性,轉子繼續轉動
同性相斥,異性相吸
電流反向
運動貫性,轉子繼續轉動
電流反向
直流馬達在生活科技應用實例
3
CPU散熱風扇 遙控車
USB風扇 四軸飛行器
? mBot2 配置二個直流編碼馬達
? 原始轉速:14,000 RPM±5%
? 金屬齒輪箱,齒輪減速比1:39.6,低速也可直接驅動 mBot2
? 空載轉速: 350 RPM±5%
? 可控制輪子轉動角度 (解析度1°) 或轉動速率 (最高速200 RPM)
? mBot2 輸子直徑 6.5cm,輪子轉?圏 6.5?3.14 = 20.41cm
mBot2驅動模組
4
編碼馬達
金屬減速齒輪箱
EM2
EM1
? 以指定轉速驅動 mBot2 前進/後退/左轉/右轉,額定時間後停止
? 以指定轉速驅動 mBot2 前進/後退/左轉/右轉
編碼馬達控制指令 1/6
5
? 驅動 mBot2 前進/後退指定距離後停止
? 使 mBot2 左轉/右轉指定角度後停止
編碼馬達控制指令 2/6
6
? 以指定轉速/動力同時或個別驅動 mBot2 左右編碼馬達,額定時間後
停止
? 以指定轉速/動力同時或個別驅動 mBot2 左右編碼馬達
編碼馬達控制指令 3/6
7
? 同時或個別驅動 mBot2 左右編碼馬達轉動指定角度
? 以指定轉速個別驅動 mBot2 左右編碼馬達,左馬達 (EM1) 正轉,右馬
達 (EM2) 反轉
? 以指定動力個別驅動 mBot2 左右編碼馬達,左馬達 (EM1) 正轉,右馬
達 (EM2) 反轉
編碼馬達控制指令 4/6
8
? 同時或個別驅動 mBot2 左右編碼馬達轉動指定角度
? 讀取左/右編碼馬達的轉速或動力值
? 讀取左/右編碼馬達的累計轉動度速
編碼馬達控制指令 5/6
9
? 重置 mBot2 左/右編碼馬達的累計轉動度速
? 開啟/關閉編碼馬達自鎖功能
? 當開啟編碼馬達自鎖功能,mBot2 停止運動後,編碼馬達會嘗試保持在原
位。自鎖功能預設為禁用
編碼馬達控制指令 6/6
10
? 按下 CyberPi 按鍵 B 開始沿著星形路徑移動
Lab 星形路徑自走車 1/2
前進2秒
右轉144°
36°
? 參考程式
Lab 星形路徑自走車 2/2
? 功能要求
? 使用 CyberPi 搖桿上、下鍵調整移動距離 (負值表示後退),並顯示在LCD
螢幕上
? 按下 CyberPi 按鍵 B 開始移動 mBot2,直到額定距離
Lab 定距離前/後移動控制 1/2
13
遞增移動距離
遞減移動距離
開始移動
? 參考程式
Lab定距離前/後移動控制 2/2
14
? 功能要求
? 使用 CyberPi 搖桿規劃行進路徑,並顯示在LCD螢幕上
? 按下 CyberPi 按鍵 A 清除路徑
? 調整移動距離 (負值表示後退) 按下 CyberPi 按鍵 B 開始移動
? LCD方向符號:????
Lab 客制化路徑自走車 1/3
15
前進0.5秒
後退0.5秒
清空路徑
左轉90°後,前進0.5秒 右轉90°後,前進0.5秒
開始移動
? 參考程式
? 建立 i、direction 變數
? 建立 path 清單
? 新增 go 積木指令
Lab 客制化路徑自走車 2/3
16
Lab 客制化路徑自走車 3/3
? 行進間右轉:左側馬達轉速>右側
馬達轉速
? 以右輪為支點右轉
? 以左輪為支點右轉
? 原地右旋轉
轉彎控制 1/2
18
? 應用左右馬達個別配速,可達到不同方式轉彎控制
? 行進間左轉:左側馬達轉速<右側
馬達轉速
? 以左輪為支點左轉
? 以右輪為支點左轉
? 原地左旋轉
轉彎控制 2/2
19
? 功能要求
? 按下 CyberPi 按鍵 B,讓 mBot2 順時針螺旋狀行進,最終原地旋轉
? 左右馬達速度差愈大,行進轉彎角度愈大
? 按下 CyberPi 按鍵 A,停止動作
Lab 螺旋路徑自走車 1/3
20
? 參考程式
? 建立speed_L、speed_R變數
Lab 螺旋路徑自走車 2/3
21
Lab 螺旋路徑自走車 3/3
22

More Related Content

尘产辞迟2.0教学-移动控制.辫诲蹿