三、 系統軟硬體說明
3.2 軟體介紹
3.2.1 Microsoft Windows Embedded Standard
本實驗將以 Microsoft Windows Embedded Standard 2009 [14]為單板電腦 所使用之作業系統,Windows Embedded Standard 為微軟研發的嵌入式操作系 統,是一個以元件模組展現出與 Windows XP Professional 作業系統一樣的介 面與操作模式,可依各自需求組合出的作業系統映像檔案,確保有 Windows XP Professional 作業系統相依性以及完整的功能。Windows Embedded 基於將
Windows XP Professional 所有的功能和程式予以元件化,包含了超過 10,000 項以上的個別功能元件。使用 Windows Embedded Standard 可以讓程式開發 人員先在個人電腦上的 Windows XP Professional 作業統發展所需系統和應用 軟體,然後,直接移轉到在 Windows Embedded Standard 嵌入式作業系統上 執行,減少了許多驅動程式和應用程式開發的時間。可以應用在各種嵌入式 系統,或是硬體規格層次較低的電腦系統(例如很少的記憶體,較慢的中央 處理器等)。微軟嵌入式 Windows Embedded Standard 作業系統目前廣泛應用 於資訊家電、工業控制等領域的技術和產品研發,例如:自動化、機器人、
含多個 Windows XP Professional 作業系統內基本元件, 包含 Bluetooth、
DirectX、.NET Framework、Windows Media Player、Internet Explorer...等。
支援所有 x86 硬體平台設備。
可挑選所需的服務、應用程式及驅動程式建置系統映像檔,可縮減作業系 統大小並減少系統資源消耗
在本研究中使用 Microsoft Windows Embedded Standard 搭配單板電腦 RB-100,除了可以達成機器人自主運作之目標外,還將可以讓所有原先在個 人電腦中使用的軟體與程式直接移植至單板電腦上運行,減少機器人控制程 式開發之負擔,進而專注於影像辨識等人工智慧問題上。
3.2.2 RoboRealm 機器人視覺軟體
本研究所採用之影像辨識軟體 RoboRealm [10]是一套免費下載的機器人 視覺軟體應用程式,功能強大,可供使用者做為機器視覺、影像處理等複雜 的影像分析,圖 3-6 為 RoboRealm 軟體的視窗操作介面,使用者可以從左側
圖 3-6 Roborealm 介面視窗
加入各種影像處理函數模組,例如用來執行重心定位或提供顏色及幾何的統 計資料等分析功能。此外 RoboRealm 還包含多種濾波器(Filter)可以被應用在
影像上處理去除背景,或尋找影像的最大、最小、平均或中間點等功能。
舉例來說,使用者可以利用 RoboRealm 來達成如數位量表判讀,物件定 位或路徑追蹤的工作。除了軟體中內建的影像處理函數之外,RoboRealm 還 可以透過 Extensions 讓使用者自行建立函數。另外 RoboRealm 中也提供了 API Server (Application Program Interface Server),讓使用者在使用其他程式語 言撰寫程式時可以接收 RoboRealm 提供的影像資料。
四足機器人之踏步順序為右前腳左後腳左前腳右後腳,如圖 3-8,此 種舉腳順序是目前各種四足機器人研究中,直走時的最佳步態順序。
圖 3-7 四足機器人座標系 [15] 圖 3-8 踏步順序
機器人踏步過程中的重心調整方式,則是採用簡化的計算方法,將機身 中心投影至地面,當抬起其中一腳時,中心在地面的投影點必頇落在仍在地 上的三足所形成的三角形內,機器人才不至於傾倒。而此程式將依照上述理 論計算出踏步及調整重心等行走循環程序中的各軸運動數據如馬達轉動角度,
並匯出成伺服馬達控制軟體 Visual Sequencer 可用的路徑檔案格式,得以配合 實驗匯入控制軟體實際進行驗證。
此動作產生程式同時擁有以 MATLAB 為基礎所建立的步伐規劃自動產 生的圖控式界面系統(GUI),有助於簡化四足機器人跨越河石地形的步伐規劃
2 左後
1 右前 3 左前
4 右後
與實際控制驗正。
3.2.4 Visual Sequencer 機器人控制軟體
本研究中,為進行控制機器人伺服馬達的動作測詴與規劃,使用了 Lynxmotion 公司 [12]開發的 Visual Sequencer,這是一套配合 SSC-32 脈波產 生器,針對伺服馬達控制所撰寫的一套圖形化界面控制軟體。在本研究中,
主要會使用到這套軟體的三項功能,以下將個別就此三項功能進行介紹:
(1)SSC-32 設定
一般進行控制伺服馬達,首先便會遇到伺服馬達校準的問題,雖然現今 來說,各家公司所生產之伺服馬達皆已定義其接收脈衝對旋轉位置的定義,
但實際上每顆伺服馬達對此皆有差異,使得一般在使用時,若是直接給予脈 波來進行控制,會需要個別換算角度而使得操作相當繁瑣,但若是透過 Visual Sequencer 的 SSC-32 設定,可以直接對個別伺服馬達工作脈波區間,並可自 行定義對應角度,使得在完成設定後,使用 Visual Sequencer 控制時可以直接 給予角度讓軟體換算成脈波長度,簡化控制流程。
圖 3-9 Visual Sequencer 軟體介面 [12]
(2)動作編輯與播放
在這個功能中,能指定動作的伺服馬達與角度位置,以及動作時間。透 過這個功能,使用者能夠直接調整動作,並儲存下來連續撥放,作為動作快 速設定與測詴的輔助。另外在進階播放模式中,可以直接調整動作速度的倍 率,協助找出較佳的動作速度進行調整。
(3)匯出與匯入功能
Visual Sequencer 支援了匯出與匯入功能,能夠將設定完成的動作資料,
轉換為以純文字格式編寫的機器人動作角度檔案匯出,或將由其他軟體產生 之相同格式檔案匯入產生動作。