JP4930969B2 - Robot controller - Google Patents
Robot controller Download PDFInfo
- Publication number
- JP4930969B2 JP4930969B2 JP2005334152A JP2005334152A JP4930969B2 JP 4930969 B2 JP4930969 B2 JP 4930969B2 JP 2005334152 A JP2005334152 A JP 2005334152A JP 2005334152 A JP2005334152 A JP 2005334152A JP 4930969 B2 JP4930969 B2 JP 4930969B2
- Authority
- JP
- Japan
- Prior art keywords
- servo motor
- unit
- robot
- monitoring
- cpu
- 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.)
- Active
Links
Images
Landscapes
- Manipulator (AREA)
- Control Of Electric Motors In General (AREA)
- Numerical Control (AREA)
Description
本発明は、産業用ロボットの位置、速度、トルクを監視するロボット制御装置に関する。 The present invention relates to a robot control apparatus that monitors the position, speed, and torque of an industrial robot.
一般的に産業用ロボットは、各部の動作の駆動源となるサーボモータと、各サーボモータの動作量を検出するパルスジェネレータ等の位置検出器とを備えている。
そして、従来のロボット制御装置は、前記位置検出器からのデータを読み取ることでロボットの位置や速度を監視していた。
即ち、従来のロボット制御装置は、パルスジェネレータからのパルスを計測するカウンタ回路と、設定されたモータ速度の上限値とカウントパルス数とを比較する比較回路と、比較回路における比較タイミングの異常をチェックするタイミングチェック回路と、サーボモータへの電源の接続又は遮断を切り替えるリレーなどを有し、速度異常或いはタイミング異常などが発生するとサーボモータと電源との接続を遮断していた(例えば、特許文献1参照)。
The conventional robot control apparatus monitors the position and speed of the robot by reading data from the position detector.
That is, the conventional robot control device checks the counter circuit that measures the pulses from the pulse generator, the comparison circuit that compares the upper limit value of the set motor speed with the number of count pulses, and the abnormality of the comparison timing in the comparison circuit. And a relay for switching connection or disconnection of the power supply to the servo motor. When a speed abnormality or a timing abnormality occurs, the connection between the servo motor and the power supply is interrupted (for example, Patent Document 1). reference).
しかしながら、上記従来例では、位置検出器からのパルスの計測及び監視を、単一の系統からなる監視手段で行っているため、当該監視手段に異常を生じた場合、モータの速度が許容される上限値を超える等の異常を検出することができなくなるおそれがあり、ロボットを緊急停止させることができない可能性があるという不都合があった。 However, in the above conventional example, measurement and monitoring of the pulses from the position detector are performed by the monitoring means consisting of a single system, so that when the monitoring means has an abnormality, the motor speed is allowed. There is a possibility that an abnormality such as exceeding the upper limit value cannot be detected, and there is a possibility that the robot cannot be stopped urgently.
本発明は、ロボットの位置、速度、トルクを常に的確に監視することをその目的とする。 An object of the present invention is to always accurately and accurately monitor the position, speed, and torque of a robot.
請求項1記載の発明は、ロボットを駆動するサーボモータをロボットに設けられた位置検出手段からの検出出力に応じて制御するサーボ制御部と、サーボモータに対する電力の供給と遮断とを切り替え可能な切り替え部と、所定の監視条件に応じて切り替え部を通じてサーボモータを停止させる監視部とを備え、監視部は二つの処理演算部を有し、当該各処理演算部は、それぞれ個別に、監視条件として、位置検出手段からの同一の検出出力を適正に受信したか否かを判定すると共に適正に受信していないと判定した場合に切り替え部によりサーボモータに対する電力の供給を遮断する処理を行うと共に、前記監視部の二つの処理演算部は、個別に前記二つの処理演算部が取得した前記検出出力の値が一致するか否かを判定し、一致しないと判定した場合に、個別に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行う、という構成を採っている。 According to the first aspect of the present invention, it is possible to switch between a servo control unit that controls a servo motor that drives the robot in accordance with a detection output from a position detection unit provided in the robot, and supply and interruption of power to the servo motor. A switching unit and a monitoring unit that stops the servo motor through the switching unit according to a predetermined monitoring condition, the monitoring unit has two processing calculation units, and each processing calculation unit is individually monitored condition As well as determining whether or not the same detection output from the position detection means has been properly received, and performing a process of cutting off the power supply to the servo motor by the switching unit when it is determined that it has not been properly received , two processing operation section of the monitoring unit determines whether or not the value of the detection output obtained is the two processing operation section individually match, unmatched when If was boss, it adopts a configuration that performs processing to cut off the power supply to the servo motor by the switching unit individually.
請求項2記載の発明は、ロボットを駆動するサーボモータをロボットに設けられた位置検出手段からの検出出力に応じて制御するサーボ制御部と、サーボモータに対する電力の供給と遮断とを切り替え可能な切り替え部と、所定の監視条件に応じて切り替え部を通じてサーボモータを停止させる監視部とを備え、監視部は二つの処理演算部を有し、当該各処理演算部は、それぞれ個別に、監視条件として、位置検出手段からの同一の検出出力に基づく動作位置が許容動作位置を越えるか否かを判定すると共に許容動作位置を越える場合に切り替え部によりサーボモータに対する電力の供給を遮断する処理を行うと共に、前記監視部の二つの処理演算部は、個別に前記二つの処理演算部が取得した前記動作位置が一致するか否かを判定し、一致しないと判定した場合に、個別に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行う、という構成を採っている。 According to the second aspect of the present invention, the servo control unit that controls the servo motor that drives the robot according to the detection output from the position detection means provided in the robot, and the supply and interruption of power to the servo motor can be switched. A switching unit and a monitoring unit that stops the servo motor through the switching unit according to a predetermined monitoring condition, the monitoring unit has two processing calculation units, and each processing calculation unit is individually monitored condition And determining whether or not the operating position based on the same detection output from the position detecting means exceeds the allowable operating position, and when the operating position exceeds the allowable operating position, the switching unit cuts off the power supply to the servo motor. together, the two processing operation section of the monitoring unit determines whether the operating position acquired said two processing operation section individually match, matching When it is determined that no, adopts a configuration that performs processing to cut off the power supply to the servo motor by the switching unit individually.
請求項3記載の発明は、請求項2記載の発明と同様の構成を備えると共に、各処理演算部は、それぞれ個別に、監視条件として、位置検出手段からの検出出力に基づく動作速度が許容速度を越えるか否かを判定すると共に許容速度を越える場合に切り替え部によりサーボモータに対する電力の供給を遮断する処理を行う、という構成を採っている。 The invention described in claim 3 has the same configuration as that of the invention described in claim 2, and each processing operation unit individually has an operation speed based on a detection output from the position detection means as an allowable speed as a monitoring condition. When the speed exceeds the allowable speed, the switching unit performs a process of cutting off the power supply to the servo motor.
請求項4記載の発明は、ロボットを駆動するサーボモータをロボットに設けられた位置検出手段からの検出出力に応じて制御するサーボ制御部と、サーボモータに対する電力の供給と遮断とを切り替え可能な切り替え部と、所定の監視条件に応じて切り替え部を通じてサーボモータを停止させる監視部とを備え、監視部は二つの処理演算部を有し、当該各処理演算部は、それぞれ個別に、監視条件として、サーボ制御部が制御するサーボアンプによる同一のトルク出力が許容値内を越えるか否かを判定すると共に許容値内を越える場合に切り替え部によりサーボモータに対する電力の供給を遮断する処理を行うと共に、前記監視部の二つの処理演算部は、個別に前記二つの処理演算部が取得した前記トルク出力が一致するか否かを判定し、一致しないと判定した場合に、個別に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行う、という構成を採っている。 According to the fourth aspect of the present invention, the servo control unit that controls the servo motor that drives the robot according to the detection output from the position detection means provided in the robot, and the supply and interruption of power to the servo motor can be switched. A switching unit and a monitoring unit that stops the servo motor through the switching unit according to a predetermined monitoring condition, the monitoring unit has two processing calculation units, and each processing calculation unit is individually monitored condition And determining whether or not the same torque output by the servo amplifier controlled by the servo control unit exceeds the allowable value, and if it exceeds the allowable value, the switching unit cuts off the power supply to the servo motor together, the two processing operation section of the monitoring unit determines whether the torque output of the acquired said two processing operation section individually match one If it is determined not as adopts a configuration that performs processing to cut off the power supply to the servo motor by the switching unit individually.
請求項5記載の発明は、請求項1から4のいずれか一項に記載の発明と同様の構成を備えると共に、各処理演算部に対して処理の不良停止状態の発生を検出するウォッチドッグ回路が各処理演算部ごとに併設され、各処理演算部が、他方の処理演算部の監視回路を通じて不良停止状態を検知すると、切り替え部によりサーボモータに対する電力の供給を遮断する処理を行う、という構成を採っている。 The invention according to claim 5 has a configuration similar to that of the invention according to any one of claims 1 to 4 , and detects a failure stop state of processing for each processing operation unit. Is provided for each processing calculation unit, and when each processing calculation unit detects a failure stop state through the monitoring circuit of the other processing calculation unit, the switching unit performs a process of cutting off the power supply to the servo motor. Is adopted.
請求項1記載の発明では、サーボ制御部の動作制御によりロボットのサーボモータが駆動を行い、これに伴い位置検出部はサーボモータの駆動に伴い変化する動作位置(サーボモータにより変化するロボットの各部の位置、角度、位置変化量又は角度変化量等)を検出する。
そして、各処理演算部は、位置検出部から送信された検出信号に付された内容の確認用のコードを読み取り、コードの示す内容と受信した内容との一致判定をそれぞれが個別に行い、いずれか一方の処理演算部のみが不一致と判定した場合でもサーボモータが停止される。
つまり、サーボモータの動作の監視が二つの処理演算部により二系統で行われるので、いずれか一方が故障や不良を生じても、他方の処理演算部がサーボモータを停止させることができ、位置検出部から正しく検出出力が伝わらないことによる異常動作をより確実に防止することが可能となる。
さらに、請求項1記載の発明では、二つの処理演算部が、算出或いは外部からの入力により、位置検出手段からの検出出力を取得した場合に、各々が取得した監視対象の値の比較を行い、一致しない場合にサーボモータが停止される。
つまり、各処理演算部が取得する位置検出手段からの検出出力の不一致を監視することで、情報伝達系統の異常やいずれか一方の処理演算部の故障を検知することができ、監視部の異常によるサーボモータの異常動作をより確実に防止することが可能となる。
なお、監視対象の値の一致の判断はいずれか一方の処理演算部が行っても良いし、双方の処理演算部が行っても良い。
According to the first aspect of the present invention, the servo motor of the robot is driven by the operation control of the servo control unit, and the position detection unit is moved along with the driving of the servo motor (according to this, each part of the robot changed by the servo motor). Position, angle, position change amount or angle change amount).
Each processing calculation unit reads the code for confirming the content attached to the detection signal transmitted from the position detection unit, and individually performs a match determination between the content indicated by the code and the received content. Even when only one of the processing calculation units determines that they do not match, the servo motor is stopped.
In other words, since the operation of the servo motor is monitored in two systems by the two processing operation units, even if one of them malfunctions or malfunctions, the other processing operation unit can stop the servo motor, It is possible to more reliably prevent abnormal operation due to the fact that the detection output is not properly transmitted from the detection unit.
Further, in the first aspect of the invention, when the two processing operation units acquire the detection output from the position detection means by calculation or input from the outside, they compare the acquired monitoring target values. If they do not match, the servo motor is stopped.
In other words, by monitoring the mismatch in detection output from the position detection means acquired by each processing calculation unit, it is possible to detect an abnormality in the information transmission system or a failure in one of the processing calculation units. It is possible to more reliably prevent abnormal operation of the servo motor due to.
It should be noted that the determination of the coincidence of the values to be monitored may be performed by either one of the processing calculation units or both of the processing calculation units.
請求項2記載の発明では、サーボ制御部の動作制御によりロボットのサーボモータが駆動を行い、これに伴い位置検出部はサーボモータの駆動に伴い変化する動作位置(サーボモータにより変化するロボットの各部の位置、角度、位置変化量又は角度変化量等)を検出する。
そして、各処理演算部は、検出された動作位置が予め設定された許容動作位置内か否かの判定をそれぞれが個別に行い、いずれか一方の処理演算部のみが許容動作位置外と判定した場合でもサーボモータが停止される。
つまり、サーボモータの動作の監視が二つの処理演算部により二系統で行われるので、いずれか一方が故障や不良を生じても、他方の処理演算部がサーボモータを停止させることができ、許容動作位置を超える異常動作をより確実に防止することが可能となる。
なお、許容動作位置とは、サーボモータの仕様や特性等のロボットの内的要因で定まるものでも良いし、作動時の接触防止など周囲環境やロボットの外的要因で定まるものであっても良い。
さらに、請求項2記載の発明では、二つの処理演算部が、算出或いは外部からの入力により、動作位置を取得した場合に、各々が取得した動作位置の比較を行い、一致しない場合にサーボモータが停止される。
つまり、各処理演算部が取得する動作位置の不一致を監視することで、情報伝達系統の異常やいずれか一方の処理演算部の故障を検知することができ、監視部の異常によるサーボモータの異常動作をより確実に防止することが可能となる。
なお、監視対象の値の一致の判断はいずれか一方の処理演算部が行っても良いし、双方の処理演算部が行っても良い。
According to the second aspect of the present invention, the servo motor of the robot is driven by the operation control of the servo control unit, and the position detection unit accordingly changes the operation position that changes as the servo motor is driven (each part of the robot that is changed by the servo motor). Position, angle, position change amount or angle change amount).
Each processing calculation unit individually determines whether or not the detected operation position is within a preset allowable operation position, and only one of the processing calculation units determines that it is outside the allowable operation position. Even if the servo motor is stopped.
In other words, since the operation of the servo motor is monitored in two systems by two processing operation units, even if one of them malfunctions or malfunctions, the other processing operation unit can stop the servo motor. It is possible to more reliably prevent an abnormal operation exceeding the operating position.
The allowable operation position may be determined by the internal factors of the robot such as the specifications and characteristics of the servo motor, or may be determined by the surrounding environment such as contact prevention during operation or external factors of the robot. .
Further, in the invention according to claim 2, when the two processing operation units acquire the operation position by calculation or input from the outside, each of the operation positions is compared. Is stopped.
In other words, by monitoring the disagreement of the operation position acquired by each processing operation unit, it is possible to detect an abnormality in the information transmission system or a failure in one of the processing operation units. It becomes possible to prevent the operation more reliably.
It should be noted that the determination of the coincidence of the values to be monitored may be performed by either one of the processing calculation units or both of the processing calculation units.
請求項3記載の発明では、位置検出部の検出出力からサーボモータの駆動に伴うロボットの各部の動作速度が求められると、各処理演算部は、動作速度が許容速度内か否かの判定をそれぞれが個別に行い、いずれか一方の処理演算部のみが許容速度範囲外と判定した場合でもサーボモータが停止される。
つまり、サーボモータの速度の監視が二つの処理演算部により二系統で行われるので、いずれか一方が故障や不良を生じても、他方の処理演算部がサーボモータを停止させることができ、許容速度を超える異常動作をより確実に防止することが可能となる。
In the invention according to claim 3, when the operation speed of each part of the robot accompanying the drive of the servo motor is obtained from the detection output of the position detection part, each processing calculation part determines whether or not the operation speed is within the allowable speed. Each is performed individually, and the servo motor is stopped even when only one of the processing calculation units determines that it is out of the allowable speed range.
In other words, the servo motor speed is monitored in two systems by two processing operation units, so that if one of them fails or malfunctions, the other processing operation unit can stop the servo motor. It is possible to more reliably prevent abnormal operation exceeding the speed.
請求項4記載の発明では、サーボアンプからサーボモータの駆動に伴うロボットの各部のトルク出力が求められると、各処理演算部は、トルク出力が許容値を越えるか否かの判定をそれぞれが個別に行い、いずれか一方の処理演算部のみが許容値を越えると判定した場合でもサーボモータが停止される。
つまり、サーボモータのトルク出力の監視が二つの処理演算部により二系統で行われるので、いずれか一方が故障や不良を生じても、他方の処理演算部がサーボモータを停止させることができ、許容トルク値を超える異常動作をより確実に防止することが可能となる。
さらに、請求項4記載の発明では、二つの処理演算部が、算出或いは外部からの入力により、トルク出力を取得した場合に、各々が取得したトルク出力の比較を行い、一致しない場合にサーボモータが停止される。
つまり、各処理演算部が取得するトルク出力の不一致を監視することで、情報伝達系統の異常やいずれか一方の処理演算部の故障を検知することができ、監視部の異常によるサーボモータの異常動作をより確実に防止することが可能となる。
なお、監視対象の値の一致の判断はいずれか一方の処理演算部が行っても良いし、双方の処理演算部が行っても良い。
In the invention according to claim 4, when the torque output of each part of the robot accompanying the drive of the servo motor is obtained from the servo amplifier, each processing calculation part individually determines whether or not the torque output exceeds the allowable value. The servo motor is stopped even when only one of the processing calculation units determines that the allowable value is exceeded.
In other words, since the torque output of the servo motor is monitored in two systems by the two processing calculation units, even if one of them malfunctions or malfunctions, the other processing calculation unit can stop the servo motor, It is possible to more reliably prevent an abnormal operation exceeding the allowable torque value.
Further, in the invention according to claim 4, when the two processing operation units acquire the torque output by calculation or input from the outside, each of them compares the acquired torque output. Is stopped.
In other words, by monitoring the mismatch in torque output obtained by each processing operation unit, it is possible to detect an abnormality in the information transmission system or a failure in one of the processing operation units. It becomes possible to prevent the operation more reliably.
It should be noted that the determination of the coincidence of the values to be monitored may be performed by either one of the processing calculation units or both of the processing calculation units.
請求項5記載の発明では、各処理演算部ごとに設けられたウォッチドッグ回路が、処理演算部の不良停止状態の検知を行う。不良停止状態とは、処理演算部が処理を実行すべき際に処理を行わなくなった状態をいう。
そして、いずれか一方の処理演算部が他方の処理演算部を監視するウォッチドッグ回路を通じて不良停止状態の発生を検知すると、サーボモータを停止させる。
これにより、いずれか一方の処理演算部が不良停止して、残り一方の処理演算部のみによるサーボモータの監視状態が回避され、二系統による監視状態でのみサーボモータを駆動させることができ、サーボモータの異常動作をより確実に防止することが可能となる。
In a fifth aspect of the present invention, a watchdog circuit provided for each processing arithmetic unit detects a failure stop state of the processing arithmetic unit. The defective stop state refers to a state in which processing is not performed when the processing calculation unit should execute processing.
When one of the processing calculation units detects the occurrence of a defective stop state through a watchdog circuit that monitors the other processing calculation unit, the servo motor is stopped.
As a result, one of the processing operation units stops defectively, the monitoring state of the servo motor by only the remaining one processing operation unit is avoided, and the servo motor can be driven only in the monitoring state by two systems. It becomes possible to prevent abnormal operation of the motor more reliably.
(発明の実施形態の全体構成)
本発明の実施の形態を図1乃至図6に基づいて説明する。図1は、本発明の実施形態の概略構成図である。
上記実施形態では、作業目的に応じたツール115を先端部で保持すると共に当該ツール115を任意の位置に移動させ或いは任意の向きに向ける動作を行うロボット110の動作制御を行うロボット制御装置100を示している。
(Overall configuration of the embodiment of the invention)
An embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a schematic configuration diagram of an embodiment of the present invention.
In the above embodiment, the
(ロボット)
制御対象となるロボット110は、土台となるベース111と、複数の関節113で連結された複数のアーム112と、各関節113ごとに設けられた駆動源としてのサーボモータ116と、各サーボモータの軸角度をそれぞれ検出する位置検出手段としてのエンコーダ117とを備えている。そして、連結されたアーム112の最先端部にはロボット110の用途に応じたツール115(例えば溶接ガンやハンド等)が装備される。
上記各関節113は、アーム112の一端部を揺動可能として他端部を軸支する揺動関節と、アーム112自身をその長手方向を中心に回転可能に軸支する回転関節とのいずれかから構成される。つまり、本実施形態におけるロボット110はいわゆる多関節型ロボットに相当する。
また、ロボット110は、六つの関節113を具備しており、その先端部のツール115を任意の位置に位置決めし任意の姿勢を取らせることが可能となっている。
(robot)
The
Each of the
The
(ロボット制御装置)
ロボット制御装置100は、ティーチング或いはプログラミングにより設定されたロボットの教示動作データに従ってロボットの制御指令を出力する位置制御部10と、位置制御部10からの制御指令に従ってロボット110の各サーボモータ116の制御を行うサーボアンプ20と、電源から各サーボモータ116への電力の供給と遮断とを切り替え可能な切り替え部としてのマグネットスイッチ31,32と、ロボット110の制御情報を監視して所定条件に応じて各マグネットスイッチ31,32を通じてサーボモータ116を停止させる監視部50と、監視部50により異常検知が行われた場合にオペレータに異常発生を報知するための報知部33とを備えている。
(Robot controller)
The
(位置制御部)
位置制御部10は、ロボット110の動作制御を行うために各サーボモータ116に対する制御指令を生成するための各種の処理プログラム及び各種のデータが記憶されたメモリと、処理プログラムを実行するCPUと、サーボアンプ20との指令やデータの送受信を行うためのインターフェイスとを主に備えている。
(Position control unit)
The
上記メモリには、ロボット110の各種の処理プログラムの他、設定されたロボットの教示動作データ、ロボット110に関する各種のパラメータ(各部の寸法、重量、イナーシャ、エンコーダ117の出力コードと当該出力コードが示す関節角度(角度位置)との対応関係を示すテーブル、ロボットの各関節113における関節角度の上限値、下限値(許容動作位置)、各関節113の関節動作速度の上限値(許容速度)、各関節113のトルクの上限値(許容値)等)が記憶されている。
上記教示動作データは、ロボット110が所定の動作を実行するための制御指令であり、例えば、事前にロボット110に目的となる動作(ティーチング)を行わせ、当該動作軌跡の各点で関節角度のサンプリングを行い、その実行動作を再現するために演算により求められた移動軌跡のデータである。
位置制御部10のCPUは、ロボット110の制御の際には、上記教示動作データに基づいて、サーボアンプ20に対して各サーボモータの位置指令を所定の周期で順番に出力する。
なお、上記教示動作データは、ティーチングに限らず、記録メディアの読み出し装置、オペレータによる入力装置又は外部に対する通信手段によりロボット制御装置100の外部からを取得される場合もある。
In the memory, in addition to various processing programs of the
The teaching motion data is a control command for the
When the
Note that the teaching operation data is not limited to teaching, but may be acquired from the outside of the
また、メモリ内の各種のパラメータである各部の寸法、重量、イナーシャ、エンコーダ117の出力コードと当該出力コードが示す関節角度との対応関係を示すテーブル、ロボットの各関節113における関節角度の上限値、下限値、各関節113の関節動作速度の上限値、各関節113のトルクの上限値等のデータは、監視部50に出力される。その際、CPUは、各データについて所定のデータ単位ごとにCRCコード(Cyclic Redundancy Check)を生成し、これを添付して監視部50に送信する。
Also, various parameters in the memory, such as dimensions, weights, inertias, a table indicating the correspondence between the output code of the
(サーボアンプ)
サーボアンプ20は、ロボット110の各関節113のエンコーダ117から回転角度位置の検出信号を受信する受信回路と、各サーボモータ116に対する制御信号と帰還信号の送受信を行うモータ制御回路とを備えている。そして、サーボアンプ20は、位置制御部10から入力される位置指令と各エンコーダ117の検出信号と各サーボモータ116からの帰還信号とに基づいて、各サーボモータ116の位置、速度、トルクについてフィードバック制御を行う。
なお、このサーボアンプ20と位置制御部10とが、サーボモータ116をエンコーダ117からの検出出力に応じて制御するサーボ制御部として機能する。
(servo amplifier)
The
The
(報知部)
報知部33は、後述する監視部50の処理において異常を検知したときに、その異常をオペレータに報知するための表示手段である。具体的には、異常発生を表示するモニタ、報知ランプ又は警報機等が報知部33として使用される。
(Notification part)
The notification unit 33 is a display unit for notifying an operator of an abnormality when an abnormality is detected in the processing of the
(監視部)
図2は監視部50のより詳細な構成を示すブロック図である。即ち、この監視部50は、後述する各種の処理を実行する二つの処理演算部としての第一及び第二のCPU51,52と、ロボット110の各エンコーダ117から各種信号を受信すると共に各CPU51,52からの各種コマンド及びデータを送信する送受信回路53と、各サーボモータ116から帰還信号の受信を行うトルク検出回路54と、第一と第二のCPU51,52の演算処理の実行状態を個別に監視するウォッチドッグ回路55,56とを備えている。
(Monitoring Department)
FIG. 2 is a block diagram showing a more detailed configuration of the
上記各CPU51,52は、それぞれ内部メモリ57,58を有しており、各内部メモリ57,58は、CPU51,52がそれぞれ実行する処理プログラムを記憶すると共に各処理における作業領域として機能する。
また、第一のCPU51と第二のCPU52とは、それぞれのデータの送受信を行う通信手段であるバスにより互いに接続されている。
なお、各CPU51,52が行う処理の詳細については、図3〜図6のフローチャートにより後述することとする。
The
The
Details of processing performed by the
送受信回路53は、第一のCPU51からの指令に従い、エンコーダ117に対する検出信号出力の要求コマンドと当該要求コマンドを一意に識別するためのシーケンス番号データとをエンコーダ117に送信する。このシーケンス番号は、周期的に行われる位置データの要求コマンド出力のたびに順次1ずつ加算されて付加されるので、各要求コマンドごとに重複するシーケンス番号が付加されないようになっている。
一方、エンコーダ117は、シーケンス番号が付加された要求コマンドを受けると同じシーケンス番号を付加して検出した位置データの返信を行う。これにより、送受信回路53では、位置データに付加されたシーケンス番号を参照することで、いずれの要求コマンドに対する検出位置データなのかを識別することができる。また、シーケンス番号の不一致により、エンコーダ117の異常を検知することが可能となっている。
The transmission /
On the other hand, when the
トルク検出回路54は、サーボアンプ20においてサーボモータ116に通電される電流値の検出を行い、これに基づくサーボモータ116のトルク値を求めて第一のCPU51に出力を行う。
The
ウォッチドッグ回路55は第一のCPU51を監視し、ウォッチドッグ回路56は第二のCPU52の監視を行う。
即ち、各ウォッチドッグ回路55,56は、ロボット110の制御実行時において、それぞれが監視対象とするCPU51,52に対して周期的にウォッチドッグ要求信号を出力し、これに対して各CPU51,52が所定期間内に応答信号を返信しないときには、監視対象であるCPU51,52が停止しているものとして、タイムアップ信号を監視対象ではないCPU52,51に出力する機能を有している。
The
That is, the
(監視部におけるパラメータ送信監視処理)
図3は監視部50の各CPU51,52が行うロボット制御における各種のパラメータ(各部の寸法、重量、イナーシャ、エンコーダ117の出力コードと当該出力コードが示す関節角度の対応関係を示すテーブル、ロボットの各関節113における関節角度の上限値、下限値、各関節113の関節動作速度の上限値、各関節113のトルクの上限値等)の送信監視処理を示している。
監視部50は、ロボット110の動作開始前に、予め後述する監視処理を行うための各種パラメータを位置制御部10から送信される。
(Parameter transmission monitoring process in the monitoring unit)
FIG. 3 shows various parameters in the robot control performed by the
Before the operation of the
まず、第一のCPU51は、位置制御部10のCPUに対してパラメータの要求を行い、その結果、位置制御部10から各種のパラメータを受信する(ステップS101)。
First, the
このとき、位置制御部10のCPUは各パラメータについて所定のデータ単位でCRCコードを付与して送信する。これに対して、第一のCPUは受信したパラメータデータについて位置制御部10と同じ条件でCRCコードを生成すると共に、位置制御部10で生成されたCRCコードと一致するか判定を行う(ステップS102)。
このCRCコードは、生成する元となるデータが1ビットでも異なればコードも変化してしまう性質があるので、上記処理において送信前のパラメータのデータが何らかの異常により送信後に異なるデータに変化し或いは破損したかを判定することができる。
At this time, the CPU of the
This CRC code has the property that if the data to be generated is different even by 1 bit, the code will also change. Therefore, in the above processing, the parameter data before transmission changes to different data after transmission due to some abnormality or is damaged. Can be determined.
そして、CRCコードが一致しない場合には、第一のCPU51は報知部33に対してパラメータの受信エラーを示す異常報知表示を行うように制御する(ステップS103)。異常報知後は第一及び第二のCPU51、52は他の処理を行わず、電源を再投入しない限り復旧しない状態となる。
一方、CRCコードが一致した場合には、第一のCPU51は、内部メモリ57に受信した各種パラメータのデータを格納し(ステップS104)、さらに、第二のCPU52に対して受信した各種パラメータのデータとそのCRCコードを送信する(ステップS105)。
If the CRC codes do not match, the
On the other hand, if the CRC codes match, the
第一のCPU51からの各種パラメータのデータとCRCコードを受信すると、第二のCPU52は、受信したパラメータデータについて位置制御部10と同じ条件でCRCコードを生成すると共に、受信データのCRCコードと一致するか判定を行う(ステップS106)。
そして、CRCコードが一致しない場合には、第二のCPU52は報知部33に対してパラメータの受信エラーを示す異常報知表示を行うように制御する(ステップS107)。このときも、異常報知後は第一及び第二のCPU51、52は他の処理を行わず、電源を再投入しない限り復旧しない状態となる。
一方、CRCコードが一致した場合には、第二のCPU52は、内部メモリ58に受信した各種パラメータのデータを格納する(ステップS108)。
When receiving the data of various parameters and the CRC code from the
If the CRC codes do not match, the
On the other hand, if the CRC codes match, the
また、第一のCPU51は、パラメータデータを内部メモリ57に格納後、バスを介して第二のCPU52に送信したパラメータデータとの相互比較を行い(ステップS109)、第二のCPU52は、パラメータデータを内部メモリ58に格納後、バスを介して第一のCPU51が保有するパラメータデータとの相互比較を行う(ステップS110)。
The
そして、第一のCPU51は自己のパラメータデータと第二のCPU52のパラメータデータとの一致を判定し(ステップS111)、一致する場合にはパラメータ送信監視処理を終了し、一致しない場合には、第一のCPU51は報知部33に対してパラメータの受信エラーを示す異常報知表示を行うように制御する(ステップS113)。このときも、異常報知後は第一及び第二のCPU51、52は他の処理を行わず、電源を再投入しない限り復旧しない状態となる。
Then, the
また、同様にして、第二のCPU52は自己のパラメータデータと第一のCPU51のパラメータデータとの一致を判定し(ステップS112)、一致する場合にはパラメータ送信監視処理を終了し、一致しない場合には、第二のCPU52は報知部33に対してパラメータの受信エラーを示す異常報知表示を行うように制御する(ステップS114)。このときも、異常報知後は第一及び第二のCPU51、52は他の処理を行わず、電源を再投入しない限り復旧しない状態となる。
Similarly, the
(監視部におけるモータ制御監視処理)
図4は監視部50の各CPU51,52が行うロボット制御におけるサーボモータ制御の監視処理を示している。この処理はロボット110の動作制御時において、各CPU51,52のサンプリング周期に応じて定期的に実行される。
(Motor control monitoring process in the monitoring unit)
FIG. 4 shows a monitoring process of servo motor control in the robot control performed by the
まず、第一のCPU51は、送受信回路53を介してエンコーダ117に対して現在の検出角度位置を示す位置データの要求コマンドを送信する(ステップS201)。このとき、要求コマンドは、当該コマンドを一意に識別するためのシーケンス番号データを付加されてエンコーダ117に送信される。
First, the
エンコーダ117は、要求コマンドを受信すると、エンコーダ117の現在の位置データを第一のCPU51へ返信する。このとき、エンコーダ117は要求コマンドに付加されたシーケンス番号と同じシーケンス番号のデータを付加して返信を行う。また、エンコーダ117は、前述したパラメータデータの送信エラーの判定に用いられたCRCコードと同じように、位置データについて所定のデータ単位でCRCコードを生成し、位置データに付与して送信する。
Upon receiving the request command, the
そして、これにより、エンコーダ117から位置データを受信すると(ステップS202)、第一のCPU51は、受信した位置データに付加されたシーケンス番号が要求コマンドのシーケンス番号と一致するか判定を行う(ステップS203)。
かかるシーケンス番号判定により、エンコーダ117から返信された位置データが第一のCPU51からの要求コマンドに対して行われたものか識別することができる。例えば、返信されたシーケンス番号が以前の要求コマンドのシーケンス番号のものである場合には、前回の要求コマンドに対する返信が遅れたか、或いは、エンコーダ117が検出を停止してしまっている等の異常が発生していると判断することができる。
Then, when position data is received from the encoder 117 (step S202), the
With this sequence number determination, it is possible to identify whether the position data returned from the
従って、返信位置データに付加されたシーケンス番号が要求コマンドのシーケンス番号と一致しない状態が一定期間続いたときには、第一のCPU51は、マグネットスイッチ31に切替信号を出力し、サーボモータ116への通電を遮断させる(ステップS204)。
なお、マグネットスイッチ31は、複数あるサーボモータ116の全ての通電を遮断する。これにより、ロボット110は動作を停止する。
Therefore, when the sequence number added to the reply position data does not coincide with the sequence number of the request command for a certain period, the
The
一方、シーケンス番号が一致する場合は、第一のCPU51は受信した位置データについてエンコーダ117と同じ条件でCRCコードを生成すると共に、エンコーダ117で生成されたCRCコードと一致するか判定を行う(ステップS205)。
そして、CRCコードが一致しない場合には、送受信回路53に異常が発生しているか送受信回路53と第一のCPU51との間の回路に異常が生じているものとして、マグネットスイッチ31に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS206)。
On the other hand, if the sequence numbers match, the
If the CRC codes do not match, it is assumed that an abnormality has occurred in the transmission /
一方、CRCコードが一致した場合には、第一のCPU51は、第二のCPU52に対して受信した位置データとそのCRCコードを送信する(ステップS207)。
そして、第一のCPU51からの位置データとCRCコードを受信すると、第二のCPU52は、受信した位置データについてエンコーダ117と同じ条件でCRCコードを生成すると共に、当該生成したCRCコードと受信したCRCコードとが一致するか判定を行う(ステップS208)。
そして、CRCコードが一致しない場合には、第一のCPU51と第二のCPU52の通信手段であるバスか通信処理を行うソフトウェアに異常を生じているものとして第二のCPU52はマグネットスイッチ32に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS209)。
On the other hand, if the CRC codes match, the
When the position data and CRC code from the
If the CRC codes do not match, the
一方、第一のCPU51は、位置データを第二のCPU52に送信後、前述したステップS104の処理(図3)で位置制御部10から受信して内部メモリ57に格納したパラメータに含まれるエンコーダ117の出力コードと当該出力コードが示す検出角度位置との対応関係を示すテーブルを参照して、エンコーダ117の位置データを関節角度(角度位置)に変換すると共に内部メモリ57に記憶する(ステップS210)。
また、第二のCPU52も、位置データのCRCコードに異常がない場合に、前述したステップS108の処理(図3)で内部メモリ58に格納したパラメータ中のエンコーダ117の出力コードと関節角度との対応テーブルから、エンコーダ117の位置データを関節角度に変換すると共に内部メモリ58に記憶する(ステップS211)。
On the other hand, the
Further, when there is no abnormality in the CRC code of the position data, the
そして、第一のCPU51は、関節角度の算出後、バスを介して、第二のCPU52が算出した関節角度との相互比較を行い(ステップS212)、第一のCPU51で求めた関節角度と第二のCPU52で求めた関節角度との一致を判定する(ステップS214)。
そして、相互の関節角度が一致しない場合には、第一のCPU51は、マグネットスイッチ31に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS216)。
また、相互の関節角度が一致する場合には、第一のCPU51は、位置・速度監視処理、トルク監視処理、CPUの相互監視処理(いずれも詳細は後述する)を実行した後に、モータ制御監視処理を終了する。
Then, after calculating the joint angle, the
If the joint angles do not coincide with each other, the
If the joint angles coincide with each other, the
一方、第二のCPU52は、関節角度の算出後、バスを介して、第一のCPU51が算出した関節角度との相互比較を行い(ステップS213)、第二のCPU52で求めた関節角度と第一のCPU51で求めた関節角度との一致判定を行う(ステップS215)。
そして、相互の関節角度が一致しない場合には、第二のCPU52は、マグネットスイッチ32に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS217)。
また、相互の関節角度が一致する場合には、第二のCPU52は、位置・速度監視処理、トルク監視処理、CPUの相互監視処理(いずれも詳細は後述する)を実行した後に、モータ制御監視処理を終了する。
On the other hand, after calculating the joint angle, the
If the joint angles do not coincide with each other, the
When the mutual joint angles coincide with each other, the
(監視部における位置・速度監視処理)
図5は監視部50の各CPU51,52が行うサーボモータ制御の監視処理の中で行われる位置・速度監視処理を示している。
まず、第一のCPU51は自己の演算により求められた関節角度が、第二のCPU52で求めた関節角度と一致する場合(図4のステップS214参照)に、その演算関節角度の値を、内部メモリ57に格納していたパラメータに含まれる関節角度の動作上限値と比較する(ステップS301)。
同様に、第二のCPU52は、自己の演算により求められた関節角度が、第一のCPU51で求めた関節角度と一致する場合(図4のステップS215参照)に、演算関節角度の値を、内部メモリ58に格納していたパラメータに含まれる関節角度の動作上限値と比較する(ステップS302)。
(Position / speed monitoring process in the monitoring unit)
FIG. 5 shows the position / speed monitoring process performed in the servo motor control monitoring process performed by the
First, when the joint angle obtained by the
Similarly, the
そして、第一のCPU51は、関節角度の値が動作上限値を超えていた場合に、マグネットスイッチ31に切替信号を出力し、ロボット110を停止させる(ステップS303)。
同様に、第二のCPU52は、関節角度の値が動作上限値を超えていた場合に、マグネットスイッチ32に切替信号を出力し、ロボット110を停止させる(ステップS304)。
Then, when the value of the joint angle exceeds the operation upper limit value, the
Similarly, when the value of the joint angle exceeds the operation upper limit value, the
一方、第一のCPU51は、演算関節角度の値が動作上限値を超えていない場合には、その演算関節角度の値を、内部メモリ57に格納していたパラメータに含まれる関節角度の動作下限値と比較する(ステップS305)。
同様に、第二のCPU52は、演算関節角度の値が動作上限値を超えていない場合には、その演算関節角度の値を、内部メモリ58に格納していたパラメータに含まれる関節角度の動作下限値と比較する(ステップS306)。
On the other hand, when the value of the calculated joint angle does not exceed the operation upper limit value, the
Similarly, when the value of the calculated joint angle does not exceed the operation upper limit value, the
そして、第一のCPU51は、演算関節角度の値が動作下限値に満たない場合に、マグネットスイッチ31に切替信号を出力し、ロボット110を停止させる(ステップS307)。
同様に、第二のCPU52は、演算関節角度の値が動作下限値に満たない場合に、マグネットスイッチ32に切替信号を出力し、ロボット110を停止させる(ステップS308)。
Then, the
Similarly, when the value of the calculated joint angle is less than the operation lower limit value, the
また、第一のCPU51は、演算関節角度の値が動作下限値以上の場合には、前回の処理で内部メモリ57に記憶された関節角度との差分を求め、前回の処理からの経過時間と差分とから関節動作速度を算出する(ステップS309)。
同様に、第二のCPU52は、演算関節角度の値が動作下限値以上の場合には、前回の処理で内部メモリ58に記憶された関節角度との差分を求め、前回の処理からの経過時間と差分とから関節動作速度を算出する(ステップS310)。
Further, when the value of the calculated joint angle is equal to or greater than the operation lower limit value, the
Similarly, when the value of the calculated joint angle is equal to or greater than the operation lower limit value, the
そして、第一のCPU51は、関節動作速度の算出後、バスを介して、第二のCPU52で算出した関節動作速度との相互比較を行い(ステップS311)、第一のCPU51で求めた関節動作速度と第二のCPU52で求めた関節動作速度との一致判定を行う(ステップS313)。
同様に、第二のCPU52は、関節動作速度の算出後、バスを介して、第一のCPU51が算出した関節動作速度との相互比較を行い(ステップS312)、第二のCPU52で求めた関節動作速度と第一のCPU51で求めた関節動作速度との一致判定を行う(ステップS314)。
Then, after calculating the joint motion speed, the
Similarly, after calculating the joint operation speed, the
そして、相互の関節動作速度が一致しない場合には、第一のCPU51は、マグネットスイッチ31に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS315)。
同様に、相互の関節動作速度が一致しない場合には、第二のCPU52は、マグネットスイッチ32に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS316)。
If the joint operation speeds do not coincide with each other, the
Similarly, if the joint operation speeds do not match, the
一方、相互の関節動作速度が一致した場合には、第一のCPU51は関節動作速度の値を、内部メモリ57に格納していたパラメータに含まれる関節動作速度の上限値と比較する(ステップS317)。
同様に、相互の関節動作速度が一致した場合には、第二のCPU52は関節動作速度の値を、内部メモリ58に格納していたパラメータに含まれる関節動作速度の上限値と比較する(ステップS318)。
On the other hand, when the mutual joint motion speeds match, the
Similarly, when the joint motion speeds match each other, the
そして、第一のCPU51は、関節動作速度の値が上限値を超えていた場合に、マグネットスイッチ31に切替信号を出力し、ロボット110を停止させる(ステップS319)。また、関節動作速度の値が上限値を超えていない場合には、第一のCPU51は位置・速度監視処理を終了する。
同様に、第二のCPU52は、関節動作速度の値が上限値を超えていた場合に、マグネットスイッチ32に切替信号を出力し、ロボット110を停止させる(ステップS320)。また、関節動作速度の値が上限値を超えていない場合には、第二のCPU52は位置・速度監視処理を終了する。
Then, when the value of the joint operation speed exceeds the upper limit value, the
Similarly, when the value of the joint operation speed exceeds the upper limit value, the
(監視部におけるトルク監視処理)
図6は監視部50の各CPU51,52が行うサーボモータ制御の監視処理の中で行われるトルク監視処理を示している。
まず、第一のCPU51は、位置・速度監視処理の後に、トルク検出回路54を通じてサーボアンプ20で制御されているサーボモータ116のトルクを検出する(ステップS401)。
そして、検出されたサーボモータ116のトルクデータを第一のCPU51はバスを介して第二のCPU51に送信する(ステップS402,S403)。
(Torque monitoring process in the monitoring unit)
FIG. 6 shows a torque monitoring process performed in the servo motor control monitoring process performed by the
First, the
Then, the
そして、第一のCPU51は、トルクデータの送信後、バスを介して、第二のCPU52が受信したトルクデータとの相互比較を行い(ステップS404)、第一のCPU51の送信前のトルクデータと第二のCPU52に送信されたトルクデータとの一致判定を行う(ステップS406)。
同様に、第二のCPU52は、トルクデータの受信後、バスを介して、第一のCPU51の保有するトルクデータとの相互比較を行い(ステップS405)、第一のCPU51の送信前のトルクデータと第二のCPU52が受信したトルクデータとの一致判定を行う(ステップS407)。
Then, after transmitting the torque data, the
Similarly, after receiving the torque data, the
そして、相互のトルクデータの示す値が一致しない場合には、第一のCPU51は、マグネットスイッチ31に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS408)。
同様に、相互のトルクデータの示す値が一致しない場合には、第二のCPU52は、マグネットスイッチ32に切替信号を出力し、全てのサーボモータ116への通電を遮断して、ロボット110を停止させる(ステップS409)。
If the values indicated by the torque data do not match, the
Similarly, if the values indicated by the torque data do not match, the
一方、相互のトルクデータの示す値が一致した場合には、第一のCPU51はトルクデータの示す値を、内部メモリ57に格納していたパラメータに含まれるトルクの上限値と比較する(ステップS410)。
同様に、相互のトルクデータの示す値が一致した場合には、第二のCPU52はトルクデータの示す値を、内部メモリ58に格納していたパラメータに含まれるトルクの上限値と比較する(ステップS411)。
On the other hand, when the values indicated by the mutual torque data match, the
Similarly, when the values indicated by the mutual torque data match, the
そして、第一のCPU51は、トルクデータの示す値が上限値を超えていた場合に、マグネットスイッチ31に切替信号を出力し、ロボット110を停止させる(ステップS412)。また、トルクデータの示す値が上限値を超えていない場合には、第一のCPU51はトルク監視処理を終了する。
同様に、第二のCPU52は、トルクデータの示す値が上限値を超えていた場合に、マグネットスイッチ32に切替信号を出力し、ロボット110を停止させる(ステップS413)。また、トルクデータの示す値が上限値を超えていない場合には、第二のCPU52はトルク監視処理を終了する。
Then, when the value indicated by the torque data exceeds the upper limit value, the
Similarly, when the value indicated by the torque data exceeds the upper limit value, the
(監視部におけるCPUの相互監視処理)
サーボモータ制御の監視処理において、トルク監視処理が終了すると、最後にCPUの相互監視処理が実行される。
かかる処理では、第一のCPU51が、第二のCPU52の監視を行っているウォッチドッグ回路56にアクセスし、第二のCPU52の停止状態を示すエラー信号を出力しているかを判定する。その結果、ウォッチドッグ回路56がエラー信号を出力している場合に、第一のCPU51は、マグネットスイッチ31に切替信号を出力し、ロボット110を停止させる。また、ウォッチドッグ回路56がタイムアップ信号を出力していない場合には、第一のCPU51はCPUの相互監視処理を終了する。
一方、第二のCPU52が、第一のCPU51の監視を行っているウォッチドッグ回路55にアクセスし、第一のCPU51の停止状態を示すエラー信号を出力しているかを判定する。その結果、ウォッチドッグ回路55がエラー信号を出力している場合に、第二のCPU52は、マグネットスイッチ32に切替信号を出力し、ロボット110を停止させる。また、ウォッチドッグ回路55がタイムアップ信号を出力していない場合には、第二のCPU52はCPUの相互監視処理を終了する。
(Mutual monitoring processing of CPUs in the monitoring unit)
In the servo motor control monitoring process, when the torque monitoring process ends, the CPU mutual monitoring process is finally executed.
In this process, the
On the other hand, the
(ロボット制御装置の全体的な動作)
上記構成により、ロボット制御装置100の位置制御部10は、教示動作データに基づく動作を行うように制御指令を順番に出力し、サーボアンプ20を介してロボット110の各関節113のサーボモータ116の動作制御を行う。このとき、サーボアンプ20では、各関節113のエンコーダ117からの検出信号に基づいてフィードバック制御が実行される。
(Overall operation of robot controller)
With the above configuration, the
一方、監視部50は、ロボット110の動作開始前に、ロボット制御における各種のパラメータを位置制御部から取得し、ロボット110の動作制御の際には、所定のサンプリング間隔で、各エンコーダ117から関節角度(位置データ)の受信を行う。そして、データ受信の異常の発生、関節角度、動作速度、トルクの異常の発生、各CPU51,52の異常の発生の監視がロボット110の動作中においてサンプリング間隔で繰り返し実行される。
On the other hand, the
(実施形態の効果)
以上のように、ロボット制御装置100では、監視部50の二つのCPU51,52のそれぞれが、位置制御部から取得したロボット制御における各種のパラメータをCRCコードを用いてデータの破損確認を行うと共に、二つのCPU51,52が相互の各パラメータの一致確認を行うため、エンコーダから各CPU51,52まで伝達されるまでの過程での位置データの異常の発生が厳重に監視され、異常のあるパラメータに基づくロボット110の誤動作の発生を効果的に抑制することが可能となる。
(Effect of embodiment)
As described above, in the
また、監視部50の第一のCPU51が、各エンコーダ117からの位置データの受信に際し、シーケンス番号による要求コマンドとの一致の確認が行われるため、エンコーダ117の異常により誤った位置データに基づくロボット110の誤動作の発生を効果的に抑制することが可能となる。
さらに、エンコーダ117からの位置データに対してCRCコードを用いて、データの破損確認を二つのCPU51,52でそれぞれが行い、さらには、二つのCPU51,52が相互の位置データの一致確認を行うため、エンコーダから各CPU51,52まで伝達されるまでの過程での位置データの異常の発生が厳重に監視され、異常のある位置データに基づくロボット110の誤動作の発生をより効果的に抑制することが可能となる。
Further, when the
Furthermore, using the CRC code for the position data from the
また、エンコーダ117からの位置データに基づいて各CPU51,52が求め或いは取得した各関節の関節角度、動作速度、サーボモータ116のトルクについて、各CPU51,52の相互間で一致確認が行われ、さらには、関節角度、動作速度、トルクのそれぞれに設定された上限値を越えるか(或いは下限値を下回るか)否かの判定が二つのCPU51,52により行われるので、それぞれの監視が二系統で行われることとなり、いずれか一方のCPUが故障や不良を生じても、他方のCPUがサーボモータ116を停止させることができ、関節角度、動作速度、トルクのそれぞれが許容値を超える異常動作をより確実に防止することが可能となる。
Further, the
また、監視部50には、各CPU51,52を個別に監視するウォッチドッグ回路55,56が設けられているので、いずれか一方のCPUが不慮の停止状態に陥っても、他方のCPUが速やかにこれを検出し、ロボットの動作制御の監視が単一系統に陥る状態を回避し、常に二系統による監視状態でのみ各サーボモータ116を駆動させることができ、ロボットの異常動作をより確実に防止することが可能となる。
In addition, since the
(その他)
上記構成では、図1において、サーボモータ116及びエンコーダ117が一組しか図示されていないが、これらは各関節113ごとに設けられている。従って、監視部50は、図3から図6に示す全ての処理を、タイミングをずらして各サーボモータ116ごとに実行していることはいうまでもない。
(Other)
In the above configuration, only one set of the
また、上記構成では、監視部50の第二のCPU52が各エンコーダ117からの位置データを第一のCPU51を介して受信する構成となっているが、第二のCPU52が第一のCPU51を介することなくエンコーダ117から直接受信する構成としても良い。その場合、第二のCPU52もエンコーダ117からの位置データに対してシーケンス番号による確認処理を実行することが望ましい。
In the above configuration, the
また、制御対象となるロボットは回動、回転関節のみを有するものに限られず、例えば直動式の関節を有するロボットを制御対象としても良い。その場合、関節角度ではなく、位置データから直進方向の移動量を求め、これを監視する構成とすることが望ましい。 Further, the robot to be controlled is not limited to the one having only the rotating and rotating joints. For example, a robot having a direct acting joint may be used as the control target. In that case, it is desirable to obtain a movement amount in the straight direction from the position data, not the joint angle, and monitor this.
10 位置制御部(サーボ制御部)
20 サーボアンプ(サーボ制御部)
31,32 マグネットスイッチ(切り替え部)
50 監視部
51 第一のCPU(処理演算部)
52 第二のCPU(処理演算部)
100 ロボット制御装置
110 ロボット
116 サーボモータ
117 エンコーダ
10 Position controller (servo controller)
20 Servo amplifier (servo controller)
31, 32 Magnet switch (switching part)
50
52 Second CPU (Processing Operation Unit)
100
Claims (5)
前記サーボモータに対する電力の供給と遮断とを切り替え可能な切り替え部と、
所定の監視条件に応じて前記切り替え部を通じてサーボモータを停止させる監視部とを備え、
前記監視部は二つの処理演算部を有し、
当該各処理演算部は、それぞれ個別に、前記監視条件として、前記位置検出手段からの同一の検出出力を適正に受信したか否かを判定すると共に適正に受信していないと判定した場合に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うと共に、
前記監視部の二つの処理演算部は、個別に前記二つの処理演算部が取得した前記検出出力の値が一致するか否かを判定し、一致しないと判定した場合に、個別に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うことを特徴とするロボット制御装置。 A servo control unit for controlling a servo motor for driving the robot according to a detection output from a position detection means provided in the robot;
A switching unit capable of switching between supply and interruption of power to the servo motor;
A monitoring unit that stops the servo motor through the switching unit according to a predetermined monitoring condition,
The monitoring unit has two processing calculation units,
Each of the processing calculation units individually determines whether or not the same detection output from the position detection unit has been properly received as the monitoring condition and determines that it has not been properly received. While performing the process of cutting off the supply of power to the servo motor by the switching unit,
The two processing operation units of the monitoring unit individually determine whether or not the detection output values acquired by the two processing operation units match each other, and when determining that they do not match, individually the switching unit A robot control apparatus that performs a process of shutting off the supply of power to the servo motor.
前記サーボモータに対する電力の供給と遮断とを切り替え可能な切り替え部と、
所定の監視条件に応じて前記切り替え部を通じてサーボモータを停止させる監視部とを備え、
前記監視部は二つの処理演算部を有し、
当該各処理演算部は、それぞれ個別に、前記監視条件として、前記位置検出手段からの同一の検出出力に基づく動作位置が許容動作位置を越えるか否かを判定すると共に許容動作位置を越える場合に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うと共に、
前記監視部の二つの処理演算部は、個別に前記二つの処理演算部が取得した前記動作位置が一致するか否かを判定し、一致しないと判定した場合に、個別に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うことを特徴とするロボット制御装置。 A servo control unit for controlling a servo motor for driving the robot according to a detection output from a position detection means provided in the robot;
A switching unit capable of switching between supply and interruption of power to the servo motor;
A monitoring unit that stops the servo motor through the switching unit according to a predetermined monitoring condition,
The monitoring unit has two processing calculation units,
Each processing calculation unit individually determines whether the operation position based on the same detection output from the position detection unit exceeds the allowable operation position and exceeds the allowable operation position as the monitoring condition. While performing the process of cutting off the power supply to the servo motor by the switching unit,
The two processing calculation units of the monitoring unit individually determine whether or not the operation positions acquired by the two processing calculation units match each other, and when determining that they do not match, individually by the switching unit A robot control device that performs a process of cutting off power supply to a servo motor.
前記サーボモータに対する電力の供給と遮断とを切り替え可能な切り替え部と、
所定の監視条件に応じて前記切り替え部を通じてサーボモータを停止させる監視部とを備え、
前記監視部は二つの処理演算部を有し、
当該各処理演算部は、それぞれ個別に、前記監視条件として、前記サーボ制御部が制御するサーボアンプによる同一のトルク出力が許容値内を越えるか否かを判定すると共に許容値内を越える場合に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うと共に、
前記監視部の二つの処理演算部は、個別に前記二つの処理演算部が取得した前記トルク出力が一致するか否かを判定し、一致しないと判定した場合に、個別に前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うことを特徴とするロボット制御装置。 A servo control unit for controlling a servo motor for driving the robot according to a detection output from a position detection means provided in the robot;
A switching unit capable of switching between supply and interruption of power to the servo motor;
A monitoring unit that stops the servo motor through the switching unit according to a predetermined monitoring condition,
The monitoring unit has two processing calculation units,
Each processing calculation unit individually determines whether the same torque output by the servo amplifier controlled by the servo control unit exceeds the allowable value and exceeds the allowable value as the monitoring condition. While performing the process of cutting off the power supply to the servo motor by the switching unit,
The two processing calculation units of the monitoring unit individually determine whether or not the torque outputs acquired by the two processing calculation units match, and when determining that they do not match, individually by the switching unit A robot control device that performs a process of cutting off power supply to a servo motor.
前記各処理演算部が、他方の処理演算部の監視回路を通じて不良停止状態を検知すると、前記切り替え部により前記サーボモータに対する電力の供給を遮断する処理を行うことを特徴とする請求項1から4のいずれか一項に記載のロボット制御装置。 A watchdog circuit that detects the occurrence of a process failure stop state for each of the processing arithmetic units is provided for each of the processing arithmetic units,
5. The process according to claim 1, wherein when each of the processing arithmetic units detects a failure stop state through a monitoring circuit of the other processing arithmetic unit, the switching unit performs a process of cutting off power supply to the servo motor. The robot control device according to any one of the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005334152A JP4930969B2 (en) | 2005-11-18 | 2005-11-18 | Robot controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005334152A JP4930969B2 (en) | 2005-11-18 | 2005-11-18 | Robot controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007136617A JP2007136617A (en) | 2007-06-07 |
JP4930969B2 true JP4930969B2 (en) | 2012-05-16 |
Family
ID=38200081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005334152A Active JP4930969B2 (en) | 2005-11-18 | 2005-11-18 | Robot controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4930969B2 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5435621B2 (en) * | 2009-03-31 | 2014-03-05 | 独立行政法人産業技術総合研究所 | SAFETY CONTROL DEVICE, ROBOT, SYSTEM, PROGRAM, AND RECORDING MEDIUM |
EP2721375B1 (en) | 2011-06-20 | 2017-12-06 | Sew-Eurodrive GmbH & Co. KG | Method and device for the cyclic digital transmission of a position value of a moving object with inertial mass |
JP6140112B2 (en) * | 2014-07-17 | 2017-05-31 | ファナック株式会社 | Robot control system with stop function |
KR101551292B1 (en) | 2015-08-11 | 2015-09-10 | 대진 시스템(주) | Dual Control and Instrumentation Systems |
JP6641921B2 (en) * | 2015-11-24 | 2020-02-05 | 株式会社デンソーウェーブ | Robot controller |
JP6641922B2 (en) * | 2015-11-24 | 2020-02-05 | 株式会社デンソーウェーブ | Robot controller |
JP6613849B2 (en) * | 2015-11-26 | 2019-12-04 | 株式会社デンソーウェーブ | Robot controller |
JP6658056B2 (en) * | 2016-02-17 | 2020-03-04 | 富士電機株式会社 | Power converter |
JP6607098B2 (en) * | 2016-03-15 | 2019-11-20 | ブラザー工業株式会社 | Speed monitoring device and speed monitoring method |
JP7141232B2 (en) * | 2018-04-06 | 2022-09-22 | 川崎重工業株式会社 | robot controller |
JP7173765B2 (en) * | 2018-06-25 | 2022-11-16 | 川崎重工業株式会社 | robot control system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6025693A (en) * | 1983-07-25 | 1985-02-08 | 株式会社日立製作所 | Monitor device for robot |
JPH0540510A (en) * | 1991-08-07 | 1993-02-19 | Mitsubishi Electric Corp | Controller |
JP3114579B2 (en) * | 1995-08-30 | 2000-12-04 | 松下電器産業株式会社 | Industrial robot and its control device |
JP3950832B2 (en) * | 2002-10-08 | 2007-08-01 | ファナック株式会社 | Robot controller |
JP3944156B2 (en) * | 2003-12-03 | 2007-07-11 | ファナック株式会社 | Emergency stop circuit |
JP4292404B2 (en) * | 2004-01-07 | 2009-07-08 | 株式会社安川電機 | Drive shaft operation system |
-
2005
- 2005-11-18 JP JP2005334152A patent/JP4930969B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2007136617A (en) | 2007-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4930969B2 (en) | Robot controller | |
JP2007301680A (en) | Robot arm diagnosis device | |
JP2007301691A (en) | Robot control device | |
JP2007283448A (en) | Robot control device | |
US9266240B2 (en) | Robot | |
JP6607098B2 (en) | Speed monitoring device and speed monitoring method | |
US20190001504A1 (en) | Method For Detecting A Collision Of A Robot Arm With An Object, And A Robot With A Robot Arm | |
JP2010238174A (en) | Positioning device and positioning method | |
EP0428748A1 (en) | Method of preventing erroneous projection of laser beam in a laser robot | |
JP2006095672A (en) | Control method for moving body, control system, and control program | |
WO2019063228A1 (en) | Security tracking system, apparatus, method, storage medium and security system | |
JP2007265103A (en) | Robot controller | |
EP3647891B1 (en) | Feed shaft and worm gear abnormality determination system | |
CN112677178A (en) | Robot | |
JP2013144325A (en) | Robot apparatus, and failure detection method | |
CN110579192B (en) | Position measuring device and method for operating a position measuring device | |
US20220161433A1 (en) | Extendable safety system for robot system | |
JPH08286701A (en) | Multi-robot control method and system | |
CN114851186A (en) | Robot control device and robot system | |
JP2010249585A (en) | Device and method for identifying current position | |
US7873484B2 (en) | Method for reliable position monitoring | |
JP4577607B2 (en) | Robot control device and robot system | |
JP3010107B2 (en) | Encoder system | |
US20230415335A1 (en) | Robot system, method for controlling robot system, method for manufacturing product using robot system, control program, and recording medium | |
JP2020098487A (en) | Machine control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100824 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100826 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110412 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110613 |
|
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: 20120110 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120208 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4930969 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150224 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |