JP2021062445A - 制御システム、制御装置、及びロボット - Google Patents

制御システム、制御装置、及びロボット Download PDF

Info

Publication number
JP2021062445A
JP2021062445A JP2019188337A JP2019188337A JP2021062445A JP 2021062445 A JP2021062445 A JP 2021062445A JP 2019188337 A JP2019188337 A JP 2019188337A JP 2019188337 A JP2019188337 A JP 2019188337A JP 2021062445 A JP2021062445 A JP 2021062445A
Authority
JP
Japan
Prior art keywords
robot
singular point
unit
control device
vicinity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019188337A
Other languages
English (en)
Other versions
JP7294980B2 (ja
Inventor
一剛 今西
Kazutaka Imanishi
一剛 今西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019188337A priority Critical patent/JP7294980B2/ja
Priority to US17/009,122 priority patent/US11806876B2/en
Priority to DE102020122847.3A priority patent/DE102020122847A1/de
Priority to CN202011086330.9A priority patent/CN112659157A/zh
Publication of JP2021062445A publication Critical patent/JP2021062445A/ja
Application granted granted Critical
Publication of JP7294980B2 publication Critical patent/JP7294980B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4086Coordinate conversions; Other special calculations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35252Function, machine codes G, M
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36547Use binary code to avoid program tampering
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39081Inexact solution for orientation or other DOF with relation to type of task
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40333Singularity, at least one movement not possible, kinematic redundancy
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42192Each axis drive has own queue of commands, executed in synchronism

Abstract

【課題】特異点を意識することなくロボットの動作プログラムを容易に作成すること。【解決手段】制御システムは、制御装置とロボットとを含み、制御装置は、ロボットに対して位置を教示する操作部と、ロボットが移動する際に特異点又は特異点近傍を通過する場合、姿勢変更を指示する姿勢変更指示部と、特異点又は特異点近傍を通過するように姿勢変更をロボットに指示する特異点通過動作要求部と、ロボット駆動情報を取得するロボット駆動情報要求部と、ロボット駆動情報からロボットのGコードをプログラムに挿入するロボット用Gコード生成部と、を備え、ロボットは、ロボットを駆動する駆動制御部と、特異点又は特異点近傍の通過を判定する特異点判定部と、変更した姿勢に基づき特異点又は特異点近傍の通過の動作計画を生成してロボットを駆動させる特異点通過パターン生成部と、ロボット駆動情報を制御装置に送信するロボット駆動情報出力部と、を備える。【選択図】図1

Description

本発明は、制御システム、制御装置、及びロボットに関する。
工作機械を用いた加工において、自動化のため、ワークの着脱作業等にロボットが用いられるようになっている。この場合、ロボットに所定の作業動作を教示する必要がある。しかしながら、ロボットの教示操作は、ロボットの教示操作盤を用いて行われるが、工作機械のユーザは、ロボットの教示操作盤の扱いに不慣れであり、自力で行うことが困難な場合がある。
例えば、工作機械の制御部でロボットの操作を可能とするロボットと工作機械の結合システムが開示されている。例えば、特許文献1参照。
特開2001−154717号公報
ところで、ロボットの教示操作では、教示操作盤に配置されたロボット動作方向を指定するキーを押しながらロボットを所望の位置に動かす操作、いわゆるジョグ操作が行われる。このジョグ操作の操作方法には、直交ジョグ操作と各軸ジョグ操作とがある。直交ジョグ操作は、ロボットに固定された直交座標系のX軸、Y軸及びZ軸の方向に基づいて移動させたい位置をロボットに教示する操作である。この場合、ロボットは、教示された位置にロボットの手先を移動させるために、X軸、Y軸及びZ軸の方向の並進運動に加えて、それぞれの軸の周りにロボットの手先を回転させる姿勢変更動作を行う。一方、各軸ジョグ操作は、ロボットの関節軸毎に軸まわりの方向にロボットを動かすことで、移動させたい位置をロボットに教示する操作である。直交ジョグ操作は、人間が理解しやすい直交座標系に基づいた操作であるため、ユーザは、直交ジョグ操作でロボットの教示操作を行うことが多い。
そして、直交ジョグ操作でロボットの手先の移動方向を指定して目標位置を生成すると、目標位置から逆運動学計算に基づいて各関節軸の回転角度が算出される。算出された回転角度に基づいて、ロボットの手先を目標位置に移動するように各関節軸が制御される。しかしながら、目標位置に対して逆運動学計算の解が得られない場合、ロボットの制御が困難となる。例えば、2つ以上の関節軸の回転軸が一直線上に並ぶようなロボット姿勢となる目標位置では、それらの関節軸の回転角度を一意に決めることができないことから、「特異点」と呼ばれ、そのような特異点にロボットを動かすことができない。特に、ロボットが工作機械内に侵入しワークの取付け/取外し動作を行う時に特異点を通過させる動作が必要なことが多い。この場合、直交ジョグ操作でロボットを操作することができず、特異点を通過しまたぐ際には逆運動学計算を必要としない各軸ジョグ操作に切り替える必要がある。
しかしながら、ロボットに不慣れな工作機械のユーザが特異点を把握してロボットを動作させることは難しい。
そこで、特異点を意識することなくロボットの動作プログラムを容易に作成することが望まれている。
(1)本開示の制御システムの一態様は、ロボットの位置教示が可能な制御装置と、前記位置教示に従い動作するロボットとを含む制御システムであって、前記制御装置は、ユーザによる操作に基づいて前記ロボットに対して位置を教示する操作部と、教示された前記位置に前記ロボットが移動する際に特異点若しくは特異点近傍を通過する通知を前記ロボットから受信した場合、前記ロボットの姿勢変更を指示する姿勢変更指示部と、前記姿勢変更指示部により指示された姿勢で前記特異点若しくは特異点近傍を通過するように、前記姿勢変更の指示を前記ロボットに送信する特異点通過動作要求部と、前記特異点若しくは特異点近傍を通過する際の前記ロボットの駆動状況を示すロボット駆動情報を前記ロボットに対して要求し、前記ロボット駆動情報を取得するロボット駆動情報要求部と、
前記ロボット駆動情報要求部により取得された前記ロボット駆動情報に基づいて前記ロボットの動作に対応したGコードを生成し、生成された前記Gコードをプログラムに挿入するロボット用Gコード生成部と、を備え、前記ロボットは、前記ロボットを駆動する駆動制御部と、前記制御装置により教示された前記位置に移動する際に前記特異点若しくは特異点近傍を通過するか否かを判定し、前記特異点若しくは特異点近傍を通過する場合、前記特異点若しくは特異点近傍を通過する通知を前記制御装置に送信する特異点判定部と、前記ロボットの姿勢変更の指示を前記制御装置から受信した場合、変更した姿勢に基づいて前記特異点若しくは特異点近傍を通過するように動作計画を生成し、生成された前記動作計画に基づいて前記駆動制御部に前記ロボットを駆動させる特異点通過パターン生成部と、前記制御装置から前記ロボット駆動情報の要求を受信した場合、前記ロボット駆動情報を前記制御装置に送信するロボット駆動情報出力部と、を備える。
(2)本開示の制御装置の一態様は、ユーザによる操作に基づいて制御対象のロボットに対して位置を教示する操作部と、教示された前記位置に前記ロボットが移動する際に特異点若しくは特異点近傍を通過する通知を前記ロボットから受信した場合、前記ロボットの姿勢変更を指示する姿勢変更指示部と、前記姿勢変更指示部により指示された姿勢で前記特異点若しくは特異点近傍を通過するように、前記姿勢変更の指示を前記ロボットに送信する特異点通過動作要求部と、前記特異点若しくは特異点近傍を通過する際の前記ロボットの駆動状況を示すロボット駆動情報を前記ロボットに対して要求し、前記ロボット駆動情報を取得するロボット駆動情報要求部と、前記ロボット駆動情報要求部により取得された前記ロボット駆動情報に基づいて前記ロボットに対応したGコードを生成し、生成された前記Gコードをプログラムに挿入するロボット用Gコード生成部と、を備える。
(3)本開示のロボットの一態様は、ロボットの位置教示が可能な制御装置による前記位置教示に従い動作するロボットであって、前記ロボットを駆動する駆動制御部と、前記制御装置より教示された位置に移動する際に特異点若しくは特異点近傍を通過するか否かを判定し、前記特異点若しくは特異点近傍を通過する場合、前記特異点若しくは特異点近傍を通過する通知を前記制御装置に送信する特異点判定部と、前記ロボットの姿勢変更の指示を前記制御装置より受信した場合、変更した姿勢で前記特異点若しくは特異点近傍を通過するように動作計画を生成し、生成された前記動作計画に基づいて前記駆動制御部に前記ロボットを駆動させる特異点通過パターン生成部と、前記制御装置から前記特異点若しくは特異点近傍を通過する際の前記ロボットの駆動状況を示すロボット駆動情報の要求を受信した場合、前記ロボット駆動情報を前記制御装置に送信するロボット駆動情報出力部と、を備える。
一態様によれば、特異点を意識することなくロボットの動作プログラムを容易に作成することができる。
一実施形態に係る制御システムの機能的構成例を示す機能ブロック図である。 ロボット用Gコード生成部により生成されたロボットの動作に対応したGコードが挿入されたプログラムの一例を示す図である。 ロボット位置教示画面の一例を示す図である。 ロボットの一例を示す図である。 制御システムの教示処理について説明するフローチャートである。 制御システムの教示処理について説明するフローチャートである。
<一実施形態>
まず、本実施形態の概略を説明する。本実施形態では、制御システムは、制御装置とロボットとを含む。制御装置は、ユーザによる操作に基づいてロボットに対して位置を教示し、教示された位置にロボットが移動する際に特異点若しくは特異点近傍を通過する通知をロボットから受信した場合、ロボットの姿勢変更を指示する。制御装置は、指示された姿勢で特異点若しくは特異点近傍を通過するようにロボットに対して要求する。制御装置は、特異点若しくは特異点近傍を通過する際のロボットの駆動状況を示すロボット駆動情報を取得し、取得されたロボット駆動情報に基づいてロボットに対応したGコードを生成し、生成されたGコードをプログラムに挿入する。
これにより、本実施形態によれば、「特異点を意識することなくロボットの動作プログラムを容易に作成する」という課題を解決することができる。
以上が本実施形態の概略である。
次に、本実施形態の構成について図面を用いて詳細に説明する。
なお、以下の説明では、特に断らない限り、特異点若しくは特異点近傍を「特異点近傍」ともいう。
図1は、一実施形態に係る制御システム1の機能的構成例を示す機能ブロック図である。
制御システム1は、制御装置100、及びロボット200を有する。制御装置100、及びロボット200は、図示しない接続インタフェースを介して互いに直接接続されてもよい。なお、制御装置100、及びロボット200は、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して相互に接続されていてもよい。この場合、制御装置100、及びロボット200は、かかる接続によって相互に通信を行うための図示しない通信部を備えている。
<制御装置100>
制御装置100は、ロボット200の位置教示が可能な数値制御装置であり、位置教示に従ってロボット200の動作プログラムを生成する。
図1に示すように、制御装置100は、ハンドル操作部110、制御部120、及び表示部140を有する。さらに、制御部120は、補間演算部121、目標位置送信部122、特異点情報取得部123、姿勢変更指示部124、特異点通過動作要求部125、ロボット座標フォローアップ要求部126、座標受信部127、フォローアップ実行部128、ロボット駆動情報要求部129、及びロボット用Gコード生成部130を有する。
ハンドル操作部110は、後述するロボット200に含まれる複数の関節軸それぞれの位置を、例えば、X軸、Y軸及びZ軸の直交座標系で調整するためのハンドルであって、ユーザが手動で操作するためのハンドルを有する。ハンドル操作部110は、例えば、回転式のハンドルの回転数に応じたパルス列の信号を出力する。このように、ハンドル操作部110を用いることで、工作機械のユーザは、慣れた直交座標系でロボット200を操作することができる。
なお、ハンドル操作部110は、ロボット200における複数の関節軸に対して1つ設けられてもよく、複数の関節軸の各々に対して1つずつ、すなわち複数設けられてもよい。
制御部120は、CPU、ROM、RAM、CMOSメモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
CPUは制御装置100を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、前記システムプログラム及びアプリケーションプログラムに従って制御装置100全体を制御する。これにより、図1に示すように、制御部120が、補間演算部121、目標位置送信部122、特異点情報取得部123、姿勢変更指示部124、特異点通過動作要求部125、ロボット座標フォローアップ要求部126、座標受信部127、フォローアップ実行部128、ロボット駆動情報要求部129、及びロボット用Gコード生成部130の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。CMOSメモリは図示しないバッテリでバックアップされ、制御装置100の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
補間演算部121は、ハンドル操作部110から受信したパルス列の信号に基づいてロボット200の目標位置(教示位置)を算出する。
目標位置送信部122は、補間演算部121により算出された目標位置をロボット200に送信する。
特異点情報取得部123は、目標位置送信部122により送信された目標位置にロボット200が移動する際に、後述するロボット200の特異点判定部213により特異点近傍を通過すると判定された場合、特異点近傍を通過する通知を受信する。
なお、特異点近傍とは、特異点を中心とする予め設定された所定の範囲である。
姿勢変更指示部124は、ロボット200が特異点近傍を通過する通知が特異点情報取得部123により受信された場合、前記通知のメッセージを後述する表示部140に表示する。そして、姿勢変更指示部124は、前記特異点近傍を通過するためのロボット200の姿勢変更を促すメッセージを表示部140に表示する。姿勢変更指示部124は、制御装置100に含まれるタッチパネル等の入力装置(図示しない)を介して、ユーザによる入力操作によりロボット200の姿勢変更の指示を受け付ける。なお、メッセージの表示、及びロボット200の姿勢変更の指示内容等については、後述する。
特異点通過動作要求部125は、姿勢変更指示部124により指示された姿勢で特異点近傍を通過するように、姿勢変更の指示をロボット200に送信する。そして、特異点通過動作要求部125は、ロボット200が特異点近傍を通過した場合、ロボット200から特異点通過の完了を示す完了通知を受信する。
ロボット座標フォローアップ要求部126は、特異点通過動作要求部125が完了通知を受信した場合、ロボット200に対してフォローアップ要求を送信する。その後、ロボット座標フォローアップ要求部126は、ロボット200からロボット200に設定される座標系に関する座標情報の送信が完了したことを示す完了通知を受信する。
座標受信部127は、ロボット200から上述の座標情報を受信する。
フォローアップ実行部128は、ロボット座標フォローアップ要求部126が完了通知を受信した場合、座標受信部127により受信した座標情報に基づいてロボット200の座標値を更新する。
ロボット駆動情報要求部129は、特異点近傍を通過する際のロボット200の駆動状況を示すロボット駆動情報をロボット200に対して要求し、ロボット200からロボット駆動情報を取得する。
ロボット駆動情報には、ロボット200の姿勢を示す形態、ロボット200の手首に対応する関節軸の回転数、設定されている座標系、及びロボット200の姿勢を示す座標値が含まれる。
ロボット用Gコード生成部130は、ロボット駆動情報要求部129により取得したロボット駆動情報に基づいてロボット200の動作に対応したGコードを生成し、生成されたGコードをプログラムに挿入する。
図2は、ロボット用Gコード生成部130により生成されたロボット200の動作に対応したGコードが挿入されたプログラムの一例を示す図である。
図2に示すように、1行目の「O0001」はプログラム番号を示す。
2行目の「G00」は、始点を位置決めするためのコマンドである。「X100 Y100 Z100」によって、(X,Y,Z)=(100,100,100)の座標へ移動することが指定される。
3行目の「G200」は、ロボット200が特異点近傍を通過するためのコマンドである。「J1 J2 J3 J4 J5 J6」は、ロボット200が6軸の垂直多関節ロボットの場合で、ロボット200が目標位置に移動した時のロボット駆動情報における6軸の各々の回転角度の値が設定される。換言すれば、ロボット用Gコード生成部130により生成される特異点近傍を通過するためのGコードは、2行目の直交モードから各軸モードに変更されたものである。これにより、逆運動学計算の解が得られない場合でもロボット200に特異点近傍を通過させまたがせることができる。
最後の「i j k」は、ロボット駆動情報が示す特異点通過後のロボット200の姿勢を示す形態、ロボット200の手首に対応する関節軸の回転数、及びロボット200の手先の移動の曲率をそれぞれ示す引数である。移動の曲率kは、例えば、「1%」から「100%」の間の値が設定され、大きな値が設定されるに従いロボット200の手先が滑らかな曲線で移動する。
4行目の「M99」は、図2のプログラムを終了するコマンドである。
これにより、制御装置100は、ロボット200用のGコードを挿入することにより、ロボットの専門知識を持たない工作機械のユーザでも容易にロボットの動作プログラムを作成することができる。
なお、ロボット200が特異点近傍を通過するためのコマンドとして「G200」としたが、これに限定されず、任意のGコードが割り当てられてもよい。
また、ロボット用Gコード生成部130は、目標位置に移動する際に特異点を通過しない場合、直交モードにおけるGコードを生成し、生成されたGコードをプログラムに挿入してもよい。例えば、ロボット用Gコード生成部130は、「G01 X100.0 Y0.0 Z200.0 A0.0 B−45.0 C0.0」の直交モードの切削(直線)送りのGコードを生成し、プログラムに挿入してもよい。ここで、A、B、Cは、X軸周り、Y軸周り、Z軸周りの回転角度を示す。あるいは、ロボット用Gコード生成部130は、「G01 J1 100.0 J2 30.0 J3 95.5 J4 10.2 J5 45.0 J6 0.0」の各軸モードの切削(直線)送りのGコードを生成してもよい。
表示部140は、液晶ディスプレイ等であり、制御部120による制御に従って各種情報を表示する。例えば、表示部140は、ロボット位置教示画面145を表示する。
図3は、ロボット位置教示画面145の一例を示す図である。
図3に示すように、ロボット位置教示画面145は、ロボット200の位置を直交座標系、及び各軸座標系で表示する座標表示領域300と、プログラムを作成/編集するプログラムエディタを表示するエディタ表示領域310とを有する。また、ロボット位置教示画面145は、プログラムエディタに入力されるGコード及び設定値等を表示する入力表示領域320と、ロボット200の座標系を変更する座標切替キーを表示する座標切替キー表示領域330とを有する。また、ロボット位置教示画面145は、ユーザによる操作に基づいてロボット200の姿勢変更の指示を受け付ける姿勢変更キーアイコン341−343を表示する姿勢変更表示領域340と、ハンドル操作部110による手動操作(ジョグ操作)の操作対象の軸を選択する選択キーを表示する選択キー表示領域350とを有する。また、ロボット位置教示画面145は、ロボット200の位置(X、Y、Z)及び姿勢(A、B、C)を取込む位置教示キー、移動速度の設定ボタン、ロボット200の手先に設けられたハンド開閉の設定キー、及びプログラムエディタで作成/編集されるプログラムの行を指定する行指定キーを表示する教示表示領域360を有する。また、ロボット位置教示画面145は、複数のソフトキーを表示するソフトキー表示領域370を有する。
また、上述したように、姿勢変更指示部124は、ロボット200が特異点近傍を通過する通知を特異点情報取得部123により受信した場合、「特異点近傍です」等の前記通知のメッセージを、図3のロボット位置教示画面145に重畳して表示部140に表示してもよい。この場合、姿勢変更指示部124は、例えば、「特異点を通過するためのロボットの姿勢変更を選択してください」等のメッセージをロボット位置教示画面145に重畳して表示部140に表示してもよい。そして、姿勢変更指示部124は、制御装置100の入力装置(図示しない)を介して、ロボット位置教示画面145の姿勢変更表示領域340に表示される姿勢変更キーアイコン341−343のいずれか1つをユーザに選択させ、ロボット200の姿勢変更の指示を受け付ける。
これにより、制御装置100は、直交座標系でロボット200の位置教示中に特異点近傍になった際に、ユーザが試行錯誤することなくロボット200に特異点近傍を通過させまたがせる動作を行うことができ、操作性が向上し、ユーザの負担を軽減することができる。
なお、姿勢変更キーアイコン341は、後述するロボット200の手首の関節軸を上向きから下向き、又は下向きから上向きに変更指示するアイコンである。また、姿勢変更キーアイコン342は、ロボット200の肘の関節軸を上向きから下向き、又は下向きから上向きに変更指示するアンコンである。また、姿勢変更キーアイコン343は、ロボット200の向きを前向きから後向き、又は後向きから前向きに変更指示するアイコンである。
また、座標切替キー表示領域330にロボット200の座標系を「各軸座標系」、「ワールド座標系」、「ユーザ座標系」、「ツール座標系1」、及び「ツール座標系2」のいずれかに変更する座標切替キーが表示されることから、ロボット用Gコード生成部130が生成するGコードには、ロボット200の座標系を変更するコードが予め用意されてもよい。この場合、例えば、「G201」がロボット200の座標系を各軸座標系に指定してもよい。また、「G202」がロボットの座標系をワールド座標系に指定してもよい。また、「G203」がロボット200の座標系をツール座標系1に指定してもよい。また、「G204」がロボット200の座標系をツール座標系2に指定してもよい。さらに、「G205」がロボット200の座標系をユーザ座標系に指定してもよい。
<ロボット200>
図4は、ロボット200の一例を示す図である。
図4に示すように、ロボット200は、例えば、6軸の垂直多関節ロボットであり、6つの関節軸230(1)−230(6)と、関節軸230(1)−230(6)の各々により連結されるアーム部240とを有する。ロボット200は、制御装置100からの駆動指令に基づいて、関節軸230(1)−230(6)の各々に配置されるサーボモータ(図示しない)を駆動することにより、アーム部240等の可動部材を駆動する。また、ロボット200の可動部材の先端部、例えば、関節軸230(6)の先端部には、例えば、握持ハンド等のエンドエフェクタ250が取り付けられる。
ここで、関節軸230(1)はロボット200の向きを回転させる関節である。また、関節軸230(3)はロボット200の肘に対応する関節である。また、関節軸230(5)はロボット200の手首に対応する関節である。
なお、ロボット200は、6軸の垂直多関節ロボットとしたが、6軸以外の垂直多関節ロボットでもよく、水平多関節ロボットやパラレルリンクロボット等でもよい。
また、以下において、関節軸230(1)−230(6)のそれぞれを個々に区別する必要がない場合、これらをまとめて「関節軸230」ともいう。
また、図4では、空間上に固定されたX軸、Y軸及びZ軸の3次元直交座標系のワールド座標系と、ロボット200の関節軸230(6)の先端に取り付けられたエンドエフェクタ250のXt軸、Yt軸及びZt軸の3次元直交座標のツール座標系と、Xu軸、Yu軸及びZu軸の3次元直交座標のユーザ座標系とを示す。本実施形態においては、事前に周知のキャリブレーションによってワールド座標系と、ツール座標系と、ユーザ座標系との位置の相関が取られている。これにより、上述の制御装置100は、ワールド座標系、ツール座標系、及びユーザ座標系のいずれの座標系で定義される位置を用いても、エンドエフェクタ250が取り付けられたロボット200の先端部の位置を制御することができる。
なお、図4に示すA、B、Cは、X軸周り、Y軸周り、Z軸周りの回転角度を示す。
図1に示すように、ロボット200は、制御部210を有する。さらに、制御部210は、目標位置受信部211、駆動制御部212、特異点判定部213、キネマティック制御部214、特異点通過パターン生成部215、座標系制御部216、ロボット座標フォローアップ部217、座標送信部218、及びロボット駆動情報出力部219を有する。
制御部210は、CPU、ROM、RAM、CMOSメモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
CPUはロボット200を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、前記システムプログラム及びアプリケーションプログラムに従ってロボット200全体を制御する。これにより、図1に示すように、制御部210が、目標位置受信部211、駆動制御部212、特異点判定部213、キネマティック制御部214、特異点通過パターン生成部215、座標系制御部216、ロボット座標フォローアップ部217、座標送信部218、及びロボット駆動情報出力部219の機能を実現するように構成される。
目標位置受信部211は、制御装置100の目標位置送信部122により送信された目標位置を受信する。
駆動制御部212は、目標位置受信部211により受信された目標位置に移動するように、ロボット200の各関節軸230のサーボモータ(図示しない)を駆動する。
特異点判定部213は、制御装置100より教示された目標位置に移動する際に特異点近傍を通過するか否かを判定し、特異点近傍を通過する場合、特異点近傍である旨の通知を制御装置100に送信する。
具体的には、特異点判定部213は、例えば、後述するキネマティック制御部214の算出結果に含まれる各関節軸230の回転角度に基づいて、目標位置に移動する際にロボット200が2つ以上の関節軸230の回転軸が一直線上に並ぶような姿勢となるか否かを判定する。そして、特異点判定部213は、ロボット200が2つ以上の関節軸230の回転軸が一直線上に並ぶ姿勢となる場合、特異点近傍を通過すると判定する。特異点判定部213は、特異点近傍である旨の通知を制御装置100に送信する。
キネマティック制御部214は、受信された目標位置から逆運動学計算に基づいて各関節軸230の回転角度を算出する。キネマティック制御部214は、算出結果を特異点判定部213、特異点通過パターン生成部215、及びロボット駆動情報出力部219に出力する。
特異点通過パターン生成部215は、ロボット200の姿勢変更の指示を制御装置100から受信した場合、変更したロボット200の姿勢に基づいて特異点近傍を通過するように動作計画を生成し、生成された動作計画に基づいて駆動制御部212にロボット200を駆動させる。
具体的には、特異点通過パターン生成部215は、姿勢変更の指示を受信した場合、ロボット200に設定されている座標系、ロボット200の姿勢を示す形態、ロボット200の手首に対応する各関節軸230(4)−230(6)の回転数、及び特異点の位置を含む情報を、キネマティック制御部214、及び後述する座標系制御部216から取得する。特異点通過パターン生成部215は、取得された情報を用い、変更後のロボット200の姿勢に基づいて特異点近傍を通過するように、ロボット200による補間動作及び各軸モードで動作計画を生成する。特異点通過パターン生成部215は、生成された動作計画に基づいて駆動制御部212にロボット200を駆動させる。特異点通過パターン生成部215は、ロボット200による補間動作及び各軸モードで目標位置にまでロボット200を移動させた場合、特異点通過の完了を示す完了通知を制御装置100に送信する。
なお、変更後のロボット200の姿勢は、制御装置100のユーザから指示された姿勢と異なってもよい。例えば、ユーザがロボット位置教示画面145の姿勢変更キーアイコン341を押下し、ロボット200の手首の関節軸230(5)を上向きから下向き、又は下向きから上向きに変更する指示を選択した場合でも、特異点通過パターン生成部215は、ロボット200の肘の関節軸230(3)を上向きから下向き、又は下向きから上向きする姿勢を選択してもよい。あるいは、特異点通過パターン生成部215は、ロボット200の向きの関節軸230(1)を前向きから後向き、又は後向きから前向きにする姿勢を選択してもよい。
すなわち、ロボットの教示操作盤の扱いに不慣れな工作機械のユーザにとって、ロボット200をいずれの姿勢に変更することで特異点を通過できるかを判断することは困難である。そこで、特異点通過パターン生成部215は、キネマティック制御部214、及び後述する座標系制御部216から取得された情報に基づいて特異点を通過するのに最適な姿勢を決定する。これにより、ユーザの負担を軽減することができる。
座標系制御部216は、ロボット200に設定される座標系を制御する。
ロボット座標フォローアップ部217は、制御装置100からフォローアップ要求を受信した場合、座標系制御部216からロボット200に設定される座標系に関する座標情報を取得し、取得された座標情報を座標送信部218に設定し制御装置100に通知する。ロボット座標フォローアップ部217は、座標情報の送信が完了したことを示す完了通知を制御装置100に行う。
座標送信部218は、ロボット座標フォローアップ部217により設定された座標情報を制御装置100に送信する。
ロボット駆動情報出力部219は、制御装置100からロボット駆動情報の要求を受信した場合、キネマティック制御部214、及び座標系制御部216から情報(形態、回転数、座標系)を取得する。ロボット駆動情報出力部219は、取得情報をロボット駆動情報として制御装置100に通知する。
<制御システム1の教示処理>
次に、本実施形態に係る制御システム1の教示処理に係る動作について説明する。
図5及び図6は、制御システム1の教示処理について説明するフローチャートである。ここで示すフローは、制御装置100のユーザによりロボット200に対して目標位置が教示される度に繰り返し実行される。
ステップS101において、制御装置100の補間演算部121は、制御装置100のユーザによるハンドル操作部110の操作により、ハンドル操作部110から受信したパルス列の信号に基づいてロボット200の目標位置を算出する。
ステップS102において、目標位置送信部122は、ステップS101で算出された目標位置をロボット200に送信する。
ステップS201において、ロボット200の駆動制御部212は、目標位置受信部211で受信された目標位置に移動するように、ロボット200の各関節軸230のサーボモータ(図示しない)を駆動する。
ステップS202において、特異点判定部213は、キネマティック制御部214が逆運動学計算により算出した目標位置に移動する際の各関節軸230の回転角度に基づいて、ロボット200が特異点近傍を通過するか否かを判定する。特異点近傍を通過する場合、処理はステップS203に進む。特異点近傍を通過しない場合、処理はステップS207に進む。
ステップS203において、特異点判定部213は、特異点近傍を通過する通知を制御装置100に送信する。
ステップS103において、制御装置100の特異点情報取得部123は、ロボット200からロボット200が特異点近傍を通過する通知を取得したか否かを判定する。特異点情報を取得した場合、処理はステップS104に進む。特異点情報を取得しなかった場合、処理はステップS107に進む。
ステップS104において、姿勢変更指示部124は、ステップS103でロボット200が特異点近傍を通過する通知が取得された場合、前記通知のメッセージを表示部140に表示し、制御装置100のユーザからロボット200の姿勢変更の指示を受け付ける。
ステップS105において、特異点通過動作要求部125は、ステップS104で指示されたロボット200の姿勢で特異点を通過するように、姿勢変更の指示をロボット200に送信する。
ステップS204において、ロボット200の特異点通過パターン生成部215は、ロボット200の姿勢変更の指示を制御装置100から受信した場合、変更後のロボット200の姿勢に基づいて特異点近傍を通過するように、ロボット200による補間動作及び各軸モードで動作計画を生成する。
ステップS205において、特異点通過パターン生成部215は、ステップS204で生成された動作計画に基づいて駆動制御部212にロボット200を駆動させる。
ステップS206において、特異点通過パターン生成部215は、ロボット200による補間動作及び各軸モードで目標位置にまでロボット200を移動させた場合、特異点通過の完了を示す完了通知を制御装置100に送信する。
ステップS106において、制御装置100の特異点通過動作要求部125は、ロボット200から特異点通過の完了を示す完了通知を受信する。
ステップS107において、ロボット座標フォローアップ要求部126は、ステップS106で完了通知が受信された場合、ロボット200に対してフォローアップ要求を送信する。
ステップS207において、ロボット200のロボット座標フォローアップ部217は、制御装置100からフォローアップ要求を受信する。ロボット座標フォローアップ部217は、座標系制御部216からロボット200に設定される座標系に関する座標情報を取得し、取得された座標情報を座標送信部218に設定する。
ステップS208において、座標送信部218は、ステップS207で設定された座標情報を制御装置100に送信する。
ステップS108において、制御装置100の座標受信部127は、ロボット200から座標情報を受信する。
ステップS209において、ロボット200のロボット座標フォローアップ部217は、ステップS208で座標情報が制御装置100に送信された場合、座標情報の送信が完了したことを示す完了通知を制御装置100に送信する。
ステップS109において、制御装置100のロボット座標フォローアップ要求部126は、ロボット200から座標情報の送信が完了したことを示す完了通知を受信する。
図6のステップS110において、フォローアップ実行部128は、ステップS109で完了通知が受信されたことにより、ステップS108で受信された座標情報に基づいてロボット200の座標値を更新する。
ステップS111において、ロボット駆動情報要求部129は、ロボット200に対してロボット駆動情報の要求を送信する。
ステップS210において、ロボット200のロボット駆動情報出力部219は、制御装置100からロボット駆動情報の要求を受信することにより、キネマティック制御部214、及び座標系制御部216からロボット駆動情報を取得する。
ステップS211において、ロボット駆動情報出力部219は、ステップS210で取得されたロボット駆動情報を制御装置100に送信する。
ステップS112において、制御装置100のロボット駆動情報要求部129は、ロボット200からロボット駆動情報を受信する。
ステップS113において、ロボット用Gコード生成部130は、ステップS112で取得されたロボット駆動情報に基づいて、ロボット200の動作に対応したGコードを生成し、生成されたGコードをプログラムに挿入する。
以上により、一実施形態の制御装置100は、制御装置100のユーザによるハンドル操作部110の操作により受信されたパルス列の信号に基づいて算出されたロボット200の目標位置を、ロボット200に送信する。制御装置100は、送信された目標位置に対して特異点近傍を通過する通知をロボット200から受信した場合、前記通知のメッセージを表示部140に表示し、制御装置100のユーザからロボット200の姿勢変更の指示を受け付ける。制御装置100は、指示された姿勢で特異点を通過するように、ロボット200に対して姿勢変更の指示を送信する。制御装置100は、特異点を通過する際のロボット200の駆動状況を示すロボット駆動情報を取得する。制御装置100は、取得されたロボット駆動情報に基づいてロボット200の動作に対応したGコードを生成し、生成されたGコードをプログラムに挿入する。
これにより、制御装置100は、特異点を意識することなくロボットの動作プログラムを容易に作成することができる。
以上、一実施形態について説明したが、制御システム1、制御装置100、及びロボット200は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
上述の実施形態では、制御装置100は、ユーザからの姿勢変更の指示として、ロボット200の手首の関節軸230(5)を上向きから下向き、若しくは下向きから上向き、又はロボット200の肘の関節軸230(3)を上向きから下向き、若しくは下向きから上向き、又はロボット200の向きを前向きから後向き、若しくは後向きから前向きにする指示を受け付けたが、これに限定されない。例えば、制御装置100は、ユーザから単純に姿勢変更のみの指示を受け付けてもよい。
これは、上述したように、ロボット200の特異点通過パターン生成部215が、キネマティック制御部214、及び座標系制御部216から取得される情報に基づいて特異点を通過するのに最適な姿勢を決定することによる。このため、変更後のロボット200の姿勢が制御装置100から指示された姿勢と異なる場合があり得る。また、ロボットの教示操作盤の扱いに不慣れな工作機械のユーザにとって、ロボット200が特異点を通過するのに最適な姿勢を判断することは困難なことである。このため、ユーザが単純に姿勢変更のみの指示をすることで、ユーザの負担をさらに軽減することができる。
なお、一実施形態における、制御システム1、制御装置100、及びロボット200に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAMを含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
以上を換言すると、本開示の制御システム、制御装置、及びロボットは、次のような構成を有する各種各様の実施形態を取ることができる。
(1)本開示の制御システム1は、ロボットの位置教示が可能な制御装置100と、位置教示に従い動作するロボット200とを含む制御システムであって、制御装置100は、ユーザによる操作に基づいてロボット200に対して位置を教示するハンドル操作部110と、教示された位置にロボット200が移動する際に特異点若しくは特異点近傍を通過する通知をロボット200から受信した場合、ロボット200の姿勢変更を指示する姿勢変更指示部124と、姿勢変更指示部124により指示された姿勢で特異点若しくは特異点近傍を通過するように、姿勢変更の指示をロボット200に送信する特異点通過動作要求部125と、特異点若しくは特異点近傍を通過する際のロボット200の駆動状況を示すロボット駆動情報をロボット200に対して要求し、ロボット駆動情報を取得するロボット駆動情報要求部129と、ロボット駆動情報要求部129により取得されたロボット駆動情報に基づいてロボット200の動作に対応したGコードを生成し、生成されたGコードをプログラムに挿入するロボット用Gコード生成部130と、を備え、ロボット200は、ロボット200を駆動する駆動制御部212と、制御装置100により教示された位置に移動する際に特異点若しくは特異点近傍を通過するか否かを判定し、特異点若しくは特異点近傍を通過する場合、特異点若しくは特異点近傍を通過する通知を制御装置100に送信する特異点判定部213と、ロボット200の姿勢変更の指示を制御装置100から受信した場合、変更した姿勢に基づいて特異点若しくは特異点近傍を通過するように動作計画を生成し、生成された動作計画に基づいて駆動制御部212にロボット200を駆動させる特異点通過パターン生成部215と、制御装置100からロボット駆動情報の要求を受信した場合、ロボット駆動情報を制御装置100に送信するロボット駆動情報出力部219と、を備える。
この制御システム1によれば、特異点を意識することなくロボットの動作プログラムを容易に作成することができる。
(2)特異点通過パターン生成部215は、教示された位置にロボット200を移動させる際に特異点若しくは特異点近傍を通過しない場合、直交モードで駆動制御部212にロボット200を駆動させ、特異点若しくは特異点近傍を通過する場合、各軸モードで駆動制御部212にロボット200を駆動させてもよい。
そうすることで、直交座標系でロボット200の位置教示中に特異点若しくは特異点近傍になった場合、各軸座標系に切り替えることでロボット200に特異点若しくは特異点近傍を通過させまたがせることができる。
(3)ロボット駆動情報がロボット200の姿勢を示す形態、ロボット200の手首に対応する関節軸230(4)−230(6)の回転数、設定されている座標系、及びロボット200の位置と姿勢を示す座標値を含んでもよい。
そうすることで、ロボットの専門知識を持たない工作機械のユーザでも容易にロボットの動作プログラムを作成することができる。
(4)姿勢変更指示部124が指示する姿勢変更は、ロボット200の手首若しくは肘の向きを上向きから下向き、若しくは下向きから上向きにする、又は、ロボット200の向きを前向きから後向き、若しくは後向きから前向きにする、又は、ロボット200の向きを左向きから右向き、若しくは右向きから左向きにしてもよい。
そうすることで、直交座標系でロボット200の位置教示中に特異点若しくは特異点近傍になった際に、ユーザが試行錯誤することなくロボット200に特異点若しくは特異点近傍を通過させまたがせる動作を行うことができ、操作性が向上し、ユーザの負担を軽減することができる。
(5)本開示の制御装置100は、ユーザによる操作に基づいて制御対象のロボット200に対して位置を教示するハンドル操作部110と、教示された位置にロボット200が移動する際に特異点若しくは特異点近傍を通過する通知をロボット200から受信した場合、ロボット200の姿勢変更を指示する姿勢変更指示部124と、姿勢変更指示部124により指示された姿勢で特異点若しくは特異点近傍を通過するように、姿勢変更の指示をロボット200に送信する特異点通過動作要求部125と、特異点若しくは特異点近傍を通過する際のロボット200の駆動状況を示すロボット駆動情報をロボット200に対して要求し、ロボット駆動情報を取得するロボット駆動情報要求部129と、ロボット駆動情報要求部129により取得されたロボット駆動情報に基づいてロボット200に対応したGコードを生成し、生成されたGコードをプログラムに挿入するロボット用Gコード生成部130と、を備える。
この制御装置100によれば、(1)と同様の効果を奏することができる。
(6)本開示のロボット200は、ロボットの位置教示が可能な制御装置100による位置教示に従い動作するロボットであって、ロボット200を駆動する駆動制御部212と、制御装置100より教示された位置に移動する際に特異点若しくは特異点近傍を通過するか否かを判定し、特異点若しくは特異点近傍を通過する場合、特異点若しくは特異点近傍を通過する通知を制御装置100に送信する特異点判定部213と、ロボット200の姿勢変更の指示を制御装置100より受信した場合、変更した姿勢で特異点若しくは特異点近傍を通過するように動作計画を生成し、生成された前記動作計画に基づいて駆動制御部212にロボット200を駆動させる特異点通過パターン生成部215と、制御装置100から特異点若しくは特異点近傍を通過する際のロボットの駆動状況を示すロボット駆動情報の要求を受信した場合、ロボット駆動情報を制御装置100に送信するロボット駆動情報出力部219と、を備える。
このロボット200によれば、(1)と同様の効果を奏することができる。
1 制御システム
100 制御装置
110 ハンドル操作部
124 姿勢変更指示部
125 特異点通過動作要求部
129 ロボット駆動情報要求部
130 ロボット用Gコード生成部
200 ロボット
215 特異点通過パターン生成部
219 ロボット駆動情報出力部

Claims (6)

  1. ロボットの位置教示が可能な制御装置と、前記位置教示に従い動作するロボットとを含む制御システムであって、
    前記制御装置は、
    ユーザによる操作に基づいて前記ロボットに対して位置を教示する操作部と、
    教示された前記位置に前記ロボットが移動する際に特異点若しくは特異点近傍を通過する通知を前記ロボットから受信した場合、前記ロボットの姿勢変更を指示する姿勢変更指示部と、
    前記姿勢変更指示部により指示された姿勢で前記特異点若しくは特異点近傍を通過するように、前記姿勢変更の指示を前記ロボットに送信する特異点通過動作要求部と、
    前記特異点若しくは特異点近傍を通過する際の前記ロボットの駆動状況を示すロボット駆動情報を前記ロボットに対して要求し、前記ロボット駆動情報を取得するロボット駆動情報要求部と、
    前記ロボット駆動情報要求部により取得された前記ロボット駆動情報に基づいて前記ロボットの動作に対応したGコードを生成し、生成された前記Gコードをプログラムに挿入するロボット用Gコード生成部と、を備え、
    前記ロボットは、
    前記ロボットを駆動する駆動制御部と、
    前記制御装置により教示された前記位置に移動する際に前記特異点若しくは特異点近傍を通過するか否かを判定し、前記特異点若しくは特異点近傍を通過する場合、前記特異点若しくは特異点近傍を通過する通知を前記制御装置に送信する特異点判定部と、
    前記ロボットの姿勢変更の指示を前記制御装置から受信した場合、変更した姿勢に基づいて前記特異点若しくは特異点近傍を通過するように動作計画を生成し、生成された前記動作計画に基づいて前記駆動制御部に前記ロボットを駆動させる特異点通過パターン生成部と、
    前記制御装置から前記ロボット駆動情報の要求を受信した場合、前記ロボット駆動情報を前記制御装置に送信するロボット駆動情報出力部と、を備える
    制御システム。
  2. 前記特異点通過パターン生成部は、教示された前記位置に前記ロボットを移動させる際に前記特異点若しくは特異点近傍を通過しない場合、直交モードで前記駆動制御部に前記ロボットを駆動させ、前記特異点若しくは特異点近傍を通過する場合、各軸モードで前記駆動制御部に前記ロボットを駆動させる、請求項1に記載の制御システム。
  3. 前記ロボット駆動情報が前記ロボットの姿勢を示す形態、前記ロボットの手首に対応する関節軸の回転数、設定されている座標系、及び前記ロボットの位置と姿勢を示す座標値を含む、請求項1又は請求項2に記載の制御システム。
  4. 前記姿勢変更指示部が指示する前記姿勢変更は、前記ロボットの手首若しくは肘の向きを上向きから下向き、若しくは下向きから上向きにする、又は、前記ロボットの向きを前向きから後向き、若しくは後向きから前向きにする、又は、前記ロボットの向きを左向きから右向き、若しくは右向きから左向きにする、請求項1から請求項3のいずれか1項に記載の制御システム。
  5. ユーザによる操作に基づいて制御対象のロボットに対して位置を教示する操作部と、
    教示された前記位置に前記ロボットが移動する際に特異点若しくは特異点近傍を通過する通知を前記ロボットから受信した場合、前記ロボットの姿勢変更を指示する姿勢変更指示部と、
    前記姿勢変更指示部により指示された姿勢で前記特異点若しくは特異点近傍を通過するように、前記姿勢変更の指示を前記ロボットに送信する特異点通過動作要求部と、
    前記特異点若しくは特異点近傍を通過する際の前記ロボットの駆動状況を示すロボット駆動情報を前記ロボットに対して要求し、前記ロボット駆動情報を取得するロボット駆動情報要求部と、
    前記ロボット駆動情報要求部により取得された前記ロボット駆動情報に基づいて前記ロボットに対応したGコードを生成し、生成された前記Gコードをプログラムに挿入するロボット用Gコード生成部と、
    を備える、制御装置。
  6. ロボットの位置教示が可能な制御装置による前記位置教示に従い動作するロボットであって、
    前記ロボットを駆動する駆動制御部と、
    前記制御装置より教示された位置に移動する際に特異点若しくは特異点近傍を通過するか否かを判定し、前記特異点若しくは特異点近傍を通過する場合、前記特異点若しくは特異点近傍を通過する通知を前記制御装置に送信する特異点判定部と、
    前記ロボットの姿勢変更の指示を前記制御装置より受信した場合、変更した姿勢で前記特異点若しくは特異点近傍を通過するように動作計画を生成し、生成された前記動作計画に基づいて前記駆動制御部に前記ロボットを駆動させる特異点通過パターン生成部と、
    前記制御装置から前記特異点若しくは特異点近傍を通過する際の前記ロボットの駆動状況を示すロボット駆動情報の要求を受信した場合、前記ロボット駆動情報を前記制御装置に送信するロボット駆動情報出力部と、
    を備えるロボット。
JP2019188337A 2019-10-15 2019-10-15 制御システム、制御装置、及びロボット Active JP7294980B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019188337A JP7294980B2 (ja) 2019-10-15 2019-10-15 制御システム、制御装置、及びロボット
US17/009,122 US11806876B2 (en) 2019-10-15 2020-09-01 Control system, control apparatus, and robot
DE102020122847.3A DE102020122847A1 (de) 2019-10-15 2020-09-01 Steuersystem, steuerapparatur und roboter
CN202011086330.9A CN112659157A (zh) 2019-10-15 2020-10-12 控制系统、控制装置以及机器人

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019188337A JP7294980B2 (ja) 2019-10-15 2019-10-15 制御システム、制御装置、及びロボット

Publications (2)

Publication Number Publication Date
JP2021062445A true JP2021062445A (ja) 2021-04-22
JP7294980B2 JP7294980B2 (ja) 2023-06-20

Family

ID=75155908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019188337A Active JP7294980B2 (ja) 2019-10-15 2019-10-15 制御システム、制御装置、及びロボット

Country Status (4)

Country Link
US (1) US11806876B2 (ja)
JP (1) JP7294980B2 (ja)
CN (1) CN112659157A (ja)
DE (1) DE102020122847A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210370503A1 (en) * 2020-05-29 2021-12-02 Wipro Limited Method and system for providing dynamic cross-domain learning
DE102020215904B3 (de) 2020-12-15 2022-03-31 Kuka Deutschland Gmbh Verfahren und System zum Betreiben eines Roboters

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000015593A (ja) * 1998-06-30 2000-01-18 Toshiba Corp マニピュレータ軌道生成装置及びマニピュレータ軌道生成プログラムを記録した記録媒体
JP2010201592A (ja) * 2009-03-05 2010-09-16 Kobe Steel Ltd ロボットの動作経路生成方法
JP2015202536A (ja) * 2014-04-14 2015-11-16 ファナック株式会社 作用された力に応じて移動されるロボットを制御するロボット制御装置
JP2020171989A (ja) * 2019-04-10 2020-10-22 国立大学法人 名古屋工業大学 ロボット教示システム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001154717A (ja) 1999-09-13 2001-06-08 Fanuc Ltd ロボットと機械の結合システム
EP2796249B1 (en) * 2011-09-28 2015-12-30 Universal Robots A/S Programming of robots
JP2017007023A (ja) * 2015-06-19 2017-01-12 ライフロボティクス株式会社 ロボット装置及びモータ制御装置
US11167384B2 (en) * 2015-07-02 2021-11-09 Serenity Data Security, Llc Hard drive non-destructive dismantling system
US20200139546A1 (en) * 2018-11-02 2020-05-07 Park Industries, Inc. Robotic saw and water jet control

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000015593A (ja) * 1998-06-30 2000-01-18 Toshiba Corp マニピュレータ軌道生成装置及びマニピュレータ軌道生成プログラムを記録した記録媒体
JP2010201592A (ja) * 2009-03-05 2010-09-16 Kobe Steel Ltd ロボットの動作経路生成方法
JP2015202536A (ja) * 2014-04-14 2015-11-16 ファナック株式会社 作用された力に応じて移動されるロボットを制御するロボット制御装置
JP2020171989A (ja) * 2019-04-10 2020-10-22 国立大学法人 名古屋工業大学 ロボット教示システム

Also Published As

Publication number Publication date
US11806876B2 (en) 2023-11-07
CN112659157A (zh) 2021-04-16
DE102020122847A1 (de) 2021-04-15
US20210107148A1 (en) 2021-04-15
JP7294980B2 (ja) 2023-06-20

Similar Documents

Publication Publication Date Title
US10737396B2 (en) Method and apparatus for robot path teaching
EP1462896B1 (en) Robot teaching device
JP6379874B2 (ja) ティーチングシステム、ロボットシステムおよびティーチング方法
JP6343353B2 (ja) ロボットの動作プログラム生成方法及びロボットの動作プログラム生成装置
WO2011039542A1 (en) Method and system of programming a robot
JP5144035B2 (ja) 産業用ロボットのツールの位置・姿勢制御方法及び制御システム
JP2015202523A (ja) ティーチングシステム、ロボットシステムおよびティーチング方法
JP7184595B2 (ja) 工作機械システム
KR20100129207A (ko) 매니퓰레이터에 의해 안내된 공구의 추가적인 공구축을 작동시키기 위한 방법 및 장치
JP7294980B2 (ja) 制御システム、制御装置、及びロボット
CN110709211B (zh) 机器人系统和机器人系统的控制方法
CN107791244B (zh) 控制器、作业控制装置、多轴动作控制装置和驱动控制装置
CN114905487B (zh) 示教装置、示教方法以及记录介质
JP5577157B2 (ja) ロボット制御システム
US10315305B2 (en) Robot control apparatus which displays operation program including state of additional axis
JP2008221428A (ja) ロボット教示システム及びロボット教示方法
JP5601949B2 (ja) ロボット制御システム
KR101474778B1 (ko) 다관절 로봇의 동작인식을 통한 제어장치 및 그 방법
CN112423947A (zh) 机器人系统
JP2011224745A (ja) ロボット教示装置、該装置のコントローラ、およびプログラム
KR20150044241A (ko) 로봇 자세 교시장치 및 그 방법
WO2023112342A1 (ja) 教示装置、制御装置、及び機械システム
KR20020030298A (ko) 산업용 퍼스널 컴퓨터를 기반으로 하는 갠트리형로봇시스템 및 그 제어방법
Arsenopoulos et al. A human-robot interface for industrial robot programming using RGB-D sensor
JP2012106321A (ja) ロボットの制御方法およびロボット制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220616

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230509

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230608

R150 Certificate of patent or registration of utility model

Ref document number: 7294980

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150