>サイトトップへ >このカテゴリの一覧へ

B 3652 : 2002 (ISO 13281-2 : 2000)

(1) 

まえがき

この規格は,

(工業標準化法第 14 条によって準用する)工業標準化法第 12 条第 1 項の規定に基づき,社

団法人精密工学会  (JSPE)  /財団法人日本規格協会  (JSA)  から,工業標準原案を具して日本工業規格を制

定すべきとの申出があり,日本工業標準調査会の審議を経て,経済産業大臣が制定した日本工業規格であ

る。

制定に当たっては,日本工業規格と国際規格との対比,国際規格に一致した日本工業規格の作成及び日

本工業規格を基礎にした国際規格原案の提案を容易にするために,ISO 13281-2 : 2000,Industrial automation

systems and integration

−Manufacturing Automation Programming Environment (MAPLE)  −Part 2 : Services and

interfaces

を基礎として用いた。

この規格の一部が,技術的性質をもつ特許権,出願公開後の特許出願,実用新案権,又は出願公開後の

実用新案登録出願に抵触する可能性があることに注意を喚起する。経済産業大臣及び日本工業標準調査会

は,このような技術的性質をもつ特許権,出願公開後の特許出願,実用新案権,又は出願公開後の実用新

案登録出願にかかわる確認について,責任はもたない。

JIS B 3652

には,次に示す附属書がある。

附属書 A(規定)  インタフェース記述

JIS B 3652

には,次に示す部編成がある。

JIS

B

3651

  第 1 部:機能的体系

JIS

B

3652

  第 2 部:サービス及びインタフェース


B 3652 : 2002 (ISO 13281-2 : 2000)

(1) 

目次

ページ

序文

1

1.

  適用範囲

1

2.

  引用規格

1

3.

  背景

2

4.

  定義

3

4.1

  処理 (action)

3

4.2

  データ分類 (data classification)

3

4.3

  データ分類カタログ  (data classification catalogue)

3

4.4

  データ源 (data source)

3

4.5

  データベースの型  (data storage type)

3

4.6

  データベースの型のカタログ  (dats storage type catalogue)

3

4.7

  データ変換器 (Data Translator)

3

4.8

  辞書マネージャ (Dictionary Manager)

3

4.9

  実行マネージャ (Execution Manager)

4

4.10

  論理対物理の関連付け (logical-to-physical mapping)

4

4.11

  製造用データベース (Manufacturing Database)

4

4.12

  製造用データ辞書  (Manufacturing Data Dictionary)

4

4.13

  製造用データマネージャ  (Manufacturing Data Manager)

4

4.14

  製造用ソフトウェア辞書 (Manufacturing Software Dictionary)

4

4.15

  製造用ソフトウェア  (Manufacturing Software Programs)

4

4.16

  MAPLE

4

4.17

  MAPLE エンジン (MAPLE Engine)

4

4.18

  ソフトウェア機能カタログ  (software capability catalogue)

4

4.19

  ソフトウェア機能  (software program capability)

4

4.20

  ソフトウェアツールリンカ (software Tool Linker)

4

4.21

  タスク (task)

4

4.22

  タスクリスト (task list)

4

4.23

  タスク実行計画マネージャ (Task Planner)

4

5.

  企業的観点から見た MAPLE と製造用ソフトウェアの関係

4

6.

  省略記号

5

7.

  辞書定義スキーマ

5

7.1

  概要

5

7.2

  カタログ

5

7.2.1

  データ分類カタログ

5

7.2.2

  ソフトウェア機能カタログ

5


B 3652 : 2002 (ISO 13281-2 : 2000)

目次

(2) 

ページ

7.2.3

  データベースの型のカタログ

5

7.3

  製造用データ辞書

5

7.4

  製造用ソフトウェア辞書

5

8.

  MAPLE サービス

5

8.1

  概要

5

8.2

  提供すべきサービス 5

8.3

  状態通知

7

8.4

  入力及び出力の型定義

7

8.5

  タスクの実行計画

7

8.6

  データ辞書及びソフトウェア辞書の維持管理

7

8.6.1

  階層

8

8.6.2

  データ源の登録

8

8.6.3

  データ源のリストの作成

8

8.6.4

  データ源の登録の削除

8

8.6.5

  データ源の修正

8

8.6.6

  プログラム機能の登録

8

8.6.7

  プログラム機能のリストの作成

8

8.6.8

  プログラム機能の登録の削除

9

8.6.9

  プログラム機能の修正

9

8.6.10

  論理対物理の関連付けの維持管理

9

8.6.11

  カタログ項目の登録

9

8.6.12

  カタログ項目のリストの作成

9

8.6.13

  カタログ項目の登録の削除

9

8.6.14

  カタログ項目の修正

9

8.7

  製造用データアクセス

9

8.7.1

  提供すべきサービス

10

8.7.2

  データの挿入

10

8.7.3

  データのリストの作成

10

8.7.4

  データの削除

10

8.7.5

  データの更新

10

8.7.6

  データの検索

10

8.7.7

  データの排他的更新権の取得

11

8.7.8

  データの排他的更新権の返却

11

8.7.9

  問合せの転送

11

8.8

  データの変換

11

8.9

  データの直接転送

11

8.10

  プログラムの呼出し

11

8.11

  プログラム実行マネージャ

11

8.11.1

  プログラムの開始

12


B 3652 : 2002 (ISO 13281-2 : 2000)

目次

(3) 

ページ

8.11.2

  タスクリストによるタスクの実行

12

8.11.3

  タスクリストのサポート

12

8.11.4

  状態管理

13

8.12

  MAPLE システムサービス

13

8.12.1

  提供すべきサービス

13

8.12.2

  MAPLE オブジェクトの初期化

13

8.12.3

  MAPLE オブジェクトの終了

13

8.12.4

  MAPLE の統括管理

13

8.12.5

  MAPLE オブジェクト間の通信

13

8.13

  MAPLE オブジェクトへのアクセス

13

9.

  MAPLE とのインタフェース

13

9.1

  概要

13

9.2

  インタフェースの概要

13

9.3

  製造用ソフトウェア又は他の MAPLE とのインタフェース

14

9.3.1

  概要

14

9.3.2

  インタフェースの定義

14

9.3.3

  共通の動作パラメータ

14

9.3.4

  インタフェースにおける動作の意味及び構文

15

9.4

  製造用データベースへのインタフェース

23

9.5

  データ変換器へのインタフェース

23

附属書 A(規定)  インタフェース記述

24


日本工業規格

JIS

 B

3652

 : 2002

 (ISO

13281-2

 : 2000

)

産業オートメーションシステム

及びその統合−製造自動化

プログラミング環境 (MAPLE) −

第 2 部:サービス及びインタフェース

Industrial automation systems and integration

Manufacturing Automation Programming Environment (MAPLE)

Part 2 : Services and interfaces

序文  この規格は,2000 年に第 1 版として発行された ISO 13281-2, Industrial automation systems and

integration

−Manufacturing Automation Programming Environment (MAPLE)  −Part 2 : Services and interfaces を

翻訳し,技術的内容及び規格票の様式を変更することなく作成した日本工業規格である。

1.

適用範囲  この規格は,MAPLE を構築する上で用意すべきサービスの最小限のセットとインタフェ

ース要件を規定する。この規格の仕様は,特に MAPLE 環境のソフトウェアの開発者,システムインテグ

レータ及びソフトウェアツールの開発者向けのものである。

製造自動化環境におけるプログラムの開発者,

企画者及び操作者などの利用者・製造用ソフトウェアの要求にかかわる仕様は,この規格の範囲外である。

この規格は,MAPLE とソフトウェア間のアプリケーション階層のインタフェースだけを規定している。

製造用データベースの生成又は削除は,製造用データ辞書及び製造用ソフトウェア辞書の仕様と同様に,

この規格の範囲外である。

備考  この規格の対応国際規格を,次に示す。

なお,対応の程度を表す記号は,ISO/IEC Guide 21 に基づき,IDT(一致している)

,MOD

(修正している)

,NEQ(同等でない)とする。

ISO 13281-2 : 2000

  Industrial automation systems and integration−Manufacturing Automation

Programming Environment (MAPLE)

−Part 2 : Services and interfaces (IDT)

2.

引用規格  次に掲げる規格は,この規格に引用されることによって,この規格の規定の一部を構成す

る。これらの規格は,記載の発行年の版だけがこの規格の規定を構成するものであって,その後の改正版・

追補には適用しない。

JIS B 3651

  産 業オ ー トメ ー シ ョ ン シ ス テ ム 及 び そ の 統 合 − 製 造 自 動 化 プ ロ グ ラ ミ ン グ 環 境

(MAPLE)

−第 1 部:機能的体系

備考  ISO 13281 : 1997   Industrial automation systems Manufacturing Automation Programming


2

B 3652 : 2002 (ISO 13281-2 : 2000)

Environment (MAPLE)

−Functional architecture が,この規格と一致している。

JIS B 3700

  産業オートメーションシステム及びその統合−製品データの表現及び交換−(規格群)

備考  ISO 10303 : Industrial automation systems and integration− Product data representation and

exchange

− (Parts)

通称 STEP と呼ばれる。

JIS X 0221 : 1995

  国際符号化文字集合 (UCS) −第 1 部  体系及び基本多言語面

備考  ISO/IEC 10646-1   Information technology− Universal Multiple − Octet Coded Character Set

(UCS)

−Part 1 : Architecture and Basic Multilingual Plane が,この規格と一致している。

JIS X 5740-3

  開放型分散処理−参照モデル:アーキテクチャ

備考  ISO/IEC 10746-3 : 1996   Information technology− Open Distributed Processing − Reference

Model

−Part 3 : Architecture が,この規格と一致している。

JIS X 5911

  開放型システム間相互接続−遠隔データベースアクセス−第 1 部  モデル,サービス及

びプロトコル

備考  ISO/IEC 9579-1 : 1993   Information technology − Open Systems Interconnection − Remote

Database Access

−Part 1 : Generic Model, Service and Protocol が,この規格と一致している。

JIS X 5912

  開放型システム間相互接続−遠隔データベースアクセス−第 2 部  SQL 特殊化

備考  ISO/IEC 9579-2 : 1993   Information technology − Open Systems Interconnection − Remote

Database Access

−Part 2 : SQL Specialization が,この規格と一致している。

ISO/IEC 9579-3 : 1996

  Information technology−Open Systems Interconnection−Remote Database Access

−Part 3 : SQL specialization Protocol Implementation Conformance Statement (PICS) proforma

ISO/IEC 14750 : 1999

  Information technology − Open Distributed Processing − Interface Definition

Language

3.

背景(

1

)

(

1

)

この箇条は参考である。

ここ何年かにわたって,製造システムは飛躍的に柔軟となり,機能が高度化している。NC 工作機械,

ロボット,無人搬送車,PLC,製造セルといった製造システムを構成する装置の数や型も増加している。

そのため製造技術者は,多種多様な装置向けプログラム及び装置を統合するためのプログラムを,開発及

