IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブラザー工業株式会社の特許一覧

特開2022-157480制御装置、工作機械、制御方法及びコンピュータプログラム
<>
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図1
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図2
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図3
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図4
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図5
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図6
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図7
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図8
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図9
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図10
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図11
  • 特開-制御装置、工作機械、制御方法及びコンピュータプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022157480
(43)【公開日】2022-10-14
(54)【発明の名称】制御装置、工作機械、制御方法及びコンピュータプログラム
(51)【国際特許分類】
   G05B 19/19 20060101AFI20221006BHJP
   G05D 3/12 20060101ALI20221006BHJP
   H02P 29/00 20160101ALI20221006BHJP
   H02K 7/116 20060101ALI20221006BHJP
【FI】
G05B19/19 P
G05D3/12 305Z
H02P29/00
H02K7/116
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021061731
(22)【出願日】2021-03-31
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】100114557
【弁理士】
【氏名又は名称】河野 英仁
(74)【代理人】
【識別番号】100078868
【弁理士】
【氏名又は名称】河野 登夫
(72)【発明者】
【氏名】寺田 弦
【テーマコード(参考)】
3C269
5H303
5H501
5H607
【Fターム(参考)】
3C269AB01
3C269BB05
3C269CC02
3C269CC15
3C269EF02
3C269GG01
3C269GG05
3C269MN07
3C269MN14
3C269MN16
3C269MN23
5H303AA01
5H303CC03
5H303CC09
5H303DD01
5H303FF03
5H303HH05
5H303JJ02
5H303KK02
5H303KK03
5H303KK35
5H501AA22
5H501BB05
5H501GG01
5H501GG03
5H501GG08
5H501GG11
5H501JJ03
5H501KK05
5H501LL07
5H501LL22
5H501LL32
5H501LL36
5H607BB01
5H607CC03
5H607DD03
5H607EE31
5H607HH01
5H607HH02
5H607HH03
(57)【要約】
【課題】振動の発生を抑制し、駆動時間の短縮を図ることができる制御装置等を提供する。
【解決手段】制御装置は、ワークを保持する保持部を歯車を介して駆動するモータを制御し、前記モータの目標位置を示す位置指令に基づいて、前記モータの速度を制御する位置制御部と、前記位置制御部による制御中に、前記目標位置に到達した場合、前記モータの制御を、前記位置制御部による制御から、目標トルクを示すトルク指令に基づいて、前記モータの速度を制御するトルク制御部による制御に切り替える切替部とを備え、前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる。
【選択図】図4
【特許請求の範囲】
【請求項1】
ワークを保持する保持部を歯車を介して駆動するモータを制御する制御装置において、
前記モータの目標位置を示す位置指令に基づいて、前記モータの位置を制御する位置制御部と、
前記位置制御部による制御中に、前記目標位置に到達した場合、前記モータの制御を、前記位置制御部による制御から、目標トルクを示すトルク指令に基づいて、前記モータのトルクを制御するトルク制御部による制御に切り替える切替部と
を備え、
前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる
制御装置。
【請求項2】
前記目標位置は、前記モータの回転量が所定量となるか、前記保持部の移動距離が所定距離となるか、又は前記保持部の回転角度が所定角度になる位置に対応する
請求項1に記載の制御装置。
【請求項3】
前記目標位置は、前記モータの出力するトルク又は前記モータに作用する外乱力が所定値以上になる位置に対応する
請求項1に記載の制御装置。
【請求項4】
前記位置制御部は前記モータの位置及び速度をフィードバック制御し、
前記目標位置は、前記位置制御部における位置偏差または速度偏差が所定値以上になる位置に対応する
請求項1に記載の制御装置。
【請求項5】
前記保持部は、回転テーブルと、該回転テーブルに設けた位置決め部と、該位置決め部が当接する当接部とを有し、
前記目標位置は、前記保持部を駆動する歯車のバックラッシュと、前記位置決め部が前記当接部に当接後、前記モータが回転した所定回転量との合算値に基づいて定まる
請求項1に記載の制御装置。
【請求項6】
前記トルク制御部及び位置制御部夫々からの出力を加算する加算部を備え、
前記位置制御部は、位置に関する第1比例ゲインを乗算する第一乗算器、速度に関する積分器及び速度に関する第2比例ゲインを乗算する第二乗算器により第二トルク指令を算出し、
前記切替部は、前記トルク制御部による制御と前記位置制御部による制御を切り替える代わりに、前記トルク制御部による制御中、前記第1比例ゲイン及び第2比例ゲインを設定可能な最高値よりも低い値に設定し、前記積分器の積算値をクリアすることで前記位置制御部の出力を最小化する
請求項1から5のいずれか一つに記載の制御装置。
【請求項7】
前記モータの速度を取得する速度取得部と、
該速度取得部で取得した前記速度が目標速度に到達するのに要する時間である到達時間を算出する時間算出部と、
前記トルク制御部による制御中に、前記時間算出部で算出した前記到達時間が予め定めた基準時間以下であるか否か判定する判定部と、
該判定部にて前記到達時間が前記基準時間以下であると判定した場合、前記モータの制御を、前記トルク制御部による制御から、目標位置を示す位置指令に基づいて、前記モータの位置を制御する位置制御部による制御に切り替える切替部と
を備える請求項1から6のいずれか一つに記載の制御装置。
【請求項8】
請求項1から7のいずれか一つに記載の制御装置を備える工作機械。
【請求項9】
ワークを保持する保持部を歯車を介して駆動するモータを制御する制御方法において、
前記モータの目標位置を示す位置指令に基づいて、前記モータの速度を制御し、
前記位置指令に基づく制御中に、前記目標位置に到達した場合、前記モータの制御を、前記位置指令に基づく制御から、目標トルクを示すトルク指令に基づく制御に切り替え、
前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる
制御方法。
【請求項10】
ワークを保持する保持部を歯車を介して駆動するモータを制御する制御装置にて実行可能なコンピュータプログラムであって、
前記制御装置に、
前記モータの目標位置を示す位置指令に基づいて、前記モータを制御し、
前記位置指令に基づく制御中に、前記目標位置に到達したと判定した場合、前記モータの制御を、前記位置指令に基づく制御から、目標トルクを示すトルク指令に基づく制御に切り替える
処理を実行させ、
前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、モータの駆動を制御する制御装置、工作機械、制御方法及びコンピュータプログラムに関する。
【背景技術】
【0002】
工作機械はテーブル又は主軸を備え、テーブル又は主軸はモータの駆動によって移動する。モータの駆動を制御する制御装置によって、テーブル又は主軸は目標位置まで移動することができる。制御装置はモータに対して、トルク指令に基づいたトルク制御を行うことがある。トルク制御を行うことによって、大きな加速度でモータは回転し、テーブル又は主軸の駆動時間を短縮することができる(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006-217746号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
モータは減速機を介してテーブル又は主軸に動力を供給する。減速機は歯車を備える。トルク制御している場合において、減速機のバックラッシュが発生している区間ではモータに対して負荷がかからないために短時間でモータの速度が高くなり、歯車のバックラッシュが解消したとき、急激に負荷が増加して振動が発生する。
【0005】
本開示は斯かる事情に鑑みてなされたものであり、振動の発生を抑制し、駆動時間の短縮を図ることができる制御装置、工作機械、制御方法及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一実施形態に係る制御装置は、ワークを保持する保持部を歯車を介して駆動するモータを制御する制御装置において、前記モータの目標位置を示す位置指令に基づいて、前記モータの位置を制御する位置制御部と、前記位置制御部による制御中に、前記目標位置に到達した場合、前記モータの制御を、前記位置制御部による制御から、目標トルクを示すトルク指令に基づいて、前記モータのトルクを制御するトルク制御部による制御に切り替える切替部とを備え、前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる。
【0007】
本開示の一実施形態においては、目標位置、即ちバックラッシュが解消する位置に到達するまでは位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。目標位置到達後は、トルク指令に基づいてモータのトルクを制御し、高速で保持部を駆動する。
【0008】
本開示の一実施形態に係る制御装置は、前記目標位置は、前記モータの回転量が所定量となるか、前記保持部の移動距離が所定距離となるか、又は前記保持部の回転角度が所定角度になる位置に対応する。
【0009】
本開示の一実施形態においては、モータの回転量が所定量となるか、又は保持部の移動距離又は回転角度が所定距離又は所定角度になる位置まで、位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。
【0010】
本開示の一実施形態に係る制御装置は、前記目標位置は、前記モータの出力するトルク又は前記モータに作用する外乱力が所定値以上になる位置に対応する。
【0011】
本開示の一実施形態においては、モータの出力するトルク又はモータに作用する外乱力が所定値以上になる位置まで、位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。
【0012】
本開示の一実施形態に係る制御装置は、前記位置制御部は前記モータの位置及び速度をフィードバック制御し、前記目標位置は、前記位置制御部における位置偏差または速度偏差が所定値以上になる位置に対応する。
【0013】
本開示の一実施形態においては、位置偏差または速度偏差が所定値以上になる位置まで、位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。
【0014】
本開示の一実施形態に係る制御装置は、前記保持部は、回転テーブルと、該回転テーブルに設けた位置決め部と、該位置決め部が当接する当接部とを有し、前記目標位置は、前記保持部を駆動する歯車のバックラッシュと、前記位置決め部が前記当接部に当接後、前記モータが回転した所定回転量との合算値に基づいて定まる。
【0015】
本開示の一実施形態においては、保持部を駆動する歯車のバックラッシュと、位置決め部が当接部に当接後、モータが回転した所定回転量との合算値に基づいて目標位置を定めて、モータの速度を制御する。
【0016】
本開示の一実施形態に係る制御装置は、前記トルク制御部及び位置制御部夫々からの出力を加算する加算部を備え、前記位置制御部は、位置に関する第1比例ゲインを乗算する第一乗算器、速度に関する積分器及び速度に関する第2比例ゲインを乗算する第二乗算器により第二トルク指令を算出し、前記切替部は、前記トルク制御部による制御と前記位置制御部による制御を切り替える代わりに、前記トルク制御部による制御中、前記第1比例ゲイン及び第2比例ゲインを設定可能な最高値よりも低い値に設定し、前記積分器の積算値をクリアすることで前記位置制御部の出力を最小化する。
【0017】
本開示の一実施形態においては、トルク制御部による制御中に、位置制御部による制御を最小化する。
【0018】
本開示の一実施形態に係る制御装置は、前記モータの速度を取得する速度取得部と、該速度取得部で取得した前記速度が目標速度に到達するのに要する時間である到達時間を算出する時間算出部と、前記トルク制御部による制御中に、前記時間算出部で算出した前記到達時間が予め定めた基準時間以下であるか否か判定する判定部と、該判定部にて前記到達時間が前記基準時間以下であると判定した場合、前記モータの制御を、前記トルク制御部による制御から、目標位置を示す位置指令に基づいて、前記モータの位置を制御する位置制御部による制御に切り替える切替部とを備える。
【0019】
本開示の一実施形態においては、第一制御部による制御中に、到達時間が基準時間以下であるか否か判定し、到達時間が基準時間以下である場合、モータの速度制御を第一制御部による制御から第二制御部による制御に切り替える。制御装置は、目標速度に到達する前に第二制御部による制御に切り替え、モータの加速度が徐々に変化するように位置指令を生成する。
【0020】
本開示の一実施形態に係る工作機械は、上述の制御装置を備える。
【0021】
本開示の一実施形態においては、目標位置、即ちバックラッシュが解消する位置に到達するまでは位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。目標位置到達後は、トルク指令に基づいてモータのトルクを制御し、高速で保持部を駆動する。
【0022】
本開示の一実施形態に係る制御方法は、前記モータの目標位置を示す位置指令に基づいて、前記モータの速度を制御し、前記位置指令に基づく制御中に、前記目標位置に到達した場合、前記モータの制御を、前記位置指令に基づく制御から、目標トルクを示すトルク指令に基づく制御に切り替え、前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる。
【0023】
本開示の一実施形態においては、目標位置、即ちバックラッシュが解消する位置に到達するまでは位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。目標位置到達後は、トルク指令に基づいてモータのトルクを制御し、高速で保持部を駆動する。
【0024】
本開示の一実施形態に係るコンピュータプログラムは、ワークを保持する保持部を歯車を介して駆動するモータを制御する制御装置にて実行可能なコンピュータプログラムであって、前記制御装置に、前記モータの目標位置を示す位置指令に基づいて、前記モータを制御し、前記位置指令に基づく制御中に、前記目標位置に到達したと判定した場合、前記モータの制御を、前記位置指令に基づく制御から、目標トルクを示すトルク指令に基づく制御に切り替える処理を実行させ、前記目標位置は、前記保持部を駆動する歯車のバックラッシュに基づいて定まる。
【0025】
本開示の一実施形態においては、目標位置、即ちバックラッシュが解消する位置に到達するまでは位置指令に基づいて、モータの速度を制御し、速度の急激な上昇を抑制する。目標位置到達後は、トルク指令に基づいてモータのトルクを制御し、高速で保持部を駆動する。
【発明の効果】
【0026】
本開示の一実施形態に係る制御装置、工作機械、制御方法及びコンピュータプログラムにあっては、目標位置、即ちバックラッシュが解消する位置に到達するまでは位置指令に基づいて、モータの速度を制御する。そのため、速度の急激な上昇を抑制して振動を抑制することができる。目標位置到達後は、トルク指令に基づいてモータのトルクを制御するので、高速で保持部を駆動し、保持部の駆動時間の短縮を図ることができる。
【図面の簡単な説明】
【0027】
図1】工作機械を略示する側面図である。
図2】回転テーブルを略示する平面図である。
図3】制御装置、駆動回路及びモータのブロック図である。
図4】制御装置、駆動回路及びモータのブロック線図である。
図5】モータの速度と時間との関係を示すグラフである。
図6】モータに供給するパルス数と期間B1~B3との関係を説明するグラフである。
図7】期間B1における位置制御を説明するフローチャートである。
図8】通常の位置制御におけるモータ32の加減速の概念を説明するためのグラフである。
図9】通常の位置制御におけるモータ32の加減速の概念を説明するためのグラフである。
図10】通常の位置制御におけるモータ32の加減速の概念を説明するためのグラフである。
図11】トルク制御部による制御から位置制御部による制御に切り替える場合の切り替え処理を説明する為のグラフである。
図12】制御装置によるモータの加速処理を説明するフローチャートである。
【発明を実施するための形態】
【0028】
以下本発明を実施の形態に係る工作機械を示す図面に基づいて説明する。図1図2に示す如く、工作機械は前後に延びた矩形の基台1を備える。基台1上部の後側にX軸方向移動機構63が設けてある。X軸方向移動機構63の上側にY軸方向移動機構64が設けてある。Y軸方向移動機構64は立柱4を支持する。
【0029】
X軸方向移動機構63はX軸モータを備え、Y軸方向移動機構64はY軸モータを備える。Y軸モータの駆動によって、立柱4と主軸ヘッド5が前後に移動する。X軸モータの駆動によって、立柱4と主軸ヘッド5が左右に移動する。制御装置20はX軸モータ及びY軸モータをフィードバック制御する。
【0030】
立柱4の前面に上下方向に移動するZ軸方向移動機構(図示略)が設けてある。Z軸方向移動機構は、上下に延びたレール、レールに平行なZ軸螺子軸、Z軸螺子軸に連結し、レールに沿って移動するナット、Z軸螺子軸を駆動するZ軸モータ(何れも図示略)を備え、主軸ヘッド5がナットに連結する。Z軸モータの駆動によって、主軸ヘッド5は上下に移動する。
【0031】
立柱4に連結板61aを介して工具マガジン61が連結する。連結板61aは前に突出し、連結板61aの前端部に工具マガジン61は設けてある。工具マガジン61は主軸ヘッド5よりも前側に位置する。
【0032】
主軸5aの下方にワークを保持する保持部3が設けてある。保持部3は、回転テーブル36、第1ワーク保持装置37、第2ワーク保持装置38等を備える。回転テーブル36は、前後に延びた矩形状をなす。回転テーブル36の上面前部に第1ワーク保持装置37が設けてある。第1ワーク保持装置37は、A軸モータ37aと、支持部37bと、回転支持台37cと、クランプ部37dとを備える。A軸モータ37a及び支持部37bは左右に離隔配置されている。回転支持台37cは左右に長い板状をなす。回転支持台37cの左右端部はA軸モータ37a及び支持部37bによってA軸(左右方向を軸方向とした軸)回りに回転可能に支持されている。クランプ部37dは、圧縮機(図示略)から送出される圧縮空気によってワークを固定する。クランプ部37dは回転支持台37cの上面に設けてある。なおクランプ部37dは、手動又は自動でワークを固定し、またワークの固定を解除する。
【0033】
回転テーブル36の上面後部に第2ワーク保持装置38が設けてある。第2ワーク保持装置38は、A軸モータ38aと、支持部38bと、回転支持台38cと、クランプ部38dとを備える。A軸モータ38a及び支持部38bは左右に離隔配置されている。回転支持台38cは左右に長い板状をなす。回転支持台38cの左右端部はA軸モータ38a及び支持部38bによってA軸(左右方向を軸方向とした軸)回りに回転可能に支持されている。クランプ部38dは、圧縮機(図示略)から送出される圧縮空気によってワークを固定する。クランプ部38dは回転支持台38cの上面に設けてある。なおクランプ部38dは、手動又は自動でワークを固定し、またワークの固定を解除する。
【0034】
カバー70は、立柱4、主軸ヘッド5、工具マガジン61、回転テーブル36等を含む工作機械本体を覆う。回転テーブル36は第1ワーク保持装置37と第2ワーク保持装置38の間に仕切板62を固定してある。仕切板62は第1ワーク保持装置37及び第2ワーク保持装置38を隔離する。
【0035】
図3に示す如く、回転テーブル36に減速機34を介してモータ32が設けてある。減速機34は複数の歯車を有する。モータ32の駆動によって、回転テーブル36は上下方向を回転軸方向として回転する。回転テーブル36の後半分の領域、換言すれば回転テーブル36における仕切板62よりも後側の領域は加工領域に属する。制御装置20はモータ32をフィードバック制御する。
【0036】
作業者は第1ワーク保持装置37に加工前のワークを装着する。回転テーブル36は回転し、第2ワーク保持装置38は仕切板62よりも前側に位置し、第1ワーク保持装置37は仕切板62よりも後側に位置する。作業者は加工後のワークを第2ワーク保持装置38から取り外し、主軸5aに装着した工具は第1ワーク保持装置37に保持したワークを加工する。加工後のワークの取り外し及び加工前のワークの加工を並行して行うことができる。
【0037】
保持部3はベース39を備える。ベース39は回転テーブル36の下側に設けてある。ベース39の上面に第一ストッパ39a及び第二ストッパ39bが設けてある。第一ストッパ39a及び第二ストッパ39bは左右に離れて配置してあり、回転テーブル36の回転中心よりも後側に配置してある。
【0038】
回転テーブル36の下面に第一位置決め片36a及び第二位置決め片36bが設けてある。第一位置決め片36a及び第二位置決め片36bは、回転テーブル36の回転中心よりも前側及び後側に配置してあり、回転テーブル36と共に回転する。平面視にて回転テーブル36が時計回りに回転した場合、第一位置決め片36aは第一ストッパ39aに当接し、停止する(図2参照)。このとき、第2ワーク保持装置38は加工領域に位置する。
【0039】
第一位置決め片36aが第一ストッパ39aに当接した後、モータ32は回転を続け、制御装置20はモータ32の位置偏差が予め定めた閾値以上になった場合、第2ワーク保持装置38は加工領域に位置した、即ち最終目標位置に到達したと判定し、モータ32を停止する。停止時の回転テーブル36の位置を第一テーブル位置という。
【0040】
回転テーブル36が反時計回りに回転した場合、第二位置決め片36bは第二ストッパ39bに当接し、停止する。このとき、第1ワーク保持装置37は加工領域に位置する。第二位置決め片36bが第二ストッパ39bに当接した後、モータ32は回転を続け、制御装置20はモータ32の位置偏差が予め定めた閾値以上になった場合、第1ワーク保持装置37は加工領域に位置した、即ち最終目標位置に到達したと判定し、モータ32を停止する。停止時の回転テーブル36の位置を第二テーブル位置という。
【0041】
後述の位置制御部22及びトルク制御部23による回転テーブル36の制御は、第一テーブル位置から第二テーブル位置への移動、又は、第二テーブル位置から第一テーブル位置への移動に対する制御である。
【0042】
工作機械は制御装置20を備える。制御装置20はCPU20a、RAM20b及び記憶部20cを備える。記憶部20cは不揮発性メモリ、ハードディスク等である。記憶部20cは、制御プログラムを記憶する。例えば記憶媒体30に格納した制御プログラムが記憶部20cにインストールしてある。尚、ネットワーク経由で記憶部20cに制御プログラムをインストールしてもよい。CPU20aは記憶部20cから制御プログラムをRAM20bに読み出し、各モータの駆動を制御する。尚、図3のモータ32は、X軸モータ、Y軸モータ、Z軸モータ及びマガジンモータを代表的に表したものである。
【0043】
CPU20aは駆動回路31に駆動指令を出力する。駆動回路31は駆動指令に基づいてモータ32に電力を供給する。モータ32は駆動回路31からの供給電力によって回転する。モータ32はエンコーダ33を備え、エンコーダ33の検出結果、即ち位置フィードバックは制御装置20に入力する。制御装置20はエンコーダ33より受け取った位置フィードバックに基づき駆動指令を修正し、駆動回路31に出力する(フィードバック制御)。
【0044】
図4は、制御装置20、駆動回路31及びモータ32のブロック線図である。制御装置20はトルク制御部23、位置制御部22、切替部21、第一乗算器24、第二乗算器25、第三乗算器26、微分器27及び積分器28等を備える。第一乗算器24は位置比例ゲインを入力値に乗算する。位置比例ゲインは可変である。第二乗算器25は速度比例ゲインを入力値に乗算する。速度比例ゲインは可変である。第三乗算器26は速度積分ゲインを入力値に乗算する。微分器27は入力値に微分要素を乗算する。積分器28は入力値を積分要素を乗算する。トルク制御部23、位置制御部22、切替部21、第一乗算器24、第二乗算器25、第三乗算器26、微分器27及び積分器28は制御装置20によって実現される。
【0045】
位置制御部22は、モータ32の軸周りにおける目標位置を示す位置指令に基づいて駆動回路に第二トルク指令を出力する。エンコーダ33はモータ32の軸周りの位置を検出する。制御装置20は、第一減算部201にて、位置指令からモータ32の軸周りの位置を減算し、第一乗算器24にて減算結果に位置比例ゲインを乗算する。制御装置20は微分器27にてモータ32の軸周りの位置に微分要素を乗算する。制御装置20は第二減算部202にて、位置比例ゲインを乗算した値から微分要素を乗算した値を減算する。制御装置20は減算結果に積分器28にて積分要素を乗算し、第三乗算器26にて速度積分ゲインを乗算する。制御装置20は、第一加算部203にて、積分要素及び速度積分ゲインを乗算した値と第二減算部202での減算結果とを加算し、第二乗算器25にて加算結果に速度比例ゲインを乗算する。
【0046】
トルク制御部23は、モータ32を駆動する為の目標トルクを示すトルク指令を出力する。目標トルクは、モータ32の最大出力や減速機34が許容可能な最大のトルクに基づいてあらかじめ決定される。制御装置20は、第二加算部204にて、速度比例ゲインを乗算した値、即ち第二トルク指令とトルク指令とを加算し、加算結果を駆動回路31に出力する。制御装置20は、駆動回路31に入力された加算結果に基づきモータ32に電流を出力する。
【0047】
切替部21は、位置指令に基づく位置制御部22による制御と、トルク指令に基づくトルク制御部23による制御とを切り替える。図4においては、模式的に、第二乗算器25と第二加算部204との間に第一スイッチ29aを設け、トルク制御部23と第二加算部204との間に第二スイッチ29bを設けている。位置制御部22による制御を行う場合、切替部21は第一スイッチ29aを閉じ、第二スイッチ29bを開く。トルク制御部23による制御を行う場合、切替部21は第一スイッチ29aを開き、第二スイッチ29bを閉じる。または、切替部21は第一スイッチ29aと第二スイッチ29bを常に閉じ、トルク制御部23による制御を行う場合に第一乗算器24の位置比例ゲイン及び第二乗算器25の速度比例ゲインを最小値に設定し、積分器28の積算値をクリアしてもよい。前記最小値は、設定可能な最高値よりも低い値の例示である。設定可能な最高値よりも低い値である限り、前記最小値よりも大きい値を位置比例ゲイン及び速度比例ゲインに設定してもよいが、最小値が最も良い。尚、第二加算部204は加算部を構成する。
【0048】
位置制御部22は、第一乗算器24、第二乗算器25、第三乗算器26、微分器27及び積分器28、第一減算部201、第二減算部202、第一加算部203、第二加算部204、及び第一スイッチ29aを含む。トルク制御部23は、第二スイッチ29b及び第二加算部204を含む。
【0049】
図5は、モータ32の速度と時間との関係を示すグラフである。最終目標位置が設定され、モータ32が現在位置から最終目標位置に移動する場合、制御装置20は最高速度を決定し、位置制御部22による制御、トルク制御部23による制御及び位置制御部22による制御を順に実行する。
【0050】
図5の期間B1は移動開始時点から時点K1までの期間を示し、期間B1において制御装置20は位置制御部22による制御を実行する。期間B1において、位置制御部22は速度Vsに到達するまで加速する。尚、開始速度は0とする。速度0から速度Vsに到達するまでの時間は予め定めてある。期間B1において、モータ32は速度Vsに到達後、一定速度で回転する。期間B1における移動距離は、減速機34のバックラッシに等しい。すなわち期間B1の間、減速機34はまだ噛み合っておらず回転テーブル36は回転しない。
【0051】
図5の期間B2は時点K1から時点K2までの期間を示し、期間B2において制御装置20はトルク制御部23による制御を実行する。期間B2において、モータ32は最高速度になるまで所定のトルクFで加速する(図11下図参照)。時点K1にて、回転テーブル36は回転を開始する。モータ32は所定のトルクで加速することで、第1ワーク保持装置37、第2ワーク保持装置38の質量によらず、最低限の時間で最高速度に達することができる。
【0052】
図5の期間B3は時点K2から時点K3までの期間を示し、期間B3において制御装置20は位置制御部22による制御を実行する。時点K3は最終目標位置に到達した時点である。期間B3において、モータ32は所定位置まで、最高速度で回転し、その後減速する。
【0053】
図6は、モータ32に供給するパルス数と期間B1~B3との関係を説明するグラフである。制御装置20はモータ32にパルス波を供給し、モータ32を駆動する。パルス数はパルス波の数であり、モータ32の回転量に対応する。図6のQ1~Q5はモータ32に供給するパルス数を示す。期間B1の間にモータ32に供給するパルス数はQ1+Q2である。期間B2の間にモータ32に供給するパルス数はQ3である。期間B3の間にモータ32に供給するパルス数はQ4+Q5である。
【0054】
パルス数Q1は、減速機34の歯車のバックラッシュを解消する為に必要なパルス数である。パルス数Q2及びQ5は、第一位置決め片36aが第一ストッパ39aに当接した後、モータ32の位置偏差が予め定めた閾値以上になるまでの間に駆動回路31に供給したパルス数、及び、第二位置決め片36bが第二ストッパ39bに当接した後、モータ32の位置偏差が予め定めた閾値以上になるまでの間に駆動回路31に供給したパルス数である。パルス数Q2及びQ5は夫々、位置決め片がストッパに当接した後の回転量である。
【0055】
期間B1において、位置制御部22は、パルス数が目標パルス数に至るまで、駆動回路31にパルスを供給する。目標パルス数は記憶部20cに予め設定してあり、目標位置に対応する。目標位置は、モータ32の回転量が所定量となる位置に対応し、回転テーブル36の移動距離が所定距離となる位置に対応し、回転テーブル36の回転角度が所定角度になる位置に対応する。
【0056】
図7は、期間B1における位置制御を説明するフローチャートである。制御装置20は位置制御部22によってモータ32を加速する(S1)。制御装置20はエンコーダ33からのフィードバック値、即ちモータ32の回転位置を示す値に基づいて、モータ32の速度を算出し、算出した速度が初期速度V0に到達したか否か判定する(S2)。算出した速度が初期速度V0に到達していない場合(S2:NO)、制御装置20はステップS1に処理を戻す。
【0057】
算出した速度が初期速度V0に到達している場合(S2:YES)、制御装置20は駆動回路31に与えたパルス数が目標パルス数に到達したか否か判定する(S3)。パルス数が目標パルス数に到達していない場合(S3:NO)、制御装置20はステップS3に処理を戻す。パルス数が目標パルス数に到達した場合(S3:YES)、制御装置20は切替部21によって、位置制御部22による制御からトルク制御部23による制御に切り替え(S4)、トルク制御部23による制御を開始する(S5)。トルク制御部23による制御は期間B2での制御である。
【0058】
目標位置は、モータ32の出力するトルク又はモータ32に作用する外乱力が所定値以上になる位置に対応する。そのため、ステップS3において、エンコーダ33からのフィードバック値に基づいて、モータ32の出力トルク又はモータ32に作用する外乱力を算出し、算出した出力トルク又は外乱力が所定値以上になるか否か判定してもよい。
【0059】
目標位置は、モータ32の位置偏差または速度偏差が所定値以上になる位置に対応する。そのため、ステップS3において、エンコーダ33からのフィードバック値に基づいて、位置偏差又は速度偏差を算出し、算出した位置偏差又は速度偏差が所定値以上になるか否か判定してもよい。
【0060】
上述したように、期間B2において、制御装置20はトルク制御部23による制御を実行する。制御装置20は、期間B3の開始時に、トルク制御部23による制御から位置制御部22による制御に切り替える。トルク制御部23による制御から位置制御部22による制御に切り替えた場合、加速度の急激な変化を招き、振動が発生するおそれがある。そのため、制御装置20は以下に示すように、トルク制御の切替時に速度変化を緩やかに変化させる。
【0061】
図8図10は、通常の位置制御におけるモータ32の加減速の概念を説明するためのグラフである。図8図10の時点t1は図5の時点K1に対応し、時点t2は図5の時点K2に対応する。図8図10のVt1は時点t1での速度を示す。図8に示すように、制御装置20は時点t1以降に最高速度Vt4を設定する。
【0062】
図9に示す如く、制御装置20は、図8のグラフに対して時定数T1の移動平均フィルタである第1フィルタを適用する。第1フィルタの適用によって、モータ32の速度は線形に変化し、時点t1から時点t2の間に、モータ32の速度は速度Vt1から最高速度Vt4になる。時点t1と時点t2との間の時間は時定数T1に対応する。
【0063】
図10の上図に示す如く、制御装置20は、図9のグラフに対して時定数T2の移動平均フィルタである第2フィルタを適用する。ここで、時定数T1と時定数T2は時定数T1>時定数T2の関係を満たすものとする。第2フィルタの適用によって、時点t1以降の速度変化は傾きが徐々に大きくなるように、緩やかに変化し、時点t2以降、速度変化は傾きが徐々に小さくなるように緩やかに変化する。時点t1と時点t2との間において、速度が線形に変化する部分がある。時点t2の速度は速度Vt2となる。速度Vt2は最高速度Vt4よりも小さく、速度Vt1よりも大きい。時点t2よりも後の時点t4にて、速度はVt4になる。
【0064】
図11は、トルク制御部23による制御から位置制御部22による制御に切り替える場合の切り替え処理を説明する為のグラフである。時点t2’が現在時点tであるとしたとき、時点t3’は、速度が線形に変化し続けた場合、即ち期間B2においてトルク制御部23による制御を継続したと仮定した場合に、速度がVt4になる時点を示す。制御装置20は、位置フィードバックに基づき、モータ32の位置、速度、加速度等を取得し、取得した位置、速度、加速度に基づき、前記モータの速度がVt4に達するまでの各時点におけるモータ32の予測速度を算出する。ここで、制御装置20の制御周期をΔtとする。位置フィードバックはエンコーダ33の出力と減速機の34の減速比より算出される。速度フィードバックは時点tにおける位置フィードバックとΔt前の時点の位置フィードバックとの差分であり、制御装置20により速度フィードバック、即ち速度を取得する。制御装置20により速度フィードバックを取得する処理は速度取得部を構成する。加速度フィードバックは時点tにおける速度フィードバックとΔt前の時点の速度フィードバックとの差分であり、制御装置20により加速度フィードバック、即ち加速度を取得する。制御装置20により加速度フィードバックを取得する処理は加速度取得部を構成する。予測速度はL1に対応する。予測速度L1は、現在時点tより速度が最高速度Vt4に到達するまで加速度が変化しないと仮定したときの速度であり、時点t3’は予測速度L1がVt4に到達する時刻である。予測速度を算出する制御装置20は予測速度算出部を構成する。
【0065】
制御装置20は、算出した予測速度に基づき、速度がVt4に到達するのに要する時間、即ち、到達時間rtを算出する。到達時間rtは現在時点tと時点t3’との間の時間である。制御装置20は、到達時間rtが基準時間以下であるか否か判定する。基準時間は、時定数T2の半分である。到達時間rtが基準時間以下である場合、制御装置20は、トルク制御部23による制御から位置制御部22による制御に切り替える。到達時間を算出する制御装置20は時間算出部を構成する。
【0066】
時点tにて、トルク制御部23による制御から位置制御部22による制御に切り替える場合、制御装置20はモータ32の加速度を、切替時加速度Achから基準時間の2倍、即ち時定数T2の間に線形に減少させるように、位置制御部22による制御に切り替え後の各時点における位置指令を算出する。位置制御部22による制御に切り替え後の各時点における位置指令を算出する制御装置20は位置指令算出部を構成する。L2は位置指令算出部が算出する位置指令を表す。
【0067】
時点tにて、トルク制御部23による制御から位置制御部22による制御に切り替える場合、制御装置20は切替時加速度Achを記憶し、モータ32の加速度を、切替時加速度Achから基準時間の2倍、即ち時定数T2の間に線形に減少させるように、位置制御部22による制御に切り替え後の各時点における位置指令を算出する。位置制御部22による制御に切り替え後の各時点における位置指令を算出する制御装置20は位置指令算出部を構成する。L2は位置指令算出部が算出する位置指令を表す。
【0068】
位置指令算出部は以下のようにして位置指令を算出する。現在時点tにおける速度フィードバック、位置フィードバック、加速度フィードバックを夫々Vt 、Pt 、at とする。時点tにおける計算上の速度指令、位置指令、加速度指令は各々Vct=Vt 、Pct=Pt、act=atとする。トルク制御部23から位置制御部22に切り替えた後の速度指令、位置指令、加速度指令は、時定数T2を用いて以下の手順で算出される。現在時点tにおける計算上の加加速度指令Jctは時点tにおけるフィードバックと時定数T2より、Jct =-at /T2である。時点t+1における計算上の加速度指令は、act+1 =at +Jct ・Δtであり、制御装置20はat+1 を積分して、時点t+1における計算上の速度指令Vct+1 =Vct +act ・Δt+Jct ・Δt2 /2を算出し、Vct+1 を積分して時点t+1における計算上の位置指令Pct+1 =Pt +Vct ・Δt+act ・Δt2 /2+Jt ・Δt3 /6を算出する。時点t+2以降においても同様である。ここで、時定数T1はVt4/atに相当する。
【0069】
前述したように、トルク制御部23は所定のトルクFをモータ32に付与するが、図11下図に示す如く、トルク制御部23による制御から位置制御部22による制御に切り替えた後、トルク制御部23はモータ32に付与するトルクを徐々に減らし、時定数T2の間に線形に減少させる。
【0070】
図12は、制御装置20によるモータ32の加速処理を説明するフローチャートである。制御装置20は、時点t1において、トルク制御部23による制御でモータ32を加速する(S11)。制御装置20は位置フィードバックに基づき、モータ32の速度を取得し(S12)、加速度を取得する(S13)。制御装置20は到達時間rtを算出し(S14)、到達時間rtが基準時間、即ち時定数T2以下であるか否か判定する(S15)。到達時間rtが基準時間以下でない場合(S15:NO)、制御装置20はステップS11に処理を戻す。
【0071】
到達時間rtが基準時間以下である場合(S15:YES)、制御装置20は、位置制御部22による制御開始時に使用するモータ32の位置、速度、加速度、加加速度を算出する(S16)。制御装置20は、トルク制御部23による制御から位置制御部22による制御に切り替える(S17)。制御装置20は位置制御部22による制御でモータ32を加速する(S18)。
【0072】
トルク制御部23による制御から位置制御部22による制御に切り替えた時、制御装置20はトルク制御部23からのトルク指令を直ちに0にしない。トルク指令を直ちに0にした場合、急激にモータ32の速度が減少し、振動が発生するおそれがあるからである。制御装置20は、トルク指令の値を線形に徐々に減らして0にする。トルク指令を0にすることは、図3の第二スイッチ29bを開くことと同じである。
【0073】
制御装置20は、フィードバック速度が最高速度Vt4、即ち目標速度以上であるか否か判定する(S19)。フィードバック速度が目標速度以上でない場合(S19:NO)、制御装置20はステップS18に処理を戻す。フィードバック速度が目標速度以上である場合(S19:YES)、制御装置20は加速を終了し(S20)、処理を終了する。
【0074】
実施の形態に係る工作機械にあっては、目標位置、即ちバックラッシュが解消する位置に到達するまでは位置指令に基づいて、モータ32の速度を制御する。そのため、速度の急激な上昇を抑制して振動を抑制することができる。目標位置到達後は、トルク指令に基づいてモータ32の速度を制御するので、高速で回転テーブル36を駆動し、回転テーブル36の駆動時間の短縮を図ることができる。
【0075】
またモータ32の回転量が所定量となるか、又は回転テーブル36の移動距離又は回転角度が所定距離又は所定角度になる位置まで、位置指令に基づいて、モータ32の速度を制御し、速度の急激な上昇を抑制することができる。
【0076】
またモータ32の出力するトルク又はモータ32に作用する外乱力が所定値以上になる位置まで、位置指令に基づいて、モータ32の速度を制御し、速度の急激な上昇を抑制することができる。
【0077】
また位置偏差または速度偏差が所定値以上になる位置まで、位置指令に基づいて、モータ32の速度を制御し、速度の急激な上昇を抑制することができる。
【0078】
また回転テーブル36を駆動する減速機34の歯車のバックラッシュと、位置決め片36a、36bがストッパ39a、39bに当接後、モータ32が回転した所定回転量との合算値に基づいて目標位置を定めて、モータ32の速度を制御することができる。
【0079】
またトルク制御部23による制御中に、位置比例ゲイン及び速度比例ゲインを設定可能な最高値よりも低い値に設定し、積分器の積算値をクリアし、位置制御部22による制御を最小化し、トルク制御部23による制御を効果的に実行する。
【0080】
またトルク指令に基づく制御中に、到達時間rtが基準時間以下であるか否か判定し、到達時間rtが基準時間以下である場合、モータ32の速度制御をトルク指令に基づく制御から位置指令に基づく制御に切り替える。目標速度に到達する前に位置指令に基づく制御に切り替え、モータ32の加速度が徐々に変化するように位置指令を生成し、加速度の急激な変化を抑制することができる。
【0081】
上述の位置制御部22及びトルク制御部23によるモータ制御は、回転テーブル36のモータ32に適用しているが、X軸モータ、Y軸モータ、Z軸モータ、A軸モータ、C軸モータ等、他のモータに適用してもよい。
【0082】
今回開示した実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。各実施例にて記載されている技術的特徴は互いに組み合わせることができ、本発明の範囲は、特許請求の範囲内での全ての変更及び特許請求の範囲と均等の範囲が含まれることが意図される。
【符号の説明】
【0083】
20 制御装置
20a CPU
20b RAM
20c 記憶部
21 切替部
22 位置制御部
23 トルク制御部
24 第一乗算器
25 第二乗算器
204 第二加算部
30 記憶媒体
31 駆動回路
32 モータ
33 エンコーダ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12