JP7510338B2 - Speed command value calculation device - Google Patents

Speed command value calculation device Download PDF

Info

Publication number
JP7510338B2
JP7510338B2 JP2020194954A JP2020194954A JP7510338B2 JP 7510338 B2 JP7510338 B2 JP 7510338B2 JP 2020194954 A JP2020194954 A JP 2020194954A JP 2020194954 A JP2020194954 A JP 2020194954A JP 7510338 B2 JP7510338 B2 JP 7510338B2
Authority
JP
Japan
Prior art keywords
command value
unit
averaging parameter
speed
value calculation
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
Application number
JP2020194954A
Other languages
Japanese (ja)
Other versions
JP2022083563A (en
Inventor
啓祐 名桐
寿彦 大野
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to JP2020194954A priority Critical patent/JP7510338B2/en
Publication of JP2022083563A publication Critical patent/JP2022083563A/en
Application granted granted Critical
Publication of JP7510338B2 publication Critical patent/JP7510338B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)
  • Control Of Velocity Or Acceleration (AREA)

Description

本明細書は、移動平均処理を用いて速度の指令値を演算する速度指令値演算装置に関する。 This specification relates to a speed command value calculation device that calculates a speed command value using moving average processing.

工場や事業所などの自動化、省力化を推進するために、作業ロボットが広く用いられている。多くの作業ロボットは、可動アームと、可動アームの先端に設けられて指示された作業を行うエンドエフェクタと、可動アームを駆動する駆動機構と、を備える。可動アームに要求される移動動作を実現するために、駆動機構に指令する指令値を演算する速度指令値演算装置が用いられる。速度指令値演算装置の一種に、移動平均処理を用いる方式の装置がある。この種の速度指令値演算装置に関する技術例が、特許文献1、2に開示されている。 Working robots are widely used to promote automation and labor saving in factories and business establishments. Many working robots are equipped with a movable arm, an end effector attached to the tip of the movable arm to perform a specified task, and a drive mechanism to drive the movable arm. To achieve the movement required of the movable arm, a speed command value calculation device is used to calculate a command value to be issued to the drive mechanism. One type of speed command value calculation device is one that uses moving average processing. Examples of technology related to this type of speed command value calculation device are disclosed in Patent Documents 1 and 2.

特許文献1の指令生成装置は、所定の平均時間における速度指令の移動平均を計算し移動平均速度指令として出力する移動平均フィルタと、平均時間を変更する手段と、平均時間の変更に伴って発生する移動距離の差分を移動距離補正量として演算する手段と、移動距離補正量に応じた速度補正値を演算する手段とを備え、移動平均速度指令に速度補正値を加算して、電動機の位置決め制御における動作指令を求める。これによれば、複数の移動平均フィルタを設けることなく、電動機の動作中に平均時間を変更することができ、かつ、正しい位置決めが行える、とされている。 The command generation device in Patent Document 1 includes a moving average filter that calculates the moving average of the speed command in a predetermined average time and outputs it as a moving average speed command, a means for changing the average time, a means for calculating the difference in moving distance that occurs with the change in the average time as a moving distance correction amount, and a means for calculating a speed correction value according to the moving distance correction amount, and calculates an operation command in the positioning control of the electric motor by adding the speed correction value to the moving average speed command. According to this, it is said that it is possible to change the average time while the electric motor is operating and to perform correct positioning without providing multiple moving average filters.

また、特許文献2の位置指令装置は、上位システムのコマンドから第1指令位置を生成する直線加減速指令生成部と、第1指令位置を設定可能な回数の移動平均をして第2指令位置を生成するS字加減速指令生成部と、第2指令位置を位置制御装置に送信する送信部と、上位システムの移動平均回数変更のコマンドにしたがって変更可能なときに回数変更指令を生成する回数変更判断部と、を備える。これによれば、移動平均時間の変更が可能な位置指令装置を提供できる、とされている。 The position command device of Patent Document 2 includes a linear acceleration/deceleration command generation unit that generates a first command position from a command of a higher-level system, an S-curve acceleration/deceleration command generation unit that generates a second command position by taking a moving average of a settable number of times of the first command position, a transmission unit that transmits the second command position to the position control device, and a number change determination unit that generates a number change command when the number can be changed according to a command to change the moving average number of times from the higher-level system. It is said that this makes it possible to provide a position command device that is capable of changing the moving average time.

国際公開第2011/101915号International Publication No. 2011/101915 特開2008-171230号公報JP 2008-171230 A

ところで、特許文献1、2の技術では、移動平均の平均化母数(平均時間、移動平均回数)を可変とすることにより、機械振動の低減と動作時間の短縮の両立を図っている。つまり、円滑な移動動作が必要な時期には平均化母数を大きく変更して速度変化を制限し、動作時間の短縮が必要な時期には平均化母数を小さく変更して大きな速度変化を許容している。しかしながら、これらの技術は、通常時における可動部の移動動作を良好化するものであって、異常状態に対応するものではない。 The technologies in Patent Documents 1 and 2 aim to reduce mechanical vibrations and shorten operating times at the same time by varying the averaging parameters (average time, average number of moving averages) of the moving average. In other words, when smooth movement is required, the averaging parameters are changed significantly to limit speed changes, and when shortening the operating time is required, the averaging parameters are changed smaller to allow larger speed changes. However, these technologies are intended to improve the movement of the moving part under normal conditions, and are not intended to address abnormal conditions.

詳述すると、指令値(動作指令、第2指令位置)にしたがい可動部が移動動作を行うことによって、障害の発生が予想される場合がある。このような緊急停止が必要な異常状態に対して、特許文献1、2の技術は対応することができない。つまり、特許文献1、2の技術では、異常状態に陥っていても、可動部は通常時と同じ減速度で停止する。その結果、可動部が停止する以前に障害物に衝突してしまう等の問題が発生する。 In more detail, when the moving part moves in accordance with the command values (operation command, second command position), it is possible that an obstacle may occur. The techniques of Patent Documents 1 and 2 cannot deal with such abnormal conditions that require an emergency stop. In other words, with the techniques of Patent Documents 1 and 2, even if an abnormal condition occurs, the moving part stops at the same deceleration as in normal times. As a result, problems occur, such as the moving part colliding with an obstacle before stopping.

一方、異常状態に対応するために、可動部の移動目標位置を現在位置に設定したり、可動部の動作速度を直ちにゼロに設定したりする即時停止手段が考えられる。しかしながら、この手段では、駆動機構に過大な負担を掛けることになって故障の要因となるおそれが生じる。加えて、可動部の減速度が極端に大きくなるため、弊害のおそれが生じる。 On the other hand, in order to deal with abnormal conditions, it is possible to use an immediate stopping means that sets the target movement position of the moving part to the current position or immediately sets the operating speed of the moving part to zero. However, this means places an excessive burden on the drive mechanism, which may cause a breakdown. In addition, the deceleration of the moving part becomes extremely large, which may cause adverse effects.

それゆえ、本明細書では、可動部が移動動作を行うことによって障害の発生が予想される異常状態に対応することにより、障害の実際の発生を抑制することができる速度指令値演算装置を提供することを解決すべき課題とする。 Therefore, the problem to be solved in this specification is to provide a speed command value calculation device that can suppress the actual occurrence of a fault by responding to an abnormal state in which a fault is expected to occur due to the moving operation of a movable part.

本明細書は、可動部に要求される移動動作に基づいて、所定の演算周期ごとの原速度値を演算する原速度値演算部と、通常時平均化母数を用いて前記演算周期ごとに前記原速度値に移動平均処理を施すことにより、前記可動部を駆動する駆動機構に指令する前記演算周期ごとの速度の指令値を演算する指令値演算部と、前記可動部が前記移動動作を行うことによって障害の発生が予想される異常状態を判定する異常判定部と、前記異常状態が判定されたときに、前記原速度値をゼロとするように前記原速度値演算部を制御するとともに、前記通常時平均化母数よりも小さな異常時平均化母数を用いて前記指令値を演算するように前記指令値演算部を制御する異常対応部と、を備える速度指令値演算装置を開示する。 This specification discloses a speed command value calculation device that includes an original speed value calculation unit that calculates an original speed value for each predetermined calculation cycle based on the movement operation required of the movable part, a command value calculation unit that calculates a speed command value for each calculation cycle to be commanded to a drive mechanism that drives the movable part by performing moving average processing on the original speed value for each calculation cycle using a normal averaging parameter, an abnormality determination unit that determines an abnormal state in which a fault is expected to occur due to the movable part performing the movement operation, and an abnormality response unit that controls the original speed value calculation unit to set the original speed value to zero when the abnormality response unit determines that an abnormality response unit is detected, and controls the command value calculation unit to calculate the command value using an abnormal averaging parameter smaller than the normal averaging parameter.

また、本明細書は、可動部に要求される移動動作に基づいて、所定の演算周期ごとの原速度値を演算する原速度値演算部と、通常時平均化母数を用いて前記演算周期ごとに前記原速度値に移動平均処理を施すことにより、前記可動部を駆動する駆動機構に指令する前記演算周期ごとの速度の指令値を演算する指令値演算部と、前記可動部が前記移動動作を行うことによって障害物に衝突し、または移動可能範囲の境界を越えることが予想される異常状態を判定する異常判定部と、前記異常状態が判定されたときに、前記原速度値をゼロとするように前記原速度値演算部を制御するとともに、前記可動部の現在位置と前記障害物または前記境界との離間距離に基づいて、前記通常時平均化母数よりも小さな異常時平均化母数を求め、前記異常時平均化母数を用いて前記指令値を演算するように前記指令値演算部を制御する異常対応部と、を備える速度指令値演算装置を開示する。 This specification also discloses a speed command value calculation device that includes an original speed value calculation unit that calculates an original speed value for each predetermined calculation cycle based on the movement operation required of the movable part, a command value calculation unit that calculates a speed command value for each calculation cycle to be commanded to a drive mechanism that drives the movable part by performing a moving average process on the original speed value for each calculation cycle using a normal averaging parameter, an abnormality determination unit that determines an abnormal state in which the movable part is expected to collide with an obstacle or cross a boundary of a movable range as a result of the movement operation, and an abnormality response unit that controls the original speed value calculation unit to set the original speed value to zero when the abnormality is determined, and determines an abnormality averaging parameter smaller than the normal averaging parameter based on the distance between the current position of the movable part and the obstacle or the boundary, and controls the command value calculation unit to calculate the command value using the abnormality averaging parameter.

本明細書で開示する速度指令値演算装置において、異常対応部は、異常状態が判定されたときに、原速度値をゼロに制御するとともに、通常時平均化母数よりも小さな異常時平均化母数を用いて指令値を演算させる。これによれば、現在以降の原速度値がゼロとなるため、可動部は、直ちに減速を開始する。かつ、現在以降は小さな異常時平均化母数が用いられるため、可動部は、通常時よりも大きな減速度で停止に至る。この結果、可動部は、異常状態発生時の緊急停止動作において通常時よりも小さな制動距離で停止することができ、障害の実際の発生が抑制される。 In the speed command value calculation device disclosed in this specification, when an abnormal state is determined, the abnormality response unit controls the original speed value to zero and calculates a command value using an abnormal averaging parameter smaller than the normal averaging parameter. As a result, the original speed value from the present onwards is zero, so the moving part immediately starts decelerating. Furthermore, because a small abnormal averaging parameter is used from the present onwards, the moving part comes to a stop at a greater deceleration than normal. As a result, the moving part can be stopped with a smaller braking distance than normal in an emergency stop operation when an abnormal state occurs, and the actual occurrence of an obstacle is suppressed.