び更新しなければならない。このことが,システムの運用及び制御を統合するためのプログラムの開発を

一層困難にしている。

製造プログラムは,製品データ,プロセスデータ,操作データ及び管理データを含む多様性に富んだ製

造データを必要としている。この多様性は,ビジネス・システムなどの他のシステムが扱うデータと比較

しても,製造用データが複雑で多様なスキーマをもっていることを意味している。したがって,製造用デ

ータベースの使用と管理においては,製造に適したアプローチが必要である。MAPLE の概念は,こうし

た製造に適したアプローチを支援することを意図している。

MAPLE

は,製造自動化環境におけるプログラムの開発者,企画者及び操作者が,プログラム作成及び

プログラム実行環境の準備を支援する。

MAPLE

は,次のような場面で支援環境を提供する。

a)

装置,セル,製造現場及び工場を制御するためのプログラム作成。

b)

生産計画及び工程計画の立案。


3

B 3652 : 2002 (ISO 13281-2 : 2000)

c)

生産準備。

d)

製造データセットの準備。

これらの場面で次のものが得られる。

a)

製造データセット。

例  幾何形状,ツール,技術,操作シーケンス,段取り,測定,検査,運用

b)

セル,製造現場及び工場の,監視プログラム及び制御プログラム。

MAPLE

サービス及びインタフェースに関するこの規格の構築は,

JIS B 3651

で規定する機能的体系に沿

っている。機能的体系は,製造用データ辞書及び製造用ソフトウェア辞書を提供する。これらの辞書は形

式にかかわらず,データ源及び入出力要求の製造タスクからの分離を促進する。したがって,MAPLE は,

多種多様なデータ源とソフトウェアツールを境い目なしに統合するための機構を提供する。

JIS B 3651

及び JIS B 3652 は,システムインテグレータ,ソフトウェアツールの開発者,及び MAPLE

環境でのソフトウェアの開発者の指針となることを目指している。この規格は,インタフェース記述言語

については ISO/IEC 14750 : 1999 に,また,開放型分散処理 (ODP) の観点からの表現については JIS X 

5740-3 : 1998

に準拠している。

STEP(

2

)

データ及び NC 加工環境で使用するデータファイルなどとの関連については,MAPLE の製造用

データ辞書及び製造用ソフトウェア辞書にかかわる今後の標準化にゆだねる。

JIS B 3651

は,MAPLE 内の幾つかの機能要素並びにそれらの内部及び外部インタフェースを通じて,

MAPLE

が提供するサービスに対する理解を助けるために,MAPLE の機能的体系の概要を規定している。

MAPLE

は,どのようなレベルの製造企業であっても適用可能なビルディングブロック構造である。個々

に構築した MAPLE を,必要に応じて企業内に配置して統合することができる。

(

2

) STEP

とは,Standard for Exchange of Product Model Data の略称であり,ISO 10303で規定される

規格群の通称として用いられている。これらの規格群は,JIS B 3700で規定されている。

4.

定義  この規格で用いる主な用語の定義は,次による。MAPLE にかかわる要素は,大文字で始まる

英語表記で示す。

4.1

処理  (action)    外部の製造用ソフトウェア又は他の MAPLE に対する作業要求の要素記述。

4.2

データ分類 (data classification)   特定のアプリケーションプログラムに対してコンピュータが可読

なデータ表記の識別子。

例  部品構成表,CL ファイルフォーマット,STEP フォーマット

4.3

データ分類カタログ (data classification catalogue)   利用者・製造用ソフトウェア又はベンダが指定

する MAPLE で使うデータ分類の集合。

4.4

データ源 (data source)   MAPLE に登録した特定のデータ形式のための,データスキーマ,データ

位置,データへのアクセス方法の記述。

4.5

データベースの型  (data storage type)    使用するデータベースの型。

例  ディレクトリファイル,ORACLE データベース,Access データベース,ONTOS,ODBC データ

4.6

データベースの型のカタログ  (data storage type catalogue)    利用者・製造用ソフトウェア又はベンダ

が指定し,MAPLE で使用する製造用データベースの型の集合。

4.7

データ変換器 (Data Translator)   データの表現方法を変換するための製造用ソフトウェアツール。


4

B 3652 : 2002 (ISO 13281-2 : 2000)

4.8

辞書マネージャ (Dictionary Manager)    製造用データ辞書と製造用ソフトウェアツール辞書とを操

作する機能を備えた製造用ソフトウェアツール。

4.9

実行マネージャ (Execution Manager)   MAPLE の内部プロセス及び MAPLE の外部で実行する製造

用アプリケーションプログラムや製造用ソフトウェアツールの実行の順序を制御するソフトウェアツール。

4.10

論理対物理の関連付け (logical-to-physical mapping)   データ源と製造用データ辞書に収納したデー

タとの関係。

4.11

製造用データベース (Manufacturing Database)   製品,生産工程,生産設備及び生産管理に用いるデ

ータ保管場所。分散している場合もある。

4.12

製造用データ辞書 (Manufacturing Data Dictionary)   製造用データベースに収められるデータのスキ

ーマ(メタデータ)の集合。

4.13

製造用データマネージャ (Manufacturing Data Manager)   製造用データベースのアクセスに用いる

製造用ソフトウェアツール。

4.14

製造用ソフトウェア辞書 (Manufacturing Software Dictionary)   製造用ソフトウェア及び製造用アプ

リケーションプログラムの機能に関する記述の集合。

4.15

製造用ソフトウェア (Manufacturing Software Programs)   製造用アプリケーションプログラムを支

援する機能(シミュレータ,エディタなど)を提供するために,製造用ソフトウェアツール辞書に登録し

たソフトウェア。

4.16  MAPLE

  複数の製造用装置における制御を支援する,ベンダに依存しない中立な製造自動化プログ

ラミング環境。

4.17  MAPLE

エンジン (MAPLE Engine)   MAPLE の初期化及び MAPLE に対する要求を処理する,

MAPLE

の中核ソフトウェアツール。

4.18

ソフトウェア機能カタログ  (software capability catalogue)    利用者・製造用ソフトウェア又はベンダ

が指定し,MAPLE で使用するソフトウェアの機能の集合。

4.19

ソフトウェア機能  (software program capability)    MAPLE で使用するプログラムの機能の分類。

4.20

ソフトウェアツールリンカ (Software Tool Linker)   MAPLE エンジンの要求に従って,製造用ソフ

トウェアツールや製造用アプリケーションプログラムを選択し,その実行順序を制御する製造用ソフトウ

ェアツール。

4.21

タスク (task)   MAPLE がもつ基本的な作業単位の記述。

4.22

タスクリスト (task list)   順序付けしたタスクの集合(

3

)

(

3

)

インスタンスによっては,タスクリストで指定したタスクが内部又は外部の処理を参照する。

その処理をタスクと呼ぶ。

4.23

タスク実行計画マネージャ (Task Planner)   MAPLE エンジンの要求を分析して,実行マネージャが

実行する製造用ソフトウェアを選択し,タスクの実行計画を立案する機能。

5.

企業的観点から見た MAPLE と製造用ソフトウェアの関係  ISO/IEC 14750 : 1999 のインタフェース

定義言語を使用して,関係する処理をもつオブジェクトに基づいて,MAPLE と製造用ソフトウェアのイ

ンタフェースを分類する。企業的観点から ODP (JIS X 5740-3)  を見て,インタフェースに関係するオブジ

ェクトについて,次に説明する。

a)

インタフェースに関係する三つの重要なオブジェクトは,MAPLE,製造用ソフトウェア及び MAPLE

ファインダである。


5

B 3652 : 2002 (ISO 13281-2 : 2000)

b)

これらのオブジェクトの役割は,次のとおりである。

1) MAPLE

オブジェクトは,MAPLE のサービスを提供する。

2)

製造用ソフトウェアオブジェクトは,MAPLE のサービスを利用する。MAPLE オブジェクト自身が

利用してもよい。

3) MAPLE

ファインダオブジェクトは,ある MAPLE オブジェクトのサービス要求に対応できる

MAPLE

オブジェクトを見付け出す。

c) MAPLE

は,MAPLE エンジン,辞書マネージャ,製造用データマネージャ,ソフトウェアツールリン

カ及び実行マネージャで構成する  (JIS B 3651)。

d) MAPLE

サービスは,8.で定義する。

e)

製造用ソフトウェアは,9.で定義するインタフェースを介してだけ MAPLE にアクセスできる。

6.

省略記号

a) DST_

:データベースの型 (data_storage_type)

b) DS_

:データ源 (data_source)

c) SP_

:プログラム (software program)

7.

辞書定義スキーマ

7.1

概要  7.は,ODP (JIS X 5740-3)  の情報的観点に対応する。

辞書は,オブジェクトであるなしにかかわらず,データ集合及びプログラムの処理ができる。

7.2

カタログ  次の三つのカタログがある。

7.2.1

データ分類カタログ  このカタログには,NC プログラム,ツールデータ,設定データ,製品デー

タなどの項目がある。

7.2.2

ソフトウェア機能カタログ  このカタログには,後処理,監視,シミュレーションなどの項目があ

る。

7.2.3

データベースの型のカタログ  このカタログには,ファイル,関係データベース,オブジェクトデ

ータベース,画像データベースなどの項目がある。

7.3

製造用データ辞書  この辞書は,データベースの型のカタログと関係し,データ源の記述及び論理

対物理の関連付けの二つの主要部分を含む。データ源の記述は,関係する製造データの処理方法について

の情報を含む。

この辞書には,ある工作機械に固有の NC プログラム,STEP 製品データなどの項目がある。

7.4

製造用ソフトウェア辞書  この辞書は,データベースの型のカタログ及びソフトウェア機能カタロ

グと関係し,ソフトウェアの記述を含む。その記述内容は,ソフトウェアの機能及び起動条件である。

製造用ソフトウェア辞書には,NC プログラムエディタ,ベンダ固有の制御用ポストプロセッサ,CL フ

ァイル用シミュレータなどの項目がある。

8.

MAPLE

サービス

8.1

概要  8.は,ODP (JIS X 5740-3)  の工学的観点に対応する。

8.2

提供すべきサービス  MAPLE は,次のサービスを提供しなければならない。

a)

タスクの実行計画(8.5 参照)

b)

データ源の登録(8.6.2 参照)


6

B 3652 : 2002 (ISO 13281-2 : 2000)

c)

データ源のリストの作成(8.6.3 参照)

d)

データ源の登録の削除(8.6.4 参照)

e)

データ源の修正(8.6.5 参照)

f)

プログラム機能の登録(8.6.6 参照)

g)

プログラム機能のリストの作成(8.6.7 参照)

h)

プログラム機能の登録の削除(8.6.8 参照)

i)

プログラム機能の修正(8.6.9 参照)

j)

カタログ項目の登録(8.6.11 参照)

k)

カタログ項目のリストの作成(8.6.12 参照)

l)

カタログ項目の登録の削除(8.6.13 参照)

m)

カタログ項目の修正(8.6.14 参照)

n)

