1. 程式人生 > >B-Human程式碼建立與機器人配置

B-Human程式碼建立與機器人配置

申明:只用於自己整理。在此轉載。原文地址:http://www.aichengxu.com/other/2569292.htm

程式碼建立: 專案生成

  Make目錄中,指令碼檔案generate生成平臺或IDE相應檔案,用來編譯元件。指令碼收集所有原始檔,標頭檔案和其它所需資源,並將之打包成一個匹配你係統的解決方案(對於Linux,是Codelite專案)。它必須在任何IDE被開啟或構建程序開始之前被呼叫,並當檔案新增或從專案中移除時再次被呼叫。在Linux中,用Codelite或NetBeans需要generate指令碼,而通過提供makefile,用命令列構建程式碼時不需要呼叫generate指令碼。

Linux環境下操作方法   以下步驟在Ubuntu 14.04 64-bit中可用,其他64位版本理論上也可用,但可能需要額外的包。

  所需軟體:略。

  編譯:

    要編譯元件(除了copyfiles),只需選擇Make/Linux作為當前工作目錄,並鍵入:

      make <元件名> [CONFIG=<配置模式>]     要清理整個工程,用:

      make clean [CONFIG=<配置模式>]     NetBeans和CodeLite葉可以編譯:要用CodeLite編譯的話,執行Make/LinuxCode/generate,並開啟B-Huamn.workspace(要用Codelite 5或之後的版本)。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

配置NAO: 要求

  下載當前版本opennao-atom-system-image-1.14.5.opn和nao-flasher-1.12.5-.tar.gz軟體。要啟動機器人,還需要一個2G以上U盤和一根網線。

  要使用Install目錄中的指令碼,需要以下工具:sed,scp,sshpass。

  本章所有命令均為shell命令,必須在Unix shell內執行。所有的shell命令都要從Install目錄下執行。

建立一個機器人配置檔案   在開始配置NAO之前,你要給每個你要配置的機器人建立一個配置檔案。要建立一個機器人配置檔案,執行createRobot指令碼。這個指令碼需要一個團隊id,一個機器人id和一個機器人姓名。團隊id一般等於你在Config/settings.cfg中配置的隊伍號,但你可以用任何1到254中的數字。團隊id會被作為機器人在有線和無線年IPv4地址的第三個部分。所有在同一隊伍中比賽的機器人需要統一的團隊id,並且可以相互交流。機器人id是IP地址的最後一個部分,並在隊中必須是獨一無二的。機器人姓名被用作NAO作業系統的主機名,被存在NAO主機板作為BodyNickname。

  在建立你的第一個機器人配置檔案之前,檢查Install/Network中網路配置模版檔案wireless和wired以及Install/Network/Profiles 中default檔案是否匹配你當地網路配置的要求。

  以下是建立配置檔案的例子,其中團隊id為3,機器人id為25,姓名為Penny。

    ./createRobot -t 3 -r 25 Penny   用-h獲得creatRobot的幫助資訊。

  執行createRobot創立所有要安裝到機器人中的檔案。這個指令碼同時在Config/Robots中生成一個機器人目錄。

管理無線配置   所有無線配置檔案都被儲存在 Install/Network/Profiles中。附加的配置檔案必須放置在這裡,並將隨著default配置檔案被安裝。安裝完成後,當啟動作業系統時,NAO總會載入default配置檔案。

  之後,你可以通過在NAO上呼叫setprofile指令碼選擇不同的配置檔案,這將重寫default配置檔案。

    setprofile SPL_A     setprofile Home

安裝   在機器人對應的配置檔案創立完成後,插入U盤,並開啟NAO燒錄工具(要用root許可權)。選擇opennao-atom-system-image-1.14.5.opn 和你的U盤。啟用恢復出廠設定,並點選寫入按鈕。

  在U盤燒錄之後,插入NAO,按下胸部按鈕5秒鐘左右。之後,NAO將自動安裝NAO OS並將重啟。當安裝基礎作業系統時,用網線連線你的電腦和機器人,配置你的IP地址為169.254.220.1/24。一旦重啟完成,NAO就會執行它常規的阿爾達巴蘭甦醒程式。

  不幸的是,用scp拷貝檔案到NAO中時偶爾會凍結機器人的作業系統。因此,有必要用U盤來處理B-Human基礎系統的安裝。

  拔出U盤。用FAT32檔案系統格式化U盤。之後插入U盤,並使用installRobot.usb指令碼。這個指令碼需要三個引數:name,address和path。name是你配置的機器人的名字。address是IP地址,當你按下NAO胸口按鈕時機器人會告訴你IP。Path是你插入U盤的根路徑.

  例如:./installRobot.usb Penny 169.254.220.18 /media/usb   當執行installRobot.usb時,它會檢查你的電腦是否恰當的連線到機器人。如果沒有,請確保網線正確的連線並按住NAO胸口的按鈕幾秒鐘重啟NAO。

  在shell中按說明執行。安裝完成之後,NAO將自動重啟。你此時應可以ping到你給機器人配置的IP。

  在用installRobot.usb第一次安裝B-Human基礎系統後,通過scp拷貝檔案時,機器人的作業系統就不會再凍結了。因此,之後的安裝可以用installRobot指令碼來處理,這個指令碼與installRobot.usb工作相當類似,但是不需要U盤。注意:在燒錄好機器人後第一次安裝B-Human基本系統必須用installRobot.usb指令碼。   要更新已安裝到NAO的檔案,執行:

    ./installRobot Penny 169.254.220.18