(57)【特許請求の範囲】
【請求項１】
内燃機関のアイドル運転時におけるエンジン回転数をフィードバック項および学習項に基づいてフィードバック制御する装置であって、
エンジン負荷が大きくなった場合には、該フィードバック項の値が上限値ＦＢＵ０以下であって同上限値ＦＢＵ０から所定の値ＦＢＵΔを減じた値ＦＢＵよりも大きく、かつ該エンジン回転数ＮＥが目標エンジン回転数ＮＴから所定の値を減じた回転数より小さい時、または、該フィードバック項の値が下限値ＦＢＬ０以上であって同下限値ＦＢＬ０に所定の値ＦＢＬΔを加えた値ＦＢＬよりも小さく、かつ該エンジン回転数ＮＥが目標エンジン回転数ＮＴに所定の値を加えた回転数より大きい時、に限り該学習項を更新する
ことを特徴とする内燃機関のアイドル回転数制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関のアイドル回転数制御装置に関する。より具体的には、本発明は、エンジンのスロットルバルブをバイパスして流れる吸入空気量を、制御弁によって調整するアイドル回転数制御装置に関する。
【０００２】
【従来の技術】
従来の技術を用いた内燃機関のアイドル回転数制御装置は、例えば、特開平５−１９５８４７号公報に記載されている。この公報に記載のアイドル回転数制御装置は、内燃機関のスロットル弁をバイパスして流れる吸入空気量を制御弁によって制御することによって、エンジン回転数を目標回転数に一致させるようにフィードバック制御をおこなう。エンジンに対する負荷が加わる場合、例えば、エアコンディショナ（以下「エアコン」とする）やライトがオンされると、エンジン回転数ＮＥが所望の目標回転数ＮＴに近い値をとらない限り、アイドルスピードコントロール（以下「ＩＳＣ」とする）の学習値が更新されなかった。
【０００３】
【発明が解決しようとする課題】
上記従来の技術においては、エアコンの負荷が推定量と異なる場合（例えば、エアコンの冷媒が漏れ出たり（いわゆる「冷媒ぬけ」）、車内温度が上昇したりする場合）や、エンジンの負荷となる補機（オルタネータ）およびＩＳＣ系の故障の場合は、エンジン回転数ＮＥが目標回転数ＮＴに近い値をとらないために、ＩＳＣの学習値は更新されない。このため、エンジン回転数ＮＥが目標回転数ＮＴからずれた状態が続き、その結果、エンジンアイドル回転数の低下によるラフアイドルや、高すぎる回転数による燃費の悪化および排気ガスの成分の悪化を招く。
【０００４】
本発明は、上記課題を解決するためになされたものであり、その目的は、エンジンの負荷が大きく変動する場合などに、負荷に対応する目標回転数ＮＴにフィードバック制御が追従できないとき、および予め設定した学習項の見込み補正値が不十分であるときにも学習項を更新することによって、エンジン回転数ＮＥをより速く目標回転数ＮＴに収束させる内燃機関のアイドル回転数制御装置を提供することにある。
【０００５】
【課題を解決するための手段】
本発明による内燃機関のアイドル回転数制御装置は、内燃機関のアイドル運転時におけるエンジン回転数をフィードバック項および学習項に基づいてフィードバック制御する装置であって、エンジン負荷が大きくなった場合には、該フィードバック項の値が上限値ＦＢＵ０以下であって同上限値ＦＢＵ０から所定の値ＦＢＵΔを減じた値ＦＢＵよりも大きく、かつ該エンジン回転数ＮＥが目標エンジン回転数ＮＴから所定の値を減じた回転数より小さい時、または、該フィードバック項の値が、下限値ＦＢＬ０以上であって同下限値ＦＢＬ０に所定の値ＦＢＬΔを加えた値ＦＢＬよりも小さく、かつ該エンジン回転数ＮＥが目標エンジン回転数ＮＴに所定の値を加えた回転数より大きい時、に限り該学習項を更新することをその要旨とする。
【０００６】
【発明の実施の形態】
図面を参照しながら本発明の実施の形態を説明する。本明細書において、スイッチが「オン」状態であるとは、スイッチが電流を流す状態をいい、「オフ」状態であるとは、スイッチが電流を流さない状態をいう。また電力を消費するユニット（例えば、エアコン、ライトなど）が「オン」状態であるとは、そのユニットが電力を消費する状態をいい、「オフ」状態であるとは、そのユニットが電力を消費しない状態をいう。
【０００７】
図１は、本発明によるアイドル回転数制御装置１００の概略構成図である。吸気通路１０２は、エンジン１０４に空気を供給する。吸気通路１０２を通る空気は、エアクリーナ１０６、スロットルバルブ１０８、サージタンク１１０および吸気管１１２の順に通って、エンジン１０４に至る。スロットルバルブ１０８は、アクセルペダル（不図示）の操作に連動して開閉される。
【０００８】
バイパス通路１１４は、吸気通路１０２を通る空気の流れをバイパスする。バイパス通路１１４は、アイドルスピードコントロール（以下「ＩＳＣ」とする）をおこなうためのバルブとして制御弁１１６を備えている。制御弁１１６は、ＥＣＵ１５０によってデューティ駆動されることによって、バイパス通路１１４を流れる空気量を調整する。
【０００９】
クランク角センサ１２０は、クランクシャフトの回転角度を検出し、回転角度に対応する回転角度検出信号をＥＣＵ１５０に出力する。アイドルスイッチ１２１は、スロットルバルブ１０８がアイドル位置にあることを示す信号をＥＣＵ１５０に出力する。圧力センサ１２２は、吸気通路１０２内の圧力を検出し、圧力に対応する信号をＥＣＵ１５０に出力する。水温センサ１２３は、冷却水の温度を検出し、冷却水の温度に対応する信号をＥＣＵ１５０に出力する。
【００１０】
ＥＣＵ１５０は、バッテリ１３０を含む電源回路に接続されている。バッテリ１３０の正極は、ヘッドライト用スイッチ１３２を通してヘッドライト１３４に、ブロワファン用スイッチ１３６を通してブロワファン１３８に、エアコン用スイッチ１４０を通してコンプレッサ１４２にそれぞれ接続されている。コンプレッサ１４２およびオルタネータ１４４は、ベルト１４６を介してエンジン１０４によって駆動される。なおコンプレッサ１４２がエンジン１０４によって駆動されるのは、エアコン用スイッチ１４０がオンのときだけである。またＥＣＵ１５０は、スイッチ１３２、１３６および１４０が、それぞれオンであるかオフであるかを示す信号を受け取る。
【００１１】
ＥＣＵ１５０は、後述する制御プログラムを実行する中央処理ユニット（以下、「ＣＰＵ」とする）、制御プログラムや初期データなどを格納するリードオンリーメモリ（以下、「ＲＯＭ」とする）、およびＥＣＵ１５０に入力されるデータや演算・制御に必要なデータが一時的に読み出されたり、書き込まれたりするランダムアクセスメモリ（以下、「ＲＡＭ」とする）を備えている。ＥＣＵ１５０は、クランク角センサ１２０から出力された信号に基づいてエンジン回転数を算出し、圧力センサ１２２から出力された信号に基づいて吸気管１１２の圧力を算出する。ＥＣＵ１５０は、算出されたエンジン回転数および吸気管圧力からインジェクタの開弁時間を算出し、この開弁時間に対応する信号をインジェクタに出力することによって、その開閉を制御する。
【００１２】
またＥＣＵ１５０は、アイドルスイッチ１２１の状態を読み込むことによって、エンジン１０４がアイドル状態であることを検出する。エンジン１０４がアイドル状態であると検出されると、ＥＣＵ１５０は、エンジンに加わる負荷の状態に応じた目標回転数を設定し、この目標回転数に対応する信号を制御弁１１６に与える。ＥＣＵ１５０は、実際のエンジン回転数ＮＥおよび目標回転数ＮＴに基づいて、エンジン回転数ＮＥが目標回転数ＮＴになるようにフィードバック制御をおこなう。このフィードバック制御は、後で詳述するフィードバック項ＦＢおよび学習項ＬＲの２つの項に主に基づいておこなわれる。なお、ＥＣＵ１５０は、電子制御式燃料噴射装置（ＥＦＩ）や電子進角装置（ＥＳＡ）などのエンジン制御用のユニットを備えていてもよい。
【００１３】
ここで本発明による内燃機関のアイドル回転数制御装置が用いるフィードバック制御を説明する。図２は、フィードバック制御の制御ループの概略図である。制御対象は、エンジン２０２である。エンジン２０２は、入力としてＩＳＣバルブの空気流量Ｃ、フィードバック項ＦＢおよび学習項ＬＲの和（次元は、例えば［リットル／秒］）を受け取り、エンジン回転数ＮＥを出力する。ブロック２０４は、エンジン回転数ＮＥから目標回転数ＮＴを減じた差の回転数（以下、「回転数偏差」とする）を求める。負の回転数偏差は、エンジン回転数ＮＥが目標回転数ＮＴよりも小さいことを表し、正の回転数偏差は、エンジン回転数ＮＥが目標回転数ＮＴよりも大きいことを表す。
【００１４】
ブロック２０６は、典型的には、回転数偏差を時間について積分し、負の定数（−Ｋ、Ｋ：正数）を乗じた値、つまりフィードバック項ＦＢを出力する。ブロック２０８は、空気流量Ｃ、フィードバック項ＦＢおよび学習項ＬＲを加算し、エンジン２０２に出力する。ここで空気流量Ｃは、エアコンのオンおよびオフと、シフト位置のＮ（ニュートラル）およびＤ（ドライブ）とに応じて決まる定数である。学習項ＬＲは、後述するように、エンジンの負荷に大きな変動が生じたときや、ＩＳＣの制御系に生じる経時的な誤差を修正するために用いられる補正項である。
【００１５】
図３は、本発明による内燃機関のアイドル回転数制御装置を制御するＩＳＣ用プログラムのステップを示すフローチャートである。以下に説明する図３のプログラムは、典型的には、ＥＣＵ１５０内のＲＯＭに格納されており、ＥＣＵ１５０の中のＣＰＵによって実行される。
【００１６】
ＩＳＣ用プログラムは、１８０°クランク角（°ＣＡ）に１回、ステップ３０２からスタートし、ステップ３０４へ進む。
【００１７】
ステップ３０４は、ＩＳＣ用プログラムを実行する前提条件が成立するかどうかを判定する。この前提条件は、典型的には、アイドルスイッチ１２１がオンであること、車速が３ｋｍ／時未満であること、冷却水の温度が８０℃以下であること、および始動時ではないことの４つの条件である。もしこれら４つの条件がすべて満たされるならステップ３０６へ進み、もしこれらのうち１つでも満たされないなら、ステップ３５０へ進む。ステップ３５０に制御が移ると、再びステップ３０２に戻る。
【００１８】
ステップ３０６は、学習タイミングが成立するかどうかを判定する。この学習タイミングは、エンジンの１２８回転に１回である。ＥＣＵ１５０は、クランク角センサ１２０から出力される信号に基づいて、エンジンのクランクの回転を算出し、エンジンの１２８回転に１回、ステップ３０８に進み、それ以外のときはステップ３５０に進む。
【００１９】
ステップ３０８は、上述の前提条件が３秒以上継続して成立しているかどうかを判定する。もし成立しているなら、ステップ３１０に進み、もし成立していないなら、ステップ３５０に進む。本実施の形態では３秒としているが、これには限られず、内燃機関の特性に合わせて適宜変更することが可能である。前提条件が所定の時間、継続して成立しているかどうかを判定するには、典型的にはＣＰＵに内蔵のタイマが用いられる。
【００２０】
ステップ３１０は、エアコンがオン状態であるかどうかを判定する。エアコンがオンならステップ３１２に進み、エアコンがオフならステップ３３０に進む。
【００２１】
ステップ３１２は、フィードバック項ＦＢが、所定の値ＦＢＵより大きいかどうかを判定する。値ＦＢＵは、ＩＳＣにおいてフィードバック項がとりうる最大の値である上限値ＦＢＵ０（例えば０．９８（リットル／秒））から、所定の値ＦＢＵΔ（例えば０．０６（リットル／秒））を減じた値である。もしフィードバック項ＦＢが値ＦＢＵより大きいならステップ３１４に進み、もしフィードバック項ＦＢが値ＦＢＵより大きくないならステップ３１８に進む。
【００２２】
ステップ３１４は、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さいかどうかを判定する。もし小さいならステップ３１６に進み、もし小さくないならステップ３５０に進む。
【００２３】
ステップ３１６は、学習項を、現在の学習項に０．０４３（リットル／秒）を加えた値と置き換えてから、ステップ３５０に進む。
【００２４】
ステップ３１８は、フィードバック項ＦＢが、所定の値ＦＢＬより小さいかどうかを判定する。値ＦＢＬは、ＩＳＣにおいてフィードバック項がとりうる最小の値である下限値ＦＢＬ０（例えば−０．１４（リットル／秒））に、所定の値ＦＢＬΔ（例えば０．０６（リットル／秒））を加えた値である。もしフィードバック項ＦＢが値ＦＢＬより小さいならステップ３２０に進み、もしフィードバック項ＦＢが値ＦＢＬより小さくないならステップ３５０に進む。
【００２５】
ステップ３２０は、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）に２００（ｒｐｍ）を加えた値より大きいかどうかを判定する。もし大きいならステップ３２２に進み、もし大きくないならステップ３５０に進む。
【００２６】
ステップ３２２は、学習項を、現在の学習項から０．０４３（リットル／秒）を減じた値と置き換えてから、ステップ３５０に進む。
【００２７】
ステップ３３０は、フィードバック項ＦＢがゼロより大きいかどうかを判定する。もし大きいならステップ３３２に進み、もし大きくないならステップ３３４に進む。
【００２８】
ステップ３３２は、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）に２０（ｒｐｍ）を加えた値より小さいかどうかを判定する。もし小さいならステップ３１６に進み、もし小さくないならステップ３５０に進む。
【００２９】
ステップ３３４は、フィードバック項ＦＢがゼロより小さいかどうかを判定する。もし小さいならステップ３３６に進み、もし小さくないならステップ３５０に進む。
【００３０】
ステップ３３６は、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から２０（ｒｐｍ）を減じた値より大きいかどうかを判定する。もし大きいならステップ３２２に進み、もし大きくないならステップ３５０に進む。
【００３１】
学習項ＬＲの最大値および最小値は、それぞれ２．７５（リットル／秒）および０．５０（リットル／秒）である。したがってステップ３１６および３２２における学習値は、これらの最大値および最小値を越えては更新されない。
【００３２】
図４〜図６は、本発明による内燃機関のアイドル回転数制御装置における、エアコンの状態、エンジン回転数ＮＥ、目標回転数ＮＴ、フィードバック項ＦＢおよび学習項ＬＲの変化を示すグラフである。グラフにおいて、「ＡＣ」はエアコンのオン・オフを、「ＮＥ」（実線のグラフ）は実際のエンジン回転数を、「ＮＴ」（点線のグラフ）はエンジンの目標回転数を、「ＦＢ」はフィードバック項を、「ＬＲ」は学習項をそれぞれ示す。図４〜図６は、表１に示すケースをそれぞれ模式的に表す。以下、それぞれのケースを説明する。
【００３３】
【表１】
0003911317.tif 000002
【００３４】
（ケース１）
図４に示すケース１においては、エンジン回転数ＮＥおよび目標回転数ＮＴの回転数偏差が小さいためにエンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さくはなく、かつフィードバック項ＦＢも値ＦＢＬ以上、値ＦＢＵ以下の範囲に入っている。したがって学習項ＬＲを更新しない。具体的には、ステップ３１０以降、ステップ３１２、ステップ３１８およびステップ３５０の順に制御が移る。エアコンがオフからオンになる時刻ｔ４０からしばらくのあいだは、エンジン回転数ＮＥの変動があるが、学習項ＬＲは更新されず、一定のままである。
【００３５】
（ケース２）
図５に示すケース２においては、フィードバック項ＦＢが時刻ｔ５２において所定値ＦＢＵに等しくなる。しかし時刻ｔ５２においては、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さくはない。したがって学習項ＬＲを更新しない。
【００３６】
ケース２の判定フローをより詳細に説明する。エアコンがオフからオンになる時刻ｔ５０から時刻ｔ５１のあいだは、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さいが、フィードバック項ＦＢは、値ＦＢＵより大きくはない。したがって、ケース１と同様に、ステップ３１０以降、ステップ３１２、ステップ３１８およびステップ３５０の順に制御が移る。その結果、時刻ｔ５０〜時刻ｔ５１のあいだ、学習項ＬＲは更新されず、一定のままである。
【００３７】
時刻ｔ５１〜時刻ｔ５２のあいだは、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さくはなく、かつフィードバック項ＦＢも値ＦＢＵより大きくはない。したがって、やはりケース１と同様に、ステップ３１０以降、ステップ３１２、ステップ３１８およびステップ３５０の順に制御が移る。その結果、時刻ｔ５１〜時刻ｔ５２のあいだ、学習項ＬＲは更新されず、一定のままである。
【００３８】
時刻ｔ５２以降においては、フィードバック項ＦＢが値ＦＢＵより大きいので、ステップ３１０以降、ステップ３１２からステップ３１４に制御が移る。ステップ３１４において、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さいかどうかが判定される。図５に示すように、エンジンの回転数ＮＥは、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さくはないので、ステップ３５０に制御が移る。その結果、時刻ｔ５２以降においては学習項ＬＲは更新されず、一定のままである。以上から結局、ケース２においてもケース１と同様、学習項ＬＲは更新されず、一定のままである。
【００３９】
（ケース３）
図６に示すケース３においては、フィードバック項ＦＢが時刻ｔ６１以降において所定値ＦＢＵより大きい。しかも時刻ｔ６０〜時刻ｔ６２においては、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さい。したがって時刻ｔ６１〜時刻ｔ６２において、学習項ＬＲは更新される。その結果、時刻ｔ６１〜時刻ｔ６２において学習項ＬＲは、単位時間あたり一定の増分で大きくなる。
【００４０】
ケース３の判定フローをより詳細に説明する。エアコンがオフからオンになる時刻ｔ６０から時刻ｔ６１のあいだは、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さいが、フィードバック項ＦＢは、値ＦＢＵより大きくはない。したがって、ケース１と同様に、ステップ３１０以降、ステップ３１２、ステップ３１８およびステップ３５０の順に制御が移る。その結果、時刻ｔ６０〜時刻ｔ６１のあいだは、学習項ＬＲは更新されず、一定のままである。
【００４１】
時刻ｔ６１〜時刻ｔ６２のあいだは、フィードバック項ＦＢが値ＦＢＵより大きく、かつエンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さい。したがって、ステップ３１０以降、ステップ３１２、ステップ３１４、ステップ３１６およびステップ３５０の順に制御が移る。その結果、学習項ＬＲは更新される。時刻ｔ６１〜時刻ｔ６２のあいだは、単位時間あたり一定の回数だけステップ３１６が実行されるので、図６の学習項ＬＲのグラフに示されるように、一定の傾きで学習項ＬＲは増加する。
【００４２】
時刻ｔ６２以降においては、フィードバック項ＦＢが値ＦＢＵより大きいので、ステップ３１０以降、ステップ３１２からステップ３１４に制御が移る。ステップ３１４において、エンジンの回転数ＮＥが、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さいかどうかが判定される。図６に示すように、エンジンの回転数ＮＥは、目標回転数ＮＴ（ｒｐｍ）から８０（ｒｐｍ）を減じた値より小さくはないので、ステップ３５０に制御が移る。その結果、時刻ｔ６２以降においては、学習項ＬＲは更新されず、一定のままである。
【００４３】
ステップ３１２および３１８において、フィードバック項ＦＢの上限値ＦＢＵ０および下限値ＦＢＬ０から、それぞれ値ＦＢＵおよび値ＦＢＬを算出するために用いた値ＦＢＵΔおよび値ＦＢＬΔは、上述の値に限られない。しかし、学習値ＬＲの更新についての条件が成立しやすくパラメータを設定することによって、より迅速な制御をおこなうためには、値ＦＢＵΔおよび値ＦＢＬΔは正の値をとることが好ましい。
【００４４】
ステップ３１４において目標回転数ＮＴから減じる８０（ｒｐｍ）およびステップ３２０において目標回転数ＮＴに加える２００（ｒｐｍ）は、これらの値には限られず、制御対象であるエンジンの特性などに応じて変更してもよい。
【００４５】
本発明によれば、上述のようにフィードバック項ＦＢが所定の範囲からはずれた場合（つまり所定値より大きいか、または所定値より小さい場合）において、エンジン回転数ＮＥおよび目標回転数ＮＴの回転数偏差が所定の値より大きいときにだけ、学習項ＬＲを更新する。これにより更新する必要がないにもかかわらず、学習項ＬＲが更新される、いわゆる「誤学習」を防止することができる。言い換えると本発明によれば、エンジン負荷の変動が大きいときや、制御系の経時変化に起因する誤差が大きいときなど、更新の必要があるときにだけ学習項ＬＲを更新する。その結果、ＩＳＣの不良に起因するエンストなどを防止することができる。また、エンジン負荷の変動が大きいときにも、エンジン回転数ＮＥを短い時間で目標回転数ＮＴに収束させることができる。
【００４６】
上述の説明では、エンジンの負荷が大きくなり、エンジン回転数ＮＥが低下する原因としてエアコンがオフからオンになることを想定しているが、これには限られない。例えば、見込み空気量を大きくとる必要がある補機がオフからオンになる場合について、図３の制御を適用してもよい。またシガレットプラグなどから大電流を取り出すなど、オルタネータの負荷が大きいときに同様の制御を適用してもよい。
【００４７】
【発明の効果】
本発明によれば、ＩＳＣにおいて、更新が不必要なときに学習項ＬＲを更新してしまう誤学習を防ぐとともに、エンジン負荷の変動が大きいときにエンジン回転数ＮＥを速く目標回転数ＮＴに収束できる内燃機関のアイドル回転数制御装置を提供することができる。
【図面の簡単な説明】
【図１】本発明によるアイドル回転数制御装置１００の概略構成図である。
【図２】フィードバック制御の制御ループの概略図である。
【図３】本発明による内燃機関のアイドル回転数制御装置を制御するＩＳＣ用プログラムのステップを示すフローチャートである。
【図４】ケース１における本発明による内燃機関のアイドル回転数制御装置における、エアコンの状態、エンジン回転数ＮＥ、目標回転数ＮＴ、フィードバック項ＦＢおよび学習項ＬＲの変化を示すグラフである。
【図５】ケース２における本発明による内燃機関のアイドル回転数制御装置における、エアコンの状態、エンジン回転数ＮＥ、目標回転数ＮＴ、フィードバック項ＦＢおよび学習項ＬＲの変化を示すグラフである。
【図６】ケース３における本発明による内燃機関のアイドル回転数制御装置における、エアコンの状態、エンジン回転数ＮＥ、目標回転数ＮＴ、フィードバック項ＦＢおよび学習項ＬＲの変化を示すグラフである。
【符号の説明】
３０２、３０４、３０６、３０８、３１０、３１２、３１４、３１６、３１８、３２０、３２２、３３０、３３２、３３４、３３６、３５０  制御プログラムのステップ
【図１】
0003911317.tif 000003
【図２】
0003911317.tif 000004
【図３】
0003911317.tif 000005
【図４】
0003911317.tif 000006
【図５】
0003911317.tif 000007
【図６】
0003911317.tif 000008