データの挿入(8.7.2 参照)

o)

データのリストの作成(8.7.3 参照)

p)

データの削除(8.7.4 参照)

q)

データの更新(8.7.5 参照)

r)

データの検索(8.7.6 参照)

s)

データの排他的更新権の取得(8.7.7 参照)

t)

データの排他的更新権の返却(8.7.8 参照)

u)

問合せの転送(8.7.9 参照)

v)

データの変換(8.8 参照)

w)

データの直接転送(8.9 参照)

x)

プログラムの呼出し(8.10 参照)

y)

プログラムの開始(8.11.1 参照)

z)

タスクリストによるタスクの実行(8.11.2 参照)

1)

タスクリストによるタスクの開始(8.11.2.1 参照)

2)

タスクリストによるタスクの終了(8.11.2.2 参照)

3)

タスクリストによるタスクの一時停止(8.11.2.3 参照)

4)

タスクリストの一時停止(8.11.2.4 参照)

5)

タスクリストの再開(8.11.2.5 参照)

6)

ステップ単位実行モード(8.11.2.6 参照)

7)

タスク単位実行モード(8.11.2.7 参照)

8)

範囲指定のタスク単位実行モード(8.11.2.8 参照)

9)

単位実行モードの解除(8.11.2.9 参照)

10)  N

タスク先のタスクの実行(8.11.2.10 参照)

11)

指定タスクの実行(8.11.2.11 参照)

aa)

タスクリストの表示(8.11.3.1 参照)

ab)

タスクリストの削除(8.11.3.2 参照)

ac)

タスクリストの生成(8.11.3.3 参照)

ad)

トレースの開始(8.11.4.1 参照)

ae)

トレースの停止(8.11.4.2 参照)


7

B 3652 : 2002 (ISO 13281-2 : 2000)

af)

タスクリストの実行状態の確認(8.11.4.3 参照)

ag) MAPLE

オブジェクトの初期化(8.12.2 参照)

ah) MAPLE

オブジェクトの終了(8.12.3 参照)

ai) MAPLE

の統括管理(8.12.4 参照)

aj) MAPLE

オブジェクト間の通信(8.12.5 参照)

ak) MAPLE

オブジェクトへのアクセス(8.13 参照)

これらサービスは,ベンダが拡張可能である。

8.3

状態通知  すべてのサービスは,状態を返さなければならない。

8.4

入力及び出力の型定義  次の一般的な型定義を適用しなければならない。

typedef int

    status

typedef wstring

    DataSource

typedef wstring

    SPCapability

typedef wstring

    CatalogEntry

typedef sequence <wstring>

    AttributeList

typedef sequence <any>

    ValueList

typedef sequence <wstring>

    ArgumentList

typedef sequence <wstring>

    TaskList

typedef sequence <CatalogEntry>

    CatalogEntryList

enum IdentifierType {logical, physical};

struct DataIdentifier {

IdentifierType

  logical_or_physical;

wstring

  data_identifier;

};

enum CheckOutStatus {true, false};

8.5

タスクの実行計画  このサービスは,実行マネージャが実行する前に,MAPLE エンジンが渡した要

求の前処理を提供しなければならない。タスク実行計画マネージャは,与えられた要求を実行マネージャ

が直接実行できるタスクリストに展開しなければならない。

タスク実行計画マネージャは,次の機能を提供しなければならない。

a)

パラメータ及び入出力を置き換えることでタスクリストを作成する。

b)

ソフトウェア辞書から要求機能を探す。

c)

複数の検索結果を選択によって一つにする。

d)

辞書情報を検索する。

e)

要求機能を確実に解決するようにする。

f)

実際の値を参照する。

g)

入力と出力の間のフォーマット互換性を検査し,必要な箇所に変換タスクを挿入する。

h)

要求機能に見合わない場合は,MAPLE エンジンにエラーメッセージを発行する。

このサービスの入力は,次による。

a) SPCapability

型の SP_capability

b) ArgumentList

型の SP_capability_input argument_list

このサービスの出力は,TaskList とする。


8

B 3652 : 2002 (ISO 13281-2 : 2000)

8.6

データ辞書及びソフトウェア辞書の維持管理

8.6.1

階層  データ源は,一つのデータ集合を複数のデータレコードで構成する階層をもつ。辞書及びそ

れに関連するカタログの維持管理を実装するために提供すべきサービスは,8.6.28.6.14 で規定する。

8.6.2

データ源の登録  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用データ辞書に

データ源を登録できるようにする。

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) wstring

型の DST_name

c) wstring

型の DST_parameter_set

d) wstring

型の data_source_command_set

8.6.3

データ源のリストの作成  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用デー

タ辞書に問い合わせ,MAPLE に現在登録してあるデータ源を検索できるようにする。

このサービスの入力は,wstring 型の data_source_filter とする。これは,属性の値に基づく既存の

data_sources

の選択を定義する。

このサービスの出力は,関連する属性をともなった型 DataSourceList の set_of_data_sources とする。

8.6.4

データ源の登録の削除  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用データ

辞書からデータ源の登録を削除できるようにする。

このサービスの入力は,wstring 型の data_source_name とする。

8.6.5

データ源の修正  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用データ辞書に

あるデータ源を修正できるようにする。

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) AttributeList

型の data_source_attributes 修正する属性を定義する。

c) ValueList

型の data_source_attribute_values 修正する属性に対応する値を提供する。

8.6.6

プログラム機能の登録  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用ソフト

ウェア辞書にプログラムの機能を登録できるようにする。

このサービスの入力は,次による。

a) wstring

型の SP_capability_name

b) wstring

型の SP_name

c) wstring

型の SP_location

d) wstring

型の SP_argument_template

e) SPCapability

型の SP_capability

f) ArgumentList

型の SP_argument_set

8.6.7

プログラム機能のリストの作成  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造

用ソフトウェア辞書に問い合わせ,MAPLE に現在登録してあるプログラムの機能を検索できるようにす

る。

このサービスの入力は,SPCapability 型の SP_capability_filter とする。これは,その属性の値に基づく既

存の SP_capability の選択を定義する。

このサービスの出力は,SPCapability 型の set_of_SP_capabilities とする。これは,AttributeList 型の関連

する属性 SPcapability_attributes をもつ。


9

B 3652 : 2002 (ISO 13281-2 : 2000)

8.6.8

プログラム機能の登録の削除  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用

ソフトウェア辞書から SP_capability の登録を削除できるようにする。

このサービスの入力は,wstring 型の SP_capability_name とする。

8.6.9

プログラム機能の修正  このサービスは,MAPLE 利用者及び製造用ソフトウェアが製造用ソフト

ウェア辞書におけるプログラム機能を修正できるようにする。

このサービスの入力は,次による。

a) wstring

型の SP_capability_name

b) AttributeList

型の SP_capability_attributes 修正する属性を定義する。

c) ValueList

型の SP_capability_attribute_values 修正する属性に対応する値を提供する。

8.6.10

論理対物理の関連付けの維持管理  このサービスは,8.6.118.6.14 で規定するサービスで提供す

る。

8.6.11

カタログ項目の登録  このサービスは,MAPLE 利用者及び製造用ソフトウェアが指定したカタロ

グへ項目を登録できるようにする。

このサービスの入力は,次による。

a) wstring

型の catalogue_name

b) wstring

型の catalogue_entry_identifier カタログ項目に対して利用者及び製造用ソフトウェアの一意な識

別子を定義する。

c) AttributeList

型の catalogue_entry_attributes カタログが要求するパラメータを指定する。

d) ValueList

型の catalog_entry_attribute_values

8.6.12

カタログ項目のリストの作成  このサービスは,MAPLE 利用者及び製造用ソフトウェアが指定し

たカタログの問い合わせをできるようにする。

このサービスの入力は,次による。

a) wstring

型の catalogue_name

b) AttributeList

型の catalogue_entry_filter 属性の値に基づく既存のカタログ項目の選択を定義する。

このサービスの出力は,関連する catalogue_entry_attributes を伴う型 CatalogueEntryList のカタログ項目の

集合とする。

8.6.13

カタログ項目の登録の削除  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,指定し

たカタログからカタログ項目の登録を削除できるようにする。

このサービスの入力は,次による。

a) wstring

型の catalogue_name

b) wstring

型の catalogue_entry_identifier

8.6.14

カタログ項目の修正  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,指定したカタ

ログからカタログ項目を修正できるようにする。

このサービスの入力は,次による。

a) wstring

型の catalogue_name

b) wstring

型の catalogue_entry_identifier

c) AttributeList

型の catalogue_entry_attributes 修正する属性を定義する。

d) ValueList

型の catalogue_entry_attribute_values

8.7

製造用データアクセス


10

B 3652 : 2002 (ISO 13281-2 : 2000)

8.7.1

提供すべきサービス  製造用データアクセスを実装するために提供すべきサービスは,8.7.28.7.9

で規定する。これらのサービスは,データ集合及びデータレコードの両方に適用する。これらのサービス

の対象となるデータ集合及びデータレコードの型は,データ辞書への登録を必要とする。

8.7.2

データの挿入  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,製造用データベース

に新しいデータ項目を挿入できるようにする。

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) wstring

型の logical_data_identifier 特定のデータ項目を表示する MAPLE 環境内で一意な利用者及び製

造用ソフトウェアの一意な識別子とする。

c) wstring

型の physical_data_identifier data_source 内で特定のデータ項目を表示する識別子とする。

d) wstring

型の data_item of type wstring data_source に挿入する実際のデータ項目とする。

8.7.3

データのリストの作成  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定の

data_classification

に対して製造用データベースにおけるすべてのデータ項目のリストを取得できるように

する。

このサービスの入力は,wstring 型の data_classification とする。

このサービスの出力は,次による。

a) wstring

型の logical_data_identifier これは,論理的な名前及び data_source 名を含む。

b) wstring

型の physical_data_identifier これは,対応する物理的な識別子名を含む。

8.7.4

データの削除  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定のデータ項目を

削除できるようにする。ただし,そのデータ項目は他の利用者及び製造用ソフトウェアが,排他的更新権

を取得していないものとする。

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) DataIdentifier

型の logical_data_identifier 又は DataIdentifier 型の physical_data_identifier

8.7.5

データの更新  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,既存のデータ項目を

更新できるようにする。ただし,そのデータ項目は既に同じ利用者及び製造用ソフトウェアが,排他的更

新権を取得しているものとする。

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) DataIdentifier

型の logical_data_identifier 又は DataIdentifier 型の physical_data_identifier

c) AttributeList

型の data_item_attributes これは,更新する属性を定義する。

d) ValueList

型の data_item_attribute_values これは,更新する属性の対応する値を提供する。

8.7.6

データの検索  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定のデータ項目を

検索できるようにする。

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) DataIdentifier

型の logical_data_identifier 又は DataIdentifier 型の physical_data_identifier

このサービスの出力は,次による。

a) wstring

型の data_item

b) CheckOutStatus

型の data_check_out_status


11

B 3652 : 2002 (ISO 13281-2 : 2000)

