• 沒有找到結果。

National Sun Yat-sen University Institutional Repository:Item 987654321/30986

N/A
N/A
Protected

Academic year: 2021

Share "National Sun Yat-sen University Institutional Repository:Item 987654321/30986"

Copied!
5
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會專題研究計畫 期中進度報告

子計畫四:抗流型水下遙控載具之感應器系統整合(2/3)

計畫類別: 整合型計畫 計畫編號: NSC94-2611-E-110-003- 執行期間: 94 年 08 月 01 日至 95 年 07 月 31 日 執行單位: 國立中山大學海下技術研究所 計畫主持人: 王兆璋 共同主持人: 程啟正,陳信宏 報告類型: 精簡報告 報告附件: 出席國際會議研究心得報告及發表論文 處理方式: 本計畫可公開查詢

中 華 民 國 95 年 6 月 1 日

(2)

抗流性水下遙控載具(ROV)關鍵性技術開發及系統整合

子計畫四:水下潛航器之感應器系統整合

Integration of Sensory System for Remotely Operated Vehicle

NSC 94-2611-E-110-010 主持人:王兆璋 共 同 主 持 人 : 程 啟 正 陳信宏 研 究 人 員 : 羅 世 倫 陳柏棋 周駿宏 摘 要 操控水下遙控潛器時需將感測器資料(磁羅經、深度計及環場聲納等)上傳 至水面,並將命令下傳至受控元件(推進器、攝影機、燈光)。水面控制台與潛 器船載電腦間的通訊,使用序列埠(Serial Port)。受限於可用的 RS232 序列埠 通道數,我們並無法將所有的感測元件資料以一對一的方式上傳,而是利用資料 合流及分流的技巧,僅用一個高速 RS232 通道(Baud Rate 115200)來達成這個需 求。因此相對應於水面控制台而言,由於接收到的是感應器原始資料,所以這個 傳遞的架構相對於使用者而言是透明(transparent),換言之水面控制器可以對任 一通道做資料處理,而無須考慮資料傳遞的方式。由於水面下的感應器可以隨時 任意變換連接的通道,而不必修改程式,僅需在水面控制器重新指定相對應的通 道即可。因此這個架構提供操控程式維修上的彈性。

一、前言

ROV 操控系統分為水面上控制台子系統 及水下潛器控制子系統。ROV 所處的水下環 境藉由各種感應器探索後將資料上傳;操控 者綜合判斷感應器資料後下達控制命令。我 們並不直接從水面控制潛器上的推進器或燈 光,而是將命令下傳後,再由潛器上的電腦 代為執行。採用直接傳輸的話,一個感應器 需要一個通道,命令也需要一個通道,這樣 的架構訊號纜繩必須預留比較多的蕊數,纜 繩線徑也會因此加粗不利 ROV 航行。另一種 作法是建構一個資料合流及分流的通訊機 制,將所有的感應器資料在潛器端彙整後,再 透過一個高速的 RS232 串列埠或光纖通信上 載。水面端的控制台再依據通信協定分流出各 個感應器通道的原始資料,以供控制程式使 用。資料與命令一來一往的傳輸間,各種資料 的傳輸量與更新率因感測器的規格皆不相同。 所以在整個系統中就會有著好幾種不同的傳輸 頻率、資料流量及更新速率。目前我們規劃的 環境感應器有深度計、高度計、磁羅經、傾角 計與環場掃描聲納。除聲納 BAUD Rate 為 115200 bps 之外,其餘皆為 9600 bps。潛器上 的受控元件有推進器、燈光及攝影機 PZT。

(3)

圖 3: 資料合分流機制流程

二、硬體配置

水下控制電腦採用 PC104 的規格。它將 一般桌上型主機板所有的 IO 如鍵盤、滑鼠、 多媒體、網路、顯示,甚至 CF 卡等都縮小在 一片面積不到 A4 四分之一大小的電路板實 現,如圖 1 所示。CPU 為 Pentium 1G, 256M RAM. 我們採用的 PC104 上具備有四個序列 埠(Serial Port),我們使用其中一個序列埠 來做 Data Link,其餘的三個序列埠則是接收 ROV 的感測器的資料。如果感測器增加時, 亦可加上一片 RS232 擴充卡以提供另外四個 串列埠。

