JPH0492902A - Controller for automatic assembly device - Google Patents

Controller for automatic assembly device

Info

Publication number
JPH0492902A
JPH0492902A JP2206785A JP20678590A JPH0492902A JP H0492902 A JPH0492902 A JP H0492902A JP 2206785 A JP2206785 A JP 2206785A JP 20678590 A JP20678590 A JP 20678590A JP H0492902 A JPH0492902 A JP H0492902A
Authority
JP
Japan
Prior art keywords
program
robot
task
command
programs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2206785A
Other languages
Japanese (ja)
Other versions
JP2954294B2 (en
Inventor
Toshihiro Yamamoto
敏弘 山本
Yusaku Azuma
雄策 我妻
Masateru Yasuhara
正輝 安原
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2206785A priority Critical patent/JP2954294B2/en
Publication of JPH0492902A publication Critical patent/JPH0492902A/en
Application granted granted Critical
Publication of JP2954294B2 publication Critical patent/JP2954294B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

PURPOSE:To provide a single interpolation program and a single execution means by separately providing a robot operation procedure program controlling a robot and an operation procedure program controlling a supply part supplying work to the robot. CONSTITUTION:CPU 102, RAM 104 storing a series of teaching points which store a series of the operation programs storing a series of operation programs in which the sequence of the operation of respective parts is described and an operation position and ROM 103 storing programs interpolating and editing the operation program and editing a teaching point are provided for a main control part 101. Only one mode program is prepared for respective processing programs 131-136 executing plural operation programs. A multi-task OS 130 causes the processing program to process the necessary operating program and issues an instruction to respective control parts of respective parts controlling the constituent units of the robots or a parts supply device.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、ロボット等とこのロボットに所定の組立ワー
クを供給する物品供給装置よりなる自動組立装置を制御
する自動組立制御装置に関するものである。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention relates to an automatic assembly control device that controls an automatic assembly device that includes a robot or the like and an article supply device that supplies a predetermined assembly work to the robot. .

[従来の技術] 従来、かかる構成の自動組立装置の制御装置は、ロボッ
トおよび供給部に対して各々独立動作を行なわせるため
に、各々個別に制御装置を必要としていた。
[Prior Art] Conventionally, a control device for an automatic assembly apparatus having such a configuration required a separate control device for each of the robot and the supply section in order to cause them to perform independent operations.

[発明が解決しようとしている課題] かかる従来例においては、各制御装置は、各々個別に、
動作プログラム及びティーチングポイント格納用のRA
M、処理プログラム、命令解釈部を格納するROM (
またはRAM)、前記処理プログラムを実行するための
CPUを持っている。
[Problems to be Solved by the Invention] In such conventional examples, each control device individually
RA for storing operation programs and teaching points
M, ROM that stores the processing program and instruction interpreter (
or RAM), and a CPU for executing the processing program.

そのために、各制御装置毎にCPU、RAM、ROMが
必要となりコスト高の要因になっていた。
Therefore, a CPU, RAM, and ROM are required for each control device, which is a cause of high costs.

また、このために、バージョンアップやシステムの変更
に際して、融通性のきかないものであった。
Moreover, for this reason, there is no flexibility when upgrading or changing the system.

本発明のこのような従来技術の問題点を解消するために
提案されたもので、その目的は、ロボットを制御するロ
ボット動作手順プログラムとそのロボットにワークを供
給する供給部を制御する動作手順プログラムとを別個に
設けつつも、これらの動作手順プログラムを解釈する解
釈プログラム及び実行する手段を単一化した制御装置を
提案するものである。
The present invention was proposed in order to solve the problems of the prior art, and its purpose is to provide a robot operation procedure program for controlling a robot and an operation procedure program for controlling a supply unit that supplies workpieces to the robot. The present invention proposes a control device that integrates an interpretation program for interpreting these operating procedure programs and a means for executing them, although these are provided separately.

[課題を解決するための手段及び作用]上記課題を達成
するための本発明の構成は、組付作業を行なうロボット
と、該ロボットにロボットが要求するワークを供給する
物品供給部より成る自動組立装置を制御するための制御
装置であって、上記ロボット及び物品供給部の各々の動
作手順を記述する夫々の動作手順プログラムを記憶する
第1の記憶手段と、上記動作手順プログラムための各々
個別のデータ部分を記憶する第2の記憶手段と、上記ロ
ボット及び物品供給部のための夫々のプログラムを解釈
する1つの解釈プログラムを記憶し、この解釈プログラ
ムを上記動作手順プログラム毎のデータ部分を用いるこ
とにより、これらの動作手順プログラムをリエントラン
ト方式で実行する実行手段とを具備することを特徴とす
る。
[Means and operations for solving the problems] The structure of the present invention for achieving the above problems is an automatic assembly system comprising a robot that performs assembly work and an article supply section that supplies the robot with workpieces required by the robot. A control device for controlling the device, comprising: a first storage means for storing operation procedure programs describing the operation procedures of each of the robot and the article supply section; and a first storage means for storing respective operation procedure programs for each of the operation procedure programs; a second storage means for storing a data portion; and one interpretation program for interpreting the respective programs for the robot and article supply section, and this interpretation program uses the data portion for each of the operation procedure programs. Accordingly, the present invention is characterized by comprising an execution means for executing these operating procedure programs in a reentrant manner.

解釈プログラムをリエントラント方式にすることにより
、解釈プログラム及び実行手段の単一化が図れる。
By making the interpretation program reentrant, the interpretation program and execution means can be unified.

以下余白 [実施例] 以下添付図面を参照しながら、本発明の制御装置を、ロ
ボット、ストッカー、エレベータ、バッファ装置からな
る自動組立装置に適用した実施例に基づいて説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS [Embodiments] Hereinafter, referring to the accompanying drawings, a control device of the present invention will be described based on an embodiment in which the control device of the present invention is applied to an automatic assembly device consisting of a robot, a stocker, an elevator, and a buffer device.

〈自動組立装置の概略〉 第1図はこの実施例の自動組立装置の全景図である。本
装置は大きく分類すると、先端部にワークを把持をする
フィンガー8をもつ組立用ロボット1と、このロボット
1にワークをイ共糸合するストッカ一部13と、ストッ
カー13内のパレットを交換するエレベータ部14と、
外部よりパレットを受は入れ一部蓄えておき、所定のパ
レットをエレベータ14に供給するバッファ部16より
構成されている。
<Outline of automatic assembly apparatus> FIG. 1 is a panoramic view of the automatic assembly apparatus of this embodiment. Broadly speaking, this device can be divided into an assembly robot 1 having fingers 8 at its tip for gripping a workpiece, a stocker part 13 for threading the workpieces onto the robot 1, and a pallet exchanger in the stocker 13. Elevator section 14;
It is comprised of a buffer section 16 that receives pallets from the outside, partially stores them, and supplies predetermined pallets to the elevator 14.

ロボット1は、本実施例では一例として、4自由度をも
つ直交型で、本装置の架台18上にX軸ベース2をロボ
ット支持部19により固定されている。Y軸フレーム2
4はX軸ベース2にそって位置決め可能に、ロボットX
軸モーク3により移動可能となっている。25はz−8
部であって、ロボットY軸モータ4によりY軸フレーム
24に沿って所定の位置へ移動可能となっている。前記
X軸方向とY軸方向は互いに直交している。2−8部5
はZ−Sガイド26(第2図)を有し、Z軸のモータ6
により上下に移動し、ロボットS軸モータ7により前記
Z軸を中心軸として回転可能となっている。
In this embodiment, the robot 1 is, for example, an orthogonal type having four degrees of freedom, and has an X-axis base 2 fixed to a pedestal 18 of the apparatus by a robot support 19. Y-axis frame 2
4 is a robot X that can be positioned along the X-axis base 2.
It is movable by the shaft moke 3. 25 is z-8
The robot can be moved to a predetermined position along a Y-axis frame 24 by a robot Y-axis motor 4. The X-axis direction and the Y-axis direction are orthogonal to each other. 2-8 part 5
has a Z-S guide 26 (Fig. 2), and a Z-axis motor 6
The robot can be moved up and down by the robot S-axis motor 7 and can be rotated about the Z-axis as the central axis.

フィンガー8はワークな把持可能であり、自動的に着脱
可能となっている。ロボットに装着されているフィンガ
ー8は、フィンガーラック9に係止されている他のフィ
ンガーと自動交換可能となってる。ロボット1は、引出
し部12に引出されたところのワークを収納したパレッ
ト10より所定のワークを把持し、また組付治具11上
へ移動し、また組付作業が可能なように制御装置100
により制御される。
The fingers 8 can grip a workpiece and can be automatically attached and detached. The finger 8 mounted on the robot can be automatically replaced with another finger held on the finger rack 9. The robot 1 grasps a predetermined workpiece from a pallet 10 that stores the workpieces that have been pulled out to the drawer section 12, moves onto the assembly jig 11, and controls the control device 100 so that the robot 1 can perform assembly work.
controlled by

ストッカー13は内部に複数のパレットを分離した状態
で格納する。ストッカー13の本体は全体が不図示のモ
ータにより上下されて、所定の位置で停止するようにな
っている。停止した位置において、引出し部12の位置
にパレットが引出される。ロボット1が、パレット内の
ワークをつかんだ状態で少し上昇すると、そのパレット
はストッカー13の棚内に戻される。そして、次にロボ
ットが必要なパレットをロボットに供給するように、ス
トッカー全体が上下する。かくして、ストッカーは、次
にロボットが必要なパレットを、ロボットが組付動作を
行なっている間に、交換のための準備することが可能と
なっている。また、ストッカーは上下の方向に移動する
為、ストッカ内のパレットの必要なワークをランダムに
ロボットに供給することが可能である。
The stocker 13 stores a plurality of pallets in a separated state. The entire main body of the stocker 13 is moved up and down by a motor (not shown) and is stopped at a predetermined position. At the stopped position, the pallet is pulled out to the position of the drawer section 12. When the robot 1 rises a little while grasping the workpiece in the pallet, the pallet is returned to the shelf of the stocker 13. The entire stocker then moves up and down so that the next robot can feed it with the pallet it needs. Thus, the stocker is able to prepare the next pallet needed by the robot for replacement while the robot is performing the assembly operation. Furthermore, since the stocker moves in the vertical direction, it is possible to randomly supply the necessary workpieces on the pallets in the stocker to the robot.

エレベータ部においては、エレベータ14がエレベータ
モータ15により上下に移動可能となっている。エレベ
ータ14には、バッファ部16よりパレットを引込む手
段と、該パレットをストッカー13内の所定の棚位置に
押し込むパレット押し込み手段と、ストッカー13内の
ワークが空となったパレットを引出してエレベータ14
に保持させる空パレツト引出し手段とを備えている。ま
た、エレベータ14はパレットを上下に2段保持可能と
なっている。これにより、バッファ部16から所定のパ
レットを引出して保持し、ストッカー13内の交換すべ
き空パレットを引出した後に、この引出した位置に前記
保持したパレットを押し込むという動作を、引出し部1
2にパレットが引き出されてロボットによりワークが取
られ、再度このパレットがストッカー内に押し戻される
間に、並行して行なうようになっている。
In the elevator section, an elevator 14 can be moved up and down by an elevator motor 15. The elevator 14 includes a means for pulling in a pallet from the buffer section 16, a pallet pushing means for pushing the pallet into a predetermined shelf position in the stocker 13, and a means for pulling out the pallet from which the workpieces in the stocker 13 are empty and moving it to the elevator 14.
and an empty pallet drawer means for holding the empty pallet. Further, the elevator 14 is capable of holding pallets in two stages, upper and lower. As a result, the operation of pulling out and holding a predetermined pallet from the buffer section 16, pulling out an empty pallet to be replaced in the stocker 13, and then pushing the held pallet into the pulled out position is performed by the drawer section 16.
In step 2, the pallet is pulled out, the robot picks up the workpiece, and the pallet is pushed back into the stocker again, all in parallel.

エレベータ14が、バッファ部16よりパレットを引込
むという動作を開始するのは、ストッカー13内のパレ
ット内のワークの残数が1゛となった場合である。この
ような、残数がO”となる前にかかる準備動作を行なう
ことにより、ロボットの組付動作を滞らせることな(、
空のパレットを新たなワークの詰ったパレットと交換す
ることが可能である。
The elevator 14 starts pulling a pallet from the buffer section 16 when the number of works remaining on the pallet in the stocker 13 reaches 1. By performing such preparatory operations before the remaining number reaches O'', the assembly operation of the robot will not be delayed.
It is possible to exchange an empty pallet with a new one full of workpieces.

バッファ部16は、外部からワークのつまったパレット
を複数量は入れ、これらを−時的に段積み状態(非分離
状態)で貯蔵しておく。そして、任意のパレットを、2
1.22の2つの分離爪と上下可能なバッファ台26に
より分離状態とすることが可能となっている。
The buffer section 16 receives a plurality of pallets filled with workpieces from the outside and temporarily stores them in a stacked state (non-separated state). Then, select any palette as 2
The two separating claws of 1.22 and the buffer table 26 which can be raised and lowered make it possible to separate the parts.

このように本自動組立装置は、大きく分類して4つの構
成部、即ちロボット部、ストッカ一部。
In this way, this automatic assembly device can be broadly classified into four components: the robot section and the stocker section.

エレベータ部、バッファ部がお互いに調停をとりながら
ロボットの組付動作を滞らせることなく、独立して動作
を行なうことが不可欠で、前述の動作を制御しているの
が制御装置100である。
It is essential that the elevator section and the buffer section mediate with each other and operate independently without delaying the assembly operation of the robot, and the control device 100 controls the above-mentioned operations.

第1図1第2図において、110は本自動組立装置に対
する種々のデータ、プログラム、コマンド等を入力し、
あるいは、当該装置からの各種情報を出力する為のパソ
コンである。
In FIG. 1 and FIG. 2, 110 inputs various data, programs, commands, etc. for this automatic assembly device;
Alternatively, it is a personal computer for outputting various information from the device.

なお、本発明において、実際に独立して動作するロボッ
ト、ストッカー、エレベータ、バッファの4つの部分を
、便宜上、被制御部とよぶ。
In the present invention, the four parts, the robot, the stocker, the elevator, and the buffer, which actually operate independently, are referred to as controlled parts for convenience.

第2図は自動組立装置内のパレットの動きを示した図で
ある。引出し部12にはパレットPが引出されており、
またバッファ部16においては2つの分離爪によりパレ
ットPaが分離されている。P、’、P、’は空になっ
たパレットがエレベータによりストッカー13内から引
出され、排出部17に積み重ねられた状態を示している
FIG. 2 is a diagram showing the movement of pallets within the automatic assembly device. A pallet P is pulled out in the drawer part 12,
Further, in the buffer section 16, the pallet Pa is separated by two separating claws. P,', P,' shows a state in which empty pallets are pulled out from inside the stocker 13 by an elevator and stacked in the discharge section 17.

27は無人車で無人車の上段に乗せられたあなたなパレ
ットPL、P2.P3.P4がバッファ台に29のコン
ベアにより押し込まれるところを示し、また、PL’ 
 P2’  P3’  P4′は無人車の下段に空のパ
レットが移載されたところを示す。
27 is an unmanned vehicle, and your pallet PL, P2. is placed on the upper stage of the unmanned vehicle. P3. P4 is shown being pushed into the buffer table by conveyor 29, and PL'
P2'P3'P4' shows empty pallets being transferred to the lower stage of the unmanned vehicle.

〈制御装置の構成〉 第3図により、第1図、第2図に示した自動組立装置の
制御装置100の構成を説明する。
<Configuration of Control Device> The configuration of the control device 100 of the automatic assembly apparatus shown in FIGS. 1 and 2 will be explained with reference to FIG.

第3図において、制御装置100は、主制御部101と
、3つのサーボモータ制御部20OA。
In FIG. 3, the control device 100 includes a main control section 101 and three servo motor control sections 20OA.

200B、200Cと、センサやソレノイド等の人出デ
バイスの制御を行なうI10制御部250と、共有メモ
リ121とにより構成されており、これらの主制御部1
01.サーボ制御部200や共有RAM121は共有バ
ス120により接続されている。
200B, 200C, an I10 control unit 250 that controls people-receiving devices such as sensors and solenoids, and a shared memory 121.
01. The servo control section 200 and the shared RAM 121 are connected by a shared bus 120.

主制御部101は、1個のCPU 102と、各被制御
部の動作のシーケンスを記述した一連の動作プログラム
や動作位置を記憶する一連のティーチングポイントを格
納するRAM104と、前記動作プログラムの解釈実行
や編集およびティーチングポイントの編集等を行なうプ
ログラムが格納されているROM103と、タイマ10
5とパソコン110とのデータおよびコマンドのやりと
りを行なう通信部(serial l10) 106と
、教示装置111とのデータおよびコマンドのやりとり
を行なう通信部107と、前記共有バス120と接続す
る為のマルチパスI/F108とにより構成されている
The main control unit 101 includes one CPU 102, a RAM 104 that stores a series of operation programs that describe the sequence of operations of each controlled unit and a series of teaching points that store operation positions, and a RAM 104 that stores a series of teaching points that store operation positions of each controlled unit, and a RAM 104 that stores a series of operation programs that describe the sequence of operations of each controlled unit and a series of teaching points that store operation positions. A ROM 103 stores programs for editing and teaching points, and a timer 10.
a communication unit (serial l10) 106 that exchanges data and commands between the computer 110 and the teaching device 111; a communication unit 107 that exchanges data and commands with the teaching device 111; I/F108.

RAM104には、前述のストッカー等の各被制御部の
動作プログラムとティーチングポイント。
The RAM 104 stores operation programs and teaching points for each controlled unit such as the stocker mentioned above.

が記憶されているため、バッテリーによりバックアップ
されている。
is stored and is backed up by a battery.

サーボモータ制御部20OA、200Bは、複数のサー
ボモータを制御する部分であって、本実施例では、最高
47個のサーボモータの位置決め制御が可能なように構
成されており、必要に応じて1〜4ケの新たなサーボモ
ータを制御可能なようになっている。第3図において、
これらのサーボモータ制御部のEはエンコーダを、Mは
サーボモータを意味する。
The servo motor control units 20OA and 200B are parts that control a plurality of servo motors, and in this embodiment, they are configured to be able to control the positioning of a maximum of 47 servo motors, and one It is now possible to control ~4 new servo motors. In Figure 3,
In these servo motor control units, E means an encoder and M means a servo motor.

I10制御部250には、電磁弁(図中、■と示す)等
の出力素子及びセンサ(Sと示す)等の入力素子が接続
可能となっており、それらの制御を行なう。もちろん、
Iloの動作命令やモータの動作命令は、主制御部10
0の前記動作プログラム(RAM104)中に記述可能
であり、必要に応じて動作させること及びセンサの情報
を人力可能となっている。また、標準的な規格のマルチ
パス120を用い、かつ主制御部100及びサーボモー
タ制御部20OA、200B、I10制御部250は、
マルチパスインターフェースをもった少な(とも1枚の
基板で構成されており、制御部の増減は可能なことは言
うまでもなく、故障時にすみやかに交換することも可能
である。
The I10 control unit 250 can be connected to output elements such as a solenoid valve (indicated by ■ in the figure) and input elements such as a sensor (indicated by S), and controls them. of course,
Ilo operation commands and motor operation commands are issued by the main control unit 10.
It can be written in the operation program (RAM 104) of 0, and it is possible to operate it as necessary and to input sensor information manually. In addition, the main control section 100, the servo motor control sections 20OA, 200B, and the I10 control section 250 use the standard multipath 120, and
It is composed of a single board with a multipath interface, and it goes without saying that the number of control units can be increased or decreased, and it is also possible to quickly replace it in the event of a failure.

また、第3図に示すように、4つの被制御部であるロボ
ット部、ストッカ一部、エレベータ部7バツフア部の各
々は、前記サーボモータ制御部。
Further, as shown in FIG. 3, each of the four controlled parts, the robot part, part of the stocker, and the buffer part of the elevator part 7, is the servo motor control part.

I10制御部にそのまま対応していない。たとえば、本
実施例においては、サーボモータ制御部Bはストッカ一
部用の2つのモータ、エレベータ部用の1つのモータ 
バッファ部用の1つのモータを制御している。
It does not directly correspond to the I10 control unit. For example, in this embodiment, the servo motor control unit B includes two motors for a part of the stocker and one motor for an elevator part.
Controls one motor for the buffer section.

く主制御部におけるプログラム構成〉 第4図は、第3図の主制御部101のROMIO3とR
AM104内に記憶されているプログラムの構成図であ
る。換言すれば、RAM104とROM103とは連続
的なメモリ空間を形成している。
Program configuration in the main control unit> FIG. 4 shows the program configuration in the main control unit 101 in FIG.
It is a block diagram of the program stored in AM104. In other words, RAM 104 and ROM 103 form a continuous memory space.

第4図において、RAM104には、本自動組立装置の
組立動作を行なうロボット部と該ロボットにパレット内
に収納されたワークを供給する部品供給装置とのための
動作プログラムや、ティーチングポイントが記憶されて
いる。上記部品供給装置はストッカー、エレベータ、バ
ッファの各部より構成されるために、前記動作プログラ
ムも、それぞれの動作のシーケンスを記述している。こ
れらの動作プログラムは、ロボット動作プログラム14
0a、ストッカー動作プログラム140b、エレベータ
動作プログラム1400.バッファ動作プログラム14
0dである。RAM104には、これらの動作プログラ
ムの他に、各動作プログラムに対応して、ティーチング
ポイント141a、141b、141c  141dも
記憶されている。上記動作プログラム及びティーチング
ポイントは、入出力装置110(あるいは、教示装置1
11)により、例えば動作の変更にともなって変更可能
である。
In FIG. 4, the RAM 104 stores operating programs and teaching points for the robot unit that performs the assembly operation of the automatic assembly device and the parts supply device that supplies the robot with workpieces stored in a pallet. ing. Since the above-mentioned parts supply device is composed of each section of a stocker, an elevator, and a buffer, the operation program also describes the sequence of each operation. These operation programs are the robot operation program 14.
0a, stocker operation program 140b, elevator operation program 1400. Buffer operation program 14
It is 0d. In addition to these operation programs, the RAM 104 also stores teaching points 141a, 141b, 141c, and 141d corresponding to each operation program. The above operating program and teaching points are stored in the input/output device 110 (or teaching device 1
11), it can be changed, for example, as the operation changes.

上記動作プログラムの一つの単位は、順序を示す番号と
、その動作に関わる命令の内容を示す記号と必要に応じ
てパラメータにより成っており、1つの動作を前記命令
群により表記し、RAMl04に格納可能である。
One unit of the above operation program consists of a number indicating the order, a symbol indicating the content of the instruction related to the operation, and parameters as necessary.One operation is expressed by the above instruction group and stored in the RAM 104. It is possible.

〈リエントラント制御〉 本実施例の制御装置には、第4図に示すように6つのプ
ログラムモードが用意されている。
<Reentrant Control> The control device of this embodiment has six program modes as shown in FIG. 4.

オートモード131は、前記動作プログラムの実行、停
止を管理するプログラムである。オートモードにおいて
は、命令解釈部131aにおいて動作プログラムを解釈
し、動作を記述する命令が内部関数である場合は内部処
理を行ない、一方、その命令がサーボモータ制御部又は
I10制御部への動作命令である場合は、その制御部へ
その動作指令を出力する。
The auto mode 131 is a program that manages execution and termination of the operation program. In the auto mode, the instruction interpreter 131a interprets the operation program and performs internal processing if the instruction describing the operation is an internal function. If so, the operation command is output to the control unit.

プログラムモード132は、前記動作プログラムを編集
して、140a〜140dの動作プログラムの格納領域
へ格納するプログラムである。
The program mode 132 is a program for editing the operation program and storing it in the operation program storage areas 140a to 140d.

ティーチモード133は、ストッカー等の被制御部のサ
ーボモータを動かすティーチングポイントを教示するプ
ログラムである。データモード134は、前記ポイント
を入力および変更するプログラムである。アウトモード
135は、I10制御部の出力を操作するプログラムで
ある。インモード136は、I10制御部の入力を監視
するプログラムである。
The teaching mode 133 is a program that teaches teaching points for moving a servo motor of a controlled unit such as a stocker. Data mode 134 is a program for inputting and changing the points. Out mode 135 is a program that operates the output of the I10 control section. Inmode 136 is a program that monitors input to the I10 control unit.

上記6つのモードプログラム131〜136及びマルチ
タスクOSプログラム130は、第3図のROM103
内に記憶されている。本制御装置において、ロボット部
及びストッカ一部、エレベータ部、バッファ部の各々個
別の動作プログラム1408〜140dは、ティーチン
グポイント141a〜141dを用いられて、お互いに
調停を取られながら並行して実行され、ロボットは組付
動作、部品供給装置はロボットへの組付部品の準備動作
を行なう。しかしながら、ここで注意しなければならな
いのは、第3図で示すように、複数の動作プログラムの
処理を行なう処理プログラム、つまり131〜136の
各モードプログラムは1つのみ用意されているというこ
とである。マルチタスク08130が、必要な動作プロ
グラムを処理プログラムにて処理させて、ロボットの又
は、部品供給装置の構成機器を制御する各部の制御部に
命令を発行する。
The six mode programs 131 to 136 and the multitasking OS program 130 are stored in the ROM 103 in FIG.
stored within. In this control device, individual operation programs 1408 to 140d for the robot section, part of the stocker, the elevator section, and the buffer section are executed in parallel while being arbitrated with each other using teaching points 141a to 141d. , the robot performs an assembly operation, and the parts supply device performs a preparation operation for parts to be assembled to the robot. However, it must be noted here that, as shown in Figure 3, only one processing program is prepared for each of the mode programs 131 to 136, which processes multiple operation programs. be. The multitask 08130 causes the processing program to process the necessary operation program and issues commands to the control units of each unit that controls the component devices of the robot or the parts supply device.

主制御部101における、命令の処理を行なうためのプ
ログラム(131,131a、132〜136)とCP
Uとは各々1つづつ設けられている。そして、マルチタ
スクOSにより、複数の被制御部のための動作命令の処
理等が行なわれている。CPUの処理時間の短さに対し
て、各被制御部における動作は十分に長い為に、見かけ
上は、複数の制御装置で複数の被制御部のための命令を
処理しているのとなんら変わることなく、動作を制御す
ることが可能となっている。
Programs (131, 131a, 132 to 136) and CP for processing instructions in the main control unit 101
One U is provided for each. The multitasking OS processes operation commands for a plurality of controlled units. Compared to the short processing time of the CPU, the operation of each controlled unit is sufficiently long, so it appears that multiple control devices are processing instructions for multiple controlled units. It is possible to control the operation without changing.

ここで、タスクとは、主制御部101が、1つの被制御
部に対する一連の処理プログラム(131〜136)の
実行を行なうことを言う。本実施例においては、組付手
段であるロボット部と、物品の供給手段であるストッカ
一部、エレベータ部、バッファ部の被制御部のための制
御が、1つのCPU102により、ロボットタスク、ス
トッカータスク、エレベータタスク、バッフアクスフと
して処理される。しかも、上記一連の処理プログラムを
タスク間で切換で実行することにより、あたかも、複数
のCPUで並行して被制御部のための制御を処理してい
るかのように、各タスクが独立して動作しているかのよ
うに見える。
Here, a task means that the main control unit 101 executes a series of processing programs (131 to 136) for one controlled unit. In this embodiment, control of the robot part which is the assembly means, the stocker part which is the article supply means, the elevator part, and the controlled parts of the buffer part is performed by one CPU 102, such as the robot task and the stocker task. , elevator tasks, are processed as buffer axfs. Moreover, by executing the above series of processing programs by switching between tasks, each task operates independently, as if multiple CPUs were processing control for the controlled unit in parallel. It looks like it is.

第5図はマルチタスクOSの構造図である。同図に沿っ
て、マルチタスクOS内のプログラムの機能について説
明する。
FIG. 5 is a structural diagram of a multitasking OS. The functions of the programs in the multitasking OS will be explained along the diagram.

0S130は、タスク登録プログラム153、通信ハン
ドラ154、タスクの交換プログラム155、タスクの
スケジューリングプログラム151、タスクの切り替え
プログラム152等からなる。
The OS 130 includes a task registration program 153, a communication handler 154, a task exchange program 155, a task scheduling program 151, a task switching program 152, and the like.

タスク登録153は、サーボ制御部20OA。The task registration 153 is the servo control unit 20OA.

200B及びI10制御部250に対するモード処理プ
ログラム131〜136(第4図)の実行に先立って、
次のような登録処理を行なう。即ち、登録プログラムは
、登録されるべきタスクの動作プログラム(140a、
140b、140c、140d)の格納されている領域
のRAM 104上における基準アドレスの指定を行な
い、また、各被制御部の移動目標位置であるティーチン
グポイントの格納領域141 a、  14 l b、
  141c、141dのRAM104上における基準
アドレスの指定を行なう。さらに、登録プログラムは、
各被制御部に対する動作指令や、目標位置や現在位置を
格納する領域(第6図)の基準アドレスの指定を行なう
。またタスクの数の登録もこのタスク登録プログラムに
より行う。
Prior to execution of the mode processing programs 131 to 136 (FIG. 4) for the 200B and I10 control unit 250,
The following registration process is performed. That is, the registration program includes the operation program (140a,
140b, 140c, 140d) on the RAM 104, and also specifies the storage area 141a, 14lb, of the teaching point which is the movement target position of each controlled part.
The reference address on the RAM 104 of 141c and 141d is specified. In addition, the registration program
Operation commands for each controlled section and reference addresses of areas (FIG. 6) for storing target positions and current positions are specified. The number of tasks is also registered using this task registration program.

このようなタスク登録、即ち、登録されるべきタスクプ
ログラムとその処理に不可欠なデータ領域とを併せて登
録することにより、各タスクプログラムの各々は、モー
ド処理プログラムダラム(第4図の131〜136)に
対して連続的なアドレス空間を有することとなる。即ち
、現在実行中のタスクプログラムがモード処理プログラ
ムに対して相対アドレス表記で記述され得ることになる
。そこで、タスク実行の切換時に、前記各基準アドレス
を書き替えて、使用することにより、モード処理プログ
ラムを、各タスク毎に準備する必要がなくなり、即ち、
リエントラント処理が可能となる。
By registering such a task, that is, by registering the task program to be registered and the data area essential for its processing, each task program can be registered in the mode processing program duram (131 to 136 in FIG. 4). ) will have a continuous address space. That is, the task program currently being executed can be written in relative address notation with respect to the mode processing program. Therefore, by rewriting and using each of the reference addresses when switching between task executions, there is no need to prepare a mode processing program for each task.
Reentrant processing becomes possible.

通信ハンドラ154は、パソコン110(あるいは、教
示装置工11)より通信部106または107を介して
送られてきたコマンドを受は取る。この通信ハンドラ1
54は、初めに、前記通信部106もしくは107より
送られて来たタスクの割り付はコマンドによりどのタス
クを制御するかを指定する。通信ハンドラ154の所定
のデータ領域に、各タスクについてコマンド格納領域が
用意されている。タスク割り付はコマンドにより特定の
タスクが制御対象として指定された以後は、通信ハンド
ラ154は、通信部106もしくは107より送られて
来たコマンドを、上記割り付はコマンドにより指定され
たタスクについての上記コマンド格納領域に格納し、そ
の後、タスクのスケジューリング151処理を行なう。
The communication handler 154 receives commands sent from the personal computer 110 (or the teaching device 11) via the communication section 106 or 107. This communication handler 1
54, first, the task assignment command sent from the communication unit 106 or 107 specifies which task is to be controlled. A command storage area is prepared for each task in a predetermined data area of the communication handler 154. After a specific task is specified as a control target by a command, the communication handler 154 handles the command sent from the communication unit 106 or 107 for the task specified by the command. The command is stored in the command storage area, and then task scheduling 151 processing is performed.

上述のタスクに対してのコマンドの通達は、通信部10
6もしくは107より、タスクの割り付は変更コマンド
が送られるまで繰り返される。
The communication unit 10 notifies commands for the above-mentioned tasks.
6 or 107, task assignment is repeated until a change command is sent.

タスク交換プログラム155は、ロボット、ストッカー
、エレベータ、バッファの各タスクが、命令解釈部13
1aにより動作プログラム141a、141b、141
c、141dの1行を実行するたびに、呼ばれるプログ
ラムであり、現在実行しているタスクの動作プログラム
の命令解釈の実行を中断し、他のタスクの命令解釈の実
行を始める為のプログラムである。
The task exchange program 155 allows robot, stocker, elevator, and buffer tasks to be exchanged by the command interpreter 13.
1a, operation programs 141a, 141b, 141
This is a program that is called every time one line of c and 141d is executed, and is a program that interrupts execution of the instruction interpretation of the operation program of the currently executing task and starts execution of instruction interpretation of another task. .

タスク切換えプログラム152は、前記通信ハンドラタ
スク154より格納されたコマンドに対する一連の処理
プログラムの実行終了後、次のコマンドが新たに格納さ
れるまで、他のタスクの処理プログラムの実行を行なう
プログラムである。
The task switching program 152 is a program that, after the communication handler task 154 finishes executing a series of processing programs for commands stored, executes processing programs for other tasks until the next command is newly stored. .

タスクのスケジューリングプログラム151は、前記タ
スク交換プログラム155もしくは通信ハンドラ154
により呼ばれるプログラムであり、タスクの交換時に、
もしくは通信ハンドラ154からのコマンド通達により
、実行されるべきタスクを実行待ち行列に登録を行なう
プログラムである。CPUは、タスクの交換時またはタ
スクの切換時に、前記実行待ち行列の順番に従ってタス
クを切り替え、各々のタスクに対するコマンドに処理プ
ログラム131,132,133,134.135,1
36および命令解釈部131aの実行を行なってゆく。
The task scheduling program 151 includes the task exchange program 155 or the communication handler 154.
is a program called by , and when exchanging tasks,
Alternatively, it is a program that registers a task to be executed in an execution queue based on a command notification from the communication handler 154. When exchanging tasks or switching tasks, the CPU switches tasks according to the order of the execution queue, and sends processing programs 131, 132, 133, 134, 135, 1 to commands for each task.
36 and the instruction interpreter 131a are executed.

第6図は、各サーボ制御部200に対して送られる動作
指令を格納する共有RAM121のメモツマツブである
。共有RAM1.21は、各制御部に対して各々個別の
領域170a、170b、170c、170dが設定さ
れ、これらの領域も、RAM104の動作プログラム等
と同じくセグメント化されている。各セグメントは基準
アドレスにより指定される。
FIG. 6 shows a memo of the shared RAM 121 that stores operation commands sent to each servo control section 200. In the shared RAM 1.21, separate areas 170a, 170b, 170c, and 170d are set for each control unit, and these areas are also segmented like the operating programs of the RAM 104. Each segment is designated by a reference address.

同図において、動作指令領域171aは、ロボットの制
御部に対する移動指令等の動作指令を格納する領域であ
る。目標位置領域172aは、主制御部よりのロボット
の移動に対する目標値を格納する領域であり、現在位置
領域173aは、ロボット制御部より返されたロボット
の現在位置を格納する領域である。
In the figure, a motion command area 171a is an area for storing motion commands such as movement commands for the control unit of the robot. The target position area 172a is an area for storing a target value for the movement of the robot from the main control unit, and the current position area 173a is an area for storing the current position of the robot returned from the robot control unit.

ストッカーの通信領域170b、エレベータの通信領域
170c、バッファの通信領域170dも同じように設
定されている。
The stocker communication area 170b, the elevator communication area 170c, and the buffer communication area 170d are set in the same way.

この共有RAM121の各領域のための基準アドレスも
、前述の動作プログラム(第4図)と同様に、タスク登
録プログラム153により指定される。各タスクの命令
処理部(第4図の各モードプログラム)の実行において
、前記動作指令領域171a、171b、171c、1
7Ldと目標位置領域172a、172b、172c、
172dと現在位置領域173a、173b、173c
、173dは、前記タスク登録プログラム153により
指定された基準アドレスからの相対アドレスで指定され
る。
The reference address for each area of this shared RAM 121 is also designated by the task registration program 153, similar to the aforementioned operating program (FIG. 4). In the execution of the command processing unit of each task (each mode program in FIG. 4), the operation command areas 171a, 171b, 171c, 1
7Ld and target position areas 172a, 172b, 172c,
172d and current position areas 173a, 173b, 173c
, 173d are designated by relative addresses from the reference address designated by the task registration program 153.

ムム之Ω11 第7図は本発明の初期化のプログラムのフローチャート
であり、このプログラムは、本制御装置を起動させるこ
とにより起動される。先ず、ステップS30において、
ロボットタスクの登録を行なうためにタスク登録プログ
ラム153が走る。
Mmu no Ω11 FIG. 7 is a flowchart of the initialization program of the present invention, and this program is started by starting the present control device. First, in step S30,
A task registration program 153 runs to register robot tasks.

このプログラムが走ることにより、予め入力しておいた
各タスクのための領域データに基づいて、ロボット制御
部200Aのための動作プログラム格納領域140aと
、目標位置データであるティーチングポイント格納領域
141aと、ロボット制御部の通信のための共有RAM
 121の通信領域170aと、ロボットの処理プログ
ラムの実行におけるワーキング領域との基準アドレスの
指定を行なう。
By running this program, an operation program storage area 140a for the robot control unit 200A and a teaching point storage area 141a which is target position data are created based on the area data for each task inputted in advance. Shared RAM for robot control unit communication
The reference address of the communication area 170a of 121 and the working area for executing the robot's processing program is specified.

ステップS31では、ロボットタスクのスケジューリン
グのため、タスクのスケジューリングプログラム151
を呼ぶことにより、ロボットタスクをタスクの待ち行列
へ登録する。ステップS32では、前記ロボットタスク
と同様にストッカータスクの登録を、ステップS33で
はストッカータスクのスケジューリングを行なう。同様
に、ステップS34ではエレベータタスクの登録を、ス
テップS35ではエレベータタスクのスケジューリング
を、ステップS36ではバッファタスクの登録を、ステ
ップS37ではバッファタスクのスケジューリングを行
なう。
In step S31, the task scheduling program 151 is used to schedule robot tasks.
Register the robot task in the task queue by calling . In step S32, a stocker task is registered similarly to the robot task, and in step S33, the stocker task is scheduled. Similarly, in step S34, elevator tasks are registered, in step S35, elevator tasks are scheduled, in step S36, buffer tasks are registered, and in step S37, buffer tasks are scheduled.

ステップS37は初期化プログラムによりタスク切換プ
ログラム152を呼ぶことにより、初期化プログラムを
終了し、前記タスクの待ち行列への登録を行なったロボ
ットタスク、ストッカータスク、エレベータタスク、バ
ッファタスクの各タスクの処理プログラムの実行を順次
開始するものである。しかし、タスクへのコマンドがま
だパーソナルコンビューク110から来ていない為に、
各々のタスクはコマンド待ち状態となり、CPU102
は無限ループの実行を行なう。
Step S37 terminates the initialization program by calling the task switching program 152 by the initialization program, and processes the robot task, stocker task, elevator task, and buffer task that have registered the tasks in the queue. It starts the execution of programs sequentially. However, since the command to the task has not yet come from the personal computer 110,
Each task enters a command waiting state, and the CPU 102 waits for a command.
executes an infinite loop.

前記コマンド待ちで中断しているタスクの処理は、パソ
コン110より通信部106,107を介してコマンド
が入力された際に割り込みにより起動される通信ハンド
ラ154により再開される。通信ハンドラ154は、人
力されたコマンドがどのタスクへのコマンドかを判別し
た後に、指定されたタスクのスケジューリングを行なう
。また、前記CPU102が無限ループ実行中であれば
、前記タスクのコマンドの処理プログラムの実行を開始
する。
Processing of the task suspended while waiting for the command is restarted by the communication handler 154, which is activated by an interrupt when a command is input from the personal computer 110 via the communication units 106, 107. After determining which task the manually inputted command is directed to, the communication handler 154 schedules the specified task. Furthermore, if the CPU 102 is executing an infinite loop, it starts executing the command processing program of the task.

紅豆卑天上 第8図は、オートモードプログラム131の命令解釈部
131aにおける動作の一例を示すために、動作プログ
ラムの1つである移動指令を例にとった場合のプログラ
ムの解釈実行のフローチャートである。
FIG. 8 is a flowchart of the interpretation and execution of the program when a movement command, which is one of the operation programs, is taken as an example, in order to show an example of the operation in the command interpretation section 131a of the auto mode program 131. .

先ず、ステップSlにおいて、パーソナルコンピュータ
110のキー人力により、命令解釈部の実行のキーが操
作されると、ステップS2で、パーソナルコンピュータ
110から命令解釈部の実行コマンドが送出される。
First, in step S1, when the execution key of the instruction interpreter is operated by a key of the personal computer 110, an execution command of the instruction interpreter is sent from the personal computer 110 in step S2.

この実行コマンドを受けた主制御部101では、ステッ
プSIOにおいて、割り込みにより通信ハンドラ154
が実行される。ハンドラ154は、この実行コマンドを
、そのコマンドが向けられたタスクのコマンド格納領域
へ格納する。そして、この指定されたタスクを、タスク
スケジューリングプログラム151 (第5図)により
、待ち行列へ登録する。これにより、主制御部101に
おける割り込み処理を終了する。
Upon receiving this execution command, the main control unit 101 executes the communication handler 154 by an interrupt in step SIO.
is executed. Handler 154 stores this execution command in the command storage area of the task to which the command is directed. The specified task is then registered in the queue by the task scheduling program 151 (FIG. 5). This ends the interrupt processing in the main control unit 101.

CPU102は、上記待ち行列中のキューの順番に従っ
てタスクを切換えて、各制御部に対する処理プログラム
の実行を行なう。タスクの切り替えの契機となるのは、
別のタスクが発したタスク交換のシステムコール(これ
により、交換プログラム155が起動される)または、
システムが発生した切り替えのシステムコール(これに
より、切換プログラム152が起動される)である。
The CPU 102 switches tasks according to the order of the queues in the queue and executes processing programs for each control unit. The trigger for switching tasks is
A task exchange system call issued by another task (this starts the exchange program 155), or
This is a system call for switching generated by the system (by which the switching program 152 is started).

現在実行しているタスクが、上記タスクの交換若しくは
タスクの切換により停止されると、待ち行列の順番に従
って、次のタスクが起動される。
When the currently executing task is stopped due to the task replacement or task switching, the next task is started according to the order of the queue.

即ち、CPU102はステップSllより、そのタスク
のための処理を開始する。即ち、ステップSllで、当
該起動されたタスクのためのコマンド格納領域に格納さ
れたコマンドを解釈することにより、前記コマンドが命
令解釈部131aの起動を指示するものであれば、命令
解釈部131aにおける処理を開始する。
That is, the CPU 102 starts processing for that task from step Sll. That is, in step Sll, by interpreting the command stored in the command storage area for the activated task, if the command instructs the activation of the instruction interpretation unit 131a, the instruction interpretation unit 131a Start processing.

ステップS12.S13.S14.S15.S’16、
 S17. S18が命令解釈部131aのプログラム
である。即ち、ステップS12において、タスク登録プ
ログラム153により指定されたタスク動作プログラム
(第4図の140a、140b、140c、140dの
いずれか1つ)を−行だけ解釈する。
Step S12. S13. S14. S15. S'16,
S17. S18 is a program of the instruction interpreter 131a. That is, in step S12, only - lines of the task operation program (any one of 140a, 140b, 140c, and 140d in FIG. 4) specified by the task registration program 153 are interpreted.

この動作プログラムの一行が例えば、ロボットの移動指
令である場合には、ステップS13において、移動先の
位置を、ロボットタスクのためのティーチングポイント
領域(第4図の141a)より取り出して、共有RAM
121のロボットタスクのための目標位置領域(第6図
の172a)へ格納する。これらのティーチングポイン
ト領域及び目標位置領域は、前記タスク登録プログラム
153によりロボットタスクの登録時(ステップ530
)指定されたものである。
For example, if one line of this operation program is a movement command for the robot, in step S13, the movement destination position is retrieved from the teaching point area (141a in FIG. 4) for the robot task and stored in the shared RAM.
121 in the target position area (172a in FIG. 6) for the robot task. These teaching point areas and target position areas are determined by the task registration program 153 at the time of robot task registration (step 530).
) as specified.

共有RA−M121へ目標位置を格納した後に、ステッ
プS14において、当該移動指令を前記共有RAM12
1のロボットタスク用の動作指令領域(第6図の171
 a)へ格納することにより、ロボット制御部20OA
へ移動を指令する。
After storing the target position in the shared RAM 121, in step S14, the movement command is stored in the shared RAM 12.
Operation command area for robot task 1 (171 in Figure 6)
a), the robot control unit 20OA
command to move to.