備考  データが,他の利用者及び製造用ソフトウェアが排他的更新権を取得している場合,これは正

しい。

8.7.7

データの排他的更新権の取得  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定

のデータ集合又はデータレコードを排他的に更新する権利を,そのデータの排他的更新権を返却するまで

確保できるようにする(8.7.8 参照)

このサービスの入力は,次による。

a) wstring

型の data_source_name

b) DataIdentifier

型の logical_data_identfier 又は DataIdentifier 型の physical_data_identifier

このサービスの出力は,その排他的更新権の取得に対する,wstring 型の check_out_identifier,すなわち,

wstring

型のシステムが生成する識別子とする。

8.7.8

データの排他的更新権の返却  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定

のデータ集合又はデータレコードを排他的に更新する権利を解放できるようにする。

このサービスの入力は,wstring 型の check_out_identifier とする。

8.7.9

問合せの転送  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定のデータ源に関

係するすべてのデータ検索問合せがデータマネージャに転送できるようにする。

このサービスの入力は,次による。

a) wstring

型の data_source_name これは,問い合わせるデータベースの参照に必要である。

b) wstring

型の query_string

このサービスの出力は,wstring 型の query_output とする。

8.8

データの変換  このサービスは,MAPLE 利用者及び製造用ソフトウェアが,特定のデータ変換プロ

セスを実行できるようにする。

このサービスの入力は,次による。

a) wstring

型の translation_name 変換のための識別子とする。

b) wstring

型の input_schema 入力ファイルのスキーマとする。

c) wstring

型の output_schema 出力ファイルのスキーマとする。

d) wstring

型の output_location 結果として生じる変換プロセスの位置とする。

8.9

データの直接転送  このサービスは,一つの製造用ソフトウェアから他の製造用ソフトウェアへ,

データを製造用データベースに収納する必要なしに転送する。

このサービスの入力は,次による。

a) wstring

型の target_software_program_name これは,対象となる製造用ソフトウェアの wstring 型の

SP_name

とする。

b) wstring

型の data_item

8.10

プログラムの呼出し  このサービスは,製造用ソフトウェア辞書に登録した製造用ソフトウェアプ

ログラムの機能を使用できるようにする。

このサービスの入力は,次による。

a) wstring

型の SP_capability_name

b) ArgumentList

型の SP_capability_input_argument_list

このサービスの出力は,ArgumentList 型の SP_capability_output_argument_list とする。

8.11

プログラム実行マネージャ  このサービスは,開発及び維持管理の処理を提供する。

プログラム実行マネージャは,次の機能も提供しなければならない。


12

B 3652 : 2002 (ISO 13281-2 : 2000)

a)

命令の発信元によるステップ実行,終了又は一時停止が可能なタスクリストの実行。

b)

発信元へのタスクリスト及び実行履歴の準備。

c)

発信元によるタスクリストの修正。

8.11.1

プログラムの開始  このサービスは,実行マネージャが,MAPLE エンジンに製造用ソフトウェア

辞書の中に登録した製造用ソフトウェアの開始を要求できるようにする。

このサービスの入力は,wstring 型の SP_start_up_script とする。

8.11.2

タスクリストによるタスクの実行  このサービスは,実行マネージャが,MAPLE エンジンにタス

クリストの実行を要求できるようにする。

すべてのオプションに対して,入力は次による。

a) wstring

型の task_list_id

b) wstring

型の task_id

8.11.2.1

タスクリストによるタスクの開始  このサービスは,タスクリストの実行ができるようにする。

8.11.2.2

タスクリストによるタスクの終了  このサービスは,タスクリストの終了ができるようにする。

8.11.2.3

タスクリストによるタスクの一時停止  このサービスは,タスクリストの一時停止ができるよう

にする。

8.11.2.4

タスクリストの一時停止  このサービスは,特定のタスク又は外部動作の後に,タスクリストの

一時停止ができるようにする。

8.11.2.5

タスクリストの再開  このサービスは,タスクリストの実行の再開ができるようにする。

8.11.2.6

ステップ単位実行モード  このサービスは,通常実行モードからステップ単位実行モードへ移行

できるようにする。

8.11.2.7

タスク単位実行モード  このサービスは,次のタスク又は動作の,実行及び停止ができるように

する。

8.11.2.8

範囲指定のタスク単位実行モード  このサービスは,現在のタスクから特定のタスクまでのタス

クリストの実行ができるようにする。

8.11.2.9

単位実行モードの解除  このサービスは,タスクリストの通常実行モードの実行ができるように

する。

8.11.2.10  N

タスク先のタスクの実行  このサービスは,実行プロセスが,タスクリスト内の n タスク先の

タスクを実行できるようにする。

付加的な入力は,wstring 型の n とする。

8.11.2.11

指定タスクの実行  このサービスは,実行プロセスが,タスクリスト内の特定のタスクを再開で

きるようにする。

8.11.3

タスクリストのサポート

8.11.3.1

タスクリストの表示  このサービスは,特定のタスクリストを表示できるようにする。

このサービスの入力は,次による。

このサービスの入力は,次による。

a) wstring

型の task_list_id

b) wstring

型の output_destination

このサービスの出力は,ValueList 型の task_list_information とする。

8.11.3.2

タスクリストの削除  このサービスは,特定のタスクリストを削除できるようにする。

このサービスの入力は,wstring 型の task_list_id とする。


13

B 3652 : 2002 (ISO 13281-2 : 2000)

8.11.3.3

タスクリストの生成  このサービスは,タスクリストを生成できるようにする。

このサービスの入力は,wstring 型の task_list_name とする。

8.11.4

状態管理

8.11.4.1

トレースの開始  このサービスは,特定のタスクリストの実行トレースを生成する。

このサービスの入力は,wstring 型の task_list_id とする。

8.11.4.2

トレースの停止  このサービスは,特定のタスクリストの実行中にトレースを停止できるように

する。

このサービスの入力は,wstring 型の task_list_id とする。

8.11.4.3

タスクリストの実行状態の確認  このサービスは,利用者及び製造用ソフトウェアが,実行中の

タスクを確認できるようにする。

このサービスの入力は,wstring 型の task_list_id とする。

このサービスの出力は,wstring 型の task_id とする。

8.12  MAPLE

システムサービス

8.12.1

提供すべきサービス  提供すべきサービスは,8.12.28.12.5 で規定する。

8.12.2  MAPLE

オブジェクトの初期化  このサービスは,MAPLE を初期化し開始する。

このサービスの入力は,wstring 型の MAPLE_name とする。

8.12.3  MAPLE

オブジェクトの終了  このサービスは,MAPLE を正常に終了する。

このサービスの入力は,wstring 型の MAPLE_name とする。

8.12.4  MAPLE

の統括管理  このサービスは,システムマネージャに,MAPLE の臨界的な操作のための

環境を提供する。

このサービスの入力は,wstring 型の MAPLE_name とする。

8.12.5  MAPLE

オブジェクト間の通信  このサービスは,一つの MAPLE と他の MAPLE の間の通信を提

供する。

このサービスの入力は,wstring 型の other_MAPLE_name とする。

8.13  MAPLE

オブジェクトへのアクセス  このサービスは,MAPLE へのアクセス制御を提供する。

このサービスの入力は,wstring 型の MAPLE_name とする。

このサービスの出力は,status 型の return_value とする。

9.

MAPLE

とのインタフェース

9.1

概要  9.には,ODP (JIS X 5740-3)  の計算的観点及び情報的観点を含む。それぞれの観点との対応は,

関連する箇条,又は細分した箇条で述べる。

インタフェースにおけるメッセージは,JIS X 0221 に従って 16 ビットの文字表現で転送しなければなら

ない。この記述は,CORBA2.2 に従う“wstring”の規定を適用する。

備考  この規格は,MAPLE とソフトウェアの間のアプリケーション層でのインタフェースを規定す

るので,MAPLE 開発者は,下位の通信層に対して,既存の DCOM,CORBA などを使用する

ことになる。

9.2

インタフェースの概要  MAPLE は,少なくとも,次の対象に対してインタフェースを提供しなけれ

ばならない。

a)

製造用ソフトウェア又は他の MAPLE(9.3.2 及び

附属書 を参照)。これは,次のインタフェースを

もつ。


14

B 3652 : 2002 (ISO 13281-2 : 2000)

1) interface

MAPLE,

2) interface

ManufacturingSoftwareProgram,

3) interface

MAPLEFinder;

b)

製造用データベース(9.4 参照)

c)

データ変換器(9.5 参照)

9.3

製造用ソフトウェア又は他の MAPLE とのインタフェース

9.3.1

概要  このインタフェースは,MAPLE,製造用ソフトウェア及び MAPLE 検索器とのインタフェ

ースで構成する。

これらは,次の 11 種類の動作を提供する。

a)

製造用ソフトウェアによる新しいセッションの要求(9.3.4.1 参照)

b) MAPLE

による製造用ソフトウェアとの新しいセッションの開始(9.3.4.2 参照)

c) MAPLE

サービスの要求(9.3.4.3 参照)

d) MAPLE

による製造用ソフトウェア機能の起動(9.3.4.4 参照)

e) MAPLE

からのデータ取得(9.3.4.5 参照)

f) MAPLE

へのデータ転送(9.3.4.6 参照)

g)

他の MAPLE からのデータ取得(9.3.4.7 参照)

h)

製造用ソフトウェアへのデータ転送(9.3.4.8 参照)

i)

他の MAPLE への一斉通信(9.3.4.9 参照)

j)

製造用ソフトウェアからのセッションの終了(9.3.4.10 参照)

k) MAPLE

からのセッションの終了(9.3.4.11 参照)

インタフェースは,9.3.2 及び

附属書 で定義する。共通の動作パラメータの意味は,9.3.3 で説明する。

インタフェースにおける動作の意味及び構文は,9.3.4 で説明する。

MAPLE

と製造用ソフトウェアの間のインタフェースは,MAPLE と他の MAPLE の間のインタフェース

にも適用できる。

状態情報で準備する以外の MAPLE インタフェースに対する例外処理の規定は,MAPLE 開発者に一任

する。

9.3.2

インタフェースの定義  インタフェースは,ISO/IEC 14750 : 1999 に従って附属書 で定義する。

9.3.3

共通の動作パラメータ  インタフェースの定義で使用する動作パラメータの意味は,次による。

session_identifier

:MAPLE との一意なセッションを認識するための MAPLE 定義のデータ型。

request_identifier

:MAPLE との一意な要求を認識するための MAPLE 定義のデータ型。

originator_identifier

:命令の発信元を一意に認識するための MAPLE 定義のデータ型。

application_program_identifier

:一意なアプリケーションプログラムを認識するための MAPLE 定義のデー

タ型。

data_send_request_identifier

:データ送信の一意な要求を認識するための MAPLE 定義のデータ型。

requested_data_identifier

:要求のあった一意なデータ項目を認識するための MAPLE 定義のデータ型。

data_retrieve_identifier

:検索する一意なデータ項目を認識するための MAPLE 定義のデータ型。