第1実施形態の速度指令値演算装置を適用する作業ロボットの構成を模式的に示した斜視図である。1 is a perspective view showing a schematic configuration of a work robot to which a speed command value calculation device according to a first embodiment is applied; 速度指令値演算装置の機能構成を示すブロック図である。FIG. 2 is a block diagram showing a functional configuration of a speed command value calculation device. 指令値演算部が有するバッファを模式的に説明する図である。FIG. 4 is a diagram for explaining a buffer included in the command value calculation unit; 速度指令値演算装置の全般的な動作を説明する動作フローの図である。FIG. 4 is an operational flow diagram illustrating the overall operation of the speed command value calculation device. 速度指令値演算装置の異常時対応の動作を説明する動作フローの図である。FIG. 11 is an operational flow diagram illustrating an abnormality response operation of the speed command value calculation device. 速度指令値演算装置が演算した通常時の原速度値および指令値を図式的に表した図である。4 is a diagram showing an original speed value and a command value in a normal state calculated by a speed command value calculation device; FIG. 指令値演算部で移動平均処理により指令値を演算する方法を表した表形式の図である。11 is a table showing a method for calculating a command value by a moving average process in a command value calculation unit. FIG. 速度指令値演算装置が演算した異常状態における原速度値および指令値を図式的に表した図である。11 is a diagram showing an original speed value and a command value in an abnormal state calculated by a speed command value calculation device; FIG. 指令値演算部で移動平均処理により異常状態における指令値を演算する方法を表した表形式の図である。FIG. 13 is a table showing a method for calculating a command value in an abnormal state by a command value calculation unit using moving average processing. 従来技術の速度指令値演算装置が演算した異常状態における原速度値および指令値を図式的に表した図である。1 is a diagram showing an original speed value and a command value in an abnormal state calculated by a speed command value calculation device of the prior art; 従来技術の指令値演算部で移動平均処理により異常状態における指令値を演算する方法を表した表形式の図である。FIG. 13 is a tabular diagram showing a method for calculating a command value in an abnormal state by moving average processing in a command value calculation unit of the prior art. 第2実施形態の速度指令値演算装置の機能構成を示すブロック図である。FIG. 11 is a block diagram showing a functional configuration of a speed command value calculation device according to a second embodiment. 第2実施形態で、異常状態における原速度値および指令値を図式的に表した図である。FIG. 11 is a diagram illustrating an original speed value and a command value in an abnormal state in the second embodiment. 第2実施形態で、異常状態における指令値を演算する方法を表した表形式の図である。FIG. 11 is a table showing a method for calculating a command value in an abnormal state in the second embodiment.

1.作業ロボット9の構成例
まず、第1実施形態の速度指令値演算装置1を適用する作業ロボット9の構成例について、図1および図2を参考にして説明する。作業ロボット9は、基部91、可動アーム92(可動部)、エンドエフェクタ93、駆動機構94、および図略の作業指令部などで構成される。可動アーム92は、基部91に対して移動可能に設けられる。可動アーム92は、複数の部材で構成され、複数の関節および複数の可動軸を有する。エンドエフェクタ93は、可動アーム92の先端に設けられており、指示された作業を実施する。
1. Example of the configuration of the working robot 9 First, an example of the configuration of the working robot 9 to which the speed command value calculation device 1 of the first embodiment is applied will be described with reference to Figures 1 and 2. The working robot 9 is composed of a base 91, a movable arm 92 (movable part), an end effector 93, a drive mechanism 94, and a work command unit (not shown). The movable arm 92 is provided so as to be movable relative to the base 91. The movable arm 92 is composed of multiple members, and has multiple joints and multiple movable axes. The end effector 93 is provided at the tip of the movable arm 92, and carries out a commanded task.

駆動機構94は、可動アーム92の移動動作を駆動する。駆動機構94は、可動軸の軸数に対応して複数組設けられる。以降の説明を簡明化するために、一つの可動軸に対応する一組の駆動機構94について詳述する。駆動機構94は、図2に示されるように、駆動制御部95、駆動装置96、および制動装置97で構成される。 The drive mechanism 94 drives the movement of the movable arm 92. Multiple sets of drive mechanisms 94 are provided corresponding to the number of movable axes. To simplify the following explanation, one set of drive mechanisms 94 corresponding to one movable axis will be described in detail. As shown in FIG. 2, the drive mechanism 94 is composed of a drive control unit 95, a drive device 96, and a brake device 97.

駆動装置96は、可動アーム92に移動動作を行わせる。駆動装置96は、例えば、サーボモータやパルスモータなどと呼ばれる制御性の良好なモータを用いて構成される。これに限定されず、駆動装置96は、油圧機構や空気圧機構などを用いて可動アーム92を駆動する装置であってもよい。 The drive device 96 causes the movable arm 92 to move. The drive device 96 is configured using a motor with good controllability, such as a servo motor or a pulse motor. Without being limited to this, the drive device 96 may be a device that drives the movable arm 92 using a hydraulic mechanism, a pneumatic mechanism, or the like.

制動装置97は、可動アーム92の移動動作を制動する。制動装置97は、例えば、電磁力によって制動力を発生する電磁ブレーキを用いて構成される。これに限定されず、制動装置97は、摩擦プレートの摩擦力によって制動力を発生する摩擦ブレーキなどを用いて構成されてもよい。 The braking device 97 brakes the movement of the movable arm 92. The braking device 97 is configured, for example, using an electromagnetic brake that generates a braking force by electromagnetic force. Without being limited thereto, the braking device 97 may be configured, for example, using a friction brake that generates a braking force by the friction force of a friction plate.

駆動制御部95は、速度の指令値CVを受け取り、この指令値CVを駆動装置96および制動装置97に適合する物理量に変換して、駆動装置96および制動装置97に指令する。適合する物理量は、モータや電磁ブレーキに流す電流の電流値、油圧機構や空気圧機構の圧力値、摩擦ブレーキにおける摩擦プレートの動作量などが相当する。 The drive control unit 95 receives the speed command value CV, converts this command value CV into a physical quantity suitable for the drive device 96 and the brake device 97, and issues a command to the drive device 96 and the brake device 97. Suitable physical quantities correspond to the current value of the current flowing through the motor or electromagnetic brake, the pressure value of the hydraulic or pneumatic mechanism, the amount of movement of the friction plate in the friction brake, etc.

作業指令部は、オペレータからの作業指示や予め設定された作業メニューに基づいて、指示された作業の実施を制御する。作業指令部は、作業の実施に際し、可動アーム92に要求される移動動作、およびエンドエフェクタ93に要求される作業動作を管理する。可動アーム92に要求される移動動作は、可動アーム92の現在位置からの移動方向および移動距離、あるいは移動する最終的な目標位置などで表される。 The work command unit controls the execution of instructed work based on work instructions from the operator and a preset work menu. The work command unit manages the movement motion required of the movable arm 92 and the work motion required of the end effector 93 when performing work. The movement motion required of the movable arm 92 is expressed by the movement direction and movement distance from the current position of the movable arm 92, or the final target position to which the movable arm 92 is to be moved, etc.

ここで、可動アーム92が移動するときの速度、加速度、および減速度は、二つの制約条件をもち、小さい側の制約条件によって規制される。第一制約条件は、駆動機構94の性能上の限界である。すなわち、駆動装置96からの駆動では、可動アーム92の移動動作において発生可能な最大速度および最大加速度の制約がある。また、制動装置97からの制動では、可動アーム92の移動動作において発生可能な最大減速度の制約がある。 The speed, acceleration, and deceleration of the movable arm 92 when it moves have two constraints, and are regulated by the smaller of the two constraints. The first constraint is the performance limit of the drive mechanism 94. That is, the drive from the drive device 96 is constrained by the maximum speed and maximum acceleration that can occur during the movement of the movable arm 92. In addition, the braking from the braking device 97 is constrained by the maximum deceleration that can occur during the movement of the movable arm 92.

第二制約条件は、可動アーム92の移動動作に応じて定められた許容速度、許容加速度、および許容減速度の制約である。第二制約条件は、可動アーム92が移動動作を行ったときに弊害が発生しないように設定される。例えば、エンドエフェクタ93が部品を把持しているときに、可動アーム92が過大な加速や減速を行うと、エンドエフェクタ93から部品が落下するという弊害が発生し得る。また、エンドエフェクタ93が移動しながら塗装などの作業を行う場合に、可動アーム92が過大な速度で移動すると、作業品質が低下するという弊害が発生し得る。このような弊害を考慮して、許容速度、許容加速度、および許容減速度が適正に設定される。 The second constraint condition is a constraint on the permissible speed, permissible acceleration, and permissible deceleration determined according to the movement operation of the movable arm 92. The second constraint condition is set so that no adverse effects occur when the movable arm 92 performs a movement operation. For example, if the movable arm 92 accelerates or decelerates excessively while the end effector 93 is gripping a part, the adverse effect of the part falling from the end effector 93 may occur. In addition, when the end effector 93 is moving while performing work such as painting, if the movable arm 92 moves at an excessive speed, the adverse effect of a decrease in work quality may occur. Taking such adverse effects into consideration, the permissible speed, permissible acceleration, and permissible deceleration are set appropriately.

2.第1実施形態の速度指令値演算装置1の構成
次に、第1実施形態の速度指令値演算装置1の構成について、図2、図3、および図6を参考にして説明する。速度指令値演算装置1は、作業ロボット9の作業指令部からの要求指令に基づいて、速度の指令値CVを演算し、駆動制御部95に出力する。第1実施形態において、作業指令部からの要求指令は、可動アーム92の移動動作に要求される移動距離Lで表される。速度指令値演算装置1は、入力部および出力部をもつコンピュータ装置を用いて構成される。図2に示されるように、速度指令値演算装置1は、四つの制御機能部、すなわち原速度値演算部2、指令値演算部3、異常判定部4、および異常対応部5で構成される。
2. Configuration of the Speed Command Value Calculation Device 1 of the First Embodiment Next, the configuration of the speed command value calculation device 1 of the first embodiment will be described with reference to Figs. 2, 3, and 6. The speed command value calculation device 1 calculates a speed command value CV based on a request command from a work command unit of the work robot 9, and outputs it to the drive control unit 95. In the first embodiment, the request command from the work command unit is represented by a movement distance L required for the movement operation of the movable arm 92. The speed command value calculation device 1 is configured using a computer device having an input unit and an output unit. As shown in Fig. 2, the speed command value calculation device 1 is configured with four control function units, namely, an original speed value calculation unit 2, a command value calculation unit 3, an abnormality determination unit 4, and an abnormality response unit 5.

原速度値演算部2は、可動アーム92に要求される移動距離Lに基づいて、所定の演算周期TSごとの原速度値V0を演算する。原速度値演算部2は、可動アーム92が移動動作を行うときの仮想的な一定の原速度値V0を演算する。つまり、可動アーム92は、必ずしも一定の原速度値V0で動くわけでは無い。一定の原速度値V0は、ある期間だけ0でない原速度値V0が継続する矩形波と言い換えることができる。さらに、原速度値演算部2は、駆動装置96により発生可能(第一制約条件を満たす)であり、かつ、第二制約条件の許容速度を越えない速度の最大値Vmaxを一定の原速度値V0とする。 The original speed value calculation unit 2 calculates the original speed value V0 for each predetermined calculation period TS based on the moving distance L required of the movable arm 92. The original speed value calculation unit 2 calculates a virtual constant original speed value V0 when the movable arm 92 moves. In other words, the movable arm 92 does not necessarily move at a constant original speed value V0. The constant original speed value V0 can be rephrased as a square wave in which a non-zero original speed value V0 continues for a certain period of time. Furthermore, the original speed value calculation unit 2 sets the maximum speed Vmax that can be generated by the drive device 96 (satisfies the first constraint) and does not exceed the allowable speed of the second constraint as the constant original speed value V0.

