図1は、本発明の一実施例としての駆動装置を搭載する電気自動車20の構成の概略を示す構成図である。実施例の電気自動車20は、図示するように、モータ32と、インバータ34と、蓄電装置としてのバッテリ36と、昇圧コンバータ40と、電子制御ユニット50と、を備える。
モータ32は、三相の同期発電電動機として構成されており、永久磁石が埋め込まれた回転子と、三相コイルが巻回された固定子と、を備える。このモータ32の回転子は、駆動輪22a,22bにデファレンシャルギヤ24を介して連結された駆動軸26に接続されている。
インバータ34は、モータ32の駆動に用いられる。このインバータ34は、高電圧側電力ライン42を介して昇圧コンバータ40に接続されており、6つのスイッチング素子としてのトランジスタT11〜T16と、6つのトランジスタT11〜T16のそれぞれに並列に接続された6つのダイオードD11〜D16と、を有する。トランジスタT11〜T16は、それぞれ、高電圧側電力ライン42の正極側ラインと負極側ラインとに対してソース側とシンク側になるように2個ずつペアで配置されている。また、トランジスタT11〜T16の対となるトランジスタ同士の接続点の各々には、モータ32の三相コイル(U相,V相,W相のコイル)の各々が接続されている。したがって、インバータ34に電圧が作用しているときに、電子制御ユニット50によって、対となるトランジスタT11〜T16のオン時間の割合が調節されることにより、三相コイルに回転磁界が形成され、モータ32が回転駆動される。高電圧側電力ライン42の正極側ラインと負極側ラインとには、平滑用のコンデンサ46が取り付けられている。
バッテリ36は、例えばリチウムイオン二次電池やニッケル水素二次電池として構成されており、低電圧側電力ライン44を介して昇圧コンバータ40に接続されている。低電圧側電力ライン44の正極側ラインと負極側ラインとには、平滑用のコンデンサ48が取り付けられている。
昇圧コンバータ40は、高電圧側電力ライン42と低電圧側電力ライン44とに接続されており、2つのトランジスタT31,T32と、2つのトランジスタT31,T32のそれぞれに並列に接続された2つのダイオードD31,D32と、リアクトルLと、を有する。トランジスタT31は、高電圧側電力ライン42の正極側ラインに接続されている。トランジスタT32は、トランジスタT31と、高電圧側電力ライン42および低電圧側電力ライン44の負極側ラインと、に接続されている。リアクトルLは、トランジスタT31,T32同士の接続点と、低電圧側電力ライン44の正極側ラインと、に接続されている。昇圧コンバータ40は、電子制御ユニット50によって、トランジスタT31,T32のオン時間の割合が調節されることにより、低電圧側電力ライン44の電力を昇圧して高電圧側電力ライン42に供給したり、高電圧側電力ライン42の電力を降圧して低電圧側電力ライン44に供給したりする。
電子制御ユニット50は、CPU50aを中心とするマイクロプロセッサとして構成されており、CPU50aの他に、処理プログラムを記憶するROM50bやデータを一時的に記憶するRAM50c、図示しない入出力ポートを備える。電子制御ユニット50には、各種センサからの信号が入力ポートを介して入力されている。電子制御ユニット50に入力される信号としては、例えば、モータ32の回転子の回転位置を検出する回転位置検出センサ(例えばレゾルバ)32aからの回転位置θmや、モータ32の各相の相電流を検出する電流センサ32u,32vからの相電流Iu,Ivを挙げることができる。また、バッテリ36の端子間に取り付けられた電圧センサ36aからの電圧Vbや、バッテリ36の出力端子に取り付けられた電流センサ36bからの電流Ibも挙げることができる。さらに、コンデンサ46の端子間に取り付けられた電圧センサ46aからのコンデンサ46(高電圧側電力ライン42)の電圧VHや、コンデンサ48の端子間に取り付けられた電圧センサ48aからのコンデンサ48(低電圧側電力ライン44)の電圧VLも挙げることができる。加えて、イグニッションスイッチ60からのイグニッション信号や、シフトレバー61の操作位置を検出するシフトポジションセンサ62からのシフトポジションSPも挙げることができる。また、アクセルペダル63の踏み込み量を検出するアクセルペダルポジションセンサ64からのアクセル開度Accや、ブレーキペダル65の踏み込み量を検出するブレーキペダルポジションセンサ66からのブレーキペダルポジションBP,車速センサ68からの車速Vも挙げることができる。電子制御ユニット50からは、各種制御信号が出力ポートを介して出力されている。電子制御ユニット50から出力される信号としては、例えば、インバータ34のトランジスタT11〜T16へのスイッチング制御信号や、昇圧コンバータ40のトランジスタT31,T32へのスイッチング制御信号を挙げることができる。電子制御ユニット50は、回転位置検出センサ32aからのモータ32の回転子の回転位置θmに基づいてモータ32の電気角θeや回転数Nmを演算している。以下、こうして演算されるモータ32の電気角θeや回転数Nmを「検出電気角(現在電気角)θedet」や「検出回転数(現在回転数)Nmdet」という。
こうして構成された実施例の電気自動車20では、電子制御ユニット50は、アクセル開度Accと車速Vとに基づいて駆動軸26に要求される要求トルクTd*を設定し、設定した要求トルクTd*をモータ32の制御用上限トルクTmmax*で制限(上限ガード)してモータ32のトルク指令Tm*に設定する。そして、モータ32のトルク指令Tm*を用いてインバータ34のトランジスタT11〜T16を同期パルス幅変調制御(同期PWM制御)により制御する。また、電子制御ユニット50は、モータ32をトルク指令Tm*で駆動できるように高電圧側電力ライン42の目標電圧VH*を設定し、高電圧側電力ライン42の電圧VHが目標電圧VH*となるように昇圧コンバータ40のトランジスタT31,T32のスイッチング制御を行なう。
次に、実施例の電気自動車20の動作、特に、電子制御ユニット50によるインバータ34の制御および制御用上限トルクTmmax*の設定処理について説明する。電子制御ユニット50は、図2に示すように、機能ブロックとして、同期数判定処理部52と、同期PWM制御部54と、マップ引き演算処理部56と、を備える。
同期数判定処理部52は、モータ32の検出回転数(現在回転数)Nmdetと回転数−同期数テーブルとを用いて探索用回転数Nsearchと制御用キャリア周波数fc*とを設定する。同期PWM制御部54は、同期数判定処理部52からの制御用キャリア周波数fc*を用いて同期PWM制御によりインバータ34を制御する。マップ引き演算処理部56は、モータ32の検出回転数Nmdetと同期数判定処理部52からの探索用回転数Nsearchと回転数−上限トルクテーブルとを用いてモータ32の制御用上限トルクTmmax*を設定する(回転数−上限トルクテーブルから抽出する)。以下、同期数判定処理部52、同期PWM制御部54、マップ引き演算処理部56の詳細について順に説明する。なお、実施例では、同期PWM制御に用いる搬送波の半周期間隔や1周期間隔で同期数判定処理部52、同期PWM制御部54、マップ引き演算処理部56の処理を実行するものとした。
同期数判定処理部52による処理について説明する。図3は、同期数判定処理部52により実行される第1処理ルーチンの一例を示すフローチャートである。第1処理ルーチンが実行されると、同期数判定処理部52は、最初に、モータ32の検出回転数(現在回転数)Nmdetを入力する(ステップS100)。ここで、モータ32の検出回転数Nmdetは、回転位置検出センサ32aからのモータ32の回転子の回転位置θmに基づいて演算した値を入力するものとした。
続いて、変数iに値1を設定し(ステップS110)、回転数−同期数テーブルから、領域番号Aの最大値Amaxと、領域番号Aが変数iのときの切替閾値Nsy[i]および同期数Sy[i]と、を抽出する(ステップS120)。図4は、回転数−同期数テーブルの一例を示す説明図である。図4の回転数−同期数テーブルは、領域番号A(A[k](k=1〜n))と切替閾値Nsy(Nsy[k])と同期数Sy(Sy[k])との関係を定めたテーブルである。切替閾値Nsy[j](j=1〜n−1)は、それぞれ搬送波の同期数Nsyを同期数N[j]と同期数N[j+1]とで切り替えるモータ32の回転数Nmであり、切替閾値Nsy[n]は、モータ32の最大回転数である。切替閾値Nsy[1]〜Nsy[n]および同期数Sy[1]〜Sy[n]は、後述の制御用キャリア周波数fcが値fc1(例えば数kHz程度)よりも大きく且つ値fc2(例えば10kHz程度)以下の範囲内となるように設定される。領域A[k]は、それぞれ切替閾値Nsy[k]および同期数Sy[k]に対応する領域の番号である。ステップS120の処理では、図4の回転数−同期数テーブルにおいて、領域番号Aの降順で最初の値(値n))を領域番号Aの最大値Amaxとして抽出すると共に、領域番号Aの昇順または降順で変数iと領域番号Aとを比較しながら変数iに等しい領域番号Aを抽出し、この領域番号A(=i)に対応する切替閾値Nsy[A]および同期数Sy[A]を抽出する。
次に、変数iを領域番号Aの最大値Amaxと比較し(ステップS130)、変数iが領域番号Aの最大値Amax未満のときには、モータ32の検出回転数Nmdetを切替閾値Nsy[i]と比較する(ステップS140)。そして、モータ32の検出回転数Nmdetが切替閾値Nsy[i]よりも大きいときには、変数iを値1だけインクリメントして(ステップS150)、ステップS120に戻る。
ステップS140でモータ32の検出回転数Nmdetが切替閾値Nsy[i]以下のときには、切替閾値Nsy[i]を探索用回転数Nsearchに設定し(ステップS160)、同期数Sy[i]を制御用同期数Sy*に設定し(ステップS170)、モータ32の検出回転数Nmdetと制御用同期数Sy*と換算係数ρとの積(Nmdet×Nsy*×ρ)を制御用キャリア周波数fc*に設定して(ステップS180)、本ルーチンを終了する。探索用回転数Nsearchは、複数の切替閾値Nsyのうち、モータ32の検出回転数Nmdetよりも大きい範囲内で最小のものとなる。また、換算係数ρは、モータ32の極対数などに基づいて定められる。
ステップS130で変数iが領域番号Aの最大値Amaxに等しいときには、ステップS140の処理を実行せずに、ステップS160〜S180の処理により、探索用回転数Nsearch、制御用同期数Sy*、制御用キャリア周波数fc*を設定して、本ルーチンを終了する。
図5は、図3の第1処理ルーチンにより制御用キャリア周波数fc*を設定する場合の、モータ32の回転数Nmと制御用同期数Sy*と制御用キャリア周波数fc*との関係の一例を示す説明図である。図示するように、制御用キャリア周波数fc*は、制御用同期数Sy*が一定の範囲内で、モータ32の回転数Nmが大きいほど高くなり、モータ32の回転数Nmが切替閾値Nsy[k]のときに値fc2で最大となる。
次に、同期PWM制御部54による処理について説明する。同期PWM制御部54は、最初に、同期数判定処理部52からの制御用キャリア周波数fc*に加えて、モータ32の検出電気角(現在電気角)θedetやU相,V相の相電流Iu,Ivなどのデータを入力する。ここで、モータ32の検出電気角θedetは、回転位置検出センサ32aからのモータ32の回転子の回転位置θmに基づいて演算した値を入力するものとした。U相,V相の総電流Iu,Ivは、電流センサ32u,32vにより検出された値を入力するものとした。
続いて、モータ32の各相(U相,V相,W相)の相電流Iu,Iv,Iwの総和が値0であるとして、モータ32の検出電気角θedetを用いてU相,V相の相電流Iu,Ivをd軸,q軸の電流Id,Iqに座標変換(3相−2相変換)する。そして、モータ32のトルク指令Tm*に基づいてd軸,q軸の電流指令Id*,Iq*を設定し、d軸,q軸の電流指令Id*,Iq*および電流Id,Iqを用いて式(1)および式(2)によりd軸,q軸の電圧指令Vd*,Vq*を設定する。ここで、式(1)および式(2)は、d軸,q軸の電流指令Id*,Iq*と電流Id,Iqとの差分が打ち消されるようにするための電流フィードバック制御における関係式であり、式(1)および式(2)中、「kd1」,「kq1」は,比例項のゲインであり、「kd2」,「kq2」は、積分項のゲインである。
Vd*=kd1×(Id*−Id)+kd2×∫(Id*−Id)dt (1)
Vq*=kq1×(Iq*−Iq)+kq2×∫(Iq*−Iq)dt (2)
そして、モータ32の検出電気角θedetを用いてd軸,q軸の電圧指令Vd*,Vq*を各相の電圧指令Vu*,Vv*,Vw*に座標変換(2相−3相変換)する。また、モータ32の検出電気角θedetおよび制御用キャリア周波数fc*を用いて搬送波(三角波)を生成する。こうして各相の電圧指令Vu*,Vv*,Vw*と搬送波とを生成すると、各相の電圧指令Vu*,Vv*,Vw*と搬送波との比較によりトランジスタT11〜T16のPWM信号を生成し、このトランジスタT11〜T16のPWM信号をを用いてトランジスタT11〜T16のスイッチングを行なう。
次に、マップ引き演算処理部56の処理について説明する。図6は、マップ引き演算処理部56により実行される第2処理ルーチンの一例を示すフローチャートである。第2処理ルーチンが実行されると、マップ引き演算処理部56は、最初に、モータ32の検出回転数Nmdetや、同期数判定処理部52からの探索用回転数Nsearchなどのデータを入力する(ステップS200)。
そして、図7の回転数−上限トルクテーブルにおける、探索用回転数Nsearchに対応するモータ32の回転数Nm(格子点)を初期回転数Nminiとして抽出する(ステップS210)。ここで、図7の回転数−上限トルクテーブルは、モータ32の回転数Nmと上限トルクTmmaxとの関係を定めたテーブルであり、実施例では、図8のモータ32の回転数Nmと上限トルクTmmaxとの関係を定めたマップにおける各格子点としての各白丸印(例えば、モータ32の回転数Nmで100rpm間隔の各格子点)の回転数Nmと上限トルクTmmaxとの各組み合わせをまとめたもの(一覧にしたもの)に相当する。なお、各格子点は、モータ32の回転数Nmで、100rpm間隔以外の間隔、例えば、50rpm間隔や200rpm間隔であるものとしてもよいし、一律の間隔でないものとしてもよい。ステップS210の処理では、図7の回転数−上限テーブルにおける探索用回転数Nsearchに最も近いモータ32の回転数(格子点)を初期回転数Niniとして抽出する。
こうして初期回転数Nminiを抽出すると、初期回転数Nminiからモータ32の検出回転数Nmdet側に、モータ32の検出回転数(現在回転数)Nmdetと回転数−上限テーブルにおけるモータ32の回転数Nmとを比較しながら順に探索し、図7の回転数−上限テーブルにおける、モータ32の検出回転数Nmdetに対応するモータ32の回転数Nm(格子点)を対応回転数Nmcoとして抽出する(ステップS220)。この処理では、図7の回転数−上限テーブルにおけるモータ32の検出回転数Nmdetに最も近いモータ32の回転数Nm(格子点)を対応回転数Nmcoとして抽出する。
こうして対向回転数Nmcoを抽出すると、図7の回転数−上限テーブルにおける、対応回転数Nmcoに対応する上限トルクTmmaxを制御用上限トルクTmmax*として抽出して(ステップS230)、本ルーチンを終了する。こうして抽出したモータ32の制御用上限トルクTmmax*は、要求トルクTd*からモータ32のトルク指令Tm*を設定する際の制限(上限ガード)として用いられる。
ここで、実施例および比較例の手法において、図7の回転数−上限テーブルからモータ32の検出回転数(現在回転数)Nmdetに対応する制御用上限トルクTmmax*を抽出する際の探索回数Fp,Fcおよび電子制御ユニット50の処理負荷Lp,Lcについて説明する。実施例の手法では、複数の切替閾値Nsyのうちモータ32の検出回転数Nmdetよりも大きい範囲内で最小のものを探索用回転数Nsearchに設定するのに対して、比較例の手法では、モータ32の前回の検出回転数(前回Nmdet)を探索用回転数Nsearchに設定するものとした。
実施例および比較例の手法における探索回数Fp,Fcは、初期回転数Nminiと、対応回転数Nmcoと、図7のマップにおける回転数軸の刻み幅(例えば100rpm)Δxと、を用いて式(3)により求めることができる。また、電子制御ユニット50の処理負荷Lpは、探索回数Fpと、制御用キャリア周波数fc*(モータ32の検出回転数Nmdetと制御用同期数Sy*と換算係数ρとの積)と、電子制御ユニット50のCPU50aの演算速度Scpuと、対応回転数Nmcoを抽出した後に制御用上限トルクTmmaxを抽出するのに要する処理時間Tproと、を用いて式(4)により求めることができる。そして、式(3)を式(4)に代入すると、式(5)が得られる。
Fp,Fc=|Nmco-Nmini|/Δx+1 (3)
Lp,Lc=(Fp/Scpu×fc*+Tpro)/Scpu (4)
Lp,Lc=((|Nmco-Nmini|/Δx+1)/Scpu×fc*+Tpro)/Scpu (5)
実施例では、式(3)および式(5)において、近似的に、「Nmini」,「Nmco」をそれぞれ「Nsy[i]」,「Nmdet」に置き換えて考えることができる。また、比較例では、式(3)および式(5)において、近似的に、「Nmini」,「Nmco」を「前回Nmdet」,「Nmdet」に置き換えて考えることができる。
図9は、実施例および比較例の探索回数Fp,Fcおよび電子制御ユニット50の処理負荷Lp,Lcの一例を示す説明図である。図示するように、実施例の探索回数Fpや電子制御ユニット50の処理負荷Lpは、比較例の探索回数Fcや電子制御ユニット50の処理負荷Lcに比して、モータ32の回転数Nmが対応する切替閾値Nsy(複数の切替閾値Nsyのうちモータ32の検出回転数Nmdetよりも大きい範囲内で最小のもの)に近いとき、即ち、制御用キャリア周波数fc*が高くインバータ34の制御周期が短いときに、小さくなっている。
以上説明した実施例の電気自動車20に搭載される駆動装置では、複数の切替閾値Nsy[k](k=1〜n)のうちモータ32の検出回転数Nmdetよりも大きい範囲内で最小のものを探索用回転数Nsearchに設定し、回転数−上限トルクテーブルにおいて、探索用回転数Nsearchに対応するモータ32の回転数Nmを初期回転数Nminiとして抽出し、初期回転数Nminiからモータ32の検出回転数Nmdet側に順に探索してモータ32の検出回転数Nmdetに対応するモータ32の回転数Nmを対応回転数Nmcoとして抽出し、対応回転数Nmcoに対応する上限トルクTmmaxを制御用上限トルクTmmax*として抽出する。これにより、モータ32の回転数Nmが対応する切替閾値Nsyに近いとき、即ち、制御用キャリア周波数fc*が高くインバータ34の制御周期が短いときに、探索回数Fpや電子制御ユニット50の制御負荷Lpの低減を図ることができる。
実施例の電気自動車20に搭載される駆動装置では、電子制御ユニット50の同期数判定処理部52は、図3の第1処理ルーチンを実行するものとしたが、これに代えて、図10の第1処理ルーチンを実行するものとしてもよい。図10の第1処理ルーチンは、ステップS200〜S230の処理を追加した点を除いて、図3の第1処理ルーチンと同一である。したがって、同一の処理には同一のステップ番号を付し、その詳細な説明は省略する。
図10の第1処理ルーチンでは、同期数判定処処理部52は、ステップS140でモータ32の検出回転数Nmdetが切替閾値Nsy[i]以下のときや、ステップS130で変数iが領域番号Aの最大値Amaxに等しいときには、モータ32の検出回転数Nmdetから前回検出回転数(前回Nmdet)を減じた値の絶対値を第1差分ΔNm1として計算すると共に(ステップS200)、モータ32の検出回転数Nmdetから同期数Nsy[i]を減じた値の絶対値を第2差分ΔNm2として計算する(ステップS210)。
続いて、第1差分ΔNm1と第2差分ΔNm2とを比較する(ステップS220)。第1差分が第2差分以上のときには、切替閾値Nsy[i]を探索用回転数Nsearchに設定し(ステップS160)、ステップS170以降の処理を実行する。一方、第1差分が第2差分未満のときには、モータ32の前回検出回転数(前回Nmdet)を探索用回転数Nsearchに設定し(ステップS230)、ステップS170以降の処理を実行する。
図11は、この変形例および上述の比較例の探索回数Fp2,Fcおよび電子制御ユニット50の処理負荷Lp2,Lcの一例を示す説明図である。この変形例の探索回数Fp2は、実施例の探索回数Fpと比較例の探索回数Fcとのうちの小さい方となり、変形例の電子制御ユニット50の処理負荷Lp2は、実施例の処理負荷Lpと比較例の処理負荷Lcとのうちの小さい方となる。したがって、この変形例では、実施例に比して、探索回数Fp2および電子制御ユニット50の処理負荷Lp2をより低減することができる。
実施例の電気自動車20に搭載される駆動装置では、図7の回転数−上限トルクテーブルで、探索用回転数Nsearchに対応するモータ32の回転数Nmを初期回転数Nminiとして抽出する際には、探索用回転数Nsearchに最も近いモータ32の回転数を初期回転数Niniとして抽出するものとした。しかし、探索用回転数Nsearchよりも大きい範囲内で最小のモータ32の回転数Nm、または、探索用回転数Nsearchよりも小さい範囲内で最大のモータ32の回転数を初期回転数Niniとして抽出するものとしてもよい。
実施例の電気自動車20に搭載される駆動装置では、図7の回転数−上限テーブルにおける、モータ32の検出回転数Nmdetに対応するモータ32の回転数Nmを対応回転数Nmcoとして抽出する際には、モータ32の検出回転数Nmdetに最も近いモータ32の回転数Nmを対応回転数Nmcoとして抽出するものとした。しかし、モータ32の検出回転数Nmdetよりも大きい範囲内で最小のモータ32の回転数Nm、または、モータ32の検出回転数Nmdetよりも小さい範囲で最大のモータ32の回転数Nmを対応回転数Nmcoとして抽出するものとしてもよい。
実施例の電気自動車20に搭載される駆動装置では、図7の回転数−上限トルクテーブルを用いて、モータ32の検出回転数(現在回転数)Nmdetに対応する上限トルクTmmaxを制御用上限トルクTmmax*として抽出するものとした。しかし、モータ32の回転数Nmと同期PWM制御における電流フィードバック制御に用いるゲインkd1,kq1,kd2,kq2との関係を定めた回転数−ゲインテーブルを用いて、モータ32の検出回転数Nmdetに対応するゲインkd1,kq1,kd2,kq2を抽出するものとしてもよい。また、モータ32の回転数Nmとモータ32の駆動に必要な高電圧側電力ライン42の下限電圧VHminとの関係を定めた回転数−下限電圧テーブルを用いて、モータ32の検出回転数Nmdetに対応する高電圧側電力ライン42の下限電圧VHminを抽出するものとしてもよい。この場合、モータ32のトルク指令Tm*に基づいて高電圧側電力ライン42の要求電圧VHtagを設定し、この要求電圧VHtagを下限電圧VHminで制限(下限ガード)して高電圧側電力ライン42の目標電圧VH*を設定するものとしてもよい。
実施例の電気自動車20に搭載される駆動装置では、蓄電装置として、バッテリ36を用いるものとしたが、蓄電可能な装置であればよく、キャパシタなどを用いるものとしてもよい。
実施例の電気自動車20に搭載される駆動装置では、インバータ34とバッテリ36との間に昇圧コンバータ40を設けるものとしたが、昇圧コンバータを設けないものとしてもよい。
実施例では、モータ32を備える電気自動車20に搭載される駆動装置の形態とした。しかし、モータ32に加えてエンジンも備えるハイブリッド自動車に搭載される駆動装置の形態としてもよいし、自動車以外の車両や船舶、航空機などの移動体に搭載される駆動装置の形態としてもよいし、建設設備などの移動しない設備に搭載される駆動装置の形態としてもよい。
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、モータ32が「モータ」に相当し、インバータ34が「インバータ」が相当し、電子制御ユニット50が「制御装置」に相当する。
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。