MAPLE_identifier

:MAPLE を一意に認識するための MAPLE 定義のデータ型。

requested_service

:MAPLE サービスを起動する MAPLE 定義の構造。

service_name

8.で示した MAPLE サービスの一つを指定する MAPLE 定義のキーワード文字列。

service_req_parameter_list

:要求のあった MAPLE サービスへの入力用パラメータリスト。


15

B 3652 : 2002 (ISO 13281-2 : 2000)

service_results

:MAPLE サービスからの出力パラメータを提供する MAPLE 定義の構造。

service_rsp_parameter_list

:要求のあった MAPLE サービスからの出力用パラメータリスト。

requested_SP_capability

:製造用ソフトウェアの機能を起動する MAPLE 定義の構造。

SP_capability_name

:登録してある製造用ソフトウェアが提供する機能を指定するキーワード文字列。

SP_capability_parameter_list

:ソフトウェア機能への入力用パラメータリスト。

SP_capability_results

:ソフトウェア機能からの出力用パラメータリスト。

new_session_status

:新しいセッション要求命令の状態を記述する MAPLE 定義のデータ型。

request_status

:インタフェース要求の状態を記述する MAPLE 定義のデータ型。

termination_status

:命令終了を記述する MAPLE 定義のデータ型。

data_receive_status

:データ受信中動作の状態を記述する MAPLE 定義のデータ型。

receive_status

:データ受信動作の状態を記述する MAPLE 定義のデータ型。

data_to_be_sent

:MAPLE 又は製造用ソフトウェアが提供するアプリケーション固有のデータ型。

data_requested

:MAPLE 又は製造用ソフトウェアが要求したアプリケーション固有のデータ型。

application_program_data_type

:製造用ソフトウェアが要求する MAPLE からのデータ型。

9.3.4

インタフェースにおける動作の意味及び構文  9.3.4 は,ODP (JIS X 5470-3)  の計算的観点に対応

する。

9.3.4.1

製造用ソフトウェアによる新しいセッションの要求  この動作は,図 に示すように,製造用ソ

フトウェアが MAPLE との通信セッションを確立できるようにする。

図 1  製造用ソフトウェアによる新しいセッションの要求

request_new_session

は,MAPLE との通信セッションを確立するために,製造用ソフトウェアが起動する

操作である。

void request_new_session (

in Identifier

  originator_identifier,

in Identifier request_identifier

) ;

acknowledge_new_session_request

は,新しいセッションの生成を確認し識別するために,要求元の製造用

ソフトウェアへ MAPLE が通知する操作である。

void acknowledge_new_session_request (

in Identifier

  originator_identifier,

in Identifier request_identifier

in Identifier session_identifier

in Status new_session_status

) ;

9.3.4.2

MAPLE

による製造用ソフトウェアとの新しいセッションの開始  この動作は,図 に示すよう

に,MAPLE が製造用ソフトウェア辞書の中の製造用ソフトウェアとの通信セッションを開始できるよう

にする。


16

B 3652 : 2002 (ISO 13281-2 : 2000)

図 2  MAPLE による製造用ソフトウェアとの新しいセッションの開始

initiate_new_session

は,製造用ソフトウェアとの通信セッションを開始するために,MAPLE が起動する

操作である。

void initiate_new_session (

in Identifier application_program_identifier,

in Identifier session_identifier

) ;

acknowledge_new_session_ initiation

は,新しいセッションの開始を確認するために,製造用ソフトウェア

が起動する操作である。

void acknowledge_new_session_initiation (

in Identifier session_identifier,

in Identifier new_session_status

) ;

9.3.4.3

MAPLE

サービスの要求  この動作は,図 に示すように,製造用ソフトウェアが MAPLE が提

供するサービスを起動できるようにする。

図 3  MAPLE サービスの要求

request_service

は,

MAPLE

外部のサービスを受けるために,

製造用ソフトウェアが起動する操作である。

void request_service (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedService requested_service

) ;

request_service_action_response

は,サービス要求の受信を確認するために,要求元の製造用ソフトウェア

へ MAPLE が通知する操作である。

void request_service_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestStatus request_status

) ;

service_termination

は,サービス要求の終了を確認するために,要求元の製造用ソフトウェアへ MAPLE

が通知する操作である。

void service_termination (


17

B 3652 : 2002 (ISO 13281-2 : 2000)

in Identifier session_identifier,

in Identifier request_identifier,

in Status termination_status,

in ServiceResults service_results

) ;

要求するサービスは,基本サービス(8.参照)又は製造用ソフトウェア辞書に登録したサービスである。

9.3.4.4

MAPLE

による製造用ソフトウェア機能の起動  この動作は,図 に示すように,MAPLE が製

造用ソフトウェアの機能を起動できるようにする。

図 4  MAPLE による製造用ソフトウェア機能の起動

request_SP_capability

は,製造用ソフトウェアの機能を利用するために,MAPLE が要求する操作である。

void request_SP_capability (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedCapability requested_SP_capability

) ;

request_SP_capability_action_response

は,要求の受信を確認するために,製造用ソフトウェアが通知する

操作である。

void request_SP_capability_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestStatus request_status

) ;

invocation_termination

は,要求の終了を確認するために,MAPLE へ製造用ソフトウェアが通知する操作

である。

void invocation_termination (

in Identifier session_identifier,

in Identifier request identifier,

in Status termination_status,

in CapabilityParameterList SP_capability_results

) ;

9.3.4.5

MAPLE

からのデータ取得  この動作は,図 に示すように,製造用ソフトウェアが MAPLE か

らデータを取得できるようにする。


18

B 3652 : 2002 (ISO 13281-2 : 2000)

図 5  MAPLE からのデータ取得

request_data

は,MAPLE のデータを取得するために,製造用ソフトウェアが起動する操作である。

void request_data (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedService requested_service

) ;

request_data_action_response

は,要求のあったデータを提供するために,MAPLE が起動する操作である。

void request_data_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in ParameterList data_requested,

in RequestStatus request_status

) ;

9.3.4.6

MAPLE

へのデータ転送  この動作は,図 に示すように,MAPLE へ製造用ソフトウェアがデ

ータを転送できるようにする。

図 6  MAPLE へのデータ転送

prepare_data_send

は,MAPLE へデータを転送する準備のために,製造用ソフトウェアが起動する操作で

ある。

void prepare_data_send (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedService requested_service

) ;

prepare_data_send_action_response

は,データ受信の準備ができたことを通知するために,MAPLE が起動

する操作である。

void prepare_data_send_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in Identifier data_send_request_identifier,

in RequestStatus request_status


19

B 3652 : 2002 (ISO 13281-2 : 2000)

) ;

send_data

は,MAPLE へデータを転送するために,製造用ソフトウェアが起動する操作である。

void send_data_from_MAPLE (

in Identifier data_send_request_identifier,

in ParameterList data_to_be_sent

) ;

send_data_action_response

は,データの受信を通知するために,MAPLE が起動する操作である。

void send_data_action_response (

in Identifier data_send_request_identifier,

in Status data_receive_status

) ;

9.3.4.7

他の MAPLE からのデータ取得  この動作は,図 に示すように,MAPLE が他の MAPLE から

データを取得できるようにする。

図 7  他の MAPLE からのデータ取得

MAPLE_to_MAPLE_requested_data

は,データの取得を要求するために,MAPLE(要求元)が起動する

操作である。

void MAPLE_to_MAPLE_requested_data (

in Identifier session_identifier,

in Identifier request_identifier,

in Identifier requested_data_identifier

) ;

MAPLE_to_MAPLE_request_data_action_response

は,データ転送の準備ができたことを通知するために,

他の MAPLE(要求先)が起動する操作である。

void MAPLE_to_MAPLE_requested_data_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in Identifier data_retrieve_identifier,

in RequestStatus request_status

) ;

MAPLE_to_MAPLE_retrieve_data

は,データ取得の準備ができたことを通知するために,MAPLE(要求

元)が起動する操作である。

void MAPLE_to_MAPLE_retrieve_data (


20

B 3652 : 2002 (ISO 13281-2 : 2000)

in Identifier data_retrieve_identifier

) ;

MAPLE_to_MAPLE_send_data

は,要求データを転送するために,他の MAPLE(要求先)が起動する操

作である。

void MAPLE_to_MAPLE_send_data (

in Identifier data_retrieve_identifier,

in ParameterList data_requested

) ;

MAPLE_to_MAPLE_send_data_action_response

は,データ受信を通知するために,MAPLE(要求元)が

起動する操作である。

void MAPLE_to_MAPLE_send_data_action_response (

in Identifier data_retrieve_identifier,

in Status data_receive_status

) ;

9.3.4.8

製造用ソフトウェアへのデータ転送  この動作は,図 に示すように,MAPLE が製造用ソフト

ウェアにデータを転送できるようにする。

図 8  製造用ソフトウェアへのデータ転送

prepare_data_send_from_MAPLE

は,製造用ソフトウェアへデータを転送する準備のために,MAPLE が

起動する操作である。

void prepare_data_send_from_MAPLE (

in Identifier session_identifier,

in Identifier data_send_request_identifier,

in wstring application_program_data_type

) ;

prepare_data_send_from_MAPLE_action_response

は,データ転送の準備ができていることを通知するため

に,製造用ソフトウェアが起動する操作である。

void prepare_data_send_from_MAPLE_action_response (

in Identifier session_identifier,

in Identifier data_send_request_identifier,

in RequestStatus request_status

) ;


21

B 3652 : 2002 (ISO 13281-2 : 2000)

send_data_from_MAPLE

は,製造用ソフトウェアにデータを転送するために,MAPLE が起動する操作で

ある。

void send_data_from_MAPLE (

in Identifier data_send_request_identifier,

in ParameterList data_to_be_sent

) ;

send_data_from_MAPLE_action_response

は,MAPLE からのデータ受信を確認するために,製造用ソフト

ウェアが起動する操作である。

void send_data_from_MAPLE_action_response (

in Identifier data_send_request_identifier,

in Status data_receive_status

) ;

9.3.4.9

他の MAPLE への一斉通信  MAPLE が実行できないタスクのある場合,そのタスクを他の

MAPLE

に一斉通信を試みる。一連のソフトウェア群には,固有の機能で与えられたタスクを実行可能な

他の MAPLE を検索するプログラムがあるものとする。これを MAPLE 検索器と呼び,与えた規則に従っ

て選択するか,又はタスクの実行可能性をすべての他の MAPLE に一斉通信で問い合わせる。

この動作は,

図 に示すように,MAPLE が実行できないタスクを実行可能な他の MAPLE を検索でき

るようにする。

図 9  他の MAPLE への一斉通信

broadcast_request

は,一斉通信を行う MAPLE が,実行できないタスクを実行可能な他の MAPLE を検索

するために,MAPLE が起動する操作である。

void broadcast_request (

in Identifier request_identifier,

in Identifier MAPLE_identifier,

in RequestedCapability requested_SP_capability

) ;

broadcast_request_action_response

は,タスクの実行可能性を通知するために,他の MAPLE が起動する操