ステップS15においては、タスク交換プログラム15
5によりタスクの交換を行う。これは、−船釣に被制御
部の動作時間はCPUの処理に比べて長いことより、別
のタスク(例えば、ストッカータスク)の処理プログラ
ムを実行させるためである。タスクの交換により、それ
まで実行していたロボットタスクを、タスクの待ち行列
の最後尾へ登録する。そして、CPU102はこの待ち
行列に登録されている次に実行すべきタスクの処理プロ
グラムの実行を行う。即ち、ステップS16において、
次のタスクが実行可能なタスクであるかを調べ、実行可
能であれば、ステップS18でパーソナルコンピュータ
110から終了命令が来ていないことを確認してから、
ステップS12からステップS15を繰返す。ここで、
タスク可能なタスクとは、例えば、パーソナルコンピュ
ータ110によりタスク実行を解除されたタスクや、当
該タスクへパソコン110からの終了報告がきていない
場合等である。
In step S15, the task exchange program 15
5, the tasks are exchanged. This is because the operating time of the controlled unit during boat fishing is longer than that of the CPU processing, so a processing program for another task (for example, a stocker task) is executed. By exchanging tasks, the robot task that was being executed until then is registered at the end of the task queue. Then, the CPU 102 executes the processing program for the next task registered in this queue to be executed. That is, in step S16,
It is checked whether the next task is an executable task, and if it is executable, it is confirmed in step S18 that no end command has been received from the personal computer 110, and then
Steps S12 to S15 are repeated. here,
A task that can be completed includes, for example, a task whose execution has been canceled by the personal computer 110, or a task for which no completion report has been received from the personal computer 110.

