125

弓削丸における航海情報の取得と操船シミュレータ間通信
田房 友典＊・高岡 俊輔＊＊・服部 和典＊＊＊

Acquisition Method of Sailing Information fromTraining Ship Yuge-Maru and Communication
Between the Ship Maneuvering Simulator
Tomonori Tabusa＊, Shunsuke Takaoka＊＊ and Kazunori Hattori＊＊＊
Abstract
This paper describes acquisition method of sailing information from training ship Yuge-Maru online bycellular phone. The Communication enables monitoring the sailing conditions on the navigation simulator.
Yuge-Maru LAN is set up programmable controller interface and can communicate by a socket. Shipmaneuvering simulator has UHI interface and can communicate by AD/DA conversion. We clarify it about theseconnection methods.
１．はじめに
弓削商船高等専門学校（本校）の弓削丸は，平成６年に船内LANを有する練習船として建造された．
建造当時，船内LANを設置した船は珍しく，船内［ 2］LANを活用した船舶の管理や応用などが期待［1］された．船内LANの構築によって船内はネットワークによって接続され，それぞれの場所でデータを共有できるようになった．また，船舶に関連した研究だけでなく，弓削丸を利用した制御系や情報系の研［4］も行われるようになった．船内LANによっ
究［3］て航海情報や機関データを柔軟に取得できるようになったが，陸上と船舶の間は，依然オフラインでの通信であった．
衛星や通信技術の発達に伴い，陸上では高速な通信速度をもつブロードバンドが日常的に利用させているが，陸上と海上もしくは海上と海上との通信の現状は，必要最小限に抑えられており，未だ高額かつ低速度である．このため，観測された情報のほとんどは船舶の帰港後に収集するのが一般的である．
近年，海洋ブロードバンドに関する研究［5］が進められている．実験的に陸上と船内とのカメラ映像によるミーティングや航海や機関情報のモニタリングが行われているが，通信費用やブロードバンド用アンテナの設置などの面から，一般の商船への普及の＊情報工学科＊＊商船学科＊＊＊専攻科生産システム工学専攻

見通しは明るくない．大手舶用機関メーカは，ネットワークを利用してエンジンと発電機を遠隔監視するサービスを始め，洋上での必要なメンテナンスを24時間対応している．本サービスにおいて，機関の排気や燃料の温度などの陸上へデータ伝送は，未だ電子メールで行っている．
海洋ブロードバンドを利用したサービスとして，船舶機関メーカ，造船，商船および衛星通信事業者とが共同で，船舶運航支援サービスの実証実験を現在，進行している．航海や機関データの遠隔監視は，船主だけでなく商船，造船および舶用機関メーカなどにおいて重要な役割を果たす．現状は，陸上と海上を結ぶネットワークサービスのインフラが安価に構築されていないため，遠隔監視の実用化は難しい．
弓削丸の船内LANには，機関と航海データを収集するデータロガーや外部との接続インターフェースであるプログラマブルコントローラが設置されている．また，操船シミュレータには航海情報を入出力が可能なUHIインターフェースが用意されている．
本論文では，陸上と海上を結ぶネットワークインフラの構築を仮定して，弓削丸と操船シミュレータの各インターフェースへの接続の方法について述べる．

平成20年９月30日受理

126

弓削商船高等専門学校 紀要 第31号（平成21年）

２．弓削丸と操船シミュレータとの相互接続
弓削丸と操船シミュレータとの相互接続は，e操船支援システムの取り組みでもある．e操船支援システムとは，陸上の操船シミュレータと海上の練習船を通信回線（FOMA）で結び，陸上の操船シミュ
レータで練習船の航海情報を取得し，航海状況をモニタリングする．陸上から船舶の航海状況をモニタリングできれば，緊急事態時の非難措置，操船シミュレータで練習船の操作が可能となり，教育に活用することもできる．図１にe操船支援システムの概要図を示す．
弓削丸情報を取得するには，弓削丸の船内LANには航海情報の収集と船内の機器への命令が可能なPLCサーバ「シーケンサ」と通信する．パケット通信によりシーケンサへ命令を送信することで弓削丸の航海情報を取得することができる．操船シミュレ
ータは，電圧負荷と電圧計測によってシミュレータの情報の入力と出力の制御が可能なUHI（UniversalHardware Interface）と呼ばれるインターフェースが備えられている．PCとUHIインターフェースを接続するにはAD/DA変換PCIを介し，シミュレータの情報を取得できる．２つのインターフェースに携帯電話を使用して相互接続を試みる．