以降では、移動距離Lが200[mm]、演算周期TSの周期時間tsが1[ms]、最大値Vmaxが10[mm/ms]である場合を想定して説明を進める。実際の作業ロボット9では、上記の想定と相違する動作条件等が用いられる。上記の想定による場合、可動アーム92が1演算周期TSごとに移動し得る最大の移動距離L0は、次式で求められ、10[mm]となる。
移動距離L0=Vmax・ts=10×1[mm]
In the following description, it is assumed that the moving distance L is 200 mm, the cycle time ts of the calculation cycle TS is 1 ms, and the maximum value Vmax is 10 mm/ms. In an actual work robot 9, operating conditions and the like different from those assumed above are used. In the above assumption, the maximum moving distance L0 that the movable arm 92 can move per calculation cycle TS is calculated as 10 mm using the following formula.
Movement distance L0 = Vmax · ts = 10 × 1 [mm]

また、可動アーム92が移動距離Lの移動動作に要する最小の周期数nは、次式で求められ、20[周期]となる。
周期数n=L/L0=200÷10[周期]
The minimum number of periods n required for the movable arm 92 to move the movement distance L is calculated by the following formula, and is 20 [periods].
Number of periods n = L/L0 = 200÷10 [periods]

原速度値演算部2は、上記の演算結果に基づいて、20周期の演算周期TSにわたり原速度値V0=10[mm/ms]を指令値演算部3に出力する。また、原速度値演算部2は、当該の20周期を除いた前後の演算周期TSでは、原速度値V0=0を指令値演算部3に出力する。原速度値演算部2が出力する原速度値V0は、異常対応部5によって変更可能とされている。 Based on the above calculation results, the original speed value calculation unit 2 outputs the original speed value V0 = 10 [mm/ms] to the command value calculation unit 3 over a calculation period TS of 20 periods. In addition, the original speed value calculation unit 2 outputs the original speed value V0 = 0 to the command value calculation unit 3 during the calculation periods TS before and after the 20 periods excluding the original speed value V0. The original speed value V0 output by the original speed value calculation unit 2 can be changed by the abnormality response unit 5.

指令値演算部3は、通常時平均化母数NNを用いて演算周期TSごとに原速度値V0に移動平均処理を施すことにより、駆動制御部95に指令する演算周期TSごとの速度の指令値CVを演算する。ここで、通常時平均化母数NNは、可動アーム92の加速度が第一制約条件の最大加速度以下となり、かつ、第二制約条件の許容加速度を越えないように設定される。 The command value calculation unit 3 calculates the speed command value CV for each calculation cycle TS to be instructed to the drive control unit 95 by performing moving average processing on the original speed value V0 for each calculation cycle TS using the normal averaging parameter NN. Here, the normal averaging parameter NN is set so that the acceleration of the movable arm 92 is equal to or less than the maximum acceleration of the first constraint condition, and does not exceed the allowable acceleration of the second constraint condition.

例えば、条件を満たす最大の加速度が1(以降では単位を省略する)である場合、停止していた可動アーム92は、演算周期TSごとに1ずつ加速することができ、10周期後に最大値Vmaxに到達する。したがって、通常時平均化母数NNは、10周期に相当する10個に設定される。仮に、通常時平均化母数NNが10個未満であると、加速度が1を超過するため、第一および第二制約条件の少なくとも一方が満たされなくなる。また、通常時平均化母数NNが10個を超えていると、加速度が1未満となる。これにより、可動アーム92の加速性能が低下して、移動動作が冗長に長時間化する。 For example, if the maximum acceleration that satisfies the condition is 1 (units will be omitted hereafter), the stationary movable arm 92 can accelerate by 1 for each calculation cycle TS, and will reach the maximum value Vmax after 10 cycles. Therefore, the normal averaging parameter NN is set to 10, which corresponds to 10 cycles. If the normal averaging parameter NN is less than 10, the acceleration will exceed 1, and at least one of the first and second constraint conditions will not be satisfied. Furthermore, if the normal averaging parameter NN exceeds 10, the acceleration will be less than 1. This reduces the acceleration performance of the movable arm 92, making the movement operation redundantly long.

指令値演算部3は、例えばDSP(Digital Signal Processor)と呼ばれる専用の演算素子を用いて構成される。これにより、指令値演算部3は、高速の演算処理が可能となっている。指令値演算部3は、バッファ6、原速度値移動部31、および平均演算部32で構成される。 The command value calculation unit 3 is configured using a dedicated calculation element, for example, called a DSP (Digital Signal Processor). This allows the command value calculation unit 3 to perform high-speed calculation processing. The command value calculation unit 3 is configured from a buffer 6, an original speed value transfer unit 31, and an average calculation unit 32.

バッファ6は、図3に示されるように、通常時平均化母数NNに等しい10個の第1サンプルエリアA1~第10サンプルエリアA10をもつ。バッファ6は、時系列的に並んだ10個の原速度値V0を第1サンプルエリアA1~第10サンプルエリアA10に記憶する。第1サンプルエリアA1は、最も新しい原速度値V0を記憶し、第10サンプルエリアA10は、最も旧い原速度値V0を記憶する。バッファ6に記憶された原速度値V0の各々は、異常対応部5によって変更可能とされている。 As shown in FIG. 3, the buffer 6 has ten first sample areas A1 to A10, which are equal to the normal averaging parameter NN. The buffer 6 stores ten original speed values V0 arranged in chronological order in the first sample area A1 to A10. The first sample area A1 stores the most recent original speed value V0, and the tenth sample area A10 stores the oldest original speed value V0. Each of the original speed values V0 stored in the buffer 6 can be changed by the abnormality response unit 5.

原速度値移動部31は、バッファ6内の原速度値V0を移動させる移動処理を行う。詳述すると、原速度値移動部31は、演算周期TSの更新に伴い、第1サンプルエリアA1~第9サンプルエリアA9の各々に記憶された原速度値V0を旧い側の第2サンプルエリアA2~第10サンプルエリアA10へ順送りに移動させる(図3の矢印参照)。このとき、第10サンプルエリアA10に記憶されていた原速度値V0は不要となる。さらに、原速度値移動部31は、もっとも新しい側の第1サンプルエリアA1に現在の原速度値V0を記憶させる。 The original speed value moving unit 31 performs a moving process to move the original speed value V0 in the buffer 6. More specifically, the original speed value moving unit 31 moves the original speed values V0 stored in each of the first sample area A1 to the ninth sample area A9 in sequence to the older second sample area A2 to the tenth sample area A10 in response to an update of the calculation cycle TS (see the arrows in Figure 3). At this time, the original speed value V0 stored in the tenth sample area A10 becomes unnecessary. Furthermore, the original speed value moving unit 31 stores the current original speed value V0 in the newest first sample area A1.

平均演算部32は、演算周期TSの各々において、第1サンプルエリアA1~第10サンプルエリアA10に記憶されている記憶内容(10個の原速度値V0)を加算して、通常時平均化母数NN(=10)で除算することにより指令値CVを演算する。平均演算部32は、さらに、演算した指令値CVを駆動制御部95に出力する。平均演算部32が10個の記憶内容を加算する機能は、変更することができない。一方、通常時平均化母数NNは、異常対応部5によって変更可能とされている。 The average calculation unit 32 calculates the command value CV by adding up the memory contents (10 original speed values V0) stored in the first sample area A1 to the tenth sample area A10 during each calculation period TS and dividing the sum by the normal averaging parameter NN (=10). The average calculation unit 32 further outputs the calculated command value CV to the drive control unit 95. The function of the average calculation unit 32 to add up the 10 memory contents cannot be changed. On the other hand, the normal averaging parameter NN can be changed by the abnormality response unit 5.

異常判定部4は、可動アーム92が移動動作を行うことによって障害の発生が予想される異常状態を判定する。障害として、可動アーム92が障害物に衝突したり、可動アーム92が設定された移動可能範囲の境界を越えたり、エンドエフェクタ93が作業動作を行えない作業不能領域に移動したりする場合があり、これらに限定されない。 The abnormality determination unit 4 determines an abnormal state in which an obstacle is expected to occur due to the movement of the movable arm 92. The obstacle may be, but is not limited to, the movable arm 92 colliding with an obstacle, the movable arm 92 crossing the boundary of the set movable range, or the end effector 93 moving into an inoperable area where work cannot be performed.

異常判定部4は、上記した障害物や移動可能範囲、作業不能領域の情報を予め記憶している。かつ、異常判定部4は、可動アーム92の移動に関する情報がリアルタイムで入力される。したがって、異常判定部4は、障害の発生を予想することができる。異常判定部4は、ある演算周期TSにおいて異常状態を判定した場合に、当該の演算周期TSの中で異常判定信号ABを異常対応部5に出力する。 The abnormality determination unit 4 stores information about the above-mentioned obstacles, movable range, and inoperable area in advance. In addition, information about the movement of the movable arm 92 is input to the abnormality determination unit 4 in real time. Therefore, the abnormality determination unit 4 can predict the occurrence of an obstacle. When the abnormality determination unit 4 determines that an abnormal state exists in a certain calculation cycle TS, it outputs an abnormality determination signal AB to the abnormality response unit 5 during that calculation cycle TS.

なお、異常判定部4は、別途設けられた異常検出部からの検出信号に基づいて異常状態を判定するようにしてもよい。例えば、可動アーム92のエンドエフェクタ93の近くに設けた監視カメラにより可動アーム92の移動前方の障害物を検出し、検出信号を異常判定部4に送信するように構成することができる。これによれば、オペレータの手などの動き得る障害物への対応が可能となる。 The abnormality determination unit 4 may determine an abnormal state based on a detection signal from a separately provided abnormality detection unit. For example, a monitoring camera provided near the end effector 93 of the movable arm 92 may be configured to detect an obstacle ahead of the movement of the movable arm 92 and transmit the detection signal to the abnormality determination unit 4. This makes it possible to respond to obstacles that may move, such as the operator's hand.

異常対応部5は、通常時には休止しており、異常判定信号ABを受け取ると動作を開始する。異常対応部5は、異常状態が判定されたときに、以降の原速度値V0を強制的に0とするように原速度値演算部2を制御する。また、異常対応部5は、通常時平均化母数NNよりも小さな異常時平均化母数NAを用いて指令値CVを演算するように指令値演算部3を制御する。 The abnormality response unit 5 is normally inactive and starts operating when it receives an abnormality determination signal AB. When an abnormality is determined, the abnormality response unit 5 controls the original speed value calculation unit 2 to forcibly set the subsequent original speed value V0 to 0. The abnormality response unit 5 also controls the command value calculation unit 3 to calculate the command value CV using an abnormality averaging parameter NA that is smaller than the normal averaging parameter NN.

ここで、異常対応部5は、通常時平均化母数NNに予め設定された減少割合Rを乗算して異常時平均化母数NAを求める。減少割合Rは、可動アーム92の減速度が制動装置97により発生可能な最大減速度以下となり(第一制約条件を満たす)、かつ、第二制約条件の許容減速度を越えない最小値に設定される。 Here, the abnormality response unit 5 multiplies the normal averaging parameter NN by a preset reduction rate R to obtain the abnormal averaging parameter NA. The reduction rate R is set to a minimum value that causes the deceleration of the movable arm 92 to be equal to or less than the maximum deceleration that can be generated by the braking device 97 (satisfying the first constraint) and does not exceed the allowable deceleration of the second constraint.