ステップS16で、実行可能なタスクがない場合には、
ステップS17に進み、動作指令領域がクリアされたタ
スクがないかを調べる。後述するように、主制御部10
1がステップS14で発行した指令に対して、個々の制
御部がその指令を実行し終了した場合に、その制御部が
動作指令領域のその指令をクリアするものであるから、
ステップS17で領域のクリアを確認することは、指令
動作の終了の確認を意味する。
In step S16, if there is no executable task,
Proceeding to step S17, it is checked whether there is any task whose operation command area has been cleared. As described later, the main control unit 10
When each control unit executes and completes the command issued by Step 1 in step S14, that control unit clears the command in the operation command area.
Confirming that the area has been cleared in step S17 means confirming that the command operation has ended.

再び、ロボットに対する移動指令を例にして、第8図の
フローチャートの説明を続行する。
The explanation of the flowchart in FIG. 8 will be continued using the movement command to the robot as an example again.

ロボット制御部は、ステップS20において、ロボット
の被制御部のための指令を、共有RAM1210ロボツ
トに対応した動作指令領域(171a)を読み込み、そ
の指令が存在すれば、ステップS21により指令を取り
出して解釈する。この指令が移動命令である場合は、ス
テップS22において、共有RAM121のロボットに
対応した目標位置領域(172a)より目標位置を取り
出し、このロボット制御部は移動のための制御を行う。
In step S20, the robot control unit reads a command for the controlled part of the robot from the operation command area (171a) of the shared RAM 1210 corresponding to the robot, and if the command exists, extracts and interprets the command in step S21. do. If this command is a movement command, in step S22, the target position is retrieved from the target position area (172a) corresponding to the robot in the shared RAM 121, and the robot control unit controls the movement.