作である。

void broadcast_request_action_response (

in Identifier request_identifier,

in Identifier MAPLE_identifier,

in RequestStatus request_status

) ;


22

B 3652 : 2002 (ISO 13281-2 : 2000)

9.3.4.10

製造用ソフトウェアからのセッションの終了  この動作は,図 10 に示すように,製造用ソフト

ウェアが MAPLE とのセッションを終了できるようにする。

図 10  製造用ソフトウェアからのセッションの終了

request_session_termination

は,MAPLE とのセッションを終了するために,製造用ソフトウェアが起動す

る操作である。

void request_session_termination (

in Identifier session_identifier

) ;

session_termination_action_response

は,製造用ソフトウェアが要求するセッションの終了を確認するため

に,MAPLE が起動する操作である。

void request_session_termination_action_response (

in Identifier session_identifier,

in Status termination_status

) ;

MAPLE

が返す termination_status は,MAPLE がセッションを開始した場合には負の値となる。

9.3.4.11  MAPLE

からのセッションの終了  この動作は,図 11 に示すように,MAPLE が製造用ソフトウ

ェア又は他の MAPLE とのセッションを終了できるようにする。

図 11  MAPLE からのセッションの終了

request_session_termination

は,

製造用ソフトウェア又は他の MAPLE とのセッションを終了するために,

MAPLE

が起動する操作である。

void request_session_termination (

in Identifier session_identificr

) ;

session_termination_action_response

は,MAPLE が要求したセッションの終了を確認するために,製造用

ソフトウェアが起動する操作である。

void request_session_termination_action_response (

in Identifier session_identifier,

in Status termination_status

) ;

製造用ソフトウェアが返す termination_status は,製造用ソフトウェアがセッションを開始した場合には


23

B 3652 : 2002 (ISO 13281-2 : 2000)

負の値となる。

9.4

製造用データベースへのインタフェース  このインタフェースは,manufacturing_databases_interface

と呼ぶ。このインタフェースは,製造用データベースへのデータアクセスを可能としなければならない。

これは,データアクセス動作(挿入,削除,更新及び検索)

,複数利用者のデータアクセス,及びデータベ

ースのセキュリティ問題を含む。

備考 MAPLE の実装は,特定のデータベースには依存しないので、このインタフェースは,一般の

データベースにアクセスできることが望ましい。この目的を達成するために,多くの利用可能

な規格及びアクセスツールがある。例えば,JIS X 5911 : 1995,JIS X 5912 : 1995 及び ISO/IEC 

9579-3 : 1996

がある。

9.5

データ変換器へのインタフェース  データ変換器は,製造用ソフトウェアと考えることができる。

このインタフェースは,data_translator_interface と呼ぶ。MAPLE とのインタフェースの動作は,9.3.4.2

9.3.4.4

9.3.4.69.3.4.8 及び 9.3.4.11 で示したものと同じでなければならない。


24

B 3652 : 2002 (ISO 13281-2 : 2000)

附属書 A(規定)  インタフェース記述

インタフェースは,インタフェース定義言語のための ISO/IEC 14750 : 1999 を使用して定義する。

module MAPLEs_and_Manufacturing_Software_Programs {

//

識別子

typedef wstring Identifier;

//

状態

enum Status {success, failure};

enum RequestStatus {request_success, request_denied, invalid_request};

enum CheckOutStatus {true, false};

//MAPLE

のパラメータ

//

一般のパラメータリスト

union Constant switch (long){

case 1 :   long long_const;

case 2 : unsigned long ulong_const;

case 3 : double double_const;

} ;

enum ParameterAlternative {identifier, constant, other_params};

union Parameter switch (ParameterAlternative){

case identifier: Identifier identifier;

case constant: Constant constant;

default: any other_params;

} ;

typedef sequence<Parameter>ParameterList;

//MAPLE

サービスのパラメータ

//

入出力パラメータの型定義

typedef long ServiceStatus;

typedef wstring DataSource;

typedef wstring SPCapability;

typedef wstring CatalogueEntry;

typedef sequence<wstring>AttributeList;

typedef sequence<any>ValueList;

typedef sequence<wstring>ArgumentList;

typedef sequence<wstring>TaskList;


25

B 3652 : 2002 (ISO 13281-2 : 2000)

typedef sequence<DataSource>DataSourceList;

typedef sequence<SPCapability>SPCapabilityList;

typedef sequence<CatalogueEntry>CatalogueEntryList;

enum IdentifierType {logical, physical};

struct DataIdentifier {

IdentifierType

  logical_or_physical;

wstring

  data_identifier;

} ;

//

タスクの実行計画

struct InPlanTask {

SPCapability

  SP_capability;

ArgumentList

  sp_capability_input_argument_list;

} ;

struct OutPlanTask {

ServiceStatus

  status;

TaskList

  task_list;

} ;

//

データ源の登録

struct InRegisterDataSource {

wstring

  data_source_name;

wstring

  DST_name;

wstring

  DST_parameter_set;

wstring

  data_source_command_set;

} ;

struct OutRegisterDataSource {

ServiceStatus

  status;

} ;

//

データ源のリストの作成

struct InListDataSource{

wstring data_source_filter;

} ;

struct OutListDataSource {

ServiceStatus

  status;

DataSourceList

  set_of_data_sources;

} ;

//

データ源の登録の削除


26

B 3652 : 2002 (ISO 13281-2 : 2000)

struct InDeregisterDataSource {

wstring

  data_source_name;

} ;

struct OutDeregisterDataSource {

ServiceStatus

  status;

} ;

//

データ源の修正

struct InModifyDataSource {

wstring

  data_source_name;

AttributeList

  data_source_attributes;

ValueList

  data_source_attribute_values;

} ;

struct OutModifyDataSource {

ServiceStatus

  status;

} ;

//

プログラム機能の登録

struct InRegisterSoftwareProgramCapability {

wstring

  SP_capability_name;

wstring

  SP_name;

wstring

  SP_location;

wstring

  SP_argument_template;

SPCapability

    SP_capability;

ArgumentList

    SP_argument_set;

} ;

struct OutRegisterSoftwareProgramCapability {

ServiceStatus

  status;

} ;

//

プログラム機能のリストの作成

struct InListSoftwareProgramCapability {

SPCapability

    SP_capability_filter;

} ;

struct OutListSoftwareProgramCapability{

ServiceStatus

  status;

SPCapabilityListset_of_SP_capabilities;

} ;

//

プログラム機能の登録の削除


27

B 3652 : 2002 (ISO 13281-2 : 2000)

struct InDeregisterSoftwareProgramCapability {

wstring

  SP_capability_name;

} ;

struct OutDeregisterSoftwareProgramCapability {

ServiceStatus

  status;

} ;

//

プログラム機能の修正

struct InModifySoftwareProgramCapability {

wstring

  SP_capability_name;

AttributeList

  SP_capability_attributes;

ValueList

  SP_capability_attribute_values;

} ;

struct OutModifySoftwareProgramCapability {

ServiceStatus

  status;

} ;

//

カタログ項目の登録

struct InRegisterCatalogueEntry {

wstring

  catalogue_name;

wstring

  catalogue_entry_identifier;

AttributeList

  catalogue_entry_attributes;

ValueList

  catalogue_entry_attribute_values;

} ;

struct OutRegisterCatalogueEntry {

ServiceStatus

  status,

} ;

//

カタログ項目のリストの作成

struct InListCatalogue {

wstring

  catalogue_name;

AttributeList

  catalogue_entry_filter;

} ;

struct OutListCatalogue {

ServiceStatus

  status;

CatalogueEntryList

  set_of_catalogue_entries;

} ;

//

カタログ項目の登録の削除

struct InDeregisterCatalogueEntry {


28

B 3652 : 2002 (ISO 13281-2 : 2000)

wstring

  catalogue_name;

wstring

  catalogue_entry_identifier;

} ;

struct OutDeregisterCatalogueEntry {

ServiceStatus

  status;

} ;

//

カタログ項目の修正

struct InModifyCatalogucEntry {

wstring

  catalogue_name;

wstring

  catalogue_entry_identifier;

AttributeList

  catalogue_entry_attributes;

ValueList

  catalogue_entry_attribute_values;

} ;

struct OutModifyCatalogueEntry {

ServiceStatus

  status;

} ;

//

データの挿入

struct InInsertData {

wstring

  data_source_name;

wstring

  logical_data_identifier;

wstring

  physical_data_idenfifier;

wstring

  data_item;

} ;

struct OutInsertData {

ServiceStatus

  status;

} ;

//

データのリストの作成

struct InListData {

wstring

  data_classification;

} ;

struct OutListData {

ServiceStatus

  status;

wstring

  logical_data_identifier;

wstring

  physical_data_idenfifier;

} ;

//

データの削除


29

B 3652 : 2002 (ISO 13281-2 : 2000)

struct InDeleteData {

wstring

  data_source_name;

DataIdentifier

  logical_or_physical_data_identifier;

} ;

struct OutDeleteData {

ServiceStatus

  status;

} ;

//

データの更新

struct InUpdateData {

wstring

  data_source_name;

DataIdentifier

  logical_or_physical_data_identifier;

AttributeList

  data_item_attributes;

ValueList

  data_item_attribute_values;

} ;

struct OutUpdateData {

ServiceStatus

  status;

} ;

//

データの検索

struct InRetrieveData {

wstring

  data_source_name;

DataIdentifier

  logical_or_physical_data_identifier;

} ;

struct OutRetrieveData {

ServiceStatus

  status;

wstring

  data_item;

CheckOutStatus

  data_check_out_status; //true or false?

} ;

//

データの排他的更新権の取得

struct InCheckOutData {

wstring

  data_source_name;

DataIdentifier

  logical_or_physical_data_identifier;

} ;

struct OutCheckOutData {

ServiceStatus

  status;

wstring

  check_out_identifier;

} ;


30

B 3652 : 2002 (ISO 13281-2 : 2000)

//

データの排他的更新権の返却

struct InCheckInData {

wstring

  check_out_identifier;

} ;

struct OutCheckInData {

ServiceStatus

  status;

} ;

//

問合せの転送

struct InPassThroughQuery {

wstring

  data_source_name;

wstring

  query_string;

} ;

struct OutPassThroughQuery {

ServiceStatus

  status;

wstring

  query_output;

} ;

//

データの変換

struct InTraslateData {

wstring

  translation_name;

wstring

  input_schema;

wstring

  output_schema;

wstring

  output_location;

} ;

struct OutTranslateData {

ServiceStatus

  status;

} ;

//

データの直接転送

struct InTransferIntermediateData {

wstring

  target_software_program_name;

wstring

  data_item;

} ;

struct OutTransferIntermediateData {

ServiceStatus

  status;

} ;

//

プログラムの呼び出し

struct InInvokeSoftwareProgramCapability {


31

B 3652 : 2002 (ISO 13281-2 : 2000)

wstring

  SP_capability_name;

ArgumentList

  SP_capability_input_argument_list;

} ;

struct OutInvokeSoftwareProgramCapability {

ServiceStatus