例えば、条件を満たす最大の減速度が2である場合、最大値Vmax(=10)で移動していた可動アーム92は、演算周期TSごとに2ずつ減速して、5周期後に停止することができる。したがって、減少割合Rは、減速するときに要する5周期と、前述した加速するときに要する10周期との割合で求められ、0.5に設定される(R=0.5)。これによれば、異常時平均化母数NAは、次式で求められ、5個となる。
異常時平均化母数NA=NN・R=10×0.5[個]
For example, if the maximum deceleration that satisfies the condition is 2, the movable arm 92 that moves at the maximum value Vmax (=10) can be decelerated by 2 for each calculation cycle TS and stopped after 5 cycles. Therefore, the reduction rate R is calculated as the ratio between the 5 cycles required for deceleration and the 10 cycles required for acceleration described above, and is set to 0.5 (R=0.5). According to this, the averaging parameter NA during abnormality is calculated by the following formula, which is 5.
Abnormal averaging parameter NA = NN・R = 10×0.5 [pieces]

仮に、減少割合Rが最小値の0.5未満であると、異常時平均化母数NAが5個未満となって減速度が2を超過するため、第一および第二制約条件の少なくとも一方が満たされなくなる。また、減少割合Rが最小値の0.5を超えていると、異常時平均化母数NAが5個を越えて減速度が2より小さくなる。これにより、可動アーム92の減速性能が低下し、停止に要する制動距離が冗長に長くなる。 If the reduction rate R is less than the minimum value of 0.5, the abnormality averaging parameter NA will be less than 5 and the deceleration will exceed 2, so at least one of the first and second constraints will not be satisfied. Also, if the reduction rate R exceeds the minimum value of 0.5, the abnormality averaging parameter NA will exceed 5 and the deceleration will be less than 2. This will reduce the deceleration performance of the movable arm 92 and make the braking distance required to stop it unnecessarily long.

異常対応部5は、求めた異常時平均化母数NA(=5)を平均演算部32に指令して、通常時平均化母数NNを異常時平均化母数NAに変更する。また、異常対応部5は、異常判定信号ABを受け取ると、バッファ6に対して所定の異常時セット操作を行う。異常時セット操作の詳細については、後述する異常時対応の動作の中で説明する。 The abnormality response unit 5 issues the calculated abnormality averaging parameter NA (=5) to the average calculation unit 32, changing the normal time averaging parameter NN to the abnormal time averaging parameter NA. In addition, when the abnormality response unit 5 receives the abnormality determination signal AB, it performs a predetermined abnormality set operation on the buffer 6. Details of the abnormality set operation will be explained in the abnormality response operation section described later.

3.速度指令値演算装置1の通常時の動作
次に、速度指令値演算装置1の通常時の動作について、図4、図6、および図7を参考にして説明する。図6において(図8、図10も同様)、横軸は演算周期TSを表し、縦軸は速度を表している。また、破線のグラフは、原速度値演算部2が出力した原速度値V0(実際には演算周期TSごとの離散量)を示し、黒丸および実線のグラフは、指令値演算部3が出力した指令値CV、および指令値CVを結んだ変化の様子を示している。また、図7において(図9、図11も同様)、各演算周期TSにおけるバッファ6の第1サンプルエリアA1~第10サンプルエリアA10に記憶された原速度値V0、および指令値CVが一覧表の形式で示されている。
3. Normal operation of the speed command value calculation device 1 Next, the normal operation of the speed command value calculation device 1 will be described with reference to Figs. 4, 6, and 7. In Fig. 6 (similar to Figs. 8 and 10), the horizontal axis represents the calculation period TS, and the vertical axis represents the speed. The dashed line graph indicates the original speed value V0 (actually a discrete amount for each calculation period TS) output by the original speed value calculation unit 2, and the black circle and solid line graph indicate the command value CV output by the command value calculation unit 3 and the change state connecting the command values CV. In Fig. 7 (similar to Figs. 9 and 11), the original speed value V0 and the command value CV stored in the first sample area A1 to the tenth sample area A10 of the buffer 6 in each calculation period TS are shown in the form of a list.

図4に示された動作フローのステップS1で、速度指令値演算装置1は、起動時に初期設定を行う。すなわち、速度指令値演算装置1は、通常時平均化母数NN=10個、減少割合R=0.5、および原速度値V0=0を初期設定する。なお、これらの量がデフォルト値として保存され、ステップS1の初期設定が省略されてもよい。 In step S1 of the operation flow shown in FIG. 4, the speed command value calculation device 1 performs initial settings at startup. That is, the speed command value calculation device 1 initializes the normal averaging parameter NN=10, the reduction rate R=0.5, and the original speed value V0=0. Note that these amounts may be saved as default values, and the initial settings in step S1 may be omitted.

次のステップS2で、原速度値演算部2は、移動動作の要求が有るか否かを判定する。要求が無い場合、原速度値演算部2は、動作フローの実行をステップS4に進める。また、要求が有る場合、原速度値演算部2は、動作フローの実行をステップS3に進めて、原速度値V0を演算する。以降では、第1演算周期TS1で前記した移動距離L=200の移動動作の要求が発生した場合を想定し、説明を進める。 In the next step S2, the original speed value calculation unit 2 determines whether or not there is a request for a movement operation. If there is no request, the original speed value calculation unit 2 advances the execution of the operation flow to step S4. If there is a request, the original speed value calculation unit 2 advances the execution of the operation flow to step S3 and calculates the original speed value V0. In the following explanation, we will assume that a request for a movement operation with the aforementioned movement distance L = 200 has occurred in the first calculation cycle TS1.

原速度値演算部2は、第1演算周期TS1のステップS3で、20周期分の原速度値V0=10、およびその後の原速度値V0=0を一度に演算することができる。原速度値演算部2は、図6に示されるように、第1演算周期TS1およびその後の演算周期TSで、演算済みの原速度値V0を出力する。この後、動作フローはステップS4に合流される。 In step S3 of the first calculation cycle TS1, the original speed value calculation unit 2 can calculate the original speed value V0=10 for 20 cycles and the subsequent original speed value V0=0 at once. As shown in FIG. 6, the original speed value calculation unit 2 outputs the calculated original speed value V0 in the first calculation cycle TS1 and the subsequent calculation cycles TS. After this, the operation flow merges with step S4.

ステップS4で、原速度値移動部31は、前述したバッファ6内の移動処理を行う。移動動作の要求が無い第1演算周期TS1以前において、原速度値V0は0であり、第1サンプルエリアA1~第10サンプルエリアA10の各々に0が記憶された状態が継続する。原速度値移動部31は、第1演算周期TS1において、原速度値演算部2から入力された原速度値V0=10を第1サンプルエリアA1に記憶させる。このとき、第2サンプルエリアA2~第10サンプルエリアA10に記憶された原速度値V0は0である。この状態は、図7の第1演算周期TS1の段に示されている。 In step S4, the original speed value moving unit 31 performs the movement process in the buffer 6 described above. Before the first calculation cycle TS1, when there is no request for a movement operation, the original speed value V0 is 0, and the state in which 0 is stored in each of the first sample area A1 to the tenth sample area A10 continues. In the first calculation cycle TS1, the original speed value moving unit 31 stores the original speed value V0 = 10 input from the original speed value calculation unit 2 in the first sample area A1. At this time, the original speed value V0 stored in the second sample area A2 to the tenth sample area A10 is 0. This state is shown in the first calculation cycle TS1 row in Figure 7.

次のステップS5で、平均演算部32は、第1サンプルエリアA1~第10サンプルエリアA10に記憶されている10個の原速度値V0を加算して求めた10を、通常時平均化母数NN(=10)で除算することにより指令値CV=1を演算する。次のステップS6で、平均演算部32は、演算した指令値CV=1を駆動制御部95に出力する。 In the next step S5, the average calculation unit 32 calculates a command value CV=1 by dividing the sum of the 10 original speed values V0 stored in the first sample area A1 to the tenth sample area A10 by the normal averaging parameter NN (=10). In the next step S6, the average calculation unit 32 outputs the calculated command value CV=1 to the drive control unit 95.

次のステップS7で、速度指令値演算装置1は、出力した指令値CVが0であるか否かを判定する。ここで、指令値CVが0であることは、可動アーム92の移動動作が終了していることを意味する。第1演算周期TS1において、指令値CVは0でないので、動作フローの実行はステップS8に進められる。ステップS8で、異常判定部4は、異常状態であるか否かを判定する。多くの場合に異常状態ではなく、動作フローはステップS4に戻され、演算周期TSが更新される。 In the next step S7, the speed command value calculation device 1 determines whether the output command value CV is 0 or not. Here, the command value CV being 0 means that the movement operation of the movable arm 92 has ended. In the first calculation cycle TS1, the command value CV is not 0, so execution of the operation flow proceeds to step S8. In step S8, the abnormality determination unit 4 determines whether an abnormal state exists. In many cases, it is not an abnormal state, and the operation flow is returned to step S4, and the calculation cycle TS is updated.

第2演算周期TS2のステップS4で、原速度値移動部31は、第1サンプルエリアA1の原速度値V0=10を第2サンプルエリアA2に移動するとともに、原速度値演算部2から入力された原速度値V0=10を第1サンプルエリアA1に記憶させる。このとき、第3サンプルエリアA3~第10サンプルエリアA10に記憶された原速度値V0は0である。この状態は、図7の第2演算周期TS2の段に示されている。 In step S4 of the second calculation cycle TS2, the original speed value moving unit 31 moves the original speed value V0=10 in the first sample area A1 to the second sample area A2, and stores the original speed value V0=10 input from the original speed value calculation unit 2 in the first sample area A1. At this time, the original speed values V0 stored in the third sample area A3 to the tenth sample area A10 are 0. This state is shown in the second calculation cycle TS2 row in Figure 7.

次のステップS5で、平均演算部32は、第1サンプルエリアA1~第10サンプルエリアA10に記憶されている10個の原速度値V0を加算して求めた20を、通常時平均化母数NN(=10)で除算することにより指令値CV=2を演算する。次のステップS6で、平均演算部32は、演算した指令値CV=2を駆動制御部95に出力する。この後、動作フローは、ステップS7およびステップS8を経由してステップS4戻され、演算周期TSが更新される。 In the next step S5, the average calculation unit 32 calculates a command value CV=2 by dividing the sum of the 10 original speed values V0 stored in the first sample area A1 to the tenth sample area A10 by the normal averaging parameter NN (=10). In the next step S6, the average calculation unit 32 outputs the calculated command value CV=2 to the drive control unit 95. Thereafter, the operation flow returns to step S4 via steps S7 and S8, and the calculation cycle TS is updated.

ステップS4~ステップS8で構成された繰り返しループが10回繰り返されると、第10演算周期TS10に至る。この間、指令値CVは、演算周期TSごとに1ずつ増加する。第10演算周期TS10において、第1サンプルエリアA1~第10サンプルエリアA10の各々には、原速度値V0=10が記憶されている。平均演算部32は、ステップS5で指令値CV=10を演算し、ステップS6で指令値CV=10を駆動制御部95に出力する。この後、第20演算周期TS20まで、同じ状態が維持される。 When the repeat loop made up of steps S4 to S8 has been repeated 10 times, the tenth calculation cycle TS10 is reached. During this time, the command value CV increases by 1 for each calculation cycle TS. In the tenth calculation cycle TS10, the original speed value V0 = 10 is stored in each of the first sample area A1 to the tenth sample area A10. The average calculation unit 32 calculates the command value CV = 10 in step S5, and outputs the command value CV = 10 to the drive control unit 95 in step S6. Thereafter, the same state is maintained until the twentieth calculation cycle TS20.