即ち、アームを移動する等を行なう。That is, the arm is moved, etc.

アーム等の被制御部の移動が終了すると、ロボット制御
部は、ステップS23において、共有RAM121の移
動指令領域(171a)の動作指令をクリアする。
When the movement of the controlled part such as the arm is completed, the robot control unit clears the operation command in the movement command area (171a) of the shared RAM 121 in step S23.

主制御部100が、ロボット制御部による共有RAM1
21のロボットに対応した動作指令領域(171a)が
クリアされたことを、ステップS17で判断すると、次
の動作プログラム解釈より繰り返す。
The main control unit 100 uses RAM 1 shared by the robot control unit.
If it is determined in step S17 that the motion command area (171a) corresponding to robot No. 21 has been cleared, the processing is repeated from the next motion program interpretation.

かかる動作を命令解釈終了命令(END)を解釈するま
で続ける。
This operation continues until the command interpretation end command (END) is interpreted.

ステップ318にて解釈した動作プログラムが終了であ
れば、ステップS19で、通信ハンドラ154を介して
通信部106より、命令解釈部131aの終了コマンド
をパーソナルコンピュータ110へ送出する。
If the operation program interpreted in step 318 is finished, the communication unit 106 sends a termination command from the command interpretation unit 131a to the personal computer 110 via the communication handler 154 in step S19.

