[文章更新] leJOS 用於樂高的 Java 程式語言

leJOS是什麼?

leJOS NXJ 是可執行於樂高NXT主機上的JVM (Java Virtual Machine)。在2000年,一些程式愛好者提出一個名為「TinyVM」的計畫並推出第一版的leJOS,因此可以在RCX上進行物件導向程式設計,並可以用標準的Java語法來發展機器人應用程式。leJOS的穩定成長可歸功於整合了許多特色和Java的功能,leJOS可以在各種作業系統上開發,例如Windows、Linux 和Mac OS,除此之外,您也可以在Android裝置上來開發機器人應用程式。
 
  時至今日 leJOS 已經是相當成熟的機器人開發環境,除了使用正規Java語法之外,也針對機器人開發出許多對應的套件,例如各種特殊感應器存取,定位與導航等等。另外用於新一代樂高機器人的 leJOS 也即將推出囉,敬請期待,並請參考本團隊出版的 [機器人程式設計與實作   使用JAVA]第二版。
 
從leJOS可以學到什麼?
 
   1. 使用正規Java語法 2. 網路通訊與 Android 行動裝置
 
   3. 藍牙通訊與I2C傳輸應用4. 定位與導航
如何安裝leJOS環境?

 
A. in Eclipse
 
   1. leJOS NXJ是 Java 的擴充套件,所以需要先安裝JDK,請安裝 32 bit 的 JDK。目前最新的版本為leJOS 0.9.1 beta,並可於 Eclipse中進行開發。請注意leJOS 不包含NXT驅動程式, 如您的電腦無NXT-G, LabVIEW Education Edition或相對應的模組,請至樂高 MindStorms官方網站下載NXT驅動程式,否則將無法下載程式到 NXT機器人上。
 

   2. 請下載 Eclipse IDE (目前最新版本為4.3,但各版本皆可),但請選擇 32 bit。下載完成後解壓縮即可開啓 Eclipse 環境。開啓之後,請在 Eclispe 的 Help 選單下找到 Install New Software…  選項。

 

   

   3. 請點選 Add… 來新增外掛軟體套件。Name欄位請輸入 leJOS 或其它名稱 (這無所謂),Location欄位請輸入:http://lejos.sourceforge.net/tools/eclipse/plugin/nxj/ ,接著就會透過網路來安裝 leJOS plugin 套件。安裝完成之後會在工具列上看到一個橘色 J 符號。

 
   

   
B. in cmd
     1. 安裝 JDK,以及最新的 leJOS 0.9.1 beta
 
     2. 檢查環境變數 (可參考Android setup)
 
   

變數名稱

變數設定

JAVA_HOME

JDK安裝路徑,例如C:\Program Files\Java\jdk1.6.0_23″

NXJ_HOME

leJOS NXJ的安裝路徑,例如”C:\Program Files\leJOS NXJ”

CLASSPATH

建立CLASSPATH,值設為” . “

Path

請新增”%JAVA_HOME%\bin “與”%NXJ_HOME%\bin “,不同路徑請用分號”; “隔開
 
 
   3. 驗證leJOS. 請依序在cmd 下輸入: nxjc, nxj等指令, 若無出現 ‘nxjc’ 不是內部或外部命令、可執行的程式或批次檔 之訊息, 代表已成功建立leJOS開發環境。

     如何更新 leJOS 韌體?

   
      請點選工具列上的 leJOS 符號或是在 cmd 下輸入 nxjflashg 來啓動 NXJ韌體視窗,請將您的NXT開機並用USB 線來接上電腦,再點選Start Program按鈕,依序完成即可。
   
      
 
     如何開始寫第一隻程式並下載?(請點我閱讀)
      如何在 cmd 下使用 leJOS?
     1. 新增檔案:在任一資料夾下新增一個文字檔,再把副檔名改為 .java,例如 Sample3_1.java。隨後編輯內容完成。
 
     2. 編譯:在 cmd 下輸入  nxjc Sample3_1.java,請注意大小寫需要完全一樣,這時會在一個資料夾中產生 nxjc sample_1.class 檔,這才是要傳到機器人中的檔案。
 
     3. 執行:在 cmd 下輸入  nxj Sample3_1 ,請注意沒有副檔名。如果希望下載之後馬上執行,請輸入 nxj -r Sample3_1
About CAVEDU 阿吉 - 雜工 (2521 Articles)
CAVEDU 教育團隊 打雜
Contact: Website

Leave a comment

Your email address will not be published.


*