JP2006099310A - Robot simulation apparatus and method - Google Patents
Robot simulation apparatus and method Download PDFInfo
- Publication number
- JP2006099310A JP2006099310A JP2004283043A JP2004283043A JP2006099310A JP 2006099310 A JP2006099310 A JP 2006099310A JP 2004283043 A JP2004283043 A JP 2004283043A JP 2004283043 A JP2004283043 A JP 2004283043A JP 2006099310 A JP2006099310 A JP 2006099310A
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- unit
- servo
- robot
- motion
- 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.)
- Pending
Links
Images
Landscapes
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
Description
本発明は、ロボットシミュレーション装置に関するものであり、特に、オフライン教示により動作検証や動作所要時間を計測したり、ロボットの機械設計や電気設計、制御設計を支援したりするロボットシミュレーション装置および方法に関する。 The present invention relates to a robot simulation apparatus, and more particularly, to a robot simulation apparatus and method for measuring operation verification and time required for operation by off-line teaching, and supporting robot mechanical design, electrical design, and control design.
工業製品の製造過程においては、従来より産業用ロボットによる製造ライン自動化が図られており、例えば溶接、部品搬送、切断、組み立て等の工程でロボットが運用されている。ロボットを製造工程の中で運用する際は、まずロボットに動作を教える教示という作業が必要である。教示を行う際にシミュレータが利用されることも多く、各ロボットメーカ専用あるいは汎用のロボットシミュレータが市販されている。シミュレータを利用することによって、実際のロボットやラインを動かすことなく教示ができるという利点がある。ただし、実際の製造現場では生産効率を維持するため、各工程での作業時間(サイクルタイム)を設定しており、そのサイクルタイム内に収まるようにロボットの動作を教示する必要がある。このため、通常ロボットシミュレータはロボットの動作時間の計測機能を備えており、教示したデータに基づいてシミュレーションを行って任意の動作区間で動作時間が計測できる。しかしながら、シミュレーションで計測した動作時間が実際のロボットを動かした時のそれと大きく異なっていた場合、実際のロボットの動作時間が設定した動作時間に収まるように、教示データを修正してシミュレーションを行い、再び実際のロボットで動作時間や行程全体のサイクルタイムを評価するといった作業が必要になる。よってロボットシミュレータには正確な動作時間を算出することが望まれる。
動作時間の誤差の要因としては主に、動作指令に対するサーボ追従遅れ、周辺機器間の処理時間遅れ等がある。特にサーボ追従遅れに関しては、従来のロボットシミュレーション装置では、シミュレータ内にサーボ追従遅れ時間推定機能を設けて対応している(例えば、特許文献1参照)。
図6に従来のロボットシミュレーション装置の例を示す。61は教示データ生成手段であり、教示データを作成する。62は動作指令生成手段であり、教示データから各軸の動作指令を制御周期ごとに生成する。動作指令生成手段62は実際のロボットコントローラの動作指令生成部を模擬したものであり、ここで生成された動作指令はサーボ追従遅れ推定手段63に送られ、追従遅れを考慮したシミュレーションを行い、その結果を描画手段64に送ってロボットの3次元モデルを描画する。また65は動作時間計測手段であり、シミュレーションでの動作時間を計測する。このように、従来のロボットシミュレーション装置は、実際のロボットコントローラを模擬した動作指令生成手段とサーボ追従遅れ推定手段63によって、より正確な動作時間計測を可能としている。
In the manufacturing process of industrial products, production lines have been automated using industrial robots, and robots are used in processes such as welding, parts conveyance, cutting, and assembly. When operating a robot in the manufacturing process, it is first necessary to perform a teaching operation to teach the robot to operate. A simulator is often used when teaching, and a dedicated or general-purpose robot simulator is commercially available. By using a simulator, there is an advantage that teaching can be performed without moving an actual robot or line. However, in order to maintain production efficiency at an actual manufacturing site, work time (cycle time) in each process is set, and it is necessary to teach the operation of the robot so as to be within the cycle time. For this reason, the normal robot simulator has a function for measuring the operation time of the robot, and the operation time can be measured in an arbitrary operation section by performing a simulation based on the taught data. However, if the operation time measured in the simulation is significantly different from that when the actual robot is moved, the simulation is performed by correcting the teaching data so that the actual operation time of the robot falls within the set operation time. Again, it is necessary to evaluate the operation time and the cycle time of the entire process with an actual robot. Therefore, it is desirable for the robot simulator to calculate an accurate operation time.
The cause of the error in the operation time mainly includes a servo tracking delay with respect to the operation command, a processing time delay between peripheral devices, and the like. In particular, the servo follow-up delay is dealt with by providing a servo follow-up delay time estimation function in the simulator in the conventional robot simulation apparatus (see, for example, Patent Document 1).
FIG. 6 shows an example of a conventional robot simulation apparatus. 61 is teaching data generation means for creating teaching data.
しかしながら、従来のロボットシミュレーション装置におけるサーボ追従遅れ推定手段では実際のロボットコントローラでの処理内容を模擬しておらず簡単なフィルタとなっており、さまざまなサーボ制御の制御則の特性や機種に応じたロボットダイナミクスの特性を考慮していない。これはシミュレーションソフトウェアを簡単にするためであるが、上記のような特性を考慮していないため、実際のロボットを動作させた時と一致するような正確な動作時間を計測することができないという問題があった。
本発明はこのような問題点に鑑みてなされたものであり、シミュレーションソフトウェアを複雑にすることなく、正確な動作時間を計測することができるロボットシミュレーション装置および方法を提供することを目的とする。
However, the servo tracking delay estimation means in the conventional robot simulation device is a simple filter that does not simulate the processing contents of the actual robot controller, and according to the characteristics and models of various servo control rules. It does not consider the characteristics of robot dynamics. This is to simplify the simulation software, but because the above characteristics are not taken into account, there is a problem that it is not possible to measure an accurate operation time that matches the actual operation of the robot. was there.
The present invention has been made in view of such problems, and an object of the present invention is to provide a robot simulation apparatus and method capable of measuring an accurate operation time without complicating simulation software.
上記問題を解決するため、本発明は、次のように構成したのである。
請求項1に記載の発明は、オフラインにてロボットの教示および動作シミュレーションを実行するロボットシミュレーション装置において、教示データを生成し、前記教示データに基づいて動作指令を生成するモーションシミュレーション部と、前記動作指令に応じてサーボ演算を行うサーボシミュレーション部と、前記モーションシミュレーション部と前記サーボシミュレーション部とのデータ送受信を仲介し、両者の処理を同期させるシミュレーション統括部とを備えたことを特徴とする。
請求項2に記載の発明は、前記シミュレーション統括部は、前記モーションシミュレーション部および前記サーボシミュレーション部との通信を行う統括通信処理手段と、前記モーションシミュレーション部および前記サーボシミュレーション部に対し起動やシミュレーション実行開始・停止を指示するシミュレーション制御手段と、シミュレーション操作をする操作手段とを備えたことを特徴とする。
請求項3に記載の発明は、前記モーションシミュレーション部は、前記シミュレーション統括部との通信によって前記サーボシミュレーション部へ前記動作指令を送信し、前記サーボシミュレーション部による前記サーボ演算の結果を受信するサーボ通信処理手段と、前記サーボ演算の結果に基づいて前記ロボットの動作をシミュレートし、その所要時間を計測する動作時間計測手段と、前記サーボ演算の結果に基づいて前記ロボットのグラフィック描画を行う描画手段とを備えたことを特徴とする。
請求項4に記載の発明は、前記モーションシミュレーション部は、前記シミュレーション統括部との通信を有効にし、前記サーボシミュレーション部とのデータ送受信を行うか否かを設定するサーボシミュレーション設定手段と、設定した内容に応じて前記サーボ通信処理手段の有効・無効を切り替えるサーボシミュレーション切り替え手段とを備えたことを特徴とする。
請求項5に記載の発明は、前記サーボミュレーション部は、前記シミュレーション統括部との通信によって前記モーションシミュレーション部からの前記動作指令の受信や、前記モーションシミュレーション部への前記サーボ演算の結果の送信を行うモーション通信処理手段と、前記ロボットのダイナミクスシミュレーション演算を行うダイナミクスシミュレーション手段とを備えたことを特徴とする。
請求項6に記載の発明は、前記サーボミュレーション部は、前記シミュレーション統括部との通信を有効にし、前記モーションシミュレーション部とのデータ送受信を行うか否かを設定するモーションシミュレーション設定手段と、設定した内容に応じて、前記モーション通信処理手段の有効・無効を切り替えるモーションシミュレーション切り替え手段とを備えたことを特徴とする。
請求項7に記載の発明は、前記サーボシミュレーション部は、前記サーボ演算の結果に、前記ロボットの各関節軸の指令位置とフィードバック位置との差に応じて生成した位置決め完了信号を含め、前記モーションシミュレーション部は、前記位置決め完了信号に応じて前記動作指令を生成することを特徴とする。
請求項8に記載の発明は、前記サーボシミュレーション部は、前記サーボ演算の結果に、前記ダイナミクスシミュレーション手段で計算される2次側関節角度のフィードバック位置を含め、前記モーションシミュレーション部は、前記描画手段において、前記2次側関節角度に応じてロボットをグラフィック描画することを特徴とする。
また、請求項9に記載の発明は、オフラインにてロボットの教示および動作シミュレーションを実行するロボットシミュレーション方法において、教示データを生成し、前記教示データに基づいて動作指令を生成する第1の工程と、前記動作指令に応じてサーボ演算を行う第2の工程と、前記第1の工程と前記第2の工程とのデータ送受信を仲介し、両者の処理を同期させる第3の工程からなることを特徴とする。
In order to solve the above problem, the present invention is configured as follows.
According to a first aspect of the present invention, there is provided a robot simulation apparatus that performs teaching and motion simulation of a robot offline, generating a motion data and generating a motion command based on the teaching data, and the motion A servo simulation unit that performs a servo calculation in response to a command, and a simulation control unit that mediates data transmission / reception between the motion simulation unit and the servo simulation unit and synchronizes the processing of both are provided.
According to a second aspect of the present invention, the simulation control unit includes general communication processing means for communicating with the motion simulation unit and the servo simulation unit, and activation and simulation execution for the motion simulation unit and the servo simulation unit. A simulation control means for instructing start / stop and an operation means for performing a simulation operation are provided.
According to a third aspect of the present invention, the motion simulation unit transmits the operation command to the servo simulation unit through communication with the simulation control unit, and receives the result of the servo calculation by the servo simulation unit. A processing unit; an operation time measuring unit for simulating the operation of the robot based on the result of the servo calculation; and a drawing unit for performing graphic drawing of the robot based on the result of the servo calculation. It is characterized by comprising.
The invention according to claim 4, wherein the motion simulation unit is configured to enable communication with the simulation control unit and set whether to perform data transmission / reception with the servo simulation unit, Servo simulation switching means for switching validity / invalidity of the servo communication processing means according to the contents is provided.
According to a fifth aspect of the present invention, the servo simulation unit receives the operation command from the motion simulation unit and transmits the result of the servo calculation to the motion simulation unit through communication with the simulation control unit. Motion communication processing means for performing the above and dynamics simulation means for performing dynamics simulation calculation of the robot.
According to a sixth aspect of the present invention, the servo simulation unit enables communication with the simulation control unit and sets whether to perform data transmission / reception with the motion simulation unit, and setting And a motion simulation switching unit that switches between valid / invalid of the motion communication processing unit according to the contents.
According to a seventh aspect of the present invention, the servo simulation unit includes a positioning completion signal generated according to a difference between a command position and a feedback position of each joint axis of the robot in the result of the servo calculation. The simulation unit generates the operation command according to the positioning completion signal.
The servo simulation unit includes a feedback position of a secondary joint angle calculated by the dynamics simulation unit in a result of the servo calculation, and the motion simulation unit includes the drawing unit. The robot is graphically drawn according to the secondary joint angle.
The invention according to claim 9 is a robot simulation method for executing teaching and motion simulation of a robot off-line, wherein the first step of generating teaching data and generating an operation command based on the teaching data is provided. The second step of performing servo calculation in response to the operation command, and the third step of mediating data transmission / reception between the first step and the second step and synchronizing the processing of both. Features.
請求項1に記載の発明によると、シミュレーションソフトウェアを複雑にすることなく、正確な動作時間を計測することができる。
請求項2に記載の発明によると、モーションシミュレーションとサーボシミュレーションのそれぞれのソフトウェアを統括してシミュレーションできるようになり、モーションシミュレーション部やサーボシミュレーション部自体のソフトウェアを複雑にすることがない。
請求項3に記載の発明によると、詳細なサーボシミュレーションのデータを受け取り、その結果に応じてサイクルタイムを計測するので、より正確な動作時間が得られる。
請求項4に記載の発明によると、詳細なサーボシミュレーションを行うか否かを選択することができるようになる。これによって大まかな動作時間計測でよい場合や、時間計測が不要で動作の確認のみで良い場合等では計算負荷を少なくすることができる。
請求項5に記載の発明によると、実際のコントローラを模擬した動作指令データでシミュレーションすることができるので、より高精度なサーボ制御シミュレーションが可能となる。
請求項6に記載の発明によると、詳細なモーションシミュレーションを行うか否かを選択することができる。これによってサーボシミュレーション部単体でサーボ制御の検証も可能となる。
請求項7に記載の発明によると、より正確な動作時間計測が可能となる。
請求項8に記載の発明によると、より正確なロボットの動作が描画にて確認できる。
請求項9に記載の発明によると、シミュレーションソフトウェアを複雑にすることなく、正確な動作時間を計測することができる。
According to the first aspect of the present invention, it is possible to measure an accurate operation time without complicating the simulation software.
According to the second aspect of the present invention, the software for motion simulation and servo simulation can be integrated and simulated, and the software of the motion simulation unit and the servo simulation unit itself is not complicated.
According to the third aspect of the present invention, detailed servo simulation data is received and the cycle time is measured according to the result, so that a more accurate operation time can be obtained.
According to the invention described in claim 4, it is possible to select whether or not to perform a detailed servo simulation. As a result, the calculation load can be reduced when rough operation time measurement is sufficient, or when time measurement is unnecessary and only operation confirmation is required.
According to the fifth aspect of the present invention, simulation can be performed with operation command data simulating an actual controller, so that a more accurate servo control simulation can be performed.
According to the invention described in claim 6, it is possible to select whether or not to perform a detailed motion simulation. This makes it possible to verify servo control by the servo simulation unit alone.
According to the seventh aspect of the invention, more accurate operation time measurement can be performed.
According to the eighth aspect of the invention, more accurate robot operation can be confirmed by drawing.
According to the ninth aspect of the present invention, it is possible to measure an accurate operation time without complicating the simulation software.
以下、本発明の実施の形態について図を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明のロボットシミュレーション装置の概略図である。図において、1はモーションシミュレーション部であり、従来のオフライン教示用ロボットシミュレータに相当するものである。ここでは主にオフライン教示を行って時系列にロボットの各関節軸の動作指令を生成し、シミュレーションの実行結果を3次元グラフィックで描画する。本発明が特許文献1と異なる部分は、これにサーボシミュレーション部2とシミュレーション統括部3を加えた部分である。サーボシミュレーション部2では、モーションシミュレーション部1で生成された各関節軸の動作指令を取り込み、ロボットダイナミクスに応じた位置速度の比例積分制御等の演算を行ってその結果をモーションシミュレーション部1に送る。このとき、シミュレーション統括部3はモーションシミュレーション部1とサーボシミュレーション部2を起動したり、シミュレーション開始・停止等の制御や、双方で同期したデータのやりとりを仲介したりする。このような構成にすることによってサーボやロボットダイナミクスの特性を考慮した詳細なシミュレーションが可能になり、実際のロボットに近い動作の描画と正確な動作時間計測が可能となる。また同時に、モーションシミュレーション部1とサーボシミュレーション部2を分散させることで、それぞれのソフトウェアが複雑になることがなく、それぞれを単独で利用することも可能となるため、モーションシミュレーション部1とサーボシミュレーション部2が多目的に活用できるようになる。
FIG. 1 is a schematic diagram of a robot simulation apparatus according to the present invention. In the figure,
図2にモーションシミュレーション部1の詳細な構成を示す。モーションシミュレーション部1では、まずオフライン教示を行う教示データ生成手段11で教示データを作成し、記憶しておく。動作指令生成手段12では教示データを呼び出して、その中に記述されている教示位置や動作コマンドに応じて動作指令を生成する。この動作指令生成手段12は、実際のロボットコントローラの指令生成部分のソフトウェアをシミュレータ用に移植して正確に模擬したものであり、実際のコントローラで用いる制御パラメータに応じた加減速や軌跡、直交座標系から関節座標系への変換(逆運動学演算)に基づいて各関節軸の位置指令が生成される。
従来のロボットシミュレーション装置ではここで生成された動作指令をサーボ追従遅れ推定手段13を通して、描画手段14でその結果を描画したり、動作時間計測手段15で動作時間の計算を行ったりしている。
本発明が従来と異なる部分は、サーボシミュレーション設定手段16とサーボシミュレーション切り替え手段17、およびサーボ通信処理手段18を備えており、この手段の動作に応じて描画手段14で描画する内容が変わったり、動作時間計測手段15で計測される動作時間が変わったりすることである。
FIG. 2 shows a detailed configuration of the
In the conventional robot simulation apparatus, the operation command generated here is drawn through the servo follow-up delay estimating means 13, and the result is drawn by the drawing means 14, or the operation time is calculated by the operation
The portion where the present invention is different from the conventional one is provided with servo simulation setting means 16, servo simulation switching means 17, and servo communication processing means 18, and the contents to be drawn by the drawing means 14 change according to the operation of this means, The operation time measured by the operation time measuring means 15 is changed.
まず、サーボシミュレーション設定手段16では、従来のサーボ追従遅れ手段13を用いるか、シミュレーション統括部を通してサーボシミュレーション部2とデータ送受信を行うか否かを設定する。そしてその設定値に応じてサーボシミュレーション切り替え手段17によって動作指令生成手段12の動作指令をどちらに送るかを切り替える。またその切り替えた方からそのサーボデータを受け取って描画手段14や動作時間計測手段15に送る。
サーボシミュレーション設定手段16によってサーボシミュレーション部2と通信すると設定された場合は、サーボシミュレーション通信処理手段18によって動作指令をシミュレーション統括部3に伝送し、シミュレーション統括部3からサーボシミュレーション結果であるサーボ演算データを受け取る。このよう構成になっているので、詳細なサーボシミュレーションを行うか、従来の簡単なサーボ追従遅れ推定を行うかを選択でき、また、詳細なサーボシミュレーションを選択した場合は実際の位置速度の比例積分制御やロボットダイナミクスを考慮した実際のロボットの動作によく一致した位置フィードバック信号を受け取ることができる。このため、より正確な動作時間計測が可能となりそれを描画で確認することも可能となる。一方で、ラフな動作時間計測でよい場合や時間計測が不要で動作の確認のみで良い場合等では比較的計算負荷が少ない従来の方法も利用可能である。
First, the servo simulation setting means 16 sets whether to use the conventional servo follow-up delay means 13 or to perform data transmission / reception with the
When the servo
図3にサーボシミュレーション部2の詳細な構成を示す。本実施例では市販の汎用制御系シミュレータ「MATLAB/Simulink」(登録商標)を利用した例で説明する。サーボシミュレーション演算手段21は、入力された動作指令に応じてサーボ演算する部分であり、実際のロボットコントローラで用いられているフィードフォワード制御やフィードバック制御の演算ソフトウェアがシミュレーション用に移植されモジュール化されたものであり、1つのシミュレーションブロックとしてMATLAB/Simulinkのモデル上に登録されている。また同様にダイナミクスシミュレーション手段22はサーボシミュレーション演算手段21のトルク指令出力に基づいてロボットのダイナミクス演算を行うモジュールであり、演算方法としてニュートンオイラー法やラグランジュ法等がよく知られている。そして、ロボットの各関節軸のモータの位置を検出するエンコーダの分解能に応じてサーボシミュレーション演算手段21に各関節軸のモータ位置フィードバック値を返す。
FIG. 3 shows a detailed configuration of the
本発明ではモーションシミュレーション部1において正確な動作時間計測を行うために、以下の手段を追加構成している。すなわちシミュレーション統括部3を通してモーションシミュレーション部1から動作指令を受け取り、サーボシミュレーション結果のサーボ演算データ(例えば位置フィードバック値)をモーションシミュレーション部1に返すための通信を行うモーション通信処理手段23と、モーションシミュレーション部1とデータ送受信を行うか否かの設定を行うモーションシミュレーション設定手段24、モーションシミュレーション設定手段24で設定された値に応じてモーションシミュレーション部1からの動作指令をサーボシミュレーション演算部21に送るか否かを切り替えるモーションシミュレーション切り替え手段25を備えている。
モーションシミュレーション設定手段24によってモーションシミュレーション部1とデータ送受信を行うと設定された場合は、モーションシミュレーション通信処理手段23によって動作指令をシミュレーション統括部3から受け取ってサーボシミュレーション演算を行い、シミュレーション統括部3へサーボ演算データを送る。
このよう構成になっているので、モーションシミュレーション部1で正確なサーボシミュレーション結果を得ることが可能となる。さらに、詳細なモーションシミュレーションを行うか、MATLAB/Simulink上で指令生成ブロック26を作成して指令を生成するかを選択でき、詳細なモーションシミュレーションを選択した場合は実際のロボットコントローラで生成されるのと同じ動作指令を受け取ることができる。このため、より実際のロボットコントローラに即したシミュレーションが可能となり、ロボットの機械設計や電気設計、制御設計にも有用となる。また、指令生成ブロック26を選択した場合は、モーションシミュレーション部1やシミュレーション統括部3を用いることなく、サーボシミュレーション部2単独で、サーボ制御のシミュレーション検証が可能となる。
In the present invention, in order to perform accurate operation time measurement in the
If the motion
With this configuration, the
ここでは、サーボシミュレーション演算手段21は、実際のロボットコントローラで演算されているフィードフォワード制御やフィードバック制御のソフトウェアがシミュレーション用に移植されモジュール化されたものとしたが、MATLAB/Simulinkで準備しているシミュレーションブロックを接続した簡易的なシミュレーションモデルでもよい。
また、産業用ロボットの場合、モータとロボットアームの間に減速機が配置されており、減速機のバネ特性によってモータとアームにねじれ角が生じるのが一般的である。従ってモータの角度(1次側角度)とアームの角度(2次側角度)は異なっているが、図2のモーションシミュレーション部1の描画手段14で描画させるには2次側角度をモーションシミュレーション部1に送信するのが望ましい。2次側角度を送信する際はダイナミクスシミュレーション手段22の演算過程の2次側角度データを送信するようにする。このようにすることで、実際のロボットに近い動作が描画されるようになる。
さらに、モーションシミュレーション部1で正確な動作時間を計測可能とするために、サーボシミュレーション演算手段21の中で設定される位置決め完了信号をシミュレーション統括部3を通してモーションシミュレーション部1に送る。位置決め完了信号は各関節軸のモータの回転指令位置とフィードバック位置との差がある設定した値以下になった場合にONになる信号である。この信号をモーションシミュレーション部1の動作指令生成手段12で検出して位置指令を生成することにより、動作時間計測手段15でより正確な動作時間が計測できることになる。
Here, the servo simulation calculation means 21 is a module in which the software of feedforward control and feedback control calculated by an actual robot controller is ported for simulation, but is prepared by MATLAB / Simulink. A simple simulation model in which simulation blocks are connected may be used.
Further, in the case of an industrial robot, a reduction gear is disposed between the motor and the robot arm, and a torsion angle is generally generated in the motor and the arm due to the spring characteristics of the reduction gear. Accordingly, although the motor angle (primary side angle) and the arm angle (secondary side angle) are different, the secondary side angle is set to the motion simulation unit in order to perform drawing by the drawing means 14 of the
Further, in order to enable the
ここではサーボシミュレーション部1に市販の汎用制御系シミュレータ「MATLAB/Simulink」を利用した例を示したが、これに限定するものではなく、市販されているシミュレータでなくても上記のように構成されていればよい。
Here, an example is shown in which a commercially available general-purpose control system simulator “MATLAB / Simulink” is used for the
図4にシミュレーション統括部3の詳細な構成を示す。シミュレーション統括部は図2と図3で説明したモーションシミュレーション部1とサーボシミュレーション部2を統括して制御するものであり、マンマシンインターフェースである操作手段31と、シミュレーション装置全体を制御するシミュレーション制御手段32、モーションシミュレーション部1とサーボシミュレーション部2とのデータ送受信を行う統括通信処理手段33で構成されている。
シミュレーション制御手段32はモーションシミュレーション部1とサーボシミュレーション部2の起動やシミュレーション実行開始、停止を行う。シミュレーションを実行する際は、モーションシミュレーション部1とサーボシミュレーション部2の動作を設定した周期で同期したタイミングで処理を実行させる。
統括通信処理手段33はシミュレーション制御手段32が発行するコマンドや設定データをモーションシミュレーション部1やサーボシミュレーション部2に送り、その応答データやステータスを受け取る。モーションシミュレーション部に対しては、実行する教示データの読み込み指示やその実行開始、1周期実行要求等のコマンドを送信し、1周期実行時の目標位置指令等のデータを受け取る。また、サーボシミュレーション部2に対しては、シミュレーション開始指示や目標位置指令等を送信し、サーボシミュレーション演算とダイナミクスシミュレーションによる位置フィードバック値等のサーボ演算データを受け取る。
また、統括通信処理手段33でモーションシミュレーション部1やサーボシミュレーション部2とデータ送受信を行う方法として、共有メモリを利用する方法、ソケットを利用する方法、OLE(Object Linking and Embedding)を利用する方法等、様々な方法が考えられる。いずれにしても異なるプロセスで実行されているプログラムの間でデータの送受信を実現する方法としてよく知られているものであり、シミュレーションを実行する環境に合わせて最適な方法を選択すればよい。
FIG. 4 shows a detailed configuration of the
The simulation control unit 32 activates the
The general
In addition, as a method for transmitting / receiving data to / from the
次に、図5に、本発明のロボットシミュレーション装置の動作例のデータフローを示す。本動作例はサーボシミュレーション部2とのデータ送受信に共有メモリを利用したものである。共有メモリは同じCPU上の異なるプロセス間で高速に通信する際によく利用される手法である。ここでは、あらかじめオフライン教示した教示データを実行する例を示す。
まず、シミュレーション統括部3において、教示データ実行指示を出す(S0-S1)。図示していないが、モーションシミュレーション部1では教示データ実行指示を受け取った際に初期化を行い、パラメータ読み込みや指定された教示データの読み込み等を行う。また、この時シミュレーション統括部3はモーションシミュレーション部1から現在のロボットの関節角度(現在値)を取得する(S2)。この現在値を共有メモリにセット(S3)し、サーボシミュレーション部2にシミュレーション開始を指示する(S4)。サーボシミュレーション部2はシミュレーション開始の指示を受け取った際に、パラメータ読み込み(図示せず)や現在値の設定(S5-S7)等の初期化を行う。サーボシミュレーション初期化が終了すればシミュレーション実行の準備が終わり(S8)、周期実行処理に移行する。
Next, FIG. 5 shows a data flow of an operation example of the robot simulation apparatus of the present invention. In this operation example, a shared memory is used for data transmission / reception with the
First, the
周期実行処理ではまず、シミュレーション統括部3がモーションシミュレーション部1に対して1周期実行指示を出す(S9)。この指示に対する応答として、モーションシミュレーション部1は1周期後の目標位置指令を返す(S10)。次にシミュレーション統括部3がサーボシミュレーション部2に目標位置指令を渡すために、共有メモリに目標位置指令をセットする(S11)。サーボシミュレーション部2は共有メモリから目標位置指令を取得し(S12-S13)、サーボシミュレーション演算を行う。その結果の2次側関節角度を共有メモリにセット(S14)し、シミュレーション統括部3がそのデータを取得する(S15-S16)。このような共有メモリを使ってデータのやり取りを行う際は、セマフォを使って同時にデータの読み書きを行わないようにしている。この後、シミュレーション統括部3は2次側関節角度を描画更新指示とともにモーションシミュレーション部に送り(S17)、モーションシミュレーション部1で読み込まれた2次側関節角度データに応じてロボットの3次元グラフィクスの更新を行う。以上が周期実行処理の1周期分の処理であり、教示データの最後まで実行を繰り返す(S18以降)。
In the periodic execution process, first, the
本発明はモーションシミュレーション部とサーボシミュレーション部がシミュレーション統括部によって接続されることで実際のロボットシステムにより近い形でシミュレーションが行えるので、オフライン教示の評価だけでなく機械設計や電気設計、制御設計時の検証用途にも適用できる。 In the present invention, since the motion simulation unit and the servo simulation unit are connected by the simulation control unit, the simulation can be performed in a form closer to an actual robot system, so that not only the off-line teaching evaluation but also the mechanical design, electrical design, and control design can be performed. It can also be applied for verification purposes.
1 モーションシミュレーション部
2 サーボシミュレーション部
3 シミュレーション統括部
11 教示データ生成手段
12 動作指令生成手段
13 サーボ追従遅れ推定手段
14 描画手段
15 動作時間計測手段
16 サーボシミュレーション設定手段
17 サーボシミュレーション切り替え手段
18 サーボ通信処理手段
21 サーボシミュレーション演算手段
22 ダイナミクスシミュレーション手段
23 モーション通信処理手段
24 モーションシミュレーション設定手段
25 モーションシミュレーション切り替え手段
26 指令生成ブロック
31 操作手段
32 シミュレーション制御手段
33 統括通信処理手段
61 教示データ生成手段
62 動作指令生成手段
63 サーボ追従遅れ推定手段
64 描画手段
65 動作時間計測手段
DESCRIPTION OF
Claims (9)
教示データを生成し、前記教示データに基づいて動作指令を生成するモーションシミュレーション部と、
前記動作指令に応じてサーボ演算を行うサーボシミュレーション部と、
前記モーションシミュレーション部と前記サーボシミュレーション部とのデータ送受信を仲介し、両者の処理を同期させるシミュレーション統括部とを備えたことを特徴とするロボットシミュレーション装置。 In a robot simulation device that performs robot teaching and motion simulation offline,
A motion simulation unit that generates teaching data and generates an operation command based on the teaching data;
A servo simulation unit that performs servo calculation in accordance with the operation command;
A robot simulation apparatus comprising a simulation control unit that mediates data transmission / reception between the motion simulation unit and the servo simulation unit and synchronizes the processing of both.
前記モーションシミュレーション部および前記サーボシミュレーション部に対し起動やシミュレーション実行開始・停止を指示するシミュレーション制御手段と、
シミュレーション操作をする操作手段とを備えたことを特徴とする請求項1記載のロボットシミュレーション装置。 The simulation control unit is a general communication processing means for performing communication with the motion simulation unit and the servo simulation unit;
Simulation control means for instructing the motion simulation unit and the servo simulation unit to start and stop simulation execution;
2. The robot simulation apparatus according to claim 1, further comprising operation means for performing a simulation operation.
前記サーボ演算の結果に基づいて前記ロボットの動作をシミュレートし、その所要時間を計測する動作時間計測手段と、
前記サーボ演算の結果に基づいて前記ロボットのグラフィック描画を行う描画手段とを備えたことを特徴とする請求項1または2記載のロボットシミュレーション装置。 The motion simulation unit transmits the operation command to the servo simulation unit by communication with the simulation control unit, and receives a result of the servo calculation by the servo simulation unit;
An operation time measuring means for simulating the operation of the robot based on the result of the servo calculation and measuring the required time;
The robot simulation apparatus according to claim 1, further comprising a drawing unit that performs graphic drawing of the robot based on a result of the servo calculation.
設定した内容に応じて前記サーボ通信処理手段の有効・無効を切り替えるサーボシミュレーション切り替え手段とを備えたことを特徴とする請求項3記載のロボットシミュレーション装置。 The motion simulation unit enables communication with the simulation control unit and sets whether to perform data transmission / reception with the servo simulation unit;
4. The robot simulation apparatus according to claim 3, further comprising: a servo simulation switching unit that switches between valid / invalid of the servo communication processing unit according to the set contents.
前記ロボットのダイナミクスシミュレーション演算を行うダイナミクスシミュレーション手段とを備えたことを特徴とする請求項1または2記載のロボットシミュレーション装置。 The servo simulation unit receives motion command from the motion simulation unit through communication with the simulation control unit, and transmits a result of the servo calculation to the motion simulation unit,
The robot simulation apparatus according to claim 1, further comprising a dynamics simulation unit that performs a dynamics simulation calculation of the robot.
設定した内容に応じて、前記モーション通信処理手段の有効・無効を切り替えるモーションシミュレーション切り替え手段とを備えたことを特徴とする請求項5記載のロボットシミュレーション装置。 The servo simulation unit enables communication with the simulation control unit, and sets whether to perform data transmission / reception with the motion simulation unit, motion simulation setting means,
6. The robot simulation apparatus according to claim 5, further comprising a motion simulation switching unit that switches between valid / invalid of the motion communication processing unit according to the set contents.
前記モーションシミュレーション部は、前記位置決め完了信号に応じて前記動作指令を生成することを特徴とする請求項1乃至6記載のロボットシミュレーション装置。 The servo simulation unit includes a positioning completion signal generated according to a difference between a command position and a feedback position of each joint axis of the robot in the result of the servo calculation,
The robot simulation apparatus according to claim 1, wherein the motion simulation unit generates the operation command according to the positioning completion signal.
前記モーションシミュレーション部は、前記描画手段において、前記2次側関節角度に応じてロボットをグラフィック描画することを特徴とする請求項1乃至6記載のロボットシミュレーション装置。 The servo simulation unit includes the feedback position of the secondary joint angle calculated by the dynamics simulation means in the result of the servo calculation,
The robot simulation apparatus according to claim 1, wherein the motion simulation unit draws a graphic of the robot according to the secondary joint angle in the drawing unit.
教示データを生成し、前記教示データに基づいて動作指令を生成する第1の工程と、
前記動作指令に応じてサーボ演算を行う第2の工程と、
前記第1の工程と前記第2の工程とのデータ送受信を仲介し、両者の処理を同期させる第3の工程からなることを特徴とするロボットシミュレーション方法。 In a robot simulation method for performing offline robot teaching and motion simulation,
A first step of generating teaching data and generating an operation command based on the teaching data;
A second step of performing servo calculation in response to the operation command;
A robot simulation method comprising a third step of mediating data transmission / reception between the first step and the second step and synchronizing the processing of both.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004283043A JP2006099310A (en) | 2004-09-29 | 2004-09-29 | Robot simulation apparatus and method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004283043A JP2006099310A (en) | 2004-09-29 | 2004-09-29 | Robot simulation apparatus and method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006099310A true JP2006099310A (en) | 2006-04-13 |
| JP2006099310A5 JP2006099310A5 (en) | 2007-11-08 |
Family
ID=36239075
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004283043A Pending JP2006099310A (en) | 2004-09-29 | 2004-09-29 | Robot simulation apparatus and method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2006099310A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010108292A (en) * | 2008-10-30 | 2010-05-13 | Japan Society For The Promotion Of Machine Industry | System and method for preventing collision of machine tool |
| CN109483601A (en) * | 2018-12-24 | 2019-03-19 | 合肥欣奕华智能机器有限公司 | Industrial robot function test system and test method |
| JP2021045797A (en) * | 2019-09-17 | 2021-03-25 | オムロン株式会社 | Simulation device, simulation program, and simulation method |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05324022A (en) * | 1992-05-19 | 1993-12-07 | Fanuc Ltd | Computer connection type robot controller |
| JP2003178107A (en) * | 2001-12-07 | 2003-06-27 | Kawasaki Heavy Ind Ltd | Industrial articulated robot design / analysis support device and design / analysis support program |
| JP2003236784A (en) * | 2002-02-18 | 2003-08-26 | Kawasaki Heavy Ind Ltd | Robot teaching method and robot teaching device |
-
2004
- 2004-09-29 JP JP2004283043A patent/JP2006099310A/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05324022A (en) * | 1992-05-19 | 1993-12-07 | Fanuc Ltd | Computer connection type robot controller |
| JP2003178107A (en) * | 2001-12-07 | 2003-06-27 | Kawasaki Heavy Ind Ltd | Industrial articulated robot design / analysis support device and design / analysis support program |
| JP2003236784A (en) * | 2002-02-18 | 2003-08-26 | Kawasaki Heavy Ind Ltd | Robot teaching method and robot teaching device |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010108292A (en) * | 2008-10-30 | 2010-05-13 | Japan Society For The Promotion Of Machine Industry | System and method for preventing collision of machine tool |
| CN109483601A (en) * | 2018-12-24 | 2019-03-19 | 合肥欣奕华智能机器有限公司 | Industrial robot function test system and test method |
| CN109483601B (en) * | 2018-12-24 | 2023-11-28 | 合肥欣奕华智能机器股份有限公司 | Industrial robot function test system and test method |
| JP2021045797A (en) * | 2019-09-17 | 2021-03-25 | オムロン株式会社 | Simulation device, simulation program, and simulation method |
| WO2021053855A1 (en) * | 2019-09-17 | 2021-03-25 | オムロン株式会社 | Simulation apparatus, simulation program, and simulation method |
| KR20220028036A (en) * | 2019-09-17 | 2022-03-08 | 오므론 가부시키가이샤 | Simulation device, simulation program and simulation method |
| CN114206562A (en) * | 2019-09-17 | 2022-03-18 | 欧姆龙株式会社 | Simulation device, simulation program, and simulation method |
| JP7388074B2 (en) | 2019-09-17 | 2023-11-29 | オムロン株式会社 | Simulation device, simulation program and simulation method |
| KR102791717B1 (en) * | 2019-09-17 | 2025-04-07 | 오므론 가부시키가이샤 | Simulation device, simulation program and simulation method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN108568818B (en) | Control system and method for robot | |
| CN106406223B (en) | Real-time interference confirmation system for machine tool and robot | |
| JP7184595B2 (en) | machine tool system | |
| US7174225B2 (en) | Method and system for simulating processing of a workpiece with a machine tool | |
| CN201979219U (en) | Laser welding machine tool | |
| JP4056542B2 (en) | Offline teaching device for robots | |
| CN101092031A (en) | Off line programming tool for industrial robot | |
| US10814486B2 (en) | Information processing device, information processing method, and non-transitory computer-readable recording medium | |
| Nagata et al. | Development of CAM system based on industrial robotic servo controller without using robot language | |
| US20220292234A1 (en) | Simulation apparatus, recording medium, and simulation method | |
| EP3441831B1 (en) | Information processing device, information processing method, and information processing program | |
| Correa et al. | A modular-architecture controller for CNC systems based on open-source electronics | |
| CN118269089A (en) | Method for motion simulation of manipulator | |
| JP2019057253A (en) | Control device, control method and support device | |
| JP2012099082A (en) | Program conversion module and program conversion method for multiaxial synchronous operation machine | |
| JP2010218036A (en) | Robot off-line programming system | |
| Rea Minango et al. | Combining the STEP-NC standard and forward and inverse kinematics methods for generating manufacturing tool paths for serial and hybrid robots | |
| CN108472808A (en) | The synchronization of multiple robots | |
| CN113492414A (en) | Web-based robot cross-platform man-machine interaction system and implementation method | |
| CN107710082B (en) | Automatic configuration method for an external control system for controlling and/or regulating a robot system | |
| JP7658158B2 (en) | Simulation information reflecting device, method, program, and system | |
| Alvares et al. | Retrofitting of ASEA IRB2-S6 industrial robot using numeric control technologies based on LinuxCNC and MACH3-MatLab | |
| TWI594858B (en) | Robotic arm teaching system | |
| JP2006099310A (en) | Robot simulation apparatus and method | |
| JP2003300185A (en) | Robot controller simulation device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070920 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070920 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090813 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090817 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091008 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100114 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100510 |