パーソナルコンピュータ110は、ステップS3で、主
制御部100より送出された終了コマンドを受は取り、
主制御部100の命令解釈部の実行終了を認識する。
In step S3, the personal computer 110 receives the termination command sent from the main control unit 100, and
The end of execution of the command interpreter of the main control unit 100 is recognized.

なお、命令解釈部131aの実行においては、動作プロ
グラムが一般に処理速度の速い内部命令(GOTO等)
である場合においても、他のタスクの実行のために、−
行の動作プログラムの実行ごとにタスクの交換を行って
いる・ 第4図の各動作プログラム140,140b。
In addition, in the execution of the instruction interpreter 131a, the operating program is generally an internal instruction with a fast processing speed (GOTO, etc.).
Even if −
Each operation program 140, 140b in FIG. 4 exchanges tasks each time a row of operation programs are executed.

140c、140dは、一連の動作のパターンごとに分
けられた領域へ格納され、各々の領域はプログラム番号
により管理されている。非制御部の動作は、上記領域の
プログラムを連続して実行することにより作業を行うか
、もしくはその領域内のプログラムのみで作業を行う。
140c and 140d are stored in areas divided according to a series of operation patterns, and each area is managed by a program number. The non-control unit operates by continuously executing the programs in the area, or only by using the programs in the area.

