(57)【特許請求の範囲】
【請求項１】
車両の制御対象に対する最終的な制御量が、基本制御量と運転環境に基づいて決められる複数の補正項とに基づいて算出される車両用の制御量演算装置において、
各々が、補正の演算種別を示す演算種別アドレスデータと前記演算種別に従って演算されるべき複数の補正項と格納する複数の補正用情報テーブルと、
前記複数の補正用情報テーブルを演算種別に基づいて順次指定するための指定用情報テーブルとを備え、
前記指定用情報テーブルで指定された補正用情報テーブルを参照して格納された演算種別アドレスデータと補正項に基づいて当該演算種別における制御量を算出し、次に指定された補正用情報テーブルを参照して当該演算種別における制御量を算出し、順次指定された補正用情報テーブルを参照して当該演算種別における制御量を算出して、前記制御対象に対する最終的な制御量を算出することを特徴とする車両用の制御量演算装置。
【請求項２】
前記指定用情報テーブルは、前記複数の補正用情報テーブルの数を格納するエリアと、前記複数の補正用情報テーブル毎に先頭アドレスを格納する複数のエリアで構成される請求項１に記載の車両用の制御量演算装置。
【請求項３】
前記複数の補正用情報テーブルの各々は、初期設定ルーチンの先頭アドレスデータを格納するエリアと、演算種別ごとの処理ルーチンの先頭アドレスデータを格納するエリアと、補正項の数を格納するインデックスエリアと、各インデックスごとに補正種別ごとのアドレスデータを格納する複数の補正項エリアとで構成される請求項１に記載の車両用の制御量演算装置。
【請求項４】
前記補正用情報テーブルの複数の補正項は、前記制御対象の変更に伴い、当該演算種別において削除すべき補正項アドレスデータを削除し、追加すべき補正項アドレスデータを追加することで変更される請求項３に記載の車両用の制御量演算装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は車両用の制御量演算装置に関し、詳しくは、基本制御量に対して自動車の運転状態等に応じて定める補正項を用いて補正演算することにより最終的な制御量を演算する自動車用の制御量演算装置に関する。
【０００２】
【従来の技術】
例えば、電子制御式燃料噴射装置を備えた内燃機関では、機関回転数と吸気管圧力（又は、吸入空気量）とから基本燃料噴射量ＴＰを演算し、さらに、この基本燃料噴射量ＴＰに対して運転状態やエンジンの機械的な特性を考慮した様々な補正演算が行われ、燃料噴射弁から実際に燃料噴射を実行する燃料噴射時間ＴＡＵを算出している。
【０００３】
図１７は燃料噴射時間を算出するための算出式の一例である。ＴＡＵは燃料噴射時間である。また、ＦＭＷは吸気弁付近に付着する燃料分だけ燃料を多く噴射する壁面付着補正であり、ＡＤＪは外部調整補正であり、ＴＰは基本燃料噴射量であり、ＩＤＬはアイドリング時のエンストを防ぐためのエンスト防止補正であり、ＲＩＣＨＸは増量補正であり、ＡＦは空燃比補正であり、ＦＴＨＷはエンジンの冷却水温に応じて暖機時の噴射量を増量する基本暖機補正であり、ＦＡＳＥは始動後増量補正であり、ＦＫＬは小空気増量補正である。これらの補正は式▲４▼→▲３▼→▲２▼→▲１▼の順で決められ、その結果、燃料噴射時間ＴＡＵが求められる。
【０００４】
このように、機関回転数と吸気管圧力に基づく基本燃料噴射時間ＴＰに対して、図示の算出式で示すように、運転状態やエンジンの機械的特性を考慮した様々な補正演算が行われ、燃料噴射弁から実際に燃料を噴射する燃料噴射時間ＴＡＵを算出している。
図１８は図１７の算出式の処理順序を示したフローチャートである。図示のように、図１７の算出式の▲４▼→▲３▼→▲２▼→▲１▼の順序で燃料噴射時間ＴＡＵが算出される。
【０００５】
【発明が解決しようとする課題】
ところが、燃料噴射時間ＴＡＵの算出式は、例えば、ある機種では図１７の式▲１▼及び▲４▼に新たな補正項が追加され、また、別の機種では式▲２▼の補正項の１つが削除される、等、エンジン機種や車両仕様毎に様々に変化する。
従って、従来では、エンジン機種や車両仕様等の変更により補正内容が変わる度に制御プログラム全体を見直し、プログラム上の該当する補正すべき個所を見つけ適宜修正するといった作業を行っていた。しかしながら、制御プログラムは一連に切れ目なく構成されているために、ある制御プログラムを他の機種の制御プログラムに適用するといったことは極めて時間を要する作業であった。
【０００６】
また、このような制御プログラム作成方法では、プログラム全体を理解した者でなければプログラムの修正すべき個所を見つけることが困難なため、例えば、他人の作成した制御プログラムに対して全体を理解するための時間等、著しくプログラム開発時間を長いものにしていた。
そこで、本発明の目的は、所定の処理、例えば、燃料噴射時間の算出処理では、加算処理、乗算処理、最大値の選択処理等の演算ロジックは、複数の機種で共通に使われ（例えば、図１７の▲１▼で、ＴＡＵＢ、ＦＷＭ、ＡＤＪは加算演算されること自体は、どの機種でも共通であるということ）、機種毎に変化するのは各演算ロジックを構成する補正項であることに着目し、プログラム構造として補正項のみの変更を可能とすることにより、他の機種への制御プログラムの再利用性を向上させたことにある。
【０００７】
【課題を解決するための手段】
請求項１乃至４の発明によれば、補正用情報テーブルに演算種別の処理ルーチンのアドレスデータ、さらに補正項が格納されているアドレスを登録し、制御演算ルーチンにおいて、この情報テーブルに指示された関数をコールすることで制御量を求めるようにしたので、例え機種の変更により補正項が変更されても対応する補正用情報テーブルのみ修正すればよく、その結果、制御プログラムを再利用できるので開発効率を高めることができる。
【０００８】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を説明する。図１は本発明を適用する制御システムの一実施形態の構成図である。本図は、内燃機関１０として多気筒（例えば、４気筒又は６気筒）の火花点火式エンジンに本実施形態を適用した例であり、任意の一気筒の縦断面図で示している。本実施形態では、後述するマイクロコンピュータ１１によって燃料噴射制御等が行われる。
【０００９】
図１において、エアクリーナ１２の下流側にはスロットルバルブ１３を介してサージタンク１４が設けられている。また、エアクリーナ１２の近傍には吸気温度を検出する吸気温センサ１５が取り付けられ、さらに、スロットルバルブ１３には、アクセルペダルに連動して変化するスロットルバルブ１３の開度及びアイドル状態を検出するスロットルポジションセンサ１６が取り付けられている。さらに、サージタンク１４にはダイヤフラム式のバキューム（吸気圧）センサ１７が取り付けられている。
【００１０】
サージタンク１４は任意の一気筒のインテークマニホルド１８及び吸気弁１９を介してエンジン２０の燃焼室２１に連通されている。インテークマニホルド１８内に一部が突出するように各気筒毎に燃料噴射弁２２が配設されている。この燃料噴射弁２２はインテークマニホルド１８を通る空気中にマイクロコンピュータ１１により指示された時間だけ燃料噴射する。燃焼室２１は排気弁２３及びエキゾーストマニホルド２４を介して触媒装置２５に連通されている。
【００１１】
２６はディストリビュータであり、イグナイタで発生させた高電圧を各気筒の点火プラグへ分配供給すると共に、そのシャフトの回転からクランク角度基準位置とクランク角度とを各々検出する。
また、２７は水温センサであり、エンジンブロック２８を貫通して一部がウオータジャケット内に突出するように配置され、エンジン冷却水の水温を検出して水温センサ信号を出力する。さらに、酸素濃度検出センサ（Ｏ２  センサ）２９は触媒装置２５に流入する以前の排気ガス中の酸素濃度を検出する。
【００１２】
図２は図１のマイクロコンピュータの詳細構成図である。図１に示す構成の燃料噴射制御装置の各部の動作を制御するマイクロコンピュータ１１は、図２に示すハードウェアで構成される。図２において、図１と同一の構成部分には同一の符号を付しその説明を省略する。
図２において、マイクロコンピュータ１１は、中央処理装置（ＣＰＵ）１１ａ、処理プログラムを格納したリード・オンリ・メモリ（ＲＯＭ）１１ｂ、作業領域として使用されるランダム・アクセス・メモリ（ＲＡＭ）１１ｃ、エンジン停止後もデータを保持するバックアップＲＡＭ１１ｄ、入力インタフェース回路１１ｅ、マルチプレクサ付きＡ／Ｄコンバータ１１ｇ及び入出力インタフェース１１ｆで構成されており、それらはバス１１ｉを介して互いに接続されている。
【００１３】
Ａ／Ｄコンバータ１１ｇは、吸気温センサ１５からの吸気温検出信号、スロットルポジションセンサ１６からの検出信号、バキュームセンサ１７からの吸気管圧力（ＰＭ）検出信号、水温センサ２７からの水温検出信号、Ｏ２  センサ２９からの酸素濃度検出信号を入力インタフェース回路１１ｅを経て順次切り換えて取り込み、それをアナログ・ディジタル変換してバス１１ｉへ順次送出する。
【００１４】
入出力インタフェース回路１１ｆには、スロットルポジションセンサ１６からの検出信号、ディストリビュータ２６からの機関回転数（ＮＥ）に応じた回転数信号が入力され、それらをバス１１ｉを介してＣＰＵ１１ａへ入力し、さらに、バス１１ｉを経て入力された各信号を燃料噴射弁２２等へ送出してそれらを制御する。これにより、燃料噴射弁２２は各噴射タイミングで燃料噴射時間ＴＡＵの間、燃料噴射が実行される。
【００１５】
上記構成のマイクロコンピュータ１１内のＣＰＵ１１ａは、ＲＯＭ１１ｂ内に格納された制御プログラムに従い、以下に説明するフローチャートの処理を実行する。
図３は燃料噴射量を求める燃料噴射時間（ＴＡＵ）計算ルーチンである。この処理は制御プログラムのベース処理にて実行される。ＴＡＵ計算ルーチンが起動されると、マイクロコンピュータ１１内のＣＰＵ１１ａは機関回転数ＮＥ、吸気管圧力ＰＭを取り込んだ後（Ｓ３０１）、ＰＭ／ＮＥから基本燃料噴射時間ＴＰを算出し（Ｓ３０２）、ＲＡＭ１１ｃの所定のアドレスに格納する。
【００１６】
続いて、暖機増量、空燃比フィードバック補正係数その他、種々の補正係数を求め（Ｓ３０３）、所定のアドレスに格納する。さらに、基本燃料噴射時間ＴＰに対してステップＳ３０３にて求めた補正項により補正演算して燃料噴射時間ＴＡＵを算出し（Ｓ３０４）、この燃料噴射時間ＴＡＵを所定のアドレス領域に格納し（Ｓ３０５）、他のベース処理に移行する。ステップＳ３０４の処理は本発明の特徴的部分であり、その演算内容を後で詳しく説明する。
【００１７】
図４は図３で求めた燃料噴射時間ＴＡＵで燃料噴射を実行する噴射実行ルーチンであり、所定のクランク角周期で実行される。図示のように、まず、噴射タイミングか否か判定し（Ｓ４０１）、噴射タイミングであれば（ＹＥＳ）、図３のルーチンで求めた燃料噴射時間ＴＡＵを取り込み（Ｓ４０２）、そして、燃料噴射時間ＴＡＵの持続時間を有する駆動パルスが、マイクロコンピュータ１１から燃料噴射弁２２に出力され、燃料噴射時間ＴＡＵに対応する時間だけ燃料噴射弁２２を開弁して燃料噴射を実行する（Ｓ４０３）。
【００１８】
図５〜図１６は、図３のステップＳ３０４で実行される各種補正項算出処理の詳細を示すフローチャート及び処理に使用されるテーブルを示す。
図５は後述する図６に示す指定用情報テーブルを選択するためのフローチャートである。また、図６は指定用情報テーブルの一実施形態の構成図である。図３の処理おいて、ステップ（Ｓ３０４）に到達すると、関数コールにより図５のフローチャートで示された処理に移行する。
【００１９】
図７は補正処理ルーチンであり、図８は本発明による補正用情報テーブルの一実施形態の構成図である。
図５において、まず、参照すべき情報テーブルのアドレスを検索するために使われる変数ｋをリセットし（Ｓ５０１）、次に、この変数ｋから図６の指定用情報テーブルにおいて参照すべき情報テーブルのアドレスデータを取り出す（Ｓ５０２）。例えば、ｋ＝０（エリア０）である場合には情報テーブル１を参照するために１０００ｈのアドレスデータが読み出され、後述する図８の情報テーブル１が選択される。そして、図８に示す情報テーブルにおける処理のために、図７の補正処理ルーチンがコールされ（Ｓ５０３）、図７で示したフローチャートの処理が実行される。
【００２０】
以降、次の情報テーブルを参照すべく、図５の変数ｋがインクリメントされることにより（Ｓ５０４）、情報テーブルの１１００ｈ、１２００ｈ、１３００ｈの順にアドレスデータが読み出され、情報テーブル１→情報テーブル２→情報テーブル３→情報テーブル４、の順に読み出され各情報テーブルに応じた演算処理が実行される。
【００２１】
このようにして、図７の補正処理ルーチンの処理が終了すると、変数ｋと情報テーブルの数ｎを比較してその大小を判定し（Ｓ５０５）、全ての情報テーブルが参照されたかをチェックする。即ち、情報テーブルの数が大きければ（ＹＥＳ）、まだ残りの情報テーブルがあるので、ステップＳ５０２に戻って残りの情報テーブルを同様に処理し、一方、変数ｋが情報テーブルの数ｎより小さくなければ（ＮＯ）、図３のステップＳ３０５に移行してこの処理を終了する。
【００２２】
次に、図７において、まず、図５のステップＳ５０２で取り出されたアドレスの情報テーブルの最初のアドレスに書かれているデータに基づき初期設定ルーチンをコールする（Ｓ７０１）。即ち、詳しくは先ず最初に、この処理が実行されたタイミング（ｋ＝０）にて指定されたアドレス１０００ｈに相当する情報テーブル１に書かれた初期設定ルーチンの先頭アドレスデータ（Ａ）（図８の（Ａ）参照）に基づき図９の加算初期設定ルーチンがコールされる。そして、図９では、補正項ＲＡＤに初期値１．０を代入する（Ｓ９０１）。
【００２３】
さらに、図７に戻り、情報テーブルの補正項を順次特定するための指標であるＩＮＤＥＸをリセットし（Ｓ７０２）、次に、このＩＮＤＥＸの値（０，１，２等）から情報テーブル１を検索して補正演算に用いる補正項が格納されているアドレスを特定する（Ｓ７０３）。そして、ステップＳ７０３にて特定したアドレスから補正項データを読み出す（Ｓ７０４）。
【００２４】
例えば、ＩＮＤＥＸ＝０であるときには、基本暖機補正ＦＴＨＷが格納されているアドレスが情報テーブル１（図８の（Ｃ）参照）により検索、特定され（上述のＳ７０３）、該当するアドレスから基本暖機補正ＦＴＨＷの値が読み出される（上述のＳ７０４）。
次に、情報テーブルの所定アドレスに書かれているデータ、即ち、初期設定ルーチンのアドレスデータの次に書かれているデータ（図８の（Ｂ）参照）に基づき演算処理ルーチンをコールする（Ｓ７０５）。ここで、変数ｋ＝０の場合には図８に示すように情報テーブル１により加算処理ルーチンがコールされ、図１０の加算処理ルーチンが実行される。図１０では、最初は補正項ＲＡＤの初期値１．０と基本暖機補正ＦＴＨＷの値が加算され（Ｓ１００１）、次に、加算演算した結果を図７の補正処理ルーチンに戻す（Ｓ１００２）。
【００２５】
図７に戻り、さらにＩＮＤＥＸをインクリメントし（Ｓ７０６）、ＩＮＤＥＸと情報テーブルに書かれている補正項数Ｎとを比較し、情報テーブルに指示された補正項全てを演算処理したかをチェックする（Ｓ７０７）。初めはＩＮＤＥＸはＮ以下であるのでステップＳ７０３に戻り、ステップＳ７０５で再び図１０の加算処理ルーチンがコールされ、ステップＳ１００１が実行される度にこれまでの加算累計値と新たにＩＮＤＥＸで示された補正項との加算を順次実行する。
【００２６】
以上の処理を繰り返すことにより、１．０＋ＦＴＨＷ＋ＦＡＳＥ＋ＦＫＬの演算（図１７の▲４▼参照）が実行され、補正項ＲＡＤの値が求まり、図７のステップＳ７０７で否定判定されてコール元である図５のステップＳ５０３に移行する。上述したように、図５のステップＳ５０４では変数ｋをインクリメントし、ステップＳ５０５で変数ｋと情報テーブル数ｎとを比較し、燃料噴射時間ＴＡＵ算出において実行すべき演算を全く行ったかをチェックする。なお、情報テーブル数ｎは図６のテーブルに予め与えられている。本実施形態では、情報テーブルは４個設けられているのでｎ＝４となり、上述したｋ＝０での処理（加算演算処理）を実行した後は、ｋ＝１（エリア１）にインクリメントされ、情報テーブル２を実行すべく１１００ｈのアドレスデータが読み出される。
【００２７】
そして、上述と同様に、ステップＳ５０３にて図７の演算処理ルーチンを再びコールし、上述したのと同じ要領で情報テーブルが検索され、今度は情報テーブル２を参照することにより図１１の最大値初期設定ルーチンが実行される。
図１１では補正項ＲＡＤを補正項ＲＩＣＨＸにコピーし（Ｓ１１０１）、図７のステップＳ７０３〜Ｓ７０４の処理を実行してステップＳ７０５で演算処理ルーチンがコールされ、図１２の最大値選択処理ルーチンが実行される。
【００２８】
図１２では、まず補正項ＲＩＣＨＸと触媒過熱防止補正ＯＴが比較され（Ｓ１２０１）、次に大きい方を補正項ＲＩＣＨＸとして設定され（Ｓ１２０２）、次に、設定した結果を図７の補正処理ルーチンに戻す（Ｓ１２０３）。次にＩＮＤＥＸがインクリメントされ、次にステップＳ１２０１が実行されるタイミングで補正項ＲＩＣＨＸと加速増量補正ＦＴＨＲとを比較し、最終的にこの３つの補正項の最大値が算出される。
【００２９】
その後、図５のステップＳ５０４にてｋ＝２（エリア２）にインクリメントされ、情報テーブル３を実行するために１２００ｈのアドレスデータが読み出される。
そして、図７の演算処理ルーチンを再びコールし、前述したのと同じ要領で情報テーブルが検索され、今度は情報テーブル３を参照することにより図１３の乗算初期設定ルーチンが実行される。
【００３０】
図１３では補正項ＲＩＣＨＸを補正項ＴＡＵＢにコピーし（Ｓ１３０１）、図７のステップＳ７０３〜７０４の処理を実行してステップＳ７０５で演算処理ルーチンがコールされ図１４の乗算処理ルーチンが実行される。図１４では、補正項ＴＡＵＢに基本噴射量Ｔｐ及びエンスト防止補正ＩＤＬ、空燃比補正ＡＦの各補正項を順次乗算する（Ｓ１４０１）。そして図５でｋ＝３（エリア３）にインクリメントされ、情報テーブル４を実行するために１３００ｈのアドレスデータが読み出される。
【００３１】
そして、図７の演算処理ルーチンを再びコールし、前述したのと同じ要領で情報テーブルが検索され、今度は情報テーブル４を参照することにより図１５の加算初期設定ルーチンが実行される。
図１５では、補正項ＴＡＵＢを補正項ＴＡＵにコピーし（Ｓ１５０１）、図７のステップＳ７０３〜Ｓ７０４の処理を実行してステップＳ７０５で演算処理ルーチンがコールされ図１０の加算処理ルーチンが実行される。
【００３２】
ここで、情報テーブル４に示された補正項の演算も加算処理であるため情報テーブル１と同様に図１０の加算処理ルーチンがコールされる。このようにして図１０の処理プログラムを共通化してプログラムを格納するメモリ要領を削減することができる。
図１０のステップＳ１００１では前述した要領で処理を実行し、図７の演算処理を繰り返しながら補正項ＴＡＵに壁面付着補正ＦＭＷ、外部調整補正ＡＤＪを順次加算し、最終的な制御量である燃料噴射時間ＴＡＵを求め、図５のステップＳ５０３に戻り、この時点でステップＳ５０５で否定判定されて図３のステップＳ３０５へ移行する。
【００３３】
次に、このプログラムを他の機種に適用する場合について説明する。図１６は図８の補正用情報テーブルの変更を説明する構成図である。例えば、図１７の算出式において、式▲１▼に新たに補正項αが加わり、式▲４▼で小空気増量補正ＦＫＬが削除された場合には、図８の情報テーブルに対して、図１６で示すように変更するのみで対応できる。
【００３４】
詳しくは、図１６において、情報テーブル４にＩＮＤＥＸ２を付し、これに補正項αの値が格納されるアドレスを示すデータを登録し、情報テーブル１のＩＮＤＥＸ２  の補正項ＦＫＬの情報を削除して、変更された各情報テーブルの補正項数（ＩＮＤＥＸ数）を変更するのみで対応することができる。従って、本発明では、各補正項を演算処理するためのプログラム自体を全く修正する必要がなく、他の機種にそのまま適用することができるとともに、プログラムの開発工数も大幅に削減できる。
【００３５】
また、例えば、外部調整補正ＡＤＪが補正項βと補正項γとの乗算にて求まるような仕様変更があった場合には、補正項βと補正項γに関する情報テーブルを追加して、図６の指定用情報テーブルのｋ＝２，３との間にテーブルを追加するといった簡単な修正で対応することができる。
このように、図７及び図１０のような演算処理を実際に行うプログラム自体は変更しないので、このプログラム自体のデバッグをする必要もなく、この部分を変更したことによるバグの発生もない。このようにすることによってプログラム開発効率は大幅に向上する。
【００３６】
なお、本実施形態では、燃料噴射時間ＴＡＵを求める処理についてのみ説明したが、点火時期やＩＳＣ制御量など他の制御量演算に対しても同様に適用することができ、また、図７の処理を点火時期演算と燃料噴射時間演算とを共用して使用してもよい。さらに、上述した加算処理や最大値算出の演算処理以外に除算処理や論理和等の論理演算に対しても適用できる。
【図面の簡単な説明】
【図１】本発明を適用する制御システムの一実施形態の構成図である。
【図２】図１に示すマイクロコンピュータの詳細構成図である。
【図３】燃料噴射量を求める燃料噴射時間（ＴＡＵ）計算ルーチンである。
【図４】図３で求めた燃料噴射時間で燃料噴射を実行する噴射実行ルーチンである。
【図５】図６に示す指定用情報テーブルを選択するためのフローチャートである。
【図６】本発明による指定用情報テーブルの一実施形態の構成図である。
【図７】補正処理ルーチンを示す。
【図８】本発明による補正用情報テーブルの一実施形態の構成図である。
【図９】加算初期設定ルーチンを示す。
【図１０】加算処理ルーチンを示す。
【図１１】最大値初期設定ルーチンを示す。
【図１２】最大値選択処理ルーチンを示す。
【図１３】乗算初期設定ルーチンを示す。
【図１４】乗算処理ルーチンを示す。
【図１５】加算初期設定ルーチンを示す。
【図１６】図８の補正用情報テーブルの変更を説明する構成図である。
【図１７】燃料噴射時間を算出するための算出式の一例説明図である。
【図１８】図１７の算出式の処理順序を示したフローチャートである。
【符号の説明】
１１…マイクロコンピュータ
２０…エンジン
２２…燃料噴射弁
１１ａ…ＣＰＵ
１１ｂ…ＲＯＭ
１１ｃ…ＲＡＭ
１１ｄ…バックアップＲＡＭ
１１ｅ…入力インタフェース回路
１１ｆ…入出力インタフェース回路
１１ｇ…Ａ／Ｄコンバータ
１１ｉ…バス
【図１】
0003552552.tif 000002
【図２】
0003552552.tif 000003
【図３】
0003552552.tif 000004
【図４】
0003552552.tif 000005
【図５】
0003552552.tif 000006
【図６】
0003552552.tif 000007
【図７】
0003552552.tif 000008
【図８】
0003552552.tif 000009
【図９】
0003552552.tif 000010
【図１０】
0003552552.tif 000011
【図１１】
0003552552.tif 000012
【図１２】
0003552552.tif 000013
【図１３】
0003552552.tif 000014
【図１４】
0003552552.tif 000015
【図１５】
0003552552.tif 000016
【図１６】
0003552552.tif 000017
【図１７】
0003552552.tif 000018
【図１８】
0003552552.tif 000019