飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/ael010500.pdf · 11-3 飛行模擬器...

18
飛行模擬器 11-1 前言 11-2 機器人介紹 11-3 程式碼 11-4 延伸挑戰 11-5 總結 學習重點 1. 認識飛行模擬器 2. 學習在 LabVIEW 2009 安裝 第三方軟體的 Toolkit 3. CATCAN 智能伺服機之應用 4. CATCAN 智能感測器之應用 程式難度:中 機構難度:中

Upload: others

Post on 26-Sep-2019

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

飛行模擬器

11-1 前言 11-2 機器人介紹 11-3 程式碼 11-4 延伸挑戰 11-5 總結

學習重點

1. 認識飛行模擬器 2. 學習在 LabVIEW 2009 安裝 第三方軟體的 Toolkit 3. CATCAN 智能伺服機之應用 4. CATCAN 智能感測器之應用

程式難度:中

機構難度:中

Page 2: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-2

高階機器人教戰手冊

11-1 前言 本章將介紹飛行模擬器的運作原理,並設計一個簡單的飛行模擬器。我們將使用

國內的廠商 – CATCAN 所生產的伺服機與感測器來完成飛行模擬器,CATCAN

所生產的伺服機具有工業水準的高精度,而感測器則是可量測多種物理量的感測

器模組。更多資訊請至 CATCAN 官方網站:http://www.catcan.com.tw。

要使用 CATCAN 的產品,我們需要在 LabVIEW 裡安裝廠商提供的 Toolkit。知

道如何安裝第三方的 Toolkit 是一個重要的技能,也是本章的學習重點之一。

11-1-1 飛行模擬器介紹

對無經驗者來說,動力飛行是相當危險的嘗試,因此自很久以前就不斷地有各種

方法讓新的飛行員在非真實飛行的情況下學習控制飛機。飛行模擬器是一種儘可

能真實地複製或模擬飛機駕駛經驗的系統,其範疇包含了從最簡單的模擬遊戲,

往上到由液壓缸或電動缸驅動並由先進的電腦技術所控制的同比例模擬駕駛艙

(圖 11-1)。飛行模擬器廣泛地運用於航空工業的設計和研發,以及在真正駕駛

民用和軍用飛機前進行飛行員與機組成員的培訓。

圖 11-1 全功能飛行模擬器

用於訓練飛行員的飛行模擬器有許多種類,包括可模擬各種飛機通用系統的部分

功能訓練器(Part-Task Trainer, PTT)、練習操作與儀表檢查的駕駛艙程序訓練器

(Cockpit Procedures Trainer, CPT)到最複雜的全功能飛行模擬器(Full Flight

Simulator, FFS)。圖 11-1 所示的飛行模擬器即是一較高等級的全功能飛行模擬器,

全功能飛行模擬器可以做出有 6 個自由度的全方位移動,同時也有廣角高傳真的

視覺系統來模擬窗外的景色。座艙則是裝在由 6 支致動器支撐的運動平台上,藉

Page 3: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-3

飛行模擬器

由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

在空間的運動狀況。其中三種旋轉分別是俯仰(機鼻朝上或下)、滾轉(某一面

機翼朝上或下)與偏轉(機鼻朝左或右);而三種線性運動分別是起伏(上下移

動)、橫移(左右移動)以及縱移(向前加速或減速)。

不論是單一飛行員或是機組人員,飛行模擬都是一個基本的訓練項目,不但可以

節省時間與金錢,也可以減少人員及設備的損失。

11-1-2 安裝 CATCAN Toolkit

在使用 CATCAN 的設備之前,我們要先安裝 CATCAN Toolkit 到 LabVIEW 裡。

請詳實地跟著以下的安裝步驟,以免出錯:

