(57)【要約】【課題】各プロセッサへのプログラムの割り当てをユーザが明示的に行うことが可能な複数のプロセッサを備えるＰＬＣ用プログラム作成支援装置を提供することにある。【解決手段】本発明の複数プロセッサを備えるＰＬＣ用プログラム作成支援装置は、プログラミングの際に、ユーザが、明示的に各プロセッサへのプログラムの割り当てを指定できるようにし、また複数のプログラムからアクセス可能な変数であるグローバル変数の宣言について、いずれのプロセッサのグローバル変数であるかを明示的に指定できるように構成した。【選択図】図１
2008198143.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセッサを備えるＰＬＣ（プログラマブルコントローラ）用プログラムの作成支援をするＰＬＣ用プログラム作成支援装置であって、
前記各プロセッサへのプログラムの割り当てをユーザが明示的に指定するためのダイアログを表示し、該ユーザによるプログラム割り当て指示を記憶する処理と、
前記ＰＬＣにおいて、複数のプログラムからアクセス可能な変数であるグローバル変数の宣言をユーザが指定するためのダイアログを表示し、該ユーザによるグローバル変数の宣言の指定を記憶する処理と、
を行うＧＵＩ部（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ部）を備えることを特徴とするＰＬＣ用プログラム作成支援装置。
【請求項２】
更に、前記ＧＵＩ部が記憶したユーザによるプログラム割り当て指示に基づいて、中間コードおよび中間的なプログラムリストを生成する中間コード生成部と、
前記生成された中間コードおよび中間的なプログラムリストをコンパイルして、マシンコードと最終的なプログラムリストを生成するマシンコード生成部と、
を備えることを特徴とする請求項１記載のＰＬＣ用プログラム作成支援装置。
【請求項３】
前記マシンコード生成部は、中間的なプログラムリスト内のタスク名に基づいて、当該中間的なプログラムリストを各プロセッサに該当する内容のみを含む形に分割し、前記中間コードと該分割されたリストとをコンパイルして、マシンコードと最終的なプログラムリストを生成することを特徴とする請求項２記載のＰＬＣ用プログラム作成支援装置。
【請求項４】
前記マシンコードは、１以上生成されることを特徴とする請求項２記載のＰＬＣ用プログラム作成支援装置。
【請求項５】
更に、前記生成されたマシンコードを、前記生成された最終的なプログラムリストに基づいて各プロセッサにダウンロードするダウンロード部を備えることを特徴とする請求項２記載のＰＬＣ用プログラム作成支援装置。
【請求項６】
更に、前記プロセッサにダウンロードされたマシンコードを前記ＰＬＣ用プログラム作成支援装置にアップロードするアップロード部と、
前記アップロードされたマシンコードと、当該ＰＬＣ用プログラム作成支援装置内のマシンコードを比較する比較部と、
を備えることを特徴とする請求項５記載のＰＬＣ用プログラム作成支援装置。
【請求項７】
複数のプロセッサを備えるＰＬＣ用プログラムの作成支援をコンピュータによって行うための方法であって、当該コンピュータは処理部と記憶部とを備え、
前記処理部が、
前記各プロセッサへのプログラムの割り当てをユーザに明示的に指定させるためのダイアログを表示し、該ユーザによるプログラム割り当て指示を前記記憶部に記憶し、
前記ＰＬＣにおいて、複数のプログラムからアクセス可能な変数であるグローバル変数の宣言をユーザに指定させるためのダイアログを表示し、該ユーザによるグローバル変数の宣言の指定を前記記憶部に記憶し、
前記記憶部に記憶されたユーザによるプログラム割り当て指示およびグローバル変数の宣言の指定に基づいて、中間コードおよび中間的なプログラムリストを生成し、
前記生成された中間コードおよび中間的なプログラムリストをコンパイルしてマシンコードと最終的なプログラムリストを生成し、
前記生成された最終的なプログラムリストに基づいて、前記生成されたマシンコードを前記各プロセッサにダウンロードする、
処理を行うことによってＰＬＣ用プログラムの作成支援を行うことを特徴とするプログラム作成支援方法。
【請求項８】
更に、前記各プロセッサにダウンロードされたマシンコードをアップロードし、
前記アップロードされたマシンコードと、前記ダウンロードされたマシンコードを比較することを特徴とする請求項７記載のプログラム作成支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラ用プログラムの作成支援を行う装置に関わり、更に詳しくは複数のプロセッサを備えるプログラマブルコントローラ用プログラムの作成を支援することができる装置に関する。
【背景技術】
【０００２】
プログラマブルコントローラ（以下ＰＬＣと呼ぶ）用プログラム作成支援装置とは、システム設計者などのユーザによるＰＬＣのプログラムの作成、デバックを支援するための装置である。
【０００３】
ＰＬＣのプログラミングに関しては、ＩＥＣ６１１３１−３（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｓｉｏｎ：国際電気標準会議）（非特許文献１）という国際標準規格に準拠したプログラム言語を用いてシステム開発等を行うことが一般的である。
【０００４】
図１２に、ＩＥＣ６１１３１−３に規定されているソフトウェアモデルを示す。図のように従来のＰＬＣ用プログラム作成支援装置においては、単一プロセッサを持つＰＬＣに、１コンフィグレーション、１リソース、複数プログラムの構成をサポートするプログラミングが行われている（図１３参照）。
【０００５】
更に近年では、図１４に示すような複数のプロセッサを備えるＰＬＣも普及してきており、複数プロセッサを備えるＰＬＣ用プログラム作成支援装置としては、例えば特許文献１に示すような装置がある。
【０００６】
特許文献１で開示されるＰＬＣ用プログラム作成支援装置は、複数のプロセッサを備えるＰＬＣのプログラムを作成するときに、単一プロセッサのＰＬＣのプログラム作成と同様に作業するだけで自動的に複数のプロセッサへのプログラム配置を決定することができる装置である。しかしながら、当該装置は、ユーザが１台のＰＬＣプログラムを作成した後、予め決まったテーブルに従って自動的にプログラムが複数プロセッサに振り分けられてしまい、システム設計者などのユーザが明示的にプログラムを振り分けることができない、という問題がある。
【特許文献１】特開平７−２４４５０７号公報
【非特許文献１】ＩＥＣ６１１３１−３
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで本発明の課題は、複数のプロセッサを備えるＰＬＣ用プログラムの作成を支援する、ＰＬＣ用プログラム作成支援装置（マルチプロセッサＰＬＣ用プログラム作成支援装置）において、各プロセッサへのプログラムの割り当てをユーザが明示的に行うことを可能にすることにある。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、本発明のＰＬＣ用プログラム作成支援装置は、プログラミングの際に、ユーザが、明示的に各プロセッサへのプログラムの割り当てを指定できるようにし、また複数のプログラムからアクセス可能な変数であるグローバル変数の宣言について、いずれのプロセッサのグローバル変数であるかを明示的に指定できるように構
成した。更に、該ユーザの指定に基づいて複数プロセッサを備えるＰＬＣ用プログラムを生成するための、中間的なプログラムリストと中間コードを生成する中間コード生成部、および、該中間的なプログラムリストと該中間コードに基づいて最終的なプログラムリストと１以上のマシンコードを生成するマシンコード生成部を備えるように構成した。
【０００９】
これにより、ユーザにより明示的に指定されたグローバル変数や各プロセッサへのプログラムの割り当てに基づいたプログラムを生成可能なＰＬＣ用プログラム作成支援装置（マルチプロセッサＰＬＣ用プログラム作成支援装置）を実現することが可能である。
【００１０】
更に、上述のＰＬＣ用プログラム作成支援装置は、前記生成されたマシンコードを、前記生成されたプログラムリストに基づいて各プロセッサにダウンロードするダウンロード部を備える。これにより、各プロセッサに確実にダウンロードを行うことが可能である。
【００１１】
更に、上述のＰＬＣ用プログラム作成支援装置は、各プロセッサにダウンロードされたプログラム等を該装置にアップロードするアップロード部と、該アップロードされたマシンコードと該装置内のマシンコードを比較する比較部とを備える。これにより、ダウンロード時には生成されたプログラムが間違いなくダウンロードできているか確認が可能であり、また、ダウンロード後に、随時該装置内のプログラムとＰＬＣ内のプログラムを比較可能となり、例えば該装置内のプログラムを変更してしまったかどうかわからない場合などは確認を行うことができる。
【発明の効果】
【００１２】
本発明のマルチプロセッサＰＬＣ用プログラム作成支援装置によれば、複数のプロセッサを備えるＰＬＣ用のプログラムを作成する際に、ユーザは各プロセッサへのプログラムの割り当ての指定を明示的に行うこと、およびグローバル変数の宣言においていずれのプロセッサのグローバル変数であるかを明示的に指定することが可能である。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して、本発明の実施の形態について説明する。
図１に、本発明のＰＬＣ用プログラム作成支援装置の構成を示す。
ＰＬＣ用プログラム作成支援装置１０１は、当該装置内の通信インタフェース１１２を介してプログラマブルコントローラ（ＰＬＣ）１０２と通信し、マシンコードなどのプログラム等のダウンロード、アップロード等を行う。
【００１４】
図１には示していないが、ＰＬＣ１０２はＣＰＵなどの処理部であるプロセッサを複数備えるものである。また、ＰＬＣ用プログラム作成支援装置１０１は、ＣＰＵなどの処理部やＲＡＭなどのメモリを備える情報処理装置（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などで構成されるものである。そして、ＰＬＣ用プログラム作成支援装置１０１のＰＬＣ１０２の各プロセッサに割り当てるプログラムを作成する処理を行う部分は、前記情報処理装置におけるＣＰＵなどで実現される処理部とＲＡＭなどのメモリによってプログラムが実行されることによって、次のように実現される。
【００１５】
すなわち、まず、システム設計者などのユーザがプログラムを作成（記述）するためのインタフェースを提供するＧＵＩ部（Graphical User Interface部）１０３、と、該ＧＵＩ部１０３へのユーザからの指示等をキーボードやマウス入力により伝達する入力部１０４と、ＧＵＩ部１０３の出力を表示画面やスピーカ、プリンタなどの出力装置に出力する出力部１０５とを備える。
【００１６】
ＧＵＩ部１０３は、ユーザがプログラムを作成（記述）するために様々な処理を行うが、特に、本実施の形態として特徴がある点は、ユーザがＰＬＣ上の各プロセッサへのプロ
グラムの割り当てを明示的に指定するためのダイアログを表示し、ユーザによって指定されたプログラム割り当て指示を記憶する処理を行う点と、ＰＬＣにおいて、複数のプログラムからアクセス可能な変数であるグローバル変数の宣言について、各グローバル変数がいずれのプロセッサについての宣言かを指定するためのダイアログを表示し、ユーザによって指定されたグローバル変数の宣言を記憶する処理を行う点である。
【００１７】
そして、本実施の形態のＰＬＣ用プログラム作成支援装置１０１は、ユーザによって指定された各プロセッサへのプログラムの割り当て、およびグローバル変数の宣言が記述されたグローバル変数シート１０６に基づいて、マシンコードやプログラムリストなどのプログラムを生成する。プログラムを生成する部分は、中間コード生成部１０７およびマシンコード生成部１０９から成る。
【００１８】
中間コード生成部１０７は、ユーザによって指定された各プロセッサへのプログラムの割り当て、および宣言されたグローバル変数が記憶されたグローバル変数シート１０６に基づいて、中間コード１１４および中間的なプログラムリスト１１３を生成する。マシンコード生成部１０９は、生成された中間コード１１４および中間的なプログラムリスト１１３を複数回以上（プロセッサの数分）コンパイルし、ＰＬＣの各プロセッサに対応するマシンコードを生成する。尚、コンパイルの際、マシンコードは１プロセッサに対して複数生成される場合もある。
【００１９】
更に、本実施の形態のＰＬＣ用プログラム作成支援装置１０１は、通信インタフェース１１２を介して、生成されたマシンコード１１５を生成されたプログラムリスト１１６に基づいて、ＰＬＣの各プロセッサにダウンロードするダウンロード部１１０を備える。
【００２０】
また、本実施の形態のＰＬＣ用プログラム作成支援装置１０１は、プログラムコントローラ１０２にダウンロードされたマシンコードや、プログラムコントローラ１０２で作成されるプログラムリストを、通信インタフェース１１２を介してＰＬＣ用プログラム作成支援装置１０１にアップロードするアップロード部１１１を備える。
【００２１】
アップロード部１１１によってアップロードされたマシンコード１１７やプログラムリスト１１８は、ＰＬＣ用プログラム作成支援装置１０１からダウンロードされたマシンコード１１５およびプログラムリスト１１６と、比較部１０８によって比較することが可能である。比較部１０８の比較処理によって、ダウンロード時には、生成されたマシンコードが間違いなくダウンロードされているか確認することが可能であり、また、ダウンロード後に随時装置内のプログラム等とＰＬＣ内のプログラム等を比較可能であるため、例えばＰＬＣ用プログラム作成支援装置１０１内のプログラムを変更してしまったかどうかわからない場合などは確認を行うことが可能である。
【００２２】
図１に示したＰＬＣ用プログラム作成支援装置１０１において、例えばユーザが或るシステム構成を設定する、すなわち、新規に１コンフィグレーションを作成する場合のフローは図２に示すようになる。
【００２３】
まず、Ｓ２０１で、新たなコンフィグレーションの名前を作成するなどの設定を行う。次にＳ２０２で、制御するリソースを設定し、Ｓ２０３でタスクの設定を行う。Ｓ２０４で、ＰＯＵ（Ｐｒｏｇｒａｍ  Ｏｒｇａｎｉｚａｔｉｏｎ  Ｕｎｉｔ）を作成し、Ｓ２０５でＰＯＵをインスタンス化し、Ｓ２０６でコンパイルし、Ｓ２０７でＰＬＣにコンパイルして生成されたマシンコードをダウンロードする。Ｓ２０８で、デバックを行う。
【００２４】
図２に示したフローの各処理と上述の図１の各部との説明の対応は次のようになる。
Ｓ２０３におけるタスクの設定の処理において、ユーザがＧＵＩ部１０３に対しＰＬＣ
の各プロセッサに割り当てるプログラム（タスク）の指定を行う。また、Ｓ２０６のコンパイルにおいて中間コード生成部１０７やマシンコード生成部１０９におけるプログラムの生成が行われる。そして、Ｓ２０７のダウンロードは、ダウンロード部１１０により行われる。
【００２５】
以下、本実施の形態のＰＬＣ用プログラム作成支援装置の各部の処理についてより詳細に説明する。
まず、図３、図４、図５を参照して、ＧＵＩ部１０３において行われる、ＰＬＣのプロセッサへのプログラムの割り当て処理について説明する。
【００２６】
図３に、プロセッサへプログラム（タスク）を割り当てる際の、ＰＬＣ用プログラム作成支援装置の表示画面例を示す。ＧＵＩ上で、例えばＬＯＣＡＬ  ＣＰＵのあるＴＡＳＫにプログラムを割り付けるには、図３のように、該当ＴＡＳＫを選択後、入力装置であるマウスで右クリックする。すると挿入のポップアップメニューが表示され、プログラムインスタンスを選択する。
【００２７】
次に、図４に示すようなＤｉａｌｏｇ（ダイアログ）が表示され、ユーザがインスタンス化するプログラムタイプを選択し、名称を設定すると、図３のＴｒｅｅ構造を示す部分に挿入したプログラムインスタンスが表示される。
【００２８】
図４に示すＤｉａｌｏｇが表示され、ユーザがインスタンス化するプログラムを設定する際に、ユーザはＰＬＣのＬＯＣＡＬ  ＣＰＵに割り当てたいプログラム（タスク）については、‘Ｌ＿’が付くタスクの名称（プログラムインスタンス）をつけ、またＰＬＣのＭＡＩＮ  ＣＰＵに割り当てたいプログラム（タスク）については‘Ｌ＿’が付かないタスクの名称（プログラムインスタンス）をつける。
【００２９】
すなわち、ＰＬＣのプロセッサへのプログラムの割り当てが完了した際の図３のＴｒｅｅ構造部分を拡大して表示すると、図５に示すようになる。つまり、ユーザがＬＯＣＡＬ
ＣＰＵに割り当てたいプログラム（タスク）については‘Ｌ＿’が付いた名称になっており、またＭＡＩＮ  ＣＰＵに割り当てたいプログラム（タスク）については‘Ｌ＿’が付いていない名称となっている。
【００３０】
ＧＵＩ部１０３は、図３〜図５に示したように、ユーザがＰＬＣ上の各プロセッサへのプログラムの割り当てを明示的に指定するためのダイアログ（図４）を表示し、ユーザによって指定されたプログラム割り当て指示を記憶する処理を行う（図５）。
【００３１】
次に、図６に示す、複数のプログラムからアクセス可能な変数であるグローバル変数の宣言において、各グローバル変数がいずれのプロセッサの変数であるかをユーザが指定する処理について説明する。
【００３２】
グローバル変数とは１リソース内の複数プログラムからアクセス可能な変数を言う。プログラム作成支援装置では、図５に示したＴｒｅｅ構造のグローバル変数シートに、ＩＥＣ６１１３１−３に準拠し宣言される。しかし、グローバル変数シートはＭＡＩＮ  ＣＰＵ，ＬＯＣＡＬ  ＣＰＵごとに存在しないので、どちらのＣＰＵについてのグローバル変数宣言かの区別がつかない。そこで、本実施の形態のＰＬＣ用プログラム作成支援装置では、どちらのＣＰＵの変数宣言かを区別できるように、図７に示すようにした。すなわち、Ｌｏｃａｌ  ＣＰＵに割り付けるグローバル変数は、変数の最後に‘＿Ｌ’を付加することにより、区別するようにした。
【００３３】
ＧＵＩ部１０３は、図７に示すように、ユーザによって入力される、いずれのプロセッ
サのグローバル変数であるかの指定に基づき、グローバル変数シート１０６を生成する。
次に、ユーザにより指定されたプログラムの割り当てやグローバル変数の指定に基づいて各プロセッサにダウンロードされるプログラムの生成処理（コンパイル）について説明する。
【００３４】
まず、図５に示したＴｒｅｅ構造は、中間コード生成部１０７によって図９（ａ）に示すようなリスト（図１の‘図９（ａ）のリスト１１３’）にされる。図９（ａ）のうち、‘ＮＰＧＩ：２’は、プログラムの本数を示しており、Ｌ＿ＤＥＦ，ＤＥＦＡＵＬＴはタスク名を示している。他の記号は特に本発明には関係がないので説明は省略する。
【００３５】
次に、マシンコード生成部１０９により図９（ａ）に示したリストが分割される。この分割は、タスク名をキーワードに、ＭＡＩＮ  ＣＰＵのリストとＬＯＣＡＬ  ＣＰＵのリストに分割される。図９（ｂ）にＭＡＩＮ  ＣＰＵ用に分割したリストを示し、図９（ｃ）にＬＯＣＡＬ  ＣＰＵ用に分割したリストを示す。マシンコード生成部１０９は、該分割したリストをコンパイルし、各プロセッサ（ＣＰＵ）に対応するプログラムリストとプログラムのマシンコードを生成する。
【００３６】
図８に、マシンコードが生成されるまでの概要を示した。
即ち、図９（ａ）のリストは、マシンコード生成部１０９によりＭＡＩＮ  ＣＰＵ用のリスト（図９（ｂ））とＬＯＣＡＬ  ＣＰＵ用のリスト（図９（ｃ））に分割され、コンパイル処理される。このコンパイル処理では、ＣＰＵ毎にコンパイルが行われるため、この場合は２回コンパイルが行われる。例えば、１回目のコンパイルでＭＡＩＮ  ＣＰＵ用のプログラムリストおよびマシンコードが生成され、２回目のコンパイルでＬＯＣＡＬ  ＣＰＵ用のプログラムリストおよびマシンコードが生成される。ＴＡＳＫに紐付けられるプログラムは複数可能であるため、１回のコンパイルで複数のマシンコードが生成されることが可能である。
【００３７】
次に、マシンコード生成部１０９によって生成されたマシンコードのＰＬＣへのダウンロード処理（ダウンロード部１１０の処理）について説明する。図１０に示すように、マシンコードのＰＬＣの各プロセッサへのダウンロードは、マシンコードと同時に各プロセッサ（ＣＰＵ）毎のプログラムリストに基づいて、各ＣＰＵに対して行われる。
【００３８】
次に、マシンコードとプログラムリストの比較処理（比較部１０８の処理）について説明する。図１１に示すように、ＰＬＣ内にダウンロードされているマシンコード１１７と、ＰＬＣが作成したプログラムリスト１１８がアップロード部１１１のアップロード処理により読み出され、ＰＬＣ用プログラム作成支援装置内で持っているマシンコード１１５とプログラムリスト１１６が比較部１０８によって比較される。
【００３９】
比較部１０８における上述のような比較処理によって、ＰＬＣへのダウンロード時、生成されたプログラムが間違いなくダウンロードできているかの確認を行うことが可能で、また、ダウンロード後、ＰＬＣ用プログラム作成支援装置内のプログラムを変更してしまった場合は、比較することによって不一致となるため、変更したことを確認することができる。
【００４０】
以上図１〜図１１を参照して、本発明の実施の形態であるＰＬＣ用プログラム作成支援装置について詳細に説明した。本発明のマルチプロセッサＰＬＣ用プログラム作成支援装置によれば、複数のプロセッサを備えるＰＬＣ用のプログラムを作成する際に、ユーザは各プロセッサへのプログラムの割り当ての指定を明示的に行うこと、およびグローバル変数の宣言においていずれのプロセッサのグローバル変数であるかを明示的に指定することが可能である。
【００４１】
以上のように本発明のＰＬＣ用プログラム作成支援装置について詳細に説明したが、本発明は以上に述べたことに限定されるものではなく、その他、本発明の要旨を逸脱しない範囲で様々の構成、または形状をつくることができることはいうまでもない。
【図面の簡単な説明】
【００４２】
【図１】本発明のＰＬＣ用プログラム作成支援装置の構成を示す図である。
【図２】ＰＬＣ用プログラム作成支援装置において、１コンフィグレーションを作成する場合のフローを示す図である。
【図３】各プロセッサに割り付けるプログラムを割り当てる際のＰＬＣ用プログラム作成支援装置の表示画面例を示す図である。
【図４】Ｄｉａｌｏｇの一例を示す図である。
【図５】ＰＬＣの各プロセッサへのプログラムの割り当てが完了したときの一例を示す図である。
【図６】グローバル変数について説明する図である。
【図７】グローバル変数の宣言の記述の一例を示す図である。
【図８】マシンコードが生成されるまでの概要を示す図である。
【図９】（ａ）は、図５のＴｒｅｅ構造を展開したリストの一例を示す図であり、（ｂ）はＭＡＩＮ  ＣＰＵ用に分割したリストの一例を示す図であり、（ｃ）はＬＯＣＡＬ  ＣＰＵ用に分割したリストの一例を示す図である。
【図１０】本発明のＰＬＣ用プログラム作成支援装置におけるダウンロード処理を説明する図である。
【図１１】本発明のＰＬＣ用プログラム作成支援装置における比較処理を説明する図である。
【図１２】ＩＥＣ６１１３１−３ソフトウェアモデルを示す図である。
【図１３】従来のＰＬＣ用プログラム作成支援装置の一例を示す図である。
【図１４】マルチプロセッサプログラマブルコントローラの構成例を示す図である。
【符号の説明】
【００４３】
１０１      ＰＬＣ用プログラム作成支援装置
１０２      プログラマブルコントローラ
１０３      ＧＵＩ部
１０４      入力部
１０５      出力部
１０６      グローバル変数シート
１０７      中間コード生成部
１０８      比較部
１０９      マシンコード生成部
１１０      ダウンロード部
１１１      アップロード部
１１２      通信インタフェース
１１３      図９（ａ）プログラムリスト
１１４      中間コード
１１５      マシンコード
１１６      プログラムリスト
１１７      マシンコード
１１８      プログラムリスト
【図１】
2008198143.tif 000003
【図２】
2008198143.tif 000004
【図６】
2008198143.tif 000005
【図７】
2008198143.tif 000006
【図８】
2008198143.tif 000007
【図９】
2008198143.tif 000008
【図１０】
2008198143.tif 000009
【図１１】
2008198143.tif 000010
【図１４】
2008198143.tif 000011
【図３】
2008198143.tif 000012
【図４】
2008198143.tif 000013
【図５】
2008198143.tif 000014
【図１２】
2008198143.tif 000015
【図１３】
2008198143.tif 000016