JPH03182908A - Numeric controller of robot - Google Patents

Numeric controller of robot

Info

Publication number
JPH03182908A
JPH03182908A JP32167989A JP32167989A JPH03182908A JP H03182908 A JPH03182908 A JP H03182908A JP 32167989 A JP32167989 A JP 32167989A JP 32167989 A JP32167989 A JP 32167989A JP H03182908 A JPH03182908 A JP H03182908A
Authority
JP
Japan
Prior art keywords
robot
instruction
command
temporary storage
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP32167989A
Other languages
Japanese (ja)
Inventor
Tadanori Harada
忠則 原田
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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP32167989A priority Critical patent/JPH03182908A/en
Publication of JPH03182908A publication Critical patent/JPH03182908A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To realize an efficient processing by dividing instructions to be treated into an instruction group which needs time for the processing and an instruction group which can promptly be executed and multiplex-processing the instructions. CONSTITUTION:Among robot control instructions, the instruction which needs the processing by waiting for the termination of a robot operation is transmitted by a first communication line 3 and the prompt execution instruction except for said instruction is transmitted by a second communication line 3'. Then, they are stored in first and second temporary storage parts 8 and 8'. An analysis part 9 reads the subsequent instruction when the execution of the instruction by an execution part 10 terminates. Since a robot control instruction from the second temporary storage part 8' is the prompt execution instruction, the processing corresponding to the instruction is immediately processed in the analysis part 9. Thus, the instruction can efficiently be processed and the probability of the occurrence of a deadlock in the execution part 10 is reduced.

Description

【発明の詳細な説明】 本発明ロボットの数値制御装置を以下の項目に従って説
明する。
DETAILED DESCRIPTION OF THE INVENTION A numerical control device for a robot according to the present invention will be explained according to the following items.