領域内のプログラムもしくは連続して実行する領域のプ
ログラムの順番を複数持つことにより複数の作業パター
ンを実現可能である。
A plurality of work patterns can be realized by having a plurality of orders of programs within an area or programs of an area to be executed continuously.

プログラムによる のタスクの 第9図は、実施例における動作の一例として、ロボット
タスクよりストッカータスクを起動させるフローチャー
トである。
FIG. 9 of the tasks according to the program is a flowchart for activating the stocker task from the robot task as an example of the operation in the embodiment.

ストッカータスクの動作プログラムを起動させる命令は
、ロボット動作プログラム140a中に、 5TART  2.1 と表記されており、第一の引き数が特定のタスクを示し
、第2の引き数はこの特定されたタスクの動作プログラ
ムの番号を示している。本実施例において、この第一の
引き数としてロボットを“1”、ストッカーを“°2”
、エレベータ−を”3”、バッファを“4”として特定
している。
The command to start the stocker task operation program is written as 5TART 2.1 in the robot operation program 140a, the first argument indicates a specific task, and the second argument indicates the specified task. Indicates the number of the task's operating program. In this example, the first argument is "1" for the robot and "°2" for the stocker.
, the elevator is specified as "3", and the buffer is specified as "4".

ロボットタスクにより、命令解釈部131aにおいて、
5TART2.1の命令が解釈されると、ステップS4
1で第一の引き数を判断する。
According to the robot task, the command interpreter 131a
When the command of 5TART2.1 is interpreted, step S4
1 determines the first argument.

第1の引き数は”2°°であるから、第5図の通信ハン
ドラに関連して説明したように、ストッカー用のコマン
ド格納領域に、第2の引き数で指定されるプログラム番
号への変更を指示するコマンドが格納される。この格納
は通信ハンドラ154がパーソナルコンピュータ110
もしくは教示装置よりデーターが送られて来たときに行
なわれる動作と同様の動作である。
Since the first argument is "2°°," as explained in relation to the communication handler in Figure 5, the program number specified by the second argument is stored in the command storage area for the stocker. A command instructing the change is stored.This storage is performed by the communication handler 154 on the personal computer 110.
Or, it is an operation similar to the operation performed when data is sent from the teaching device.

コマンド格納領域にコマンドを書き込んだ後にタスクの
スケジューリングプログラム151により、ストッカー
タスクを待ち行列へ登録する。ステップS43では、コ
マンド格納領域へ命令解釈実行コマンドを格納する。
After writing the command to the command storage area, the task scheduling program 151 registers the stocker task in the queue. In step S43, the instruction interpretation execution command is stored in the command storage area.

このコマンド格納領域はコマンドを上書きしないように
、コマンドを複数格納できる構造となっており、ストッ
カー用のコマンドとして、上記例では、プログラムの変
更コマンドと命令解釈部の実行コマンドが格納される。
This command storage area has a structure in which a plurality of commands can be stored so as not to overwrite commands, and in the above example, a program change command and an execution command of the instruction interpreter are stored as commands for the stocker.

ステップS44で、ロボットタスクは、その動作プログ
ラムの一行の命令解釈が終了することにより、タスク交
換プログラム155を実行し、CPU102はストッカ
ータスクの処理プログラムの実行にうつる。
In step S44, the robot task executes the task exchange program 155 by completing the command interpretation of one line of its operation program, and the CPU 102 proceeds to execute the processing program of the stocker task.

ステップS51において、ストッカータスクは、コマン
ド格納領域より、最初のコマンドであるプログラム番号
の変更コマンドを取り出し、前記5TART2.1命令
で特定したプログラム番号に従い、ストッカーの動作プ
ログラムをプログラム番号を“1”へ変更する。
In step S51, the stocker task retrieves the first command, a program number change command, from the command storage area, and changes the stocker operation program to "1" according to the program number specified by the 5TART2.1 command. change.

ステップS52にて、次のコマンドである命令解釈部の
実行コマンドをコマンド格納領域より取り出し、コマン
ドに従い命令解釈部131aの実行を開始する。
In step S52, the next command, an execution command for the instruction interpreter 131a, is retrieved from the command storage area, and the instruction interpreter 131a starts executing according to the command.

以後ロボットタスク及びストッカータスクは各々の動作
プログラムを一行解釈する毎にタスクの交換プログラム
155を繰り返し実行し、命令解釈部の実行を行う。
Thereafter, the robot task and the stocker task repeatedly execute the task exchange program 155 every time they interpret one line of each operation program, and execute the command interpreter.

1弘工上亙1 0ボット制御部200Bの動作について、第10図に従
って以下に説明する。但し、第10図においては、被制
御部として、第1図のX軸モータ3を用いている。
1. The operation of the bot control section 200B will be described below with reference to FIG. However, in FIG. 10, the X-axis motor 3 of FIG. 1 is used as the controlled part.

CPU201はROM204に格納されているプログラ
ムを読み出しそのプログラムに従って動作する。この時
に必要なデータはRAM205に記憶する。タイマー2
06は一定時間ごとにCPU201に割り込み信号を与
える。D/Aコンバータ203はCPU201からの指
令に基づいてアナログ信号を発生する。ここで発生され
たアナログ信号はモータードライバ209に与えられる
。モータードライバ209はこの与えられたアナログ信
号に従ってX軸モータ3を回転させる。
The CPU 201 reads a program stored in the ROM 204 and operates according to the program. Data necessary at this time is stored in the RAM 205. timer 2
06 gives an interrupt signal to the CPU 201 at regular intervals. D/A converter 203 generates analog signals based on commands from CPU 201. The analog signal generated here is given to motor driver 209. The motor driver 209 rotates the X-axis motor 3 according to this applied analog signal.

モータが回転するとモータ3に付属のエンコーダーがパ
ルス信号を発生する。ここで発生したパルス信号はカウ
ンター208によってカウントされる。CPU201は
このカウンタの値を読み出すことによって、モータ3の
位置を知ることができる。リミットスイッチインターフ
ェース(SWI/F)207はリミットSW210の情
報をCPU201が取り扱える信号レベルに変換する。
When the motor rotates, an encoder attached to the motor 3 generates a pulse signal. The pulse signals generated here are counted by a counter 208. The CPU 201 can know the position of the motor 3 by reading the value of this counter. A limit switch interface (SWI/F) 207 converts the information of the limit SW 210 into a signal level that can be handled by the CPU 201.

マルチパスI/F202は主制御部101との間でデー
タのやりとりを行う。
The multipath I/F 202 exchanges data with the main control unit 101.

ロボット制御部の動作について第11図のフローチャー
トで説明する。まずステップS201でRAM205及
びタイマー206の初期化を行う。次にステップ520
2で主制御部101からのコマンドがあるかどうかを調
べる。コマンドがない場合にはコマンドが来るまで待つ
。ここでコマンドが入力されると、ステップ5203に
進み、以下、ステップ5208まで順次実行し、該当す
るコマンドがあれば、ステップ3210〜ステツプ52
14の処理を実行する。もし該当するコマンドがなけれ
ば、ステップ5209で不当コマンドに対する処理を行
う。コマンドによって指示された処理が終了すると、ス
テップ5215でACK信号を主制御部101に対して
与える。そしてステップ5202のコマンド待ちへ移行
する。
The operation of the robot control section will be explained using the flowchart shown in FIG. First, in step S201, the RAM 205 and timer 206 are initialized. Then step 520
In step 2, it is checked whether there is a command from the main control unit 101. If there is no command, wait until a command arrives. If a command is input here, the process advances to step 5203, and the process is sequentially executed up to step 5208. If there is a corresponding command, steps 3210 to 52 are executed.
14 processes are executed. If there is no corresponding command, processing for the invalid command is performed in step 5209. When the processing instructed by the command is completed, an ACK signal is given to the main control unit 101 in step 5215. Then, the process moves to step 5202 to wait for a command.