第21演算周期TS21のステップS4で、原速度値移動部31は、原速度値演算部2から入力された原速度値V0=0を第1サンプルエリアA1に記憶させる。このとき、第2サンプルエリアA2~第10サンプルエリアA10に記憶された原速度値V0は10である。平均演算部32は、ステップS5で指令値CV=9を演算し、ステップS6で指令値CV=9を駆動制御部95に出力する。この後の第30演算周期TS30まで、指令値CVは、演算周期TSごとに1ずつ減少する。 In step S4 of the 21st calculation cycle TS21, the original speed value transfer unit 31 stores the original speed value V0 = 0 input from the original speed value calculation unit 2 in the first sample area A1. At this time, the original speed value V0 stored in the second sample area A2 to the tenth sample area A10 is 10. The average calculation unit 32 calculates a command value CV = 9 in step S5, and outputs the command value CV = 9 to the drive control unit 95 in step S6. From this point onwards, up to the 30th calculation cycle TS30, the command value CV decreases by 1 for each calculation cycle TS.

第30演算周期TS30において、指令値CVは0であるので、動作フローの実行はステップS7からステップS2に戻され、演算周期TSが更新される。これで、可動アーム92の通常時の移動動作が終了し、次の移動動作の要求を受け付け可能な状態に戻る。図6に示されるように、可動アーム92が減速を開始してから停止するまでの停止動作に、10周期の停止時間を要する。また、停止動作に要する制動距離は、図6の第20演算周期TS20から第30演算周期TS30までの指令値CVの面積で求められ、50である。 In the 30th calculation cycle TS30, since the command value CV is 0, execution of the operation flow is returned from step S7 to step S2, and the calculation cycle TS is updated. This ends the normal movement operation of the movable arm 92, and returns it to a state in which it can accept a request for the next movement operation. As shown in FIG. 6, the stopping operation from when the movable arm 92 starts to decelerate until it stops requires a stopping time of 10 cycles. In addition, the braking distance required for the stopping operation is calculated as the area of the command value CV from the 20th calculation cycle TS20 to the 30th calculation cycle TS30 in FIG. 6, and is 50.

要求された移動距離Lが200よりも長い場合、指令値CV=10を維持する周期数が増加する。この場合、停止動作に要する停止時間および制動距離は、上記の場合と変わらない。要求された移動距離Lが200よりも短い場合、指令値CV=10を維持する周期数が減少し、あるいは、指令値CVが10に達する以前に減速が始まる。 If the requested travel distance L is longer than 200, the number of cycles for which the command value CV = 10 is maintained increases. In this case, the stopping time and braking distance required for the stopping operation remain the same as in the above case. If the requested travel distance L is shorter than 200, the number of cycles for which the command value CV = 10 is maintained decreases, or deceleration begins before the command value CV reaches 10.

4.速度指令値演算装置1の異常時対応の動作
次に、速度指令値演算装置1の異常時対応の動作について、図5、図8、および図9を参考にして説明する。図4のステップS8で、異常判定部4が異常状態を判定していると、動作フローはステップS9に進められる。ステップS9で、速度指令値演算装置1は、異常時対応を実施する。異常時対応の動作フローの詳細は、図5に示されている。以降では、図8および図9に例示されるように、第12演算周期TS12で異常状態が判定された場合について説明する。
4. Operation of the Speed Command Value Calculation Device 1 in Response to Abnormal Conditions Next, the operation of the speed command value calculation device 1 in response to abnormal conditions will be described with reference to Figs. 5, 8, and 9. If the abnormality determination unit 4 determines an abnormal state in step S8 of Fig. 4, the operation flow proceeds to step S9. In step S9, the speed command value calculation device 1 performs an abnormality response. Details of the operation flow in response to abnormal conditions are shown in Fig. 5. In the following, a case where an abnormality is determined in the 12th calculation cycle TS12 as exemplified in Figs. 8 and 9 will be described.

図5のステップS11で、異常対応部5は、前述したように異常時平均化母数NA(=5)を求めて、平均演算部32に指令する。平均演算部32は、通常時平均化母数NNを異常時平均化母数NAに変更して動作を継続する。次のステップS12で、異常対応部5は、以降の原速度値V0を強制的に0とするように原速度値演算部2を制御する。 In step S11 of FIG. 5, the abnormality response unit 5 determines the abnormal averaging parameter NA (=5) as described above, and issues a command to the average calculation unit 32. The average calculation unit 32 changes the normal averaging parameter NN to the abnormal averaging parameter NA and continues operation. In the next step S12, the abnormality response unit 5 controls the original speed value calculation unit 2 to forcibly set the subsequent original speed value V0 to 0.

次のステップS13で、異常対応部5は、バッファ6の異常時セット操作を行う。詳述すると、異常対応部5は、異常状態が判定された第12演算周期TS12以降の演算周期TSで、第6サンプルエリアA6~第10サンプルエリアA10に強制的に0を記憶させる。なお、第6サンプルエリアA6~第10サンプルエリアA10は、通常時平均化母数NN(=10)から異常時平均化母数NA(=5)を減算した5個の旧い側として決定される。これによれば、図9に示されるように、第13演算周期TS13以降の演算周期TSにおける第6サンプルエリアA6~第10サンプルエリアA10の記憶内容は、すべて0となる。仮に、異常時平均化母数NAが8個の場合、異常対応部5は、旧い側の2個の第9サンプルエリアA9および第10サンプルエリアA10に強制的に0を記憶させることになる(第2実施形態で説明する図14参照。) In the next step S13, the abnormality response unit 5 performs an abnormality set operation on the buffer 6. More specifically, the abnormality response unit 5 forcibly stores 0 in the sixth sample area A6 to the tenth sample area A10 in the calculation cycle TS after the twelfth calculation cycle TS12 in which the abnormal state was determined. The sixth sample area A6 to the tenth sample area A10 are determined as the five older sample areas obtained by subtracting the abnormality averaging parameter NA (=5) from the normal averaging parameter NN (=10). According to this, as shown in FIG. 9, the storage contents of the sixth sample area A6 to the tenth sample area A10 in the calculation cycle TS after the thirteenth calculation cycle TS13 are all 0. If the abnormality averaging parameter NA is eight, the abnormality response unit 5 forcibly stores 0 in the two older sample areas, the ninth sample area A9 and the tenth sample area A10 (see FIG. 14 described in the second embodiment).

このセット操作は、第6サンプルエリアA6~第10サンプルエリアA10を実質的に未使用状態とするものである。これによれば、平均演算部32は、10個のサンプルエリアの記憶内容を加算する機能を変更することができなくとも、異常時平均化母数NA(=5)による5個の移動平均処理を正しく行うことができる。 This set operation essentially puts the sixth sample area A6 to the tenth sample area A10 into an unused state. This allows the average calculation unit 32 to correctly perform five moving average processing using the abnormal averaging parameter NA (=5) even if the function of adding up the stored contents of the ten sample areas cannot be changed.

なお、原速度値移動部31および平均演算部32が使用するサンプルエリアの個数を変更できる構成も考えられる。この構成では、異常対応部5は、原速度値移動部31および平均演算部32が異常時平均化母数NAに等しい5個の新しい側の第1サンプルエリアA1~第5サンプルエリアA5のみを用いるように制御すればよい。 It is also possible to configure the number of sample areas used by the original speed value shifting unit 31 and the average calculation unit 32 to be changeable. In this configuration, the anomaly response unit 5 can control the original speed value shifting unit 31 and the average calculation unit 32 to use only the first sample area A1 to the fifth sample area A5 on the newer side, which are equal to the abnormal averaging parameter NA.

さらに、異常対応部5は、異常状態が判定された第12演算周期TS12で、異常時平均化母数NAに等しい5個の新しい側の第1サンプルエリアA1~第5サンプルエリアA5に現在の指令値CV=10を記憶させる。仮に、第7演算周期TS7で異常状態が判定された場合、異常対応部5は、第1サンプルエリアA1~第5サンプルエリアA5に現在の指令値CV=7を記憶させる。このセット操作は、平均化母数を変更したときに生じがちな指令値CVの急峻な変化(実現不可能な変化)を回避するためのものである。 Furthermore, in the 12th calculation cycle TS12 in which an abnormal state is determined, the abnormality response unit 5 stores the current command value CV = 10 in the first sample area A1 to the fifth sample area A5 on the newer side, which is equal to the abnormal averaging parameter NA. If an abnormal state is determined in the seventh calculation cycle TS7, the abnormality response unit 5 stores the current command value CV = 7 in the first sample area A1 to the fifth sample area A5. This setting operation is intended to avoid abrupt changes (unrealizable changes) in the command value CV that tend to occur when the averaging parameter is changed.

この後、演算周期TSが更新され、動作フローの実行はステップS14に進められる。ステップS14~ステップS17における動作内容は、通常時のステップS4~ステップS7と同様であるが、異常時平均化母数NAを用いる点が相違する。 Then, the calculation cycle TS is updated, and the execution of the operation flow proceeds to step S14. The operation content in steps S14 to S17 is the same as that in steps S4 to S7 under normal conditions, except that the abnormal condition averaging parameter NA is used.

第13演算周期TS13のステップS14で、原速度値移動部31は、第1サンプルエリアA1~第4サンプルエリアA4の指令値CV=10を、第2サンプルエリアA2~第5サンプルエリアA5へ順送りに移動させる。さらに、原速度値移動部31は、原速度値演算部2から入力された原速度値V0=0を第1サンプルエリアA1に記憶させる。この状態は、図9の第13演算周期TS13の段に示されている。 In step S14 of the thirteenth calculation cycle TS13, the original speed value moving unit 31 moves the command value CV=10 in the first sample area A1 to the fourth sample area A4 in sequence to the second sample area A2 to the fifth sample area A5. Furthermore, the original speed value moving unit 31 stores the original speed value V0=0 input from the original speed value calculation unit 2 in the first sample area A1. This state is shown in the thirteenth calculation cycle TS13 row in Figure 9.

矢印M1に示されるように、第12演算周期TS12の指令値CV=10は、第13演算周期TS13の第2サンプルエリアA2~第5サンプルエリアA5に残る。これによれば、第13演算周期TS13の指令値CVは、第12演算周期TS12の指令値CVから大きく変化することがない。したがって、指令値CVの急峻な変化が回避される。 As shown by arrow M1, the command value CV=10 for the 12th calculation cycle TS12 remains in the second sample area A2 to the fifth sample area A5 for the 13th calculation cycle TS13. As a result, the command value CV for the 13th calculation cycle TS13 does not change significantly from the command value CV for the 12th calculation cycle TS12. Therefore, abrupt changes in the command value CV are avoided.

次のステップS15で、平均演算部32は、指令値CV=8を演算する。次のステップS16で、平均演算部32は、演算した指令値CV=8を駆動制御部95に出力する。次のステップ17で、指令値CVが0でないことから、動作フローはステップS14に戻されて、演算周期TSが更新される。この後、ステップS14~ステップS17で構成された繰り返しループが繰り返される。指令値CVは、第12演算周期TS12において10であり、演算周期TSが更新されるたびに2ずつ減少して、第17演算周期において0となる。 In the next step S15, the average calculation unit 32 calculates a command value CV = 8. In the next step S16, the average calculation unit 32 outputs the calculated command value CV = 8 to the drive control unit 95. In the next step S17, since the command value CV is not 0, the operation flow returns to step S14, and the calculation cycle TS is updated. Thereafter, the repetitive loop made up of steps S14 to S17 is repeated. The command value CV is 10 in the 12th calculation cycle TS12, decreases by 2 each time the calculation cycle TS is updated, and becomes 0 in the 17th calculation cycle.