力しかできない．一方，UHIは操船情報を双方向に入出力が可能である．UHIを利用したデータ通信を行うためには，接続用ハードウェア，信号の変換ドライバEDM（Exchange Data Module），航海情報の割当て（コンフィギュレーション）と入出力設定（キャリブレーション）が必要である．
３．１ UHIインターフェース
操船シミュレータでUHIインターフェースを使用したデータのやり取りを行うには図２のような接続用ハードウェアの環境が必要である．UHIインターフェースは，電源ユニット，電圧分配ユニット，Input-Unit，Output-Unitから構成される．シミュレータへはCAN-USBよりCAN信号として信号変換され，入出力を行う．図２の右上が電源ユニットと分配ユニット，右下はAD/DA変換用の接続端子台である．

Input-Unit

Output-Unitࠪ࡯ࠤࡦࠨ

CAN-USB(1/#(ធ⛯ 2%ᑿ೥ਣߣ⦁ౝ .#0

図2UHIインターフェース

7*+
#&&# ࡏ࡯࠼ᠲ⦁ࠪࡒࡘ࡟࡯࠲

図1

G ᠲ⦁ 2%



e操船支援システム構築概要

３．操船シミュレータ間通信
陸上側の操船シミュレータはNMEA（NationalMarine Electronics Association）とUHI（UniversalHardware Interface）の２つのインターフェースを持っている．NMEAはアスキコードで書かれたセンテンスをシリアル通信によって転送する方式で，操船シミュレータは外部インターフェースに対して出

３．２ コンフィギュレーション
UHIインターフェースに航海情報の割り当てを行
うにはVBSファイルを設定する．VBSファイルは図３に示すように最初にUnit̲nameとUnit̲noを記述し，その後，各ポートに割り当てる航海情報を設定する．
各設定パラメータについて説明する．Unit̲nameは，表１に示すように４種類のUnit名を設定する．
Unit̲noは，各ユニットに固有につけられた番号であり，EDMドライバに付属しているソフトウェア（ExchgDMTest）によって調べる．UHIインターフ
ェースを接続してExchgDMTestを起動し，ソフトウェアの「Open Port」ボタンをクリックすると，その下のテキストウィンドにUnit̲nameとUnit̲noが表示される．表示されたUnit̲nameに対応した
Unit̲noをVBSファイルに記入する．

弓削丸における航海情報の取得と操船シミュレータ間通信（田房・高岡・服部）

127

set assign = unit.Create ("Port#Port_no")
set tmp = assign.Create ("Bind")
tmp.Add "Control", "Parameter"

共通項目について説明する．unit̲ser̲numは，ユニットのシリアル番号を示し，ユニットの正面に記載させている番号である．channel̲numはポート番号と同様で０〜８の番号を割り当てることができる．
ここで，X1とX2は，操船シミュレータが出力する値の最小値と最大値を示し，Y1とY2は操船シミュ
レータ内部で取り扱う数値の最小値と最大値である．X1とX2は表２のパラメータ一覧表，Y1とY2はEDMドライバに付属しているExchgDMTestの値から参照する．
操船シミュレータからの出力DACの場合，終端に出力する値Z0,Z1の設定が必要である．各出力値は，表３に示すように定められている．

set assign = unit.Create ("Port# Port_no")
set tmp = assign.Create ("Bind")
tmp.Add "Control", "Parameter"

ADC (unit_ser_num,channel_num) (X1,Y1) (X2,Y2) ...
DAC(unit_ser_num,channel_num) (X1,Y1) (X2,Y2) ... [Z0,Z1]

次に各ポートに割り当てるパラメータを設定する．Port̲noには１〜８のポート番号を設定し，表２に示すParameterを割り当てる．複数のポートを設定するには，Port̲noからParameterまでの３行を追記し，各値を設定すればよい．

set unitn = root.Create ("Unit_name")
set unit = unitn.Create ("Unit#Unit_no ")

図3

表1

図4

VBSファイル

clbファイルの設定内容

表3

Unit̲nameの設定

出力値一覧表［Z0,Z1］意味

Unit 名意味

Analog Input

AnalogデバイスのInputユニット［6,0］

0…1 mA

Analog Output

AnalogデバイスのOutputユニット［13,13］−1…＋1 mA

Digital Input

DigitalデバイスのInputユニット［64,0］

0…＋5 V / 0…10 mA

DigitalデバイスのOutputユニット［128,128］−5…＋5 V / −10…10 mA［255,255］−10…＋10 V / −20…20

Digital Output

３．２ キャリブレーション
操船シミュレータとのデータの入出力は，AD/DA変換によって行われる．しかし，各パラメータの最大値，最小値はそれぞれ異なっているため，コンフィグレーションで割り当てたポート毎にそれぞれ設定が必要である．
キャリブレーションは，図４に示すclbファイルによって設定する．clbファイルは操船シミュレータからデータを出力するとき，アナログからデジタル信号に変換するADCと操船シミュレータにデータを入寮するとき，デジタルからアナログ信号に変換する
DACの２種類の設定がある．まず，ADCとDACの表2
NNParameter

3

nciEngLeftOrderHnd

68

nciStrRudderOrderHnd

４．弓削丸間通信
４．１ 弓削丸の船内LAN
本校練習船「弓削丸」には船内LANシステムが構築されている．このシステムは船内における情報の共有，乗組員の船内作業の軽減化と迅速化及び，船舶と陸上との情報交換の促進を目的としている．また弓削丸の船内LANには図５のように弓削丸の航海・機関情報の収集や，各機関へ出力可能なプログ
ラマブルコントローラが操舵室と機関制御室の２つに配置されている．この収集された情報を携帯電話

主なParameter一覧表
Value

RangeDirection-10 to 10

DUAL-45(-35) to 45(35) rudder order

DUAL

73

nciStrGyroHeading

10 * degrees

OUTPUT

284

nciWindDirection

degrees*10, 0..3599

OUTPUT

285

nciWindSpeedm/s*100

OUTPUT

128

弓削商船高等専門学校 紀要 第31号（平成21年）

接続とソケット通信により陸上へ送信することでシミュレータに弓削丸の状況が再現でき，逆に陸上のシミュレータからプログラマブルコントローラへ命令することにより弓削丸の操作も可能である．本章
では弓削丸の情報を取得する命令の書式について説明する．

図5

弓削丸LAN系統図

４．２ 船内LANへの命令送信
弓削丸LANとの通信は，携帯電話によって通信された状態でIPアドレスとポート番号によりソケット通信を行い接続する．この状態でシーケンサに対してデータの取得や書き込みを行うRead/Write命令を発行し，その応答結果を受信することでデータの相互通信を行う．
まず，Read命令発行は，図６に示すように命令形
式アドレス，データ数から３ワードで構成されている．命令形式は，表４に示すReadとWrite命令の２種類ある．アドレスは表６に示す計測点一覧表から参照する．Read命令の場合，データ数nはアドレスから連続して読み込むときに２以上の数を指定す
る．Write命令の場合は，アドレスに書き込むデータを指定する．
次に応答結果は，先頭に表５に示す応答結果が表示され，次に表６に示すステータスが表示される．
Read命令を受信した場合，データ数nに対応したアドレス分をステータスの後に表示する．ここで，１ワードは２バイトを示している．

๮઎ᒻᑼࠕ࠼࡟ࠬ࠺࡯࠲ᢙ n

1 ࡢ࡯࠼

1 ࡢ࡯࠼

1 ࡢ࡯࠼

ฃାᤨ
๮઎ᒻᑼ

ࠬ࠹࡯࠲ࠬ

0.5 ࡢ࡯࠼0.5 ࡢ࡯࠼
図6+

表4

命令形式

10進

16進

ワード数

意味

970x61

1

Read

980x62

1

Write

表5

応答結果

10進16進ワード数

意味

225

E10.5

Read

226

E20.5

Write

表6ステータス10進16進ワード数

意味

00x00

0.5

正常

80

0x50

0.5

未定義

810x51

0.5

バッドヘッダ

82

0x52

0.5

バッドワード４．３ 命令の応答結果
Read命令の発行を行うと，データ数nに対応した応答結果が表示される．
例として，計測点番号0100の舵角（アドレス４）の応答結果が68，３と表示された時の変換方法について説明する．応答結果は，アドレス４より１ワードのデータを取得したもので，各１バイトずつBCDコードで記述されている．２バイトのBCDコードは，先頭から下位バイト，上位バイトの順に表示される．
各バイトを４ビットずつ区切り，10進数に変換する．
変換した10進数は，図７のように0388となり，表７の小数点より下位１桁が小数点桁，最小値と最大値より−35から＋35の範囲が０から70の範囲にシフトされている．つまり，応答結果の0388は舵角3.8度に変換される．

68

30000

00110100038ᔕ╵⚿ᨐ̖0100.

3 8 . 8n ࡢ࡯࠼

命令発行と応答形式

8

図7

応答結果の変換方法

129

弓削丸における航海情報の取得と操船シミュレータ間通信（田房・高岡・服部）

表7

主な計測点一覧表

計測点番号

計測点名称

単位型

0000

書き込みフラグ−2

最小値 最大値 アドレス ワード数
0320100

舵角（Read）°

8−350101

舵角（Write）°

8−350102

CPP翼角（Read）°

8−250103

CPP翼角（Write）°

8−250110船首方位（針路）°

800120

船速Kt8−40130

緯度（GPS）

Deg.Min80131

経度（GPS）

Deg.Min0134

緯度（DGPS）

Deg.Min0135

経度（DGPS）

0303

相対風向0304相対風速

小数点30721135411353077

1125511253078

11360811201511−9090118258−180180120

258−9090126

38Deg.Min8−18018012938°

20360235

11M/s

8060236

11５．弓削丸とシミュレータの接続実験
弓削丸との通信実験を行う．測定は弓削丸に対してRead命令を発行し，その応答を受信するまでを７回計測し平均化した．測定方法は携帯電話を使用したものと船内LANに接続したPCにこのソフトをインストールし，直接LAN接続で行った．表8は通信実験の応答結果である．の航路を他商船でも体験でき，他の海域における航海実習の再現が可能となる．
参考文献［1］松下邦幸，松永直也，杉本徳宏他：弓削丸Ⅲ世の概要とその機関部関係エレクトロニクスシス
テム，弓削商船高等専門学校紀要（第17号），
平成７年２月［2］須佐美智嗣，益崎真治，松下邦幸，田原正信，
表8 応答結果
練習船弓削丸のLANシステムについて，弓削商
LAN接続
携帯電話接続船高等専門学校紀要（第17号），平成７年２月
READ
1.37 sec
6.45 sec［3］松下邦幸，弓削丸機関長日誌自動作成プログラ
WRITE
5.04 sec
11.48 sec
ムの開発，Vol.18，pp. 31-35［4］益崎 真治，LAN システムによる弓削丸のオー
６．おわりにトパイロット，Vol.18，pp. 57-61［5］鈴木雅人，大津皓平，浦康彦，海洋ブロードバ
本論文では，弓削丸LANと操船シミュレータに装ンドにおける新たな衛星通信アンテナの開発，備されているインターフェースの接続方法を明らか
社団法人日本航海学会，No.163，pp.48-51，
し，実験により弓削丸と陸上間の通信が確立した．
2005．
相互通信が可能となったことで弓削丸の状況をシミュレータで再現が実現可能となった．また理論上では操船シミュレータから弓削丸の操作も可能となった．現状では，携帯通信によって弓削丸に指令を出すには約５秒の遅延が発生する．今後の課題として，携帯通信に５秒必要であることは，データ量と通信時間の関係が一致しない．何らかの通信障害が考えられるため，これを明らかにする必要がある．今後の予定として弓削丸の状況をシミュレータで再現し，その再現性の検証を行う必要がある．また，取得した航海情報をWeb上で公開し，その情報を５商船で共有することも有用である．これにより弓削丸