LEGO機器人製作專題 -以MSRDS為例(上)
何謂MSRDS Microsoft Robotics Developer Studio-(MSRDS;MRDS) MSRDR特點 1.CCR (Concurrency and Coordination Runtime) -非同步處理程式庫 2.DSS(Decentralized Software Services) -分散式軟體服務(物件導向) 3.MVPL(Microsoft Visual Programming Language ) -微軟視覺化程式語言 4.VSE(Microsoft Visual Simulation Environment) -視覺化模擬環境
MSRDS取得與安裝 微軟MSRDS的官方網頁-http://msdn.microsoft.com/en-us/robotics/aa731520 選擇Microsoft Robotics Developer Studio 2008 R3 Express Edition的版本。 軟體要求: WIN-XP以上作業系統。 DirectX 9.0以上(VSE用)
MSRDS與MINDSTORM 比較 通訊方式- 藍芽 操作介面- MVPL圖形介面 具備VSE模擬環境 對應硬體- LEGO、iRobot、、等 通訊方式- USB or 藍芽 操作介面- NXT-G圖形介面 對應硬體- LEGO
MSRDS基本操作與介面
MSRDS與LEGO服務元件 1.Lego NXT Bettery 2.Lego NXT Brick 3.Lego NXT Buttons 4.Lego NXT Contact Sensor Array 5.Lego NXT Drive 6.Lego NXT Light Sensor 7.Lego NXT Motor 8.Lego NXT Sound Sensor 9.Lego NXT Touch Sensor 10.Lego NXT Ultrasonic Sensor 11.Lego NXT Brick I/O
MSRDS基本活動元件 Activity 可用來創造使用者自訂的活動,每一個使用者自訂的活動可以接收輸入值和回傳的輸出值,也能觸發通知。 Variable 用以儲存數值和字串,讓其他活動元件使用。透過SetValuec和GetValue可設定和取得儲存的資料。 Calculate 可進行加減乘除及各種邏輯運算,如&&表示(And)、II表示(Or)、! 表示(Not)。
MSRDS基本活動元件 Data 用來提供資料給其他的「活動元件」如Variable、Calculate等。 Join Merge 用來合併一個或多個活動元件輸出的訊息。與Join不同Merge只要有任一個訊息輸入就可產生輸出訊息。
MSRDS基本活動元件 If 支援IF…Then…Else等語法,利用「==」、「>」、「<」、「!=」等表示等於、大於、小於、不等於等比較運算子最條件敘述。 Switch 類似C的CASE或V.B的Select Case語法。 List 用來建立一個特定資料形式的資料清單。可作為其他活動元件的輸入值。 List Function 用來對已存在的List當中的項目進行操作。例如:附加(Append)、排序(Sort)、插入項目(Insert Item)和串聯(Concatenate)及產生新的清單(List)。
超音波障礙閃避機器人
光線感應器控制
8字型自走控制&圓形自走控制
適合的教學場域與限制 1.資訊學科學選修課程 2.社團教學-例如:資訊科技研究社等。 1.成本高-LEGO套件價格高 2.英文介面(MSRDS) 3.學習門檻較高(邏輯、程式基礎)
問題與討論
謝謝指教