これで異常時対応が終了し、動作フローはステップS18に進められる。ステップS18で、異常対応部5は、平均演算部32の異常時平均化母数NAを通常時平均化母数NNに戻すとともに、異常時セット操作を解消する。この後、動作フローの実行は、図4のステップS9を経由してステップS2に戻され、次の移動動作の要求を受け付け可能な状態に戻る。 This completes the abnormality response, and the operation flow proceeds to step S18. In step S18, the abnormality response unit 5 returns the abnormality averaging parameter NA of the average calculation unit 32 to the normal averaging parameter NN, and cancels the abnormality set operation. After this, execution of the operation flow returns to step S2 via step S9 in FIG. 4, and the state returns to one in which a request for the next movement operation can be accepted.

異常時対応において、可動アーム92が減速を開始してから停止するまでの緊急停止動作に5周期の停止時間を要する。また、緊急停止動作に要する制動距離は、図8の第12演算周期TS12から第17演算周期TS17までの指令値CVの面積で求められ、25である。 When dealing with an abnormality, the emergency stop operation from when the movable arm 92 starts to decelerate until it stops requires a stopping time of five cycles. In addition, the braking distance required for the emergency stop operation is calculated as the area of the command value CV from the 12th calculation cycle TS12 to the 17th calculation cycle TS17 in Figure 8, and is 25.

5.従来技術の速度指令値演算装置との対比
次に、従来技術の速度指令値演算装置の構成および動作について説明する、従来技術の速度指令値演算装置は、実施形態と同じ原速度値演算部2、指令値演算部3、および異常判定部4を備え、異常対応部の機能のみが相違する。従来技術の異常対応部は、異常状態が判定されたとき、実施形態と同様に以降の原速度値V0を強制的に0とするが、通常時平均化母数NNの変更やバッファ6の異常時セット操作は行わない。
5. Comparison with Prior Art Speed Command Value Calculation Device Next, the configuration and operation of the prior art speed command value calculation device will be described. The prior art speed command value calculation device includes the same original speed value calculation unit 2, command value calculation unit 3, and abnormality determination unit 4 as in the embodiment, and differs only in the function of the abnormality response unit. When an abnormal state is determined, the abnormality response unit of the prior art forcibly sets the subsequent original speed value V0 to 0 as in the embodiment, but does not change the normal averaging parameter NN or perform an abnormality setting operation of the buffer 6.

したがって、従来技術の速度指令値演算装置において、可動アーム92の緊急停止動作は、通常時と同様に10周期を要する。この結果、図10および図11に示されるように、第12演算周期TS12で異常状態が判定された場合、可動アーム92の停止は、第22演算周期TS22となる。このため、従来技術の速度指令値演算装置は、異常時対応の緊急停止動作であっても、通常時と同じ制動距離(=50)が必要となる。これに対比して、実施形態の速度指令値演算装置1では、緊急停止動作の停止時間(=5周期)および制動距離(=25)が半分で済む。 Therefore, in the speed command value calculation device of the prior art, the emergency stop operation of the movable arm 92 requires 10 cycles, the same as in normal times. As a result, as shown in Figures 10 and 11, if an abnormal state is determined in the 12th calculation cycle TS12, the stopping of the movable arm 92 is in the 22nd calculation cycle TS22. For this reason, the speed command value calculation device of the prior art requires the same braking distance (=50) as in normal times, even for an emergency stop operation to deal with an abnormality. In contrast, in the speed command value calculation device 1 of the embodiment, the stopping time (=5 cycles) and braking distance (=25) for the emergency stop operation are half.

第1実施形態の速度指令値演算装置1において、異常対応部5は、異常状態が判定されたときに、原速度値V0をゼロに制御するとともに、通常時平均化母数NNよりも小さな異常時平均化母数NAを用いて指令値CVを演算させる。これによれば、現在以降の原速度値V0がゼロとなるため、可動アーム92(可動部)は、直ちに減速を開始する。かつ、現在以降は小さな異常時平均化母数NAが用いられるため、可動アーム92は、通常時よりも大きな減速度で停止に至る。この結果、可動アーム92は、異常状態発生時の緊急停止動作において通常時よりも小さな制動距離で停止することができ、障害の実際の発生が抑制される In the speed command value calculation device 1 of the first embodiment, when an abnormal state is determined, the abnormality response unit 5 controls the original speed value V0 to zero and calculates the command value CV using an abnormality averaging parameter NA smaller than the normal averaging parameter NN. According to this, since the original speed value V0 from the present onwards becomes zero, the movable arm 92 (movable part) immediately starts decelerating. Furthermore, since a small abnormality averaging parameter NA is used from the present onwards, the movable arm 92 reaches a stop with a greater deceleration than normal. As a result, the movable arm 92 can be stopped with a smaller braking distance than normal in an emergency stop operation when an abnormal state occurs, and the actual occurrence of an obstacle is suppressed.

また、異常時平均化母数NAは第一制約条件が許す範囲内で設定されるので、駆動装置96および制動装置97に過大な負担をかけることが無く、故障要因を低減することができる。さらに、異常時平均化母数NAは、第二制約条件が許す範囲内で設定されるので、異常時対応において可動アーム92の移動動作に弊害が発生しない。 In addition, since the averaging parameter NA during an abnormality is set within the range permitted by the first constraint, excessive strain is not placed on the drive device 96 and the brake device 97, and the cause of failure can be reduced. Furthermore, since the averaging parameter NA during an abnormality is set within the range permitted by the second constraint, no adverse effects are caused to the movement operation of the movable arm 92 in response to an abnormality.

6.第2実施形態の速度指令値演算装置1A
次に、第2実施形態の速度指令値演算装置1Aの構成および動作について、図12~図14を参考にして、第1実施形態と異なる点を主に説明する。第2実施形態において、異常判定部4が異常検出部98を有する点が第1実施形態と異なり、かつ、異常対応部5の動作が第1実施形態と異なる。
6. Speed command value calculation device 1A of the second embodiment
Next, the configuration and operation of a speed command value calculation device 1A of the second embodiment will be described with reference to Figures 12 to 14, focusing mainly on the differences from the first embodiment. The second embodiment differs from the first embodiment in that the abnormality determination unit 4 has an abnormality detection unit 98, and the operation of the abnormality response unit 5 differs from the first embodiment.

異常検出部98は、異常状態の判定に有効な可動アーム92の現在状態を検出する。異常検出部98は、例えば、可動アーム92のエンドエフェクタ93の近くに設けられた監視カメラや近接センサなどによって構成され、可動アーム92の移動前方の障害物を検出する。異常検出部98は、障害物の有無に関する信号、および、可動アーム92の現在位置と障害物との離間距離DXに関する信号を異常判定部4に出力する。 The abnormality detection unit 98 detects the current state of the movable arm 92, which is effective for determining an abnormal state. The abnormality detection unit 98 is composed of, for example, a surveillance camera or a proximity sensor provided near the end effector 93 of the movable arm 92, and detects obstacles ahead of the movement of the movable arm 92. The abnormality detection unit 98 outputs a signal regarding the presence or absence of an obstacle and a signal regarding the distance DX between the current position of the movable arm 92 and the obstacle to the abnormality determination unit 4.

異常判定部4は、異常検出部98から受け取った信号に基づいて、異常状態を判定するとともに、前記した離間距離DXを演算する。離間距離DXの演算方法として、監視カメラが取得した画像データの画像処理や、近接センサの出力信号の距離換算などを例示することができる。異常判定部4は、第1実施形態と同様の異常判定信号ABに加えて、離間距離DXを表す信号を異常対応部5に出力する。 The abnormality determination unit 4 determines an abnormal state based on the signal received from the abnormality detection unit 98, and calculates the above-mentioned separation distance DX. Examples of methods for calculating the separation distance DX include image processing of image data acquired by a surveillance camera and distance conversion of the output signal of a proximity sensor. The abnormality determination unit 4 outputs a signal representing the separation distance DX to the abnormality response unit 5, in addition to the abnormality determination signal AB similar to that of the first embodiment.

異常対応部5は、第1実施形態と同様、異常判定信号ABを受け取ると動作を開始する。しかしながら、第1実施形態と異なり、減少割合Rは、予め設定されていない可変量である。異常対応部5は、離間距離DXを用いた演算により減少割合Rを求める。さらに、異常対応部5は、求めた減少割合Rと通常時平均化母数NNを乗算して、異常時平均化母数NBを求める。第2実施形態において、減少割合Rの値は、1を超過したり、第1実施形態で説明した最小値の0.5より小さくなったりする場合が生じ得る。 As in the first embodiment, the abnormality response unit 5 starts operating when it receives the abnormality determination signal AB. However, unlike the first embodiment, the reduction rate R is a variable amount that is not preset. The abnormality response unit 5 calculates the reduction rate R by a calculation using the separation distance DX. Furthermore, the abnormality response unit 5 multiplies the calculated reduction rate R by the normal averaging parameter NN to calculate the abnormal averaging parameter NB. In the second embodiment, the value of the reduction rate R may exceed 1 or may be smaller than the minimum value of 0.5 described in the first embodiment.

演算方法について詳述すると、異常対応部5は、まず、通常時平均化母数NNを用いて演算された指令値CVにしたがうと仮定した場合に、可動アーム92が停止するまでに要する現在位置からの制動距離を求める。可動アーム92が最大値Vmax(=10)で移動しているときの制動距離は、第1実施形態で説明した50である。可動アーム92が最大値Vmaxよりも小さな速度で移動している場合、制動距離は、50よりも小さくなるが、演算によって求めることが可能である。次に、異常対応部5は、次式を用いて減少割合Rを演算する。
減少割合R=DX/DS
To explain the calculation method in detail, the abnormality response unit 5 first calculates the braking distance from the current position required for the movable arm 92 to stop, assuming that the command value CV calculated using the normal averaging parameter NN is followed. The braking distance when the movable arm 92 is moving at the maximum value Vmax (=10) is 50 as described in the first embodiment. When the movable arm 92 is moving at a speed slower than the maximum value Vmax, the braking distance will be less than 50, but it can be calculated. Next, the abnormality response unit 5 calculates the reduction rate R using the following equation.
Decrease rate R = DX/DS

さらに、異常対応部5は、次式を用いて異常時平均化母数NBを演算する。なお、異常時平均化母数NBに1未満の端数が生じた場合、切り捨てによって整数の異常時平均化母数NBを求める。
異常時平均化母数NB=NN・R
以降では、求められた異常時平均化母数NBの大きさに基づき、1)~3)に場合分けして説明する。
Furthermore, the abnormality response unit 5 calculates the abnormality-time averaging parameter NB using the following formula: If the abnormality-time averaging parameter NB has a fraction less than 1, the fraction is rounded down to obtain an integer abnormality-time averaging parameter NB.
Abnormal averaging parameter NB = NN・R
In the following, the cases will be explained according to 1) to 3) based on the magnitude of the abnormal-state averaging parameter NB thus obtained.

1)異常時平均化母数NBが通常時平均化母数NNよりも大きい場合
(NB>NN=10)
この場合、減少割合Rは1を超過しており、仮定から求めた制動距離は、離間距離DXよりも小さい。つまり、可動アーム92は、通常時平均化母数NNを用いて演算された指令値CVにしたがって移動しても、障害物に衝突しない。したがって、異常対応部5は、以降の原速度値V0を強制的に0とするように原速度値演算部2を制御し、指令値演算部3を制御しない。指令値演算部3は、通常時平均化母数NNを用いた移動平均処理を継続する。
1) When the abnormal averaging parameter NB is greater than the normal averaging parameter NN (NB > NN = 10)
In this case, the decrease rate R exceeds 1, and the braking distance calculated from the assumption is smaller than the separation distance DX. In other words, even if the movable arm 92 moves according to the command value CV calculated using the normal averaging parameter NN, it will not collide with the obstacle. Therefore, the abnormality response unit 5 controls the original speed value calculation unit 2 so that the subsequent original speed value V0 is forcibly set to 0, and does not control the command value calculation unit 3. The command value calculation unit 3 continues the moving average process using the normal averaging parameter NN.