ステップ5210のパラメータセット処理について説明
する。ここでは、装置のモータごとによって変更する必
要のあるパラメータを主制御部101より受は取りRA
M205にセットする。
The parameter set processing in step 5210 will be explained. Here, parameters that need to be changed for each motor of the device are received from the main control unit 101 and are sent to the RA.
Set it to M205.

ステップ5211のサーボロック処理について第12図
によって説明する。ステップ5220で、カウンター2
08よりモータ3の現在位置を読み出す。ステップ52
21では、目標位置(第6図の172a)に、読み出し
だカウンタ値をセットする。ステップ5222では、モ
ータードライバー209に対゛して、サーボON指令を
与える。ここで、ステップ5220〜221の動作を行
うのは、サーボフリー状態でモーター3を動かしていた
場合に、もとの位置にもどってしまうことを防止するた
めである。
The servo lock processing in step 5211 will be explained with reference to FIG. At step 5220, counter 2
The current position of the motor 3 is read from 08. Step 52
At step 21, the read counter value is set at the target position (172a in FIG. 6). In step 5222, a servo ON command is given to the motor driver 209. The reason why steps 5220 to 221 are performed here is to prevent the motor 3 from returning to its original position when it is being moved in the servo-free state.

ステップ5212のサーボフリー処理について説明する
。ここでは、モータードライバー209に対してサーボ
OFF指令を与える。
The servo free processing in step 5212 will be explained. Here, a servo OFF command is given to the motor driver 209.

