スレーブフォロワの制御信号をマスタソースと同期させる方法およびシステム
スレーブフォロワ(108)をマスタソース(104)と同期させる方法が提供される。この方法は、マスタソースとスレーブフォロワとの関係を規定する工程と、(168)、マスタソースの第1の位置(132)を入力する工程と、(176)、およびスレーブフォロワの第1の位置(136)を入力する工程と、を含む。この方法はまた、スレーブフォロワがマスタソースと同期する第2の位置(188)を規定する工程と、(184)、およびスレーブフォロワの第1の位置と前記第2の位置との間で曲線をフィッティングする工程と、(196)を含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に制御信号に関し、より具体的には、スレーブフォロワ(slave follower)の制御信号をマスタソース(master source)と同期させる方法およびシステムに関する。
【背景技術】
【0002】
少なくとも既知のいくつかのシステムは、マスタソースおよびスレーブフォロワを含む。一般に、スレーブフォロワの動きは、マスタソースの動きによって決まる。具体的には、スレーブフォロワとマスタソースとは、位置対位置(position−to−position)関係に従って動作する。より具体的には、スレーブフォロワの位置は、マスタソースのプロファイルの関数として規定される。例えば、マスタソース−スレーブフォロワ関係を規定する関数は、マスタソースが第1の位置にあるとき、スレーブフォロワは第2の位置になくてはならないことを記述(dictate)する。したがって、システムの動作中、スレーブフォロワの位置は、マスタソース−スレーブフォロワ関係を規定する関数に基づいて、マスタソースのプロファイルに追従することになる。スレーブフォロワがそのプロファイルの範囲外で動作し始めた場合、このシステムは、スレーブフォロワの制御信号を調整して、その制御信号をマスタソースと同期させなければならない。例えば、マスタソースの始動後にスレーブフォロワが始動するシステムでは、スレーブフォロワとマスタソースとが、マスタソース−スレーブフォロワ関係を規定する関数に従って動作することができるように、スレーブフォロワの制御信号をマスタプロファイルと同期させなければならない。これは、時に「フライング結合(flying−coupling)」として知られる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第6591158号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
典型的には、既知のシステムでは、スレーブフォロワの制御信号は、スレーブフォロワのある位置を、マスタソースの特定の位置と対応させるべき複数の区切り点を規定することによって、マスタプロファイルと同期するように構成される。具体的には、スレーブフォロワの始動時、スレーブフォロワは、次の区切り点でスレーブフォロワの制御信号をマスタプロファイルと同期させるのに必要となる任意の速度で動作する。したがって、スレーブフォロワの速度および加速度は、比較的制御されていない。したがって、加速度および/または速度の急増または急減による加加速度など、スレーブフォロワに望ましくない運動が生じることがある。加加速度とは、本明細書では加速度の微分である。典型的には、この運動は、大部分のシステムで許容できないものである。さらに、スレーブフォロワの制御信号をマスタプロファイルと同期させる既知の方法では、マスタソースに制約を課し、かつ/またはスレーブフォロワから制約を解除する必要がしばしば生じることがある。具体的には、スレーブフォロワをマスタソースと同期させることができるように、マスタソースの運動速度が低減することがある。別の例では、スレーブフォロワを同期させるために、スレーブフォロワを、その能力を超えた速度で動作させる必要が生じ得る。したがって、既知の方法では、典型的にはシステムの運動学的限界を超えてしまう。
【課題を解決するための手段】
【0005】
一態様では、スレーブフォロワをマスタソースと同期させる方法が提供される。この方法は、マスタソースとスレーブフォロワとの関係を規定する工程と、マスタソースの第1の位置を入力する工程と、スレーブフォロワの第1の位置を入力する工程と、を含む。この方法はまた、スレーブフォロワがマスタソースと同期する第2の位置を規定する工程と、スレーブフォロワの第1の位置と前記第2の位置との間に曲線をフィッティングする(fit)工程と、を含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【0006】
別の態様では、マスタソースおよびスレーブフォロワを含むシステムが提供される。このシステムはまた、マスタソースとスレーブフォロワとの関係を規定する工程と、マスタソースの第1の位置を入力する工程と、スレーブフォロワの第1の位置を入力する工程と、によって、スレーブフォロワをマスタソースと同期させるように構成されたプロセッサを含む。このプロセッサはまた、スレーブフォロワがマスタソースと同期する第2の位置を規定し、スレーブフォロワの第1の位置と前記第2の位置との間に曲線をフィッティングする。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【0007】
さらに別の態様では、コンピュータ可読媒体上で実施されるコンピュータプログラムが提供される。このコンピュータプログラムは、マスタソースとスレーブフォロワとの関係を規定する工程と、マスタソースの第1の位置を入力する工程と、スレーブフォロワの第1の位置を入力する工程と、によって、スレーブフォロワをマスタソースと同期させるようにコンピュータに指令するように構成された少なくとも1つのコードセグメントを含む。このコンピュータプログラムはまた、スレーブフォロワがマスタソースと同期する第2の位置を規定し、スレーブフォロワの第1の位置と前記第2の位置との間で曲線をフィッティングするようにコンピュータに指令するように構成された少なくとも1つのコードセグメントを含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の境界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【図面の簡単な説明】
【0008】
【図1】例示的なシステムの概略図である。
【図2A】図1に示すマスタソースの位置を時間の関数として表すマスタプロファイルを示す図である。
【図2B】図1に示すスレーブフォロワの位置を時間の関数として表す例示的な制御信号を示す図である。
【図3】図2Bに示すような制御信号を、図2Aに示すようなマスタプロファイルと同期させる曲線を規定する例示的な方法の流れ図である。
【図4A】図2Aに示すマスタプロファイルを示す図である。
【図4B】図1に示すスレーブフォロワの位置を表す位置曲線を示す図である。
【図4C】図4Bに示す位置曲線によって規定された、図1に示すスレーブフォロワの速度を表す速度曲線を示す図である。
【図4D】図4Cに示す速度曲線によって規定された、図1に示すスレーブフォロワの加速度を表す加速度曲線を示す図である。
【図5A】図2Aに示すマスタプロファイルを示す図である。
【図5B】図1に示すスレーブフォロワの位置を表すスレーブフォロワ位置曲線を示す図である。
【図5C】図5Bに示す位置曲線によって規定された、図1に示すスレーブフォロワの速度を表す速度曲線を示す図である。
【図5D】図5Cに示す速度曲線によって規定された、図1に示すスレーブフォロワの加速度を表す加速度曲線を示す図である。
【図6A】図2Aに示すマスタプロファイルを示す図である。
【図6B】図1に示すスレーブフォロワの位置を表すスレーブフォロワ位置曲線を示す図である。
【図6C】図6Bに示す位置曲線によって規定された、図1に示すスレーブフォロワの速度を表す速度曲線264を示す図である。
【図6D】図6Cに示す速度曲線によって規定された、図1に示すスレーブフォロワの加速度を表す加速度曲線を示す図である。
【図7】図7Aは図4に示す5次ランプ(quintic ramp)を示し、図7Bは図7Aに示す5次ランプを調整する曲線の一実施形態を示す図である。
【図8】図8Aは図4に示す5次ランプを示す図で、図8Bは図8Aに示す5次ランプを調整する曲線の代替実施形態を示す図である。
【発明を実施するための形態】
【0009】
本発明は、スレーブフォロワ、マスタソース、およびコンピュータを含むシステムを提供する。一実施形態では、コンピュータは、スレーブフォロワおよびマスタソースのそれぞれと動作制御可能に通信している。別の実施形態では、コンピュータは、マスタソースの信号を監視するだけでよい。かかるコンピュータの技術的効果は、スレーブフォロワの運動学的制約に従う位置対位置関係を用いて、スレーブフォロワの制御信号をマスタソースのプロファイルと同期させることである。一実施形態では、プロセッサおよび/またはコンピュータプログラムによってコンピュータに指令する。プロセッサおよび/またはコンピュータプログラムの技術的効果は、スレーブフォロワの運動学的制約に従った位置対位置関係を用いて、制御信号をマスタプロファイルと同期させるようにコンピュータに指令することである。
【0010】
例示的な実施形態では、5次エルミートスプライン(quintic−hermite spline)を適用して、制御信号の第1の位置と、前記制御信号がマスタプロファイルと同期するものとなる第2の位置との間に曲線をフィッティングすることによって、制御信号をマスタプロファイルと同期させる。したがって、マスタソースに制約を課すことなく、スレーブフォロワから制約を除去することなく、かつ/またはスレーブフォロワ内で加加速度運動などの望ましくない運動を生じることなく、制御信号がマスタプロファイルと同期することになる。さらに、この例示的な実施形態では、スレーブフォロワの1つまたは複数の制約を反映させるように、曲線を調整することができる。例えば、一実施形態では、5次エルミートスプラインを用いて、曲線の、制約を超える1つまたは複数の部分内に1つまたは複数の点を収めることによって、曲線を調整する。さらなる実施形態では、スレーブフォロワを曲線から外して動作させること、スレーブフォロワを曲線から外して動作させる間、スレーブフォロワを制約の範囲内で動作させること、およびスレーブフォロワを元の曲線上に戻す新しい曲線を生成することによって、曲線を調整する。
【0011】
さらに、一実施形態では、システムの性能維持を促進する時間枠内で、制御信号をマスタプロファイルと同期させる。具体的には、スレーブフォロワの挙動を妨げる、または制限することによって、システムを保護する。さらに、マスタソースに関しては、このシステムによって広範囲にわたる挙動が可能となる。例えば、マスタソースは、短運動もしくは長運動、高速もしくは低速、および/または高加速度もしくは低加速度で動作させることができる。さらに、このシステムは、スレーブフォロワが制約に近付く、または制約を超えた場合には、自己補正を試みる。
【0012】
本発明は、マスタソースおよびスレーブフォロワに関して説明しているが、当業者には理解されるように、本発明はまた、位置対位置関係で動作するいかなるシステムおよび/またはいかなる機器にも応用することができることに留意されたい。例えば、本明細書で使用する用語「マスタソース」および「スレーブフォロワ」は、それだけに限られるものではないが、モータ、液圧装置、エンジン、および/または空気圧装置を指すことがある。
【0013】
さらに、本発明は、プロセッサおよびコンピュータプログラムに関して説明しているが、当業者には理解されるように、本発明はまた、制御信号をマスタプロファイルと同期させるように構成されたいかなるシステムおよび/またはプログラムにも応用することができる。例えば、本明細書では、用語「プロセッサ」は、当技術分野においてプロセッサと呼ばれる集積回路だけに限らず、コンピュータ、プロセッサ、マイクロコントローラ、マイクロコンピュータ、プログラマブルロジックコントローラ、特定用途向け集積回路、および他のプログラマブル回路を広く指す。プロセッサとは、フロッピー(登録商標)ディスク、コンパクトディスク読出し専用メモリ(CD−ROM)、光磁気ディスク(MOD)、またはデジタル多用途ディスク(DVD)などのコンピュータ可読媒体からデータを読み出すためのフロッピー(登録商標)ディスクドライブまたはCD−ROMドライブなどの装置を含み得るコンピュータの一部でよい。
【0014】
図1は、例示的なシステム100の概略図である。システム100は、マスタソース104、スレーブフォロワ108、およびプロセッサ116を含むコンピュータ112を含む。この例示的な実施形態では、コンピュータ112は、システム100、具体的にはマスタソース104およびスレーブフォロワ108と動作制御可能に通信し、それらを動作させるように構成されている。一実施形態では、プロセッサ116は、システム100を動作させるようにコンピュータ112に指令するように構成される。さらに、またはあるいは、コンピュータプログラムによって、システム100を動作させるようにコンピュータ112に指令する。
【0015】
例示的な実施形態では、スレーブフォロワ108の動きは、マスタソース104の動きによって決まる。より具体的には、スレーブフォロワ108とマスタソース104とは、位置対位置関係に従って動作し、すなわちスレーブフォロワ108の位置は、マスタソース104のプロファイルの関数として規定される。例えば、マスタソース−スレーブフォロワ関係を規定する関数によって、マスタソース104が位置「5」などの第1の位置にあるとき、スレーブフォロワ108は、位置「2」などの第2の位置にあるべきことを指示することができる。したがって、システム100の動作中、一実施形態では、スレーブフォロワ108の位置は、マスタソース−スレーブフォロワ関係を規定する関数に基づいて、マスタソース104のプロファイルに追従することになる。スレーブフォロワ108が、マスタプロファイルの範囲外で動作し始めた場合、システム100は、システム100が適正に動作し続けるように、スレーブフォロワ108をマスタプロファイルと同期させる。例えば、マスタソース104の始動後にスレーブフォロワ108が始動する場合、スレーブフォロワ108とマスタソース104とが、マスタソース−スレーブフォロワ関係を規定する関数に従って動作するように、スレーブフォロワ108をマスタプロファイルと同期させる。
【0016】
図2Aは、時間の関数としてのマスタソース104の位置を表すマスタプロファイル120を示す。図2Bは、時間の関数としてのスレーブフォロワ108の位置を表す例示的な制御信号124を示す。この例示的な実施形態では、マスタプロファイル120は、図2Aの位置「5」として示す第1の位置132から開始している。さらに、制御信号124は、図2Bの位置「4」として示す第1の位置136から開始している。本明細書では、「第1の位置」とは、スレーブフォロワ108が、マスタプロファイル120と同期するように指令された時点における、マスタソース104またはスレーブフォロワ108の一方の位置として定義する。したがって、当業者には理解されるように、スレーブフォロワ108および/またはマスタソース104は、第1の位置132および第1の位置136を規定した時点で静止していても、かつ/または移動していてもよい。
【0017】
例示的な実施形態では、システム100の動作前に、位置対位置関係を規定して、マスタプロファイル120のマスタソース104の位置を、制御信号124のスレーブフォロワ108の位置と関連付ける。具体的には、この関係によって、マスタプロファイル120が特定の位置にあるときの、制御信号124の位置を規定する。例示的な実施形態では、制御信号124とマスタプロファイル120とは、1対1関係で動作するように構成される。当業者には理解されるように、制御信号124とマスタプロファイル120とは、適切な任意の関係によって規定することができる。1対1関係では、マスタプロファイル120が位置「5」にあるとき、制御信号124も位置「5」となるように構成される。しかし、図2Aおよび2Bに示すように、制御信号124が第1の位置136で「4」を有するとき、マスタプロファイル120は第1の位置132で「5」を有する。したがって、制御信号124がマスタプロファイル120と同期する。
【0018】
図3は、スレーブフォロワ108をマスタプロファイル120と同期させる曲線を規定する例示的な方法164の流れ図160である。この例示的な実施形態では、方法164は、マスタプロファイル120のマスタソース104の位置を、制御信号124のスレーブフォロワ108の位置と関連付けるプロファイルを規定すること(168)を含む。このプロファイルを、コンピュータ112に入力する(172)。さらに、方法164は、マスタプロファイル120のマスタソース104の第1の位置132と、制御信号124のスレーブフォロワ108の第1の位置136とを含む初期状態を入力すること(176)を含む。上述のように、この例示的な実施形態では、第1の位置132は「5」であり、第1の位置136は「4」である。したがって、この例示的な実施形態では、位置「4」および「5」をコンピュータ112に入力する(176)。
【0019】
この例示的な実施形態では、方法164はまた、スレーブフォロワ108がマスタプロファイル120と同期するように構成された第2の位置188を規定すること(184)を含む。この例示的な実施形態では、第2の位置188は、マスタプロファイル120および制御信号124の位置によって規定され、時間、速度、および/または加速度によって規定されるのではない。例えば、この例示的な実施形態では、スレーブフォロワ108は、位置「9」でマスタプロファイル120と同期するように構成されている。したがって、位置「9」をコンピュータ112に入力する(192)。当業者には理解されるように、この例示的な実施形態では、第2の位置188を「9」として規定しているが、方法164は、どの位置においても、制御信号124をマスタプロファイル120と同期させることができる。
【0020】
次に、方法164は、制御信号124の第1の位置136と、第2の位置188との間で曲線をフィッティングすること(196)を含む。図4Bは、マスタプロファイル120と同期中のスレーブフォロワ108の位置を表す位置曲線200を示す。図4Bに示すように、位置曲線200は、第1の位置136と第2の位置188との間でフィッティングすた(196)ものである。図4Aは、マスタプロファイル120を示し、図4Bは、位置曲線200を示し、図4Cは、位置曲線200によって規定されたスレーブフォロワ108の速度を表す速度曲線208を示し、図4Dは、速度曲線208によって規定されたスレーブフォロワ108の加速度を表す加速度曲線212を示す。この例示的な実施形態では、プロファイル、第1の位置136、第1の位置132、および第2の位置188に基づいて位置曲線200をフィッティングする(196)。より具体的には、この例示的な実施形態では、制御信号124によって表すスレーブフォロワ108をマスタプロファイル120と同期させながら、加加速度などの望ましくない運動が実質的になくなるように、5次エルミートスプラインを用いて位置曲線200をフィッティングする(196)。本明細書では、加加速度は、速度および/または加速度の大幅な急増または急減として定義する。さらに、加加速度は、経時的位置曲線の3次微分(third derivative)として表される。したがって、以下でより詳細に説明するように、曲線208および212では加加速度が見受けられない。
【0021】
曲線208および212に加加速度が見受けられないことを適切に説明するために、加加速度の例を図5A〜5Dに示す。具体的には、図5Aは、マスタプロファイル120を示し、図5Bは、1次ランプ(linear ramp)を用いて第1の位置136と第2の位置188との間でフィッティングすたスレーブフォロワ位置曲線220を示す。具体的には、位置曲線220は、マスタプロファイル120と同期中のスレーブフォロワ108の位置を表す。図5Cは、位置曲線220によって規定されたスレーブフォロワ108の速度を表す速度曲線224を示し、図5Dは、速度曲線224によって規定されたスレーブフォロワ108の加速度を表す加速度曲線228を示す。この例では、速度曲線224は、スレーブフォロワ108が第2の位置188でマスタプロファイル120と同期する時間「.05」と「.06」の間で生じる第1のスパイク232と、時間「0」で生じる第2のスパイク234とを含む。スパイク232は、スレーブフォロワ108がマスタプロファイル120と同期したときのスレーブフォロワ108の速度の急減を表し、スパイク234は、時間「0」でのスレーブフォロワ108の速度の急増を表している。したがって、ランピング過程(ramping process)の開始時、およびスレーブフォロワ108がマスタプロファイル120と同期した時点で、スパイク232および234によって、スレーブフォロワ108に加加速度または他の望ましくない運動が生じることになる。同様に、図5Dに示すように、加速度曲線228も、スレーブフォロワ108が第2の位置188でマスタプロファイル120と同期する時間「.05」と「.06」の間で生じる第1のスパイク236と、時間「0」で生じる第2のスパイク238とを含む。スパイク236は、スレーブフォロワ108がマスタプロファイル120と同期したときのスレーブフォロワ108の加速度の急減と、その後の加速度の急増とを表し、スパイク238は、時間「0」でのスレーブフォロワ108の加速度の急減を表している。したがって、ランピング過程の開始時、および/またはスレーブフォロワ108がマスタプロファイル120と同期した時点で、スパイク236およびスパイク238によって、スレーブフォロワ108に加加速度が生じることがある。
【0022】
別の例では、図6Aは、位置曲線120を示し、図6Bは、3次ランプ(cubic ramp)を用いて第1の位置136と第2の位置188との間でフィッティングすたスレーブフォロワ位置曲線260を示す。具体的には、位置曲線260は、マスタプロファイル120と同期中のスレーブフォロワ108の位置を表す。図6Cは、位置曲線260によって規定されたスレーブフォロワ108の速度を表す速度曲線264を示し、図6Dは、速度曲線264によって規定されたスレーブフォロワ108の加速度を表す加速度曲線268を示す。この例では、図5Cに示すスパイク232および234などのスパイクが、速度曲線264から実質的になくなっている。しかし、加速度曲線268は、スレーブフォロワ108が第2の位置188でマスタプロファイル120と同期する時間「.05」と「.06」の間で生じる第1のスパイク272と、時間「0」で生じる第2のスパイク274とを含む。スパイク272は、スレーブフォロワ108がマスタプロファイル120と同期したときのスレーブフォロワ108の加速度の急増を表し、スパイク274は、時間「0」でのスレーブフォロワ108の加速度の急増を表している。したがって、ランピング過程の開始時、およびスレーブフォロワ108がマスタプロファイル120と同期した時点で、スパイク272および274によって、スレーブフォロワ108に加加速度が生じることがある。
【0023】
したがって、図4Cおよび4Dに戻ると、曲線208および212はそれぞれ、ランピング過程のどの部分においても、加加速度を生じ得るいかなるスパイクも含まない。したがって、図4Cおよび4Dを、図5Cおよび5D、ならびに図6Cおよび6Dと比較すると、第1の位置136と第2の位置188との間で曲線をフィッティングする(196)際に5次スプラインを使用することによって、スレーブフォロワ108、より一般的にはシステム100に加加速度が生じることが実質的になくなっている。さらに、図4Bに示す位置曲線200をフィッティングす(196)、使用することによって、スレーブフォロワ108の制約を解除または除去せず、かつ/またはマスタソース104に制約を課すことなく、スレーブフォロワ108がマスタプロファイル120と同期することになる。しかし、位置曲線200では、スレーブフォロワ108に課された制約を反映させることができない。例えば、この例示的な実施形態では、スレーブフォロワ108は最大速度「120」による制約を受けている。図4Cを参照すると、位置曲線200を位置136と188との間でフィッティングすた場合、スレーブフォロワ108は、速度曲線208で示すようにこの最大速度を超えてしまう。具体的には、点300と304の間で最大速度を超えてしまう。したがって、図3を再び参照すると、方法164は、スレーブフォロワ108の制約を反映させるように、位置曲線200を調整する最終ステップ(308)を含む。
【0024】
一実施形態では、図7Aに示すように、5次エルミートスプラインを適用して、複数の点312を位置曲線200上に収めることによって、位置曲線200を調整する(308)。より具体的には、図7Bに示すように、速度曲線208を新しい速度曲線316に位置変更するように、点312を収めて曲線200を曲線314に沿って調整する。具体的には、スレーブフォロワ108が最大速度を超えないように、位置曲線200を調整する。この例示的な実施形態では、2つの点312しか位置曲線200に収めていないが、当業者には理解されるように、いくつの点312でも位置曲線200に収めることができる。具体的には、速度曲線208全体が最大速度を下回るように位置変更されるまで、点312を位置曲線200に収める。
【0025】
代替実施形態では、図8Aに示すように、スレーブフォロワ108を位置曲線200から外して動作させることによって位置曲線200を調整する(308)。次いで、スレーブフォロワ108を、図8Bの線320によって示すように、制約の範囲内で動作させる。したがって、位置曲線200は、曲線322に従うことになる。スレーブフォロワ108が点304を通過した後、スレーブフォロワ108を曲線322から位置曲線200上に戻す、または導く新しい曲線324が生成される。したがって、曲線200は、スレーブフォロワ108に課された制約に従って位置変更される。
【0026】
図7Aおよび7B、ならびに8Aおよび8Bに示す曲線200の調整方法は、スレーブフォロワ108の速度に対する制約に関して説明しているが、当業者には理解されるように、本明細書に記載の方法はまた、スレーブフォロワ108の位置、速度、および/または加速度に対する制約に対応するように曲線200を調整するように使用することもできる。
【0027】
したがって、方法164は、システム100の性能維持を促進する時間枠内で、スレーブフォロワ108をマスタプロファイル120と同期させることを可能とする。具体的には、一実施形態では、方法164は、スレーブフォロワ108の挙動を制限することによって、システム100を保護する。さらに、方法164は、マスタソース104の広範囲にわたる挙動、例えば、短運動もしくは長運動、高速もしくは低速、および/または高加速度もしくは低加速度を可能とする。さらに、一実施形態では、スレーブフォロワ108が制約に近付く、または制約を超えた場合には、方法164は自己補正を行う。
【0028】
一実施形態では、スレーブフォロワをマスタソースと同期させる方法が提供される。この方法は、マスタソースとスレーブフォロワとの関係を規定すること、マスタソースの第1の位置を入力すること、およびスレーブフォロワの第1の位置を入力することを含む。この方法はまた、スレーブフォロワがマスタソースと同期する第2の位置を規定すること、およびスレーブフォロワの第1の位置と前記第2の位置との間で曲線をフィッティングすることを含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【0029】
例示的な実施形態では、スレーブフォロワおよびマスタソースは、モータである。さらに、例示的な実施形態では、5次エルミートスプラインを適用して曲線をフィッティングする。さらに、例示的な実施形態では、マスタソースに制約を課すことも、スレーブフォロワから制約を除去することもなしに、スレーブフォロワをマスタソースと同期させる。さらに、この例示的な実施形態では、スレーブフォロワに加加速度を生じることなく、スレーブフォロワをマスタプロファイルと同期させる。
【0030】
この例示的な実施形態では、この方法はまた、スレーブフォロワの制約を反映させるように曲線を調整することを含む。一実施形態では、スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、曲線内に複数の点を収めることによって曲線を調整する。第2の実施形態では、スレーブフォロワの制約を反映させるように、スレーブフォロワを曲線から外して動作させること、スレーブフォロワを曲線から外して動作させる間、スレーブフォロワをその制約の範囲内で動作させること、およびスレーブフォロワを曲線上に戻す新しい曲線を生成することによって、曲線を調整する。
【0031】
本明細書では、単数形で記載し、語「a」または「an」を伴う要素またはステップは、明示的な記載がない限り、複数の前記要素またはステップを排除するものではないことを理解されたい。さらに、本発明の「一実施形態」に関する言及は、記載の特徴をやはり組み込んだ追加の実施形態の存在を排除するものと解釈すべきではない。
【0032】
モータの運動を制御するシステムおよび方法の例示的な実施形態について上記で詳細に説明している。例示のシステムおよび方法は、本明細書に記載の特定の実施形態に限られるものではなく、このシステムの構成要素は、本明細書に記載の他の構成要素から独立して、かつ別個に利用することができる。さらに、本方法に記載のステップは、本明細書に記載の他のステップから独立して、かつ別個に利用することができる。
【0033】
本発明を様々な特定の実施形態に関して記載してきたが、当業者には、本発明は特許請求の範囲の趣旨および範囲内の修正形態でも実施できることが認識されよう。
【符号の説明】
【0034】
100 システム
104 マスタソース
108 スレーブフォロワ
112 コンピュータ
116 プロセッサ
120 マスタプロファイル
124 制御信号
132 第1の位置
136 第1の位置
188 第2の位置
【技術分野】
【0001】
本発明は、一般に制御信号に関し、より具体的には、スレーブフォロワ(slave follower)の制御信号をマスタソース(master source)と同期させる方法およびシステムに関する。
【背景技術】
【0002】
少なくとも既知のいくつかのシステムは、マスタソースおよびスレーブフォロワを含む。一般に、スレーブフォロワの動きは、マスタソースの動きによって決まる。具体的には、スレーブフォロワとマスタソースとは、位置対位置(position−to−position)関係に従って動作する。より具体的には、スレーブフォロワの位置は、マスタソースのプロファイルの関数として規定される。例えば、マスタソース−スレーブフォロワ関係を規定する関数は、マスタソースが第1の位置にあるとき、スレーブフォロワは第2の位置になくてはならないことを記述(dictate)する。したがって、システムの動作中、スレーブフォロワの位置は、マスタソース−スレーブフォロワ関係を規定する関数に基づいて、マスタソースのプロファイルに追従することになる。スレーブフォロワがそのプロファイルの範囲外で動作し始めた場合、このシステムは、スレーブフォロワの制御信号を調整して、その制御信号をマスタソースと同期させなければならない。例えば、マスタソースの始動後にスレーブフォロワが始動するシステムでは、スレーブフォロワとマスタソースとが、マスタソース−スレーブフォロワ関係を規定する関数に従って動作することができるように、スレーブフォロワの制御信号をマスタプロファイルと同期させなければならない。これは、時に「フライング結合(flying−coupling)」として知られる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第6591158号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
典型的には、既知のシステムでは、スレーブフォロワの制御信号は、スレーブフォロワのある位置を、マスタソースの特定の位置と対応させるべき複数の区切り点を規定することによって、マスタプロファイルと同期するように構成される。具体的には、スレーブフォロワの始動時、スレーブフォロワは、次の区切り点でスレーブフォロワの制御信号をマスタプロファイルと同期させるのに必要となる任意の速度で動作する。したがって、スレーブフォロワの速度および加速度は、比較的制御されていない。したがって、加速度および/または速度の急増または急減による加加速度など、スレーブフォロワに望ましくない運動が生じることがある。加加速度とは、本明細書では加速度の微分である。典型的には、この運動は、大部分のシステムで許容できないものである。さらに、スレーブフォロワの制御信号をマスタプロファイルと同期させる既知の方法では、マスタソースに制約を課し、かつ/またはスレーブフォロワから制約を解除する必要がしばしば生じることがある。具体的には、スレーブフォロワをマスタソースと同期させることができるように、マスタソースの運動速度が低減することがある。別の例では、スレーブフォロワを同期させるために、スレーブフォロワを、その能力を超えた速度で動作させる必要が生じ得る。したがって、既知の方法では、典型的にはシステムの運動学的限界を超えてしまう。
【課題を解決するための手段】
【0005】
一態様では、スレーブフォロワをマスタソースと同期させる方法が提供される。この方法は、マスタソースとスレーブフォロワとの関係を規定する工程と、マスタソースの第1の位置を入力する工程と、スレーブフォロワの第1の位置を入力する工程と、を含む。この方法はまた、スレーブフォロワがマスタソースと同期する第2の位置を規定する工程と、スレーブフォロワの第1の位置と前記第2の位置との間に曲線をフィッティングする(fit)工程と、を含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【0006】
別の態様では、マスタソースおよびスレーブフォロワを含むシステムが提供される。このシステムはまた、マスタソースとスレーブフォロワとの関係を規定する工程と、マスタソースの第1の位置を入力する工程と、スレーブフォロワの第1の位置を入力する工程と、によって、スレーブフォロワをマスタソースと同期させるように構成されたプロセッサを含む。このプロセッサはまた、スレーブフォロワがマスタソースと同期する第2の位置を規定し、スレーブフォロワの第1の位置と前記第2の位置との間に曲線をフィッティングする。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【0007】
さらに別の態様では、コンピュータ可読媒体上で実施されるコンピュータプログラムが提供される。このコンピュータプログラムは、マスタソースとスレーブフォロワとの関係を規定する工程と、マスタソースの第1の位置を入力する工程と、スレーブフォロワの第1の位置を入力する工程と、によって、スレーブフォロワをマスタソースと同期させるようにコンピュータに指令するように構成された少なくとも1つのコードセグメントを含む。このコンピュータプログラムはまた、スレーブフォロワがマスタソースと同期する第2の位置を規定し、スレーブフォロワの第1の位置と前記第2の位置との間で曲線をフィッティングするようにコンピュータに指令するように構成された少なくとも1つのコードセグメントを含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の境界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【図面の簡単な説明】
【0008】
【図1】例示的なシステムの概略図である。
【図2A】図1に示すマスタソースの位置を時間の関数として表すマスタプロファイルを示す図である。
【図2B】図1に示すスレーブフォロワの位置を時間の関数として表す例示的な制御信号を示す図である。
【図3】図2Bに示すような制御信号を、図2Aに示すようなマスタプロファイルと同期させる曲線を規定する例示的な方法の流れ図である。
【図4A】図2Aに示すマスタプロファイルを示す図である。
【図4B】図1に示すスレーブフォロワの位置を表す位置曲線を示す図である。
【図4C】図4Bに示す位置曲線によって規定された、図1に示すスレーブフォロワの速度を表す速度曲線を示す図である。
【図4D】図4Cに示す速度曲線によって規定された、図1に示すスレーブフォロワの加速度を表す加速度曲線を示す図である。
【図5A】図2Aに示すマスタプロファイルを示す図である。
【図5B】図1に示すスレーブフォロワの位置を表すスレーブフォロワ位置曲線を示す図である。
【図5C】図5Bに示す位置曲線によって規定された、図1に示すスレーブフォロワの速度を表す速度曲線を示す図である。
【図5D】図5Cに示す速度曲線によって規定された、図1に示すスレーブフォロワの加速度を表す加速度曲線を示す図である。
【図6A】図2Aに示すマスタプロファイルを示す図である。
【図6B】図1に示すスレーブフォロワの位置を表すスレーブフォロワ位置曲線を示す図である。
【図6C】図6Bに示す位置曲線によって規定された、図1に示すスレーブフォロワの速度を表す速度曲線264を示す図である。
【図6D】図6Cに示す速度曲線によって規定された、図1に示すスレーブフォロワの加速度を表す加速度曲線を示す図である。
【図7】図7Aは図4に示す5次ランプ(quintic ramp)を示し、図7Bは図7Aに示す5次ランプを調整する曲線の一実施形態を示す図である。
【図8】図8Aは図4に示す5次ランプを示す図で、図8Bは図8Aに示す5次ランプを調整する曲線の代替実施形態を示す図である。
【発明を実施するための形態】
【0009】
本発明は、スレーブフォロワ、マスタソース、およびコンピュータを含むシステムを提供する。一実施形態では、コンピュータは、スレーブフォロワおよびマスタソースのそれぞれと動作制御可能に通信している。別の実施形態では、コンピュータは、マスタソースの信号を監視するだけでよい。かかるコンピュータの技術的効果は、スレーブフォロワの運動学的制約に従う位置対位置関係を用いて、スレーブフォロワの制御信号をマスタソースのプロファイルと同期させることである。一実施形態では、プロセッサおよび/またはコンピュータプログラムによってコンピュータに指令する。プロセッサおよび/またはコンピュータプログラムの技術的効果は、スレーブフォロワの運動学的制約に従った位置対位置関係を用いて、制御信号をマスタプロファイルと同期させるようにコンピュータに指令することである。
【0010】
例示的な実施形態では、5次エルミートスプライン(quintic−hermite spline)を適用して、制御信号の第1の位置と、前記制御信号がマスタプロファイルと同期するものとなる第2の位置との間に曲線をフィッティングすることによって、制御信号をマスタプロファイルと同期させる。したがって、マスタソースに制約を課すことなく、スレーブフォロワから制約を除去することなく、かつ/またはスレーブフォロワ内で加加速度運動などの望ましくない運動を生じることなく、制御信号がマスタプロファイルと同期することになる。さらに、この例示的な実施形態では、スレーブフォロワの1つまたは複数の制約を反映させるように、曲線を調整することができる。例えば、一実施形態では、5次エルミートスプラインを用いて、曲線の、制約を超える1つまたは複数の部分内に1つまたは複数の点を収めることによって、曲線を調整する。さらなる実施形態では、スレーブフォロワを曲線から外して動作させること、スレーブフォロワを曲線から外して動作させる間、スレーブフォロワを制約の範囲内で動作させること、およびスレーブフォロワを元の曲線上に戻す新しい曲線を生成することによって、曲線を調整する。
【0011】
さらに、一実施形態では、システムの性能維持を促進する時間枠内で、制御信号をマスタプロファイルと同期させる。具体的には、スレーブフォロワの挙動を妨げる、または制限することによって、システムを保護する。さらに、マスタソースに関しては、このシステムによって広範囲にわたる挙動が可能となる。例えば、マスタソースは、短運動もしくは長運動、高速もしくは低速、および/または高加速度もしくは低加速度で動作させることができる。さらに、このシステムは、スレーブフォロワが制約に近付く、または制約を超えた場合には、自己補正を試みる。
【0012】
本発明は、マスタソースおよびスレーブフォロワに関して説明しているが、当業者には理解されるように、本発明はまた、位置対位置関係で動作するいかなるシステムおよび/またはいかなる機器にも応用することができることに留意されたい。例えば、本明細書で使用する用語「マスタソース」および「スレーブフォロワ」は、それだけに限られるものではないが、モータ、液圧装置、エンジン、および/または空気圧装置を指すことがある。
【0013】
さらに、本発明は、プロセッサおよびコンピュータプログラムに関して説明しているが、当業者には理解されるように、本発明はまた、制御信号をマスタプロファイルと同期させるように構成されたいかなるシステムおよび/またはプログラムにも応用することができる。例えば、本明細書では、用語「プロセッサ」は、当技術分野においてプロセッサと呼ばれる集積回路だけに限らず、コンピュータ、プロセッサ、マイクロコントローラ、マイクロコンピュータ、プログラマブルロジックコントローラ、特定用途向け集積回路、および他のプログラマブル回路を広く指す。プロセッサとは、フロッピー(登録商標)ディスク、コンパクトディスク読出し専用メモリ(CD−ROM)、光磁気ディスク(MOD)、またはデジタル多用途ディスク(DVD)などのコンピュータ可読媒体からデータを読み出すためのフロッピー(登録商標)ディスクドライブまたはCD−ROMドライブなどの装置を含み得るコンピュータの一部でよい。
【0014】
図1は、例示的なシステム100の概略図である。システム100は、マスタソース104、スレーブフォロワ108、およびプロセッサ116を含むコンピュータ112を含む。この例示的な実施形態では、コンピュータ112は、システム100、具体的にはマスタソース104およびスレーブフォロワ108と動作制御可能に通信し、それらを動作させるように構成されている。一実施形態では、プロセッサ116は、システム100を動作させるようにコンピュータ112に指令するように構成される。さらに、またはあるいは、コンピュータプログラムによって、システム100を動作させるようにコンピュータ112に指令する。
【0015】
例示的な実施形態では、スレーブフォロワ108の動きは、マスタソース104の動きによって決まる。より具体的には、スレーブフォロワ108とマスタソース104とは、位置対位置関係に従って動作し、すなわちスレーブフォロワ108の位置は、マスタソース104のプロファイルの関数として規定される。例えば、マスタソース−スレーブフォロワ関係を規定する関数によって、マスタソース104が位置「5」などの第1の位置にあるとき、スレーブフォロワ108は、位置「2」などの第2の位置にあるべきことを指示することができる。したがって、システム100の動作中、一実施形態では、スレーブフォロワ108の位置は、マスタソース−スレーブフォロワ関係を規定する関数に基づいて、マスタソース104のプロファイルに追従することになる。スレーブフォロワ108が、マスタプロファイルの範囲外で動作し始めた場合、システム100は、システム100が適正に動作し続けるように、スレーブフォロワ108をマスタプロファイルと同期させる。例えば、マスタソース104の始動後にスレーブフォロワ108が始動する場合、スレーブフォロワ108とマスタソース104とが、マスタソース−スレーブフォロワ関係を規定する関数に従って動作するように、スレーブフォロワ108をマスタプロファイルと同期させる。
【0016】
図2Aは、時間の関数としてのマスタソース104の位置を表すマスタプロファイル120を示す。図2Bは、時間の関数としてのスレーブフォロワ108の位置を表す例示的な制御信号124を示す。この例示的な実施形態では、マスタプロファイル120は、図2Aの位置「5」として示す第1の位置132から開始している。さらに、制御信号124は、図2Bの位置「4」として示す第1の位置136から開始している。本明細書では、「第1の位置」とは、スレーブフォロワ108が、マスタプロファイル120と同期するように指令された時点における、マスタソース104またはスレーブフォロワ108の一方の位置として定義する。したがって、当業者には理解されるように、スレーブフォロワ108および/またはマスタソース104は、第1の位置132および第1の位置136を規定した時点で静止していても、かつ/または移動していてもよい。
【0017】
例示的な実施形態では、システム100の動作前に、位置対位置関係を規定して、マスタプロファイル120のマスタソース104の位置を、制御信号124のスレーブフォロワ108の位置と関連付ける。具体的には、この関係によって、マスタプロファイル120が特定の位置にあるときの、制御信号124の位置を規定する。例示的な実施形態では、制御信号124とマスタプロファイル120とは、1対1関係で動作するように構成される。当業者には理解されるように、制御信号124とマスタプロファイル120とは、適切な任意の関係によって規定することができる。1対1関係では、マスタプロファイル120が位置「5」にあるとき、制御信号124も位置「5」となるように構成される。しかし、図2Aおよび2Bに示すように、制御信号124が第1の位置136で「4」を有するとき、マスタプロファイル120は第1の位置132で「5」を有する。したがって、制御信号124がマスタプロファイル120と同期する。
【0018】
図3は、スレーブフォロワ108をマスタプロファイル120と同期させる曲線を規定する例示的な方法164の流れ図160である。この例示的な実施形態では、方法164は、マスタプロファイル120のマスタソース104の位置を、制御信号124のスレーブフォロワ108の位置と関連付けるプロファイルを規定すること(168)を含む。このプロファイルを、コンピュータ112に入力する(172)。さらに、方法164は、マスタプロファイル120のマスタソース104の第1の位置132と、制御信号124のスレーブフォロワ108の第1の位置136とを含む初期状態を入力すること(176)を含む。上述のように、この例示的な実施形態では、第1の位置132は「5」であり、第1の位置136は「4」である。したがって、この例示的な実施形態では、位置「4」および「5」をコンピュータ112に入力する(176)。
【0019】
この例示的な実施形態では、方法164はまた、スレーブフォロワ108がマスタプロファイル120と同期するように構成された第2の位置188を規定すること(184)を含む。この例示的な実施形態では、第2の位置188は、マスタプロファイル120および制御信号124の位置によって規定され、時間、速度、および/または加速度によって規定されるのではない。例えば、この例示的な実施形態では、スレーブフォロワ108は、位置「9」でマスタプロファイル120と同期するように構成されている。したがって、位置「9」をコンピュータ112に入力する(192)。当業者には理解されるように、この例示的な実施形態では、第2の位置188を「9」として規定しているが、方法164は、どの位置においても、制御信号124をマスタプロファイル120と同期させることができる。
【0020】
次に、方法164は、制御信号124の第1の位置136と、第2の位置188との間で曲線をフィッティングすること(196)を含む。図4Bは、マスタプロファイル120と同期中のスレーブフォロワ108の位置を表す位置曲線200を示す。図4Bに示すように、位置曲線200は、第1の位置136と第2の位置188との間でフィッティングすた(196)ものである。図4Aは、マスタプロファイル120を示し、図4Bは、位置曲線200を示し、図4Cは、位置曲線200によって規定されたスレーブフォロワ108の速度を表す速度曲線208を示し、図4Dは、速度曲線208によって規定されたスレーブフォロワ108の加速度を表す加速度曲線212を示す。この例示的な実施形態では、プロファイル、第1の位置136、第1の位置132、および第2の位置188に基づいて位置曲線200をフィッティングする(196)。より具体的には、この例示的な実施形態では、制御信号124によって表すスレーブフォロワ108をマスタプロファイル120と同期させながら、加加速度などの望ましくない運動が実質的になくなるように、5次エルミートスプラインを用いて位置曲線200をフィッティングする(196)。本明細書では、加加速度は、速度および/または加速度の大幅な急増または急減として定義する。さらに、加加速度は、経時的位置曲線の3次微分(third derivative)として表される。したがって、以下でより詳細に説明するように、曲線208および212では加加速度が見受けられない。
【0021】
曲線208および212に加加速度が見受けられないことを適切に説明するために、加加速度の例を図5A〜5Dに示す。具体的には、図5Aは、マスタプロファイル120を示し、図5Bは、1次ランプ(linear ramp)を用いて第1の位置136と第2の位置188との間でフィッティングすたスレーブフォロワ位置曲線220を示す。具体的には、位置曲線220は、マスタプロファイル120と同期中のスレーブフォロワ108の位置を表す。図5Cは、位置曲線220によって規定されたスレーブフォロワ108の速度を表す速度曲線224を示し、図5Dは、速度曲線224によって規定されたスレーブフォロワ108の加速度を表す加速度曲線228を示す。この例では、速度曲線224は、スレーブフォロワ108が第2の位置188でマスタプロファイル120と同期する時間「.05」と「.06」の間で生じる第1のスパイク232と、時間「0」で生じる第2のスパイク234とを含む。スパイク232は、スレーブフォロワ108がマスタプロファイル120と同期したときのスレーブフォロワ108の速度の急減を表し、スパイク234は、時間「0」でのスレーブフォロワ108の速度の急増を表している。したがって、ランピング過程(ramping process)の開始時、およびスレーブフォロワ108がマスタプロファイル120と同期した時点で、スパイク232および234によって、スレーブフォロワ108に加加速度または他の望ましくない運動が生じることになる。同様に、図5Dに示すように、加速度曲線228も、スレーブフォロワ108が第2の位置188でマスタプロファイル120と同期する時間「.05」と「.06」の間で生じる第1のスパイク236と、時間「0」で生じる第2のスパイク238とを含む。スパイク236は、スレーブフォロワ108がマスタプロファイル120と同期したときのスレーブフォロワ108の加速度の急減と、その後の加速度の急増とを表し、スパイク238は、時間「0」でのスレーブフォロワ108の加速度の急減を表している。したがって、ランピング過程の開始時、および/またはスレーブフォロワ108がマスタプロファイル120と同期した時点で、スパイク236およびスパイク238によって、スレーブフォロワ108に加加速度が生じることがある。
【0022】
別の例では、図6Aは、位置曲線120を示し、図6Bは、3次ランプ(cubic ramp)を用いて第1の位置136と第2の位置188との間でフィッティングすたスレーブフォロワ位置曲線260を示す。具体的には、位置曲線260は、マスタプロファイル120と同期中のスレーブフォロワ108の位置を表す。図6Cは、位置曲線260によって規定されたスレーブフォロワ108の速度を表す速度曲線264を示し、図6Dは、速度曲線264によって規定されたスレーブフォロワ108の加速度を表す加速度曲線268を示す。この例では、図5Cに示すスパイク232および234などのスパイクが、速度曲線264から実質的になくなっている。しかし、加速度曲線268は、スレーブフォロワ108が第2の位置188でマスタプロファイル120と同期する時間「.05」と「.06」の間で生じる第1のスパイク272と、時間「0」で生じる第2のスパイク274とを含む。スパイク272は、スレーブフォロワ108がマスタプロファイル120と同期したときのスレーブフォロワ108の加速度の急増を表し、スパイク274は、時間「0」でのスレーブフォロワ108の加速度の急増を表している。したがって、ランピング過程の開始時、およびスレーブフォロワ108がマスタプロファイル120と同期した時点で、スパイク272および274によって、スレーブフォロワ108に加加速度が生じることがある。
【0023】
したがって、図4Cおよび4Dに戻ると、曲線208および212はそれぞれ、ランピング過程のどの部分においても、加加速度を生じ得るいかなるスパイクも含まない。したがって、図4Cおよび4Dを、図5Cおよび5D、ならびに図6Cおよび6Dと比較すると、第1の位置136と第2の位置188との間で曲線をフィッティングする(196)際に5次スプラインを使用することによって、スレーブフォロワ108、より一般的にはシステム100に加加速度が生じることが実質的になくなっている。さらに、図4Bに示す位置曲線200をフィッティングす(196)、使用することによって、スレーブフォロワ108の制約を解除または除去せず、かつ/またはマスタソース104に制約を課すことなく、スレーブフォロワ108がマスタプロファイル120と同期することになる。しかし、位置曲線200では、スレーブフォロワ108に課された制約を反映させることができない。例えば、この例示的な実施形態では、スレーブフォロワ108は最大速度「120」による制約を受けている。図4Cを参照すると、位置曲線200を位置136と188との間でフィッティングすた場合、スレーブフォロワ108は、速度曲線208で示すようにこの最大速度を超えてしまう。具体的には、点300と304の間で最大速度を超えてしまう。したがって、図3を再び参照すると、方法164は、スレーブフォロワ108の制約を反映させるように、位置曲線200を調整する最終ステップ(308)を含む。
【0024】
一実施形態では、図7Aに示すように、5次エルミートスプラインを適用して、複数の点312を位置曲線200上に収めることによって、位置曲線200を調整する(308)。より具体的には、図7Bに示すように、速度曲線208を新しい速度曲線316に位置変更するように、点312を収めて曲線200を曲線314に沿って調整する。具体的には、スレーブフォロワ108が最大速度を超えないように、位置曲線200を調整する。この例示的な実施形態では、2つの点312しか位置曲線200に収めていないが、当業者には理解されるように、いくつの点312でも位置曲線200に収めることができる。具体的には、速度曲線208全体が最大速度を下回るように位置変更されるまで、点312を位置曲線200に収める。
【0025】
代替実施形態では、図8Aに示すように、スレーブフォロワ108を位置曲線200から外して動作させることによって位置曲線200を調整する(308)。次いで、スレーブフォロワ108を、図8Bの線320によって示すように、制約の範囲内で動作させる。したがって、位置曲線200は、曲線322に従うことになる。スレーブフォロワ108が点304を通過した後、スレーブフォロワ108を曲線322から位置曲線200上に戻す、または導く新しい曲線324が生成される。したがって、曲線200は、スレーブフォロワ108に課された制約に従って位置変更される。
【0026】
図7Aおよび7B、ならびに8Aおよび8Bに示す曲線200の調整方法は、スレーブフォロワ108の速度に対する制約に関して説明しているが、当業者には理解されるように、本明細書に記載の方法はまた、スレーブフォロワ108の位置、速度、および/または加速度に対する制約に対応するように曲線200を調整するように使用することもできる。
【0027】
したがって、方法164は、システム100の性能維持を促進する時間枠内で、スレーブフォロワ108をマスタプロファイル120と同期させることを可能とする。具体的には、一実施形態では、方法164は、スレーブフォロワ108の挙動を制限することによって、システム100を保護する。さらに、方法164は、マスタソース104の広範囲にわたる挙動、例えば、短運動もしくは長運動、高速もしくは低速、および/または高加速度もしくは低加速度を可能とする。さらに、一実施形態では、スレーブフォロワ108が制約に近付く、または制約を超えた場合には、方法164は自己補正を行う。
【0028】
一実施形態では、スレーブフォロワをマスタソースと同期させる方法が提供される。この方法は、マスタソースとスレーブフォロワとの関係を規定すること、マスタソースの第1の位置を入力すること、およびスレーブフォロワの第1の位置を入力することを含む。この方法はまた、スレーブフォロワがマスタソースと同期する第2の位置を規定すること、およびスレーブフォロワの第1の位置と前記第2の位置との間で曲線をフィッティングすることを含む。この曲線は、マスタソースとスレーブフォロワとの関係、スレーブフォロワの第1の位置、マスタソースの第1の位置、および前記第2の位置に基づいてフィッティングされる。この曲線は、スレーブフォロワの所定の限界を超えずにスレーブフォロワとマスタソースとを同期させるようにフィッティングされる。
【0029】
例示的な実施形態では、スレーブフォロワおよびマスタソースは、モータである。さらに、例示的な実施形態では、5次エルミートスプラインを適用して曲線をフィッティングする。さらに、例示的な実施形態では、マスタソースに制約を課すことも、スレーブフォロワから制約を除去することもなしに、スレーブフォロワをマスタソースと同期させる。さらに、この例示的な実施形態では、スレーブフォロワに加加速度を生じることなく、スレーブフォロワをマスタプロファイルと同期させる。
【0030】
この例示的な実施形態では、この方法はまた、スレーブフォロワの制約を反映させるように曲線を調整することを含む。一実施形態では、スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、曲線内に複数の点を収めることによって曲線を調整する。第2の実施形態では、スレーブフォロワの制約を反映させるように、スレーブフォロワを曲線から外して動作させること、スレーブフォロワを曲線から外して動作させる間、スレーブフォロワをその制約の範囲内で動作させること、およびスレーブフォロワを曲線上に戻す新しい曲線を生成することによって、曲線を調整する。
【0031】
本明細書では、単数形で記載し、語「a」または「an」を伴う要素またはステップは、明示的な記載がない限り、複数の前記要素またはステップを排除するものではないことを理解されたい。さらに、本発明の「一実施形態」に関する言及は、記載の特徴をやはり組み込んだ追加の実施形態の存在を排除するものと解釈すべきではない。
【0032】
モータの運動を制御するシステムおよび方法の例示的な実施形態について上記で詳細に説明している。例示のシステムおよび方法は、本明細書に記載の特定の実施形態に限られるものではなく、このシステムの構成要素は、本明細書に記載の他の構成要素から独立して、かつ別個に利用することができる。さらに、本方法に記載のステップは、本明細書に記載の他のステップから独立して、かつ別個に利用することができる。
【0033】
本発明を様々な特定の実施形態に関して記載してきたが、当業者には、本発明は特許請求の範囲の趣旨および範囲内の修正形態でも実施できることが認識されよう。
【符号の説明】
【0034】
100 システム
104 マスタソース
108 スレーブフォロワ
112 コンピュータ
116 プロセッサ
120 マスタプロファイル
124 制御信号
132 第1の位置
136 第1の位置
188 第2の位置
【特許請求の範囲】
【請求項1】
スレーブフォロワをマスタソースと同期させる方法において、
前記マスタソースと前記スレーブフォロワとの関係を規定する工程と、
前記マスタソースの第1の位置を入力する工程と、
前記スレーブフォロワの第1の位置を入力する工程と、
前記スレーブフォロワが前記マスタソースと同期する第2の位置を規定する工程と、
曲線を、前記スレーブフォロワの前記第1の位置と前記第2の位置との間にフィッティングする工程であって、前記マスタソースと前記スレーブフォロワとの前記関係、前記スレーブフォロワの前記第1の位置、前記マスタソースの前記第1の位置、および前記第2の位置に基づいて、前記スレーブフォロワの所定の限界を超えずに前記スレーブフォロワと前記マスタソースとを同期させるように曲線をフィッティングする工程と、を備える方法。
【請求項2】
5次エルミートスプラインを適用して、前記曲線をフィッティングする工程をさらに含むことを特徴とする請求項1記載の方法。
【請求項3】
前記マスタソースに制約を課すことも、前記スレーブフォロワから制約を除去することもなしに、前記スレーブフォロワを前記マスタソースと同期させる工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項4】
前記スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、前記曲線内に複数の点を収める工程と、によって、前記曲線を調整する工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項5】
前記スレーブフォロワの制約を反映させるように、
前記スレーブフォロワを前記曲線から外して動作させる工程と、
前記スレーブフォロワを前記曲線から外して動作させる間、前記スレーブフォロワを前記制約の範囲内で動作させる工程と、
前記スレーブフォロワを前記曲線上に戻す新しい曲線を生成する工程と、によって、前記曲線を調整する工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項6】
前記スレーブフォロワに加加速度を生じることもなく、前記スレーブフォロワを前記マスタプロファイルと同期させる工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項7】
スレーブモータをマスタモータと同期させる工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項8】
マスタソースと、
スレーブフォロワと、
プロセッサとを備え、前記プロセッサが、
前記マスタソースと前記スレーブフォロワとの関係を規定する工程と、
前記マスタソースの第1の位置を入力する工程と、
前記スレーブフォロワの第1の位置を入力する工程と、
前記スレーブフォロワが前記マスタソースと同期する第2の位置を規定する工程と、
前記スレーブフォロワの前記第1の位置と前記第2の位置との間で曲線をフィッティングする工程であって、前記マスタソースと前記スレーブフォロワとの前記関係、前記スレーブフォロワの前記第1の位置、前記マスタソースの前記第1の位置、および前記第2の位置に基づいて、前記スレーブフォロワの所定の限界を超えずに前記スレーブフォロワと前記マスタソースとを同期させるように曲線をフィッティングする工程と、
によって前記スレーブフォロワを前記マスタソースと同期させるように構成されている、システム。
【請求項9】
前記プロセッサが、5次エルミートスプラインを適用して、前記曲線をフィッティングするようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項10】
前記プロセッサが、前記マスタソースに制約を課すことも、前記スレーブフォロワから制約を除去することもなしに、前記スレーブフォロワを前記マスタソースと同期させるようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項11】
前記プロセッサが、前記スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、前記曲線内に複数の点を収める工程と、によって、前記曲線を調整するようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項12】
前記プロセッサが、前記スレーブフォロワの制約を反映させるように、
前記スレーブフォロワを前記曲線から外して動作させる工程と、
前記スレーブフォロワを前記曲線から外して動作させる間、前記スレーブフォロワを前記制約の範囲内で動作させる工程と、
前記スレーブフォロワを前記曲線上に戻す新しい曲線を生成する工程と、によって、前記曲線を調整するようにさらに構成されていることを特徴とする請求項11記載のシステム。
【請求項13】
前記プロセッサが、前記スレーブフォロワに加加速度を生じることもなく、前記スレーブフォロワを前記マスタプロファイルと同期させるようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項14】
前記スレーブフォロワおよび前記マスタソースが、モータであることを特徴とする請求項8記載のシステム。
【請求項15】
コンピュータ可読媒体上で実施されるコンピュータプログラムにおいて、
マスタソースとスレーブフォロワとの関係を規定する工程と、
前記マスタソースの第1の位置を入力する工程と、
前記スレーブフォロワの第1の位置を入力する工程と、
前記スレーブフォロワが前記マスタソースと同期する第2の位置を規定する工程と、
前記スレーブフォロワの前記第1の位置と前記第2の位置との間で曲線をフィッティングする工程であって、前記マスタソースと前記スレーブフォロワとの前記関係、前記スレーブフォロワの前記第1の位置、前記マスタソースの前記第1の位置、および前記第2の位置に基づいて、前記スレーブフォロワの所定の限界を超えずに前記スレーブフォロワと前記マスタソースとを同期させるように曲線をフィッティングする工程と、
によって、前記スレーブフォロワを前記マスタソースと同期させるようにコンピュータに指令するように構成された少なくとも1つのコードセグメントを備えるコンピュータプログラム。
【請求項16】
5次エルミートスプラインを適用して、前記曲線をフィッティングするように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項17】
前記マスタソースに制約を課すことも、前記スレーブフォロワから制約を除去することもなしに、前記スレーブフォロワを前記マスタソースと同期させるように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項18】
前記スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、前記曲線内に複数の点を収める工程と、によって前記曲線を調整するように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項19】
前記スレーブフォロワの制約を反映させるように、
前記スレーブフォロワを前記曲線から外して動作させる工程と、
前記スレーブフォロワを前記曲線から外して動作させる間、前記スレーブフォロワを前記制約の範囲内で動作させる工程と、
前記スレーブフォロワを前記曲線上に戻す新しい曲線を生成する工程と、によって、前記曲線を調整するように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項20】
前記スレーブフォロワに加加速度を生じることもなく、前記スレーブフォロワを前記マスタプロファイルと同期させるように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項1】
スレーブフォロワをマスタソースと同期させる方法において、
前記マスタソースと前記スレーブフォロワとの関係を規定する工程と、
前記マスタソースの第1の位置を入力する工程と、
前記スレーブフォロワの第1の位置を入力する工程と、
前記スレーブフォロワが前記マスタソースと同期する第2の位置を規定する工程と、
曲線を、前記スレーブフォロワの前記第1の位置と前記第2の位置との間にフィッティングする工程であって、前記マスタソースと前記スレーブフォロワとの前記関係、前記スレーブフォロワの前記第1の位置、前記マスタソースの前記第1の位置、および前記第2の位置に基づいて、前記スレーブフォロワの所定の限界を超えずに前記スレーブフォロワと前記マスタソースとを同期させるように曲線をフィッティングする工程と、を備える方法。
【請求項2】
5次エルミートスプラインを適用して、前記曲線をフィッティングする工程をさらに含むことを特徴とする請求項1記載の方法。
【請求項3】
前記マスタソースに制約を課すことも、前記スレーブフォロワから制約を除去することもなしに、前記スレーブフォロワを前記マスタソースと同期させる工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項4】
前記スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、前記曲線内に複数の点を収める工程と、によって、前記曲線を調整する工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項5】
前記スレーブフォロワの制約を反映させるように、
前記スレーブフォロワを前記曲線から外して動作させる工程と、
前記スレーブフォロワを前記曲線から外して動作させる間、前記スレーブフォロワを前記制約の範囲内で動作させる工程と、
前記スレーブフォロワを前記曲線上に戻す新しい曲線を生成する工程と、によって、前記曲線を調整する工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項6】
前記スレーブフォロワに加加速度を生じることもなく、前記スレーブフォロワを前記マスタプロファイルと同期させる工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項7】
スレーブモータをマスタモータと同期させる工程と、をさらに含むことを特徴とする請求項1記載の方法。
【請求項8】
マスタソースと、
スレーブフォロワと、
プロセッサとを備え、前記プロセッサが、
前記マスタソースと前記スレーブフォロワとの関係を規定する工程と、
前記マスタソースの第1の位置を入力する工程と、
前記スレーブフォロワの第1の位置を入力する工程と、
前記スレーブフォロワが前記マスタソースと同期する第2の位置を規定する工程と、
前記スレーブフォロワの前記第1の位置と前記第2の位置との間で曲線をフィッティングする工程であって、前記マスタソースと前記スレーブフォロワとの前記関係、前記スレーブフォロワの前記第1の位置、前記マスタソースの前記第1の位置、および前記第2の位置に基づいて、前記スレーブフォロワの所定の限界を超えずに前記スレーブフォロワと前記マスタソースとを同期させるように曲線をフィッティングする工程と、
によって前記スレーブフォロワを前記マスタソースと同期させるように構成されている、システム。
【請求項9】
前記プロセッサが、5次エルミートスプラインを適用して、前記曲線をフィッティングするようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項10】
前記プロセッサが、前記マスタソースに制約を課すことも、前記スレーブフォロワから制約を除去することもなしに、前記スレーブフォロワを前記マスタソースと同期させるようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項11】
前記プロセッサが、前記スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、前記曲線内に複数の点を収める工程と、によって、前記曲線を調整するようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項12】
前記プロセッサが、前記スレーブフォロワの制約を反映させるように、
前記スレーブフォロワを前記曲線から外して動作させる工程と、
前記スレーブフォロワを前記曲線から外して動作させる間、前記スレーブフォロワを前記制約の範囲内で動作させる工程と、
前記スレーブフォロワを前記曲線上に戻す新しい曲線を生成する工程と、によって、前記曲線を調整するようにさらに構成されていることを特徴とする請求項11記載のシステム。
【請求項13】
前記プロセッサが、前記スレーブフォロワに加加速度を生じることもなく、前記スレーブフォロワを前記マスタプロファイルと同期させるようにさらに構成されていることを特徴とする請求項8記載のシステム。
【請求項14】
前記スレーブフォロワおよび前記マスタソースが、モータであることを特徴とする請求項8記載のシステム。
【請求項15】
コンピュータ可読媒体上で実施されるコンピュータプログラムにおいて、
マスタソースとスレーブフォロワとの関係を規定する工程と、
前記マスタソースの第1の位置を入力する工程と、
前記スレーブフォロワの第1の位置を入力する工程と、
前記スレーブフォロワが前記マスタソースと同期する第2の位置を規定する工程と、
前記スレーブフォロワの前記第1の位置と前記第2の位置との間で曲線をフィッティングする工程であって、前記マスタソースと前記スレーブフォロワとの前記関係、前記スレーブフォロワの前記第1の位置、前記マスタソースの前記第1の位置、および前記第2の位置に基づいて、前記スレーブフォロワの所定の限界を超えずに前記スレーブフォロワと前記マスタソースとを同期させるように曲線をフィッティングする工程と、
によって、前記スレーブフォロワを前記マスタソースと同期させるようにコンピュータに指令するように構成された少なくとも1つのコードセグメントを備えるコンピュータプログラム。
【請求項16】
5次エルミートスプラインを適用して、前記曲線をフィッティングするように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項17】
前記マスタソースに制約を課すことも、前記スレーブフォロワから制約を除去することもなしに、前記スレーブフォロワを前記マスタソースと同期させるように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項18】
前記スレーブフォロワの制約を反映させるように、5次エルミートスプラインを適用して、前記曲線内に複数の点を収める工程と、によって前記曲線を調整するように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項19】
前記スレーブフォロワの制約を反映させるように、
前記スレーブフォロワを前記曲線から外して動作させる工程と、
前記スレーブフォロワを前記曲線から外して動作させる間、前記スレーブフォロワを前記制約の範囲内で動作させる工程と、
前記スレーブフォロワを前記曲線上に戻す新しい曲線を生成する工程と、によって、前記曲線を調整するように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【請求項20】
前記スレーブフォロワに加加速度を生じることもなく、前記スレーブフォロワを前記マスタプロファイルと同期させるように前記コンピュータに指令するように構成された少なくとも1つのコードセグメントをさらに備えることを特徴とする請求項15記載のコンピュータプログラム。
【図1】
【図2A】
【図2B】
【図3】
【図4A】
【図4B】
【図4C】
【図4D】
【図5A】
【図5B】
【図5C】
【図5D】
【図6A】
【図6B】
【図6C】
【図6D】
【図7】
【図8】
【図2A】
【図2B】
【図3】
【図4A】
【図4B】
【図4C】
【図4D】
【図5A】
【図5B】
【図5C】
【図5D】
【図6A】
【図6B】
【図6C】
【図6D】
【図7】
【図8】
【公表番号】特表2011−508312(P2011−508312A)
【公表日】平成23年3月10日(2011.3.10)
【国際特許分類】
【出願番号】特願2010−539562(P2010−539562)
【出願日】平成20年11月14日(2008.11.14)
【国際出願番号】PCT/US2008/083567
【国際公開番号】WO2009/085422
【国際公開日】平成21年7月9日(2009.7.9)
【出願人】(503445320)ジーイー・インテリジェント・プラットフォームズ・インコーポレイテッド (15)
【Fターム(参考)】
【公表日】平成23年3月10日(2011.3.10)
【国際特許分類】
【出願日】平成20年11月14日(2008.11.14)
【国際出願番号】PCT/US2008/083567
【国際公開番号】WO2009/085422
【国際公開日】平成21年7月9日(2009.7.9)
【出願人】(503445320)ジーイー・インテリジェント・プラットフォームズ・インコーポレイテッド (15)
【Fターム(参考)】
[ Back to top ]