A、産業上の利用分野 B8発明の概要 C9従来技術[第11図、第12図] a、一般的背景 従来例[第11図、第]2図コ 発明が解決しようとする課題[813図、第14図コ E 課題を解決するための手段 実施例[第1図乃至第10図コ 1、第1の実施例[第1図乃至第3図]a、基本構成[
第1図、第2図コ b、構成例[第3図コ C1作用 F−2,第2の実施例[第4図乃至第7図]a、構成[
第4図] b、動作[第5図コ C8変形例「第6図、第7図] 3、第3の実施例[第8図乃至第10 図] a、構成[第8図、第9図] b、動作[第10図コ C作用 G8発明の効果 (A 産業上の利用分野) 本発明は新規なロボットの数値制御装置に関する。詳し
くは、ロボットの数値制御装置において命令の種別に応
じた処理が行なえるように工夫を凝らすことで処理効率
を向上させ、命令の実行手段への設定時におけるデッド
ロックを防止することができるようにした新規なロボッ
トの数値制御装置を提供しようとするものである。
A. Industrial field of application B8 Summary of the invention C9 Prior art [Figures 11 and 12] a. General background Conventional examples [Figures 11 and 12] Figure 2 Problems to be solved by the invention [Figure 813] , Fig. 14 (E) Embodiment of means for solving the problem [Fig. 1 to Fig. 10 C1, First embodiment [Fig. 1 to Fig. 3] a, Basic configuration
Fig. 1, Fig. 2 (b), Configuration example [Fig. 3 (Fig. 3) C1 Effect F-2, Second embodiment [Figs. 4 to 7] a, Configuration [Fig.
Fig. 4] b. Operation [Fig. 5 C8 modification "Fig. 6, Fig. 7] 3. Third embodiment [Fig. 8 to 10] a. Configuration [Fig. 8, Fig. 9] Figure] b, Operation [Fig. The present invention aims to provide a new robot numerical control device that improves processing efficiency by devising ways to perform the same processing, and prevents deadlock when setting instructions to the execution means. It is something.

(B、発明の概要) 本発明の第1のものは、ロボットの動作に関する命令及
び/又はロボット動作の完了を待って処理される命令が
含まれる情報を受けると、受け取った順に情報を記憶し
て行く第1の一時記憶手段と、ロボット動作の完了を待
つことなく処理し得る命令が含まれる情報を受けると、
受け取った順に情報を記憶して行く第2の一時記憶手段
と、第1の一時記憶手段や第2の一時記憶手段から情報
を順次読み出して解析する解析手段と、解析手段による
解析結果に基づいてロボットの動作制御やロボットの管
理に関する処理を行なう実行手段とを備えたものてあり
、本発明の第2のものはさらに、解析手段が第1の一時
記憶手段から読み出した命令は実行手段に転送して実行
させ、該命令の実行終了までは第1の一時記憶手段から
の命令の読み出しを中止し、解析手段が第2の一時記憶
手段から読み出した命令がロボットの動作に関する命令
又はロボット動作の完了を待って処理される命令であっ
たときには、これと同一の命令を含む情報を第1の一時
記憶手段に送出するようにしたものであり、また、本発
明の第3のものは、予め優先度を与えられた命令が人力
されると該命令を記憶する一時記憶手段と、命令の読み
出し又は参照にあたっての順位について命令を優先度の
高いものから並べ、また優先度の同じ命令については受
け取り順に並べる順序付は手段と、一時記憶手段からの
命令の読み出し又は参照を行なった後に解析する解析手
段と、解析手段の解析結果に基づいてロボットの動作制
御やロボットの管理に関する処理を行なう実行手解析手
段が、一時記憶手段に記憶された命令のうちその順位が
最先とされる命令を読み出して解析した後には該命令を
実行手段に転送して実行させ、命令の実行が終了する迄
は順位が最先の順位に繰り上がった次の命令の参照だけ
を行ない、該命令がロボット動作の完了を待つことなく
処理し得る命令である場合には解析手段が直ちに処理す
るか、あるいは実行手段に転送して実行させるようにし
たものであり、これらによって命令の有する性質に応じ
た実行処理を行なうこができるので処理の遅延や通信手
段の複雑化を招くことなく命令を効率的に処理すること
ができ、また、プログラミングミスによるデッドロック
の発生を防止することができる。
(B. Summary of the Invention) The first aspect of the present invention is to store information in the order in which it was received, upon receiving information including an instruction regarding a robot operation and/or an instruction to be processed after waiting for the completion of the robot operation. upon receiving information including a first temporary storage means for moving and instructions that can be processed without waiting for the completion of the robot motion;
a second temporary storage means that stores information in the order in which it is received; an analysis means that sequentially reads and analyzes information from the first temporary storage means and the second temporary storage means; The second aspect of the present invention further includes an execution means for performing processing related to robot motion control and robot management, and the second aspect of the present invention further includes a method for transmitting instructions read by the analysis means from the first temporary storage means to the execution means. The reading of the command from the first temporary storage means is stopped until the execution of the command is completed, and the command read from the second temporary storage means by the analysis means is a command related to robot movement or a robot movement instruction. When the instruction is to be processed after waiting for completion, information including the same instruction is sent to the first temporary storage means. A temporary storage means for storing instructions given a priority when they are manually input; a temporary storage means for storing the instructions; and a temporary storage means for arranging instructions from highest priority to highest priority for reading or referencing instructions; The ordering consists of a means, an analysis means that analyzes the instructions after reading or referencing them from the temporary storage means, and an execution method that performs processing related to robot operation control and robot management based on the analysis results of the analysis means. After the analysis means reads out and analyzes the instruction that is ranked first among the instructions stored in the temporary storage means, it transfers the instruction to the execution means and executes it, until the execution of the instruction is completed. The analysis means only refers to the next command that has been moved up to the highest rank, and if the command can be processed without waiting for the completion of the robot operation, the analysis means immediately processes it or the execution means These instructions allow execution processing to be carried out according to the nature of the instruction, so instructions can be processed efficiently without delaying processing or complicating communication means. It is also possible to prevent deadlocks due to programming errors.

(C,従来技術)[第11図、第12図コ(a、−膜内
背景) 産業用ロボットは、それ自身に備わる柔軟性により多品
種少量生産との相性がよく、近年種々の生産工程に広く
用いられるようになってきた。そして、これらのロボッ
トは、計算機のソフトウェア技術の向上によって、計算
機による統合生産システムの中で動作することが求めら
れるようになり、このためロボットの制御を行なう数値
制御装置には外部装置等との通信の為に通信ボートが設
置されるようになってきている。
(C, Prior Art) [Figures 11 and 12 (a, - background inside the membrane) Industrial robots are compatible with high-mix, low-volume production due to their inherent flexibility, and in recent years have been used in various production processes. It has come to be widely used. As computer software technology has improved, these robots are now required to operate within a computer-based integrated production system, and for this reason, the numerical control equipment that controls the robots is required to interact with external devices, etc. Communication boats are being installed for communication purposes.

(b、従来例)[第11図、第12図]第11図は複数
のロボットを通信によって制御するようにしたm個aを
示すものである。
(b, Conventional example) [Figs. 11 and 12] Fig. 11 shows m robots a in which a plurality of robots are controlled by communication.

bは中央計算機であり、ロボットc、c、・・・の各々
の制御の中枢をなすもので、該中央計算機す内に格納さ
れているロボット制御プログラムを逐次解析してロボッ
トの制御装置が理解できる言語で記述される動作命令に
変換した後、通信線d、d、・・・を介して各ロボット
制御装置e、e、・・・に伝達するようになっている。
b is a central computer, which is the center of control for each of the robots c, c, etc., and the robot control program stored in the central computer is sequentially analyzed to be understood by the robot control device. After converting the command into a motion command written in a language that can be used, the command is transmitted to each robot control device e, e, . . . via communication lines d, d, .

尚、ロボット制御装置e、e、・・からの情報は通信線
d′、d′、・・・を介して中央計算機すに送られる。
Note that information from the robot control devices e, e, . . . is sent to the central computer via communication lines d', d', .

ロボット制御装置eにおいては、中央計算機すから通信
線dを介して送られてくる命令が受信用インターフェー
スfによって通信上の物理的(電気的)レベルから論理
レベルに変換された後受信用バッファgに到着順に記憶
されていく。この受信用バッファgはrFirst−I
n、 First−Out J(以下、rF I FO
Jと言う。)形式であるため、その後段の命令解析部り
は命令を到着順にしか読み出すことかできないようにな
っている。
In the robot control device e, commands sent from the central computer via the communication line d are converted from the physical (electrical) level for communication to the logical level by the receiving interface f, and then sent to the receiving buffer g. are stored in the order of arrival. This reception buffer g is rFirst-I
n, First-Out J (hereinafter referred to as rF I FO
Say J. ) format, the subsequent instruction analysis section can only read instructions in the order in which they arrive.

そして、命令解析部りは後段の命令実行部iが理解でき
る程度にその命令内容を解析して具体的な実行方法を判
断し、命令実行部iに指示する。
Then, the instruction analysis section analyzes the contents of the instruction to the extent that the subsequent instruction execution section i can understand it, determines a specific execution method, and instructs the instruction execution section i.

すると、命令実行部iは指示された内容に従ってロボッ
ト制御用の信号を発生させてロボットCに送出する。
Then, the command execution unit i generates a robot control signal and sends it to the robot C according to the instructed content.

また、命令の内容によっては中央計算機すに送り返さね
ばならない情報があり、この場合には命令実行部iが送
信用インターフェースjを介して情報を通信線d′に乗
せて中央計算機すに返送する。尚、この種の命令として
は、例えば、ロボットの現在位置の報告命令や、サーボ
制御上のパラメータの報告命令等がある。
Further, depending on the content of the command, there may be information that must be sent back to the central computer, and in this case, the instruction execution unit i sends the information via the transmission interface j to the communication line d' and returns it to the central computer. Note that this type of command includes, for example, a command to report the current position of the robot, a command to report parameters for servo control, and the like.

第12図は近時広く用いられているコンピュータのL 
A N (LocalArea Network)技術
をロボット群の管理システムに応用した別の例kを示す
ものである。
Figure 12 shows the L of a computer that is widely used these days.
This is another example k in which the local area network (AN) technology is applied to a management system for a group of robots.

この例では、通信線℃が−の高速通信線を幹として共通
化され、各ロボット制御装置m、m、・・どの間の情報
伝達は通信線℃を分岐した接続形態(マルチドロップ)
の通信によってなされる。
In this example, the communication line ℃ is shared with the - high-speed communication line as the main trunk, and the information transmission between each robot control device m, m, etc. is a connection form where the communication line ℃ is branched (multi-drop).
This is done through communication.

つまり、中央計算機nはロボット0,0、・・・に対す
る命令をパケットとして通信線立上に送出する。パケッ
トには転送先の番地情報(つまり、命令をどのロボット
制御装置に送るか)が含まれているため、ロボット制御
装置m、m、・・・のプロトコルコントローラp、p、
  ・・・か、この情報を認識することによって所定の
パケットのみが選択される。
That is, the central computer n sends instructions to the robots 0, 0, . . . as packets over the communication line. Since the packet includes address information of the transfer destination (that is, which robot control device to send the command to), the protocol controllers p, p, of the robot control devices m, m, . . .
... or only predetermined packets are selected by recognizing this information.

よって、全てのパケットか各プロトコルコントローラp
、p、・・・に到達するにもかかわらず自らの番地に該
当しないパケットは廃棄され、結果として単一の通信線
℃のみであっても所望の転送先に命令が届けられること
になる。
Therefore, all packets or each protocol controller p
, p, . . . even though the packet does not correspond to its own address, it is discarded, and as a result, the command is delivered to the desired transfer destination even if there is only a single communication line °C.

そして、プロトコルコントローラp、p、・・・によっ
て受け取られた各ロボット毎の命令は受信用のFIFO
バッファq、q、・・・に到着順に記憶されて行く。F
IFOバッファq、q、・・に記憶された命令は先に到
着したものから読み出されて、命令解析部r、r、・・
・によってその内容が解析され、解析結果が後段の命令
実行部s、s、・・に送られる。
The commands for each robot received by the protocol controllers p, p, ... are stored in the FIFO for reception.
They are stored in buffers q, q, . . . in the order of arrival. F
The instructions stored in the IFO buffers q, q, ... are read out from the one that arrived first, and then sent to the instruction analysis section r, r, ...
The contents are analyzed by , and the analysis results are sent to the subsequent instruction execution units s, s, .

よって、命令実行部s、s、・・・は命令解析部r、r
、・・・の指示内容に従ってロボット制御用の信号を発
生させ、各々のロボット0.0、・・・に送出したり、
中央計算機nに送り返さねばならない情報はプロトコル
コントローラp、p、・・・を通してパケット化され、
転送先を中央計算機nに指定して送り返すようになって
いる。
Therefore, the instruction execution units s, s, ... are the instruction analysis units r, r
, . . . Generate robot control signals according to the instructions and send them to each robot 0.0, . . .
The information that has to be sent back to the central computer n is packetized through the protocol controllers p, p,...
The data is sent back by specifying the central computer n as the forwarding destination.

(D、発明か解決しようとする課題)[第13図、第1
4図] ところで、ロボット命令は大別してロボットの動作に直
接関係する命令と、ロボットの動作には直接関係せずシ
ステムの手続や管理等に関する命令に区分され、前者は
その実行終了に時間を要するが、後者は即時に実行し得
る性質のものである。
(D. Invention or problem to be solved) [Figure 13, 1
[Figure 4] By the way, robot commands can be broadly divided into commands that are directly related to the robot's movements and commands that are not directly related to the robot's movements but are related to system procedures and management. However, the latter is of a nature that can be executed immediately.

しかしながら、前述した例にあっては、このような命令
のもつ性質を区別せず、これらを同等に扱って処理して
いるため、例えば、ロボットの動作に係る命令の実行が
終了しない限り次の如何なる命令もその読み出しや実行
かなされないことになり、処理効率が低く資源を有効に
活用できないという問題や、プログラムジスによって複
数のプロセス間での資源競合が生じデッドロックの状態
に陥ってしまうといった問題かある。
However, in the example mentioned above, the characteristics of such commands are not differentiated and they are treated equally. Problems include problems such as low processing efficiency and inability to effectively utilize resources, as no instructions are read or executed, and problems such as resource contention between multiple processes due to program errors, resulting in a deadlock situation. There is.

例えは、−例として、システムを構成するロボットのう
ちの一つに異常が発生し、システム全体を停止させなけ
ればならないといった状況を想定する。
For example, assume a situation where an abnormality occurs in one of the robots that make up the system and the entire system must be stopped.

この場合、異常の発生を中央計算機が知るとそれによっ
て非常停止命令が発生され、通信によって各ロボット制
御装置のFIFOバッファ(g又はq)に送られる。
In this case, when the central computer learns of the occurrence of an abnormality, it generates an emergency stop command and sends it to the FIFO buffer (g or q) of each robot control device via communication.

第13図はFIFOバッファ内に到着順に記憶された命
令を概念的に示すもので、rCA、J(n=1.2、・
・・)はロボットの動作に係る命令を示し、「n」は到
着の順番を表わしており、また、rcEJは中央計算機
から送出された非常停止命令を示している。そして、矢
印「A」はFIFOバッファにおける命令の読み出し方
向を概念的に表わしている。
FIG. 13 conceptually shows instructions stored in the FIFO buffer in the order of arrival, rCA, J (n=1.2, .
) indicates a command related to robot operation, "n" indicates the order of arrival, and rcEJ indicates an emergency stop command sent from the central computer. Further, arrow "A" conceptually represents the reading direction of instructions in the FIFO buffer.

図示するようにFIFOバッファ(g又はq)内には命
令解析部(h又はr)によって未だ解析されていない命
令CAo (n=1.2、・・・)が残っているため、
非常停止命令CEはFIFOバッファの最後尾に配置さ
れ、該非常停止命令CEが命令解析部によって読み出さ
れ解析された後実行に移行されるためにはその前の命令
CAo (n=1.2、・・・)の実行を待たねばなら
ず、非常停止命令の意味がなくなってしまうという不都
合が生じる。
As shown in the figure, there remains an instruction CAo (n=1.2,...) in the FIFO buffer (g or q) that has not yet been analyzed by the instruction analysis unit (h or r).
The emergency stop instruction CE is placed at the end of the FIFO buffer, and after the emergency stop instruction CE is read and analyzed by the instruction analysis unit, the previous instruction CAo (n=1.2 , . . ), which causes the inconvenience that the emergency stop command becomes meaningless.

そこで、ロボット制御装置毎に非常停止信号のための独
立した入力端子を用意しておき、システムを構成する部
分に異常か発生したときに全体を停止させたい場合には
、その端子に非常停止信号を送出してロボットを非常停
止させるという方法がとられるが、これでは非常停止等
の管理内容をもつ命令系統を別系統の配線により組まな
ければならず、管理内容が多くなったり複雑化してくる
と配線系統の増加や信号の遅延等の問題が顕著になって
くる。
Therefore, prepare an independent input terminal for the emergency stop signal for each robot control device, and if you want to stop the entire system when an abnormality occurs in the parts that make up the system, input the emergency stop signal to that terminal. One method is to send out a command to make the robot come to an emergency stop, but this requires a separate system of wiring for the command system that handles the management of emergency stops, etc., which increases the number of management details and makes them more complex. Problems such as an increase in the number of wiring systems and signal delays become noticeable.

また、優先度付きパケットという考え方により命令に優
先度を与える方法もある。即ち、第14図に示すように
非常停止命令CEを他のいかなる命令よりも優先して処
理するように優先度を与えておき、FIFOバッファに
非常停止命令CEが入力されたときには時間的な順序関
係な無視して、非常停止命令CEをFIFOバッファの
先頭に強制的に挿入させる方法である。
There is also a method of giving priority to instructions based on the concept of prioritized packets. That is, as shown in FIG. 14, priority is given to the emergency stop command CE so that it is processed with priority over any other command, and when the emergency stop command CE is input to the FIFO buffer, the temporal order is This is a method of forcibly inserting the emergency stop command CE at the beginning of the FIFO buffer while ignoring the relevant information.

しかし、この方法によっても、ロボットかその前の命令
を実行している最中には命令解析部がFIFOバッファ
内の命令を読み出しに行かないため、現在実行中の命令
が終了する迄は非常停止がかからないといった問題か残
される。
However, even with this method, the instruction analysis unit does not read out the instructions in the FIFO buffer while the robot is executing the previous instruction, so the emergency stop will not occur until the currently executing instruction is finished. However, the problem remains that it does not take much time.

(E、課題を解決するための手段) そこで、本発明ロボットの数値制御装置は上記した課題
を解決するために、ロボットの動作に関する命令及び/
又はロボット動作の完了を待って処理される命令が含ま
れる情報を受けると、受け取った順に情報を記憶して行
く第1の一時記憶手段と、ロボット動作の完了を待つこ
となく処理し得る命令が含まれる情報を受けると、受け
取った順に情報を記憶して行く第2の一時記憶手段と、
第1の一時記憶手段や第2の一時記憶手段から情報を順
次読み出して解析する解析手段と、解析手段による解析
結果に基づいてロボットの動作制御やロボットの管理に
関する処理を行なう実行手段とを備えると共に、解析手
段が第1の一時記憶手段から読み出した命令は実行手段
に転送して実行させ、該命令の実行終了までは第1の一
時記憶手段からの命令の読み出しを中止し、解析手段が
第2の一時記憶手段から読み出した命令がロボットの動
作に関する命令又はロボット動作の完了を待って処理さ
れる命令であったときには、これと同一の命令を含む情
報を第1の一時記憶手段に送出するようにしたり、また
は、予め優先度を与えられた命令が入力されると該命令
を記憶する一時記憶手段と、命令の読み出し又は参照に
あたっての順位について命令を優先度の高いものから並
べ、また優先度の同じ命令については受け取り順に並べ
る順序付は手段と、一時記憶手段からの命令の読み出し
又は参照を行なった後に解析する解析手段と、解析手段
の解析結果に基づいてロボットの動作制御やロボットの
管理に関する処理を行なう実行手段とを設け、解析手段
が、一時記憶手段に記憶された命令のうちその順位が最
先とされる命令を読み出して解析した後には該命令を実
行手段に転送して実行させ、命令の実行が終了する迄は
順位が最先の順位に繰り上がった次の命令の参照だけを
行ない、該命令がロボット動作の完了を待つことなく処
理し得る命令である場合には解析手段が直ちに処理する
か、あるいは実行手段に転送して実行させるようにした
ものである。
(E. Means for Solving the Problems) Therefore, in order to solve the above-mentioned problems, the numerical control device for the robot of the present invention provides commands and/or commands related to robot operations.
Alternatively, upon receiving information including an instruction to be processed after waiting for the completion of the robot operation, the first temporary storage means stores the information in the order in which it was received, and the first temporary storage means includes an instruction that can be processed without waiting for the completion of the robot operation. a second temporary storage means that, upon receiving the included information, stores the information in the order in which it is received;
It includes an analysis means that sequentially reads and analyzes information from the first temporary storage means and the second temporary storage means, and an execution means that performs processing related to robot operation control and robot management based on the analysis results by the analysis means. At the same time, the instruction read by the analysis means from the first temporary storage means is transferred to the execution means for execution, and reading of the instruction from the first temporary storage means is stopped until the execution of the instruction is completed, and the analysis means When the command read from the second temporary storage means is a command related to robot movement or a command to be processed after waiting for the robot movement to complete, information containing the same command is sent to the first temporary storage means. or a temporary storage means for storing instructions given a priority in advance when they are input; and a temporary storage means for storing instructions given priority in advance; There is an ordering means for arranging instructions with the same priority in the order in which they are received, an analysis means for analyzing the instructions after reading or referencing them from the temporary storage means, and an analysis means for controlling the robot's motion and controlling the robot based on the analysis results of the analysis means. and an execution means for performing processing related to the management of the data, and after the analysis means reads out and analyzes the instruction that is ranked first among the instructions stored in the temporary storage means, the analysis means transfers the instruction to the execution means. Until the execution of the command is completed, the command only refers to the next command that has been moved up to the highest rank, and if the command can be processed without waiting for the completion of the robot operation, is processed immediately by the analysis means or transferred to the execution means for execution.

従って、本発明によれば、取り扱う命令を、処理に時間
を要する命令群と、即時に実行し得る命令群とに分けて
受け付け、命令を多重的に処理しているため、前者の命
令の実行中も後者の命令を直ちに処理することができる
ので効率的な処理が実現でき、また、プログラムくス等
によって誤った処理経路に乗せられた命令に対してはこ
れを本来の処理経路に乗せるように修正することによっ
てデッドロックの発生を防止し、安全性の向上を図るこ
とができる。
Therefore, according to the present invention, the instructions to be handled are divided into a group of instructions that require time to process and a group of instructions that can be executed immediately, and the instructions are processed multiplexed, so that the former instruction is executed. Since the latter instruction can be processed immediately, efficient processing can be achieved, and if the instruction is placed on the wrong processing path due to program corruption, it can be placed on the original processing path. By correcting this, it is possible to prevent deadlocks and improve safety.

(F、実施例)[第1図乃至第10図]以下に、本発明
ロボットの数値制御装置の詳細を図示した各実施例に従
って説明する。
(F. Embodiment) [FIGS. 1 to 10] Details of the numerical control device for the robot of the present invention will be described below according to the illustrated embodiments.

(F−1、第1の実施例)[第1図乃至第3図] 第1図乃至第3図は本発明ロボットの数値制御装置の第
1の実施例1を示すものである。
(F-1, First Embodiment) [Figs. 1 to 3] Figs. 1 to 3 show a first embodiment 1 of a numerical control device for a robot according to the present invention.

ロボットの数値制御装置1の基本構成を説明する前に、
先ず、ロボットシステムにおいて取り扱う命令の分類を
行なう。
Before explaining the basic configuration of the robot numerical control device 1,
First, we will classify the commands handled by the robot system.

ロボットシステムにおいては少なくとも以下に示すよう
な命令を取り扱う必要がある。
In a robot system, it is necessary to handle at least the following commands.

(1)ロボットの動作に直接かかわるロボットの動作命
令 (2)ロボットの現在位置を報告させるための現在位置
報告命令 (3)ロボットの内部状態を報告させるための状態報告
命令 (4)異常発生時にロボットを即時に停止させる非常停
止命令 (5)ロボットに接続された周辺機器を制御するための
周辺機器制御命令 (6)ロボットに接続された周辺機器の状態を報告させ
る周辺機器状態報告命令 ここで、これらの命令をその性質によって分類すると2
つに大別することができる。
(1) Robot movement commands that are directly related to the robot's movements (2) Current position report commands to report the robot's current position (3) Status report commands to report the robot's internal status (4) When an abnormality occurs Emergency stop command to immediately stop the robot (5) Peripheral device control command to control peripheral devices connected to the robot (6) Peripheral device status report command to report the status of peripheral devices connected to the robot Here , if these instructions are classified according to their properties, 2
It can be broadly divided into

その−は上記(1)のようなロボットの動作命令であり
、これは命令に対応した動作か開始してから動作が完了
する迄に比較的長い時間を要するものである。尚、ここ
でロボットの動作命令には、単にアームを2点間で移動
させるような単純な命令の他、一連の動作内容を−の命
令で代表するマクロ命令(例えば、物を掴んで搬送する
等)が含まれる。以下では(1)の命令を「ロボット動
作命令」と呼び、記号’CAn」 (添字nは命令の到
着順序を意味する序数)で表わすことにする。
The symbol (-) is a robot motion command as in (1) above, which requires a relatively long time from the start of the motion corresponding to the command to the completion of the motion. Note that the robot's operation commands include not only simple commands such as simply moving the arm between two points, but also macro commands that represent a series of motions with - commands (for example, grasping and transporting an object). etc.) are included. In the following, the command (1) will be referred to as a "robot operation command" and will be represented by the symbol 'CAn' (the subscript n is an ordinal number indicating the order of arrival of the commands).

また、他の命令(2)乃至(6)に関しては全て直ちに
実行が完了するものであり、これらを「即時実行命令」
と呼ぶことにする。
In addition, execution of all other instructions (2) to (6) is completed immediately, and these are called "immediate execution instructions".
I will call it.

即時実行命令に含まれる命令のうち(2)、(3)、(
4)の命令はシステムの管理に関係しており、(2)の
現在位置報告命令と(3)の状態報告命令は、中央計算
機がその報告を受けてその後のロボットの動作を変える
場合等の他にはロボットの動作等には直接的な影響を与
えない命令である。また、(4)の非常停止命令はその
性質上池の命令に対して最優先に処理を行なう必要のあ
る命令である。
Of the instructions included in the immediate execution instructions, (2), (3), (
Commands 4) are related to system management, and commands (2) to report the current position and (3) to report the status are used when the central computer receives the report and changes the robot's subsequent behavior. Other commands do not directly affect the robot's operations. Moreover, the emergency stop command (4) is a command that needs to be processed with the highest priority over the Ike command due to its nature.

以下では、これら命令(2)、(3)、(4)を−括し
て「ロボット管理命令」と呼び、記号「CMn」 (添
字nは命令の到着順序を意味する序数)て表わし、特に
非常停止命令は記号rcEJで表わすことにする。
In the following, these instructions (2), (3), and (4) will be collectively referred to as "robot management instructions" and will be expressed with the symbol "CMn" (the subscript n is an ordinal number indicating the order of arrival of the instructions). The emergency stop command will be represented by the symbol rcEJ.

また、命令(5)、(6)は周辺機器に関する命令であ
り、これらの命令をロボットの数値制御装置から周辺機
器に設定するという単発的な操作で済ませることかでき
、これによって直ちに命令の実行が終了する場合が多い
ため、これらは−数的に言って即時実行命令に含まれる
。というのはロボットの数値制御装置では一般に周辺機
器がボートを介して接続され、また、周辺機器自体もM
PUが設けられ多機能化が図られている場合が多くなっ
ているからである。
In addition, commands (5) and (6) are commands related to peripheral devices, and can be completed with a one-time operation of setting these commands from the robot's numerical control device to the peripheral devices, which allows immediate execution of the commands. Numerically speaking, these are included in the immediate execution instructions because they often end. This is because in a robot numerical control device, peripheral devices are generally connected via a boat, and the peripheral devices themselves are also connected to M
This is because more and more devices are equipped with a PU to provide multiple functions.

しかしながら、命令によっては制御に時間を要するもの
もあり得るが、この様な命令についてはロボット動作命
令と同等に取り扱い、その範嗜に含ませるようにすれば
良い。以下では、命令(5)、(6)を「ロボット周辺
命令」と呼び、記号’CPn」 (添字nは命令の到着
順序を意味する序数)で表わすことにする。
However, some commands may require time to control; however, such commands may be treated in the same manner as robot operation commands and included in the scope of such commands. In the following, instructions (5) and (6) will be referred to as "robot peripheral instructions" and will be represented by the symbol 'CPn' (the subscript n is an ordinal number indicating the order of arrival of the instructions).

以上の分類結果をまとめると、下記に示すようになる。The above classification results are summarized as shown below.

・ロボット動作命令・・・・CA。・Robot operation command...CA.

・即時実行命令 ・ロボット管理命令・・・CM。・Immediate execution command ・Robot management command...CM.

(非常停止命令・・・・CE) ・ロボット周辺命令・・・CPn (a、基本構成)[第1図、第2図コ 第1図はロボットの数値制御装置1の基本構成を示すも
のである。
(Emergency stop command...CE) - Robot peripheral command...CPn (a, basic configuration) [Figures 1 and 2] Figure 1 shows the basic configuration of the robot's numerical control device 1. be.

図中2.2、・・・はロボット制御部であり、通信線3
.3、・・・や3′、3′、・・・、そして4.4、・
・・を介して中央計算機5との間で情報のやりとりを行
なうようになっている。そして、ロボット制御部2.2
、・・・は中央計算機5からの命令に応した制御信号を
ロボット6.6、・・・に各々送出したり、周辺機器7
.7、・・・に制御信号を送出して各々の制御を行なう
ために設けられている。
2.2, . . . in the figure are robot control units, and communication lines 3
.. 3,..., 3', 3',..., and 4.4,...
Information is exchanged with the central computer 5 via... And robot control section 2.2
, . . . send control signals according to commands from the central computer 5 to the robots 6, 6, .
.. 7, . . . for controlling each of them by sending control signals to them.

ロボット制御部2は2つの一時記憶部8.8′を備えて
おり、第1の一時記憶部8は通信線3を介して命令を受
けとり、これを到着順に記憶し、また、第2の一時記憶
部8′は通信線3′を介して命令を受けとり、これをや
はり到着順に記憶す4るようになっている。
The robot control unit 2 is equipped with two temporary storage units 8.8', the first temporary storage unit 8 receives commands via the communication line 3 and stores them in the order of arrival, and the second temporary storage unit 8. The storage unit 8' receives commands via the communication line 3' and stores them in the order in which they arrive.

ここで、通信線には下記に示されるような取り決めによ
っである規則が定められている。
Here, certain rules are established for the communication line based on the agreement shown below.

規則(1) ・ロボット動作命令は第1の通信線3.3、・・のみに
よって伝送される。
Rule (1) - Robot motion commands are transmitted only through the first communication lines 3.3, .

規則(II) ・ロボット管理命令のうちロボット動作の終了を待って
処理する必要のある命令(例えは、ロボットの動作終了
状態に関する報告命令等)は第1の通信線3.3、・・
・によって伝送され、これ以外の即時実行命令は第2の
通信線3′、3′、・・・によって伝送される。
Rule (II) - Among the robot management commands, commands that need to be processed after waiting for the end of the robot operation (for example, a command to report on the robot operation completion state, etc.) are sent to the first communication line 3.3...
. . , and other immediate execution instructions are transmitted via second communication lines 3', 3', . . . .

このように各一時記憶部8.8′による命令の受け付け
には役割分担があり、第1の一時記憶部8内には原則的
にロボット動作命令かロボット管理命令の一部しか存在
せず、第2の一時記憶部8′内にはそれ以外の即時実行
命令か存在することになる。
In this way, there is a division of roles in the reception of commands by each temporary storage section 8, 8', and in principle only a part of the robot operation command or robot management command exists in the first temporary storage section 8. There are other immediate execution instructions in the second temporary storage section 8'.

9は解析部であり、一時記憶部8.8′の命令を先着順
に読み出して解析し、後段の実行部10が実行して得る
ように処理を行なった後実行部10に退出するようにな
っている。この解析部9においては、実行部10による
命令の実行中は、その命令を読み出した方の一時記憶部
内にある次の命令の読み出しを見合わせ、当該命令の実
行が終了したときに次の命令の読み出しを行なうように
なっている。但し、第2の一時記憶部8′からのロボッ
ト管理命令に関しては上記規則(■1)の後半の内容に
より即時実行命令であるため解析部9内で直ちに命令に
応した処理がなされる。例えば、ロボットの内部変数(
予め決められている点の座標等であり、以下、「ポイン
ト変数」という)やロボットの現在の状態を報告するだ
けの場合等には、通信線4を介して中央計算機5に報告
される。
Reference numeral 9 denotes an analysis section which reads out and analyzes the instructions in the temporary storage section 8.8' on a first-come, first-served basis, processes them so that the subsequent execution section 10 executes them, and then exits to the execution section 10. ing. In this analysis section 9, while the execution section 10 is executing an instruction, reading out the next instruction in the temporary storage section from which the instruction was read is suspended, and when the execution of the instruction is finished, the next instruction is read out. It is designed to read. However, since the robot management command from the second temporary storage section 8' is an immediate execution command according to the second half of the above rule (1), processing corresponding to the command is immediately performed in the analysis section 9. For example, the robot's internal variables (
If the coordinates of a predetermined point (hereinafter referred to as a "point variable") or the current state of the robot are simply to be reported, they are reported to the central computer 5 via the communication line 4.

実行部10は解析部9から送られてきた命令に応じて制
御信号を発生させてロボット6の動作や周辺機器7の制
御を行なったり、あるいはこれらの状態の報告に際して
状態値を通信線4によって中央計算機5に送り返すよう
になっている。尚、この実行部10は時分割処理により
同時に複数のIA埋ができるように構成されていること
が望ましい。
The execution unit 10 generates control signals in response to commands sent from the analysis unit 9 to control the movement of the robot 6 and peripheral devices 7, or sends status values via the communication line 4 when reporting these statuses. The data is sent back to the central computer 5. It is preferable that the execution unit 10 is configured so that multiple IAs can be filled at the same time by time-sharing processing.

しかして、ロボットの数値制御装置1の動作は、例えば
、第2図に示すように行なわれる。
Thus, the operation of the robot numerical control device 1 is performed as shown in FIG. 2, for example.

最初、一時記憶部8.8′には命令か記憶されておらず
、第2図(A)に示すように「空」の状態(記号「φ」
で表わす)であり、実行部10では如何なる命令も実行
していないものとする。
Initially, no instructions are stored in the temporary storage unit 8.8', and as shown in FIG.
), and it is assumed that the execution unit 10 is not executing any instructions.

この状態で、規則(1)に従って第1の通信線3を介し
てロボット動作命令CA、が第1の記憶部8に人力され
、続いてロボット動作命令CA2が第1の記憶部8に人
力されると(第2図(B)参照)、解析部9によって先
ずロボット動作命令CAIの内容が解析された後(第2
図(C)参照)実行部10に委ねられて当該命令が実行
される(第2図(D)参照)。
In this state, according to rule (1), the robot movement command CA is manually input to the first storage unit 8 via the first communication line 3, and then the robot movement command CA2 is manually input to the first storage unit 8. Then (see FIG. 2(B)), the analysis unit 9 first analyzes the contents of the robot movement command CAI (second
(See FIG. 2(C)) The execution unit 10 executes the instruction (see FIG. 2(D)).

この状態では第1の一時記憶部8内にどんな命令(例え
ば、CA、)が追加されても、これが即時に実行される
ことはない。
In this state, even if any command (eg, CA) is added to the first temporary storage unit 8, it will not be executed immediately.

しかし、第2の一時記憶部8′は未だ「空」の状態なの
で、規則(11)の後半の内容に従う即時実行命令、例
えは、ロボット管理命令のうちの非常停止命令CEが第
2の通信線3′を介して第2の一時記憶部8′に人力さ
れる(第2図(D)参照)。
However, since the second temporary storage unit 8' is still in an "empty" state, the immediate execution command according to the second half of rule (11), for example, the emergency stop command CE of the robot management commands, is sent to the second communication The data is manually input to the second temporary storage section 8' via the line 3' (see FIG. 2(D)).

すると、解析部9は即座にこの非常停止命令CEを読み
込んで実行部10がロボット動作命令CA1を実行中で
あるにもかかわらず実行部10に対して非常停止命令C
Eを臨時に実行するように要請し、これによって非常停
止命令CEが直ちに実行されて、システム全体が停止す
ることになる(第2図(E)参照)。
Then, the analysis unit 9 immediately reads this emergency stop command CE and issues an emergency stop command C to the execution unit 10 even though the execution unit 10 is currently executing the robot movement command CA1.
E is requested to be executed temporarily, and as a result, the emergency stop command CE is immediately executed and the entire system is stopped (see FIG. 2(E)).

以上のように通信線に関して規制(I)、(II)を定
立することによって、命令の性質を生かした処理、つま
り、郵便システムに例えると、第1の通信線3.3、・
・・が通信文(命令)の「配達」に時間を要する「通常
郵便」に相当し、第2の通信線3′、3′、・・・が所
謂「速達郵便」に相当すると考えることができ、これに
よって命令のIA埋を効率的に行なうことができる。ま
た、実行部10でのプツトロック発生の可能性が低減さ
れる。
By establishing regulations (I) and (II) regarding communication lines as described above, processing that takes advantage of the nature of commands is possible.In other words, if we compare it to a postal system, the first communication line 3.3.
... corresponds to "regular mail" which takes time to "deliver" the message (command), and the second communication lines 3', 3', ... correspond to so-called "express mail". This makes it possible to efficiently embed instructions in the IA. Furthermore, the possibility of a putlock occurring in the execution unit 10 is reduced.

(b、構成例)[第3図] 第3図はロボット制御部2の構成例を示すものであり、
第1の通信線3.3、・・・や第2の通信線3′、3′
、・・・に関して2つの独立したインターフェース(例
えば、R3−232C等)を用い、通信線4.4、・・
・には、これらとは別のインターフェースを用いた例を
示している。
(b. Configuration example) [Figure 3] Figure 3 shows a configuration example of the robot control section 2.
The first communication lines 3.3, . . . and the second communication lines 3', 3'
,... using two independent interfaces (e.g. R3-232C, etc.) for communication lines 4.4,...
- shows an example using an interface different from these.

図中11は通信用インターフェース部であり、受信用イ
ンターフェース12.12′や送信用インターフェース
13から構成されている。
In the figure, reference numeral 11 denotes a communication interface section, which is composed of reception interfaces 12, 12' and transmission interface 13.

12は規則(I)に係るロボット動作命令や規則(I+
 )の前半に係るロボット管理命令についての受信用イ
ンターフェースであり、該インターフェース12を通し
てロボット動作命令等が第1のFIFOバッファ14に
記憶される。この第1のFIFOバッファ14が上記第
1の一時記憶部8に対応している。
12 refers to robot operation commands and rules (I+) related to rule (I).
) is a receiving interface for robot management commands related to the first half of the interface 12, and robot operation commands and the like are stored in the first FIFO buffer 14 through the interface 12. This first FIFO buffer 14 corresponds to the first temporary storage section 8 .

12′は規則(I+)の後半に係る即時実行命令につい
ての受信用インターフェースであり、ロボット管理命令
の一部を除く即時実行命令がこのインターフェース12
′を通して第2のFIFOバッファ14′に記憶される
。この第2のFIF○バッファ14′か第2の一時記憶
部8′に対応している。尚、この第2のFIFOバッフ
ァ14は後述する補助解析部による命令が処理されてい
ないときには常に命令を受け付けることができる状態に
ある。
12' is a reception interface for immediate execution commands related to the latter half of rule (I+), and immediate execution commands other than some robot management commands are received through this interface 12.
' is stored in the second FIFO buffer 14'. This corresponds to the second FIF◯ buffer 14' or the second temporary storage section 8'. Note that this second FIFO buffer 14 is always in a state where it can receive instructions when an instruction is not being processed by the auxiliary analysis section, which will be described later.

解析部9は、第1のFIFOバッファ14の先頭から読
み出した命令を解析する主解析部15と、第2のFIF
Oバッファ14′の先頭から読み出した命令を解析する
補助解析部16とから構成されている。
The analysis unit 9 includes a main analysis unit 15 that analyzes instructions read from the beginning of the first FIFO buffer 14, and a second FIFO buffer 14.
It consists of an auxiliary analysis section 16 that analyzes instructions read from the beginning of the O buffer 14'.

尚、このように解析部9を2つの部分に分けて各々に役
割を分担させるということが必須という訳ではなく、こ
れらを−の解析部により実現するためにFIFOバッフ
ァ14.14′に関する時分割処理を行なうようにして
も良い。但し、第2のFIFOバッファ14′からロボ
ット管理塵令が読み出された場合において、それがロボ
ットの内部変数や状態の報告命令であったようなときに
は、それに対する情報を実行部10に送出することなく
送信用インターフェース13を介して中央計算機5に送
り返す。この処理は補助解析部(又はこれに対応した時
分割処理)のみによって行なわれるものであり、第1の
FIFOバッファ14内のロボット管理命令が解析部9
に読み出された場合にはそれがロボットの内部変数や状
態についての報告命令であっても実行部10に転送され
る。
It should be noted that it is not essential to divide the analysis section 9 into two parts and assign roles to each part in this way, but in order to realize these by the - analysis section, time sharing regarding the FIFO buffers 14 and 14' is necessary. Processing may also be performed. However, when a robot management command is read from the second FIFO buffer 14' and it is a command to report the internal variables or status of the robot, the corresponding information is sent to the execution unit 10. The data is sent back to the central computer 5 via the transmission interface 13 without any interruption. This processing is performed only by the auxiliary analysis section (or time-sharing processing corresponding thereto), and the robot management command in the first FIFO buffer 14 is executed by the analysis section 9.
If the command is read out, it is transferred to the execution unit 10 even if it is a report command regarding internal variables or states of the robot.

(c、作用) 上記したロボットの数値制御装置1にあっては取り扱う
命令の有する性質(つまり命令の処理に時間を要するか
、即時に実行し得るか)に着目し、命令の受け付は系統
に関する規則(I)、(I+)を定めて、これらの命令
を多重的に処理することができるのて、処理効率が向上
し、また、特別な信号線を付設する必要もない。
(c. Effect) In the robot numerical control device 1 described above, attention is paid to the characteristics of the commands handled (that is, whether it takes time to process the commands or whether they can be executed immediately), and the reception of commands is carried out in a systematic manner. By defining rules (I) and (I+) for these instructions, these instructions can be processed in a multiplex manner, improving processing efficiency and eliminating the need for special signal lines.

(F−2,第2の実施例)[第4図乃至第7図] 第4図乃至第7図は本発明ロボットの数値制御装置の第
2の実施例IAを示している。この第2の実施例IAに
おけるロボット制御部2Aが前記第1の実施例のロボッ
ト制御部2と相違するところは、第2のFIFOバッフ
ァにロボット動作命令が誤送された時の安全対策が施さ
れている点であり、従って、相違する部分を主に説明し
、相違しない部分については第1の実施例における同様
の部分に付した符号と同じ符号を付することによってそ
の説明を省略する。
(F-2, Second Embodiment) [Figs. 4 to 7] Figs. 4 to 7 show a second embodiment IA of a numerical control device for a robot according to the present invention. The robot control unit 2A in the second embodiment IA is different from the robot control unit 2 in the first embodiment in that a safety measure is taken in case a robot operation command is sent to the second FIFO buffer by mistake. Therefore, the different parts will be mainly explained, and the explanation of the same parts will be omitted by giving the same reference numerals as those given to the similar parts in the first embodiment.

(a、構成)[第4図] 規則(1)に係るロボット動作命令や規則(!I)の前
半に係るロボット管理命令は受信用インターフェース1
2を介して第1のFIFOバッファ14に到着順に格納
された後に主解析部15によって先着順に解析されて実
行部10にて実行され、規則(II)の後半に係る即時
実行命令は受信用インターフェース12′を介して第2
のFIFOバッファ14′に到着順に格納されて補助解
析部16Aによって先着順に解析されることは前記した
ロボット制御部2と同様であるが、補助解析部16Aは
命令の伝送に関する規則(1)、(II)の違反か生し
たときの例外的な処理を含んでいる点て異なってる。
(a, configuration) [Figure 4] Robot operation commands related to rule (1) and robot management commands related to the first half of rule (!I) are received through the receiving interface 1.
2, are stored in the first FIFO buffer 14 in the order of arrival, are analyzed by the main analysis unit 15 on a first-come-first-served basis, and are executed by the execution unit 10. 12' through the second
Similar to the robot control unit 2 described above, the auxiliary analysis unit 16A stores instructions in the FIFO buffer 14' in the order of arrival and analyzes them on a first-come, first-served basis, but the auxiliary analysis unit 16A follows the rules (1), The difference is that it includes exceptional processing when a violation of item II) occurs.

このような規則違反は中央計算機5におけるプログラミ
ング時にプログラマ−のミスによって発生じ得るもので
あり、このような状況に対して解析部9ては下記に示す
処理(a)、(b)が主解析部15によりなされ、処理
(c)、(d)が補助解析部16Aによってなされる。
Such rule violations can occur due to programmer's mistakes during programming in the central computer 5, and in response to such situations, the analysis section 9 performs the following processes (a) and (b) as the main analysis. The process (c) and (d) are performed by the auxiliary analysis unit 16A.

(a)第1のFIFOバッファ14から読み出した命令
は実行部10に転送して実行させる。
(a) The instruction read from the first FIFO buffer 14 is transferred to the execution unit 10 and executed.

(b)第1のFIFOバッファ14から読み出した命令
の実行終了までは第1の FIFOバッファ14からの命令の読み出しを中止する
(b) Stop reading instructions from the first FIFO buffer 14 until the execution of the instructions read from the first FIFO buffer 14 is completed.

(C)第2のFIFOバッファ14′から言売み出した
命令かロボット管理命令であった時には、実行部10に
転送して実行させる。但し、ロボット管理命令が単に内
部の状態やポイント変数を報告させるのみの命令である
場合には直接その状態を送信用インターフェース13を
介して中央計算機に送り返す。
(C) If the command is a command issued from the second FIFO buffer 14' or a robot management command, the command is transferred to the execution unit 10 and executed. However, if the robot management command is simply a command to report the internal state or point variables, the state is directly sent back to the central computer via the transmission interface 13.

(d)第2のFIFOバッファ14′から読み出した命
令がロボット動作命令であった時には、これと同一の情
報を第1の FIFOバッファ14に追記する。
(d) When the command read from the second FIFO buffer 14' is a robot operation command, the same information is additionally written to the first FIFO buffer 14.

(b、動作)[第5図] しかして、上記したロボット制御部2Aにおける処理は
、例えば、第5図に示すようにしてなされる。
(b. Operation) [Fig. 5] The above-described processing in the robot control section 2A is performed, for example, as shown in Fig. 5.

第5図(A)は命令の流れが規則(I)、(!■)に違
反しない場合を示している。即ち、0ボット動作命令C
A1、CA3は第1のFIFOバッファ14に到着順に
記憶された後主解析部15において解析され実行部10
に転送され、また、ロボット管理命令CM2は第2のF
IFOバッファ14′に記憶された後補助解析部16A
で解析されて実行部10に転送される。
FIG. 5(A) shows a case where the flow of instructions does not violate rules (I) and (!■). That is, 0 bot operation command C
After A1 and CA3 are stored in the first FIFO buffer 14 in the order of arrival, they are analyzed in the main analysis unit 15 and sent to the execution unit 10.
Also, the robot management command CM2 is transferred to the second F
After being stored in the IFO buffer 14', the auxiliary analysis section 16A
The data is analyzed and transferred to the execution unit 10.

m5図(B)は第1のFIF○バッファ14にロボット
動作命令CA、と、これに続いて規則(II)の前半に
係るロボット管理命令CM2が到着し、第2のFIFO
バッファ14′にロボット周辺命令CP3が到着したと
きの状況を示している。この場合には主解析部15がロ
ボット動作命令CA、の実行終了を待ってロボット管理
命令CM2を解析し、ロボット動作命令CA、の動作完
了後の状態に関しての報告が行なわれることになる。つ
まり、ロボット周辺命令CP3が即時実行命令であれば
規則(II)に違反はなく、補助解析部16Aで直ちに
解析されてそのまま実行部10に渡される。
Figure m5 (B) shows that the robot operation command CA arrives at the first FIF○ buffer 14, followed by the robot management command CM2 related to the first half of rule (II), and the second FIFO
This shows the situation when the robot peripheral command CP3 arrives at the buffer 14'. In this case, the main analysis unit 15 analyzes the robot management command CM2 after waiting for the completion of the robot action command CA, and reports on the state after the robot action command CA is completed. In other words, if the robot peripheral command CP3 is an immediate execution command, there is no violation of rule (II), and it is immediately analyzed by the auxiliary analysis unit 16A and passed to the execution unit 10 as is.

第5図(C)は規則(1)に違反が生した場合の一例を
示している。この様な状況は、例えは、中央計算機5か
ら命令を転送する際のプログラム主スによって惹き起さ
れる。
FIG. 5(C) shows an example where rule (1) is violated. Such a situation is caused, for example, by the program master when transferring instructions from the central computer 5.

第1のFIFOバッファ14内のロボット動作命令CA
、は主解析部15において解析されるが、補助解析部1
6Aが第2のFIFOバッファ14′内にロボット動作
命令CA2を見い出した場合には、これをそのまま第1
のFIFOバッファ14に転送する。
Robot operation command CA in the first FIFO buffer 14
, is analyzed in the main analysis section 15, but the auxiliary analysis section 1
If 6A finds the robot movement command CA2 in the second FIFO buffer 14', it will directly transfer it to the first FIFO buffer 14'.
The data is transferred to the FIFO buffer 14 of

これによって、ロボット動作命令CA2が補助解析部1
6Aから実行部10に転送されてしまい、主解析部15
、補助解析部16Aの双方が次の命令を受け付けること
ができなくなるというデッドロック状態が回避され、ま
たロボット動作命令CA2も破棄されることなく実行さ
れる。
As a result, the robot movement command CA2 is transmitted to the auxiliary analysis unit 1.
6A to the execution unit 10, and the main analysis unit 15
A deadlock situation in which both the auxiliary analysis section 16A and the auxiliary analysis section 16A are unable to accept the next command is avoided, and the robot operation command CA2 is also executed without being discarded.

こうして、規則違反を犯した命令CA2は第1のFIF
Oバッファ14に転送され、結局、第5図(D)に示す
ような状況となる。
In this way, the instruction CA2 that violates the rules is sent to the first FIF
The data is transferred to the O buffer 14, resulting in a situation as shown in FIG. 5(D).

尚、このような命令の転送によって命令の時間的な順序
関係が崩れる場合か生しる。しかし、これは実行部10
においてその整合性を意味論的に確認することで容易に
修復できる。例えば、点間の移動命令ては命令の連続性
が常に保たれることで判断することができる。点間移動
に関して命令の連続性が保たれるのはこの命令かマクロ
命令で定義されていて、ある意味をもつ一連の動作(例
えば、P丁P動作によるPick&PIace動作等)
がつの命令として記述されているような場合であり、こ
の場合命令同士の時間的な関係が逆になっていると予定
した動作がなされないことが容易に判断できる。
Note that such transfer of instructions may disrupt the temporal order of the instructions. However, this is the execution part 10
It can be easily repaired by semantically checking its consistency. For example, a command to move between points can be determined by ensuring that the continuity of the command is always maintained. The continuity of instructions regarding point-to-point movement is defined by this instruction or a macro instruction, and is a series of operations that have a certain meaning (for example, Pick & PIace operation by P-P operation, etc.)
This is a case where the commands are written as two commands, and in this case, if the temporal relationship between the commands is reversed, it can be easily determined that the planned action will not be performed.

(c、変形例)[第6図、第7図] 第6図は通信手段としてLANを使用した場合における
安全対策の一例17を示している。
(c, Modification) [Figs. 6 and 7] Fig. 6 shows an example 17 of safety measures when a LAN is used as a communication means.

図中18.18′は通信規約に関するプロトコルコント
ローラであり、LAN19上を流れるパケットのうち自
分宛であると認識したものを取り込んでFIFOバッフ
ァ14.14′に送出するようになっている。即ち、規
則(1)に係るロボット動作命令や規則(I+)に係る
ロボット管理命令を含むパケットがプロトコルコントロ
ーラ18によって認識され、そのデータ部に含まれる命
令が取り出されて第1のFIFOバッファ14に順次記
憶されて行く。そして、主解析部15は第1のFIFO
バッファ14内の命令を先頭のものから読み出して解析
した後実行部10に引き渡す。また、規則(I+ )の
後半に係る即時実行命令を含むパケットがプロトコルコ
ントローラ18′により認識されて命令が取り出され、
第2のFIFOバッファ14′に順次記憶され、その後
補助解析部16Bによって先着順に読み出されて解析さ
れることになる。
In the figure, reference numeral 18.18' denotes a protocol controller related to communication rules, which captures packets that are recognized as being addressed to itself from among the packets flowing on the LAN 19, and sends them to the FIFO buffer 14.14'. That is, the packet containing the robot operation command according to rule (1) and the robot management command according to rule (I+) is recognized by the protocol controller 18, and the command included in the data part is extracted and stored in the first FIFO buffer 14. They are memorized sequentially. The main analysis unit 15 then uses the first FIFO
The instructions in the buffer 14 are read out from the beginning, analyzed, and then passed to the execution unit 10. Further, the packet containing the immediate execution command according to the second half of the rule (I+) is recognized by the protocol controller 18', and the command is extracted.
The data are sequentially stored in the second FIFO buffer 14', and then read out and analyzed by the auxiliary analysis unit 16B on a first-come, first-served basis.

解析部9ては主解析部15により前記した処理(a)、
(b)が同様に行なわれる他、下記に記すfi埋が補助
解析部16Bにより行なわれる。
The analysis unit 9 performs the above-described processing (a) by the main analysis unit 15,
(b) is performed in the same manner, and the fi filling described below is also performed by the auxiliary analysis section 16B.

(C′)第2のFIFOバッファ14′から3売み出し
た命令がロボット管理命令で あった時には実行部10に転送して実 行させる。但し、ロボット管理命令が 単に内部の状態やポイント変数を報告 するたけの命令である場合には、当該 命令を送り付けてきた中央計算機5の 特定のユニットに宛てて状態値を送り 返すためにプロトコルコントローラ 20を介して該状態値をパケット化し てLAN19上に乗せる。
(C') When the third command issued from the second FIFO buffer 14' is a robot management command, it is transferred to the execution unit 10 and executed. However, if the robot management command is simply a command to report internal status or point variables, the protocol controller 20 is sent back to the specific unit of the central computer 5 that sent the command. The state value is packetized and placed on the LAN 19 via the LAN 19.

(d′)第2のFIFOバッファ14′から読み出した
命令がロボット動作命令で あった時にはJプロトコルコントロー ラ20を介してこれと同一の情報をパ ケット化し、その送り先としてプロト コルコントローラ18を指定して LAN19上に乗せる。
(d') When the command read from the second FIFO buffer 14' is a robot movement command, the same information is packetized via the J protocol controller 20, the protocol controller 18 is designated as the destination, and the LAN 19 is put it on top.

しかして、この例では規則違反によって、例えへぼ、第
2のFIFOバッファ14′にロボット動作命令が送ら
れれてきたときには、該ロボット動作命令は補助解析部
16Bの処理(d′)によって再びLAN19上を流れ
た後プロトコルコントローラ18により確認され、第1
のFIFOバッファ14に転送されることになので、補
助解析部16Bから第1のFIFOバッファ14への特
別な転送線は不要となる。
In this example, if a robot movement command is sent to the second FIFO buffer 14' due to a rule violation, the robot movement command is sent back to the LAN 19 by the process (d') of the auxiliary analysis section 16B. is confirmed by the protocol controller 18, and the first
Therefore, a special transfer line from the auxiliary analysis unit 16B to the first FIFO buffer 14 is not required.

第7図は非常停止に関する安全対策を施した別の例21
を示すものであり、プロトコルコントローラ18の後段
に非常停止命令CEを検出する非常停止命令検出部22
が設けられている。
Figure 7 is another example 21 with safety measures regarding emergency stop.
The emergency stop command detection unit 22 that detects the emergency stop command CE is installed after the protocol controller 18.
is provided.

プロトコルコントローラ18の出力段で非常停止命令C
Eが検出されるということは規則(11)の違反が生し
たことを意味し、この場合には非常停止命令CEを第2
のFIFOバッファ14′に送り込むためにその送り先
としてプロトコルコントローラ18′を指定し、プロト
コルコントローラ20を介してLAN19上に乗せる。
Emergency stop command C at the output stage of the protocol controller 18
Detection of E means that a violation of rule (11) has occurred, and in this case, the second emergency stop command CE is issued.
In order to send the data to the FIFO buffer 14', the protocol controller 18' is specified as the destination, and the data is placed on the LAN 19 via the protocol controller 20.

このように非常停止命令検出部22によって非常停止命
令以外の命令が第1のFIFOバッファ14に送出され
ることになる。
In this way, the emergency stop command detection unit 22 sends commands other than the emergency stop command to the first FIFO buffer 14.

尚、上記した2つの例17.21において規則(I+)
に違反するロボット管理命令が第1のFIFOバッファ
14に受け付けられた場合に、これを第2のFIFOバ
ッファ14′に転送するようにしない理由は、ロボット
管理命令にはロボットの位置情報を獲得する際に現在の
ロボットの位置等の瞬時情報が必要な場合と、ロボット
プログラム内で使用する位置情報の獲得のように定の動
作終了を待ってそのときのロボットの位置等、結果情報
が必要とされる場合があるため、プロトコルコントロー
ラ18の出力段で検出されたロボット管理命令を単に第
2のFIFOバッファ14′に移送したたけては不都合
を生しる慣れかあるからである。このためにユーザーは
プログラムによってロボット管理命令の伝送先を個々に
変えることができ、機能選択の余地が残されることにな
る。
Furthermore, in the above two examples 17.21, the rule (I+)
If a robot management command that violates In some cases, instantaneous information such as the current position of the robot is required, and in other cases, result information such as the robot's position at that time is required after waiting for the end of a certain operation, such as acquiring position information to be used in a robot program. This is because simply transferring the robot management command detected at the output stage of the protocol controller 18 to the second FIFO buffer 14' may cause problems. For this reason, users can individually change the destination of robot management commands using a program, leaving room for functional selection.

(F−3,第3の実施例)[第8図乃至第10図] 第8図乃至第10図は本発明ロボットの数値制御装置の
第3の実施例IBを示すものである。
(F-3, Third Embodiment) [FIGS. 8 to 10] FIGS. 8 to 10 show a third embodiment IB of a numerical control device for a robot according to the present invention.

(a、構成)[第8図、第9図コ 23は書き込み/順序制御部であり、図示しない中央計
算機等からの命令が人力されると命令記憶部241  
(i=1.2.3.4)のうち空いている命令記憶部2
4.のいずれかに書き込む。
(a, Configuration) [Figures 8 and 9 23 is a write/order control unit, and when an instruction from a central computer, etc. (not shown) is input manually, the instruction storage unit 241
(i=1.2.3.4) vacant instruction storage section 2
4. Write to either.

25は順序記憶部であり、第8図に概念的に示すように
「■」〜「■」は命令の読み出し順序を表わしており、
各々に対応した命令の記憶位置(つまり、と゛の命令記
憶部に命令か格納されてし)るか)を記憶する位置記憶
部25A1  (i=1.2.3.4)と、命令の優先
度を記憶するための優先度記憶部25B、(i=1.2
.3.4)とを有しており、書き込み/順序制御部23
からの命令記憶位置や命令の優先度に関する情報が該当
する位置記憶部25A+、優先度記憶部25Bに各々記
憶され、また、優先度や命令の到着順に応した並べ換え
か行なわれるようになっている。
25 is an order storage unit, and as conceptually shown in FIG. 8, "■" to "■" represent the order of reading instructions;
A location storage section 25A1 (i=1.2.3.4) that stores the storage location of the corresponding instruction (that is, whether the instruction is stored in the instruction storage section) and the priority of the instruction. Priority storage unit 25B for storing (i=1.2
.. 3.4), and has a write/order control unit 23
Information regarding the instruction storage location and the priority of the instructions is stored in the corresponding location storage section 25A+ and priority storage section 25B, respectively, and rearrangement is performed according to the priority and the order of arrival of the instructions. .

命令記憶部24.はいずれもFIFO形式のものてはな
く、記憶された命令の「読み出し」や「参照」かでき、
命令に優先度を与えることができるような性質を有する
ものである。ここで、「読み出し」とは命令記憶部24
□から命令を取り出した時に該命令記憶部24.を空き
状態にして別の命令の書き込みを可能にし、更に、順序
記憶部25の第1順位(■)に対応した位置記憶部25
A1や優先度記憶部25B1に記憶されている記憶位置
や優先度の情報を消去した後第2順位(■)以降の情報
の順位を繰り上げるのに対し、「参照」は単に命令記憶
部24□から命令を取り出すのみであり、命令記憶部2
4+を空き状態にしたり順序記憶部25における情報の
順位は繰り上げない。命令記憶部24.にFIFO形式
のものを用いない理由は、FIFOバッファの先頭に位
置する情報の「読み出し」はできるが、「参照」かでき
ず、また情報に優先度をもたせることができずFIFO
バッファ内部での情報の順序を変更することかてきない
からである。
Instruction storage unit 24. None of these are FIFO format, and can only read or refer to stored instructions.
It has the property of being able to give priority to commands. Here, "reading" refers to the instruction storage unit 24.
When an instruction is retrieved from □, the instruction storage unit 24. The position storage section 25 corresponding to the first order (■) of the order storage section 25 is made vacant so that another instruction can be written.
After erasing the storage location and priority information stored in A1 and the priority storage unit 25B1, the information from the second rank (■) onwards is moved up, whereas “reference” is simply a command storage unit 24□ It only takes out instructions from the instruction storage unit 2.
4+ is not made vacant, and the order of information in the order storage unit 25 is not moved up. Instruction storage unit 24. The reason why FIFO format is not used is that although it is possible to "read" the information located at the beginning of the FIFO buffer, it can only be "referenced" and it is not possible to give priority to the information.
This is because the only thing that can be done is to change the order of information within the buffer.

書き込み/順序制御部23ては下記に示す処理(A)乃
至(C)が行なわれる。
The write/order control unit 23 performs the following processes (A) to (C).

(A)入力された命令を空いている命令記憶部241の
いずれかに書き込む。
(A) Write the input instruction into any of the vacant instruction storage units 241.

(B)命令記憶部24ムに書き込まれた命令かロボット
動作命令である場合には命令を書き込んだ命令記憶部2
4+の位置情報を順序記憶部25における順位のうち最
後の順位に対応した位置記憶部25 A Iに書き込む
(B) If the command is a command written in the command storage unit 24 or a robot movement command, the command storage unit 2 in which the command is written
The position information of 4+ is written into the position storage unit 25 A I corresponding to the last rank among the ranks in the order storage unit 25 .

(C)命令記憶部241に書き込んだ命令がロボット動
作命令以外の場合には、該命令が書き込まれた命令記憶
部241の位置情報を、その命令のもつ優先度と同じ優
先度の命令の中て一番最後の順位に位置する位置記憶部
25A、に書き込む。そのとき位置記憶部25A+ に
他の命令記憶部の位置情報か既に書き込まれていた時に
はこれらの記憶位置や優先度の情報の順位をひとつずつ
繰り下げる。
(C) If the command written in the command storage unit 241 is other than a robot movement command, the position information of the command storage unit 241 where the command is written is stored in the command with the same priority as that command. and writes it into the position storage section 25A located at the last rank. At this time, if position information of other instruction storage units has already been written to the position storage unit 25A+, the ranking of these storage positions and priority information is lowered one by one.

即ち、上記した処理(B、 )、(C)の内容を簡単に
言えば、原則的には優先度順に並へ、優先度の同じもの
については到着順に並べるということであり、第9図に
示す連結鎖の概念を用いて説明することができる。
In other words, to put it simply, the contents of the above-mentioned processes (B, This can be explained using the concept of a connecting chain shown in the figure.

第9図ては命令をA、B、C,D、Eで表わし、各命令
のもつ優先度を記号「0−」に続く数字で表わす(数字
が小さい方が優先度が高い)ものとし、左側に位置され
る命令から先に読み出されるものとすると、第9図(A
)に示すように左から順に命令(八)j 、CB)j 
、(C)jという具合に命令が連なっているときに、命
令(D)−3が入力されたときには該命令(Dj3は命
令(C) 2の後に連結するという内容が処理(B)に
対応している。
In Figure 9, instructions are represented by A, B, C, D, and E, and the priority of each instruction is represented by a number following the symbol "0-" (the smaller the number, the higher the priority). Assuming that the instructions located on the left side are read out first, FIG. 9 (A
), from left to right, the instructions (8)j, CB)j
, (C)j, and when instruction (D)-3 is input, the content that the instruction (Dj3 is concatenated after instruction (C) 2) corresponds to process (B). are doing.

つまり、ロボット動作命令CA、は優先度が最も低くさ
れているため、連結鎖の最後尾に繋るということである
In other words, since the robot operation command CA has the lowest priority, it is connected to the end of the chain.

また、処理(C)の前半の内容は命令のもつ優先度が同
じ場合には到着順に連なるということであり、第9図(
B)に示すように左から順に命令が (A )−1、(
C) 2 、(E) 2と連なっている場合に命令(F
)−2か到着すると、その優先度2と同じ優先度をもつ
 (C) 2、(E) 2のうちの最後に位置する(E
) 2の後ろに連結するということに対応している。
In addition, the content of the first half of process (C) is that if the instructions have the same priority, they are consecutively arranged in the order of arrival, as shown in Figure 9 (
As shown in B), the instructions from the left are (A)-1, (
C) 2 and (E) 2, the command (F
)-2 arrives, it has the same priority as 2 and is located at the end of (C) 2 and (E) 2.
) This corresponds to concatenation after 2.

そして、処理(C)の後半の内容は命令のもつ優先度に
従って割り込みか行なわれる場合であり、第9図(C)
に示すように左から順に命令が(A)1、(B) 1 
、  (C) 2 というように連なっている場合に命
令(G)1か到着すると、該命令(6)lが処理(C)
における前半の内容に従って命令(Bjlの後ろにつこ
うとするが、命令(B) 1の後ろには既に命令(C)
 2が連なっているため、命令(G) lが命令(B)
jと(C)−2との連結を切ってその間に割り込ませ、
命令(C)2の読み出し順位をひとつずらして命令(G
) 1の右方に位置させる(第9図(D)参照)ような
操作に対応している。
The second half of the process (C) is a case where an interrupt is performed according to the priority of the instruction, as shown in FIG. 9(C).
As shown in the figure, the commands are (A) 1, (B) 1 from the left.
, (C) 2 When instruction (G)1 arrives, the instruction (6)l is processed (C)
According to the contents of the first half of the command (Bjl), there is already a command (C) after the command (Bjl).
Since 2 is consecutive, command (G) l is command (B)
Cut the connection between j and (C)-2 and insert it between them,
The read order of instruction (C) 2 is shifted by one and instruction (G
) This corresponds to an operation such as positioning it to the right of 1 (see FIG. 9(D)).

26は読み出し/参照部であり、解析部27からの要求
に応じて順序記憶部25において「第1順位」 (■)
に位置する命令の「読み出し」や「参照」を行なって命
令を解析部27に転送する。即ち、読み出し/参照部2
6は「第1順位」の位置記憶部25A1に記憶された位
置情報を取り出して、これに対応した命令記憶部24.
に記憶されている命令の「読み出し」や「参照」を行う
ことになる。
Reference numeral 26 denotes a reading/reference section, which reads the "first rank" (■) in the order storage section 25 in response to a request from the analysis section 27.
The instruction located at is “read” or “referenced” and the instruction is transferred to the analysis unit 27. That is, the reading/reference section 2
6 takes out the position information stored in the "first rank" position storage section 25A1 and stores the corresponding command storage section 24.6.
"Reading" and "referencing" the instructions stored in .

その後解析部27において下記に示す処理がなされる。Thereafter, the analysis section 27 performs the following processing.

(a)読み出し/参照部26から「読み出し」た命令は
実行部28に転送して実行させる。
(a) The instructions "read" from the read/reference section 26 are transferred to the execution section 28 and executed.

(b)読み出し/参照部26から「読み出し」た命令の
実行が終了する迄は読み出し/参照部26からの命令の
「読み出し」を中止する。
(b) "Reading" of the instruction from the reading/reference section 26 is stopped until the execution of the instruction "read" from the reading/reference section 26 is completed.

(e)読み出し/参照部26の読み出しが中止されてい
る間は「参照」のみを行ない、第1順位の命令がロボッ
ト管理命令で あった時には命令を命令記憶部24.から実行部28に
強制的に転送して実行させる。
(e) While reading from the read/reference section 26 is stopped, only "reference" is performed, and when the first order command is a robot management command, the command is sent to the command storage section 24. The data is forcibly transferred to the execution unit 28 and executed.

但し、ロボット管理命令が単に内部の 状態等を報告する命令である場合には実行部28に移送
することなく命令を送り付けた中央計算機の特定のユニ
ットに結果としての状態値を送り返す。
However, if the robot management command is simply a command to report the internal state, etc., the resulting state value is sent back to the specific unit of the central computer that sent the command without being transferred to the execution unit 28.

(b、動作)[第10図コ しかして、上記ロボットの数値制御装置IBの動作は、
例えば、第10図に示すように行なわれる。
(b. Operation) [Figure 10] However, the operation of the numerical controller IB of the robot is as follows:
For example, this is carried out as shown in FIG.

尚、以下の説明では一例として各命令の優先度を下表の
ように定義する。
In the following explanation, the priority of each instruction is defined as shown in the table below as an example.

上表中口ボット管理命令に関する優先度は2又は3の2
通りに選択できるようにされているが、これは前述した
ようにロボット管理命令に含まれる報告命令にはロボッ
トの瞬時情報についての命令と、ロボット動作終了後に
おける結果情報についての命令があるためであり、前者
に関する優先度としては2か与えられ、後者に関する優
先度には3が与えられる。
The priority for Nakaguchi bot management commands in the table above is 2 or 3-2.
This is because, as mentioned above, the report commands included in the robot management commands include commands for instantaneous robot information and commands for result information after the robot operation is completed. Yes, 2 is given as the priority for the former, and 3 is given as the priority for the latter.

第10図(A)ではロボット動作命令CA、に続いてロ
ボット管理命令(0M2) 3が書き込み/順序制御部
23に到着したところを示している。
FIG. 10(A) shows the robot management command (0M2) 3 arriving at the write/sequence control unit 23 following the robot operation command CA.

このときには命令記憶部24.はすべて「空」の状態(
記号「φ」で表わす)であり何らの情報も存在しない。
At this time, the instruction storage unit 24. are all “empty” (
(represented by the symbol "φ") and no information exists.

その後、処理(A)に従って、到着した命令CA、が、
例えは、第10図(B)に示すように命令記憶部241
に記憶され、次の命令(0M2)jが命令記憶部242
に記憶されたとすると、順序記憶部25において、第1
順位の位置記憶部25A1には、命令CA、が記憶され
ている命令記憶部241の位置が記憶され、第1順位の
優先度記憶部25B、には命令CA、の優先度3が記憶
される。また、処理(C)に従っては命令記憶部25A
2には、命令(0M2) Jが記憶された命令記憶部2
42の位置が記憶され、第2順位の優先度記憶部25B
2には命令(0M2) ”の優先度3が記憶される。
After that, according to process (A), the instruction CA that arrived is
For example, as shown in FIG. 10(B), the instruction storage unit 241
The next instruction (0M2)j is stored in the instruction storage section 242.
If the first
The ranking position storage unit 25A1 stores the position of the command storage unit 241 where the instruction CA is stored, and the first priority storage unit 25B stores priority 3 of the instruction CA. . Further, according to the process (C), the instruction storage unit 25A
2 is an instruction storage unit 2 in which an instruction (0M2) J is stored.
42 positions are stored in the second priority storage unit 25B.
2 stores the priority level 3 of the instruction (0M2).

このようにロボット管理命令(0M2) 3の優先度が
ロボット動作命令CA、の優先度と同じ値「3」をもっ
ているため処理(C)の前半部の内容に従ってその順位
か到着順に処理される。
In this way, since the priority of the robot management command (0M2) 3 has the same value "3" as the priority of the robot operation command CA, the robot management commands (0M2) are processed in that order or in the order of arrival according to the contents of the first half of the process (C).

次に、第10図(C)に示すように読み出し/参照部2
6が第1順位の命令を読み出す前に口ポット管理命令(
CM3) 2が書き込み/順序制御部23に到着した場
合を想定する。
Next, as shown in FIG. 10(C), the reading/reference section 2
Before 6 reads the first order command, the mouth pot management command (
Assume that CM3) 2 arrives at the write/order control unit 23.

この時には処理手順(C)に基づいて優先度の高い命令
(CM3) 2が第1順位に位置付けられ、他の命令に
関しては順位がひとつずつ繰り下げられることになる。
At this time, the instruction (CM3) 2 with a high priority is placed in the first order based on the processing procedure (C), and the orders of other instructions are lowered one by one.

その後、読み出し/参照部26によってロボット動作命
令CA、か読み出されて解析され実行部28に移された
場合を想定する。
It is now assumed that the read/reference unit 26 reads out the robot motion command CA, analyzes it, and transfers it to the execution unit 28.

命令の実行中は前述したように解析部27は処理(b)
に従って命令の「読み出し」を中止し、「参照」のみを
行なう。つまり、実行部28が命令を実行中であっても
命令記憶部24.や順序記憶部25が独立して動作して
いる限り、その後の到着した高い優先度の命令を「第1
順位」 (■)に位置させることかできるので、これを
参照することは命令の実行中も随時可能である。よって
解析部27だけで処理することのできるロボット管理命
令等は即時に処理され、遅延が生しるようなことはない
While the instruction is being executed, the analysis unit 27 performs the process (b) as described above.
Accordingly, "reading" of the instruction is stopped and only "referencing" is performed. In other words, even if the execution unit 28 is executing an instruction, the instruction storage unit 24. As long as the order storage unit 25 operates independently, subsequent high-priority instructions that arrive will be assigned the
Since the command can be placed in the "rank" (■) position, it can be referenced at any time during the execution of the instruction. Therefore, robot management commands and the like that can be processed only by the analysis section 27 are processed immediately, and no delay occurs.

第10図(D)は、第10図(C)に示した状態におい
てロボット管理命令(CM4)−2が書き込み/順序制
御部23に到着した場合を示すもので、命令(CM4)
jは命令記憶部244に記憶され、順序記憶部25の処
理に関しては「同優先度では後着命令を最後に位置させ
る」という手順に従って第2順位に位置付けられる。
FIG. 10(D) shows a case where the robot management command (CM4)-2 arrives at the write/sequence control unit 23 in the state shown in FIG. 10(C).
j is stored in the instruction storage unit 244, and in terms of processing in the order storage unit 25, it is placed in the second order according to the procedure of ``with the same priority, the later arriving instruction is placed last''.

また、第10図(C)の状態て非常停止命令CEが到着
した場合には、第10図(E)に示すように非常停止命
令CEの優先度が最も高い(’i)ので、「第1順位」
 (■)に位置付けられ、命令の実行中でも解析部27
がこれを参照して解析し実行部28に割り込みをかけて
非常停止命令CEを実行させる。これによって、非常停
止が延滞なく行なわれることになる。
Furthermore, when the emergency stop command CE arrives in the state shown in FIG. 10(C), the emergency stop command CE has the highest priority ('i) as shown in FIG. 10(E), so the 1st place”
The analysis unit 27 is positioned as (■) even when an instruction is being executed.
refers to this, analyzes it, and issues an interrupt to the execution unit 28 to execute the emergency stop command CE. As a result, the emergency stop will be performed without delay.

尚、上記した例IBでは命令記憶部24.の数を4個と
したが、この数は多いほどシステムの柔軟性は高まり、
また、命令に関する優先度の与え方としてはより高次の
値を割り付けることによって、より詳細な処理を展開す
ることかできる。
Note that in the above example IB, the instruction storage unit 24. The number of is set to 4, but the higher the number, the more flexible the system becomes.
Furthermore, by assigning higher-order values to instructions, more detailed processing can be developed.

(c、作用) 上記ロボットの数値制御装置IBによれは、命令の種類
に応した優先度を命令毎に定義しておくと共に、一時記
憶部24□に対して読み出し機能の他、参照や並べ替え
を行なうことがてきるような機能を付加しているので、
これらによって前述した規則(1)や(I+)と等価な
処理が実現できる。
(c. Effect) The numerical control device IB of the robot has a priority level corresponding to the type of command defined for each command, and also has a reading function for the temporary storage unit 24□, as well as a reference and sorting function. We have added a function that allows you to change the
With these, processing equivalent to the rules (1) and (I+) described above can be realized.

(G 発明の効果) 以上に記載したところから明らかなように、本発明の第
1のものは、ロボットの動作に関する命令及び/又はロ
ボット動作の完了を待ってlA理される命令が含まれる
情報を受けると、受け取った順に情報を記憶して行く第
1の一時記憶手段と、ロボット動作の完了を待つことな
く処理し得る命令が含まれる情報を受けると、受け取っ
た順に情報を記憶して行く第2の2時記憶手段と、第1
の時記憶手段や第2の一時記憶手段から情報を順次読み
出して解析する解析手段と、解析手段による解析結果に
基づいてロボットの動作制御やロボットの管理に関する
処理を行なう実行手段とを備えたことを特徴とし、第2
のものは上記構成においてさらに、解析手段が第1の一
時記憶手段から読み出した命令は実行手段に転送して実
行させ、該命令の実行終了までは第1の一時記憶手段か
らの命令の読み出しを中止し、解析手段が第2の一時記
憶手段から読み出した命令がロボッ1〜の動作に関する
命令又はロボット動作の完了を待って処理される命令で
あったときには、これと同一の命令を含む情報を第1の
一時記憶手段に送出するようにしたことを特徴とし、ま
た、第3のものは、予め優先度を与えられた命令か入力
されると該命令を記憶する一時記憶手段と、命令の読み
出し又は参照にあたっての順位について命令を優先度の
高いものから並べ、また優先度の同じ命令については受
け取り順に並べる順序付は手段と、一時記憶手段からの
命令の読み出し又は参照を行なった後に解析する角q行
手段と、解析手段の解析結果に基づいてロボットの動作
制御やロボットの管理に関する処理を行なう実行手段と
を備えたロボットの数値制御装置てあって、解析手段が
、一時記憶手段に記憶された命令のうちその順位が最先
とされる命令を読み出して解析した後には該命令を実行
手段に転送して実行させ、命令の実行が終了する迄は順
位か最先の順位に繰り上がった次の命令の参照だけを行
ない、該命令がロボット動作の完了を待つことなく処理
し得る命令である場合には解析手段が直ちに処理するか
、あるいは実行手段に転送して実行させるようにしたこ
とを特徴とする。
(G. Effects of the Invention) As is clear from the above description, the first aspect of the present invention is information containing instructions related to robot motion and/or instructions to be processed after the robot motion is completed. a first temporary storage means that stores information in the order in which it was received when the robot receives a command; a second 2 o'clock storage means;
The present invention comprises an analysis means for sequentially reading and analyzing information from the storage means and the second temporary storage means, and an execution means for performing processing related to robot operation control and robot management based on the analysis results by the analysis means. The second
In the above configuration, the instruction read by the analysis means from the first temporary storage means is further transferred to the execution means for execution, and the instruction is not read from the first temporary storage means until the execution of the instruction is completed. If the command read out from the second temporary storage means by the analysis means is a command related to the movement of the robot 1~ or a command to be processed after waiting for the completion of the robot movement, information containing the same command is read out from the second temporary storage means. The third one is characterized in that the instructions are sent to the first temporary storage means, and the third one stores the instructions given a priority in advance. Regarding the order of reading or reference, instructions are arranged from highest priority to higher priority, and instructions with the same priority are arranged in the order of reception, and the ordering is performed after the instructions are read or referenced from the temporary storage means and then analyzed. A numerical control device for a robot comprising an angle q row means and an execution means for performing processing related to robot motion control and robot management based on the analysis result of the analysis means, wherein the analysis means stores data in the temporary storage means. After reading and analyzing the instruction whose rank is the highest among the executed instructions, the command is transferred to the execution means and executed, and the command is moved up to the highest rank until the execution of the command is completed. The analysis means only refers to the next command, and if the command can be processed without waiting for the completion of the robot operation, the analysis means immediately processes it or transfers it to the execution means for execution. It is characterized by

従って、これらによれば、取り扱う命令を、処理に時間
を要する命令群と、即時に実行し得る命令群とに分りて
受け付け、命令を多重的に処理しているため、前者の命
令の実行中も後者の命令を直ちに処理することができる
ので効率的な処理が実現でき、また、プログラムミス等
によって誤った処理経路に乗せられた命令に対してはこ
れを本来の処理経路に乗せるように修正することによっ
てデッドロックの発生を防止し、安全性の向上を図るこ
とかできる。
Therefore, according to these, the instructions to be handled are divided into a group of instructions that require time to process and a group of instructions that can be executed immediately, and since the instructions are processed multiplexed, the former instruction is being executed. Since the latter instruction can be processed immediately, efficient processing can be achieved, and if an instruction is placed on the wrong processing path due to a programming error, it can be corrected to be placed on the original processing path. By doing so, it is possible to prevent deadlocks from occurring and improve safety.

【図面の簡単な説明】[Brief explanation of drawings]

第1図乃至第3図は本発明ロボットの数値制御装置の第
1の実施例を示しており、第1図は基本構成を示すブロ
ック図、第2図は処理手順の一例を(A)から(E)に
順を追って概念的に示す説明図、第3図は構成例を示す
ブロック図、第4図乃至第7図は本発明ロボットの数値
制御装置の第2の実施例を示すものであり、第4図はブ
ロック図、第5図は処理手順の一例を(A)乃至(D)
に概念的に示す説明図、第6図はLANを用いたシステ
ムに適用した例を示すブロック図、第7図は非常停止命
令に関する安全対策を施した例を示すブロック図、第8
図乃至第10図は本発明ロボットの数値制御装置の第3
の実施例を示すもので、第8図は構成を示すブロック図
、第9図は命令の順序付けについての概念的な説明図、
第10図は処理手順の一例を(A)乃至(E)に概念的
に示す説明図、第11図は従来のロボットの数値制御装
置の一例を示すブロック図、第12図は別の従来例を示
すブロック図、第13図は問題点を説明するための図、
第14図は命令に優先度を与えた例について説明するた
めの図である。 符号の説明 1・・・ロボットの数値制御装置、 6・ ・ ・ロボット、 8・・・第1の一時記憶手段、 8′・・・第2の一時記憶手段、 9・・・解析手段、  10・・・実行手段、14・・
・第1の一時記憶手段、 14′・・・第2の一時記憶手段、 IA・・・ロボットの数値制御装置、 21・・・ロボットの数値制御装置、 1B・・・ロボットの数値制御装置、 23.25・・・順序付り手段、 241  (i=1.2.3.4)・・・一時記憶手段
、 5 26. 27 ・ ・解析手段、 28 ・ ・実行手段 出 願 人 ソ  ニ 株 式 %式%
1 to 3 show a first embodiment of a numerical control device for a robot according to the present invention, FIG. 1 is a block diagram showing the basic configuration, and FIG. 2 shows an example of the processing procedure from (A) to (E) is an explanatory diagram conceptually shown sequentially, FIG. 3 is a block diagram showing a configuration example, and FIGS. 4 to 7 show a second embodiment of the numerical control device for the robot of the present invention. Yes, Fig. 4 is a block diagram, and Fig. 5 shows an example of the processing procedure (A) to (D).
6 is a block diagram showing an example of application to a system using LAN, FIG. 7 is a block diagram showing an example of safety measures regarding emergency stop commands, and FIG.
Figures 10 to 10 show the third part of the numerical control device for the robot of the present invention.
Fig. 8 is a block diagram showing the configuration, Fig. 9 is a conceptual explanatory diagram of the ordering of instructions,
Fig. 10 is an explanatory diagram conceptually showing an example of a processing procedure in (A) to (E), Fig. 11 is a block diagram showing an example of a conventional robot numerical control device, and Fig. 12 is another conventional example. 13 is a block diagram showing the problem,
FIG. 14 is a diagram for explaining an example in which priorities are given to commands. Explanation of symbols 1... Robot numerical control device, 6... Robot, 8... First temporary storage means, 8'... Second temporary storage means, 9... Analysis means, 10 ...Execution means, 14...
- First temporary storage means, 14'... Second temporary storage means, IA... Numerical control device for robot, 21... Numerical control device for robot, 1B... Numerical control device for robot, 23.25...Ordering means, 241 (i=1.2.3.4)...Temporary storage means, 5 26. 27. ・Analysis means, 28. ・Execution means Applicant Sony stock% formula%

Claims (3)

【特許請求の範囲】[Claims] (1)ロボットの動作に関する命令及び/又はロボット
動作の完了を待って処理される命令が含まれる情報を受
けると、受け取った順に情報を記憶して行く第1の一時
記憶手段と、ロボット動作の完了を待つことなく処理し
得る命令が含まれる情報を受けると、受け取った順に情
報を記憶して行く第2の一時記憶手段と、第1の一時記
憶手段や第2の一時記憶手段から情報を順次読み出して
解析する解析手段と、解析手段による解析結果に基づい
てロボットの動作制御やロボットの管理に関する処理を
行なう実行手段とを備えたことを特徴とするロボットの
数値制御装置
(1) When receiving information including instructions related to robot motion and/or instructions to be processed after waiting for the completion of robot motion, a first temporary storage means stores the information in the order in which it is received; When receiving information including instructions that can be processed without waiting for completion, the second temporary storage means stores the information in the order in which it was received, and the second temporary storage means stores the information from the first temporary storage means and the second temporary storage means. A numerical control device for a robot, characterized in that it is equipped with an analysis means for sequentially reading and analyzing, and an execution means for performing processing related to robot motion control and robot management based on the analysis results by the analysis means.
(2)解析手段が第1の一時記憶手段から読み出した命
令は実行手段に転送して実行させ、該命令の実行終了ま
では第1の一時記憶手段からの命令の読み出しを中止し
、 解析手段が第2の一時記憶手段から読み出した命令がロ
ボットの動作に関する命令又はロボット動作の完了を待
って処理される命令であったときには、これと同一の命
令を含む情報を第1の一時記憶手段に送出するようにし
たことを特徴とする特許請求の範囲第1項記載のロボッ
トの数値制御装置
(2) The instruction read by the analysis means from the first temporary storage means is transferred to the execution means for execution, and the reading of the instruction from the first temporary storage means is stopped until the execution of the instruction is completed, and the analysis means When the instruction read from the second temporary storage means is an instruction related to robot movement or an instruction to be processed after waiting for the completion of robot movement, information containing the same instruction is stored in the first temporary storage means. A numerical control device for a robot according to claim 1, characterized in that the device is configured to send out data.
(3)予め優先度を与えられた命令が入力されると該命
令を記憶する一時記憶手段と、 命令の読み出し又は参照にあたっての順位について命令
を優先度の高いものから並べ、また優先度の同じ命令に
ついては受け取り順に並べる順序付け手段と、 一時記憶手段からの命令の読み出し又は参照を行なった
後に解析する解析手段と、解析手段の解析結果に基づい
てロボットの動作制御やロボットの管理に関する処理を
行なう実行手段とを備えたロボットの数値制御装置であ
って、 解析手段が、一時記憶手段に記憶された命令のうちその
順位が最先とされる命令を読み出して解析した後には該
命令を実行手段に転送して実行させ、命令の実行が終了
する迄は順位が最先の順位に繰り上がった次の命令の参
照だけを行ない、該命令がロボット動作の完了を待つこ
となく処理し得る命令である場合には解析手段が直ちに
処理するか、あるいは実行手段に転送して実行させるよ
うにしたことを特徴とするロボットの数値制御装置
(3) Temporary storage means for storing instructions given a priority in advance when they are input, and a means for arranging instructions from highest priority to highest priority when reading or referencing instructions, and a temporary storage means for storing instructions given a priority in advance, and a means for arranging commands from highest priority to lowest priority when reading or referencing the commands, an ordering means for arranging the commands in the order in which they are received; an analysis means for reading or referencing the commands from the temporary storage means and then analyzing them; and processing related to robot operation control and robot management based on the analysis results of the analysis means. A numerical control device for a robot comprising an execution means, wherein the analysis means reads out and analyzes the instruction whose order is the highest among the instructions stored in the temporary storage means, and then the execution means executes the instruction. The command is forwarded to the robot and executed, and until the execution of the command is completed, the command only refers to the next command that has been moved up to the highest rank, and the command is a command that can be processed without waiting for the robot operation to complete. A numerical control device for a robot, characterized in that, in some cases, the analysis means immediately processes the processing or transfers the processing to the execution means for execution.
JP32167989A 1989-12-12 1989-12-12 Numeric controller of robot Pending JPH03182908A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32167989A JPH03182908A (en) 1989-12-12 1989-12-12 Numeric controller of robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32167989A JPH03182908A (en) 1989-12-12 1989-12-12 Numeric controller of robot

Publications (1)

Publication Number Publication Date
JPH03182908A true JPH03182908A (en) 1991-08-08

Family

ID=18135211

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32167989A Pending JPH03182908A (en) 1989-12-12 1989-12-12 Numeric controller of robot

Country Status (1)

Country Link
JP (1) JPH03182908A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2722137A2 (en) 2012-10-22 2014-04-23 Kabushiki Kaisha Yaskawa Denki Robot controller and robot system that use waiting queues for controlling groups of robots
CN114932555A (en) * 2022-06-14 2022-08-23 如你所视(北京)科技有限公司 Mechanical arm cooperative operation system and mechanical arm control method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2722137A2 (en) 2012-10-22 2014-04-23 Kabushiki Kaisha Yaskawa Denki Robot controller and robot system that use waiting queues for controlling groups of robots
US8892254B2 (en) 2012-10-22 2014-11-18 Kabushiki Kaisha Yaskawa Denki Robot controller and robot system
CN114932555A (en) * 2022-06-14 2022-08-23 如你所视(北京)科技有限公司 Mechanical arm cooperative operation system and mechanical arm control method
CN114932555B (en) * 2022-06-14 2024-01-05 如你所视(北京)科技有限公司 Mechanical arm collaborative operation system and mechanical arm control method

Similar Documents

Publication Publication Date Title
US5933347A (en) Industrial controller with program synchronized updating of back-up controller
US5153884A (en) Intelligent network interface circuit
US5912814A (en) Redundant multitasking industrial controllers synchronized data tables
US5513368A (en) Computer I/O adapters for programmably varying states of peripheral devices without interfering with central processor operations
US4642758A (en) File transfer scheduling arrangement
US5963448A (en) Industrial controller having redundancy and using connected messaging and connection identifiers to enable rapid switchover without requiring new connections to be opened or closed at switchover
US5513345A (en) Searching system for determining alternative routes during failure in a network of links and nodes
JPH04215158A (en) Data transfer control method and interface system
US11843529B2 (en) Slave-to-master data and out-of-sequence acknowledgements on a daisy-chained bus
US11128571B2 (en) Communication system, communication apparatus, and communication method
US5619647A (en) System for multiplexing prioritized virtual channels onto physical channels where higher priority virtual will pre-empt a lower priority virtual or a lower priority will wait
GB2064920A (en) Industrial communications network
US5627745A (en) Parallel processing in a multitasking industrial controller
JP4154853B2 (en) A redundant programmable controller and an equalization method for equalizing control data.
CN113179227B (en) AT instruction control method based on queue
GB2146816A (en) Shared data logger controller and method
KR920004771B1 (en) Bus flow control mechanism
JPH03182908A (en) Numeric controller of robot
US5737626A (en) Deterministic communication network for industrial control
CN113965432B (en) Control system for two-channel CAN bus communication
US20220209985A1 (en) Data transmission method, segment telegram and automation communication network
JPS6362002A (en) Control system for cooperation of plural robots
CN114513383A (en) Real-time Ethernet field bus data packet processing method based on original socket
EP4113952A1 (en) Improved congestion handling in time sensitive networks through coordination between network segments
JPS59146347A (en) Communication system between processes