  status;

ArgumenList

  SP_capability_output_argument_list;

} ;

//

プログラムの開始

struct InStartManufacturingSoftwareProgram {

wstring

  SP_start_up_script;

} ;

struct OutStartManufacturingSoftwareProgram {

ServiceStatus

  status;

} ;

//

タスクリストによるタスクの開始

struct InStartTaskList {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutStartTaskList {

ServiceStatus

  status;

} ;

//

タスクリストによるタスクの終了

struct InTerminateTaskList {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutTerminateTaskList {

ServiceStatus

  status;

} ;

//

タスクリストによるタスクの一時停止

struct InSuspendTaskList {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutSuspendTaskList {


32

B 3652 : 2002 (ISO 13281-2 : 2000)

ServiceStatus

  status;

} ;

//

タスクリストの一時停止

struct InSuspendAfter {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutSuspendAfter {

ServiceStatus

  status;

} ;

//

タスクリストの再開

struct InResumeTaskList {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutResumeTaskList {

ServiceStatus

  status;

} ;

//

ステップ単位実行モード

struct InStepMode {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutStepMode {

ServiceStatus

  status;

} ;

//

タスク単位実行モード

struct InStepTask {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutStepTask {

ServiceStatus

  status;

} ;

//

範囲指定のタスク単位実行モード


33

B 3652 : 2002 (ISO 13281-2 : 2000)

struct InStepTo {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutStepTo {

ServiceStatus

  status;

} ;

//

単位実行モードの解除

struct InOutOfStep {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutOutOfStep {

ServiceStatus

  status;

} ;

//N

タスク先のタスクの実行

struct InSkipN {

wstring

  task_list_id;

wstring

  task_id;

wstring

  n;

} ;

struct OutSkipN {

ServiceStatus

  status;

} ;

//

指定タスクの実行

struct InSkipTo {

wstring

  task_list_id;

wstring

  task_id;

} ;

struct OutSkipTo {

ServiceStatus

  status;

} ;

//

タスクリストの表示

struct InShowTaskList {

wstring

  task_list_id;


34

B 3652 : 2002 (ISO 13281-2 : 2000)

wstring

  output_destination;

} ;

struct OutShowTaskList {

ServiceStatus

  status;

ValueList

  task_list_information;

} ;

//

タスクリストの削除

struct InDeleteTaskList {

wstring

  task_list_id;

} ;

struct OutDeleteTaskList {

ServiceStatus

  status;

} ;

//

タスクリストの生成

struct InCreateTaskList {

wstring

  task_list_id;

} ;

struct OutCreateTaskList {

ServiceStatus

  status;

} ;

//

トレースの開始

struct InStartTrace{

wstring

  task_list_id;

} ;

struct OutStartTrace{

ServiceStatus

  status;

} ;

//

トレースの停止

struct InStopTrace {

wstring

  task_list_id;

} ;

struct OutStopTrace {

ServiceStatus

  status;

} ;

//

タスクリストの実行状態の確認


35

B 3652 : 2002 (ISO 13281-2 : 2000)

struct InCheckTaskListStatus {

wstring

  task_list_id;

} ;

struct OutCheckTaskListStatus {

ServiceStatus

  status;

wstring

      task_id;

} ;

//MAPLE

オブジェクトの初期化

struct InInitializeMAPLE {

wstring

  MAPLE_name;

} ;

struct OutInitializeMAPLE {

ServiceStatus

  status;

} ;

//MAPLE

オブジェクトの終了

struct InShutDownMAPLE {

wstring

  MAPLE_name;

} ;

struct OutShutDownMAPLE {

ServiceStatus

  status;

} ;

//MAPLE

の統括管理

struct InAdministrateSystem {

wstring

  MAPLE_name;

} ;

struct OutAdministrateSystem {

ServiceStatus

  status;

} ;

//MAPLE

オブジェクト間の通信

struct InCommunicateMAPLEToMAPLE {

wstring

  other_MAPLE_name;

} ;

struct OutCommunicateMAPLEToMAPLE {

ServiceStatus

  status;

} ;


36

B 3652 : 2002 (ISO 13281-2 : 2000)

//MAPLE

オブジェクトへのアクセス

struct InAccessMAPLE {

wstring

  MAPLE_name;

} ;

struct OutAccessMAPLE{

ServiceStatus

  status;

} ;

//

サービス名

enum ServiceName {

plan_task, register_data_source, list_data_source,

deregister_data_source, modify_data_source,

register_software_program_capability,

list_software_program_capability,

deregister_software_program_capability,

modify_software_program_capability,

register_catalogue_entry, list_catalogue,

deregister_catalogue_entry, modify_catalogue_entry,

insert_data, list_data, delete_data, update_data,

retrieve_data, checkout_data, checkin_data,

pass_through_query, translate_data, transfer_intermediate_data,

invoke_software_program_capability, start_manufacturing_software_program,

start_task_list, terminate_task_list, suspend_task_list,

suspend_after, resume_task_list, step_mode, step_task, step_to,

out_of_step, skip_n, skip_to, show_task list, delete_task_list,

create_task_list, start_trace, stop_trace, check_task_list_status,

initialize_MAPLE, shut_down_MAPLE, administrate_system,

communicate_MAPLE_to_MAPLE, access_MAPLE, other_services

} ;

//

サービスパラメータのリスト

//MAPLE

へのサービス要求のパラメータ

union ServiceReqParameterList switch (ServiceName){

case plan_task:

InPlanTask plan_task;

case register_data_source:

InRegisterDataSource register_data_source;

case list_data_source:

InListDataSource list_data_source;

case deregister_data_source:


37

B 3652 : 2002 (ISO 13281-2 : 2000)

InDeregisterDataSource deregister_data_source;

case modify_data_source:

InModifyDataSource modify_data_source;

case register_software_program_capability:

InRegisterSoftwareProgramCapability register_software_program_capability;

case list_software_program_capability:

InListSoftwareProgramCapability list_software_program_capability;

case deregister_software_program_capability:

InDeregisterSoftwareProgramCapability deregister_software_program_capability;

case modify_software_program_capability:

InModifySoftwareProgramCapability modify_software_program_capability;

case register_catalogue_entry:

InRegisterCatalogueEntry register_catalogue_entry;

case list_catalogue:

InListCatalogue list_catalogue;

case deregister_catalogue_entry:

InDeregisterCatalogueEntry deregister_catalogue_entry;

case modify_catalogue_entry:

InModifyCatalogueEntry modify_catalogue_entry;

case insert_data:

InInsertData insert_data;

case list_data:

InListData list_data;

case delete_data:

InDeleteData delete_data;

case update_data:

InUpdateData update_data;

case retrieve_data:

InRetrieveData retrieve_data;

case checkout_data:

InCheckOutData checkout_data;

case checkin_data:

InCheckInData checkin_data;

case pass_through_query:

InPassThroughQuery pass_through_query;

case translate_data:

InTraslateData translate_data;

case transfer_intermediate_data:

InTransferlntermediateData transfer_intermediate_data;

case invoke_software_program_capability:


38

B 3652 : 2002 (ISO 13281-2 : 2000)

InInvokeSoftwareProgramCapability invoke_software_program_capability;

case start_manufacturing_software_program:

InStartManufacturingSoftwareProgram start_manufacturing_software_program;

case start_task_list:

InStartTaskList start_task_list;

case terminate_task_list:

InTerminateTaskList terminate_task_list;

case suspend_task_list:

InSuspendTaskList suspend_task_list;

case suspend_after:

InSuspendAfter suspend_after;

case resume_task_list:

InResumeTaskList resume_task_list;

case step_mode:

InStepMode step_mode;

case step_task:

InStepTask step_task;

case step_to:

InStepTo step_to;

case out_of_step:

InOutOfStep out_of_step;

case skip_n:

InSkipN skip_n;

case skip_to:

InSkipTo skip_to;

case show_task_list:

InShowTaskList show_task_list;

case delete_task_list:

InDeleteTaskList delete_task_list;

case create_task_list:

InCreateTaskList create_task_list;

case start_trace:

InStartTrace start_trace;

case stop_trace:

InStopTrace stop_trace;

case check_task_list_status:

InCheckTaskListStatus check_task_list_status;

case initialize_MAPLE:

InInitializeMAPLE initialize_MAPLE;

case shut_down_MAPLE:


39

B 3652 : 2002 (ISO 13281-2 : 2000)

InShutDownMAPLE shut_down_MAPLE;

case administrate_system:

InAdministrateSystem administrate_system;

case communicate_MAPLE_to_MAPLE:

InCommunicateMAPLEToMAPLE communicate_MAPLE_to_MAPLE;

case access_MAPLE:

InAccessMAPLE access_MAPLE;

default:

ParameterList other_services;

} ;

//MAPLE

からのサービス結果通知のパラメータ

union ServiceRspParameterList switch (ServiceName){

case plan_task:

OutPlanTask plan_task;

case register_data_source:

OutRegisterDataSource register_data_source;

case list_data_source:

OutListDataSource list_data_source;

case deregister_data_source:

OutDeregisterDataSource deregister_data_source;

case modify_data_source:

OutModifyDataSource modify_data_source;

case register_software_program_capability:

OutRegisterSoftwareProgramCapability register_software_program_capability;

case list_software_program_capability:

OutListSoftwareProgramCapability list_software_program_capability;

case deregister_software_program_capability:

OutDeregisterSoftwareProgramCapability deregister_software_program_capability;

case modify_software_program_capability:

OutModifySoftwareProgramCapability modify_software_program_capability;

case register_catalogue_entry:

OutRegisterCatalogueEntry register_catalogue_entry;

case list_catalogue:

OutListCatalogue list_catalogue;

case deregister_catalogue_entry:

OutDeregisterCatalogueEntry deregister_catalogue_entry;

case modify_catalogue_entry:

OutModifyCatalogueEntry modify_catalogue_entry;

case insert_data:


40

B 3652 : 2002 (ISO 13281-2 : 2000)

OutInsertData insert_data;

case list_data:

OutListData list_data;

case delete_data:

OutDeleteData delete_data;

case update_data:

OutUpdateData update_data;

case retrieve_data:

OutRetrieveData retrieve_data;

case checkout_data:

OutCheckOutData checkout_data;

case checkin_data:

OutCheckInData checkin_data;

case pass_through_query:

OutPassThroughQuery pass_through_query;

case translate_data:

OutTranslateData translate_data;

case transfer_intermediate_data:

OutTransferIntermediateData transfer_intermediate_data;

case invoke_software_program_capability:

OutInvokeSoftwareProgramCapability invoke_software_program_capability;

case start_manufacturing_software_program:

OutStartManufacturingSoftwareProgram start_manufacturing_software_program;

case start_task_list:

OutStartTaskList start_task_list;

case terminate_task_list:

OutTerminateTaskList terminate_task_list;

case suspend_task_list:

OutSuspendTaskList suspend_task_list;

case suspend_after:

OutSuspendAfter suspend_after;

case resume_task_list:

OutResumeTaskList resume_task_list;

case step_mode:

OutStepMode step_mode;

case step_task:

OutStepTask step_task;

case step_to:

OutStepTo step_to;

case out_of_step:


41

B 3652 : 2002 (ISO 13281-2 : 2000)

OutOfStep out_of_step;

case skip_n:

OutSkipN skip_n;

case skip_to:

OutSkipTo skip_to;

case show_task_list:

OutShowTaskList show_task_list;

case delete_task_list:

OutDeleteTaskList delete_task_list,

case create_task_list:

OutCreateTaskList create_task_list,

case start_trace:

OutStartTrace start_trace;

case stop_trace:

OutStopTrace stop_trace;

case check_task_list_status:

OutCheckTaskListStatus check_task_list_status,

case initialize_MAPLE:

OutInitializeMAPLE initialize_MAPLE;

case shut_down_MAPLE:

OutShutDownMAPLE shut_down_MAPLE;

case administrate_system:

OutAdministrateSystem administrate_system;

case communicate_MAPLE_to_MAPLE:

OutCommunicateMAPLEToMAPLE communicate_MAPLE_to_MAPLE;

case access_MAPLE:

OutAccessMAPLE access_MAPLE;

default:

ParameterList other_services;

} ;

//MAPLE

の機能のパラメータ

//

機能名

typedef wstring