三、資料分流合流機制

我們設計的主要標的是:(1) 感應器的原始資 料可以無誤地中繼至水面上控制台;(2)感應 器所連接的串列埠可以隨意變換而無須修改 程式;(3)感應器啟動的個數或時間無須同步; (4) 各 個 感 應 器 可 以 有 獨 立 Baud Rate 及 Refreshing Rate;(5)命令之傳遞也依循一樣的 邏輯。基於這些目標,我們為感應器資料及命 令傳遞設計以下的合流與分流的通信機制(如 圖二所示)。 圖 1:PC104 實體 感應器資料合/分流 1. 運算核心以即時執行緒(Realtime Thread) 的方式定時中斷,依序對所有的串列埠蒐 集資料。目前我們設定 20Hz,因為以 1024 Bytes 的暫存區而言,在 Baud Rate 115200 bps 的速率下應可穩定擷取。 圖 2:資料上下鏈結 2. 每一個通道所收到的資料,在前後加上 「#?」及「?%」當成識別符號,其中「?」 處代表串列埠的編號。選擇「#」和「%」 當成通道區隔是因為我們所有的感測器資 料格式中並未使用這兩個字元。 3. 串接後的資料流(Data Stream)混雜著不均 勻且不連續的通道資料。控制台解讀程式 將依序尋找資料流中成對出現的「#」和 「%」,像四則運算中的括號運算一樣, 一對括號中夾帶的就是某一通道的部分資 料。資料堆疊到相對通道的暫存器後便呈 現出原來通道資料的原始形式。 以上的感應器資料中繼處理流程如圖 3 所示。

(4)

控制命令 控制台對潛器的命令有推進器的出力方向及 大小、燈光之開關、攝影機鏡頭之 PZT 轉向 及機器手臂操控。我們設定的命令下載流程 因為資料量少,則是藉由欄位分隔符號和 CRC 檢核碼的方式傳遞。介紹如下: 1. 為了達到資料同步,我們在資料串(Data Packet)的前後加上「$」及「#」當成區 隔,而不同命令間則以「,」分隔。 2. 目前我們的潛器一共配備有五個推進 器,字串中“$”之後以逗號隔開的 5 個整 數為推進器轉速命令。此數值控制 DA 卡輸出類比參考電壓控制推進器轉速。 數值範圍介於 0 到 255,對應到±5V 推進 器命令電壓範圍。 3. 接續的四個數值為攝影機 Pan-Tilt-Zoom 及對焦的控制命令,1, 0 及 2 分別代表正 向調整、反向調整及停。 4. 最後的三個數值為燈光開啟及關閉。數 值 0/1 分別由水下控制電腦 IO Port 輸出 TTL 位準以控制燈光電源繼電器。 5. 最後一個位元組則為 CRC8 檢核碼。 範例 ”$127, 0, 127, 0, 0, 1, 1, 2, 2, 1, 1, 1\126#” 命令解讀程式拆解後,分別為: 推進器 Thruster1: 停止;Thruster2=-5V; Threster3: 停止;Thruster4=-5V; Threster5: -5V 攝影機

Zoom-in, Focus-in, Pan-left and Tilt-Up=2; Focus=2;

燈光:

Light1 開、, Light2 開及 Light3 開。

四、實驗