ステップ5213のMOV処理について、第13図のフ
ローチャートによって説明する。ステップ5230で、
マルチパスI/F202を通して、目標位置データを共
有RAM121より読み出し、RAM205にセットす
る。ステップ5213で、マルチパスI/F202を通
して、移動速度データを共有RAM121より読み出し
、RAM205にセットする。ステップ5233で、現
在のタイマー値をタイマー206より読み出し、RAM
205にセットする。ステップ3233では、RAM2
05に格納された目標位置データ、移動速度データ及び
タイマーデータによって、モータの指令位置データを発
生する。ステップ5234では、カウンタ208より現
在位置データを読み取る。ステップ5235では、ステ
ップ5233で求めた指令位置データより、ステップ5
234で求めた現在位置データを引(ことによって、位
置偏差データを計算する。ステップ8236では、ステ
ップ5235で求めた位置偏差データをD/Aコンバー
タ203に出力する。ステップ8237では、ステップ
5233で計算した指令位置データと現在位置データと
を比較する。等しければモータの移動は終了しているの
で、MOV処理を終了する。ここで等しくない場合は、
モータが動作中なので、ステップ5232のタイマー値
READ以降を繰り返す。
The MOV processing in step 5213 will be explained with reference to the flowchart in FIG. At step 5230,
Target position data is read from the shared RAM 121 through the multipath I/F 202 and set in the RAM 205. In step 5213, the moving speed data is read from the shared RAM 121 through the multipath I/F 202 and set in the RAM 205. In step 5233, the current timer value is read from the timer 206 and stored in the RAM.
Set to 205. In step 3233, RAM2
Motor command position data is generated based on the target position data, movement speed data, and timer data stored in 05. In step 5234, current position data is read from the counter 208. In step 5235, from the command position data obtained in step 5233,
In step 8236, the position deviation data obtained in step 5235 is output to the D/A converter 203. In step 8237, the position deviation data obtained in step 5233 is calculated. Compare the commanded position data and the current position data. If they are equal, the motor has finished moving, so the MOV process ends. If they are not equal, then
Since the motor is in operation, the steps starting from the timer value READ in step 5232 are repeated.

ステップ5208の原点出し処理について、第14図に
よって説明する。ステップ5240で、リミットSWI
/F207より原点LS(不図示)の状態を読み取る。
The origin finding process in step 5208 will be explained with reference to FIG. At step 5240, limit SWI
/F207 reads the state of the origin LS (not shown).

ここで原点LSがONLでいた場合は、ステップ524
8で反原点LS側にMOVを開始する。ステップ524
9で原点LSの状態を再度読み取る。ここで原点LS′
がONであれば、原点LS’がOFFするまで待つ。
Here, if the origin LS is ONL, step 524
At step 8, start MOV to the side opposite to the origin LS. Step 524
At step 9, read the state of the origin LS again. Here the origin LS'
If it is ON, wait until the origin LS' turns OFF.

原点LSがOFFしたら、ステップ5241以降のステ
ップを実行する。ステップ5241では反原点方向側に
MOVを開始する。ステップ5242で原点LS′の状
態をチエツクし、原点LS’がOFFであれば、原点L
SがONするまで待つ。ステップ5243ではスピード
をスローダウンする。ステップ5244でエンコーダの
Z相をチエツクし、2相がOFFであれば、ONするま
で待つ。ステップ5245ではMOV動作を停止させ、
ステップ5246でカウンタ208をクリアし、ステッ
プ5247でRAM205上の目標位置データをクリア
する。
When the origin LS is turned off, steps from step 5241 onward are executed. In step 5241, MOV is started in the direction opposite to the origin. In step 5242, the state of the origin LS' is checked, and if the origin LS' is OFF, the origin L
Wait until S turns ON. In step 5243, the speed is slowed down. In step 5244, the Z phase of the encoder is checked, and if the two phases are OFF, wait until they are turned ON. In step 5245, the MOV operation is stopped;
The counter 208 is cleared in step 5246, and the target position data on the RAM 205 is cleared in step 5247.

−L/」」l肌貫 I10制御部250の動作について、第15図に従って
説明する。
The operation of the skin penetration I10 control unit 250 will be described with reference to FIG. 15.

CPU251はROM256に格納されているプログラ
ムを読み出し、そのプログラムに従って動作する。この
時に必要なデータはRAM257に記憶する。センサ2
55からのデータはアイソレータ254で絶縁レベルに
変換され、バッファ253を通してCPU251に取り
込まれる。CPU251より出力されたSV(ソレノイ
ドバルブ)駆動信号はラッチ258で記憶され、アイソ
レータ259で絶縁レベルに変換され、SV260を駆
動する。マルチパスI/F252は主制御部101との
間でデータのやりとりを行う。
The CPU 251 reads a program stored in the ROM 256 and operates according to the program. Data necessary at this time is stored in the RAM 257. sensor 2
The data from 55 is converted to an isolation level by isolator 254, and is taken into CPU 251 through buffer 253. An SV (solenoid valve) drive signal output from the CPU 251 is stored in a latch 258, converted to an insulation level by an isolator 259, and drives an SV 260. The multipath I/F 252 exchanges data with the main control unit 101.

一方、センサ255からの信号はアイソレータ254に
より、内部信号レベルに変換されてバッファに取り込ま
れる。
On the other hand, the signal from the sensor 255 is converted to an internal signal level by the isolator 254 and taken into the buffer.

第16図の動作フローチャートに従ってI10制御部に
おける動作を説明する。
The operation of the I10 control section will be explained according to the operation flowchart of FIG. 16.

まず、ステップ5250でRAM257及びラッチ25
8 バッファ253等の初期化を行う。
First, in step 5250, the RAM 257 and latch 25
8 Initialize the buffer 253, etc.

ステップ5251で主制御部101からのコマンドがあ
るかどうかを調べる。コマンドがない場合はコマンドが
来るまで待つ。ここでコマンドが入力されると、ステッ
プ5252に進み、以下ステップ5253まで順次実行
し、該当するコマンドであれば、ステップ8256〜2
57の処理を実行する。もし該当するコマンドがなけれ
ば、ステップ5254で不当コマンドに対する処理な行
う。
In step 5251, it is checked whether there is a command from the main control unit 101. If there is no command, wait until one arrives. If a command is input here, the process advances to step 5252 and is sequentially executed up to step 5253. If the command is a corresponding command, steps 8256 to 2 are executed.
57 is executed. If there is no corresponding command, processing for the invalid command is performed in step 5254.

コマンドによって指示された処理が終了すると、ステッ
プ5255でACK信号を主制御部101に対して与え
る。そして、ステップ5251のコマンド待ちへ移行す
る。
When the processing instructed by the command is completed, an ACK signal is given to the main control unit 101 in step 5255. Then, the process moves to step 5251 to wait for a command.

ステップ8256のIN処理について説明する。ここで
はセンサ255の番号を主制御部101から受は取り、
その番号によって指示されるセンサの状態をバッファを
介して読み取り、主制御部101へ通知する。
The IN process at step 8256 will be explained. Here, the number of the sensor 255 is received from the main control unit 101,
The state of the sensor indicated by the number is read via the buffer and notified to the main control unit 101.

ステップ5257のON処理について説明する。ここで
は5V260の番号とON10 F Fの情報を主制御
部101より受は取り、その番号によって指示されるS
Vの状態を指示された0N10FFの状態に変更する。
The ON processing in step 5257 will be explained. Here, the number of 5V260 and the information of ON10FF are received from the main control unit 101, and the S
Change the state of V to the indicated state of 0N10FF.

本発明はその主旨を逸脱しない範囲で種々変形が可能で
ある。例えば、作動部は上記実施例のロボット、ストッ
カー、エレベータ、バッファかならなる組合せに限定さ
れない。
The present invention can be modified in various ways without departing from the spirit thereof. For example, the operating section is not limited to the combination of the robot, stocker, elevator, and buffer of the above embodiments.

[発明の効果] 以上説明したように、本発明によれば、ロボットを制御
するロボット動作手順プログラムとそのロボットにワー
クを供給する供給部を制御する動作手順プログラムとを
別個に設けつつも、これらの動作手順プログラムを解釈
する解釈プログラム及び実行する手段を単一化すること
が可能となり、コストの低減が図れる。単一化によるコ
スト低減効果は、例えば、解釈手順の変更があっても、
プログラムの変更は解釈プログラムを変更するだけで済
むという面にも更に現われる。
[Effects of the Invention] As explained above, according to the present invention, a robot operation procedure program for controlling a robot and an operation procedure program for controlling a supply section that supplies workpieces to the robot are provided separately, but these programs are not included. It becomes possible to unify the interpretation program for interpreting the operating procedure program and the means for executing it, thereby reducing costs. The cost reduction effect of unification is, for example, even if there is a change in the interpretation procedure.
A further aspect is that program changes can be made by simply changing the interpretation program.

本発明の好適な1態様によると、動作手順プログラムと
解釈プログラムとはマルチタスクOSの下で制御される
According to a preferred aspect of the invention, the operating procedure program and the interpretation program are controlled under a multitasking OS.

本発明の好適な1態様によると、前記ロボット及び部品
供給部は夫々の動作部を有し、前記実行・手段は、上記
解釈プログラムが解釈した上記動作部のための命令を、
これらの動作部に指令する事を特徴とする。
According to a preferred aspect of the present invention, the robot and the parts supply section each have a motion section, and the execution means executes instructions for the motion section interpreted by the interpretation program.
It is characterized by giving commands to these operating parts.

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

第1図は本発明を、ロボット、ストッカー、エレベータ
、バッファからなる自動組立装置に適用した場合に、そ
の実施例の構成を示す斜視図、第2図はその実施例の正
面図 第3図は第1図実施例の制御装置のハードウェア構成図
、 第4図は上記制御装置のソフトウェア構成を示す図、 第5図は第1図実施例に用いられるマルチタスクプログ
ラムOSの構造を説明する図、第6図は共有RAMの構
成を示す図、 第7図は第1図実施例におけるタスク初期化プログラム
のフローチャート、 第8図は、移動指令を例とした場合の、パーソナルコン
ピュータ110.主制御装置101.他の制御装置との
間の制御手順の関連を説明するフローチャート、 第9図は1つのタスクから他のタスクを起動する指令を
実行する場合の制御手順を示すフローチャート、 第10図はロボット制御部のハードウェア構成を示すブ
ロック図、 第11図乃至第14図はロボット制御部の制御手順を示
すフローチャート、 第15図はI10制御部のハードウェア構成を示すブロ
ック図、 第16図はI10制御部の制御手順を示すフローチャー
トである。 図中、1・・・ロボット、2・・・X軸ベース、3・・
・X軸モータ、4・・・Y軸モーク、5・・・zS軸、
6・・・2軸モータ、7・・・S軸モータ、8・・・フ
ィンガー、9・・・フィンガーラック、10・・・ワー
ク、11・・・組付治具、12・・・引出部、13・・
・ストッカー、14・・・エレベータ、15・・・エレ
ベータモータ、16・・・バッファ部、17・・・排出
部、100・・・制御装置、101・・・主制御部、1
10・・・パーソナルコンピュータである。 第4 図 マルチタスクO3 第 図 第 図 第 図 第11図 第12図 第13図 第15図 第16 図
FIG. 1 is a perspective view showing the configuration of an embodiment of the present invention when applied to an automatic assembly device consisting of a robot, a stocker, an elevator, and a buffer, and FIG. 2 is a front view of the embodiment. FIG. 1 is a diagram showing the hardware configuration of the control device of the embodiment; FIG. 4 is a diagram showing the software configuration of the control device; FIG. 5 is a diagram explaining the structure of the multitasking program OS used in the embodiment of FIG. 1. , FIG. 6 is a diagram showing the configuration of the shared RAM, FIG. 7 is a flowchart of the task initialization program in the embodiment of FIG. 1, and FIG. 8 is a diagram showing the configuration of the personal computer 110. Main controller 101. A flowchart explaining the relationship of control procedures with other control devices. FIG. 9 is a flowchart showing a control procedure when executing a command to start another task from one task. FIG. 10 is a robot control unit. 11 to 14 are flowcharts showing the control procedure of the robot control section, FIG. 15 is a block diagram showing the hardware configuration of the I10 control section, and FIG. 16 is the I10 control section. 3 is a flowchart showing a control procedure. In the figure, 1... robot, 2... X-axis base, 3...
・X-axis motor, 4...Y-axis motor, 5...zS-axis,
6... 2-axis motor, 7... S-axis motor, 8... finger, 9... finger rack, 10... workpiece, 11... assembly jig, 12... drawer part , 13...
- Stocker, 14... Elevator, 15... Elevator motor, 16... Buffer section, 17... Discharge section, 100... Control device, 101... Main control section, 1
10... It is a personal computer. Figure 4 Multitasking O3 Figure Figure Figure 11 Figure 12 Figure 13 Figure 15 Figure 16

Claims (3)

【特許請求の範囲】[Claims] (1)組付作業を行なうロボットと、該ロボットにロボ
ットが要求するワークを供給する物品供給部より成る自
動組立装置を制御するための制御装置であって、 上記ロボット及び物品供給部の各々の動作手順を記述す
る複数の動作手順プログラムを記憶する第1の記憶手段
と、 上記動作手順プログラムための各々個別のデータ部分を
記憶する第2の記憶手段と、 上記ロボット及び物品供給部のための夫々の動作手順プ
ログラムを解釈する1つの解釈プログラムを記憶し、こ
の解釈プログラムを上記動作手順プログラム毎のデータ
部分を用いることにより、これらの複数の動作手順プロ
グラムをリエントラント方式で実行する実行手段とを具
備する自動組立装置の制御装置。
(1) A control device for controlling an automatic assembly device consisting of a robot that performs assembly work and an article supply section that supplies the robot with workpieces requested by the robot, the control device comprising: a robot that performs assembly work; a first storage means for storing a plurality of operation procedure programs describing operation procedures; a second storage means for storing individual data portions for each of the operation procedure programs; Execution means stores one interpretation program for interpreting each operation procedure program, and executes the plurality of operation procedure programs in a reentrant manner by using the data part of each of the operation procedure programs in this interpretation program. A control device for automatic assembly equipment.
(2)前記動作手順プログラムと解釈プログラムとはマ
ルチタスクプログラムOSの下で制御される事を特徴と
する請求項の第1項に記載の自動組立装置の制御装置。
(2) The control device for an automatic assembly apparatus according to claim 1, wherein the operating procedure program and the interpretation program are controlled under a multitasking program OS.
(3)前記ロボット及び部品供給部は夫々の動作部を有
し、 前記実行手段は、上記解釈プログラムが解釈した上記動
作部のための命令を、これらの動作部に指令する事を特
徴とする請求項の第1項に記載の自動組立装置の制御装
置。
(3) The robot and the parts supply section each have respective operating sections, and the execution means instructs these operating sections with instructions for the operating sections interpreted by the interpretation program. A control device for an automatic assembly device according to claim 1.
JP2206785A 1990-08-06 1990-08-06 Control device for automatic assembly equipment Expired - Lifetime JP2954294B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2206785A JP2954294B2 (en) 1990-08-06 1990-08-06 Control device for automatic assembly equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2206785A JP2954294B2 (en) 1990-08-06 1990-08-06 Control device for automatic assembly equipment

Publications (2)

Publication Number Publication Date
JPH0492902A true JPH0492902A (en) 1992-03-25
JP2954294B2 JP2954294B2 (en) 1999-09-27

Family

ID=16529058

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2206785A Expired - Lifetime JP2954294B2 (en) 1990-08-06 1990-08-06 Control device for automatic assembly equipment

Country Status (1)

Country Link
JP (1) JP2954294B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06214632A (en) * 1993-01-18 1994-08-05 Canon Inc Module type controller for automatic assembling device
JPH1015836A (en) * 1996-07-05 1998-01-20 Seiko Epson Corp Robot controller and method for controlling the same
JP2006048231A (en) * 2004-08-02 2006-02-16 Denso Wave Inc Controller and computer program
JP2010503067A (en) * 2006-09-05 2010-01-28 サンネン プロダクツ カンパニー Controller for automatic control of machining parameters with full integration of gauge system into machine control

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06214632A (en) * 1993-01-18 1994-08-05 Canon Inc Module type controller for automatic assembling device
JPH1015836A (en) * 1996-07-05 1998-01-20 Seiko Epson Corp Robot controller and method for controlling the same
JP2006048231A (en) * 2004-08-02 2006-02-16 Denso Wave Inc Controller and computer program
JP2010503067A (en) * 2006-09-05 2010-01-28 サンネン プロダクツ カンパニー Controller for automatic control of machining parameters with full integration of gauge system into machine control

Also Published As

Publication number Publication date
JP2954294B2 (en) 1999-09-27

Similar Documents

Publication Publication Date Title
US6807461B2 (en) Coordinated robot control from multiple remote instruction sources
US6031973A (en) Robot and its controller method
US5742824A (en) Program control system in multitask environment
US9639080B2 (en) Controller for controlling machine tool and robot
JPS62282305A (en) Robot process and robot system
JPH0492902A (en) Controller for automatic assembly device
JPH0492903A (en) Controller for automatic assembly device
JPH02257204A (en) Collision evasion control system for plural robot arms
JP2962786B2 (en) Control device for automatic assembly equipment
JPH04305704A (en) Robot controller
JPS62165207A (en) Robot controller
JPH056213A (en) Method and device for controlling industrial robot
Nevliudov et al. Multithreaded Software Control of Industrial Manipulator Movement
JPH10301608A (en) Controller for work machine
JPH089152B2 (en) Automatic generation method of operation procedure of multi-arm manipulator
JPH1195825A (en) Method for executing numerical control program
JP3664910B2 (en) Robot control device
Dai Towards Skills-based Easy Programming of Dual-arm Robot Applications.
JPS63250712A (en) Control device for numerical control working machine
JPH01197807A (en) Machine sequence control system for numerical controller
JPH1153020A (en) Method and device for driving robot
JPH0651820A (en) Control method for work robot
JPS63109992A (en) Industrial robot
JPH07104824A (en) Robot controller
Hattori et al. Design and Prototype of Reusable Software Library for Controlling Space Robots

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070716

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080716

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080716

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090716

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090716

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 11