Embedded Coder Robot NXT一個為LEGO MINDSTORMS NXT設(shè)計的基于MATLAB?和Simulink?的 開發(fā)環(huán)境。Embedded Coder Robot NXT為提供了一個編程(建模)功能,用來完成NXT的控制策略、設(shè)備動態(tài)特性和在3D圖形虛擬環(huán)境中模擬/呈現(xiàn)這些模型部件。它也提供了nxtOSEK 對于真實NXT硬件的對象調(diào)度,它是基于Real-Time Workshop? Embedded Code的。MATLAB和Simulink是由The MathWorks生產(chǎn)的專有軟件, 目前主要被廣泛地應(yīng)用在控制工程中。不幸的是, MATLAB & Simulink也許不適合個人使用,因為它的價格非常昂貴。盡管如此,大學/學院的學生還是有機會使用MATLAB學生版本的。 Embedded Coder Robot NXT可以從這 里免費下載和使用。 上圖是一個使用Embedded Coder Robot NXT構(gòu)造的走線機器人樣例(包含在壓縮包內(nèi))。右邊是Simulink的結(jié)構(gòu)圖窗口,顯示了這個機器人的物理行為、傳感器/發(fā)動機特性以及一個位圖(走 線地圖)。左邊顯示了一個程序和nxtOSEK設(shè)置,它們是用以生成和上傳代碼到真實的NXT的。結(jié)構(gòu)圖窗口后面是一個3D虛擬圖形仿真環(huán)境。在 Simulink的仿真中,走線機器人程序和機器人的物理程序是同時運行的,并且機器人的行為是可以使用用戶自定義的地圖在3D虛擬圖形仿真環(huán)境測試的。
在3D虛擬圖形仿真環(huán)境中,走線機器人自動探測黑線并且沿著它走。用戶可以通過修改那個位圖文件來設(shè) 計多種的地圖來測試機器人,并且可以在地圖中設(shè)計墻面用于更多的程序(比如走迷宮機器人)。這個3D機器人的模型是使用MLCAD(LDraw)設(shè)計的, 它使用了Philo的NXT積木塊庫,然后被轉(zhuǎn)換為VRML格式。 如何使用Web瀏覽器查看走線機器人模型? Embedded Coder Robot
NXT使用了MATLAB和Simulink。然而,Simulink提供了一個叫做"Export to Web"
的功能,它可以將模型輸出為HTML之類的網(wǎng)頁文件來查看結(jié)構(gòu)圖。請單擊下圖在瀏覽器中查看走線機器人結(jié)構(gòu)圖。 Simulink提供了多種類型的模塊(從最基本的數(shù)學運算到復雜的數(shù)學 方程式, 機器狀態(tài)/流程圖以及用戶自定義模塊)。并且,用戶可以用線連接模塊來指定模塊間的數(shù)據(jù)流。 Embedded Coder Robot NXT的另外一個高科技亮點是,我們可以使用Real-Time Workshop Embedded Coder將一個Simulink結(jié)構(gòu)圖(模型)編譯為ANSI-C代碼。Real-Time Workshop Embedded Coder生產(chǎn)的ANSI-C代碼不需要指定運行環(huán)境,所以用戶可以使用ANSI-C編譯工具針對多種硬件(8位/16位/32位微型控制器、DSP和 PC)生成代碼。 |
|