1. 感應器種類與資料格式 z 磁羅經+傾角儀: $PTNTHPR,130.5,N,-0.1,N,-0.3,N*31\n\r 長度不固定,資料串之間(Data Packet)由「$」 區隔。 z 深度計: +078.50,+123.24\n\r 長度固定為 17 Bytes. z 高度計 100.00m\n\r 長度固定為 9 Bytes. z 環場聲納: 由大量複雜 Binary Data 組成,需要由專用軟 體才能解讀。 資料彙整程式會定時(目前設定 2kHz)查詢各 個感應器通道是否有回傳資料。由於目前的串 列埠大多有 FIFO 暫存器,因此如果資料格式 長度較短時,一次便可將完整資料攫取完畢。 不過有些感應器資料長度超過 FIFO 長度,會 產生資料必須耗費查詢週期才能傳輸完畢的情 形。 2. 辨識符號與資料合流 以符號「#」為開頭符號,接續一位數字通道編 號:符號「%」為結尾符號,前導一個對應的 數字來標示資料結尾之對應通道。由於各個感 應器的資料格式、長度、Baud Rate 及更新速率 皆不同,因此上傳的資料串會有交錯各通道資 料的現象,如下範例。 #3,+123.24\n\r$PTNTHPR,130.6,N,-0.2,N,-0.3,N*31,3%#4+078. 50,+123.244%#3$PTNTHPR,130.6, 3% 可以看出當程式啟動時,並沒有抓到通道 3 的 資料起始位置,而是涵蓋部分前次資料與部分 本次資料於第一次上載通訊中。接續而來交錯 通道 4 的資料,依此類推。這個程序如圖 2 下 半部所示。 3. 辨識符號與資料分流 資料串中繼至水面控制台後,再依據分隔符號 一一拆解堆疊至通道的暫存區。除了程式開始 擷取資料之初可能接收到前一次殘缺的通道資 料外,理論上所有後續的資料都應有成對的起

(5)

始(#)及結尾($)符號。不過為了確保資料的正 確性,如果通訊出現不同步現象,導致配對 不正確時,則從資料由後向前尋求配對,捨 棄多餘資料。這個程序如圖 2 上半部所示。 資料堆疊至對應的通道暫存區後,控制 器的感應器資料處理程式便可以約定的資料 格式,依序將所需的物理量,如深度、角度 等擷取出來。

五、討論與結論

我們設計的這個架構,對於水下感應器 連接的實體串列埠而言並無限制。換言之, 如果因故感應器有所更換,或是串列埠連接 次序變更,資料會自動出現於更新的對應通 道暫存區中,程式完全無須更動。這使得系 統開發過程或維修時省卻開啟水密箱更新控 制程式的麻煩。至於控制台的資料分流程式 也無須更動,只有資料解讀的欄位與格式要 重新定義。我們預計在下一階段要加入 Baud Rate 自動掃描功能。原理很簡單,僅需將預 設常用的 Baud Rate, 如 4800 BPS, 9600 BPS 或 115200 BPS 一一連接上傳資料,當接收到 有意義的資料時,即完成通信格式的設定。 串列埠在遠距離傳輸或是有雜訊影響時 會造成部分資料遺失。當缺失的資料是通道 辨識符號時,可能會造成分流的錯誤判斷; 通道 1 的資料可能會混入通道 2 中,或是分 流後的資料無法解讀出有意義的欄位。這個 問題可藉由 CRC 核對碼做進一步確認,甚至 做資料自動修正可以解決。若在干擾情形不 嚴重的情況下,直接將品質不良的資料直接 丟棄,也是一種簡單的處置方式。 目前已用 RS232 作為中繼媒介,做短距離 測試。實海域系統測試時則採用 RS485, Baud Rate 115200 BPS 實做。雜訊干擾對資料的完 整性有多大影響,尚待實驗測試。此外,同 樣採用 115200 BPS,資料傳輸量極大的環場聲 納,也將在期末之前測試。

參考文獻

相關文件

如未確實遵循資通系統 設置或運作涉及之資通 安全相關法令,可能使 資通系統受影響而導致 資通安全事件,或影響 他人合法權益或機關執

凡你對別人所做的.就 是對自己做.這是歷來 最偉大的教誨,不管你 對別人做了什麼.那個 真正接收的並不是別

(一)本次甄選正取 1 名,視成績擇優候用 2 名,候用期間 3 個月(自甄

審查整理呈現資料:蒐集到的資料應先審核 是否完整、正確、合理與一致,然後利用敘

ƒ 提供 Connection Oriented (連結導向) 並達成End-to- End (兩端通訊端點對端點) Process-to-Process (程序對 程序)、Reliable Data Delivery

● 使用多重準則(例如清晰度、準確度、有效性、是否及

閘門快易通 同仁在執行各項業務 時,如需檢附求職者的 加(退)保資料,以確保 求職者身分資格時,經 求職者本人同意並寫

[r]