(57)【特許請求の範囲】
【請求項１】
モータを駆動するためのＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号によりモータを制御するため予め定められた時間を一周期とする制御時間帯を使って供給電力を制御し、直流モータを駆動するようにした制御方法において、
モータから検出された現在位置，現在速度，モータ電流のいずれか二つ以上の現状情報と、制御目標値および制御形態からなる制御入力情報とにより、前記ＰＷＭ信号が割り当てられる周期Ｔの制御時間帯をｎ等分して得られる細時間帯のうちの異なる一つまたは連続する複数の細時間帯を使って、演算しようとする全ての制御形態についてのＰＷＭ目標値のそれぞれを個別に演算し、
演算された全てのＰＷＭ目標値の中から、指定のあった制御形態に対応する一つをＰＷＭ選択値として現在の制御時間帯内で選択し、
直前の制御時間帯において選択されているＰＷＭ選択値に見合うＰＷＭ信号を、現在の制御時間帯の全ての細時間帯を使って出力し、
前記細時間帯ごとに割り当てられた処理または演算を予め決められたタイミングで開始させると共に、全ての処理および演算を一つの制御時間帯内で完了させるようにしたことを特徴とする直流モータのサーボ制御法。
【請求項２】
前記ＰＷＭ目標値の中からＰＷＭ選択値を選択する際、制御入力情報によって指定された制御形態に該当するＰＷＭ目標値が、モータの最大許容電流に対応するＰＷＭ最大許容値を越える場合に、他の制御形態に該当するＰＷＭ値であって当該他の制御形態におけるＰＷＭ最大許容値を越えない値を、前記ＰＷＭ選択値として選択することを特徴とする請求項１に記載された直流モータのサーボ制御法。
【請求項３】
前記ＰＷＭ選択値が変更前のＰＷＭ選択値と異なる場合には、後続する幾つかの制御時間帯を使って変更後のＰＷＭ選択値に徐々に近づけるためのＰＷＭ漸変値を求め、該ＰＷＭ漸変値に見合ったモータに衝撃を加えることのないＰＷＭ信号を出力するようにしたことを特徴とする請求項１または請求項２に記載された直流モータのサーボ制御法。
【請求項４】
モータを駆動するためのＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号によりモータを制御するため予め定められた時間を一周期とする制御時間帯を使って供給電力を制御し、直流モータを駆動するようにした制御方法において、
モータから検出された現在位置，現在速度，モータ電流のいずれか一つの現状情報と、制御目標値である制御入力情報とにより、制御形態に応じたＰＷＭ目標値を個別に演算できるようにしておくため、前記ＰＷＭ信号が割り当てられる周期Ｔの制御時間帯をｎ等分して得られる細時間帯のうちの異なる一つまたは連続する複数の細時間帯を、演算可能とした全ての制御形態についてのＰＷＭ目標値ごとにそれぞれ確保しておき、
前記制御入力情報によって指定された制御目標値と該制御目標値によって自ずと決まる制御形態のみに従うＰＷＭ目標値の演算を、前記周期Ｔの現在の制御時間帯で完了し、
直前の制御時間帯において演算されているＰＷＭ目標値に見合うＰＷＭ信号を、現在の制御時間帯の全ての細時間帯を使って出力し、
前記細時間帯ごとに割り当てられた処理または演算を予め決められたタイミングで開始させることができると共に、指定された制御形態に従うＰＷＭ目標値を得るための処理および演算を一つの制御時間帯内で完了させるようにしたことを特徴とする直流モータのサーボ制御法。
【請求項５】
前記ＰＷＭ目標値が変更前のＰＷＭ目標値と異なる場合には、後続する幾つかの制御時間帯を使って変更後のＰＷＭ目標値に徐々に近づけるためのＰＷＭ漸変値を求め、該ＰＷＭ漸変値に見合ったモータに衝撃を加えることのないＰＷＭ信号を出力するようにしたことを特徴とする請求項４に記載された直流モータのサーボ制御法。
【請求項６】
前記制御目標値は位置制御，速度制御，トルク制御のうちの少なくとも二種のための目標値であることを特徴とする請求項１ないし請求項５のいずれか一項に記載された直流モータのサーボ制御法。
【請求項７】
サーボ制御開始後最初の制御時間帯における演算を開始する前に、演算の対象となる全ての制御目標値と制御形態について暫定値を与えておき、サーボ制御開始後予め決められた時間が経過した時点から最初の制御時間帯における演算を実行することを特徴とする請求項１ないし請求項６のいずれか一項に記載された直流モータのサーボ制御法。
【請求項８】
前記モータから検出された検出情報のうち位置情報は、モータ出力軸の現在位置を演算する細時間帯から遡るｎ個の細時間帯で検出されている出力軸位置信号を積算して得られた増減値を、時間Ｔ遡った細時間帯で求められている位置情報に加算して得ることを特徴とする請求項１ないし請求項７のいずれか一項に記載された直流モータのサーボ制御法。
【請求項９】
前記モータから検出された検出情報のうち位置情報は、直前の制御時間帯の全細時間帯で検出されているモータ出力軸の位置信号が積算して得られた増減値を、２周期前の制御時間帯で求められている位置情報に加算して得ることを特徴とする請求項１ないし請求項７のいずれか一項に記載された直流モータのサーボ制御法。
【請求項１０】
前記モータから検出された検出情報のうち速度情報は、前記出力軸の位置信号の増減値であることを特徴とする請求項８または請求項９に記載された直流モータのサーボ制御法。
【請求項１１】
前記各細時間帯では少なくとも出力軸の位置信号の検出とＰＷＭ信号の出力とを実行することを特徴とする請求項１ないし請求項１０のいずれか一項に記載された直流モータのサーボ制御法。
【請求項１２】
前記出力軸の位置信号の検出とＰＷＭ信号の出力の何れか一方の処理は前記細時間帯の開始当初に実行され、他方の処理は前記一方の処理が完了した直後に開始されることを特徴とする請求項１１に記載された直流モータのサーボ制御法。
【請求項１３】
モータ情報検出器からの現状情報と制御目標値を含む上位制御機器から指令された制御入力情報とによりＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号を電力供給器に出力するＰＷＭ制御手段を備えた直流モータのサーボ制御装置において、
上記ＰＷＭ制御手段には、
モータへの供給電力を決定するＰＷＭ信号が割り当てられる周期Ｔの制御時間帯中に予め決められた全ての処理および演算を完了させると共に、該制御時間帯をｎ等分して得られる細時間帯ごとに割り当てられた処理または演算の開始を指示する同期管理部と、
複数のＰＷＭ目標値のそれぞれを、前記周期Ｔの一つの制御時間帯内で異なる一つまたは複数の細時間帯を使って個別に演算するＰＷＭ演算部と、
制御形態ごとに演算されたＰＷＭ目標値の中から一つをＰＷＭ選択値として現在の制御時間帯内で選択するＰＷＭ目標値選択部と、
直前の制御時間帯において選択されているＰＷＭ選択値をＰＷＭ指令値として受け、該ＰＷＭ指令値に見合ったＰＷＭ信号を現在の制御時間帯の全ての細時間帯を使って出力するＰＷＭ指令部と、
が備えられていることを特徴とする直流モータのサーボ制御装置。
【請求項１４】
前記ＰＷＭ目標値選択部は、各制御目標値をもとに演算されたＰＷＭ目標値の中から、制御入力情報で指定されている制御形態に該当するＰＷＭ目標値をＰＷＭ選択値として選択する指定形態目標値選択部であることを特徴とする請求項１３に記載された直流モータのサーボ制御装置。
【請求項１５】
前記指定形態目標値選択部に入力される全てのＰＷＭ目標値は、モータの最大許容電流に対応するＰＷＭ最大許容値以下に制限されることを特徴とする請求項１４に記載された直流モータのサーボ制御装置。
【請求項１６】
前記ＰＷＭ目標値選択部は、各制御目標値をもとに演算されたＰＷＭ目標値の中から、制御入力情報で指定されている制御形態に該当するＰＷＭ目標値として選択された目標値が、モータの最大許容電流に対応するＰＷＭ最大許容値を越えている場合には、他の制御形態に該当するＰＷＭ目標値であって当該他の制御形態におけるＰＷＭ最大許容値を越えない目標値を、ＰＷＭ選択値として選択する形態自動変更目標値選択部であることを特徴とする請求項１３に記載された直流モータのサーボ制御装置。
【請求項１７】
前記形態自動変更目標値選択部に入力されるＰＷＭ目標値は、少なくともトルクに関して演算されたＰＷＭ目標値が、モータの最大許容電流に対応するトルク制御におけるＰＷＭ最大許容値以下に制限されていることを特徴とする請求項１６に記載された直流モータのサーボ制御装置。
【請求項１８】
前記ＰＷＭ目標値選択部とＰＷＭ指令部との間には、ＰＷＭ選択値が変更前のＰＷＭ選択値と異なる場合に、後続する幾つかの制御時間帯を使って変更後のＰＷＭ選択値に徐々に近づけるためのＰＷＭ漸変値を求め、該ＰＷＭ漸変値をＰＷＭ指令値としてＰＷＭ指令部に出力するＰＷＭ漸変値算出部が設けられ、モータに衝撃を加えることのないＰＷＭ信号が出力されるようにしたことを特徴とする請求項１３ないし請求項１７のいずれか一項に記載された直流モータのサーボ制御装置。
【請求項１９】
モータ情報検出器からの現状情報と制御目標値を含む上位制御機器から指令された制御入力情報とによりＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号を電力供給器に出力するＰＷＭ制御部を備えた直流モータのサーボ制御装置において、
上記ＰＷＭ制御部には、
モータへの供給電力を決定するＰＷＭ信号が割り当てられる周期Ｔの制御時間帯中に予め決められた処理および演算を完了させると共に、該制御時間帯をｎ等分して得られる細時間帯ごとに割り当てられた処理または演算の開始を指示する同期管理部と、
複数のＰＷＭ目標値のそれぞれを、前記周期Ｔの一つの制御時間帯内で異なる一つまたは複数の細時間帯を使って個別に演算することができるようになっていると共に、前記制御入力情報によって指定された制御形態のみに従うＰＷＭ目標値演算を前記周期Ｔの現在の制御時間帯で演算するＰＷＭ演算部と、
直前の制御時間帯において演算されているＰＷＭ目標値をＰＷＭ指令値として受け、該ＰＷＭ指令値に見合ったＰＷＭ信号を現在の制御時間帯の全ての細時間帯を使って出力するＰＷＭ指令部と、
が備えられていることを特徴とする直流モータのサーボ制御装置。
【請求項２０】
前記ＰＷＭ演算部から出力されるＰＷＭ目標値は、モータの最大許容電流に対応するＰＷＭ最大許容値以下に制限されていることを特徴とする請求項１９に記載された直流モータのサーボ制御装置。
【請求項２１】
前記ＰＷＭ演算部とＰＷＭ指令部との間には、ＰＷＭ目標値が変更前のＰＷＭ目標値と異なる場合に、後続する幾つかの制御時間帯を使って変更後のＰＷＭ目標値に徐々に近づけるためのＰＷＭ漸変値を求め、該ＰＷＭ漸変値をＰＷＭ指令値としてＰＷＭ指令部に出力するＰＷＭ漸変値算出部が設けられ、モータに衝撃を加えることのないＰＷＭ信号が出力されるようにしたことを特徴とする請求項１９または請求項２０に記載された直流モータのサーボ制御装置。
【請求項２２】
前記ＰＷＭ演算部は、位置のＰＷＭ目標値演算部、速度のＰＷＭ目標値演算部、トルクのＰＷＭ目標値演算部のうちの少なくとも二つからなっていることを特徴とする請求項１３ないし請求項２１のいずれか一項に記載された直流モータのサーボ制御装置。
【請求項２３】
位置のＰＷＭ目標値演算部には、位置信号計測部の情報をもとにモータ出力軸の現在位置を算出する位置算出部と、該位置算出部の情報と位置制御目標値とをもとに達成すべき位置を演算すると共に該達成位置に対応したＰＷＭ目標値を演算する制御位置演算部と、が設けられていることを特徴とする請求項２２に記載された直流モータのサーボ制御装置。
【請求項２４】
速度のＰＷＭ目標値演算部には、位置信号計測部の情報をもとにモータの現在速度を算出する速度算出部と、該速度算出部の情報と速度制御目標値とをもとに達成すべき速度を演算すると共に該達成速度に対応したＰＷＭ目標値を演算する制御速度演算部と、が設けられていることを特徴とする請求項２２に記載された直流モータのサーボ制御装置。
【請求項２５】
トルクのＰＷＭ目標値演算部には、電流計測部の情報とトルク制御目標値とをもとに達成すべきトルクを演算すると共に該達成トルクに対応したＰＷＭ目標値を演算する制御トルク演算部が、設けられていることを特徴とする請求項２２に記載された直流モータのサーボ制御装置。
【請求項２６】
前記ＰＷＭ制御部と上位制御機器との間で情報伝達するための情報入出力部が設けられ、該情報入出力部には前記同期管理部からの指示に従い上位制御機器から制御目標値や制御形態を含む制御入力情報を取り込み、情報ごとに前記ＰＷＭ演算部の格納部に設定する受信部が備えられていることを特徴とする請求項１３ないし請求項２５のいずれか一項に記載された直流モータのサーボ制御装置。
【請求項２７】
前記情報入出力部には、前記受信部を介して問い合わせのあった位置，速度，電流のいずれかの現時点でのデータを前記同期管理部からの指示に従い前記上位制御機器に送り出す送信部が備えられていることを特徴とする請求項２６に記載された直流モータのサーボ制御装置。
【請求項２８】
前記電力供給器を構成するトランジスタは直流モータが装着されている機構体の可動部材に取り付けられ、該可動部材の動きによってトランジスタが自然空冷され、トランジスタの放熱を促進できるようにしたことを特徴とする請求項１３ないし請求項２７のいずれか一項に記載された直流モータのサーボ制御装置。
【請求項２９】
前記情報入出力部は固有の番号を有して複数設けられると共にシリアル通信用回線で接続され、情報入出力部ごとに設置された直流モータのそれぞれに対して、位置制御，速度制御もしくはトルク制御のいずれかの制御を前記シリアル通信用回線を介して、個別に指令しまた変更できるようになっていることを特徴とする請求項１３ないし請求項２８のいずれか一項に記載された直流モータのサーボ制御装置。
【請求項３０】
前記直流モータの近傍に情報入出力部，ＰＷＭ制御部，電力供給器が配置され、複数の直流モータを組み込んだ機構体と上位制御機器を含む主制御体とが、シリアル通信用回線とサーボ電源用動力線によって接続されていることを特徴とする請求項２９に記載された直流モータのサーボ制御装置。
【請求項３１】
前記ＰＷＭ制御部と前記情報入出力部とは一つのＭＰＵで構成され、該ＭＰＵには位置検出器から出力される位置信号と電流検出器から出力される電流信号とが直接入力される一方、前記電力供給器へはＰＷＭ信号を直接出力でき、前記上位制御機器と直接に交信できるようになっていることを特徴とする請求項１３ないし請求項３０のいずれか一項に記載された直流モータのサーボ制御装置。
【請求項３２】
前記モータはブラシレス直流モータであることを特徴とする請求項１３ないし請求項３１のいずれか一項に記載された直流モータのサーボ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は直流モータのサーボ制御方法および装置に係り、詳しくは、制御形態を位置制御，速度制御，トルク制御の相互に迅速に切り替えることができるようにしたサーボ制御方法およびそのための装置に関するものである。
【０００２】
【従来の技術】
サーボ電源用動力線に介在させた電力供給器にＰＷＭ（Ｐｕｌｓｅ    Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ  ）信号を供給し、デューティ比を変えることによって位置制御，速度制御，トルク制御に必要な電力を直流モータに供給するようにしたサーボ制御装置がある。図５９は、直流モータのためのＰＷＭ式サーボ制御器の代表的な構成を示すブロック図で、制御入力情報としての位置目標値ＤＰ０  とモータ２で検出された電流Ｃｍ  や出力軸の位置信号Ｅａ  ，Ｅｂ  からＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号Ｍａ  ，Ｍｂ  により供給電力を制御して、直流モータ２を駆動するようにしている。
【０００３】
図５９中の９０は、直流モータ２のＰＷＭサーボ制御器である。７はロボットや走行台車等の図示しない機構体を動かすための主制御装置からの指令を受けて、ＰＷＭサーボ制御器９０に位置目標値ＤＰ０  を与える上位制御機器である。直流モータ２は言うまでもなくロボットアームといった可動部品を動かすための動力源であり、ＰＷＭサーボ制御のために動力線６２に介在された電力供給器３にはＰＷＭサーボ制御器９０からのＰＷＭ信号が供給される。なお、３１は直流モータ２の電流を検出する電流検出器、１はエンコーダ等の位置検出器、４６はＰＷＭ信号Ｍａ  ，Ｍｂ  を電力供給器３に出力するＰＷＭ指令部である。
【０００４】
直流モータ２の出力軸に関する位置はエンコーダ１から発生するパルスのカウントをもとにして制御されるが、図５９から分かるように、その位置のサーボ制御を行うために、電流計測部４３を設けた電流のフィードバック系が使用される。この制御系において、電流制御の目標値は電流フィードバック系の外側に構成された速度のフィードバック制御の演算値により与えられ、速度制御の目標値は速度フィードバック系の外側に構成された位置のフィードバック制御の演算値として与えられ、位置制御の目標値は上位制御機器７から与えられるようになっている。
【０００５】
また、出力軸に関する速度のサーボ制御のためにも電流フィードバック系と速度フィードバック系が使用され、速度の目標値は上位制御機器７から与えられる。トルクのサーボ制御のためにも電流フィードバック系が使用され、トルクの目標値は上位制御機器７から指示される。
【０００６】
ちなみに、直流モータは、電流Ｃｍ  に比例したトルクＴＭ  を発生する。この関係は直流モータ固有のトルク定数Ｋｔ  を使って、ＴＭ  ＝Ｃｍ  ×Ｋｔ  と表すことができる。発生したトルクＴＭ  によりモータを含めた負荷のイナーシャＪに対応する加速度が発生し、時間の積分で回転速度は変化し、さらに時間積分で回転の位置θも変化する。これを、回転速度に比例した粘性抵抗Ｃｖ  とばね定数Ｋと摩擦力Ｍとを考慮した運動方程式で表すと、次式のように与えられる。
【数１】
0003542032.tif 000002
従来の制御においては、この運動方程式に基づいて直流モータを制御するようしているため、図５９に示す多重ループの制御が必要となっている。
【０００７】
前述したように、電流ループと速度ループと位置ループとは時間的な積分関係にあるために、各々の過渡特性も大きく異なる。電流ループでは１００Ｈｚ以上の高速応答が可能であるが、速度ループでは２０〜９０Ｈｚの応答、位置ループでは１０〜２０Ｈｚの応答となる。このために従来技術だけでは制御形態を切り替えたときに大きな衝撃が発生することになり、これを回避するには高度な演算が必要となる。なお、位置情報をもとにしてモータ電流の目標値を直接算出し制御することは可能であるが、目標位置に移動する回転速度にばらつきが生じる。この技術だけでは直流モータの安定した回転を得ることができず、その実用化は困難であった。
【０００８】
ところで、直流モータで機構体の動きを柔軟に制御するためには、モータの制御形態を自由に切り替えることが望まれる。例えば、平面走行する走行台車をゆっくりと移動させて所望する場所で精度よく停止させるためには、走行用直流モータを位置制御するだけで充分である。しかし、高速移動が要求される場合には、最初に直流モータの最大トルクを発揮する電流制御によって加速させ、所望の速度に達すると速度制御により定速走行させ、停止すべき位置が近づくと位置制御で徐々に停止させるといった制御形態の切り替えが望まれる。他の例として、重量物を持上げる機械においては、最初は直流モータを電流制御することによって機械に作用する負荷に耐える大きなトルクを発揮させて持ち上げ、目標点に近づくと位置制御に切り替えて精度良く停止させることが望まれる。
【０００９】
【発明が解決しようとする課題】
図５９における制御では、各演算部が直列に配置されている。そのため、電流制御（トルク制御）から速度制御に切り替えるには、速度演算部による演算を必要とする。従って、切り替えのための演算に時間を要して速度制御に移るのが遅れる。また、電流制御から位置制御に切り替えるには、位置演算部による演算と速度演算部による演算とを必要とし、制御の切り替え遅れはより一層甚だしくなる。いずれの場合も、切り替え時のモータ出力軸に回転数やトルクの急変が強いられ、大きな衝撃が発生する。電流制御から位置制御に迅速かつスムーズに切り替えるためには常時位置演算部を作動させておき、トルクの制御のために必要のない現在位置を算出するようにしておかなければならないので、電流制御から位置制御の切り替えは実用に至っていない。
【００１０】
もちろん、トルクセンサや速度センサを装着しておき、所望するセンサからの情報に基づいて位置の補正情報を算出すれば、位置制御を主体とした制御は不可能でない。しかし、制御に要する情報が多岐にわたるためにシステムが複雑化してモータの応答性が低くなり、また制御システムの高騰をも招く。
【００１１】
ところで、特公昭６２−３２７１５号公報には、エンコーダ付モートルのデジタル制御方法が開示されている。これは、回転速度検出用カウンタと位置検出用カウンタとを一つのカウンタで兼用させることができるようにして、構成の簡素化を図っている。しかし、少なくとも一つのカウンタは装着せざるを得ず、制御装置の小型化を阻んでいる。
【００１２】
また、特公昭５９−２７０１３号公報（米国特許第４，３２３，８３２号）には、磁気テープ送りモータの速度制御方式が提案されている。これは、速度検出器からの速度信号によって割り込み信号を発生させ、その時点で速度制御プログラムを実行させるようにしたものである。しかし、割り込み制御を採用するために予め決められている演算に遅れが生じることになり、全ての演算を設定時間内に完了させるといった時間管理能力の高いサーボ制御は不可能となる。また、割り込みを想定すれば制御システム中に空白時間帯を確保しておくことも必要となり、応答性が低下するといった問題も生じる。
【００１３】
さらに、特許第２５４２１４１号公報（米国特許第５，２１８，２７６号：には、多機能直流モータ駆動集積回路が説明されている。この発明は、無線で送り出される固有番号を有した信号が、その固有番号と同じ番号の付された受信機のみで受信できるようにされており、その信号をもとにして該当する直流モータのみが制御されるようになっている。しかし、無線設備を備えるために高価となり、また外部からのノイズの影響も受けやすく、システムの信頼性を損ないやすい。
【００１４】
上記したごとくの電流制御から速度制御への切り替えに際して大きな衝撃を発生させるという問題を解決する発明として、特開平１０−８４６８６号公報に記載されたサーボ制御装置の切替方法がある。この発明では、各ループ特有の伝達特性を持つ演算器によって補正信号を発生させ、その補正信号を制御目標値に加算することにより切り替え時のショックを和らげるようにしている。そのために、電流フィードバック系の上流に信号補正手段が設けられる。しかし、補正信号の生成と加算操作に時間を要して速度制御への移行が遅れ、機構体を機敏に動かすことが容易でなくなる。
【００１５】
本発明は上記の問題に鑑みなされたもので、その目的は、一つの制御装置で直流モータのトルク制御，速度制御や位置制御を可能にして、直流モータのパワーを所望する制御形態に合せて迅速に発揮させることができるようにすること、制御形態の切り替えに時間遅れのない処理を可能にすること、制御形態の切り替え時にモータの回転数や発生トルクに急激な変化が生じて衝撃を発生させることのないようにすること、ＭＰＵのみを使用して制御装置の小型化を推進できること、また、複数の直流モータを組み込んだ機構体と上位制御機器との間の配線接続を簡易化して高い信頼性を確保すること、を実現した直流モータのサーボ制御方法および装置を提供することである。
【００１６】
【課題を解決するための手段】
本発明は、モータを駆動するためのＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号によりモータを制御するため予め定められた時間を一周期とする制御時間帯を使って供給電力を制御し、直流モータを駆動するようにした制御方法に適用される。その特徴とするところは、図１を参照して、モータ２から検出された現在位置，現在速度，モータ電流のいずれか二つ以上の現状情報と、制御目標値および制御形態からなる制御入力情報とにより、ＰＷＭ信号Ｍa ，Ｍb が割り当てられる周期Ｔの制御時間帯Ωをｎ等分して得られる細時間帯Φ1 ，Φ2 ，Φ3 ，・・・，Φn-1 ，Φn のうちの異なる一つまたは連続する複数の細時間帯を使って、演算しようとする全ての制御形態Ｆ-NについてのＰＷＭ目標値Ｐｒ-P，Ｐｒ-V，Ｐｒ-Tのそれぞれを個別に演算する（図２８，図２９，図３０を参照）。演算された全てのＰＷＭ目標値Ｐｒ-P，Ｐｒ-V，Ｐｒ-Tの中から、指定のあった制御形態Ｆ-Nに対応する一つをＰＷＭ選択値Ｐｒ-SL として現在の制御時間帯Ωj 内で選択する（図３１を参照）。直前の制御時間帯Ωj+1 において選択されているＰＷＭ選択値Ｐｒ-SL に見合うＰＷＭ信号Ｍa ，Ｍb を、現在の制御時間帯Ωj の全ての細時間帯Φ1 ，Φ2 ，Φ3 ，・・・，Φn-1 ，Φn を使って出力する（図１４および図２４を参照）。そして、細時間帯Φごとに割り当てられた処理または演算を予め決められたタイミングで開始させると共に、全ての処理および演算を一つの制御時間帯Ω内で完了させるようにしたことである（図７を参照）。
【００１７】
図３７および図４２に示すように、ＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中からＰＷＭ選択値Ｐｒ−ＳＬ  を選択する際、制御入力情報によって指定された制御形態Ｆ−Ｎに該当するＰＷＭ目標値が、モータの最大許容電流に対応するＰＷＭ最大許容値例えばＰｒａｌ−ｍａｘ−Ｐを越える場合に、他の制御形態Ｆ−Ｎに該当するＰＷＭ値であって当該他の制御形態におけるＰＷＭ最大許容値例えばＰｒａｌ−ｍａｘ−Ｖを越えない値を、ＰＷＭ選択値Ｐｒ−ＳＬ  として選択する。
【００１８】
図４４の（ａ）および図４５を参照して、ＰＷＭ選択値Ｐｒ−ＳＬ  が変更前のＰＷＭ選択値Ｐｒ−ＳＬ  と異なる場合、後続する幾つかの制御時間帯Ω（Ω４  ，Ω５  を参照）を使って、変更後のＰＷＭ選択値Ｐｒ−ＳＬ  に徐々に近づけるためのＰＷＭ漸変値Ｐｒ−ＧＲ  （＝Ｒｅ−４）を求め、そのＰＷＭ漸変値に見合ったモータに衝撃を加えることのないＰＷＭ信号Ｍａ  ，Ｍｂ  を出力するようにするとよい。
【００１９】
図３３を参照して、モータ２から検出された現在位置，現在速度，モータ電流のいずれか一つの現状情報と、制御目標値である制御入力情報とにより、制御形態に応じたＰＷＭ目標値Ｐｒ-P，Ｐｒ-V，Ｐｒ-Tを個別に演算できるようにしておくため、ＰＷＭ信号Ｍa ，Ｍb が割り当てられる周期Ｔの制御時間帯Ωをｎ等分して得られる細時間帯Φのうちの異なる一つまたは連続する複数の細時間帯を、演算可能とした全ての制御形態Ｆ-NについてのＰＷＭ目標値ごとにそれぞれ確保する（図７を参照）。制御入力情報によって指定された制御目標値とその制御目標値によって自ずと決まる制御形態のみに従うＰＷＭ目標値Ｐｒ-P，Ｐｒ-V，Ｐｒ-Tの演算を、周期Ｔの現在の制御時間帯Ωj で完了する。直前の制御時間帯Ωj+1 において演算されているＰＷＭ目標値例えばＰｒ-Vに見合うＰＷＭ信号Ｍa ，Ｍb を、現在の制御時間帯Ωj の全ての細時間帯Φ1 ，Φ2 ，Φ3 ，・・・，Φn-1 ，Φn を使って出力する（図７を参照）。そして、細時間帯Φごとに割り当てられた処理または演算を予め決められたタイミングで開始させることができると共に、指定された制御目標値のＰＷＭ目標値を得るための処理および演算を一つの制御時間帯内で完了させるようにしたことを特徴とする直流モータのサーボ制御法。
【００２０】
この場合も、ＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔが変更前のＰＷＭ目標値と異なる場合に、後続する幾つかの制御時間帯Ωを使って変更後のＰＷＭ目標値に徐々に近づけるためのＰＷＭ漸変値Ｐｒ−ＧＲ  を求め、そのＰＷＭ漸変値に見合ったモータに衝撃を加えることのないＰＷＭ信号Ｍａ  ，Ｍｂ  を出力するようにしておくとよい（図１１を参照）。
【００２１】
制御目標値は、位置制御，速度制御，トルク制御のうちの少なくとも二種のための目標値であればよい。
【００２２】
図１３を参照して、サーボ制御開始後最初の制御時間帯Ω１  における演算を開始する前に、演算の対象となる全ての制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  と制御形態Ｆ−Ｎについて暫定値を与え、サーボ制御開始後予め決められた時間ｕ０  が経過した時点から最初の制御時間帯Ω１  における演算を実行させることが好ましい。
【００２３】
図８に示すように、モータ２から検出された検出情報のうち位置情報は、モータ出力軸の現在位置を演算する細時間帯Φ５  から遡るｎ個の細時間帯Φ４  ，Φ３  ，Φ２  ，・・・で検出されている出力軸位置信号Ｅａ  ，Ｅｂ  を積算して得られた増減値ｄＰを、時間Ｔ遡った直前の制御時間帯Ωｊ−１  における細時間帯Φ５  で求められている位置情報ＰＭ  に加算して得ることができる（図２６の（ａ）のステップ５５０１を参照）。
【００２４】
図２６の（ｂ）に示すように、モータから検出された検出情報のうち位置情報は、直前の制御時間帯Ωｊ−１  の全細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  で検出されているモータ出力軸の位置信号Ｅａ  ，Ｅｂ  が積算して得られた増減値ｄｐＡ  （図３４のステップ７２Ａを参照）を、２周期前の制御時間帯Ωｊ−２  で求められている位置情報ＰＭ  に加算して得るようにしてもよい。
【００２５】
図２６の（ａ）のステップ５５０２または図２７の（ｂ）のステップ５７０４ａのように、モータから検出された検出情報のうち速度情報は、出力軸の位置信号の増減値ｄＰまたはｄｐＡ  を充てておけばよい。
【００２６】
図７に示すように、各細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  では、少なくとも出力軸の位置信号Ｅａ  ，Ｅｂ  の検出とＰＷＭ信号Ｍａ  ，Ｍｂ  の出力とが実行される。
【００２７】
位置信号Ｅａ  ，Ｅｂ  の検出とＰＷＭ信号Ｍａ  ，Ｍｂ  の出力の何れか一方の処理は、細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  の開始当初に実行され、他方の処理は一方の処理が完了した直後に開始するようにしておく。
【００２８】
図２を参照して、制御装置に係る発明は、モータ情報検出器３５からの現状情報と制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  （図１を参照）を含む上位制御機器７から指令された制御入力情報とによりＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号を電力供給器３に出力するＰＷＭ制御手段４を備えたサーボ制御装置８５に適用される。その特徴とするところは、ＰＷＭ制御手段４が、同期管理部４１，ＰＷＭ演算部５０，ＰＷＭ目標値選択部４５，ＰＷＭ指令部４６を備えることである。同期管理部４１は、モータ２への供給電力を決定するＰＷＭ信号Ｍａ  ，Ｍｂ  が割り当てられる周期Ｔの制御時間帯Ω中に予め決められた全ての処理および演算を完了させると共に、その制御時間帯をｎ等分して得られる細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  ごとに割り当てられた処理または演算の開始を指示する（図７を参照）。ＰＷＭ演算部５０は、複数のＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔのそれぞれを、周期Ｔの一つの制御時間帯内で異なる一つまたは複数の細時間帯Φを使って個別に演算する。ＰＷＭ目標値選択部４５は、制御形態Ｆ−Ｎ（図１を参照）ごとに演算されたＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中から一つをＰＷＭ選択値として現在の制御時間帯Ωｊ  内で選択する。そして、ＰＷＭ指令部４６は、直前の制御時間帯Ωｊ−１  において選択されているＰＷＭ選択値Ｐｒ−ＳＬ  をＰＷＭ指令値Ｐｒ−ＳＭ  として受け、そのＰＷＭ指令値Ｐｒ−ＳＭ  に見合ったＰＷＭ信号Ｍａ  ，Ｍｂ  を現在の制御時間帯Ωｊ  の全ての細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  を使って出力するようになっている。
【００２９】
ＰＷＭ目標値選択部を図４に示すが、各制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  をもとにして演算されたＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中から、制御入力情報で指定されている制御形態Ｆ−Ｎに該当するＰＷＭ目標値をＰＷＭ選択値Ｐｒ−ＳＬ  として選択する指定形態目標値選択部４５１としておけばよい。
【００３０】
図３２に示すように、指定形態目標値選択部４５１に入力される全てのＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔは、モータの最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ以下に制限しておくことが好ましい。
【００３１】
異なるＰＷＭ目標値選択部を図３７に示すが、制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  （図１を参照）をもとに演算されたＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中から、制御入力情報で指定されている制御形態Ｆ−Ｎに該当するＰＷＭ目標値として選択された目標値が、モータの最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘを越えている場合には、他の制御形態Ｆ−Ｎに該当するＰＷＭ目標値であって他の制御形態Ｆ−ＮにおけるＰＷＭ最大許容値を越えない目標値を、ＰＷＭ選択値Ｐｒ−ＳＬ  として選択する形態自動変更目標値選択部４５１ｂとしておくこともできる。
【００３２】
図４２のように、形態自動変更目標値選択部４５１ｂに入力されるＰＷＭ目標値を、少なくともトルクに関して演算されたＰＷＭ目標値Ｐｒ−Ｔがモータの最大許容電流に対応するトルク制御におけるＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｔ以下に制限しておくとよい。
【００３３】
図２または図４３に示すように、ＰＷＭ値選択部４５とＰＷＭ指令部４６との間には、ＰＷＭ選択値Ｐｒ−ＳＬ  が変更前のＰＷＭ選択値Ｐｒ−ＳＬ  と異なる場合に、後続する幾つかの制御時間帯Ωを使って変更後のＰＷＭ選択値Ｐｒ−ＳＬ  に徐々に近づけるためのＰＷＭ漸変値Ｐｒ−ＧＲ  を求め（例えば図４４の（ａ）を参照）、そのＰＷＭ漸変値をＰＷＭ指令値Ｐｒ−ＳＭ  としてＰＷＭ指令部４６に出力するＰＷＭ漸変値算出部４５２が設けられる。その漸変値をもとにしてＰＷＭ信号Ｍａ  ，Ｍｂ  を出力させれば、モータで発生する衝撃を可及的に少なくしておくことができる。
【００３４】
サーボ制御装置は、図３３に示すように、ＰＷＭ制御部４が、ＰＷＭ指令部４６へ直接ＰＷＭ目標値を出力するＰＷＭ演算部５０を備えたものとしておいてもよい。この装置における同期管理部４１（図７を参照）は、モータへの供給電力を決定するＰＷＭ信号Ｍａ  ，Ｍｂ  が割り当てられる周期Ｔの制御時間帯Ω中に予め決められた処理および演算を完了させると共に、その制御時間帯Ωをｎ等分して得られる細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  ごとに割り当てられた処理または演算の開始を指示する。ＰＷＭ演算部５０は、複数のＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔのそれぞれを、周期Ｔの一つの制御時間帯内で異なる一つまたは複数の細時間帯Φを使って個別に演算することができるようになっているが、制御入力情報によって指定された制御形態Ｆ−Ｎのみに従うＰＷＭ目標値演算を周期Ｔの現在の制御時間帯Ωｊ  で演算する。ＰＷＭ指令部４６（図７を参照）は、直前の制御時間帯Ωｊ−１  において演算されているＰＷＭ目標値をＰＷＭ指令値Ｐｒ−ＳＭ  として受け、そのＰＷＭ指令値に見合ったＰＷＭ信号Ｍａ  ，Ｍｂ  を現在の制御時間帯Ωｊ  の全細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ  を使って出力する。
【００３５】
図１０に示すように、ＰＷＭ演算部５０（図２を参照）から出力されるＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔは、モータ２の最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｐ，Ｐｒａｌ−ｍａｘ−Ｖ，Ｐｒａｌ−ｍａｘ−Ｔ以下に制限しておくとよい。
【００３６】
図２または図４３を参照して、ＰＷＭ演算部５０とＰＷＭ指令部４６との間には、ＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔが変更前のＰＷＭ目標値と異なる場合に、後続する幾つかの制御時間帯Ω（図４５中のΩ４  ，Ω５  を参照）を使って変更後のＰＷＭ目標値に徐々に近づけるためのＰＷＭ漸変値Ｐｒ−ＧＲ  を求め、そのＰＷＭ漸変値をＰＷＭ指令値Ｐｒ−ＳＭ  としてＰＷＭ指令部４６に出力するＰＷＭ漸変値算出部４５２が設けられ、モータに衝撃を加えることのないＰＷＭ信号Ｍａ  ，Ｍｂ  が出力されるようにしたことである。
【００３７】
図４を参照して、ＰＷＭ演算部５０の構成は、位置のＰＷＭ目標値演算部４４１Ｐ、速度のＰＷＭ目標値演算部４４２Ｖ、トルクのＰＷＭ目標値演算部４４３Ｔのうちの少なくとも二つからなっていることである。
【００３８】
位置のＰＷＭ目標値演算部４４１Ｐには、位置算出部４２１と制御位置演算部４４１とが設けられる。位置算出部４２１は、位置信号計測部４２の情報をもとにモータ出力軸２ｓ（図５を参照）の現在位置を算出する。制御位置演算部４４１は、その位置算出部４２１の情報と位置の制御目標値ＤＰ０  とをもとに達成すべき位置を演算すると共に、その達成位置に対応したＰＷＭ目標値Ｐｒ−Ｐを演算するようになっている。
【００３９】
速度のＰＷＭ目標値演算部４４２Ｖには、速度算出部４２２と制御速度演算部４４２とが設けられる。速度算出部４２２は、位置信号計測部４２の情報をもとにモータの現在速度を算出する。制御速度演算部４４２は、その速度算出部４２２の情報と速度の制御目標値ＤＶ０  とをもとに達成すべき速度を演算すると共に、その達成速度に対応したＰＷＭ目標値Ｐｒ−Ｖを演算する。
【００４０】
トルクのＰＷＭ目標値演算部４４３Ｔには、電流計測部４３の情報とトルクの制御目標値ＤＴ０  とをもとに達成すべきトルクを演算すると共に、その達成トルクに対応したＰＷＭ目標値Ｐｒ−Ｔを演算する。
【００４１】
ＰＷＭ制御部４と上位制御機器７との間で情報伝達するための情報入出力部５を設け、その情報入出力部には、同期管理部４１からの指示に従って上位制御機器７（図２を参照）から制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  や制御形態Ｆ−Ｎを含む制御入力情報を取り込み、情報ごとにＰＷＭ演算部５０の格納部に設定する受信部５１が備えられている。
【００４２】
情報入出力部５には、受信部５１を介して問い合わせのあった位置，速度，電流のいずれかの現時点でのデータを、同期管理部４１からの指示に従い上位制御機器７に送り出す送信部５２が備えられている。
【００４３】
電力供給器３を構成するトランジスタＴｒ（図６を参照）は、直流モータ２が装着されている機構体７５（図５２を参照）の可動部材７５ａに取り付けられ、その可動部材の動きによってトランジスタが自然空冷され、トランジスタの放熱を促進できるようにしておく。
【００４４】
図５１を参照して、情報入出力部５は固有の番号を有して複数設けられると共に、シリアル通信用回線６１で上位制御機器７に接続される。情報入出力部５ごとに設置された直流モータ２のそれぞれに対して、位置制御，速度制御もしくはトルク制御のいずれかをシリアル通信用回線６１を介して、個別に指令しまた変更することができる。
【００４５】
図５２に示すように、直流モータ２の近傍に情報入出力部５，ＰＷＭ制御部４，電力供給器３が配置され、複数の直流モータ２を組み込んだ機構体７５と上位制御機器７を含む主制御体７６とが、シリアル通信用回線６１とサーボ電源用動力線６２によって接続される。
【００４６】
図２に示すＰＷＭ制御部４と情報入出力部５とは一つのＭＰＵで構成され、そのＭＰＵには位置検出器１から出力される位置信号Ｅａ  ，Ｅｂ  と電流検出器３１から出力される電流信号Ｃｍ  とが直接入力される一方、電力供給器３へはＰＷＭ信号Ｍａ  ，Ｍｂ  を直接出力でき、上位制御機器７と直接に交信できるようになっている。
【００４７】
図５５に示すように、モータはブラシレス直流モータ２Ｎとしおくこともできる。
【００４８】
【発明の実施の態様】
以下に、本発明に係る直流モータのサーボ制御方法および装置を、その実施の形態を表した図面をもとにして詳細に説明する。図３は、サーボ制御装置８５を含むモータ駆動装置８８の全体構成を表したブロック図である。これは、サーボ制御装置８５が上位制御機器７との間で情報のやり取りをすると共に電力供給器３にＰＷＭ信号Ｍａ  ，Ｍｂ  を出力し、直流電源６３で直流モータ２を駆動制御することができるようになっている。
【００４９】
そのサーボ制御装置８５の主たる構成は、図２に示すようにＰＷＭ制御部４である。このＰＷＭ制御部は、モータ情報検出器３５からの現在の情報と上位制御機器７からの制御目標値を含む制御入力情報とによりＰＷＭ目標値を演算し、そのＰＷＭ目標値に見合ったＰＷＭ信号Ｍａ  ，Ｍｂ  を電力供給器３に出力するものである。
【００５０】
そのＰＷＭ制御部４は、処理指令部４Ａと演算処理部４Ｂとからなる。処理指令部４Ａは制御入力情報をもとにした演算処理部４Ｂでの処理動作を支配するもので、処理統括部４０，初期化部４１１，同期管理部４１を有している。演算処理部４ＢはＰＷＭ目標値を求め、その値に見合ったＰＷＭ信号Ｍａ  ，Ｍｂ  を生成するもので、その主たる構成はＰＷＭ演算部５０，ＰＷＭ目標値選択部４５，ＰＷＭ指令部４６である。
【００５１】
本発明に係る制御の基本思想は、例えば４００μＳといった後述する図７に示す極めて短い時間Ｔの間に予め決められた幾つかの演算を実行させるための制御時間帯Ωという概念を導入していることである。これによって、モータを制御している間は所定の演算を制御時間帯Ωごとに繰り返させることになる。そして、その制御時間帯Ωをｎ等分した細時間帯Φという概念も導入される。各細時間帯にはｔ＝Ｔ／ｎの時間内に遂行できる処理や演算が割り当てられ、トルク，速度，位置のいずれの制御形態に関する演算も、制御時間帯Ωの単位で見れば並行して処理されるようになっている。これによって、制御形態の変更指令を受ければ、時間遅れを伴うことなく該当する制御形態に移行することが可能となる。
【００５２】
上記した制御を可能とするために、本発明においては以下の機能を持った同期管理部４１（図２を参照）なる要素が不可欠となる。同期管理部４１は、時間ｔごとに同期管理トリガを発生する。このトリガ信号は、モータへの供給電力を決定するデューティ比を持ったＰＷＭ信号Ｍａ  ，Ｍｂ  が割り当てられる周期Ｔの制御時間帯Ω中に予め決められた全ての処理や演算を行わせると共に、その制御時間帯Ωをｎ等分して得られる細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  ごとに割り当てられた処理や演算の開始タイミングを教えるものである（図７を参照）。
【００５３】
すなわち、一つの制御時間帯Ωは、ｎが３２とすれば理屈上３２種類のパルス幅を持ったＰＷＭ信号を発生させることができる。しかも、制御目標値に応じた制御形態ごとのＰＷＭ目標値を、モータから検出された電流や出力軸の位置検出信号を用いて３２のうちのいずれか一つもしくは複数の細時間帯Φを費やして演算するという制御も可能にしている。例えば、後で述べる図７で説明する制御位置演算部４４１の処理に、二つの細時間帯Φ７  とΦ８  とが使用される。
【００５４】
同期管理部４１は、上記したように、各細時間帯Φごとに割り当てられた処理や演算を予め決められたタイミングで開始させるものであるので、全ての演算が一つの制御時間帯Ω内で完了され、割り込み演算もなければ演算時間の引延ばしもなく、全く時間遅れのない処理が実現されるようになっている。この同期管理部４１からのトリガ信号に従って演算される制御時間帯Ωにおけるタイミングチャートおよびフローチャートは図７および図２２に表されている。なお、ｎは大きいほどモータに与える実効電流の精度を向上させる。しかし、ｎを例えば６４とすると、一つの制御時間帯Ωにおいて図７に示す位置信号計測部４２とＰＷＭ指令部４６との処理に要する時間が二倍となり、他の予定する各種の演算に充てる時間を大きく減らしてしまう。
【００５５】
図２を参照して、前記したＰＷＭ演算部５０は、制御形態ごとの制御目標値に応じたＰＷＭ目標値を、モータ情報検出器３５により検出された現状情報を用いて異なる細時間帯Φで演算するものである。ＰＷＭ演算部５０で実行される演算には、位置のＰＷＭ目標値の演算，速度のＰＷＭ目標値の演算，トルクのＰＷＭ目標値の演算と多くて三種類の演算を行う。図２には、位置のＰＷＭ目標値演算部４４１Ｐ，速度のＰＷＭ目標値演算部４４２Ｖ，トルクのＰＷＭ目標値演算部４４３Ｔの三つが表されているが、本発明は制御形態の切り替えを円滑にすることを目的の一つとするので、少なくとも二つ演算部を備えていれば、本発明を適用することができる。しかし、制御形態の切り替えを対象としない場合には、例えば位置のＰＷＭ目標値演算部４４１Ｐのみを備えるサーボ制御装置とすることもできる。なお、各ＰＷＭ目標値演算部の詳細は後述する。
【００５６】
前記したＰＷＭ目標値選択部４５は、制御入力情報によって指定された制御形態に従い、ＰＷＭ演算部５０で演算されたＰＷＭ目標値の中から一つを選択し、それをＰＷＭ選択値Ｐｒ−ＳＬ  として出力するものである。図に表されたＰＷＭ漸変値算出部４５２がない場合には、そのＰＷＭ選択値Ｐｒ−ＳＬ  はＰＷＭ指令値Ｐｒ−ＳＭ  としてＰＷＭ指令部４６に直ちに入力されることになる。このＰＷＭ目標値選択部４５には、図４に示すように、指定制御形態格納部４５１ａと指定形態目標値選択部４５１とが備えられる。この指定形態目標値選択部４５１は、後述する形態自動変更目標値選択部４５１ｂと置き替えてもよい。指定形態目標値選択部は図１中の符号４５１からも目視的に理解できるように、制御入力情報で指定された指定制御形態格納部４５１ａに格納されている制御形態Ｆ−Ｎに従い、各ＰＷＭ目標値演算部で演算されたＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中から一つを選択するものである。
【００５７】
前記したＰＷＭ指令部４６は、従来技術を説明した図５９のところで述べたものと同じ機能を有している。しかし、後で詳しく述べるが、直前の制御時間帯Ωｊ−１  において選択されたＰＷＭ選択値Ｐｒ−ＳＬ  をＰＷＭ指令値Ｐｒ−ＳＭ  として受け、そのＰＷＭ指令値に見合ったＰＷＭ信号Ｍａ  ，Ｍｂ  を現在の制御時間帯Ωｊ  中の各細時間帯Φでオン・オフ信号として出力するものである。
【００５８】
図２のＰＷＭ制御部４に、少なくとも同期管理部４１，ＰＷＭ演算部５０，ＰＷＭ目標値選択部４５，ＰＷＭ指令部４６が備わっていると、次のような動作が実現される。まず、制御形態Ｆ−Ｎ＝１，２，３の図１に示す制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  に応じたそれぞれのＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔが、モータから検出された現状情報Ｃｍ  を用いてそれぞれ異なる細時間帯Φで演算される。これは、図７の中の番号４３，４２１，４２２，４４１，４４２，４４３の欄の白い箱で示された時期に処理される。制御入力情報によって指定された制御形態Ｆ−Ｎに従い、ＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中から一つを現在の制御時間帯Ωｊ  内でＰＷＭ選択値Ｐｒ−ＳＬ  として選択する。これは、図７中の番号４５の欄の白い箱で示された時期に処理される。その一方で、直前の制御時間帯Ωｊ−１  において選択されたＰＷＭ選択値Ｐｒ−ＳＬ  に見合うＰＷＭ信号Ｍａ  ，Ｍｂ  は、現在の制御時間帯Ωｊ  中の全ての細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φ３１，Φ３２（ｎ＝３２の場合）で出力される。これは、図７中の番号４６の欄の白い箱の時間帯で処理される。その詳しい説明は後で述べる。
【００５９】
各細時間帯Φ１  ，Φ２  ，・・・，Φ３１，Φ３２に割り当てられた処理、例えば位置のＰＷＭ目標値の演算，速度のＰＷＭ目標値の演算，トルクのＰＷＭ目標値の演算は、後述する位置信号計測部４２およびＰＷＭ指令部４６の処理の後に開始される。位置信号計測部４２およびＰＷＭ指令部４６は同期管理部４１の欄の黒い棒（図７を参照）で示す予め決められたタイミングで開始されるので、細時間帯Φにおける残り時間でＰＷＭ目標値の演算や選択が実行される。なお、各ＰＷＭ目標値の演算の量は、それぞれの細時間帯内で完了できる程度にとどめられている。従って、一つの細時間帯Φで処理しきれない場合には、複数の細時間帯Φが割り当てられることは既に述べた。このようにして、一つの制御時間帯Ωにおいて、全ての処理が完遂される。
【００６０】
上記したように各制御時間帯Ωは３２の細時間帯Φ１  ，Φ２  ，・・・，Φ３２を持ち、各細時間帯でオンかオフかのＰＷＭ信号が出力され、一つの制御周期Ｔにおいては１／３２ないし３２／３２のデューティ比、すなわち１から３２のいずれかの幅を持つパルスが電力供給器３に出力される。後述する図９において、左側の制御時間帯Ωｊ  ，Ωｊ＋１  では６のパルス幅で正転するＰＷＭ信号Ｍａ  が、右側の制御時間帯Ωｊ＋８  ，Ωｊ＋９  では３のパルス幅で逆転するＰＷＭ信号Ｍｂ  が示されている。なお、左側と右側とでパルス幅や回転方向が異なっているのは、左右の中間部分にある図示しない制御時間帯例えばΩｊ＋５  において、制御目標値および／または制御形態が変更されているからである。
【００６１】
本発明の基本的な思想は以上のとおりであるが、ここで具体的な構成要素について個々に説明する。前記したモータ２の現在の情報を検出するモータ情報検出器３５は、モータ出力軸の位置信号Ｅａ  ，Ｅｂ  （図３を参照）を検出する図２に示した位置検出器１および／またはモータに供給されている電流Ｃｍ  を検出する電流検出器３１である。なお、速度検出器は設けられておらず、後述するが、時間Ｔの間に位置検出器１で検出された位置の増減値ｄＰがモータ速度に充てられる（図２６の（ａ）のステップ５５０２を参照）。
【００６２】
図５の（ａ）は、位置検出器１の一例である。これは、一回転当りＮ個、例えば１００の位置信号Ｅａ  ，Ｅｂ  を発生する回転ディスク１１と、相互に対面する二組のセンサ１２，１３とからなるエンコーダである。回転ディスク１１はモータ２の出力軸２ｓに固定され、Ｎ個のスリット１１ａがピッチα＝３６０°／Ｎで形成されている。各組のセンサは発光素子１２ａ，１３ａと受光素子１２ｂ，１３ｂからなり、スリットのピッチの四分の一（α／４）で配置される。その結果、位置信号Ｅａ  ，Ｅｂ  は９０度の位相差を持って発生する。出力軸２ｓが正転するときは図５の（ｂ）に示すように信号Ｅａ  がＥｂ  より先行し、逆転すると図５の（ｃ）のように信号Ｅａ  がＥｂ  より遅れる。ちなみに、図５の（ｂ）および（ｃ）には、図５の（ａ）の状態に相当する部分が白矢印で示されている。この位置検出器１の出力信号は後述する位置信号計測部４２（図２を参照）で処理される。
【００６３】
図３に示す電流検出器３１は、直流モータ２を流れる電流Ｃｍ  を検出するものであることは言うに及ばない。この電流検出器３１で検出された信号は、図２に示す電流計測部４３に内蔵した図示しないＡ／Ｄ変換器でデジタル値に変換して計測される。こうして計測された電流値は、トルクのＰＷＭ目標値の演算に供せられる。
【００６４】
サーボ制御装置８５と直流モータ２との間には、モータ情報検出器３５と共に電力供給器３も設けられている。この電力供給器３も、従来技術を説明した図５９のところで述べたものと同じ機能を有している。図６は電力供給器３の一例を示す。ブラシ付き直流モータの場合、４つのトランジスタが使用されている。ＰＷＭ信号Ｍａ  がオンになるとトランジスタＴｒ１とＴｒ４とが導通してサーボ電圧ＶｓｒがアースＧｎｄとの間にかかり、一点鎖線で示す方向に電流が発生して、直流モータ２を回転させる。ＰＷＭ信号Ｍｂ  がオンするとトランジスタＴｒ２とＴｒ３とがオンし、直流モータ２は逆転する。前述した制御時間帯においてデューティ比が大きければ、ＰＷＭ信号はオンとなる時間が長く、直流モータ２に流す実効電流は大きくなる。
【００６５】
ちなみに、トランジスタは放熱が悪いと、電力供給器３としての機能を損なう。そこで、トランジスタを直流モータ２が装着されている機構体７５（後述する図５２を参照）の可動部材に取り付けるようにしておくことが好ましい。可動部材とはモータで動かされるロボットアーム７５ａや走行台車それ自体を指す。部材が動けばトランジスタに空気が自然供給され、トランジスタを空冷できるからである。
【００６６】
従来は、トランジスタを動くことのない上位制御機器に取り付けておき、電力供給器にフィンを設けて放熱をしやすくしていた。上記のようにトランジスタが可動部材に取り付けられると放熱フィンは不要となり、制御装置の小型化が図られる。一つの上位制御機器で複数のモータを制御するような場合に、電力供給器が上位制御機器に取り付けられていると、上位制御機器上の電力供給器と機構体上のモータとを接続する配線がモータごとに必要となる。それゆえに、ワイヤ本数が多くなったりハーネスが太くなるといった問題がある。しかし、後述する図５１や図５２に示すように、電力供給器３を可動部材７５ａに取り付けてモータ２の近傍に設けるようにすれば、ワイヤ本数を減らすことができるだけでなく、後述するシリアル通信も可能となる。
【００６７】
次に、ＰＷＭ制御部４の構成を説明する。制御時間帯Ωの周期をＴ秒、分割数をｎとすれば、一つの細時間帯Φに割り当てられる時間ｔはＴ／ｎとなる。同期管理部４１の指示のもとに、ｔ秒ごとの細時間帯Φで実行される演算の種類とＴ秒の制御時間帯Ωで順次処理される例を、図７のタイミングチャートを用いて説明する。
【００６８】
図２に表されている位置信号計測部４２での処理は、一つの制御時間帯Ωの全ての細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φ３１，Φ３２で実行される（図７の位置信号計測部４２の欄を参照）。すなわち、ｔ秒ごとに発せられる同期管理トリガを受けた直後に、出力軸の位置信号の検出が開始される。この処理のフローチャートは図２３に示され、後述する図８の要領によって位置の増減値が計測される。図２３を参照して簡単に述べると、位置検出器（エンコーダ）から位置信号Ｅａ  ，Ｅｂ  を取り込み、Ｅａ  ＝０，Ｅｂ  ＝０のときは記憶値Ｐｉ  ＝０、Ｅａ  ＝１，Ｅｂ  ＝０のときはＰｉ  ＝１、Ｅａ  ＝１，Ｅｂ  ＝１のときはＰｉ  ＝２、Ｅａ  ＝０，Ｅｂ  ＝１のときはＰｉ  ＝３と置かれる。これらの記憶値をもとにして、位置の増減値ｄＰが算出されるようになっている。
【００６９】
図７に示すように、後述する位置算出部４２１は周期Ｔ秒の一つの制御時間帯Ωｊ  において一回実行される。すなわち５番目の細時間帯Φ５  において、図示しない直前の制御時間帯Ωｊ−１  における細時間帯Φ６  から現在の制御時間帯Ωｊ  における細時間帯Φ５  までの時間Ｔに等しい期間の位置増減値ｄＰをもとにして、モータ出力軸の現在位置ＰＭ  が算出される。この増減値ｄＰは、エンコーダのカウント数に対応する。現在位置ＰＭ  の算出は、図２６の（ａ）のフローチャートに従う。なお、エンコーダのカウントは、スリットの１ピッチの間に上記したＰｉ  ＝０，Ｐｉ  ＝１，Ｐｉ  ＝２，Ｐｉ  ＝３の四種類が現れる。従って、計測精度λｐは３６０度／（Ｎ×４）＝９０／Ｎ  ［度］  となる。それゆえ、計測誤差は、Ｎ＝１００の場合、０．９度にとどまる。
【００７０】
図７に示した細時間帯Φ６  （ｉ＝６）で実行される速度算出部４２２での演算は図２７の（ａ）のフローチャートに示され、現在の制御時間帯Ωｊ  の細時間帯Φ５  で算出された最新の増減値ｄＰに基づく速度Ｖとそれ以前の時間Ｔに等しい三つの期間（制御時間帯Ωｊ−４  のΦ６  からΩｊ−３  のΦ５  まで、制御時間帯Ωｊ−３  のΦ６  からΩｊ−２  のΦ５  まで、制御時間帯Ωｊ−２  のΦ６  からΩｊ−１  のΦ５  までの期間）における増減値に基づく速度の平均値ＶＭ  をもって、直流モータの回転速度とされる。直流モータ２が１分間に一回転しているときの信号の変化回数Ｓｏ  は、（Ｎ×４）×６０［  回／ｒｐｍ］  となる。従って、（Ｔ×４）秒の間に計測された回転速度ＶＭ  を用いて、直流モータ２の回転速度ＮｒはＶＭ  ／Ｓｏ  で与えられる。
【数２】
0003542032.tif 000003
計測精度λｖは、ＶＭ  に１を代入した値であって、次のように表される。
【数３】
0003542032.tif 000004
測定可能な最大速度Ｎｒｍａｘ  は、ＶＭ  にｎ×４を代入した値であり、以下のようになる。
【数４】
0003542032.tif 000005
ちなみに、速度計測の範囲は１：（４×ｎ）である。
【００７１】
図７に表されているＰＷＭ指令部４６は位置信号計測部４２での処理の直後に開始され、ＰＷＭ信号Ｍａ  ，Ｍｂ  のオンまたはオフの信号を出力する。これも、一つの制御時間帯Ωの全ての細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φ３１，Φ３２において実行される。処理のタイミングが図９に、フローチャートは図２４に示される。この結果、電流指令の範囲は１ないしｎとなる。よって、最大電流をＩｍａｘ  とすれば最小電流Ｉｍｉｎ  はＩｍａｘ  ／ｎ  ［Ａ］  と表される。ちなみに、制御周波数Ｈは１／Ｔ／１，０００  ［ＫＨｚ］  である。
【００７２】
制御性能の実用性を示すために、具体的な数値例を掲げる。例えば、制御周期Ｔを４００μＳ、制御の分割数ｎを３２、エンコーダ１のスリット１１ａの数を１００、モータに供給される最大電流を３Ａ（アンペア）とする。制御周期は以下のようになる。
【数５】
0003542032.tif 000006
最小の同期指示信号の発生時間ｔは、次のとおりである。
【数６】
0003542032.tif 000007
速度の計測精度λｖは、以下のようになる。
【数７】
0003542032.tif 000008
測定可能な最大速度Ｎｒｍａｘ  は、次のとおりとなる。
【数８】
0003542032.tif 000009
最小電流Ｉｍｉｎ  は３／３２＝０．０９４となり、約０．１Ａを実現することができる。
【００７３】
図２に戻って、ＰＷＭ制御部４における上記した以外の構成を述べる。図２に示したトルクのＰＷＭ目標値演算部４４３Ｔには、図４に表したように、トルク目標値格納部４４３ａ，制御トルク演算部４４３および制御トルク演算用データ記憶部４４３ｂが設けられる。制御トルク演算部４４３は、電流計測部４３の情報とトルク目標値格納部４４３ａに格納されたトルク制御目標値ＤＴ０  とをもとに、達成すべきトルクＴｄをＰＩ演算（比例積分演算）する。そして、その演算トルクＴｄに対応したＰＷＭ目標値Ｐｒ−Ｔを演算し、前記した指定形態目標値選択部４５１に出力するようになっている。なお、電流計測部４３における処理を表わしたフローチャートは次に説明する図２５に示され、制御トルク演算部４４３におけるＰＩ演算によるＰＷＭ目標値を生成するフローチャートは、図３０に示されている。
【００７４】
図２２を参照して、電流計測部４３の処理には長い時間を要するので、二つの細時間帯Φが使用される。細時間帯Φ３  （ｉ＝３）においては、図２５のステップ５１０２でＡ／Ｄ変換器による計測を開始するための各種設定が行われる。そして、次の細時間帯Φ４  でＡ／Ｄ変換器のデータを取り込み（Ｓ５３０１）、現在のトルクＴＭ  が演算される（Ｓ５３０２）。この値は後述する式（７）のＰＩ演算に供せられる。
【００７５】
いま、電力供給器３に供給する直流電源のサーボ電圧をＶｓｒとする。Ｖｓｒは直流モータの定格電圧Ｖｒａｔｅｄ  より充分大きく設定される。直流モータの抵抗をＲｍｏｔ  ，インダクタンスをＬｍｏｔ  ，誘起電圧定数をＫｅ  とし、モータの角速度をωで表すと、直流電圧Ｖｓｒの供給を受けて直流モータ２に電流Ｃｍ  が流れている状態は、次式で表される。
【数９】
0003542032.tif 000010
電流Ｃｍ  が最大値Ｃｍ  −ｍａｘとなるのは、直流モータの回転速度ωが０のときであり、次式で表現される。
【数１０】
0003542032.tif 000011
【００７６】
ところで、直流モータには、最大電流Ｃｍ  −ｍａｘよりも小さい電磁気的に許容し得る最大許容電流Ｃｍ  ａｌ−ｍａｘが仕様として決められている。この値は直流モータの機種によって異なり、直流モータはこの最大許容電流Ｃｍ  ａｌ−ｍａｘを越えると、性能の劣化や破損を起す。そこで、制御トルク演算部４４３で演算されたＰＷＭ目標値Ｐｒ−ＴがＰＷＭ指令値Ｐｒ−ＳＭ  として選択される前に、最大電流Ｃｍ  −ｍａｘに対応するＰＷＭ最大値Ｐｒ−ｍａｘ−Ｔより小さいＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｔを越えることがないように設定しておく必要がある。最大許容値Ｐｒａｌ−ｍａｘ−Ｔは、次式で与えられる。
【数１１】
0003542032.tif 000012
【００７７】
ｎは一つの制御時間帯Ωの分割数であり、ｉｎｔ  は端数を切捨てることによって得られた整数を示す。直流モータ２に最大許容電流Ｃｍ  −ｍａｘを流したときに発生する最大トルクＴＭ−ｍａｘ  は、直流モータのトルク定数Ｋｔ  で決まり、次式で表される。
【数１２】
0003542032.tif 000013
上位制御機器７は、当然この状況を把握してモータ制御の目標値ＤＴ０  を指示する。よって、原則的には、次式を満たすＤＴ０  が与えられる。
【数１３】
0003542032.tif 000014
【００７８】
制御時間帯Ωｊ  においてトルクの目標値がＤＴ０  のときに演算されるトルク値は、直後の制御時間帯Ωｊ＋１  におけるＰＷＭ制御のデューティ比を与えるもとになる。このデューティ比によって得られる制御幅Ｐｒ−Ｔは正負の符号を持ち、絶対値は０から前述したＰｒａｌ−ｍａｘ−Ｔの範囲内で与えられる。静的には、次式のように表される。
【数１４】
0003542032.tif 000015
【００７９】
しかし、式（１）には角速度ωが存在するので、制御の即応性や安定性を考慮して、動的にはトルクのＰＷＭ目標値Ｐｒ−Ｔを次式で示すＰＩ演算で算出することにする。
【数１５】
0003542032.tif 000016
ただし、ＫｐｔはＰＩ演算の比例定数であり、Ｋｉｔは積分定数である。
【００８０】
式（７）の制御幅Ｐｒ−Ｔはトルク制御のＰＷＭ目標値を意味しており、これがトルク演算値Ｔｄ  にほぼ比例する関係にある。それが図１０の（ｃ）に表されている。デューティ比の最大はｎ＝３２としたことから３２／３２になるが、このデューティ比では上記したようにモータ性能の劣化や破損を惹き起こすことになるので、Ｐｒａｌ−ｍａｘ−Ｔとして例えば２８／３２のデューティ比をもって最大値とされる。従って、Ｐｒ−Ｔとして２８より大きな値が出るようなことがあれば、それは２８にとどめられる。これによって、トルクに関して演算されたＰＷＭ目標値はモータ２の最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｔ以下に制限されることになる。
【００８１】
以上説明した制御トルク演算部４４３における演算を図３０のフローチャートに示す。フローチャートにおける演算の例は、ＣＴ−１ないしＣＴ−４のデータで示すように、遡る四つの制御時間帯Ωｊ−４  ，Ωｊ−３  ，Ωｊ−２  ，Ωｊ−１  における誤差の積分として示されている。フローチャート内に記載した二つの比較器（ステップ６７０９と６７１０を参照）は、トルクのＰＷＭ目標値が最大許容電流を超えない範囲にあるかどうかを確認している。超えている場合には、最大許容値Ｐｒａｌ−ｍａｘ−Ｔでとどめられることは上記のとおりである（ステップ６７１１，６７１２を参照）。
【００８２】
次に、図２に示した位置のＰＷＭ目標値演算部４４１Ｐについて説明する。位置のＰＷＭ目標値演算部４４１Ｐには、図４に示すように、位置目標値格納部４４１ａ，位置算出部４２１，制御位置演算部４４１および制御位置演算用データ記憶部４４１ｂ，位置算出用データ記憶部４２１ｂが設けられる。位置算出部４２１は位置信号計測部４２の情報をもとにモータ２の現在位置を算出するもので、その処理は図２６の（ａ）のフローチャートに示される。なお、位置信号計測部４２の処理のフローチャートは図２３に示されている。制御位置演算部４４１は位置算出部４２１の情報と位置目標値格納部４４１ａに格納されている位置制御目標値ＤＰ０  とをもとにして、達成すべき位置ＰｄをＰＩ演算する。そして、その演算位置に対応したＰＷＭ目標値Ｐｒ−Ｐを演算して指定形態目標値選択部４５１に出力するようにしている。
【００８３】
この処理のフローチャートは、図２８に表されている。まず、位置制御の目標位置がＤＰ０  として指示され、直前の時間Ｔにおける増減値ｄＰを加味した出力軸の位置ＰＭ  が、位置算出部４２１の演算（図２６の（ａ）のステップ５５０１を参照）に使用される。目標位置との差分による比例項と時間Ｔに等しい四つの期間における誤差の積分を用いて、次式に基づきＰＷＭ目標値Ｐｒ−Ｐが演算される。
【数１６】
0003542032.tif 000017
ただし、ＫｐｐはＰＩ演算の比例定数であり、Ｋｉｐは積分定数である。
【００８４】
式（８）のＰｒ−Ｐは位置制御におけるＰＷＭ目標値を意味しており、これは位置演算値Ｐｄ  とほぼ比例する関係にあって、図１０の（ａ）に表されている。デューティ比の最大は３２／３２となるが、Ｐｒａｌ−ｍａｘ−Ｐとしては、ＰＷＭ最大値Ｐｒ−ｍａｘ−Ｐよりは小さい例えば２８／３２のデューティ比をもって最大値とされる。従って、Ｐｒ−Ｐは２８より大きい値となることはなく、位置に関して演算されるＰＷＭ目標値は、モータ２の最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｐ以下に制限される。
【００８５】
以上説明した制御位置演算部４４１における演算を、図２８のフローチャートに示す。フローチャートにおける積分の例はＣＰ−１ないしＣＰ−４のデータで示すように、時間Ｔからなる連続して遡る四つの期間における誤差の積分として示される。フローチャート内に記載した二つの比較器（ステップ６００３と６００４を参照）は、位置のＰＷＭ目標値が最大許容電流を超えない範囲にあるかどうかを確認している。超えている場合には、最大許容値Ｐｒａｌ−ｍａｘ−Ｐにとどめられる（ステップ６００５，６００６を参照）。
【００８６】
図２６の（ａ）のフローチャートにおいて後で述べるが、モータから検出された出力軸の位置情報は、制御時間帯Ωｊ  における出力軸の現在位置を演算する細時間帯Φｈ  から遡るｎ個の細時間帯Φで検出されている出力軸の位置信号Ｅａ  ，Ｅｂ  を積算して得られた増減値を、時間Ｔ遡った細時間帯Φすなわち直前の制御時間帯Ωｊ−１  における細時間帯Φｈ  で求められている位置情報ＰＭ  に加算して得るようにしている。これを、図２２で説明すると、位置算出部４２１はカウンタのｉが５のとき、すなわち細時間帯Φ５  で動作するようにスケジュールされている。一方、位置信号計測部４２はいずれの細時間帯Φｉ  においても動作する（ステップ４４を参照）。それゆえ、位置算出部４２１では、位置算出部４２１より先にスケジュールされている位置信号計測部４２がｉ＝５のとき検出した信号をも使用して、増減値ｄＰを演算することができる。従って、現在位置を算出するための増減値ｄＰを与える信号は、直前の制御時間帯Ωｊ−１  における細時間帯Φ６  ，Φ７  ，・・・，Φ３１，Φ３２と現在の制御時間帯Ωｊ  でのΦ１  ，Φ２  ，・・・，Φ５  で検出されたものが充てられる。
【００８７】
ここで、図２３を考慮しながら図８を参照して、位置信号Ｅａ  ，Ｅｂ  から位置の増減値ｄＰを求める過程を説明する。いま、制御時間帯Ωｊ−１  におけるｉ＝６の細時間帯Φ６  に着目する。エンコーダ信号Ｅａ  オフであり、Ｅｂ  はオンであるからＥａ  ＝０，Ｅｂ  ＝１であり、現在位置記憶値Ｐｉ  は３となる。図の例では直前のＰｉ  も３であるので、Ｐ０  が３と置かれる。ｉ＝７では、ｉ＝６と同じくＥａ  ＝０，Ｅｂ  ＝１である。現在位置記憶値Ｐｉ  は３となる。ｉ＝６のときのＰｉ  が３であるので、ｉ＝７のときのＰ０  も３と置かれる。ｉ＝８ではＥａ  ，Ｅｂ  共にオフであるから、Ｅａ  ＝０，Ｅｂ  ＝０であり、現在位置記憶値Ｐｉ  は０となる。直前のＰｉ  が３であるので、Ｐ０  は３と置かれる。ｉ＝９では、ｉ＝８と同じくＥａ  ＝０，Ｅｂ  ＝０である。現在位置記憶値Ｐｉ  は０となる。ｉ＝８のときのＰｉ  が０であるので、ｉ＝９のときのＰ０  も０と置かれる。ｉ＝１０では信号Ｅａ  が立ち上がってオンであり、Ｅｂ  は依然としてオフであるからＥａ  ＝１，Ｅｂ  ＝０であり、現在位置記憶値Ｐｉ  は１となる。ｉ＝９のときのＰｉ  が０であるので、ｉ＝１０のときのＰ０  も０と置かれる。ｉ＝１１では、ｉ＝１０と同じくＥａ  ＝１，Ｅｂ  ＝０である。現在位置記憶値Ｐｉ  は１となる。ｉ＝１０のときのＰｉ  が１であるので、ｉ＝１１のときのＰ０  も１と置かれる。ｉ＝１２では、ｉ＝１１と同じようにＥａ  ＝１，Ｅｂ  ＝０である。現在位置記憶値Ｐｉ  は１となる。ｉ＝１１のときのＰｉ  が１であるので、ｉ＝１２のときのＰ０  も１と置かれる。ｉ＝１３では信号Ｅａ  は依然としてオンであるが、Ｅｂ  は立ち上がってオンとなっているからＥａ  ＝１，Ｅｂ  ＝１であり、現在位置記憶値Ｐｉ  は２となる。ｉ＝１２のときのＰｉ  が１であるので、ｉ＝１３のときのＰ０  も１と置かれる。ｉ＝１４では、ｉ＝１３と同じくＥａ  ＝１，Ｅｂ  ＝１である。現在位置記憶値Ｐｉ  は２である。ｉ＝１３のときのＰｉ  が２であるので、ｉ＝１４のときのＰ０  は２と置かれる。ｉ＝１５では信号Ｅａ  が下がってオフであり、Ｅｂ  は依然としてオンであるからＥａ  ＝０，Ｅｂ  ＝１であり、現在位置記憶値Ｐｉ  は３となる。ｉ＝１４のときのＰｉ  が２であるので、ｉ＝１５のときのＰ０  も２と置かれる。
【００８８】
ところで、いずれの細時間帯Φにおいても、現在記憶値Ｐｉ  と前回の記憶値Ｐ０  との差Ｐｉ−０  が求められる。その値は１，−３，−１，３以外０である。０をオフとみなして、０以外をオンと扱い、そのオンの数を積算すると位置の増減値ｄＰを得ることができる。なお、ｉ＝６からｉ＝１５までの信号Ｅａ  ，Ｅｂ  の１サイクルにおけるＰｉ  ，Ｐ０  を図８を用いて上で説明したが、その間に信号が変化する回数は４であることが分かる。図８の例では、制御時間帯Ωｊ−１  におけるｉ＝２９（細時間帯Φ２９）までは位置信号Ｅａ  がＥｂ  に先行しているので正転している。ｉ＝３０（細時間帯Φ３０）以降は位置信号Ｅａ  がＥｂ  に遅れているので逆転している。従って、例えば制御時間帯Ωｊ−１  のｉ＝６から制御時間帯Ωｊ  のｉ＝５までの３２個の細時間帯Φの増減値ｄＰは９−３＝６となっている。言うまでもなく、９は正転時の積算数であり、３は逆転時の積算数である。ちなみに、制御時間帯Ωｊ−１  のｉ＝１からｉ＝３２までを見るならば、その増減値ｄＰは１１−２＝９である。
【００８９】
次に、図２に示した速度のＰＷＭ目標値演算部４４２Ｖについて、その構成を述べる。速度のＰＷＭ目標値演算部４４２Ｖには、図４に示すように、速度目標値格納部４４２ａ，速度算出部４２２，制御速度演算部４４２，および速度算出用データ記憶部４２２ｂ，制御速度演算用データ記憶部４４２ｂが設けられている。速度算出部４２２は、図２７の（ａ）に表されているフローチャートに従い、位置信号計測部４２の情報をもとにモータ２の現在速度を算出する。なお、上記したモータ出力軸の位置信号Ｅａ  ，Ｅｂ  の増減値ｄＰはそのまま出力軸の速度を意味するので、図２６の（ａ）の位置算出部４２１の処理を示すフローチャートでは、現在位置を演算し終えた後のステップ５５０２において増減値ｄＰを速度とすべくＶ＝ｄＰと置いて、このＶが図２７の（ａ）の速度算出部４２２の処理を示すフローチャートのステップ５７０４で使用されるようにしている。
【００９０】
速度算出部４２２での処理をもう少し詳しく述べる。直流モータの回転速度ＶＭ  は、時間Ｔからなる連続して遡る四つの期間における平均速度として算出される。速度算出部４２２での処理は、図２７の（ａ）のごとくに扱われる。直流モータ２が１秒間に一回転しているときの信号の変化回数Ｓｏ  は、次式で与えられる。
【数１７】
0003542032.tif 000018
直前の時間Ｔの期間における位置の変化ｄＰ（＝Ｖ）をもとに、それより遡る時間Ｔに等しい三つの期間における速度の総和から、直流モータ２の回転速度ＶＭ  は、次式で算出される。
【数１８】
0003542032.tif 000019
【００９１】
次に、制御速度演算部４４２は、速度算出部４２２の情報と速度制御目標値ＤＶ０  とをもとに達成すべき速度を演算すると共に、その達成速度に対応したＰＷＭ目標値Ｐｒ−Ｖを演算する。
【００９２】
直流モータに定格電圧Ｖｒａｔｅｄ  を印加した定格状態では、定格回転数Ｎｒａｔｅｄ  で回転する。ここでは回転速度をｒｐｓで扱う。本発明において定格状態を維持するには、サーボ電圧Ｖｓｒが実効値でＶｒａｔｅｄ  となるようにＰＷＭ制御の幅が設定される。このための、速度演算値Ｐｒ−Ｖ  ｒａｔｅｄは、次式となる。
【数１９】
0003542032.tif 000020
よって、目標とする直流モータの速度がＤＶ０  の場合、静的な速度演算値は、以下のようになる。
【数２０】
0003542032.tif 000021
しかし、トルク制御と同様に制御の即応性や安定性を考慮して、速度演算値は次式で示すＰＩ演算によるものとする。
【数２１】
0003542032.tif 000022
ただし、ＫｐｖはＰＩ演算の比例定数であり、Ｋｉｖは積分定数である。
【００９３】
式（１３）のＰｒ−Ｖは速度制御におけるＰＷＭ目標値を意味しており、これは速度演算値Ｖｄ  とほぼ比例する関係にある。それが図１０の（ｂ）に表されている。Ｐｒａｌ−ｍａｘ−Ｖとしては、ＰＷＭ最大値Ｐｒ−ｍａｘ−Ｖよりは小さい例えば２６／３２のデューティ比をもって最大値とされる。従って、Ｐｒ−Ｖとして２６より大きな値が算出されるようなことがあれば、それは２６にとどめられる。これによって、速度に関して演算されたＰＷＭ目標値がモータ２の最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｖ以下に制限される。
【００９４】
以上説明した制御速度演算部４４２における演算を図２９のフローチャートに示す。フローチャートにおける積分は、ＣＶ−１ないしＣＶ−４のデータで示すように、時間Ｔからなる連続して遡る四つの期間における誤差ＤＶ０  −ＶＭ  を積分した例となっている。フローチャート内に記載した二つの比較器（ステップ６５０３，６５０４を参照）は、速度のＰＷＭ目標値が最大許容電流を超えない範囲にあるかどうかを確認している。超えている場合には、最大許容値Ｐｒａｌ−ｍａｘ−Ｖでとどめられる（ステップ６５０５，６５０６を参照）。
【００９５】
ところで、ＰＷＭ制御部４は上位制御機器７との間で直接情報伝達してもよいが、図２に示すように、サーボ制御装置８５に情報入出力部５を設けておくとよい。この情報入出力部５は、図４に示すように、受信部５１と送信部５２とから構成されるが、受信部５１のみであってもよい。受信部５１は、同期管理部４１からの指示に従い上位制御機器７の送信部７２（図３を参照）から制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  や制御形態Ｆ−Ｎを含む制御入力情報を取り込み、情報ごとにＰＷＭ演算部５０の格納部に設定するものである。なお、送信部５２は、受信部５１を介して問い合わせのあった位置，速度，電流のいずれかの現時点でのデータを同期管理部４１からの指示に従い上位制御機器７の受信部７１（図３を参照）へ送り出すものであるが、その動作については、図１４，図１５，図１６のタイミングチャートを用いて後述することにする。図３において符号の６４はコンデンサであり、モータ起動時の電流が急激に大きく立ち上がらないようにして電圧降下を防止しておくためのものである。ちなみに、上位制御機器７では、直流電源６３の操作によってＰＷＭ制御部４および情報入出力部５を起動してから少なくとも一つの制御周期以上の時間が経過した後に、情報入出力部５へ制御入力情報の信号が、送られるように設定されている。
【００９６】
ここで、図２の処理指令部４Ａに含まれている初期化部４１１について説明する。本発明に係るサーボ制御装置は幾つものソフトウエアを複合して形成したものであるが、演算に先だち情報入出力部５をリセットしたり、演算上必要となる初期値もしくは暫定値を与えておくことが必要となる。すなわち、サーボ制御開始後最初の制御時間帯Ω１  における演算を開始する前に、演算の対象とする全ての制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  と制御形態Ｆ−Ｎについて暫定値を与える。そのために、サーボ制御開始後は予め決められた時間ｕ０  （図１３の上部分を参照）を消費することになる。従って、最初の制御時間帯Ω１  における演算は、時間ｕ０  が経過した時点から実行される。
【００９７】
以上述べたＰＷＭ制御部４と情報入出力部５とは、一つのマイクロプロセシングユニットＭＰＵで構成される。このＭＰＵには位置検出器１から出力される位置信号Ｅａ  ，Ｅｂ  と電流検出器３１から出力される電流信号Ｃｍ  とが直接入力される一方、電力供給器３へはＰＷＭ信号Ｍａ  ，Ｍｂ  を直接出力できる。そのうえ、上位制御機器７とは直接交信もできる。従って小さなチップ一つを用いて直流モータをサーボ制御できることになり、位置や速度を検出するためのカウンタを必要とせず、ＭＰＵに直接信号を取り込むことにより、極めて小型で簡単なハードウェアの制御装置とすることができる。さらには、外部からの信号に基づく割り込み処理を伴わず、同期管理部の指令に基づいて外部信号の取り込み，演算，生成信号の出力を行うことができる。これによって、全ての処理が予め設定した時間内に確実に実行され、また割り込み処理のための時間的余裕を設けておく必要もなく、無駄時間の少ない極めて信頼性の高いサーボ制御が実現される。
【００９８】
次に、サーボ制御装置による処理を、直流モータで動く走行台車が平地を加速，定速走行，減速，停止するまでに当てはめて説明する。説明を簡単にするために、走行台車が始動してから停止するまで図１１に示すように、３７個の制御時間帯を消費するものとする。初期化の後、制御時間帯Ω３  からΩ１２まではトルク制御によって走行台車を出発位置から加速させ、制御時間帯Ω１３からΩ３２までは速度制御によって移動させ、制御時間帯Ω３３からΩ３７までは位置制御によって減速し、停止させようとするものとする。理解を深めるために、制御時間帯Ω２３で速度制御の制御目標値をも変更する例としている。実線で示すＰＷＭ指令値Ｐｒ−ＳＭ  は、図１２中のＰｒ−ＳＭ  の欄の数字に対応している。また、図１３，図１４，図１５，図１６のタイミングチャートも図１１に対応して表されている。なお、図１４，図１５，図１６では、図１３に表されている細時間帯Φ１４ないしΦｎ  が割愛されている。
【００９９】
以下にフローチャートも参照しながら、全体の動作を説明する。図１７は全体の流れを極めて大雑把に示している。図３に示す上位制御機器７が直流電源６３のスイッチを入れると、直流モータ２をサーボ制御するＰＷＭ制御部４および情報入出力部５を構成するマイクロプロセシングユニットＭＰＵへは、動力線６２からＤＣ／ＤＣ変換器６５を介して電力が供給される（フローチャートのステップ１、以下Ｓ１などと記す）。図１３の左上部分に示すようにＭＰＵの電源電圧が上昇すればパワーオンリセットとなり、初期化部４１１が作動してＰＷＭ制御部４と情報入出力部５とが初期化される（Ｓ２０）。初期化のために時間ｕ０  を消費するが（Ｓ３０）、その後はＰＷＭ制御部４の処理指令部４Ａからの指令を受けて、演算処理部４Ｂが動作を開始する（Ｓ４０）。上位制御機器７からの指令を受けて電力の供給が途絶えるまでは（Ｓ８０）、処理指令部４Ａの同期管理部４１が予め決められた処理の実行を繰り返させるように同期管理トリガを発する。
【０１００】
図１８は、サーボ制御装置８５の初期化のためのフローチャートである。まず、初期化部４１１がサーボ制御装置を構成するハードウエアのリセットを指令する（Ｓ２１）。この処理は、図１９に示すように、受信部５１に記憶されたデータを消去し（Ｓ２１１）、送信部５２に記憶されたデータも消去する（Ｓ２１２）。そして、電流計測部４３内のＡ／Ｄ変換器もリセットされる（Ｓ２１３）。
【０１０１】
ハードウエアのリセットが終了すると、図１８に戻って、制御対象である直流モータ２の現状確認が行われる（Ｓ２２）。これは、図５に示したエンコーダ１におけるセンサ１２，１３と回転ディスク１１のスリット１１ａとの初期位置関係を予め記憶しておくためである。この初期位置関係は信号計測部４２の動作を説明する図２３の前半部分と同じ挙動であり、図２０のような過程を経て検出される。図５の（ａ）のような位置関係の場合には、Ｅａ  が１であってＥｂ  が０であるので、ステップ２２１からステップ２２３をたどり、Ｐ０  ＝１となる（Ｓ２２６）。従って、後述する図２３のステップ４４０８の演算に供されるＰ０  が１であると位置検出用データ記憶部４２ｂ（図４を参照）に記憶される。
【０１０２】
直流モータ２の現状確認が終了すると、図１８に戻って、サーボ制御装置８５を構成するソフトウエアのリセットが指令される（Ｓ２３）。図２１に示すように、まず、位置目標値格納部４４１ａ（図４を参照）に納められている位置目標値ＤＰ０  が０と置かれ、図２８の制御位置演算部４４１での演算に供される記憶値ＣＰ−１，ＣＰ−２，ＣＰ−３も０にセットして、制御位置演算用データ記憶部４４１ｂに記憶される（Ｓ２３１）。速度目標値格納部４４２ａに納められている速度目標値ＤＶ０  は最大許容速度Ｖａｌ−ｍａｘ、例えば１６５ｒｐｓと設定され、図２９の制御速度演算部４４２での演算に供される記憶値ＣＶ−１，ＣＶ−２，ＣＶ−３は０にセットして、制御速度演算用データ記憶部４４２ｂに記憶される（Ｓ２３２）。トルク目標値格納部４４３ａに納められているトルク目標値ＤＴ０  も最大許容値Ｔａｌ−ｍａｘ例えば２ｋｇｆ・ｃｍ（≒０．２Ｎ・ｍ）と設定され、図３０の制御トルク演算部４４３での演算に供される記憶値ＣＴ−１，ＣＴ−２，ＣＴ−３は０にセットして、制御トルク演算用データ記憶部４４３ｂに記憶される（Ｓ２３３）。続いて、図３１における選択操作に供されるＦ−Ｎが０と置かれて、指定制御形態格納部４５１ａに記憶される（Ｓ２３４）。これによって、位置制御，速度制御，トルク制御のいずれもが行われない状態に置かれる。
【０１０３】
図２３のステップ４４１２，４４１３の演算に供されるｄＰが０と置かれ（Ｓ２３５）、これが位置検出用データ記憶部４２ｂに記憶される。図２６において位置算出に供されるＰＭ  も０と置かれ、位置算出用データ記憶部４２１ｂに記憶される（Ｓ２３６）。さらに、図２７の（ａ）の速度算出のための演算上の記憶値であるＶ−１，Ｖ−２，Ｖ−３も０と置かれ、速度算出用データ記憶部４２２ｂに記憶される（Ｓ２３７）。そして、図２４に基づいた演算に供されるＰＷＭ選択値Ｐｒ−ＳＬ  が０と置かれ、ＰＷＭ指令用データ記憶部４６ｂに記憶される（Ｓ２３８）。なお、まだ殆ど説明していないＰＷＭ漸変値算出部４５２が設けられている場合には、図４４の（ａ）に基づいた演算に供されるＰＷＭ選択値Ｐｒ−ＳＬ  やＲｅ−１，Ｒｅ−２，Ｒｅ−３も０と置かれ、漸変値算出用データ記憶部４５２ｂに記憶される（Ｓ２３８ａ，Ｓ２３８ｂ）。
【０１０４】
以上の初期化動作は図１３のタイミングチャートにも表されているとおりであるが、初期化部４１１が動作を始めたときからタイマが作動するようになっている。タイマに設定された時間は、図１８のステップ２１からステップ２３の初期化を完了させるに充分な例えば５００μＳに設定される。図１７に戻って、所定時間ｕ０  が経過すると（Ｓ３０）、同期管理部４１は演算処理部４Ｂにおける連続した繰り返し処理を実行させる（Ｓ４０）。
【０１０５】
同期管理部４１は以下のような繰り返し処理を指令し、それによって直流モータ２がサーボ制御される。図２２においてカウンタのｉが０と置かれる（Ｓ４１）。このカウンタｉはｎになるまで順次１が加算されるが（Ｓ４２）、ｎを前述したごとく３２とすると、同期管理部４１からＴ／ｎ＝４００／３２＝１２．５μＳごとに同期管理トリガが出力され（Ｓ４３）、所定の処理や演算が実行される。
【０１０６】
同期管理トリガがあると、まず位置信号計測部４２の作動が指令され（Ｓ４４）、図２３に従う処理が行われる。直流モータはまだ動いておらず、従って図５の（ａ）の状態にある。すなわち図２０の初期化のステップ２２６でＰ０  ＝１を得たときの同じく、Ｅａ  がオンでありＥｂ  はオフである。これが図８の制御時間帯Ω１  （＝Ωｊ−１  ）におけるｉ＝１（細時間帯Φ１  ）の矢印Ａ１  （左上部分）のところに表されている。図２３においてはステップ４４０１からステップ４４０３をたどり、Ｐｉ  は１と置かれる（Ｓ４４０６）。そこで、ステップ４４０８においては、いま検出されたＰｉ  から記憶値Ｐ０  （図２０のステップ２２６を参照）の差であるＰｉ−０  が計算される。Ｐｉ−０  ＝１−１＝０であり、ステップ４４０９で位置信号計測部４２における処理は終了する。すなわち、モータの出力軸の位置の増減はなかったと判定され、従って位置の増減値を表すｄＰは初期化のステップ２３５（図２１を参照）で０と置かれたままとされる。
【０１０７】
この位置信号計測部４２における処理が終了すると、図２２のステップ４５に入り、同期管理部４１によって直ちにＰＷＭ指令部４６の作動が指令され、図２４に従った処理が行われる。いまはｉ＝１であるので（Ｓ４５０１）、初期化時に０と設定されているＰｒ−ＳＬ  によって、Ｐｒ−ＳＭ  は０と置かれる（Ｓ４５０２）。ステップ４５０３でＰｒ−ＳＭ  が０より大きくないと判定されるので、ステップ４５０６でＭｓ  ＝１、ステップ４５０７でＭｎ  ＝０、ステップ４５０８でＭｎ  ＝−１とされ、このＭｎ  の値が記憶される。ステップ４５０９をたどってＭａ  ＝０，Ｍｂ  ＝０が選定され（Ｓ４５１１）、これがＰＷＭ信号として電力供給器３に出力される（Ｓ４５１４）。図６に示す電力供給器３にＭａ  ＝０，Ｍｂ  ＝０が入るといずれのトランジスタＴｒ１  ，Ｔｒ２  ，Ｔｒ３  ，Ｔｒ４  もオフのままとされ、結局は直流モータを回転させることがない。ステップ４５１４が終了した時点で同期管理部４１は、図２２において次の処理を指令する。まだｉ＝１であるので（Ｓ４６）、受信部５１の処理が開始される（Ｓ４７）。しかし、初期化の直後であるので、受信部５１は図１９のステップ２１１でリセットされた状態にある。制御の目標値や制御形態の種類を受け取ることができず、各格納部に初期化したときの暫定値を残したまま、制御はリターンされる。図２２のステップ４２でカウントに１が加算された後（ｉ＝２）、同期管理トリガの到来を待つ。
【０１０８】
１２μＳが経過して次のトリガ信号があると（Ｓ４３）、細時間帯Φ２  に入り、再度位置信号計測部４２が図２３に基づいて動作する（Ｓ４４）。モータは動いていないので、ステップ４４０１からの処理はｉ＝１のときと同じである。続いて、ＰＷＭ指令部４６が図２４に基づいて動作する（Ｓ４５）。いまはｉ＝２であるのでステップ４５０１からステップ４５０８へ跳び、Ｍｎ  は記憶されている「−１」から１が引かれて「−２」となる。ステップ４５０９をたどってＭａ  ＝０，Ｍｂ  ＝０が選定され（Ｓ４５１１）、これがＰＷＭ信号として電力供給器３に出力される（Ｓ４５１４）。図６に示す電力供給器３においてはＭａ  ＝０，Ｍｂ  ＝０が入るので依然として直流モータ２に電力が供給されることはない。なお、以後ｉが３，４，・・・，３２と変遷してもＭｎ  はマイナスの値を増やすだけであり、直流モータ２が回り出すことはない。いまはｉ＝２であるので（図２２のステップ４８を参照）、送信部５２の処理が開始される（Ｓ４９）。初期化の直後であって送信部５２は図１９のステップ２１２でリセットされた状態にあり、位置や速度や電流の現在情報を送り出すことはできず、制御はリターンされる。図２２のステップ４２でカウントに１が加算された状態で（ｉ＝３）、同期管理トリガの到来を待つ。
【０１０９】
細時間帯Φ３  に入ると、位置信号計測部４２が図２３に基づいて動作する（Ｓ４４）。モータは動いていないので、ステップ４４０１からの処理はｉ＝１のときと同じである。続いて、ＰＷＭ指令部４６が図２４に基づいて動作する（Ｓ４５）。ｉが１でないので、ステップ４５０１からの処理はｉ＝２のときと同じである。いまはｉ＝３であるので（Ｓ５０）、電流計測部４３の前半部分の処理が開始される（Ｓ５１）。図２５のステップ５１０２で計測を開始するための各種設定がＡ／Ｄ変換器で行われ、計測可能な状態に置かれて制御はリターンされる。
【０１１０】
細時間帯Φ４  に入ると、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。いまはｉ＝４であるので（Ｓ５２）、ステップ５３で電流計測部４３の後半部分である図２５のステップ５３０１，５３０２の処理がステップ５１０１を経て開始される。しかし、モータは回転していないので、検出電流Ｃｍ  は０であり、現在トルクＴＭ  は０と演算され、制御はリターンされる。細時間帯Φ５  に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。いまはｉ＝５であるので（Ｓ５４）、位置算出部４２１での処理が開始される（Ｓ５５）。これは、図２６の（ａ）に基づき処理される。モータ出力軸の現在位置ＰＭ  や位置の増減値ｄＰは図２１のステップ２３６や２３５で０と置かれているので、ステップ５５０１でＰＭ  は０とされる。そして、ステップ５５０２で回転速度Ｖも０と置かれる。このようにしてモータに動きのないことを確認して、制御はリターンされる。
【０１１１】
細時間帯Φ６  に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝６であるので（Ｓ５６）、速度算出部４２２での処理が開始される（Ｓ５７）。この処理は、図２７の（ａ）に基づいて処理される。Ｖ−１，Ｖ−２，Ｖ−３が図２１のステップ２３７で０と置かれ、Ｖは図２６のステップ５５０２ですでに０と置かれているので、図２７の（ａ）のステップ５７０１ないし５７０４においてＶ−４，Ｖ−３，Ｖ−２，Ｖ−１はいずれも０となる。従って、Ａ＝ΣＶ−ｉは０となり（Ｓ５７０５）、モータの回転速度ＶＭ  も０となる（Ｓ５７０６）。このようにしてモータに速度のないことを確認して、制御はリターンされる。
【０１１２】
細時間帯Φ７  に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝７であるので（Ｓ５８）、制御位置演算部４４１での前半部分の処理が開始される（Ｓ５９）。これは、図２８に基づき処理される。いまはｉ＝７であるので（Ｓ５９０１）、図２８のステップ５９０２から５９０７の処理がなされる。図２１のステップ２３１でＤＰ０  が０、図２６の（ａ）のステップ５５０１でＰＭ  が０と演算されているので、図２８のステップ５９０２でＣＰ０  ＝０となる。図２１のステップ２３１でＣＰ−１，ＣＰ−２，ＣＰ−３が０と置かれているので、図２８のステップ５９０３ないし５９０６においてＣＰ−４，ＣＰ−３，ＣＰ−２，ＣＰ−１は０となる。従って、ステップ５９０７においてＡ＝０となる。
【０１１３】
制御がリターンされて細時間帯Φ８  に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝８であるので（Ｓ６０）、制御位置演算部４４１での後半部分の処理が開始される（Ｓ６１）。図２８のステップ６００１の処理がなされてＢ＝０が与えられ、ステップ６００２ではＰＩ演算により求められた値Ｃは０となる。それゆえ、ステップ６００３，６００４を経てＰＷＭ目標値Ｐｒ−Ｐが０となる（Ｓ６００７）。
【０１１４】
細時間帯Φ９  に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝９であるので（Ｓ６２）、制御速度演算部４４２の前半部分の処理が開始される（Ｓ６３）。これは、図２９に基づき処理される。いまｉ＝９であるので（Ｓ６３０１）、図２９のステップ６３０２から６３０７の処理がなされる。図２１のステップ２３２でＤＶ０  がＶａｌ−ｍａｘであり、図２７の（ａ）のステップ５７０６で既に求められているＶＭ  ＝０とから、図２９のステップ６３０２でＣＶ０  ＝Ｖａｌ−ｍａｘとなる。図２１のステップ２３２でＣＶ−１，ＣＶ−２，ＣＶ−３が０と置かれているので、図２９のステップ６３０３ないし６３０６においてＣＶ−４，ＣＶ−３，ＣＶ−２は０となり、ＣＶ−１＝Ｖａｌ−ｍａｘとなる。従って、ステップ６３０７においてＡは０以外の値となる。
【０１１５】
細時間帯Φ１０に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝１０であるので（Ｓ６４）、制御速度演算部４４２の後半部分の処理が開始される（Ｓ６５）。図２９のステップ６５０１の処理でＢは０以外の値をとり、ステップ６５０２でＰＩ演算により求められた値Ｃは、ステップ６５０５，６５０６，６５０７のうちの該当するＰｒ−Ｖが与えられる。
【０１１６】
細時間帯Φ１１に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝１１であり（Ｓ６６）、制御トルク演算部４４３での処理が開始される（Ｓ６７）。これは、図３０に基づき、ステップ６７０１から６７１３の処理がなされる。図２１のステップ２３３でＤＴ０  がＴａｌ−ｍａｘであり、図２５のステップ５３０２でＴＭ  ＝０が求められているから、図３０のステップ６７０１でＣＴ０  ＝Ｔａｌ−ｍａｘとなる。図２１のステップ２３３でＣＴ−１，ＣＴ−２，ＣＴ−３が０と置かれているので、図３０のステップ６７０２ないし６７０５においてＣＴ−４，ＣＴ−３，ＣＴ−２は０となり、ＣＴ−１＝Ｔａｌ−ｍａｘとなる。従って、ステップ６７０６においてＡは０以外の値となる。続いて、Ｂが０以外の値をとり（Ｓ６７０７）、ステップ６７０８ではＰＩ演算により求められた値Ｃは、ステップ６７１１，６７１２，６７１３のうちの該当するＰｒ−Ｔが与えられる。
【０１１７】
細時間帯Φ１２に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝１２であるので（Ｓ６８）、ＰＷＭ目標値選択部４５での処理が開始され（Ｓ６９）、図３１のステップ６９０１から６９０７の処理がなされる。図２１のステップ２３４で制御形態Ｆ−Ｎが０と置かれているので、図３１のステップ６９０１，６９０２，６９０３を経てＰｒ−ＳＬ  ＝０が選択される（Ｓ６９０７）。なお、図３１の処理に先だつ図の２４のステップ４５０２でＰｒ−ＳＭ  ＝０とするためにＰｒ−ＳＬ  ＝０が既に使用されている。しかし、演算上Ｐｒ−ＳＬ  ＝０が求まるのは図３１のステップ６９０７に来てはじめてであるので、図２４のステップ４５０２の処理をするために、前述したごとく、図２１のステップ２３８においてＰｒ−ＳＬ  ＝０が予め登録されているのである。
【０１１８】
細時間帯Φ１３に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝１３であるので（Ｓ７０）、ＰＷＭ漸変値算出部４５２での処理が開始される（Ｓ７１）。しかし、今までに説明した構成ではＰＷＭ漸変値算出部４５２が採用されないことを前提にしているので、ここではステップ７１の説明を省く。
【０１１９】
細時間帯Φ１４に入り、位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。ｉ＝１４であるので、ステップ７２においてｉ≠ｎ（ｎ＝３２）と判断され、制御はリターンされる。細時間帯Φ１５に入ったときも、ｉ＝１４と同じ動作となる。
【０１２０】
細時間帯Φ３２における位置信号計測部４２とＰＷＭ指令部４６との最後の処理が実行されると、ステップ７２からステップ７３へ進められ、ｉ＝０と置き替えられて（Ｓ７３）、制御時間帯Ω１  が完了する。ステップ４２に戻ってカウンタｉが１と置かれ、同期管理トリガが現れれば直ちに次の制御時間帯Ω２  に入り、上記の一連の処理が繰り返される。
【０１２１】
以上の一連の処理はＰｒ−ＳＬ  （＝Ｐｒ−ＳＭ  ）＝０となる計算をしているが、直流モータ２が回転している場合も同様の経緯をたどることは言うまでもない。これらの処理を図１３のタイミングチャートを用いて説明する。図２１の初期化の処理は制御時間帯Ω１  の開始前に行われている。初期化部４１１の欄（図１３を参照）から分かるように、初期化はＭＰＵが立ち上がったときに開始され、タイマが所定時間ｕ０  を経過したときに同期管理部４１からの指令によって制御時間帯Ω１  が開始される。制御時間帯Ω１  においては、図２２に従い図１３中の黒いところのみが具体的に動作したことを示す。制御時間帯Ω１  の各細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φ３１，Φ３２で、ＰＷＭ指令部４６から電力供給器３に出力されたＰＷＭ信号Ｍａ  ，Ｍｂ  はオフである。一方、制御時間帯Ω１  のＰＷＭ目標値選択部４５で選択されたＰｒ−ＳＬ  も０であるので、矢印Ｙ１２で示すごとく制御時間帯Ω２  の各細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φ３１，Φ３２で電力供給器３に出力されるＰＷＭ信号Ｍａ  ，Ｍｂ  もオフとなる。従って制御時間帯Ω２  においても直流モータは停止したままである。
【０１２２】
図１４の制御時間帯Ω２  から分かるように、例えば細時間帯Φ４  からΦ１１までを消費することにより、情報入出力部５の受信部５１内のバッファに、上位制御機器７（図３を参照）の送信部７２から送られてきたトルク制御に関する制御入力情報が格納される。しかし、この制御時間帯Ω２  における受信部５１の起動（ｉ＝１）は制御入力情報の格納開始前であるので、受信部５１での処理は何も行われない。制御時間帯Ω２  の全ての処理は制御時間帯Ω１  の場合と同じく、最終的にＰＷＭ指令値Ｐｒ−ＳＭ  ＝０となる演算ばかりを行う。制御処理帯域Ω２  が終了してカウンタを１に置き替え、直ちに制御時間帯Ω３  が始まる。同期管理部４１は制御時間帯Ω２  のときと同じように、各細時間帯Φにおいて位置信号計測部４２やＰＷＭ指令部４６の処理の実行を命令するが、前者は依然としてモータに回転のないことを検出し、後者も依然としてオフばかりのＰＷＭ信号Ｍａ  ，Ｍｂ  を出力する。
【０１２３】
細時間帯Φ１  において、受信部５１内のバッファに格納されている制御入力情報が、位置信号計測部４２とＰＷＭ指令部４６における処理の後に読み出され、その後に受信部５１はリセットされる。読み出された信号は解読され、制御形態Ｆ−Ｎ＝１が図４に示す指定制御形態格納部４５１ａに、トルク目標値ＤＴ０  はトルク目標値格納部４４３ａに取り込まれ、それぞれの暫定値と置き替えられる。なお、位置の目標値や速度の目標値は来ていないので、位置目標値格納部４４１ａおよび速度目標値格納部４４２ａでは、初期化時に与えられた暫定値が残される。細時間帯Φ２  に進んで送信部５２が起動されるが、ｉ＝２の時点では上位制御機器７からは現在の情報を求める問い合わせが来ていないので、制御はリターンされる。
【０１２４】
細時間帯Φ３  ，Φ４  に進んでも、モータは回転していないから電流Ｃｍ  が０であることを検出する。細時間帯Φ５  からΦ１０に到るまでは先に述べた処理と同じで、最終的にはＰｒ−ＳＬ  ＝０を計算する。細時間帯Φ１１に入ると、図３０のステップ６７０１においてＣＴ０  ＝ＤＴ０  となる。制御時間帯Ω１  のときにＣＴ−１＝Ｔａｌ−ｍａｘ、Ω２  でＣＴ−２＝Ｔａｌ−ｍａｘとなっていて、初期化時の記憶値ＣＴ−３はまだ０であるので、ステップ６７０１から６７０５において、ＣＴ−４＝０，ＣＴ−３＝Ｔａｌ−ｍａｘ，ＣＴ−２＝Ｔａｌ−ｍａｘ，ＣＴ−１＝ＤＴ０  となる。ステップ６７０６，６７０７，６７０８のＡ，Ｂ，Ｃは０以外の値となる。Ｃがステップ６７０９以降で判定され、図３２の上段の箱内の黒い線上に存在する値がトルクのＰＷＭ目標Ｐｒ−Ｔとして出力される（Ｓ６７１１，６７１２，６７１３）。細時間帯Φ１２に到ると、図３１のステップ６９０１から６９０７の間に選択されるＰＷＭ選択値Ｐｒ−ＳＬ  として、制御形態Ｆ−Ｎ＝１に対応するＰＷＭ目標値Ｐｒ−Ｔが充てられる（Ｓ６９０６）。
【０１２５】
このＰＷＭ選択値Ｐｒ−ＳＬ  はＰＷＭ指令値Ｐｒ−ＳＭ  と扱われ、そのままＰＷＭ指令部４６に入力される。図１１や図１２の制御時間帯Ω３  における矢印Ｂ３  は、このＰＷＭ指令値Ｐｒ−ＳＭ  が２５（デューティ比２５／３２）であることを示している。図９はデューティ比が６／３２や３／３２を示しているが、ＰＷＭ指令値Ｐｒ−ＳＭ  が２５であれば、図９の場合と同様に、制御時間帯Ω４  の最初の２５個の細時間帯Φ１  ，Φ２  ，・・・，Φ２５でオンのＭａ  信号が出力され、細時間帯Φ２６，・・・，Φ３２ではオフの信号が出力される。この２５のパルス幅によって決まる実効電流が、直流モータ２を流れることは言うまでもない。ちなみに、図２４には表されていないが、細時間帯Φｉ  で電力供給器３に出力されるＰＷＭ信号Ｍａ  ，Ｍｂ  は、次の細時間帯Φｉ＋１  のＰＷＭ信号Ｍａ  ，Ｍｂ  が電力供給器３に入力されるまで保持されるようになっている。
【０１２６】
モータに電力が供給されることによって機構体に作用する負荷に打ち勝ってモータは加速し始める。制御時間帯がΩ５  ，Ω６  ，Ω７  ，・・・と進展する間もそれぞれの細時間帯Φ４  では実際のトルクＴＭ  が計測され、それが図１および図３０のステップ６７０１に示すようにフィードバックされる。このようにして、モータは上位制御機器７から要求されたトルク目標値ＤＴ０  を実現するように制御される。これらのＰＷＭ信号Ｍａ  によってモータが駆動されている間の制御時間帯Ω４  ，Ω５  ，Ω６  ，・・・の細時間帯Φ１  ないしΦ１２においても、制御時間帯Ω３  の場合と同じく初期化された値をもとにして位置や速度の演算が実行される。
【０１２７】
トルク制御を続けるうちに、モータがそのトルクと釣り合う速度に到達するが、その速度は安定を欠く。トルク制御によって所望する速度に到達したときには速度制御に切り替えることができるように、上位制御機器７はモータの現在の速度を問い合わせることができるようにしている。言うまでもなく各制御時間帯Ωにおける全部の細時間帯Φにおいて位置信号計測部４２が働いているので、図２７の（ａ）の手順によって速度算出部４２２が現在速度を把握している（Ｓ５７０６）。図１４を参照して、制御時間帯Ω３  の細時間帯Φ９  から制御時間帯Ω４  の細時間帯Φ３  にかけて受信部５１には速度の問い合わせが来ている。この問い合わせは制御時間帯Ω５  の細時間帯Φ１  において呼び出すことができるので、細時間帯Φ２  で送信部５２を起動させることにより、制御時間帯Ω４  の細時間帯Φ６  で算出された速度が送り出される。このようにして、上位制御機器７は、受信部７１を介してリアルタイムでモータの速度を得ることができる。ちなみに、制御時間帯Ω４  における細時間帯Φ１  で受信部５１を起動させても、問い合わせ情報は格納中であるので、その受信は次の制御時間帯Ω５  に先送りされることになっている。
【０１２８】受信部５１での問い合わせの受信と送信部５２での現在情報の送出を繰り返す間に、上位制御機器７は常時モータ速度を検知することができる。モータが予定した速度に到達したことを検知すると、図１５に示すように、上位制御機器７は制御時間帯Ω１２の例えば細時間帯Φ４  ないしΦ１１を費やして速度制御のための制御入力情報を送信部７２から送る。この情報は制御時間帯Ω１３の細時間帯Φ１  で読み取ることができるので、ｉ＝１における位置信号計測部４２とＰＷＭ指令部４６の処理の後に読み出される。これらは解読され、制御形態Ｆ−Ｎ＝２が図４に示す指定制御形態格納部４５１ａに、速度目標値ＤＶ０  は速度目標値格納部４４２ａに取り込まれ、今まで格納されていた値と置き替えられる。なお、トルク目標値ＤＴ０  はトルク目標値格納部４４３ａに残される。
【０１２９】
細時間帯Φ６  で演算されたモータ速度ＶＭ  と速度目標値ＤＶ０  とを用いて、図２９に従う手順により図３２の中段の箱内の黒い線上のＰＷＭ目標値Ｐｒ−Ｖが演算され、細時間帯Φ９  において出力される（Ｓ６５０５，６５０６，６５０７）。細時間帯Φ１２に到ると、図３１のステップ６９０１から６９０７の間に選択されるＰＷＭ選択値Ｐｒ−ＳＬ  に、制御形態Ｆ−Ｎ＝２に対応するＰＷＭ目標値Ｐｒ−Ｖが充てられる（Ｓ６９０５）。このＰＷＭ選択値Ｐｒ−ＳＬ  はＰＷＭ指令値Ｐｒ−ＳＭ  と扱われ、そのままＰＷＭ指令部４６に入力される。図１１や図１２の制御時間帯Ω１３における矢印Ｂ１３は、このＰＷＭ指令値Ｐｒ−ＳＭ  が１８であることを示している。
【０１３０】
このようにして速度制御を続けるうちに、モータ出力軸の位置が目的地までの距離のパルスカウント数Ｌ（図１１を参照）に近づく。停止させるためには減速する必要があり、また目的とする位置で可及的正確に止めることが望まれる。そこで、速度制御によって所望する位置に接近したときには位置制御に切り替えることができるように、上位制御機器７はモータの現在の位置を逐一問い合わすようにしている。言うまでもなく各制御時間帯Ωにおける全部の細時間帯Φにおいて位置信号計測部４２が働いているので、図２６の（ａ）の手順によって位置算出部４２１が現在位置を把握している（Ｓ５５０１）。時間Ｔの間の位置の増減値ｄＰのカウントは、図８で説明したとおりである。図１５を参照して、制御時間帯Ω１３の細時間帯Φ４  からΦ１１にかけて受信部５１には現在位置の問い合わせが来ている。この問い合わせは制御時間帯Ω１４の細時間帯Φ１  において呼び出すことができるので、細時間帯Φ２  で送信部５２が起動されると制御時間帯Ω１３の細時間帯Φ５  で算出された現在位置の情報が送り出される。このように、送信部５２が、上位制御機器７から問い合わせのあった制御時間帯Ωｊ  の後のできるだけ早い時期に問い合わせに対する回答を送り出すようにしていれば、上位制御機器７の受信部７１はリアルタイムでモータの現在位置を得ることができる。
【０１３１】
このような問い合わせに関する受信と送信を繰り返す間に、上位制御機器７は受信部７１を介して逐次モータ出力軸の位置を検知することができる。モータが予定した位置に接近したことが検知されると、図１６に示すように上位制御機器７は制御時間帯Ω３２の例えば細時間帯Φ４  ないしΦ１１を費やして位置制御のための制御入力情報を受信部５１へ送る。この情報は制御時間帯Ω３３の細時間帯Φ１  で読み取ることができるので、ｉ＝１における位置信号計測部４２とＰＷＭ指令部４６の処理の後に読み出される。これらは解読され、制御形態Ｆ−Ｎ＝３が図４に示す指定制御形態格納部４５１ａに、位置目標値ＤＰ０  は位置目標値格納部４４１ａに取り込まれる。なお、速度目標値ＤＶ０  は速度目標値格納部４４２ａに残され、先のトルク目標値ＤＴ０  もトルク目標値格納部４４３ａに残されたままとされる。
【０１３２】
制御時間帯Ω３３の細時間帯Φ７  において、細時間帯Φ５  で演算された現在位置ＰＭ  と位置目標値ＤＰ０  とを用いて図２８に従う手順により、図３２の下段の箱内の黒い線上の値がＰＷＭ目標値Ｐｒ−Ｐとして出力される（Ｓ６００５，６００６，６００７）。細時間帯Φ１２に到ると、図３１のステップ６９０１から６９０７の間に選択されるＰＷＭ選択値Ｐｒ−ＳＬ  に、制御形態Ｆ−Ｎ＝３に対応するＰＷＭ目標値Ｐｒ−Ｐが充てられる（Ｓ６９０４）。このＰＷＭ選択値Ｐｒ−ＳＬ  はＰＷＭ指令値Ｐｒ−ＳＭ  と扱われ、そのままＰＷＭ指令部４６に入力される。図１１や図１２の制御時間帯Ω３３における矢印Ｂ３３は、このＰＷＭ指令値Ｐｒ−ＳＭ  が２３であることを示している。
【０１３３】
モータを停止させるためには、上位制御機器７が現在位置を常時検知し、目的位置までの残存距離（残存パルスカウント数）から、新たな位置目標値ＤＰ０  を受信部５１に送る。それに基づいて上記の位置制御が繰り返される。図１２からも分かるように、制御時間帯Ω３５では、変更された位置目標値ＤＰ０  をもとに演算したＰＷＭ目標値Ｐｒ−Ｐ＝１４が使用されている。順次目標値を小さくして、遂には制御時間帯Ω３７で停止させるべくＰＷＭ目標値Ｐｒ−Ｐは０となり、従ってＰＷＭ指令値Ｐｒ−ＳＭ  も０となっている。なお、図１１はＰＷＭ指令値Ｐｒ−ＳＭ  を表示しているだけである。従って、ＰＷＭ信号Ｍａ  ，Ｍｂ  によって直流モータ２に流される電流は、制御時間帯Ω４  からΩ３８ということになる。
【０１３４】
このような一連の処理において、例えば図１６の制御時間帯Ω３３では黒い部分の位置算出部４２１（Φ５  ）と制御位置演算部４４１（Φ７  ，Φ８  ）だけが実行されているのでないことは上で述べた。制御時間帯Ω３３では制御時間帯Ω３２まで適用されていた速度制御が継続して適用されているとみなして、その細時間帯Φ６  では速度算出部４２２が、Φ９  ，Φ１０では制御速度演算部４４２が実行される。制御時間帯Ω３４の細時間帯Φ６  ，Φ９  ，Φ１０においても制御時間帯Ω３３における演算結果を使用しながら、速度制御の演算が続けられる。
【０１３５】
このように制御形態が位置制御に変更になっても速度制御のための演算を継続させておけば、図２９のステップ６３０２の演算に基づき、ステップ６３０３ないし６３０６における各記憶値ＣＶ−１ないしＣＶ−４が更新される。いま、制御時間帯Ω３４から位置制御となった後の制御時間帯Ω３６で、上位制御機器７から速度制御への制御形態の変更と速度目標値が提供されたとすれば、制御時間帯Ω３２，Ω３３，Ω３４，Ω３５において更新されている記憶値を用いて、制御時間帯Ω３６ではモータの現状を反映したＰＷＭ選択値Ｐｒ−ＳＬ  が演算される。従って、制御時間帯Ω３７では現在の速度を基点にしていち早く速度目標値に到達するＰＷＭ信号Ｍａ  ，Ｍｂ  を出力することができる。例えばモータを停止させようとして位置制御していたが、停止する直前になって現在と異なる速度によって停止予定位置を通過させたい場合に適用することができる。
【０１３６】
ところで、上位制御機器７から来る制御入力情報は、制御形態Ｆ−Ｎと制御目標値の両方であるとは限らない。制御時間帯Ω３４から位置制御となっている後の制御時間帯Ω３６の時点で、上位制御機器７から速度制御への制御形態の変更だけを指令することもできる。例えばモータを停止させようとして位置制御していたが、停止する直前になってそのときの速度を維持して前進を続けたい場合に適用することができる。
【０１３７】
トルク制御から速度制御に変更になった制御時間帯Ω１２の後の制御時間帯Ω１３，Ω１４，Ω１５，・・・Ω３２，Ω３３，・・・においても、トルク制御の演算が続けられる。図３０のステップ６７０１の演算に基づきステップ６７０２ないし６７０５における記憶値ＣＴ−１ないしＣＴ−４は更新される。位置制御から速度制御もしくはトルク制御に変更されたときも位置制御の演算が続けられ、図２８のステップ５９０２の演算に基づきステップ５９０３ないし５９０６における記憶値ＣＰ−１ないしＣＰ−４が更新される。
【０１３８】
以上の説明から分かるように、位置のＰＷＭ目標値演算部４４１Ｐ，速度のＰＷＭ目標値演算部４４２Ｖ，トルクのＰＷＭ目標値演算部４４３Ｔは異なる細時間帯Φで実行されるが、制御時間帯Ωの単位で見れば並行して実行されている。従って、指定形態目標値選択部４５１には図３２に示すように、トルクのＰＷＭ目標値Ｐｒ−Ｔ，速度のＰＷＭ目標値Ｐｒ−Ｖ，位置のＰＷＭ目標値Ｐｒ−Ｐが与えられているので、上位制御機器７から指令があれば指定形態目標値選択部４５１は即座に指定された制御形態に該当するＰＷＭ目標値を選択でき、遅れなくＰＷＭ指令値Ｐｒ−ＳＭ  を発して、所望の制御形態による運転に移ることができる。
【０１３９】
ちなみに、上記したごとく三つのＰＷＭ目標値の演算を、並行しないで実行させることも可能である。例えば図１５の制御時間帯Ω１３でトルク制御から速度制御に演算対象が変更になると、トルク制御のための演算を制御時間帯Ω１２で停止させ、制御時間帯Ω１３では速度制御の演算のみを行う。また、図１６の制御時間帯Ω３２で速度制御から位置制御に演算対象が変更になると、速度制御の演算は制御時間帯Ω３２で停止させ、制御時間帯Ω３３では位置制御の演算のみを行う。すなわち、一つの制御時間帯Ωｊ  において三種類の制御形態を対象とした演算を図２２に従って処理することは可能であるが、上位制御機器７から指定されなかった制御形態の演算はパスさせるのである。そのためには、図２８の処理では、図示しないが、ステップ５９０１の前に、Ｆ−Ｎが３であればステップ５９０１へ進み、３でないならリターンする比較器を設ければよい。図２９の場合には、ステップ６３０１の前に、Ｆ−Ｎが２であればステップ６３０１へ進み、２でないならリターンする比較器を設ければよい。図３０の場合には、ステップ６７０１の前に、Ｆ−Ｎが１であればステップ６７０１へ進み、１でないならリターンする比較器を設けておけばよい。
【０１４０】
このような制御は、上位制御機器７が制御目標値を情報入出力部５に送り出すとき、常に制御形態を抱き合わせている場合に可能となる。ＰＷＭ演算部５０は常時いずれか一つの制御形態に関わる演算をするだけであるので、前述した指定形態目標値選択部４５１はあえて設ける必要がない。上位制御機器７が例えば制御形態Ｆ−Ｎ＝２，速度目標値２０ｒｐｓを受信部５１に入力してくれば、それに見合ったＰＷＭ目標値Ｐｒ−Ｖが演算され、それがＰＷＭ指令値Ｐｒ−ＳＭ  と扱われ、そのままＰＷＭ指令部４６に出力される。図３３はその制御ブロック図を示している。
【０１４１】
以上の説明では、直流モータ２から検出された検出情報のうち電流情報は、現在の制御時間帯Ωｊ  において検出されている電流である。しかし、直前の制御時間帯Ωｊ−１  において検出されている電流であっても差し支えない。また、制御形態Ｆ−Ｎや制御目標値は、直前の制御時間帯Ωｊ−１  で指定されているものを使用している。これは、例えば図１４の制御時間帯Ω２  から分かるように制御入力情報の受信に多くの時間を必要とするからある。しかし、細時間帯Φ５  からΦ１２にかけて行われる処理を、例えば細時間帯Φ２４からΦ３１に移しておけば、ｉが１から２３までの間に受信できた制御入力情報については現在の制御時間帯Ωｊ  で処理することができるようになる。なお、後述する図３５には、ＰＷＭ目標値選択部４５とＰＷＭ漸変値算出部４５２の処理を、ｉ＝３０および３１で処理する例が示されている。
【０１４２】
ところで、各細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  では少なくとも出力軸２ｓの位置信号Ｅａ  ，Ｅｂ  の検出とＰＷＭ信号Ｍａ  ，Ｍｂ  の出力とが実行される。しかも、この二つの処理は各細時間帯Φの開始当初に実行される。この二つの処理は、常に時間ｔ（１２．５μＳ）の間隔で実行することが要求されるからである。これらの処理の後に実行される処理の種類は図７から分かるように細時間帯Φごとに異なり、しかもその処理に要する時間も異なっていることに注意すべきである。なお、位置信号の計測に要する時間およびＰＷＭ信号Ｍａ  ，Ｍｂ  を出力するに要する時間はそれぞれ一定であるので、ＰＷＭ指令部４６の処理を位置信号計測部４２の処理より先行させても差し支えない。位置信号Ｅａ  ，Ｅｂ  の検出を一定の時間間隔で行えば増減値ｄＰの計測は正確となり、ＰＷＭ信号Ｍａ  ，Ｍｂ  の出力を一定の時間間隔で行えば、デューティ比が維持されている間は全く同じ幅のパルスを発生させることができることになる。
【０１４３】
ところで、モータ出力軸の現在位置を求めるにあたり、図２３のところで述べたように、現在位置を演算する細時間帯Φｈ  から遡る時間Ｔの間のｎ個の細時間帯Φｈ−１  ，Φｈ−２  ，Φｈ−３  ，・・・で検出されている位置信号Ｅａ  ，Ｅｂ  を積算して増減値をカウントしている。そして、図２６の（ａ）のステップ５５０１において、その増減値を時間Ｔ遡った直前の制御時間帯Ωｊ−１  における細時間帯Φｈ  で求められている位置情報ＰＭ  に加算して現在位置を得ている。このことは、図８において制御時間帯Ωｊ−１  における細時間帯Φ６  から制御時間帯Ωｊ  における細時間帯Φ５  までの増減値ｄＰが６となることを用いて説明した。しかし、直前の制御時間帯Ωｊ−１  の全細時間帯Φ１  ，Φ２  ，Φ３  ，・・・，Φｎ−１  ，Φｎ  で検出されているモータ出力軸の位置信号Ｅａ  ，Ｅｂ  を積算して増減値を得ておき、それを２周期前の制御時間帯Ωｊ−２  で求められている位置情報ＰＭ  に加算して得るようにしてもよい。この場合、図２２に相当する処理は、図３４に表されたフローチャートで実行することができる。
【０１４４】
図２２のときと同じ要領でｉ＝ｎ（ｎ＝３２）までの処理を終えてステップ７２に到ると、ｉが１から３２に到るまでの間に位置信号計測部４２が計測した増減値ｄＰ（図２３のステップ４４１２または４４１３を参照）がｄｐＡ  と置かれる（Ｓ７２Ａ）。そして、ｄＰをステップ７２Ｂで０にリセットしてステップ７３からステップ４２へ進み、次の制御時間帯Ωｊ＋１  の開始を待つようにすればよい。ｄＰを０にリセットしたことにより、次の制御時間帯Ωｊ＋１  に実行される位置信号計測部４２の処理においては、制御時間帯Ωｊ  の細時間帯Φ１  以降に積み上げられた増減値ｄＰが使用される。ｉ＝５において、位置算出部４２１は図２６の（ｂ）に従って出力軸の位置を演算する（Ｓ５５０１ａ）。すなわち従前の位置ＰＭ  に制御時間帯Ωｊ−１  で積算されたｄｐＡ  が加算される。その加算値は図２８のステップ５９０２で使用されるＰＭ  として供される。位置の情報としては図２２のフローチャートに基づく場合よりもｔ×５（＝６２．５μＳ）分古くなるが、制御に影響を及ぼすほどのことはない。なお、速度算出部４２２においては、図２７の（ａ）に代えて（ｂ）に示すフローチャートが適用される。
【０１４５】
ちなみに、図２２のフローチャートに代えて、図３５のフローチャートを採用してもよい。これは同期管理トリガの代わりにタイマを直接働かせたものである。ｔ（＝Ｔ／ｎ＝１２．５μＳ）ごとにカウンタのｉが更新されるようになっていれば、各細時間帯Φにおける処理に何らの影響を与えるものでない。図３４のフローチャートに図３５の思想を適用することができるのも、言うに及ばない。
【０１４６】
図４のブロック図において、指定形態目標値選択部４５１を形態自動変更目標値選択部４５１ｂと置き替えてもよいことを既に述べた。この形態自動変更目標値選択部４５１ｂは、各制御目標値ＤＰ０  ，ＤＶ０  ，ＤＴ０  をもとに演算されたＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔの中から、制御入力情報で指定されている制御形態Ｆ−Ｎに該当するＰＷＭ目標値として選択された値が、モータ２の最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘを越えている場合には、他の制御形態Ｆ−Ｎに該当するＰＷＭ目標値であって他の制御形態におけるＰＷＭ最大許容値を越えない値を、ＰＷＭ選択値Ｐｒ−ＳＬ  として選択しようとするものである。
【０１４７】
これを目視的に表すと、図３６に示すように、図１の指定形態目標値選択部４５１に選択変更指令部４５１ｂ１  と許容範囲内確認部４５１ｂ２  を付加させた構成となる。言うまでもなく、後者は選択されたＰＷＭ目標値がその制御形態における最大許容値内にあるかどうかを判定するものである。範囲内にあればＰＷＭ選択値Ｐｒ−ＳＬ  として出力し、これがＰＷＭ指令値Ｐｒ−ＳＭ  と扱われてＰＷＭ指令部４６へ送り出される。範囲内になければ選択変更が指令され、上位制御機器７で指定されなかった他の制御形態のＰＷＭ目標値を選びだし、その目標値がその制御形態における最大許容値内にあるかどうか判定される。このようにして、図３７に示すように、通常は、位置について判定した後に速度について判定され、速度でも範囲外ならばトルクのＰＷＭ目標値が採用されるという順になる。その処理が、図４１のフローチャートに表されている。
【０１４８】
図３７の左側の三つのブロックから分かるように、位置のＰＷＭ目標値演算部，速度のＰＷＭ目標値演算部，トルクのＰＷＭ目標値演算部においては最大許容値内に規制したＰＷＭ目標値を出力する必要がないので、それぞれの演算部４４３，４４２，４４１での処理は図３８，図３９，図４０のフローチャートの手順となる。いずれのフローチャートにも、図３０，図２９，図２８に表された比較器６７０９，６７１０，６５０３，６５０４，６００３，６００４は設けられていない。従って、全てのＰＷＭ目標値が最大許容値外となっていることもあり得るので、その場合にはトルクの最大許容値で規制が掛けられるようにしている（図４１のステップ６９０８，６９０９を参照）。図４２は、トルクに関してのみ最大許容範囲内のＰＷＭ目標値を制御トルク演算部４４３から出力させるようにしたものである。すなわち、形態自動変更目標値選択部４５１ｂに入力されるＰＷＭ目標値として、位置または速度に関して演算されたＰＷＭ目標値Ｐｒ−Ｐ，Ｐｒ−Ｖ，は制限されないが、トルクに関して演算されたＰＷＭ目標値Ｐｒ−Ｔだけは、モータ２の最大許容電流に対応するＰＷＭ最大許容値Ｐｒａｌ−ｍａｘ−Ｔ以下に制限される。位置や速度で満たされるＰＷＭ目標値が存在しないためにトルクに到れば、もはやトルクに代わる制御は存在しないからである。
【０１４９】
こうした処理は、長い距離を目標にして移動しようとする走行台車に適用される。すなわち、長距離のために位置制御に基づく演算値Ｐｒ−Ｐでは最大許容値Ｐｒａｌ−ｍａｘ−Ｐを越え、大きな電流が要求されることになって、その演算値Ｐｒ−Ｐを採用することができない。そこで、速度制御に基づく演算値Ｐｒ−Ｖを用いて、最大値許容値Ｐｒａｌ−ｍａｘ−Ｖ以下の線形範囲で一定速度に保持しようとする目的で、形態自動変更目標値選択部４５１ｂが自動的に位置制御を速度制御に切り替えるのである。
【０１５０】
速度制御による演算値Ｐｒ−Ｖが最大許容値Ｐｒａｌ−ｍａｘ−Ｖを越える場合には、自動的にトルク制御による演算値Ｐｒ−Ｔに切り替えられることになる。このような処理を行う例は、前述の走行台車を位置制御で動かし始めようとする場合に起こる。長距離のために、位置制御に基づく演算値Ｐｒ−Ｐが最大許容値Ｐｒａｌ−ｍａｘ−Ｐを越える。速度制御に切り替えても、走行速度が遅いために速度制御に基づく演算値Ｐｒ−Ｖも最大値許容値Ｐｒａｌ−ｍａｘ−Ｖを越える。そこで、トルク制御に切り替えられる。トルク制御に基づく演算値Ｐｒ−Ｔが最大許容値Ｐｒａｌ−ｍａｘ−Ｔを越えるならば、最大許容値Ｐｒａｌ−ｍａｘ−Ｔにとどめられる。この場合、上位制御機器７が位置制御を指定していても、形態自動変更目標値選択部４５１ｂによって、直流モータを加速するために自動的にトルク制御に切り替えられることになる。トルク制御によって走行台車の速度が増すと、速度制御による演算値Ｐｒ−Ｖが最大許容値Ｐｒａｌ−ｍａｘ−Ｖ以内の線形範囲に入ってくる。形態自動変更目標値選択部４５１ｂは自動的に速度制御に切り替えて、一定速度で走行台車を走行させる。目的位置に近づくと、位置制御による演算値Ｐｒ−Ｐが最大許容値Ｐｒａｌ−ｍａｘ−Ｐ    内の線形範囲に入ってくる。形態自動変更目標値選択部４５１ｂは自動的に位置制御に切り替え、所定の位置で精度よく停止させることができるというようになる。
【０１５１】
図４３は、ＰＷＭ漸変値算出部４５２を設けた場合の処理系統を表したブロック図である。このＰＷＭ漸変値算出部４５２は図２や図４のブロック図にも表されているとおり、ＰＷＭ指令部４６の直ぐ手前に配置される。これは、ＰＷＭ目標値選択値Ｐｒ−ＳＬ  をなだらかに変化させようとするものである。すなわち、制御入力情報で指定されている制御形態Ｆ−Ｎの変更によるＰＷＭ選択値Ｐｒ−ＳＬ  が、変更前の制御形態Ｆ−Ｎに従うＰＷＭ選択値Ｐｒ−ＳＬ  と異なる場合に、制御形態変更指令を受けた後の制御時間帯Ωｊ  から幾つかの制御時間帯Ωｊ＋１  ，Ωｊ＋２  ，・・・を使って変更後のＰＷＭ選択値Ｐｒ−ＳＬ  に徐々に近づけるためのＰＷＭ漸変値Ｐｒ−ＧＲ  を求めるためのものである。従って、ＰＷＭ目標値選択部４５から出力されたＰＷＭ選択値Ｐｒ−ＳＬ  をＰＷＭ漸変値Ｐｒ−ＧＲ  に置き替え、それをＰＷＭ指令値Ｐｒ−ＳＭ  と扱ってＰＷＭ指令部４６に出力するようにしている。これによって、衝撃を伴うことなくモータ２の制御形態Ｆ−Ｎを変更することができる。
【０１５２】
このＰＷＭ漸変値算出部４５２は、図４４のフローチャートに従って処理される。図１１では、実線のＰＷＭ指令値Ｐｒ−ＳＭ  が制御時間帯Ω３  ，Ω１３，Ω２３，Ω３３，Ω３５，Ω３６，Ω３７で急変している。その値は、図１２のＰｒ−ＳＭ  の欄に記載されているとおりである。しかし、このように急激に変化するＰｒ−ＳＭ  をもとにしてＰＷＭ指令部４６からＰＷＭ信号Ｍａ  ，Ｍｂ  を出力させると、直流モータ２を流れる電流も急変する。従って、制御形態を変更した時点で出力軸の回転数が急変したり軸トルクが急変すれば、モータで駆動されている機構体は衝撃を受けることになる。漸変値を算出する目的は、図１１中に破線で示すようにＰＷＭ指令値Ｐｒ−ＳＭ  を滑らかに変化させることによって、衝撃の発生を緩和させようとするものである。
【０１５３】
このＰＷＭ漸変値算出部４５２においては、指定形態目標値選択部４５１から出力されたＰＷＭ選択値Ｐｒ−ＳＬ  を滑らかに変化させるための段数が、モータのみならず機構体を含めた機械系に対して期待する過渡応答特性が得られる程度までに衝撃を和らげることができる速度を想定して決定される。例えば、制御周期Ｔが４００μＳであれば４ｍＳ程度のトルク応答を想定し、それより早い変化による衝撃を緩和するために設定される段の数は、概ね４ｍＳを制御周期Ｔで割って得られる１０とされる。なお、そのための処理手順の一例を図４４の（ａ）のフローチャートに示す。このチャートは、上記のごとく１０段を採用すると長くなるので、４段にとどめて表されている。ＰＷＭ選択値Ｐｒ−ＳＬ  を段数の４で割り、その商が各段の式に平等に分配されている。
【０１５４】
このようなＰＷＭ漸変値算出部４５２が設けられる場合には、図２１のソフトウエアのリセットにおいて、ステップ２３８におけるＰｒ−ＳＬ  ＝０をＰＷＭ指令用データ記憶部４６ｂに入れることに代えて、Ｐｒ−ＳＬ  ＝０をステップ２３８ａで漸変値算出部用データ記憶部４５２ｂに入れる。加えて、ステップ２３８ｂにおいて図４４の（ａ）で使用される演算上の記憶値であるＲｅ−１，Ｒｅ−２，Ｒｅ−３が０と置かれ、これらもまた漸変値算出部用データ記憶部４５２ｂに格納される。図２１におけるその他の初期化は異なるところがない。もちろん、図２３から図３１までや、図３８から図４１までのフローチャートはそのまま適用することができる。
【０１５５】
図２２のフローチャートにおいてｉ＝１３（細時間帯Φ１３）に到ると、前述したように位置信号計測部４２はｉ＝１のときと同じ動作を繰り返し、ＰＷＭ指令部４６はｉ＝２のときと同じ動作を繰り返す。その後にステップ７０を経てＰＷＭ漸変値算出部４５２の処理が開始される（Ｓ７１）。図４４の（ａ）を参照して、ステップ７００１におけるＰｒ−ＳＬ  はｉ＝１２の指定形態目標値選択部４５１の処理（図３１，図４１を参照）で求められているので、それを４で割り、その整数がＲｅ−０と置かれる。Ｒｅ−１，Ｒｅ−２，Ｒｅ−３には０が与えられているので、ステップ７００２から７００５においてＲｅ−４，Ｒｅ−３，Ｒｅ−２，Ｒｅ−１が求められる。このＲｅ−４，Ｒｅ−３，Ｒｅ−２，Ｒｅ−１は特に意味をなすものではないが、Ｒｅ−４（＝Ｐｒ−ＧＲ  ）のみがＰｒ−ＳＬ  の修正値として採用されることになる。
【０１５６】
図４５の選択値Ｐｒ−ＳＬ  の欄を参照して、制御時間帯Ω２  において０であったＰｒ−ＳＬ  を、制御時間帯Ω３  において２５に変更する場合について述べる。図４４の（ａ）のステップ７００２から７００５までにおいて、Ｒｅ−４，Ｒｅ−３，Ｒｅ−２，Ｒｅ−１が求められる。この計算を幾つかの制御時間帯Ωで繰り返すと、ステップ７００２のＲｅ−４が徐々に増大する。すなわち、制御時間帯Ω３  ではＲｅ−４＝６，Ω４  ではＲｅ−４＝１２となる。Ω６  になるとＲｅ−４＝２５が与えられる。Ｒｅ−４である６，１２，１８，２５が図１１中のＺａの部分の始動時の漸変値Ｐｒ−ＧＲ  に相当し、これらはＰＷＭ選択値Ｐｒ−ＳＭ  と扱って、そのままＰＷＭ指令部４６へ出力される。図４６は、制御時間帯Ω１２においてトルク制御用に２５であったＰｒ−ＳＬ  を、制御時間帯Ω１３において速度制御用の１８に変更している場合を示している。図４７は、制御時間帯Ω２２において速度制御用に１８であったＰｒ−ＳＬ  を、制御時間帯Ω２３において速度制御用の１５に変更している場合を示す。この場合、制御形態はＦ−Ｎ＝２のままとされているので、変更後は異なる速度で走行することを意図している。図４８は、制御時間帯Ω３２において速度制御用に１５であったＰｒ−ＳＬ  を、制御時間帯Ω３３において位置制御用の２３に変更している場合を示している。制御時間帯Ω３５においては１４に、Ω３６においては５に、Ω３７においては０にそれぞれ変更されている。図４６，図４７，図４８の最下段にＰＷＭ漸変値Ｐｒ−ＧＲ  が示され、それをＰＷＭ指令値Ｐｒ−ＳＭ  とみなした変化が、図１１中のＺｂ，Ｚｃ，Ｚｄの部分に表されている。なお、漸変値を算出する式の他の例が図４４の（ｂ）に示されている。漸変用段数は３であるが、ＰＷＭ選択値Ｐｒ−ＳＬ  を段数より１つ多い４で割り、その商に異なる重みをつけて各段の式に分配されている。
【０１５７】
図４９および図５０は、速度制御しているときに、上位制御機器７が制御形態としてＦ−Ｎ＝０を送信してきた例である。制御時間帯Ω１７ではＰＷＭ選択値Ｐｒ−ＳＬ  が例えば１８であり、制御時間帯Ω１８Ａ  ではＰｒ−ＳＬ  がなしとなる。Ｐｒ−ＳＬ  がない場合には位置制御，速度制御，トルク制御のいずれもが行われない。ＰＷＭ選択値Ｐｒ−ＳＬ  ＝１８のＰＷＭ信号Ｍａ  ，Ｍｂ  が出力される制御時間帯Ω１８Ａ  まではモータが速度制御に基づいて駆動されるが、制御時間帯Ω１９Ａ  からは図６に示すトランジスタＴｒの全部がオフとなり、慣性力のみで出力軸が回転するに過ぎない。制御形態Ｆ−Ｎが０になったとはいえ、図３３の場合を除けば、制御時間帯Ω１８Ａ  以降もＰＷＭ演算部５０における各種制御の演算は続けられる。従って、Ｆ−Ｎ＝２が受信されたり、Ｆ−Ｎ＝２と速度目標値ＤＶ０  を受信したりすると、惰走中の現在速度を考慮したうえで演算される速度で始まる速度制御が再開される。ＰＷＭ漸変値算出部４５２設けられている場合には、図４４の（ａ）で値のないＰｒ−ＳＬ  を処理することのないように、ステップ７００１の前にステップ７０００が設けられる。このように速度制御をしている最中に上位制御機器７が制御形態Ｆ−Ｎとして０を送信してくる例として、走行中にブレーキを掛けるにあたり、モータを非駆動状態にしておきたい場合を挙げることができる。なお、Ｆ−Ｎ＝０のときでも、上位制御機器７から速度や位置の問い合わせがあれば、それを次回または次々回の制御時間帯において送信部５２から上位制御機器７へ送り出すことは前述の例と変わるところがない。ちなみに、このＰＷＭ漸変値算出部４５２は、図３３や図３６に示した構成のサーボ制御においても適用することができる。
【０１５８】
図５１は１つの上位制御機器７から複数の直流モータを本発明に係るサーボ制御方法によって制御しようとするモータ駆動装置８９の構成を表したブロック図である。情報入出力部５が固有の番号を有して複数設けられると共に、シリアル通信用回線６１で接続されている。そして、情報入出力部５ごとに設置された直流モータ２のそれぞれに対して、位置制御，速度制御もしくはトルク制御のいずれかの制御を、シリアル通信用回線６１を介して個別に指令しまた変更できるようになっている。このような装置は、例えば図５２に示すロボットアーム７５ａに適用される。図示のロボットアームは５つの関節を有して人間の腕を実現したものであるが、その各関節を動かすために直流モータ２も５つ備えられる。もちろん、各モータにはエンコーダ１，電力供給器３，ＰＷＭ制御手段４，情報入出力部５からなるサーボ制御装置８５が付随されており、上位制御機器７からシリアル通信用回線６１を通して制御に関するコマンドを受けると、それぞれのモータには図１１に示した運転をさせることができる。
【０１５９】
上位制御機器７と各直流モータ２との間の情報処理は、上述したように各情報入出力部５にＩＤ番号を付しておくことによって可能となる。モータは複数存在するにもかかわらず、一つの回線で順次全てのモータに指令を与え、また位置，速度，トルクの現在情報を上位制御機器７へ返すことができるようになる。言うまでもないが、「１」なる数字の与えられたＩＤ番号５３１  のモータは第１関節における「Ｍｏｔｉｏｎ  −１」を支配することを表している。その動作を具体的に述べれば、各ＰＷＭ制御手段４には、他のそれと区別するためのＩＤ番号が予め定められ、各情報入出力部５にそのＩＤ番号５３が予め記憶される。コントローラ７は、直流電源６３を投入した後それぞれのＰＷＭ制御手段４が初期化するための時間を見込んで暫く待機し、その後に予め決められている通信を行う。図５１および図５３を参照して、「１」のＩＤ番号５３１  が付されたモータ１１  を例えば位置制御する場合、ＩＤ＝１を付記した位置制御のコマンドが送信部７２から全ての情報入出力部５に供給される。全てのモータの情報入出力部５は同時にコマンドを受け取るが、ＩＤ番号が一致する情報入出力部５１  のみが、そのコマンドに基づきＰＷＭ制御手段４１  で位置制御の演算を行う態勢を整える。他のモータの情報入出力部はＩＤ番号が一致しないことから、受信したコマンドを無視する。続いて、ＩＤ＝２を付記した速度制御のコマンドが、全ての情報入出力部５に提供される。ＩＤ番号が一致する情報入出力部５２  のみが、そのコマンドに基づきＰＷＭ制御手段４２  で速度制御演算を行う態勢を整える。順次、同様にＩＤ＝ｋを付記した速度制御のコマンドが、全てのモータの情報入出力部５に提供され、ＩＤ番号が一致する情報入出力部５ｋ  のみが、そのコマンドに基づきＰＷＭ制御手段４ｋ  が該当する制御演算に入る態勢を整える。なお、各情報入出力部５の受信部５１内のバッファに格納された制御入力情報は、それぞれのＰＷＭ演算部５０の各制御時間帯Ωｊ  の細時間帯Φ１  において読み出され、細時間帯Φ２  以降で所定の制御が実行されることは言うまでもない。
【０１６０】
ちなみに、ｋ個のモータを使用した場合の同期には、厳密に言ってＴ（制御周期）×ｋの時間的ずれが生じる。しかし、ＰＷＭ漸変値算出部４５２（図４４のフローチャートを参照）が設けられていれば、期待する過渡応答特性が得られる時間よりＴ×ｋが小さい場合に、このずれによる遅れは許容できることになる。図５４は、各モータのＰＷＭ制御手段４への情報の問い合わせの例を示している。ＩＤ番号５３１  が「１」であるモータ２１  の現在位置を問い合わせるには、ＩＤ＝１を付記した位置の問い合わせコマンドが全てのモータの情報入出力部５に供給される。全てのモータの情報入出力部５は同時にそのコマンドを受け取るが、ＩＤ番号が一致する情報入出力部５１  のみが、そのコマンドに基づきＰＷＭ制御手段４１  が回答する態勢を整える。他のモータの情報入出力部はＩＤ番号が一致しないことから、受信したコマンドを無視する。ＰＷＭ制御手段４１  においては、直前の制御時間帯Ωｊ−１  における細時間帯Φ５  で算出した位置の回答コマンドにＩＤ＝０を付記したうえで、現在の制御時間帯Ωｊ  の細時間帯Φ２  において送信部５２から、「０」のＩＤ番号７３を持った上位制御機器７の受信部７１へ送信する（図５１を参照）。
【０１６１】
上述したごとく直流モータ２は情報入出力部５，ＰＷＭ制御手段４，電力供給器３と共に機構体７５に配置され、複数の直流モータ２が組み込まれた機構体７５と上位制御機器７を含む主制御体７６とは、シリアル通信用回線６１とサーボ電源用動力線６２によって接続されている。このようにしておくと、前にも述べたが、電力供給器３を可動部材７５ａ（図５２を参照）に取り付けておくことによって、その可動部材の動きによってトランジスタを自然冷却し、電力供給器３の動作の安定を図ることができる。ＰＷＭ制御手段４と情報入出力部５とを一つのＭＰＵで構成しておくことができ、その場合、ＭＰＵには位置検出器１から出力される位置信号Ｅａ  ，Ｅｂ  と電流検出器３１から出力される電流信号Ｃｍ  とを直接入力でき、また電力供給器３へはＰＷＭ信号Ｍａ  ，Ｍｂ  を直接出力でき、さらには上位制御機器７とも直接に交信することができるようになる。従って、交信には無線装置が必要でなく、シリアル通信用回線６１で直接信号を授受することから、極めて安価に信頼性の高いシステムが構築される。シリアル通信の採用でワイヤ本数が著しく少なくなり、細いハーネスゆえに機構体への艤装も容易となる。サーボ電源のための動力線６２についても同様である。
【０１６２】
図５５は本発明を適用することができるブラシレス直流モータ２Ｎと、それに電力を供給する電力供給器３Ｎとを示している。サーボ制御用に使用されるブラシレス直流モータ２Ｎは、主として、三相交流を与えるとモータ軸を中心にした回転磁界を発生させる三相巻線２ｆと、永久磁石により構成される回転子２ｒとからなる。その回転子２ｒは、永久磁石が作る磁界と回転磁界との磁気的吸引力が動力となって、回転磁界の回転に同期して回転するようになっている。
【０１６３】
ここで、直流を交流に変換するインバータを用いて、ブラシレス直流モータ２Ｎを駆動する基本原理を述べる。図５５には電圧型インバータの主回路構成の一例が表され、図５６にはインバータ制御のためのスイッチングパターンとそれによって生成された合成磁界の向きの変化が示されている。Ｍａはスイッチング素子Ｔｒ１  へのスイッチ指令信号であり、Ｍａ’はスイッチング素子Ｔｒ２  へのスイッチ指令信号である。説明を簡単にするために、ＭａがオンのときＭａ’はオフ、ＭａがオフのときＭａ’はオンになるものとする。ＭｂとＭｂ’、ＭｃとＭｃ’も同様とする。図５６に示すように各相のスイッチはそれぞれ１８０度間隔でオン・オフを繰り返し、ａ相，ｂ相，ｃ相はそれぞれ１２０度のずれのある位相でもってスイッチング動作する。これによって、ａ相，ｂ相，ｃ相のスイッチングモードはＩないしＶＩの６通りとなる。
【０１６４】
スイッチングモードＩの場合のスイッチング素子の動作を図５７の（ａ）に示す。スイッチング素子Ｔｒ１  ，Ｔｒ４  ，Ｔｒ５  がオンとなり、ａ相およびｃ相では巻線２ｆａ  ，２ｆｃ  へ向かう電流が流れ、ｂ相からは巻線２ｆｂ  を介して電流が流れ出る。このときそれぞれの相電流により作られる合成磁界の向きは、ｂ相の向きと一致する（２１０°）。スイッチングモードＩＩの場合には、図５７の（ｂ）に示すように、スイッチング素子Ｔｒ５  がオフでＴｒ６  がオンとなる。ｃ相からも電流が流れ出るようになり、合成磁界はａ相の向きと正反対になる（２７０°）。スイッチングモードＩに比べると合成磁界の向きは６０度進む。同様にスイッチングモードが順次変わると、合成磁界のベクトルは図５６の下部分に示したように６０度ずつ移行する。このスイッチングモードの繰り返しにより、磁界は回転するようにして誘起され、相電圧波形は合成磁界の向きを表したものと同じ形となる。なお、ブラシレス直流モータの発生トルクは、回転磁界による磁界と永久磁石により構成される回転子の磁界との相互作用により求まる。
【０１６５】
このようなスイッチングパターンによりモータに与えられる相電圧波形は階段状に変化し、電流も同じ波形となる。図５６中に表されているスイッチ指令信号Ｍａ，Ｍａ’等はデューティ比が１のＰＷＭ信号に相当するものである。従って、図示された信号Ｍａの幅が一つの制御時間帯Ωｊ  に相当し、Ｍａ’の幅が次の制御時間帯Ωｊ＋１  に相当することになる。それゆえ、スイッチ指令信号Ｍａを発生させるＰＷＭ指令値Ｐｒ−ＳＭ  は現在の制御時間帯Ωｊ  で演算しても、ＰＷＭ指令部４６によってＰＷＭ信号Ｍａ  として出力されるのは次々回の制御時間帯Ωｊ＋２  ということになる。他のスイッチ指令信号Ｍａ’，Ｍｂ，Ｍｂ’，Ｍｃ，Ｍｃ’についても同様である。
【０１６６】
ところで、ブラシレス直流モータをサーボ制御するためには、一つの制御時間帯Ωの中でスイッチ指令信号Ｍａ，Ｍｂ，Ｍｃの幅を変化させればよい。信号幅を小さくすることは、デューティ比を１より小さくすることを意味する。本発明においては制御時間帯Ωをｎ個の細時間帯Φに分割しているので、デューティ比が５０％であっても、オンとなる細時間帯Φを１６個（＝３２×０．５０）連続させることができるだけでなく、図５８のように、幾つかの細時間帯Φに分散させることもできる。合成磁界の向きを表した階段状の波形の個々の幅ｆＭ  が磁界の強さを表しているので、図５８の場合の回転磁界の強さは図５６の場合の半分となり、デューティ比に対応することは言うまでもない。
【０１６７】
ＰＷＭ指令値Ｐｒ−ＳＭ  を発生させる演算手順は、基本的にブラシ付きモータの場合と同様である。制御目標値が変更されたり制御形態が変更されるなどしてデューティ比が変わった場合にも、ブラシ付きモータの場合と同様に、ＰＷＭ漸変値算出部４５２を機能させれば、回転速度の変化やトルク変化による衝撃の発生を可及的に抑制することができる。なお、図７に示した処理以外のブラシレス直流モータ特有の処理や演算のためには、各制御時間帯Ωにおける細時間帯Φ１４からΦ３２の全部もしくは一部をあてがえばよい。また、例えば細時間帯Φ６  とΦ７  の間にブラシレス直流モータ特有の処理の一部を挿入した場合は、細時間帯Φ８  以降を繰り下げるといったことも行うことができる。
【０１６８】
上記したように、発生トルクは回転磁界による磁界と永久磁石により構成される回転子の磁界との相互作用により求まるので、ブラシレス直流モータを制御する場合、回転磁界および永久磁石による磁界を測定する必要がある。回転磁界は、図５５に示した電流検出器３１ａ，３１ｂ，３１ｃで各相の電流を検出すれば、間接的に検出することができる。回転子２ｒの位置はエンコーダ１で検出すればよく、モータ情報検出器３５による現況情報の取り込みや、その後の処理を同期管理部に支配させることも、ブラシ付きモータの場合と変わるところがない。
【０１６９】
【発明の効果】
以上の詳細な説明から分かるように、本発明によれば、位置，速度，トルクの制御に関わる全ての演算を細分化し、一つの制御時間帯内に全ての演算や処理を可能とし、直流モータの動力を所望する制御形態に合せて迅速に引き出すことができる。具体的には、モータへの供給電力を決定するＰＷＭ信号が割り当てられる周期の制御時間帯をｎ等分して細時間帯を規定し、その細時間帯のうちの異なる一つまたは複数の細時間帯を使って複数のＰＷＭ目標値のそれぞれを個別に演算するようにしているので、制御形態に応じたＰＷＭ目標値の演算を制御時間帯の単位で眺めて並列に処理することができる。すなわち、いずれのＰＷＭ目標値も常時演算されているので、制御形態の変更や制御目標値の変更の指令があっても変更に伴う割り込み処理は必要でなくなる。外部からの不定期な信号による割り込みを採用しないので、細時間帯ごとに予め決められた処理や演算を割り当てておくことができ、しかも割り込み処理のために一つの制御時間帯に長い時間を確保しておく必要もなく、応答性のよい制御が実現されるようになる。
【０１７０】
いずれのＰＷＭ目標値もモータの現状を反映させたうえで並列的に準備しておくことができ、変更のための演算に長い時間を要せず、迅速に移行させることが可能となる。さらには、何時制御形態の変更指令があっても現状を加味した演算に基づく移行となり、移行時の衝撃は少なくなる。制御入力情報によって指定された制御形態に従い、演算されたＰＷＭ目標値の中から一つを現在の制御時間帯内で選択し、選択されたＰＷＭ目標値に見合うＰＷＭ信号を、直後の制御時間帯の全ての細時間帯で出力するようにしているので、細時間帯ごとに割り当てられた処理または演算を予め決められたタイミングで開始させ、全ての処理および演算を一つの制御時間帯内で完了させることができる。このように処理や演算の対象とその時期および所要時間が管理されるので、処理や演算に時間的な安定性が図られ、極めて信頼性の高いサーボ制御が可能となる。それのみならず、回転速度検出用カウンタや位置検出用カウンタを必要としないので、極めて小型で簡単なハードウェア構成とすることができる。
【０１７１】
幾つかのＰＷＭ目標値の中から一つを選択する場合、制御入力情報によって指定された制御形態に該当するＰＷＭ目標値が、モータの最大許容電流に対応するＰＷＭ最大許容値を越えるならば、指定されていない制御形態のＰＷＭ値であっても、それが該当する制御形態のＰＷＭ最大許容値を越えていないかぎり、ＰＷＭ選択値として選択するようにしておくことができる。この場合、モータの稼働状況から見てより好ましい制御形態に自動的に移行させることになり、無駄時間を節約した運転を実現することができる。もちろん、過大電流の供給を回避して、モータの劣化や性能低下を防止することもできる。
【０１７２】
ＰＷＭ選択値が変更前のＰＷＭ選択値と異なる場合に、後続する幾つかの制御時間帯を使って変更後のＰＷＭ選択値に徐々に近づけるためのＰＷＭ漸変値を求め、そのＰＷＭ漸変値に見合ったモータに衝撃を加えることのないＰＷＭ信号を出力すれば、モータの回転数やトルクの急変が回避され、可及的滑らかな移行が実現される。これは、各制御演算で求められたＰＷＭ選択値が直前のそれに比べて大きな差があっても、直流モータに加える電流をトルクループの時定数の範囲内で徐々に変化させることができるからである。従って、いずれかの制御形態から他の制御形態へ移行させる場合でも、モータを装着した機構体にモータが発振源となる振動や衝撃が生じるのを抑えることが可能となる。ＰＷＭ漸変値は制御時間帯を単位として変化するので制御形態も極めて高速に移行されることになる。これから分かるように、衝撃を回避するために電流フィードバック系の上流に信号補正手段を設ける必要もなく、随時いずれの制御形態へも切り替えることが可能となる。
【０１７３】
ＰＷＭ制御部と上位制御機器との間に情報伝達するための情報入出力部を設け、これに受信部と送信部とを備えておく場合には、上位制御機器から制御目標値や制御形態を含む制御入力情報を取り込み、情報ごとにＰＷＭ演算部の格納部に設定することを、同期管理部からの指示に従って行うことができる。また、受信部を介して問い合わせのあった位置，速度，電流のいずれかの現時点でのデータを上位制御機器に送り出すことも、同期管理部４からの指示によって可能となる。
【０１７４】
電力供給器を構成するトランジスタを直流モータが装着されている機構体の可動部材に取り付けておけば、可動部材の動きによってトランジスタが自然空冷され、トランジスタの放熱を促進することができる。放熱フィンは不要となり、制御装置の小型化が図られる。一つの上位制御機器で複数のモータを制御するような場合に電力供給器を上位制御機器に取り付けておくと、上位制御機器との間でのシリアル通信も行いやすくなる。
【０１７５】
機構体に複数の直流モータを搭載し、モータそれぞれのサーボ制御装置の情報入出力部に固有の番号を付しておくと、上位制御機器との間でシリアル通信が可能となり、その結果、モータごとに位置制御，速度制御もしくはトルク制御のいずれかの制御を個別に並行して指令することができるようになる。そのためのシリアル通信用回線とサーボ電源用動力線とは、モータの搭載数にかかわりなく最小本数で済ませることができる。しかも、高価な無線設備は必要でなく、ノイズの影響を受けることもなく、システムの信頼性を向上させることができる。
【０１７６】
ＰＷＭ制御部と情報入出力部とは一つのＭＰＵで構成しておくことができ、それによって、ＭＰＵにはモータ情報検出器からの情報を直接取り込み、電力供給器へはＰＷＭ信号を直接出力でき、上位制御機器とも直接交信できるようになる。ＭＰＵを使用すれば、装置の著しい小型化が図られることも言うまでもない。直流モータとしてはブラシ付きモータにかぎらず、ブラシレス直流モータ特有の演算を制御時間帯に組み込んでおけば、ブラシレス直流モータに対しても本発明を適用することができる。
【図面の簡単な説明】
【図１】本発明に係る直流モータのサーボ制御方法におけるＰＷＭ制御部の処理工程を表したブロック図。
【図２】サーボ制御方法を実現する装置を表したブロック図。
【図３】モータ駆動装置の全体構成を概略的に表したブロック図。
【図４】ＰＷＭ制御部の詳細な構成を表したブロック図。
【図５】位置検出器としてのエンコーダの一例の構成図およびその検出波形図。
【図６】トランジスタからなる電力供給器の構成図。
【図７】同期管理部の指令を受けて各細時間帯での処理や演算のスケジールを表したタイミングチャート。
【図８】エンコーダの検出信号とそれに基づくモータ出力軸の位置の増減値のカウント要領を表したタイミングチャート。
【図９】制御時間帯ごとに与えられるＰＷＭ指令値と、同期管理トリガを受けて送出されるＰＷＭ信号Ｍａ  ，Ｍｂ  との関係を表したタイミングチャート。
【図１０】ＰＷＭ演算部で演算されたＰＷＭ目標値であって、（ａ）は位置に関する演算値とその制限を表したグラフ、（ｂ）は速度に関する演算値とその制限を表したグラフ、（ｃ）はトルクに関する演算値とその制限を表したグラフ。
【図１１】直流モータの始動から停止までの一連の動きとモータの制御を表したグラフ。
【図１２】位置，速度，トルクを並行して演算したそれぞれのＰＷＭ目標値と、制御形態に基づいて選択されたＰＷＭ選択値とを示す一覧表。
【図１３】サーボ制御開始当初に行われる初期化時の処理を表したタイミングチャート。
【図１４】図１３に続く処理であって、初期化後に同期管理トリガに基づきトルク制御しているときのタイミングチャート。
【図１５】図１４に続く処理であって、同期管理トリガに基づきトルク制御から速度制御に変更しているときのタイミングチャート。
【図１６】図１５に続く処理であって、同期管理トリガに基づき位置制御によって停止するまでのタイミングチャート。
【図１７】サーボ制御装置の始動から停止までの概略を表したフローチャート。
【図１８】サーボ制御装置の初期化時の全体手順を表したフローチャート。
【図１９】ハードウエア関係の初期化を表したフローチャート。
【図２０】モータ出力軸の初期位置を検出する工程を表したフローチャート。
【図２１】演算上必要となる各種の記憶値を初期化しておくためのフローチャート。
【図２２】同期管理トリガの指令を受けて一つの制御時間帯内で展開される処理や演算の種類とその開始タイミングを表したフローチャート。
【図２３】位置信号計測部における処理を表したフローチャート。
【図２４】ＰＷＭ指令部における処理を表したフローチャート。
【図２５】電流計測部における処理を表したフローチャート。
【図２６】位置算出部における処理を表し、（ａ）は遡るｎ個の細時間帯で検出されている位置の増減値を使用した場合のフローチャート、（ｂ）は直前の制御時間帯で検出されている位置増減値を使用した場合のフローチャート。
【図２７】速度算出部における処理を表し、（ａ）は時間Ｔからなる連続して遡る四つの期間に検出されている位置の増減値をもとにした速度を使用する場合のフローチャート、（ｂ）は連続して遡る四つの制御時間帯で検出されている位置の増減値をもとにした速度を使用する場合のフローチャート。
【図２８】位置のＰＷＭ目標値演算部における処理を表したフローチャート。
【図２９】速度のＰＷＭ目標値演算部における処理を表したフローチャート。
【図３０】トルクのＰＷＭ目標値演算部における処理を表したフローチャート。
【図３１】指定形態目標値選択部における選択処理を表したフローチャート。
【図３２】指定形態目標値選択部におけるＰＷＭ選択値の選択の様子を目視的に表したブロック図。
【図３３】指定形態目標値選択部を備えないＰＷＭ制御部における処理工程を表したブロック図。
【図３４】図２２に代わる制御を表したフローチャート。
【図３５】図２２に代わる他の制御を表したフローチャート。
【図３６】形態自動変更目標値選択部を備えたＰＷＭ制御部における処理工程を表したブロック図。
【図３７】形態自動変更目標値選択部におけるＰＷＭ選択値の選択の様子を目視的に表したブロック図。
【図３８】形態自動変更目標値選択部に出力されるトルクのＰＷＭ目標値を演算するためのフローチャート。
【図３９】形態自動変更目標値選択部に出力される速度のＰＷＭ目標値を演算するためのフローチャート。
【図４０】形態自動変更目標値選択部に出力される位置のＰＷＭ目標値を演算するためのフローチャート。
【図４１】形態自動変更目標値選択部における選択処理を表したフローチャート。
【図４２】形態自動変更目標値選択部におけるＰＷＭ選択値の選択の様子を目視的に表した他の例のブロック図。
【図４３】ＰＷＭ漸変値算出部を備えたＰＷＭ制御部における処理工程を表したブロック図。
【図４４】ＰＷＭ漸変値算出部における処理を示し、（ａ）は漸変用段数を４とした例のフローチャート、（ｂ）は漸変用段数を３とした例のフローチャート。
【図４５】トルク制御によって出発するときの漸変値一覧表。
【図４６】トルク制御から速度制御に変更するときの漸変値一覧表。
【図４７】速度制御中に速度目標値を変更したときの漸変値一覧表。
【図４８】速度制御から位置制御に変更するときの漸変値一覧表。
【図４９】速度制御状態から慣性力走行になったときのタイミングチャート。
【図５０】速度制御状態から慣性力走行になったときの各制御時間帯における選択値を示す一覧表。
【図５１】本発明に係るサーボ制御装置を備える複数の直流モータをシリアル通信用回線によって接続したときの概略構成を表したブロック図。
【図５２】シリアル通信用回線によって接続された複数の直流モータが装着されているロボットアームの駆動システム図。
【図５３】ＩＤ番号を付記した制御入力情報を上位制御機器から各モータの情報入出力部に送信しているときのタイミングチャート。
【図５４】ＩＤ番号を付記した現在情報をモータの情報入出力部から上位制御機器に送信しているときのタイミングチャート。
【図５５】ブラシレス直流モータのための電圧型インバータの主回路構成図。
【図５６】インバータ制御のためのスイッチングパターンとそれによって生成された合成磁界の向きの変化を表したタイミングチャート。
【図５７】電圧型インバータにおけるスイッチング素子の動作を示し、（ａ）はスイッチングモードＩの場合の動作図、（ｂ）はスイッチングモードＩＩの場合の動作図。
【図５８】本発明が適用されたインバータ制御のためのスイッチングパターンとそれによって生成された合成磁界の向きの変化を表したタイミングチャート。
【図５９】従来技術におけるＰＷＭ式サーボ制御器の代表的な構成を示したブロック図。
【符号の説明】１…位置検出器（エンコーダ）、２…直流モータ、２Ｎ…ブラシレス直流モータ、２ｓ…モータ出力軸、３…電力供給器、４…ＰＷＭ制御部、５…情報入出力部、７…上位制御機器、３１…電流検出器、３５…モータ情報検出器、４１…同期管理部、４２…位置信号計測部、４５…ＰＷＭ目標値選択部、４６…ＰＷＭ指令部、５０…ＰＷＭ演算部、５１…受信部、５２…送信部、６１…シリアル通信用回線、６２…サーボ電源用動力線、７５…機構体、７５ａ…ロボットアーム（可動部材）、８５…サーボ制御装置、４２１…位置算出部、４２２…速度算出部、４４１…制御位置演算部、４４１Ｐ…位置のＰＷＭ目標値演算部、４４２…制御速度演算部、４４２Ｖ…速度のＰＷＭ目標値演算部、４４３…制御トルク演算部、４４３Ｔ…トルクのＰＷＭ目標値演算部、４５１…指定形態目標値選択部、４５１ｂ…形態自動変更目標値選択部、４５２…ＰＷＭ漸変値算出部、Ｃｍ  …電流信号、ＤＰ０  ，ＤＶ０  ，ＤＴ０  …制御目標値、ｄＰ…位置の増減値、Ｅａ  ，Ｅｂ  …モータ出力軸の位置信号、Ｆ−Ｎ…制御形態、Ｍａ  ，Ｍｂ  …ＰＷＭ信号、Ｐｒ−Ｐ，Ｐｒ−Ｖ，Ｐｒ−Ｔ…ＰＷＭ目標値、Ｐｒ−ＳＬ  …ＰＷＭ選択値、Ｐｒａｌ−ｍａｘ…ＰＷＭ最大許容値、Ｐｒ−ＳＭ  …ＰＷＭ指令値、Ｐｒ−ＧＲ  …ＰＷＭ漸変値、ＰＭ  …位置情報、Ｐｒａｌ−ｍａｘ…ＰＷＭ最大許容値、Ｔ…周期、Ｔｒ１  〜Ｔｒ６  …トランジスタ、ｕ０  …予め決められた時間、Ω…制御時間帯、Φ…細時間帯。
【図１】
0003542032.tif 000023
【図２】
0003542032.tif 000024
【図３】
0003542032.tif 000025
【図４】
0003542032.tif 000026
【図５】
0003542032.tif 000027
【図６】
0003542032.tif 000028
【図７】
0003542032.tif 000029
【図８】
0003542032.tif 000030
【図９】
0003542032.tif 000031
【図１０】
0003542032.tif 000032
【図１１】
0003542032.tif 000033
【図１２】
0003542032.tif 000034
【図１３】
0003542032.tif 000035
【図１４】
0003542032.tif 000036
【図１５】
0003542032.tif 000037
【図１６】
0003542032.tif 000038
【図１７】
0003542032.tif 000039
【図１８】
0003542032.tif 000040
【図１９】
0003542032.tif 000041
【図２０】
0003542032.tif 000042
【図２１】
0003542032.tif 000043
【図２２】
0003542032.tif 000044
【図２３】
0003542032.tif 000045
【図２４】
0003542032.tif 000046
【図２５】
0003542032.tif 000047
【図２６】
0003542032.tif 000048
【図２７】
0003542032.tif 000049
【図２８】
0003542032.tif 000050
【図２９】
0003542032.tif 000051
【図３０】
0003542032.tif 000052
【図３１】
0003542032.tif 000053
【図３２】
0003542032.tif 000054
【図３３】
0003542032.tif 000055
【図３４】
0003542032.tif 000056
【図３５】
0003542032.tif 000057
【図３６】
0003542032.tif 000058
【図３７】
0003542032.tif 000059
【図３８】
0003542032.tif 000060
【図３９】
0003542032.tif 000061
【図４０】
0003542032.tif 000062
【図４１】
0003542032.tif 000063
【図４２】
0003542032.tif 000064
【図４３】
0003542032.tif 000065
【図４４】
0003542032.tif 000066
【図４５】
0003542032.tif 000067
【図４６】
0003542032.tif 000068
【図４７】
0003542032.tif 000069
【図４８】
0003542032.tif 000070
【図４９】
0003542032.tif 000071
【図５０】
0003542032.tif 000072
【図５１】
0003542032.tif 000073
【図５２】
0003542032.tif 000074
【図５３】
0003542032.tif 000075
【図５４】
0003542032.tif 000076
【図５５】
0003542032.tif 000077
【図５６】
0003542032.tif 000078
【図５７】
0003542032.tif 000079
【図５８】
0003542032.tif 000080
【図５９】
0003542032.tif 000081