  CapabilityName;

//

機能のパラメータのリスト

typedef ParameterList CapabilityParameterList;

//

要求するサービス


42

B 3652 : 2002 (ISO 13281-2 : 2000)

struct RequestedService {

//wstring

型のキーワード“invoke_service”は最初に置かなければならない。

//

フィールドは“invoke_type”である。

wstring

      invoke_type;

ServiceName

  service_name;

ServiceReqParameterList

  service_req_parameter_list;

} ;

//

要求したサービスの結果

struct ServiceResults {

ServiceName

  service_name;

ServiceRspParameterList

  service_rsp_parameter_list;

} ;

//

要求した機能

struct RequestedCapability {

//wstring

型のキーワード“invoke_capability”は最初に置かなければならない。

//

フィールドは“invoke_type”である。

wstring

      invoke_type;

CapabilityName

  SP_capability_name;

CapabilityParameterList

  SP_capability_parameter_list;

} ;

interface MAPLE {

//

操作

//

次の操作は,製造用ソフトウェア又は他の MAPLE が起動する。

//

製造用ソフトウェアによる新しいセッションの要求

//

製造用ソフトウェアからの応答は“acknowledge_new_session_request”である。

void request_new_session (

in Identifier originator_identifier,

in Identifier request identifier

) ;

//MAPLE

による製造用ソフトウェアとの新しいセッションの起動への応答

//

製造用ソフトウェアからの起動は“initiate_new_session”である。

void acknowledge_new_session_initiation (

in Identifier session_identifier,

in Identifier new_session_status


43

B 3652 : 2002 (ISO 13281-2 : 2000)

) ;

//MAPLE

サービスの要求

//Expected Response and expected Termination of this Request,

//“request_service_action_response” and “service_termination”

//from the ManufacturingSoftwareProgram Interface

void request_service (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedService requested_service

) ;

//MAPLE

による製造用ソフトウェア機能の起動への応答

//

製造用ソフトウェアからの起動は“request_capability”である。

void request_SP_capability_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestStatus request_status

) ;

//

製造用ソフトウェア機能の起動の終了

//

製造用ソフトウェアからの起動は“request_capability”である。

void invocation_termination (

in Identifier session_identifier,

in Identifier request_identifier,

in Status termination_status,

in CapabilityParameterList SP_capability_results

) ;

//MAPLE

からのデータ取得

//

製造用ソフトウェアからの応答は“request_data_action_response”である。

void request_data (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedService requested_service

) ;

//MAPLE

へのデータ転送

//

データ転送の準備

//

製造用ソフトウェアからの応答は“prepare_data_send_action_response”である。


44

B 3652 : 2002 (ISO 13281-2 : 2000)

void prepare_data_send (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedService requested_service

) ;

//

データ転送

//

製造用ソフトウェアからの応答は“send_data_action_response”である。

void send_data (

in Identifier data_send_request_identifier,

in ParameterList data_to_be_sent

) ;

//

他の MAPLE からのデータ取得

void MAPLE_to_MAPLE_requested_data(

in Identifier session_identifier,

in Identifier request_identifier,

in Identifier requested_data_identifier

) ;

void MAPLE_to_MAPLE_requested_data_action_response(

in Identifier session_identifier,

in Identifier request_identifier,

in Identifier data_retrieve_identifier,

in RequestStatus request_status

) ;

void MAPLE_to_MAPLE_retrieve_data(

in Identifier data_retrieve_identifier

) ;

void MAPLE_to_MAPLE_send_data(

in Identifier data_retrieve_identifier,

in ParameterList data_requested

) ;

void MAPLE to MAPLE_send_data_action_response(

in Identifier data_retrieve_identifier,

in Status data_receive_status

) ;


45

B 3652 : 2002 (ISO 13281-2 : 2000)

//

製造用ソフトウェアへのデータ転送

//

データ転送の準備に対する応答

//

準備は製造用ソフトウェアからの“prepare_data_send_from_MAPLE”である。

void prepare_data_send_from_MAPLE_action_response (

in Identifier session_identifier,

in Identifier data_send_request_identifier,

in RequestStatus request_status

) ;

//

データ転送に対する応答

//

要求は製造用ソフトウェアからの“send_data_from_MAPLE”である。

void send_data_from_MAPLE_action_response (

in Identifier data_send_request_identifier,

in Status data_receive_status

) ;

//

他の MAPLE への一斉通信

//MAPLE

検索器における“broadcast_request”の結果として,

//

次の操作は,MAPLE 検索器又は他の MAPLE が起動する。

void broadcast_request_action_response (

in Identifier request_identifier,

in Identifier MAPLE_identifier,

in RequestStatus request_status

) ;

//

製造用ソフトウェアからのセッションの終了

//

製造用ソフトウェアからの応答は“session_termination_action_response”である。

void request_session_termination (

in Identifier session_identifier

) ;

//MAPLE

からのセッションの終了の応答

//

製造用ソフトウェアからの要求は“session_termination”である。

void session_termination_action_response (

in Identifier session_identifier,

in Status termination_status

) ;

} ;

interface ManufacturingSoftwareProgram{


46

B 3652 : 2002 (ISO 13281-2 : 2000)

//

操作

//

次の操作は,MAPLE が起動する。

//

新しいセッションに対する製造用ソフトウェアの要求への応答

//MAPLE

からの要求は“request_new_session”である。

void acknowledge_new_session_request (

in Identifier originator_identifier,

in Identifier request_identifier,

in Identifier session_identifier,

in Status new_session_status

) ;

//MAPLE

による製造用ソフトウェアとの新しいセッションの開始

//MAPLE

からの応答は“acknowledge_new_session_initiation”である。

void initiate_new_session (

in Identifier application_program_identifier,

in Identifier session_identifier

) ;

//MAPLE

のサービス要求に対する応答

//MAPLE

からの要求は“request_service”である。

void request_service_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in RequestStatus request_status

) ;

//MAPLE

のサービス要求の終了

//MAPLE

からの要求は“request_service”である。

void service_termination (

in Identifier session_identifier,

in Identifier request_identifier,

in Status termination_status,

in ServiceResults service_results

) ;

//MAPLE

による製造用ソフトウェア機能の起動

//

これに対する応答及び終了は,

“request_capability_action_response”

//

及び“invocation_termination”である。

void request_SP_capability (


47

B 3652 : 2002 (ISO 13281-2 : 2000)

in Identifier session_identifier,

in Identifier request_identifier,

in RequestedCapability requested_SP_capability

) ;

//MAPLE

からのデータ取得に対する応答

//MAPLE

からの要求は,

“request_data”である。

void request_data_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in ParameterList data_requested,

in RequestStatus request_status

) ;

//MAPLE

へのデータ転送

//

データ転送の準備に対する応答

//MAPLE

からの準備は,

“prepare_data_send”である。

void prepare_data_send_action_response (

in Identifier session_identifier,

in Identifier request_identifier,

in Identifier data_send_request_identifier,

in RequestStatus request_status

) ;

//

データ転送に対する応答

//MAPLE

からの要求は,

“send_data”である。

void send_data_action_response (

in Identifier data_send_request_identifier,

in Status data_receive_status

) ;

//

製造用ソフトウェアへのデータ転送

//

データ転送に対する準備

//MAPLE

からの応答は,

“prepare_data_send_from_MAPLE_action_response”である。

void prepare_data_send_from_MAPLE (

in Identifier session_identifier,

in Identifier data_send_request_identifier,

in wstring

  application_program_data_type

) ;


48

B 3652 : 2002 (ISO 13281-2 : 2000)

//

データ転送

//MAPLE

からの応答は,

“send_data_from_MAPLE_action_response”である。

void send_data_from_MAPLE (

in Identifier data_send_request_identifier,

in ParameterList data_to_be_sent

) ;

//

製造用ソフトウェアからのセッション終了に対する応答

//MAPLE

からの要求は,

“request_session_termination”である。

void request_session_termination_action_response (

in Identifier session_identifier,

in Status termination_status

) ;

//MAPLE

からのセッション終了

//MAPLE

からの応答は,

“session_termination_action_response”である。

void request_session_termination(

in Identifier session_identifier

) ;

} ;

interface MAPLEFinder {

//

操作

//

他の MAPLE に対する一斉通信

//MAPLE

検索器は,タスクが実行可能な他の MAPLE を検索する要求を受け付ける。

//MAPLE

検索器がどのようにこの要求を他の MAPLE へ送るか,すなわち実時間で

//

一斉通信するか,候補となる MAPLE をディレクトリで検索してからメッセージを

//

送るか,などは,この規格の範囲外である。

//MAPLE

からの応答は,

“broadcast_request_action_response”である。

void broadcast_request(

in Identifier request_identifier,

in Identifier MAPLE_identifier,

in RequestedCapability requested_SP_capability

) ;

} ;

} ;


49

B 3652 : 2002 (ISO 13281-2 : 2000)

産業オートメーションシステム及びその統合−

製造自動プログラミング環境 (MAPLE) −第 2 部:サービス及びインタフェース

JIS

原案作成委員会  構成表

氏名

所属

(委員長)

荒  井  栄  司

大阪大学大学院工学研究科

(委員)

井  上  久仁子

内  山  光  一

株式会社東芝

佐々木  宏  明

横河電機株式会社

白  瀬  敬  一

大阪大学大学院工学研究科

高  田  昌  之

電気通信大学総合情報処理センター

東  條  喜  義

社団法人電子情報技術産業協会

松  田  三知子

神奈川工科大学工学部

若  井  秀  之

株式会社小松製作所

八  田      勲

経済産業省産業技術環境局標準課情報電気標準化推進室

山  村  修  蔵

財団法人日本規格協会

(事務局)

岡  部  信  夫

社団法人精密工学会