2)異常時平均化母数NBが通常時平均化母数NN以下で、かつ第1実施形態で説明した第一および第二制約条件を満たす場合(NN=10≧NB≧5)
この場合、減少割合Rは、概ね0.5以上で1未満の範囲内にある。つまり、可動アーム92は、通常時平均化母数NNを用いて演算された指令値CVにしたがうと障害物に衝突するおそれがある。それでも、指令値演算部3が異常時平均化母数NBを用いることにより、可動アーム92は、衝突を回避することができる。したがって、異常対応部5は、以降の原速度値V0を強制的に0とするように原速度値演算部2を制御するとともに、異常時平均化母数NBを平均演算部32に指令し、バッファ6に対して所定の異常時セット操作を行う。
2) When the abnormal averaging parameter NB is equal to or smaller than the normal averaging parameter NN and satisfies the first and second constraint conditions described in the first embodiment (NN=10≧NB≧5).
In this case, the decrease rate R is generally in the range of 0.5 or more and less than 1. In other words, the movable arm 92 may collide with an obstacle if the command value CV calculated using the normal averaging parameter NN is followed. Nevertheless, the command value calculation unit 3 uses the abnormal averaging parameter NB, so that the movable arm 92 can avoid the collision. Therefore, the abnormality response unit 5 controls the original speed value calculation unit 2 so as to forcibly set the subsequent original speed value V0 to 0, and also commands the average calculation unit 32 to set the abnormal averaging parameter NB, and performs a predetermined abnormality set operation on the buffer 6.

例えば、第1実施形態と同じく第12演算周期TS12で異常状態が判定され、離間距離DX=42、制動距離=50の場合、減少割合R=0.84となり、異常時平均化母数NBは8個となる。この場合の速度指令値演算装置1Aの動作は、図13および図14に示されている。 For example, as in the first embodiment, if an abnormal state is determined in the 12th calculation cycle TS12, and the separation distance DX = 42 and the braking distance = 50, the reduction rate R = 0.84 and the averaging parameter NB during abnormality is 8. The operation of the speed command value calculation device 1A in this case is shown in Figures 13 and 14.

図14に示されるように、第13演算周期TS13以降の演算周期TSにおける第9サンプルエリアA9および第10サンプルエリアA10の記憶内容は、すべて0となる。また、矢印M2に示されるように、第12演算周期TS12の指令値CV=10は、第13演算周期TS13の第2サンプルエリアA2~第8サンプルエリアA8に残る。したがって、第13演算周期TS13の指令値CVは、第12演算周期TS12の指令値CVから大きく変化しない。かつ、第13演算周期TS13の指令値CVは8.75であり、通常時よりも大きな減速度となる。指令値CVは、第12演算周期TS12において10であり、演算周期TSが更新されるたびに1.25ずつ減少して、第20演算周期において0となる。 As shown in FIG. 14, the contents stored in the ninth sample area A9 and the tenth sample area A10 in the calculation cycles TS from the thirteenth calculation cycle TS13 onwards are all 0. Also, as shown by the arrow M2, the command value CV=10 in the twelfth calculation cycle TS12 remains in the second sample area A2 to the eighth sample area A8 in the thirteenth calculation cycle TS13. Therefore, the command value CV in the thirteenth calculation cycle TS13 does not change significantly from the command value CV in the twelfth calculation cycle TS12. Furthermore, the command value CV in the thirteenth calculation cycle TS13 is 8.75, which is a larger deceleration than normal. The command value CV is 10 in the twelfth calculation cycle TS12, and decreases by 1.25 each time the calculation cycle TS is updated, to become 0 in the twentieth calculation cycle.

可動アーム92が減速を開始してから停止するまでに要する制動距離は、図13の第12演算周期TS12から第20演算周期TS20までの指令値CVの面積で求められ、40である。つまり、可動アーム92は、離間距離DX(=42)よりもわずかに小さな制動距離(=40)で障害物の少し手前に停止し、障害物への衝突を回避することができる。加えて、減速度を必要以上に大きくしないので、許容される最大の減速度で常に緊急停止動作を行う第1実施形態と比較して、可動アーム92や制動装置97に大きな負担をかけない優しい緊急停止動作を実現することができる。 The braking distance required for the movable arm 92 to stop after it starts to decelerate is calculated as the area of the command value CV from the 12th calculation cycle TS12 to the 20th calculation cycle TS20 in FIG. 13, and is 40. In other words, the movable arm 92 can stop slightly before the obstacle with a braking distance (=40) that is slightly smaller than the separation distance DX (=42), thereby avoiding collision with the obstacle. In addition, because the deceleration is not made larger than necessary, it is possible to realize a gentle emergency stop operation that does not place a large burden on the movable arm 92 or the brake device 97, compared to the first embodiment in which an emergency stop operation is always performed at the maximum allowable deceleration.

3)異常時平均化母数NBが第1実施形態で説明した第一および第二制約条件を満たさない場合(5>NB)
この場合、減少割合Rは、0.5よりも小さい。つまり、可動アーム92は、第一および第二制約条件を満たす異常時平均化母数NBを用いて演算された指令値CVにしたがう限り、障害物への衝突を回避することができない。異常対応部5は、以降の原速度値V0を強制的に0とするように原速度値演算部2を制御するとともに、第一および第二制約条件を満たす最小の異常時平均化母数NB(=5)を平均演算部32に指令し、バッファ6に対して所定の異常時セット操作を行う。
3) When the abnormal averaging parameter N B does not satisfy the first and second constraint conditions described in the first embodiment (5>N B )
In this case, the reduction rate R is smaller than 0.5. In other words, the movable arm 92 cannot avoid colliding with the obstacle as long as it follows the command value CV calculated using the abnormality averaging parameter NB that satisfies the first and second constraint conditions. The abnormality response unit 5 controls the original speed value calculation unit 2 so as to forcibly set the subsequent original speed value V0 to 0, and commands the average calculation unit 32 to set the minimum abnormality averaging parameter NB (=5) that satisfies the first and second constraint conditions, and performs a predetermined abnormality set operation on the buffer 6.

この異常時対応によれば、可動アーム92は、第1実施形態で説明したように制動距離DS=25で停止する。したがって、可動アーム92が障害物に衝突する瞬間の速度は、第一および第二制約条件が許す範囲内で最小となり、衝突時のショックが最小に緩和される。 According to this abnormality response, the movable arm 92 stops at the braking distance DS = 25 as described in the first embodiment. Therefore, the speed of the movable arm 92 at the moment of collision with the obstacle is minimized within the range permitted by the first and second constraints, and the shock at the time of collision is mitigated to a minimum.

第2実施形態の速度指令値演算装置1Aでは、第1実施形態と同様、可動アーム92は、異常状態発生時の緊急停止動作において通常時よりも小さな制動距離で停止することができ、障害の実際の発生が抑制される。加えて、離間距離DXの大小に合わせて異常時平均化母数NBを可変にかつ適正に設定することができるので、可動アーム92や制動装置97に大きな負担をかけない優しい緊急停止動作を実現することができる。 In the speed command value calculation device 1A of the second embodiment, as in the first embodiment, the movable arm 92 can be stopped with a braking distance smaller than normal during an emergency stop operation when an abnormal state occurs, and the actual occurrence of an obstacle is suppressed. In addition, the abnormality averaging parameter NB can be variably and appropriately set according to the size of the separation distance DX, so that a gentle emergency stop operation that does not place a large burden on the movable arm 92 or the brake device 97 can be realized.

7.実施形態の応用および変形
なお、第1実施形態で例示した演算周期TSの周期時間ts(=1ms)は、実機ではさらに小さく設定され、通常時平均化母数NN(=10個)は実機ではさらに大きく設定されて、精細な移動制御が行われる。また、第1実施形態において、指令値演算部3は、専用の演算素子を用いて構成されているが、速度指令値演算装置1を構成するコンピュータ装置のメモリおよびプログラムを用いて構成されてもよい。さらに、第2実施形態は、可動アーム92の移動可能範囲が物理的な境界で区画された構成に適用することができる。この構成において、異常検出部98は、可動アーム92の移動前方の物理的な境界を検出する。第1および第2実施形態は、その他にも様々な応用や変形が可能である。
7. Application and Modification of the Embodiments The period time ts (=1 ms) of the calculation period TS exemplified in the first embodiment is set to be smaller in the actual machine, and the normal averaging parameter NN (=10) is set to be larger in the actual machine, so that fine movement control is performed. In the first embodiment, the command value calculation unit 3 is configured using a dedicated calculation element, but may be configured using the memory and program of the computer device that configures the speed command value calculation device 1. Furthermore, the second embodiment can be applied to a configuration in which the movable range of the movable arm 92 is divided by physical boundaries. In this configuration, the abnormality detection unit 98 detects the physical boundary in front of the movement of the movable arm 92. The first and second embodiments can be applied and modified in various other ways.

第1および第2実施形態の速度指令値演算装置(1、1A)は、作業ロボット9に限定されず、移動平均処理を用いて速度の指令値を演算する各種の機器に利用することが可能である。 The speed command value calculation device (1, 1A) of the first and second embodiments is not limited to the work robot 9, and can be used in various devices that calculate a speed command value using moving average processing.

1、1A:速度指令値演算装置 2:原速度値演算部 3:指令値演算部 31:原速度値移動部 32:平均演算部 4:異常判定部 5:異常対応部 6:バッファ 9:作業ロボット 91:基部 92:可動アーム 93:エンドエフェクタ 94:駆動機構 95:駆動制御部 96:駆動装置 97:制動装置 A1~A10:第1~第10サンプルエリア L:移動距離 NN:通常時平均化母数 NA:異常時平均化母数 R:減少割合 V0:原速度値 Vmax:(速度の)最大値 CV:(速度の)指令値 TS:演算周期 1, 1A: Speed command value calculation device 2: Original speed value calculation section 3: Command value calculation section 31: Original speed value movement section 32: Average calculation section 4: Abnormality judgment section 5: Abnormality response section 6: Buffer 9: Work robot 91: Base section 92: Movable arm 93: End effector 94: Drive mechanism 95: Drive control section 96: Drive unit 97: Brake unit A1-A10: 1st to 10th sample areas L: Movement distance NN: Normal averaging parameter NA: Abnormal averaging parameter R: Decrease rate V0: Original speed value Vmax: Maximum value (of speed) CV: (of speed) command value TS: Calculation period

Claims (12)

