雖然Danny形容SUP3R CAR是一部有著邪惡外觀的裝甲車(我倒覺得比較像「汽車總動員(Cars)」的卡通車),實際上就是一部典型的前輪轉向、後輪驅動的四輪車。
在車上駕駛座位置裝有一個IR Sensor,讓它具有障礙偵測以及使用Remote IR Beacon遙控的功能,同時為了能夠更順手地操控,所以改造了成為具有控制前進/後退與左右轉彎兩個搖桿功能的遙控器。
(SUP3R-CAR_R3MOTE)
另外在車子前端保險桿有裝了一個Color Sensor,用途是留待讀者自行使用EV3零售版所附的Test Pad做 循跡、定位方面的測試,在書中並沒有實際的應用。
(SUP3R-CAR_R3MOTE)
另外在車子前端保險桿有裝了一個Color Sensor,用途是留待讀者自行使用EV3零售版所附的Test Pad做 循跡、定位方面的測試,在書中並沒有實際的應用。
從下圖SUP3R CAR的底盤,可以見到它的動力系統包含了以M-Motor驅動前輪的轉向機構,以及比較特別的是兩個後輪各自以一顆L-Motor直接驅動,不是常見的單顆馬達加齒輪的用法。
(SUP3R-CAR_BottomView)
會這樣配置的原因在於EV3零售版並沒有差速齒輪零件,所以Danny才會構想透過精確控制兩個後驅馬達轉速的電子式差速器功能。
實作方法則是求出兩個公式,能夠相關聯「車速」及「前輪轉向角度」兩個因素,而分別計算出外緣輪(Outer wheel)與內圈輪(Inner wheel)所需的轉速。
至於公式的導出步驟,則是參考下圖車輛轉向的運動模型:
(SUP3R-CAR_ElectricalDifferential)
在模型中,車體尺寸,如:軸距( H ) 與 輪距( 2*D ) 在建構時即為已知,
所以當 前輪轉向角度為 a,則車輛的 迴轉半徑(S) 會等於:軸距( H )/ tan( a ),
如果把角度 a 轉換成弧度(radians)為單位,就是將 a 乘以 Pi/180,大約是:a*0.017,
同時去查一下正切函數表,若角度 a 小於30度以內,則tan(a)的值會接近其弧度值(a*0.017),所以,旋轉半徑 S 就大約是:軸距( H )/(a*0.017)。
當得知了車輛的旋轉半徑(S),車輛轉彎的角速度(W)就會等於:車速( V ) / 旋轉半徑( S )
所以,最後得到的公式就會是:
外緣車輪(Outer Wheel)的轉速( VR )等於:W * (S + D),
亦即: V * (1 + D * 0.017 * a/H)
內圈車輪(Inner Wheel)的轉速(VL) 等於:W * (S - D),
亦即: V * (1 - D * 0.017 * a/H)
這兩個公式剛好可以利用 EV3的Math Block – Advanced Mode設定計算式,相當方便。
(SUP3R-CAR_MoveMyBlock_Detail)
請問上面流程內的灰色色塊(power)是如何建立的?謝謝
回覆刪除那是MyBlock, 建立的步驟與方式大概是這樣:
刪除1. 先將所需要的程式區塊建立好, 包含資料線都先連結正確
2. 選擇所有需要轉換成MyBlock的程式區塊
3. 這樣就可以透過由Tools功能中選擇My Block Builder選項來建立
這裡有一個教學影片可以參考:
https://www.youtube.com/watch?feature=player_detailpage&v=CApCoGQJRcU
感謝你!先試試看…
刪除成了,敘述非常詳盡,花了您的時間,真的感謝。
刪除成了,敘述非常詳盡,花了您的時間,真的感謝。
刪除不客氣! 也恭喜你測試成功
刪除作者已經移除這則留言。
回覆刪除