請至 CATCAN 的技術支援網站(http://edu.catcan.com.tw/),點選主畫

面下方的客戶服務,進到客戶服務頁面後再點選頁面下方的檔案下載。

圖 11-2 進入客戶服務頁面,點選頁面下方的檔案下載

Page 4: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-4

高階機器人教戰手冊

進入下載頁面後,下載檔案 Catcan Tookit for LabVIEW_2010.07.03.rar。

圖 11-3 下載檔案「Catcan Tookit for LabVIEWmarch312010.zip」

下載並解壓縮後,找到並複製名為「CATCAN」的資料夾。

圖 11-4 複製名為「CATCAN」的資料夾

Page 5: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-5

飛行模擬器

到您的 LabVIEW 系統路徑,找到 user.lib 資料夾,接著貼上 CATCAN資料夾。本書之安裝路徑為:C:\Program Files\National Instruments\ LabVIEW 2009\user.lib。

圖 11-5 將 CATCAN 資料夾複製到 user.lib 資料夾裡

開啟 LabVIEW,開啟一個新的檔案,並選擇「Target to NXT」。

圖 11-6 開啟新檔,並選擇「Target to NXT」

Page 6: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-6

高階機器人教戰手冊

選擇 Tools Advanced 的編輯面板設定(Edit Palette Set)。

圖 11-7 Tools Advanced Edit Palette Set

您會看到三個視窗,請先點選「Restore To Default」,並重新啟動 LabVIEW(若您先前沒有更動過任何設定,可以跳過這個步驟)。

圖 11-8 點選「Restore To Default」並重新啟動 LabVIEW

Page 7: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-7

飛行模擬器

選取 Function 裡的 Favorites 子選單,點選滑鼠右鍵後選擇 Insert Subpalette,代表新增一個子選單。

圖 11-9 Function Favorites Insert Subpalette

選擇「Link to a directory」,然後點選 OK。

圖 11-10 「Link to a directory」 「OK」

找到在 裡貼在 user.lib 裡的 CATCAN 資料夾後,點選「Current Folder」。

圖 11-11 user.lib CATCAN 點選「Current Folder」

Page 8: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-8

高階機器人教戰手冊

回到 Edit Controls and Functions Palette Set 頁面,點選 Save Changes。

圖 11-12 點選「Save Changes」

重新啟動 LabVIEW,在 Target to NXT 的模式下,即可以在 Functions的 Favorites 頁面下找到 CATCAN 的 Toolkit 了。

圖 11-13 重新啟動 LabVIEW 後,即可找到 CATCAN Toolkit

11-2 機器人介紹

11-2-1 功能說明

本章主題是一個三軸飛行模擬器,透過 CATCAN 智能感測模組裡的加速度感應

器來控制三顆 CATCAN 伺服機的旋轉角度,以模擬飛機的各種動作。

Page 9: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-9

飛行模擬器

11-2-2 機器人元件介紹

A. CATCAN 智能伺服機

CATCAN 的智能伺服機(圖 11-14)使用的是工業的 I2C 介面,所以不只是 NXT,

只要具備 I2C 介面的設備都可以和它連接。I2C 是一種電子零件的通信標準,類

似電腦的 USB 介面。不過 I2C 因為速度較慢所以通常只用來傳遞控制信號,而不

會用來傳送大量資料。NXT 本身有三種通信介面,一種為類比輸入介面、一為

I2C(所有輸入端),另外一為 RS-485(僅有輸入端 4),所以使用 CATCAN 伺

服機時需接在 NXT 的輸入端而不是輸出端。

圖 11-14 CATCAN 智能伺服機採用標準 I²C 介面

另外為了能相容於樂高的零件,CATCAN 有自製的托架可以裝在伺服機上(圖

11-15),裝上托架後即可以使用十字插銷來裝上各種樂高零件。

圖 11-15 CATCAN 伺服機托架

Page 10: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-10

高階機器人教戰手冊

使用 CATCAN 伺服機需要外接電源,伺服機的 I/O 電壓準位為 5V,而每個電池

可供應4個伺服機所需的電力,建議您購買可充電的鋰電池以便重複使用。市售

的充電鋰電池有 6.2V 與 7.4V(圖 11-16)兩種規格,兩者都可以使用。

圖 11-16 每四個伺服機需要外接一顆電池

由於NXT的 I2C介面並不是標準的工業用介面,所以需要先使用轉接線(圖11-17)

才可以使用 CATCAN 伺服機。

圖 11-17 要透過轉接線才可使用 CATCAN 伺服機

CATCAN 伺服機最大的特點在於它是採取串接的連接方式,也就是說您可以在 NXT

上的同一個輸入端串接多個伺服機(圖 11-17),且這些伺服機可以作單一或群

組控制。

圖 11-18 可以在 NXT 的單一個輸入端串接多個伺服機

Page 11: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-11

飛行模擬器

實際使用上,CATCAN 伺服機可回報與監控的參數有:伺服機位址、電壓值、負

載值、溫度值、目前座標、目的地座標、動力輸出狀態以及 PID 控制器參數等。

B. CATCAN 智能感測器

CATCAN 的智能感測器(圖 11-19)是一個整合性的姿態感測模組,也是使用標

準的 I2C 通訊介面,和伺服機一樣可以支援任何提供 I2C 介面的微處理器。

CATCAN 智能感測器可回報三軸的加速度感應器資料、磁力感測器資料、單軸的

陀螺儀感測器資料與溫度資訊,其內部處理器的 I/O 電壓準位為 3.3V~5V。

圖 11-19 CATCAN 智能感測器

本章要用到的是感測模組裡的三軸加速度感應器,我們將在程式部分介紹如何讀

取並應用感應器值來控制飛行模擬器。

C. 飛行模擬器本體

圖 11-20a 飛行模擬器

控制滾轉( roll)動作

控制俯仰(pitch)動作

控制偏轉(yaw)動作

Page 12: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-12

高階機器人教戰手冊

圖 11-20b 飛行模擬器

飛行模擬器以 3 個 CATCAN 智能伺服機來控制 X、Y、Z 軸的滾轉(roll)、俯

仰(pitch)與偏轉(heading)等動作。您可以自行設計飛行模擬器的架構或參考

以下圖片。

X 軸、滾轉

X 軸伺服機是最底層的馬達,用於控制滾轉動作。我們搭建一個大型的正方形框

架,將馬達接於框邊的中心的來控制它像翹翹板一樣上下小幅度翻轉。程式中本

伺服機編號為 16。

圖 11-21 X 軸伺服機

Page 13: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-13

飛行模擬器

Z 軸、偏轉

Z 軸伺服機位於正方形框架的中心,用於控制偏轉動作。由於馬達有一定的重量,

由圖中可看到我們加入許多補強用的零件。程式中本伺服機編號為 32。

圖 11-22 Z 軸伺服機

Y 軸、俯仰

Y 軸伺服機位於 Z 軸伺服機之上,用於控制俯仰動作。程式中本伺服機編號為 0。

圖 11-23 Y 軸伺服機

最後在飛行模擬器頂端裝上一台可愛的小飛機就完成了,它可以幫助您更清楚地

了解飛行的狀態。

圖 11-24 飛行模擬器頂端的小飛機

Page 14: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-14

高階機器人教戰手冊

11-3 程式碼

11-3-1 控制單顆伺服機

EX11-1 指定伺服機位置

CATCAN 伺服機可以轉動的角度為 180 度,並將這 180 度細分為 1024 格。控制

伺服機轉動的方法為設定其位置,而位置的範圍即 0~1023。另外每個伺服機都

有其獨立的 ID 以方便控制,您可以透過程式來設定各伺服機的 ID。設定伺服機

ID 的方式為由 0 開始,以 16 為單位遞增,意即第一個伺服機的 ID 為 0、第二個

的 ID 為 16、第三個的 ID 為 32…以此類推。以 16 為單位遞增的原因是因為使用

16 進位的關係。

圖 11-25 為一控制單顆伺服機的範例程式,請看:

圖 11-25 控制單一伺服機的位置

在圖 11-25 裡,我們用到三個指令。第一個 Initial 指令為初始化輸入端的位置。

第二個指令,PWM Enable 則是控制是否供電給伺服機,設定 true 表示允許 PWM

控制,我們只能以程式控制伺服機的位置;若是設定 false 的話,等於切斷伺服機的

電源,此時我們就可以用手轉動伺服機。第三個指令,SetPos 則是讓我們設定伺

服機的位置,本範例即為要伺服機轉動到刻度 1000 的位置。其中 PWM Enable

與 SetPos 指令皆位於 CATCAN Motor Single 選單下。

11-3-2 將智能感測器所接收的資訊顯示在 NXT 螢幕上

EX11-2 顯示感測器資訊

接下來讓我們試試智能感測器,如前文所述,智能感測器為一個姿態感測模組。

您可以選擇讀取感測器的原始值或處理過的姿態角度資料 Pitch、Roll、

Page 15: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-15

飛行模擬器

Heading、Gyro 與 Temperature。其中 Pitch、Roll 與 Heading 分別是智能感測器

與 x、y、z 三軸的夾角,而 Gyro 則是單軸的陀螺儀(圖 11-26),Temperature

則是溫度。

圖 11-26 智能感測器的姿態角度資料

請看圖 11-27,我們把感測器的姿態感測資料顯示在 NXT 螢幕上:

圖 11-27 將感應器的姿態感測資料顯示在 NXT 螢幕上

在圖 11-27 中,我們依然先用 Initial 指令初始化輸入端,接著利用 3D 指令直接

讀取處理過的姿態感測資料,經過字串轉換後再顯示到 NXT 螢幕上。此範例讀

取的是 Pitch、Roll、Heading 的資料,沒有讀取陀螺儀與溫度感應器的值,不過

方法是一樣的,您可以自行修改程式。

Pitch

Roll

Heading

Page 16: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-16

高階機器人教戰手冊

11-3-3 飛行模擬器

EX11-3 使用感測器資訊控制伺服機

飛行模擬器的程式其實就是 EX11-2 的延伸,我們將三軸的姿態感測資料讀取出

來之後,經過運算之後用來控制伺服機的位置。請將智能感測器接在 NXT 的 1

號輸入端。3 個伺服機:編號 0 的伺服機控制 Y 軸的俯仰(pitch)動作,編號 16

的伺服機控制 X 軸的滾轉(roll)動作,最後編號 32 的伺服機控制 Z 軸的偏轉

(heading)動作。請看圖 11-28:

圖 11-28 以姿態感測資料控制伺服機的位置

EX11-3 結合了前兩個範例,如此一來我們就可以利用感應器來控制伺服機的位

置了,在操作時,若是您覺得飛行模擬器的靈敏度過高導致機身晃動的話,可以

在迴圈內加入等待時間減少感應器的更新頻率。

Page 17: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-17

飛行模擬器

11-4 延伸挑戰 1. CATCAN 伺服機無法直接調整轉速,請利用迴圈來放慢伺服機的轉速。

2. 承上題,在能控制伺服機的轉速後,請配合感測模組內的陀螺儀感應器來量

測控制搖桿的角速度,並藉此控制伺服機的轉速,使您的飛行模擬器有辦法

達到縱移(向前加速或減速)的效果。

11-5 總結 本章我們學會了如何使用 CATCAN 的設備,智能伺服機與智能感測器都是功能

強大的機器人週邊,前者具有工業級的轉動精度,後者則能做到完整的姿態感

測,本章只用到了它們的基本功能,您可以進一步將所有的功能整合在一起,發

揮它們的最大效能。

Page 18: 飛行模擬器 - epaper.gotop.com.twepaper.gotop.com.tw/pdf/AEL010500.pdf · 11-3 飛行模擬器 由電腦的控制可以提供三個軸向的線性運動與旋轉,就如同一個真實的自由物體

11-18

高階機器人教戰手冊