可動部に要求される移動動作に基づいて、所定の演算周期ごとの原速度値を演算する原速度値演算部と、
通常時平均化母数を用いて前記演算周期ごとに前記原速度値に移動平均処理を施すことにより、前記可動部を駆動する駆動機構に指令する前記演算周期ごとの速度の指令値を演算する指令値演算部と、
前記可動部が前記移動動作を行うことによって障害の発生が予想される異常状態を判定する異常判定部と、
前記異常状態が判定されたときに、前記原速度値をゼロとするように前記原速度値演算部を制御するとともに、前記通常時平均化母数よりも小さな異常時平均化母数を用いて前記指令値を演算するように前記指令値演算部を制御する異常対応部と、
を備える速度指令値演算装置。
an original speed value calculation unit that calculates an original speed value for each predetermined calculation period based on a moving operation required of the movable part;
a command value calculation unit that calculates a command value of a speed for each calculation cycle to be commanded to a drive mechanism that drives the movable part by performing a moving average process on the original speed value for each calculation cycle using a normal averaging parameter;
an abnormality determination unit that determines an abnormal state in which a fault is expected to occur due to the moving operation of the movable unit;
an abnormality response unit that controls the original speed value calculation unit to set the original speed value to zero when the abnormal state is determined, and controls the command value calculation unit to calculate the command value using an abnormal averaging parameter smaller than the normal averaging parameter;
A speed command value calculation device comprising:
前記異常対応部は、前記通常時平均化母数に予め設定された減少割合を乗算して前記異常時平均化母数を求める、請求項1に記載の速度指令値演算装置。 The speed command value calculation device according to claim 1, wherein the abnormality response unit obtains the abnormality average parameter by multiplying the normal average parameter by a preset reduction rate. 前記減少割合は、前記可動部の減速度が前記移動動作に応じて定められた許容減速度を越えず、かつ、前記駆動機構により発生可能な最大減速度以下となるように設定される、請求項2に記載の速度指令値演算装置。 The speed command value calculation device according to claim 2, wherein the reduction rate is set so that the deceleration of the movable part does not exceed an allowable deceleration determined according to the movement operation and is equal to or less than the maximum deceleration that can be generated by the drive mechanism. 可動部に要求される移動動作に基づいて、所定の演算周期ごとの原速度値を演算する原速度値演算部と、
通常時平均化母数を用いて前記演算周期ごとに前記原速度値に移動平均処理を施すことにより、前記可動部を駆動する駆動機構に指令する前記演算周期ごとの速度の指令値を演算する指令値演算部と、
前記可動部が前記移動動作を行うことによって障害物に衝突し、または移動可能範囲の境界を越えることが予想される異常状態を判定する異常判定部と、
前記異常状態が判定されたときに、前記原速度値をゼロとするように前記原速度値演算部を制御するとともに、前記可動部の現在位置と前記障害物または前記境界との離間距離に基づいて、前記通常時平均化母数よりも小さな異常時平均化母数を求め、前記異常時平均化母数を用いて前記指令値を演算するように前記指令値演算部を制御する異常対応部と、
を備える速度指令値演算装置。
an original speed value calculation unit that calculates an original speed value for each predetermined calculation period based on a moving operation required of the movable part;
a command value calculation unit that calculates a command value of a speed for each calculation cycle to be commanded to a drive mechanism that drives the movable part by performing a moving average process on the original speed value for each calculation cycle using a normal averaging parameter;
an abnormality determination unit that determines an abnormal state in which the movable unit is expected to collide with an obstacle or go beyond a boundary of a movable range as a result of the moving operation of the movable unit;
an abnormality response unit that controls the original speed value calculation unit to set the original speed value to zero when the abnormal state is determined, and that determines an abnormality averaging parameter smaller than the normal averaging parameter based on a distance between a current position of the movable part and the obstacle or the boundary, and controls the command value calculation unit to calculate the command value using the abnormality averaging parameter;
A speed command value calculation device comprising:
前記異常対応部は、前記通常時平均化母数を用いて演算された前記指令値にしたがうと仮定した場合に、前記可動部が停止するまでに要する前記現在位置からの制動距離を求め、前記離間距離および前記制動距離に基づいて前記異常時平均化母数を求める、請求項4に記載の速度指令値演算装置。 The speed command value calculation device according to claim 4, wherein the abnormality response unit calculates the braking distance from the current position required for the movable part to stop, assuming that the command value calculated using the normal averaging parameter is followed, and calculates the abnormality averaging parameter based on the separation distance and the braking distance. 前記通常時平均化母数は、前記可動部の加速度が前記移動動作に応じて定められた許容加速度を越えず、かつ、前記駆動機構により発生可能な最大加速度以下となるように設定される、請求項1~5のいずれか一項に記載の速度指令値演算装置。 The speed command value calculation device according to any one of claims 1 to 5, wherein the normal averaging parameter is set so that the acceleration of the movable part does not exceed an allowable acceleration determined according to the movement operation and is equal to or less than the maximum acceleration that can be generated by the drive mechanism. 前記指令値演算部は、
前記通常時平均化母数に等しい個数で新旧の順に並ぶサンプルエリアに、時系列的に並んだ複数の前記原速度値を記憶するバッファと、
前記演算周期の更新に伴い、前記サンプルエリアの各々に記憶された前記原速度値を旧い側の前記サンプルエリアへ順送りに移動させるとともに、もっとも新しい側の前記サンプルエリアに現在の前記原速度値を記憶させる原速度値移動部と、
前記演算周期の各々において、前記サンプルエリアの各々に記憶された前記原速度値を加算して、前記通常時平均化母数で除算することにより前記指令値を演算する平均演算部と、を有する、
請求項1~6のいずれか一項に記載の速度指令値演算装置。
The command value calculation unit is
a buffer for storing a plurality of said original speed values arranged in time series in a sample area arranged in order of newest to oldest, the number of which is equal to said normal averaging parameter;
an original speed value moving unit which moves the original speed values stored in each of the sample areas to the older sample area in sequence in response to the update of the calculation period, and stores the current original speed value in the newest sample area;
an average calculation unit that calculates the command value by adding up the original speed values stored in the respective sample areas in each of the calculation cycles and dividing the sum by the normal averaging parameter,
The speed command value calculation device according to any one of claims 1 to 6.
前記異常対応部は、
前記異常状態が判定された前記演算周期で、前記異常時平均化母数に等しい個数の新しい側の前記サンプルエリアに現在の前記指令値を記憶させるとともに、前記平均演算部の前記通常時平均化母数を前記異常時平均化母数に変更し、さらに、
前記異常状態が判定された以降の前記演算周期で、前記通常時平均化母数から前記異常時平均化母数を減算した個数の旧い側の前記サンプルエリアにゼロを記憶させる、
請求項7に記載の速度指令値演算装置。
The abnormality response unit is
In the calculation cycle in which the abnormal state is determined, the current command value is stored in the new side sample area of which the number is equal to the abnormal state averaging parameter, and the normal state averaging parameter of the average calculation unit is changed to the abnormal state averaging parameter; and
storing zero in the sample area on the older side of the number obtained by subtracting the abnormal state averaging parameter from the normal state averaging parameter in the calculation cycle after the abnormal state is determined;
The speed command value calculation device according to claim 7.
前記異常対応部は、
前記異常状態が判定された前記演算周期で、前記異常時平均化母数に等しい個数の新しい側の前記サンプルエリアに現在の前記指令値を記憶させるとともに、前記平均演算部の前記通常時平均化母数を前記異常時平均化母数に変更し、さらに、
前記異常状態が判定された以降の前記演算周期で、前記原速度値移動部および前記平均演算部が前記異常時平均化母数に等しい個数の新しい側の前記サンプルエリアのみを用いるように制御する、
請求項7に記載の速度指令値演算装置。
The abnormality response unit is
In the calculation cycle in which the abnormal state is determined, the current command value is stored in the new side sample area of which the number is equal to the abnormal state averaging parameter, and the normal state averaging parameter of the average calculation unit is changed to the abnormal state averaging parameter; and
control the original speed value shifting unit and the average calculation unit to use only the new side sample areas of a number equal to the abnormal-time averaging parameter in the calculation cycle after the abnormal state is determined;
The speed command value calculation device according to claim 7.
前記原速度値演算部は、一定の前記原速度値を演算する、請求項1~9のいずれか一項に記載の速度指令値演算装置。 The speed command value calculation device according to any one of claims 1 to 9, wherein the original speed value calculation unit calculates a constant original speed value. 前記原速度値演算部は、前記可動部の前記移動動作に応じて定められた許容速度を越えず、かつ、前記駆動機構により発生可能な速度の最大値を一定の前記原速度値とする、請求項10に記載の速度指令値演算装置。 The speed command value calculation device according to claim 10, wherein the original speed value calculation unit sets the maximum speed that can be generated by the drive mechanism to a constant original speed value that does not exceed an allowable speed determined according to the movement operation of the movable part. 前記可動部は、作業ロボットの可動アームであり、
前記駆動機構は、前記可動アームに前記移動動作を行わせる駆動装置、および前記可動アームの前記移動動作を制動する制動装置を含む、
請求項1~11のいずれか一項に記載の速度指令値演算装置。
the movable part is a movable arm of a working robot,
The drive mechanism includes a drive device that causes the movable arm to perform the moving operation, and a braking device that brakes the moving operation of the movable arm.
The speed command value calculation device according to any one of claims 1 to 11.
JP2020194954A 2020-11-25 2020-11-25 Speed command value calculation device Active JP7510338B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020194954A JP7510338B2 (en) 2020-11-25 2020-11-25 Speed command value calculation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020194954A JP7510338B2 (en) 2020-11-25 2020-11-25 Speed command value calculation device

Publications (2)

Publication Number Publication Date
JP2022083563A JP2022083563A (en) 2022-06-06
JP7510338B2 true JP7510338B2 (en) 2024-07-03

Family

ID=81855565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020194954A Active JP7510338B2 (en) 2020-11-25 2020-11-25 Speed command value calculation device

Country Status (1)

Country Link
JP (1) JP7510338B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008171230A (en) 2007-01-12 2008-07-24 Yaskawa Electric Corp Position instruction device and position instruction generation method
JP2011118709A (en) 2009-12-03 2011-06-16 Fuji Mach Mfg Co Ltd Abnormality monitor for mobile body driving control system
WO2011101915A1 (en) 2010-02-19 2011-08-25 三菱電機株式会社 Command generation device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008171230A (en) 2007-01-12 2008-07-24 Yaskawa Electric Corp Position instruction device and position instruction generation method
JP2011118709A (en) 2009-12-03 2011-06-16 Fuji Mach Mfg Co Ltd Abnormality monitor for mobile body driving control system
WO2011101915A1 (en) 2010-02-19 2011-08-25 三菱電機株式会社 Command generation device

Also Published As

Publication number Publication date
JP2022083563A (en) 2022-06-06

Similar Documents

Publication Publication Date Title
US11279033B2 (en) Method and apparatus for collision-free motion planning of a manipulator
EP2042278B1 (en) Robot controller for halting a robot based on the speed of a robot hand portion
EP3025828A1 (en) Brake diagnosis device and brake diagnosis method
US8843234B2 (en) Dynamic space check for multi-arm system moving on a rail
EP1959323B1 (en) Elimination of unintended velocity reversals in S-curve velocity profiles
JP6703021B2 (en) Servo control device
CN105814503A (en) Numerical control device and numerical control method
EP3554772B2 (en) Collision monitoring of a robot
CN109153117B (en) Control of robotic complexes
US10513034B2 (en) Trajectory determination method for non-productive movements
JP2018062026A (en) Robot control device with function for restricting speed and acceleration of robot
JP7510338B2 (en) Speed command value calculation device
JP5912953B2 (en) Control device and control method
JPH1177580A (en) Robot controller
JP5220241B1 (en) Command generation apparatus and command generation method
JP2011118709A (en) Abnormality monitor for mobile body driving control system
JP2012058976A (en) Collision preventing device in numerical control apparatus
JP2016051290A (en) Numerical control apparatus, machine tool control system, numerical control method, and numerical control program
CN111077775B (en) Two-degree-of-freedom control system, control method, control device, and storage medium
JPH048484A (en) Cooperative motion control method for two robots and controller
WO2022097607A1 (en) Control device
JP7502135B2 (en) Robot program adjustment device
JP6966415B2 (en) Control method, control device and program
JP2008148449A (en) Motor position control method
CN111660292A (en) Control system for industrial robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240529

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: 20240618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240621

R150 Certificate of patent or registration of utility model

Ref document number: 7510338

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150