一、前言
還沒閱讀過 VMX 智慧移動平台文章的夥伴們,可以先閱讀前兩個單元認識平台的硬體規格與開發環境設定喔!
本單元主要與大家說明如何使用C++開發 VMX 智慧移動平台,以及分享在開發過程中會遇到的狀況,提供大家解決的方法。
二、安裝相關軟體
軟體安裝與VMX智慧移動平台教學 – 單元(二) 開發環境設定相同,若還沒有安裝過請先照著文章VMX智慧移動平台教學 – 單元(二) 開發環境設定中安裝相關軟體章節安裝即可。
1.如何成功使用C++開發VMX智慧移動平台?
在軟體安裝的過程中可以發現預設已安裝Java及C++環境;但是如果先自行直接使用C++作為開發語言,在上傳程式碼到VMX智慧移動平台期間有可能會遇到以下所示錯誤。
此錯誤內容告訴我們可能缺少某些快取檔案,經過反覆測試,筆者發現要解決此問題需要先以Java做為開發語言,開啟任意範例,並且成功上傳到VMX 智慧移動平台,此動作將會自動補齊C++上傳程式碼期間遺漏的檔案,這個動作只需要在第一次遇到此問題時執行,執行過後將會自動修正此錯誤。
2.使用VS Code新增Java範例
按下「F1」輸入「wpilib: create a new project」,輸入完畢將會啟動範例產生工具。
- Select a project type (Example or Template) 選擇 「Template」
- Select a language 選擇「java」
- Select project base 選擇 「Command Robot」
- Select a new project folder 選擇專案所要存放的資料夾位置
- Enter a new project name 輸入任意專案名稱
- Enter a team number 輸入四位數字團隊編號(e.g.1234)
最後按下「Generate Project」,工具將會幫我們產生 Command Robot 的範例程式。
系統詢問要使用哪一個視窗開啟,選擇當前視窗或新視窗。
3.將Java Command Robot的範例程式上傳到 VMX 智慧移動平台
首次新增專案系統將會自動編譯。
編譯成功將看到綠色「BUILD SUCCESSFUL」提示。
因為我們是使用 VMX 架構,所以我們需要將此專案從 RoboRIO 架構轉換成 VMX 架構,腳本將會自動編譯程式碼以及從網際網路取得VMX 架構所需套件,轉換期間須保持良好的網際網路。
按下「F1」輸入「VMX-Pi: Change the deploy target to VMX-Pi (from RoboRIO)」。
轉換成功將看到綠色「BUILD SUCCESSFUL」提示。
按下「F1」輸入「wpilib: Deploy Robot Code」,即可將程式碼上傳到VMX智慧移動平台控制器上。
上傳成功如下圖所示。
4.使用VS Code新增C++範例
按下「F1」輸入「wpilib: create a new project」,輸入完畢將會啟動範例產生工具。
- Select a project type (Example or Template) 選擇 「Template」
- Select a language 選擇「cpp」
- Select project base 選擇 「Command Robot」
- Select a new project folder 選擇專案所要存放的資料夾位置
- Enter a new project name 輸入任意專案名稱
- Enter a team number 輸入四位數字團隊編號(e.g.1234)
最後按下「Generate Project」,工具將會幫我們產生Command Robot的範例程式。
系統詢問要使用哪一個視窗開啟,選擇當前視窗或新視窗。
5.將C++ Command Robot的範例程式上傳到VMX智慧移動平台
首次使用C++語言編譯程式碼之前需要先安裝Raspbain Toolchain。
按下「F1」輸入「wpilib: Run a command in Gradle」,輸入 「installRaspbianToolchain」。
因之前已安裝過所以系統自動重新安裝。
因我們是使用VMX架構,所以我們需要將此專案從RoboRIO架構轉換成VMX架構,腳本將會自動編譯程式碼以及從網際網路取得VMX架構所需套件,轉換期間須保持良好的網際網路。
按下「F1」輸入「VMX-Pi: Change the deploy target to VMX-Pi (from RoboRIO)」。
轉換成功將看到綠色「BUILD SUCCESSFUL」提示。
按下「F1」輸入「wpilib: Deploy Robot Code」,即可將程式碼上傳到VMX智慧移動平台控制器上。
上傳成功如下圖所示。
三、小結
本篇文章我們說明了如何解決使用 C++開發環境會遇到的問題,希望大家在閱讀本文章後都能順利使用C++開發 VMX 智慧移動平台。後續我們還會分享更多有關VMX 智慧移動平台的相關技術文章,請大家繼續關注與支持我們喔!