WO2010089951A1 - ロボットシステム、ロボット制御装置およびロボットシステムのソフトウェア更新方法 - Google Patents

ロボットシステム、ロボット制御装置およびロボットシステムのソフトウェア更新方法 Download PDF

Info

Publication number
WO2010089951A1
WO2010089951A1 PCT/JP2010/000121 JP2010000121W WO2010089951A1 WO 2010089951 A1 WO2010089951 A1 WO 2010089951A1 JP 2010000121 W JP2010000121 W JP 2010000121W WO 2010089951 A1 WO2010089951 A1 WO 2010089951A1
Authority
WO
WIPO (PCT)
Prior art keywords
software
robot
robot control
storage unit
update
Prior art date
Application number
PCT/JP2010/000121
Other languages
English (en)
French (fr)
Inventor
池田達也
Original Assignee
パナソニック株式会社
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 パナソニック株式会社 filed Critical パナソニック株式会社
Priority to EP10738295.4A priority Critical patent/EP2249222A4/en
Priority to CN201080001762.3A priority patent/CN102047191B/zh
Priority to JP2010514737A priority patent/JP5051298B2/ja
Priority to US12/866,326 priority patent/US20100325623A1/en
Publication of WO2010089951A1 publication Critical patent/WO2010089951A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31418NC program management, support, storage, distribution, version, update
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39448Same teach pendant connects to many robot controllers over network

Definitions

  • the present invention relates to a robot system that updates software stored in a robot control device and a software update method of the robot system.
  • the conventional software update method of the robot control device is performed by replacing the PROM in which the software is written on the substrate.
  • EPROMs Erasable Programmable Read Only Memory
  • an external terminal such as a personal computer and a robot control device are connected by a communication cable, and the software is an external terminal Is transferred to the control device, and the software in the control device is rewritten.
  • a robot control apparatus has been proposed which can connect an external terminal and a robot control apparatus through a network line and simultaneously perform software update on a plurality of robot control apparatuses by one external terminal (for example, see Patent Document 1) ).
  • system program of the network communication function and the function of rewriting the memory is activated, and a new system program associated with updating or changing the application is transferred from the host computer to each robot control device via the communication network.
  • a robot control device has also been proposed that automatically rewrites the system program of each robot control device into a new transferred system program by the function of rewriting memory in each robot control device (for example, see Patent Document 2). .
  • a robot control device equipped with an EPROM a plurality of robot control devices are connected by a network line, the software version stored in the EPROMs of other robot control devices is confirmed, and the other robot control devices Transfers software via a network line when it is confirmed that it is newer than the robot controller.
  • software update is performed without the host computer or the external terminal.
  • the robot control device that has completed the software update transfers the software to the other robot control devices connected by the network line, and the received robot control device performs its own software update after the reception is completed.
  • a software update work is sequentially propagated, and a robot control device is completed in which software update of a plurality of robot control devices is completed (for example, see Patent Document 3).
  • Patent Document 1 and Patent Document 2 require an external terminal and a host computer for transferring software to the robot control device.
  • the external terminal or host computer and the robot control device need to be connected by the same communication line, it is necessary to carry the external terminal, or the host computer needs to be prepared and installed. .
  • software can not be updated.
  • the versions of all the robot control devices be the same. If the software version is different, the operation method and display screen may differ depending on the version, and the operator may be confused. Also, if the robot's motion locus differs due to the different versions, the same teaching program can not perform the same operation, and it is necessary to teach the motion locus, that is, the teaching program, for each version. is there. In addition, if there is a defect in the new version of the software, there is also a case where the version is downgraded to the old version that was operating stably. Even in this case, all robot control devices constituting the production line are unified to the old version It is necessary to.
  • the version of software is always confirmed. Then, when the software version is already a new version, software update is not performed, and the software version may not be unified.
  • the robot control device A is version 1.00 and the robot control device B is version 3.00
  • the update operation is performed using software of version 2.00
  • the robot control device A is version 2.00.
  • the robot controller B remains at version 3.00.
  • the versions of the two robot control devices do not match, and the operation method and the display screen differ depending on the version, and the operator is overwhelmed. Also, even if you want to downgrade to the old version 1.00, which has a defect in the new version of the software and has been stable, you can not revert to the old version.
  • the plurality of robot control devices can not be updated at the same time, and it takes time to complete the entire software update operation.
  • the software update work of the robot control device is not completed for some reason in the first few machines that have just started the software update work, the propagation start of the software update work may become extremely slow or spread. It will not happen.
  • the propagation time of software update work is delayed because the writing time of EPROM is long. .
  • the propagation start of software update work becomes extremely slow.
  • the general characteristics of the EPROM are described, unlike the high-speed random read / write RAM, the EPROM has a limited number of erase / write operations, and in the few cases, it is about 100 times to 300 times. There is also.
  • erase and write are concentrated on a specific block, only that block may exceed the write count limit and become erasable and non-writable.
  • the present invention does not require an external terminal or a host computer to update software, can unify a plurality of robot control devices into old versions, and does not require confirmation of currently stored versions at a high speed.
  • a robot system capable of updating and a method of updating software of the robot system are provided.
  • the robot system is a robot system having a transmitting side robot control device for transmitting updating software and a receiving side robot control device for receiving updating software from the transmitting side robot control device, and the transmitting side robot control
  • the apparatus and the receiving-side robot control apparatus respectively store a first storage unit storing a software update processing program and robot operation control software, and a second storage storing a software update processing program read from the first storage unit.
  • a third storage unit storing update software, and a communication unit transmitting and receiving the update software stored in the third storage unit.
  • a robot control apparatus includes a first storage unit storing a software update processing program and robot operation control software, and a second storage unit storing a software update processing program read from the first storage unit. And a third storage unit for storing the update software, and a communication unit for transmitting and receiving the update software stored in the third storage unit.
  • a first storage unit storing a software update processing program and robot operation control software, and a software update processing program read from the first storage unit are stored.
  • a software updating method of a robot system comprising: a plurality of robot control devices each having a storage unit, a third storage unit storing update software, and a communication unit transmitting / receiving update software stored in the third storage unit
  • a step of determining a transmitting-side robot control device to which update software is to be transmitted among the plurality of robot control devices, and receiving the update software transmitted from the transmission-side robot control device of the plurality of robot control devices Determining a side robot controller, and a transmitting side robot
  • the control device transmits the update software stored in the third storage unit to the reception-side robot controller via the communication unit; and the transmission-side robot controller uses the update software stored in the third storage unit; 1) updating at least one of the software update processing program and the robot operation control software stored in the storage unit; and the update software transmitted from the transmission-side robot
  • an external terminal and a host computer are not required to update software, a plurality of robot control devices can be unified to the old version, confirmation of the currently stored version is unnecessary, and the speed is high. It can be updated. Moreover, software can be updated simultaneously from one transmission-side robot control device to a plurality of reception-side robot control devices.
  • FIG. 1 is a block diagram showing a robot system according to an embodiment of the present invention.
  • FIG. 2 is a schematic configuration view showing a robot control device of the robot system in the embodiment.
  • FIG. 3 is a schematic configuration diagram showing software stored in an EPROM of the robot control device in the embodiment.
  • FIG. 4 is a flow chart showing the operation of the transmission side robot control apparatus in the embodiment.
  • FIG. 5 is a flow chart showing the operation of the reception side robot control apparatus in the embodiment.
  • FIG. 1 is a block diagram showing a robot system according to an embodiment of the present invention.
  • a plurality of robot control devices 12A to 12F are connected by a communication line 11.
  • a communication cable for transmitting an electric signal is generally used as the communication line 11, but wireless communication or optical communication may be used as long as the electric signal can be transmitted.
  • the robot control devices 12A to 12F are connected to the robots 13A to 13F.
  • the robot control devices 12A to 12F control the operations of the robots 13A to 13F, respectively.
  • FIG. 2 is a schematic configuration view showing a robot control device of the robot system in the embodiment.
  • the robot controller 21 is connected to a teaching pendant 22 which is a robot teaching operation panel and a robot 13 (also referred to as a manipulator but also referred to as a robot in the present embodiment).
  • the operator operates the teaching pendant 22 to teach the robot 13 an operation via the robot control device 21 and store data in the robot control device 21.
  • the robot control device 21 corresponds to the robot control devices 12A to 12F in FIG. 1, and the robot 13 corresponds to the robots 13A to 13F in FIG.
  • the robot control device 21 stores a CPU (central processing unit) 23 for controlling the entire robot control device 21 and robot operation control software (hereinafter simply referred to as software) for controlling the robot 13.
  • An EPROM 27 which is a one storage unit is provided.
  • the EPROM 27 is electrically erasable / writable and nonvolatile, and the reading speed by the CPU 23 is high, but generally the erasing / writing speed is much slower than the read speed. Further, the software written in the EPROM 27 is implemented with multitasking processing, and can switch and execute a plurality of processings, and it is possible to apparently execute processing in parallel.
  • a RAM (Random Access Memory) 24 which is a second storage unit stores a program taught by the operator using the teaching pendant 22 and setting data set.
  • the RAM 24 is capable of high speed read / write by the CPU 23 at any time.
  • the RAM 24 itself is volatile, but its contents are held by a backup battery or the like.
  • the RAM 24 is configured of a non-volatile element without a backup battery.
  • the robot drive unit 25 drives the robot 13.
  • a motor driver unit (not shown) for driving a motor (not shown) in the robot 13 is driven by an instruction from the CPU 23.
  • the communication unit 28 performs communication processing with the communication line 11. Data transmission to another robot control device 21 or data reception from another robot control device 21 is performed according to an instruction from the CPU 23.
  • the third storage unit has an attachment / detachment unit that detachably holds the external storage medium. That is, the storage media slot 26 which is the removable unit is inserted into and retained by the storage media 26B.
  • the storage medium 26 B held in the storage medium slot 26 can be read / written by the CPU 23.
  • the storage medium 26B is, for example, a commercially available NAND flash memory such as an SD memory or Compact Flash (registered trademark). In general, the writing speed of the NAND flash memory is much faster than the writing speed of the EPROM 27.
  • the teaching pendant 22 is provided with a storage media slot 22A which is another detachable portion.
  • Another storage medium 22B is detachably held in the storage media slot 22A. The operator inserts the other storage medium 22B in which the software is written at the time of the software update operation.
  • FIG. 3 is a diagram showing the configuration of software stored in the EPROM 27.
  • software 31 is stored in the EPROM 27.
  • the software 31 is a group of programs that the CPU 23 interprets and causes the robot 13 and the robot control device 21 to function as a whole. For example, trajectory calculation control of the robot 13, motor control for driving a motor in the robot 13, display / key input control of the teaching pendant 22 for operation by the operator, programs and setting data taught by the operator It is so-called robot operation control software such as write / read control to the RAM 24, control of communication performed via the communication unit 28, and write / read control to a storage medium performed via the storage media slot 26. That is, all the processes necessary to operate the entire robot apparatus are stored as software 31 in the EPROM 27.
  • the EPROM 27 stores a software update processing program 30.
  • the software update processing program 30 is a group of programs for erasing / writing the EPROM 27 itself.
  • the EPROM 27 itself can not be erased / written. Therefore, when erasing / writing the EPROM 27, the software update processing program 30 is once copied from the EPROM 27 to the RAM 24, and the CPU 23 erases the EPROM 27 while reading and interpreting the software update processing program 30 copied to the RAM 24. / Write. Thereby, the software in the EPROM 27 can be updated.
  • the software update processing program 30 in the EPROM 27 can also be erased / written, and the software update processing program 30 itself can be updated.
  • the CPU 23 copies the software update processing program 30 to the RAM 24. Processing is unnecessary. However, in this case, the software update processing program 30 itself in the EPROM 27 can not be erased / written.
  • any one of them is taken as a transmission side robot control device.
  • the robot control device to be used as the transmitting side robot control device may be arbitrarily selected by the operator who is going to perform the software update operation.
  • a robot control device installed at a place where it is easy to work may be arbitrarily selected.
  • the robot control device 12A shown in FIG. 1 is selected as the transmission side robot control device 12A, and the other robot control devices 12B to 12F are selected as the reception side robot control devices 12B to 12F.
  • the internal configurations of the transmitter-side robot controller 12A and the receiver-side robot controllers 12B to 12F will be described in common using FIG.
  • the operator inserts the storage medium 22B in which the software for update is written into the storage media slot 22A in the teaching pendant 22 connected to the transmission side robot control device 12A in advance.
  • step S41 the operator performs an operation of “software update start (transmission side) selection” using the teaching pendant 22 connected to the transmission side robot control device 12A (step S41).
  • This operation is realized by an operation of selecting a menu of “software update (transmission side)” on the operation screen of the teaching pendant 22.
  • it is realized by an operation of switching a key switch (not shown) provided on the teaching pendant 22 to “software update (transmission side)”.
  • the transmission side robot control device 12A is determined.
  • any operation may be performed as long as the CPU 23 in the transmitter-side robot control device 12A can interpret it as "software update (transmission side)".
  • step S41 When software update (transmission side) is selected in step S41, the CPU 23 updates the software for update in the storage medium 22B inserted in the storage media slot 22A in the teaching pendant 22 into the storage in the transmission side robot control device 12A.
  • the data is copied to the storage medium 26B previously inserted into the media slot 26 (step S42).
  • the procedure for copying the software for update from the storage medium 22B to the storage medium 26B if the storage medium 26B in which the software for update is written is inserted in advance into the storage medium slot 26 of the transmitting side robot controller 12A. Can be omitted.
  • the CPU 23 simultaneously transfers the software for update from the transmitting-side robot control device 12A to all the receiving-side robot control devices 12B to 12F (step S43).
  • the CPU 23 reads the software for update from the storage medium 26B inserted into the storage media slot 26 in the transmission side robot control device 12A, and performs data transmission processing to the communication unit 28. Thereby, the data transmitted from the transmission side robot control device 12A is transmitted to the reception side robot control devices 12B to 12F through the communication line 11.
  • Data transmission is performed by multitask processing.
  • the CPU 23 can perform software transmission in parallel to the plurality of receiving side robot control devices 12B to 12F by this multitask processing. Therefore, the plurality of receiving robot control devices 12B to 12F can simultaneously receive the update software transmitted from the transmitting robot control device 12A.
  • the receiver robot controller 12B receives the transmission packet in the storage medium 26B in the receiver robot controller 12B.
  • Store the packet While the receiving robot controller 12B stores the received packet in the storage medium 26B in the receiving robot controller 12B, the transmitting robot controller 12A is kept waiting for the transmission to the receiving robot controller 12B. It becomes a state. Then, while waiting, the packet can be transmitted to the other reception side robot control devices 12C to 12F.
  • a packet is a block of divided data in packet communication which is divided into small units and transmitted / received when data having a large capacity is transmitted / received. By transmitting and receiving as divided data chunks, it is possible to reduce the load on the network and the load on the receiving side.
  • the transmission-side robot control device 12A can transmit the software for update to the plurality of reception-side robot control devices 12B to 12F without generating unnecessary time. That is, software transmission can be performed efficiently. Therefore, apparently, software can be transmitted in parallel to the plurality of receiving robot control devices 12B to 12F.
  • the transmitting side robot control device 12A executes the erasing / writing of the EPROM 27.
  • the program for software update processing 30 stored in is copied to the RAM 24 (step S44). This is because, as described above, generally, the CPU 23 can not erase / write the EPROM 27 itself while reading and interpreting the software update processing program 30 stored in the EPROM 27.
  • step S45 software update processing is performed (step S45).
  • the CPU 23 reads and interprets the software update processing program 30 copied onto the RAM 24 and executes erasing of the EPROM 27. Thereafter, the CPU 23 reads the update software copied to the storage medium 26B in the transmitter-side robot control device 12A, and writes the software to the EPROM 27. In this manner, the program for software update process 30 is copied once to the RAM 24, and the CPU 23 reads, interprets, and executes the program for software update process 30 copied onto the RAM 24 to complete the erasing / writing of the EPROM 27. .
  • any one of them becomes the transmission side robot control device, and all the other robot control devices become the reception side robot control devices.
  • the receiver robots 12B to 12F are receivers.
  • all the components other than the transmitter-side robot controller 12A are the receiver-side robot controllers 12B to 12F, but any robot controller other than the transmitter-side robot controller 12A may be the receiver.
  • the operator uses the teaching pendant 22 connected to the reception-side robot control devices 12B to 12F to perform an operation of “software update start (reception side) selection” (step S51).
  • This operation is realized by an operation such as selecting a menu of "software update (reception side)" on the operation screen of the teaching pendant 22.
  • it is realized by an operation of switching a key switch (not shown) provided on the teaching pendant 22 to “software update (reception side)”.
  • any operation may be performed as long as the CPU 23 in the reception-side robot control devices 12B to 12F can interpret that "software update (reception side)" is selected.
  • the robot controller that has made a request to be "software update (receiver)" via the communication line 11 from the transmitter robot controller 12A to the receiver robots controller 12B to 12F, and received this request The operation may be such that 12B to 12F become the receiving side robot control devices 12B to 12F.
  • the receiving side robot control devices 12B to 12F are determined by such an operation.
  • step S51 When “software update (reception side)” is selected in step S51, the reception-side robot control devices 12B to 12F are in a state of waiting for reception of update software transmitted from the transmission-side robot control device 12A.
  • the CPU 23 in the receiving-side robot control devices 12B to 12F performs the receiving process of the update software transmitted from the transmitting-side robot control device 12A, and further, the storage media in the receiving-side robot control devices 12B to 12F.
  • the software for update is copied to 26B (step S52).
  • the reception side robot control devices 12B to 12F complete reception of the first transmission packet from the transmission side robot control device 12A
  • the first transmission packet is copied to the storage medium 26B in the reception side robot control devices 12B to 12F.
  • the copying to the storage medium 26B is completed, the next transmission packet can be received.
  • the software update processing program 30 is copied to the RAM 24 (step S53).
  • step S54 software update processing is performed (step S54).
  • the CPU 23 reads out and interprets the software update processing program 30 copied on the RAM 24 and executes deletion of the storage content of the EPROM 27.
  • the CPU 23 reads the update software copied to the storage medium 26B in the reception-side robot control devices 12B to 12F, and writes the software to the EPROM 27.
  • the software update processing program 30 is temporarily stored in the RAM 24, and then the software update processing program 30 in the RAM 24 is executed to update the software of the EPROM 27.
  • the transmitting side robot control device 12A updates the receiving side robot control devices 12B to 12F. Only the software transmission for the purpose may be performed to all the reception side robot control devices 12B to 12F.
  • the time taken to transmit the update software is very short with respect to the erase / write time to the EPROM 27, so the transmission of the update software to all the receiving side robot control devices 12B to 12F is completed almost simultaneously. That is, the software update of all the reception side robot control devices 12B to 12F is completed almost simultaneously, and the software of all the robot control devices 12A to 12F can be updated in a short time.
  • software of a plurality of robot control devices 12A to 12F can be simultaneously updated in a short time without an external terminal or a host computer.
  • the removable and non-volatile storage medium 26B in which software is written in advance is inserted into the storage media slot 26 in the transmission side robot controller 12A, and the transmission side robot controller 12A is used for updating in the storage medium 26B.
  • the above software is simultaneously transferred to all receiving robot control devices 12B to 12F.
  • the software of the plurality of receiving robot control devices 12B to 12F can be simultaneously updated only by inserting the storage medium 26B in which the software is written into the transmitting robot control device 12A.
  • the reception side robot control devices 12B to 12F are stored in the storage medium 26B.
  • the update software is written to the EPROM 27. This allows the received update software to be buffered once in the storage medium 26B. Therefore, even if the writing to the EPROM 27 is interrupted for any reason, the updating operation can be performed again from the storage medium 26B to recover. Further, even if the software in the robot control device in operation in the production line is destroyed for some reason, the updating operation can be performed again from the storage medium 26B to be restored.
  • the writing of the update software to the removable non-volatile storage medium 26B in the transmitting-side robot control device 12A is performed by the removable non-volatile storage medium in the teaching pendant 22 of the transmitting-side robot control device 12A. This is done by transferring software for update from 22B. For example, even if the robot control device is stored in an easily accessible place such as the middle floor of the factory or in the attic space, the software for updating is in the teaching pendant 22 connected to the transmitting side robot control device 12A. By inserting the written storage medium 22B and transferring software for updating from the teaching pendant 22 to the storage medium 26B in the transmission side robot control apparatus 12A, the software of the plurality of reception side robot control apparatuses 12B to 12F is simultaneously processed. It becomes possible to update.
  • the transmitting side robot control device 12A and the plurality of receiving side robot control devices 12B to 12F in the present embodiment are disposed in a predetermined area, and are connected without passing through the public line.
  • region is an inside of one factory, 1 installation line in a factory, etc., for example.
  • the present invention it is not necessary to use an external terminal or a host computer to update software in a robot control device, and one robot control device can simultaneously update software in a plurality of other robot control devices. be able to. Therefore, for example, it is useful as a robot system that updates software of a plurality of robot control devices installed in a predetermined area.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Robotics (AREA)
  • Manufacturing & Machinery (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Stored Programmes (AREA)

Abstract

送信側ロボット制御装置(21)および受信側ロボット制御装置(21)が、それぞれ、ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部であるEPROM(27)と、第1記憶部から読み出されたソフトウェア更新処理用プログラムを記憶する第2記憶部であるRAM(24)と、更新用ソフトウェアを記憶する第3記憶部である記憶メディア(26B)とを備えることにより、ソフトウェア更新のための外部端末やホストコンピュータが不要で、複数のロボット制御装置を古いバージョンにも統一することができ、現在記憶しているバージョンの確認が不要で、速い速度で更新を行なうことができる。

Description

ロボットシステム、ロボット制御装置およびロボットシステムのソフトウェア更新方法
 本発明は、ロボット制御装置内に記憶するソフトウェアの更新を行なうロボットシステムおよびロボットシステムのソフトウェア更新方法に関するものである。
 従来のロボット制御装置のソフトウェア更新方法は、ソフトウェアが書き込まれたPROMを基板上で差し替えることにより行われていた。しかし、昨今は電気的に消去/書き込みが可能なフラッシュメモリなどのEPROM(Erasable Programmable Read Only Memory)の普及に伴い、パソコンなどの外部端末とロボット制御装置を通信ケーブルで接続し、ソフトウェアを外部端末から制御装置に転送し、制御装置内のソフトウェアを書き換える方法が取られる。また、外部端末とロボット制御装置をネットワーク回線で接続し、複数のロボット制御装置に対するソフトウェア更新を1台の外部端末で同時に行うことのできるロボット制御装置が提案されている(例えば、特許文献1参照)。
 また、ネットワーク通信機能およびメモリを書き換える機能のシステムプログラムを起動させ、更新もしくは用途変更に伴う新たなシステムプログラムをホストコンピュータから通信ネットワークを介して各々のロボット制御装置に転送する。各ロボット制御装置は、メモリを書き換える機能により、自動的に各々のロボット制御装置のシステムプログラムを、転送された新たなシステムプログラムに書き換えるロボット制御装置も提案されている(例えば、特許文献2参照)。
 また、EPROMを備えたロボット制御装置において、複数のロボット制御装置をネットワーク回線で接続し、他のロボット制御装置のEPROMに記憶されたソフトウェアバージョンを確認して、他のロボット制御装置の方が自ロボット制御装置より新規であると確認された場合に、ネットワーク回線を介してソフトウェアを転送する。これにより、ホストコンピュータや外部端末無しにソフトウェア更新を行なう。さらに、ソフトウェアの更新が完了したロボット制御装置が、ネットワーク回線によって接続された他のロボット制御装置に対してソフトウェアを転送し、受信したロボット制御装置が受信完了後に自身のソフトウェア更新を行なう。これを繰り返すことにより、順次ソフトウェア更新作業が伝播していき、複数ロボット制御装置のソフトウェア更新が完了するロボット制御装置が提案されている(例えば、特許文献3参照)。
 しかしながら、特許文献1や特許文献2に示す従来のロボット制御装置のソフトウェア更新方法では、ロボット制御装置にソフトウェアを転送するための外部端末やホストコンピュータが必要である。また、これらの外部端末やホストコンピュータとロボット制御装置が同一の通信回線で接続されている必要があり、外部端末を持ち運ぶ必要がある場合や、ホストコンピュータを準備して設置しておく必要がある。また、これらの外部端末やホストコンピュータが故障した場合は、ソフトウェアの更新を実施できない。
 また、生産ラインが複数のロボットで構成されている場合、すべてのロボット制御装置のバージョンが同一となっている方が望ましい。もし、ソフトウェアバージョンが異なっていると、操作方法や表示画面がバージョンによって異なってしまい、作業者がとまどってしまう。また、バージョンが異なることによって、ロボットの動作軌跡が異なってしまう場合には、同一の教示プログラムで同一の動作をさせることができず、バージョンごとに動作軌跡、すなわち教示プログラムを教示しなおす必要がある。また、新しいバージョンのソフトウェアに不具合がある場合には、安定動作していた古いバージョンにバージョンダウンするケースもあり、この場合においても、生産ラインを構成する複数のロボット制御装置すべてを古いバージョンに統一することが必要である。
 一方、特許文献3に示す従来のホストコンピュータを用いずにソフトウェアを更新する方法では、必ずソフトウェアのバージョンの確認を行う。そして、ソフトウェアのバージョンがすでに新しいバージョンとなっている場合にはソフトウェア更新が行われないようになっており、ソフトウェアのバージョンが統一されない場合が生じる。例えば、ロボット制御装置Aがバージョン1.00、ロボット制御装置Bがバージョン3.00の場合、バージョン2.00のソフトウェアを用いて更新作業を実施した場合、ロボット制御装置Aはバージョン2.00に更新されるが、ロボット制御装置Bはバージョン3.00のままとなる。この場合、2台のロボット制御装置はバージョンが一致しない状態となり、操作方法や表示画面がバージョンによって異なってしまい、作業者がとまどってしまう。また、新しいバージョンのソフトウェアに不具合があり、安定動作していた古いバージョン1.00にバージョンダウンをしたくても、古いバージョンに戻すことはできない。
 また、特許文献3に示すホストコンピュータ無しに行うソフトウェア更新方法では、まず1台のロボット制御装置に対して外部接続インターフェースに外部記憶装置を接続し、人為的にソフトウェアの更新作業を行う必要があり、この作業時間が必要となってしまう。また、ソフトウェアの更新が完了したロボット制御装置が、ネットワーク回線によって接続された他のロボット制御装置に対してソフトウェアを転送する。その後、受信したロボット制御装置が受信完了後に自身のソフトウェアの更新を行い、ソフトウェアの更新後に他のロボット制御装置にソフトウェアの送信を行う。これにより、順次ソフトウェア更新作業が伝播していくものである。従って、何らかの原因で自分自身のソフトウェア更新作業が完了しない場合、例えばソフトウェアを格納するEPROMが書き込み不可となった場合などは、他のロボット制御装置へのソフトウェア送信が行われない。そのため、複数のロボット制御装置を同時に更新することができず、全体のソフトウェア更新作業が完了するまでに時間がかかってしまう。特に、ソフトウェアの更新作業を開始したばかりの最初の数台において何らかの原因でロボット制御装置のソフトウェアの更新作業が完了しない場合には、ソフトウェアの更新作業の伝播開始が極端に遅くなるか、もしくは伝播しない事態となってしまう。
 また、ソフトウェアの送受信時間に対してEPROMの書き込み時間の方が長い場合についても、ソフトウェアの送受信が短時間で終了してもEPROMの書き込み時間が長いためにソフトウェア更新作業の伝播が遅くなってしまう。特に、ソフトウェアの更新を開始したばかりの最初の数台においては、ソフトウェア更新作業の伝播開始が極端に遅くなってしまう。ここでEPROMについて一般的な特性を述べると、高速な随時読み出し/書き込みが可能なRAMとは異なり、EPROMは消去・書き込みの回数が限られており、少ないものでは100回から300回程度のものもある。また、消去・書き込みが特定のブロックに集中すると、そのブロックのみ書き込み回数限度を超えて消去・書き込み不可能となる可能性もある。また、一度ブロックごとに消去操作を行ってから書き込み操作を行う必要があり、EPROMの読み出し速度に比べると、消去・書き込み速度ははるかに遅い。
 一方、ソフトウェア送受信に使用する通信方式として例えばイーサネット(登録商標)規格上のLANネットワークでは通信速度が1ギガビット/秒の規格も存在し、無線LANにおいても300メガビット/秒の規格も存在する。一般的に、ソフトウェアの送受信時間に対してEPROMの消去・書き込み時間の方がはるかに長い。
特許第3034850号公報 特許第3550210号公報 特開2008-139972号公報
 本発明は、ソフトウェアを更新するために外部端末やホストコンピュータが不要で、複数のロボット制御装置を古いバージョンにも統一することができ、現在記憶しているバージョンの確認が不要で、速い速度で更新を行なうことができるロボットシステムおよびロボットシステムのソフトウェア更新方法を提供するものである。
 本発明のロボットシステムは、更新用ソフトウェアを送信する送信側ロボット制御装置と、送信側ロボット制御装置から更新用ソフトウェアを受信する受信側ロボット制御装置とを有するロボットシステムであって、送信側ロボット制御装置および受信側ロボット制御装置は、それぞれ、ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部と、第1記憶部から読み出されたソフトウェア更新処理用プログラムを記憶する第2記憶部と、更新用ソフトウェアを記憶する第3記憶部と、第3記憶部に記憶された更新用ソフトウェアを送受信する通信部とを備えた構成を有する。
 また、本発明のロボット制御装置は、ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部と、第1記憶部から読み出されたソフトウェア更新処理用プログラムを記憶する第2記憶部と、更新用ソフトウェアを記憶する第3記憶部と、第3記憶部に記憶された更新用ソフトウェアを送受信する通信部とを備えた構成を有する。
 また、本発明のロボットシステムのソフトウェア更新方法は、ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部と、第1記憶部から読み出されたソフトウェア更新処理用プログラムを記憶する第2記憶部と、更新用ソフトウェアを記憶する第3記憶部と、第3記憶部に記憶された更新用ソフトウェアを送受信する通信部とを有するロボット制御装置を複数備えたロボットシステムのソフトウェア更新方法であって、複数のロボット制御装置のうち更新用ソフトウェアを送信する送信側ロボット制御装置を決定するステップと、複数のロボット制御装置のうち送信側ロボット制御装置から送信された更新用ソフトウェアを受信する受信側ロボット制御装置を決定するステップと、送信側ロボット制御装置が第3記憶部に記憶された更新用ソフトウェアを通信部を介して受信側ロボット制御装置に送信するステップと、送信側ロボット制御装置が第3記憶部に記憶された更新用ソフトウェアにより第1記憶部に記憶されているソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアのうち少なくとも一方を更新するステップと、受信側ロボット制御装置が送信側ロボット制御装置から送信された更新用ソフトウェアを前記通信部を介して受信し第3記憶部に記憶するステップと、更新用ソフトウェアを受信した受信側ロボット制御装置が第3記憶部に記憶された更新用ソフトウェアにより第1記憶部に記憶されているソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアのうち少なくとも一方を更新するステップとを備えた構成を有する。
 かかる構成により、ソフトウェアを更新するために外部端末やホストコンピュータが不要で、複数のロボット制御装置を古いバージョンにも統一することができ、現在記憶しているバージョンの確認が不要で、速い速度で更新を行なうことができる。しかも、1つの送信側ロボット制御装置から複数の受信側ロボット制御装置に対して、同時にソフトウェアの更新をすることができる。
図1は、本発明の一実施の形態におけるロボットシステムを示す構成図である。 図2は、同実施の形態におけるロボットシステムのロボット制御装置を示す概略構成図である。 図3は、同実施の形態におけるロボット制御装置のEPROM内に記憶されたソフトウェアを示す概略構成図である。 図4は、同実施の形態における送信側ロボット制御装置の動作を示すフロー図である。 図5は、同実施の形態における受信側ロボット制御装置の動作を示すフロー図である。
 以下、図面を用いて本発明を実施の形態に基づいて説明する。
 (実施の形態)
 図1は、本発明の一実施の形態におけるロボットシステムを示す構成図である。図1において、複数のロボット制御装置12A~12Fは、通信線11により接続されている。通信線11としては一般的には電気信号を伝送する通信ケーブルを用いるが、電気信号を伝送できる仕組みであれば無線通信や光通信でもよい。各ロボット制御装置12A~12Fは、ロボット13A~13Fに接続されている。各ロボット制御装置12A~12Fは、それぞれロボット13A~13Fの動作を制御する。
 図2は、同実施の形態におけるロボットシステムのロボット制御装置を示す概略構成図である。ロボット制御装置21には、ロボット教示用操作盤であるティーチングペンダント22とロボット13(マニピュレータともいうが本実施の形態ではロボットと称す)が接続されている。作業者がティーチングペンダント22を操作することにより、ロボット制御装置21を介してロボット13に動作を教示したり、ロボット制御装置21にデータを保存したりする。ロボット制御装置21は、図1におけるロボット制御装置12A~12Fに該当し、ロボット13は、図1におけるロボット13A~13Fに該当する。
 ロボット制御装置21には、ロボット制御装置21の全体を制御するCPU(中央演算処理装置)23と、ロボット13を制御するためのロボット動作制御ソフトウェア(以下、単にソフトウェアと記す)が格納される第1記憶部であるEPROM27が設けられている。
 EPROM27は、電気的に消去/書き込みが可能であり、不揮発性であり、CPU23による読み出し速度は高速であるが、一般的には消去/書き込み速度は読み出し速度よりはるかに低速である。また、EPROM27に書き込まれているソフトウェアはマルチタスク処理が実装されており、複数の処理を切り換えて実行することができ、見かけ上は並列に処理を実行することが可能である。
 第2記憶部であるRAM(Random Access Memory)24は、作業者がティーチングペンダント22を用いて教示したプログラムや設定した設定データを記憶するものである。RAM24は、CPU23による高速な随時読み出し/書き込みが可能である。一般的に、RAM24自体は揮発性であるが、バックアップ電池などにより内容が保持されている。または、RAM24は、バックアップ電池がなくとも不揮発性の素子で構成される。
 ロボット駆動部25は、ロボット13を駆動する。ロボット13内にある図示しないモータを駆動するための図示しないモータドライバユニットで構成され、CPU23からの命令により駆動される。
 通信部28は、通信線11との通信処理を行う。CPU23からの命令により、他のロボット制御装置21へのデータ送信、あるいは他のロボット制御装置21からのデータ受信を行う。
 第3記憶部は、外部記憶媒体を着脱自在に保持する着脱部を有する。すなわち、着脱部である記憶メディアスロット26は、記憶メディア26Bが着脱自在に挿入されて保持される。記憶メディアスロット26に保持された記憶メディア26Bは、CPU23による読み出し/書き込みが可能である。なお、記憶メディア26Bは、例えばSDメモリやコンパクトフラッシュ(登録商標)などの市販のNAND型フラッシュメモリなどである。一般に、EPROM27の書き込み速度に比べてNAND型フラッシュメモリの書き込み速度の方がはるかに速い。
 ティーチングペンダント22にも同様に、他の着脱部である記憶メディアスロット22Aが設けられている。記憶メディアスロット22Aには、他の記憶メディア22Bが着脱自在に保持される。作業者がソフトウェアの更新作業時にソフトウェアの書き込まれた他の記憶メディア22Bを挿入する。
 次に、EPROM27に格納されるソフトウェアの構成について説明する。図3はEPROM27内に記憶されているソフトウェアの構成を表した図である。図3に示すように、EPROM27にはソフトウェア31が格納されている。なお、ソフトウェア31は、CPU23が解釈してロボット13およびロボット制御装置21全体を機能させるためのプログラム群である。例えば、ロボット13の軌跡演算制御、ロボット13内にあるモータを駆動するためのモータ制御、作業者が操作するためのティーチングペンダント22の表示/キー入力制御、作業者が教示したプログラムや設定データのRAM24への書き込み/読み出し制御、通信部28を経由して行う通信の制御、記憶メディアスロット26を経由して行う記憶メディアへの書き込み/読み出し制御などの、いわゆるロボット動作制御ソフトウェアである。すなわち、ロボット装置全体を動作させるために必要なすべての処理がソフトウェア31としてEPROM27に格納されている。
 また、図3に示すように、EPROM27にはソフトウェア更新処理用プログラム30が格納されている。このソフトウェア更新処理用プログラム30は、EPROM27自体の消去/書き込みを行うプログラム群である。
 ここで、一般に、CPU23がEPROM27に格納されているソフトウェア更新処理用プログラム30を読み出して解釈しながら、EPROM27自体の消去/書き込みを行うことはできない。そのため、EPROM27の消去/書き込みを行う際には、ソフトウェア更新処理用プログラム30をEPROM27からRAM24に一旦コピーし、CPU23がRAM24にコピーされたソフトウェア更新処理用プログラム30を読み出して解釈しながらEPROM27の消去/書き込みを行う。これにより、EPROM27内のソフトウェアの更新が可能となる。
 また、EPROM27内のソフトウェア更新処理用プログラム30も、消去/書き込みを行うことが可能であり、ソフトウェア更新処理用プログラム30自体の更新が可能である。
 もちろんCPU23がEPROM27に格納されているソフトウェア更新処理用プログラム30を読み出して解釈しながら、EPROM27自体を消去/書き込みを行うことが可能なEPROM27の場合は、ソフトウェア更新処理用プログラム30をRAM24にコピーする処理は不要となる。しかし、この場合はEPROM27内のソフトウェア更新処理用プログラム30自身を消去/書き込みを行うことはできない。
 次に、1つのロボット制御装置である送信側ロボット制御装置から他の複数のロボット制御装置である受信側ロボット制御装置にソフトウェアを送信して受信側ロボット制御装置のソフトウェアを更新する例について説明する。なお、始めに送信側ロボット制御装置の処理フローについて説明し、次に、受信側ロボット制御装置の処理フローについて説明する。
 先ず、図4を用いて、送信側ロボット制御装置の動作の処理フローについて説明する。図1に示す複数のロボット制御装置12Aから12Fにおいて、いずれか1台が送信側ロボット制御装置とする。どのロボット制御装置を送信側ロボット制御装置にするかは、ソフトウェアの更新作業を行おうとする作業者が任意に選択すればよい。例えば、作業しやすい場所に設置されているロボット制御装置などを任意に選択すればよい。本実施の形態では、図1に示すロボット制御装置12Aを送信側ロボット制御装置12Aとして選択し、他のロボット制御装置12B~12Fを受信側ロボット制御装置12B~12Fとして選択したとして説明する。ただし、送信側ロボット制御装置12Aおよび受信側ロボット制御装置12B~12Fの内部の構成は、いずれも共通に図2を用いて説明する。
 作業者は、更新用のソフトウェアが書き込まれた記憶メディア22Bを、送信側ロボット制御装置12Aに接続されたティーチングペンダント22内の記憶メディアスロット22Aに予め挿入しておく。
 次に、作業者は、送信側ロボット制御装置12Aに接続されたティーチングペンダント22を用いて、「ソフトウェア更新開始(送信側)の選択」の操作を行う(ステップS41)。この操作は、ティーチングペンダント22の操作画面上で、「ソフトウェア更新(送信側)」というメニューを選択するといった操作で実現される。あるいは、ティーチングペンダント22に設けられた図示しないキースイッチを「ソフトウェア更新(送信側)」に切り換えるといった操作で実現される。これにより送信側ロボット制御装置12Aが決定される。しかし、送信側ロボット制御装置12A内のCPU23が、「ソフトウェア更新(送信側)」であることが選択されたと解釈できればどのような操作でもよい。
 ステップS41においてソフトウェア更新(送信側)が選択されると、CPU23はティーチングペンダント22内の記憶メディアスロット22Aに挿入された記憶メディア22B内の更新用のソフトウェアを、送信側ロボット制御装置12A内の記憶メディアスロット26に予め挿入されている記憶メディア26Bにコピーする(ステップS42)。なお、更新用のソフトウェアが書き込まれた記憶メディア26Bを、送信側ロボット制御装置12Aの記憶メディアスロット26に予め挿入しておけば、記憶メディア22Bから記憶メディア26Bへ更新用のソフトウェアをコピーする手順を省くことができる。
 次に、CPU23は、送信側ロボット制御装置12Aから全ての受信側ロボット制御装置12B~12Fへ更新用のソフトウェアの一斉転送を行う(ステップS43)。CPU23は送信側ロボット制御装置12A内の記憶メディアスロット26に挿入された記憶メディア26Bから更新用のソフトウェアを読み出し、通信部28に対してデータ送信処理を行う。これにより、送信側ロボット制御装置12Aから送信されたデータは、通信線11を介して受信側ロボット制御装置12B~12Fへ送信される。
 なお、データ送信は、マルチタスク処理によって実行される。CPU23はこのマルチタスク処理により、複数の受信側ロボット制御装置12B~12Fに対して並列してソフトウェア送信することができる。従って、複数の受信側ロボット制御装置12B~12Fは、送信側ロボット制御装置12Aから送信された更新用のソフトウェアを同時に受信することができる。
 具体的には、送信側ロボット制御装置12Aが送信パケットを1つの受信側ロボット制御装置12Bに送信したとき、受信側ロボット制御装置12Bは、受信側ロボット制御装置12B内の記憶メディア26Bに受信したパケットを記憶する。受信側ロボット制御装置12Bが受信側ロボット制御装置12B内の記憶メディア26Bに受信したパケットを記憶している間は、送信側ロボット制御装置12Aは受信側ロボット制御装置12Bに対する送信を待たされている状態となる。そして、この待たされている間に、他の受信側ロボット制御装置12C~12Fに対してパケットを送信することができる。なお、パケットとは、容量の大きなデータを送受信する際に小さな単位に分割して送受信するパケット通信における、分割したデータのかたまりのことである。分割したデータのかたまりとして送受信することにより、ネットワーク負荷および受信側の負荷を軽減することができる。
 このように、マルチタスク処理により送信側ロボット制御装置12Aは無駄な時間が発生することがなく、複数の受信側ロボット制御装置12B~12Fに対して更新用のソフトウェアの送信を行うことができる。すなわち、効率的にソフトウェア送信を行うことができる。したがって、見かけ上は複数の受信側ロボット制御装置12B~12Fに対して並列してソフトウェアの送信を行うことができる。
 送信側ロボット制御装置12Aから全ての受信側ロボット制御装置12B~12Fへ更新用のソフトウェアの転送が完了すると、次に、送信側ロボット制御装置12Aは、EPROM27の消去/書き込みを実行するため、EPROM27に格納されているソフトウェア更新処理用プログラム30をRAM24にコピーする(ステップS44)。これは前述したように、一般に、CPU23が、EPROM27に格納されているソフトウェア更新処理用プログラム30を読み出して解釈しながらEPROM27自体を消去/書き込みを行うことはできないためである。
 次に、ソフトウェア更新処理を行う(ステップS45)。RAM24上にコピーされたソフトウェア更新処理用プログラム30をCPU23が読み出して解釈し、EPROM27の消去を実行する。その後、送信側ロボット制御装置12A内の記憶メディア26Bにコピーされた更新用のソフトウェアをCPU23が読み出し、EPROM27への書き込みを行う。このように、ソフトウェア更新処理用プログラム30をRAM24に一旦コピーし、RAM24上にコピーされたソフトウェア更新処理用プログラム30をCPU23が読み出して解釈して実行させることにより、EPROM27の消去/書き込みが完了する。
 次に、図5を用いて、受信側ロボット制御装置の動作の処理フローについて説明する。図1における複数のロボット制御装置12A~12Fにおいて、いずれか1台が送信側ロボット制御装置になり、その他のロボット制御装置の全てが受信側ロボット制御装置となる。本実施の形態では、上記したように、送信側ロボット制御装置12Aが送信側として選択されたので、受信側ロボット制御装置12B~12Fが受信側となる。また、本実施の形態では、送信側ロボット制御装置12A以外の全てを受信側ロボット制御装置12B~12Fとしたが、送信側ロボット制御装置12A以外の任意のロボット制御装置を受信側としてもよい。
 作業者は受信側ロボット制御装置12B~12Fに接続されたティーチングペンダント22を用いて、「ソフトウェア更新開始(受信側)の選択」の操作を行う(ステップS51)。この操作はティーチングペンダント22の操作画面上で、「ソフトウェア更新(受信側)」というメニューを選択するといった操作で実現される。あるいは、ティーチングペンダント22に設けられた図示しないキースイッチを「ソフトウェア更新(受信側)」に切り換えるといった操作で実現される。しかし、受信側ロボット制御装置12B~12F内のCPU23が、「ソフトウェア更新(受信側)」が選択されたと解釈できればどのような操作でもよい。あるいは、送信側ロボット制御装置12Aから受信側ロボット制御装置12B~12Fに対して、通信線11を経由して「ソフトウェア更新(受信側)」になる要求を行い、この要求を受信したロボット制御装置12B~12Fが受信側ロボット制御装置12B~12Fになるといった操作でもよい。このような操作により受信側ロボット制御装置12B~12Fが決定される。
 ステップS51において「ソフトウェア更新(受信側)」が選択されると、受信側ロボット制御装置12B~12Fは、送信側ロボット制御装置12Aから送信されてくる更新用のソフトウェアの受信待ち状態となる。
 次に、受信側ロボット制御装置12B~12F内のCPU23は、送信側ロボット制御装置12Aから送信されてくる更新用のソフトウェアの受信処理を行い、さらに受信側ロボット制御装置12B~12F内の記憶メディア26Bへ更新用のソフトウェアのコピーを行う(ステップS52)。送信側ロボット制御装置12Aからの最初の送信パケットを、受信側ロボット制御装置12B~12Fが受信完了すると、受信側ロボット制御装置12B~12F内の記憶メディア26Bへ最初の送信パケットをコピーする。この記憶メディア26Bへのコピーが完了すると、次の送信パケットが受信可能となる。送信側ロボット制御装置12Aからの全てのパケットの受信が完了し、更新用のソフトウェアの受信が完了すると、ソフトウェア更新処理用プログラム30をRAM24にコピーする(ステップS53)。
 次に、ソフトウェア更新処理を行う(ステップS54)。まず、RAM24上にコピーされたソフトウェア更新処理用プログラム30をCPU23が読み出して解釈し、EPROM27の記憶内容の消去を実行する。次に、受信側ロボット制御装置12B~12F内の記憶メディア26Bにコピーされた更新用のソフトウェアをCPU23が読み出し、EPROM27への書き込みを行う。このように、ソフトウェア更新処理用プログラム30を一旦RAM24に格納してから、RAM24内のソフトウェア更新処理用プログラム30を実行することで、EPROM27のソフトウェアを更新する。
 受信側ロボット制御装置12B~12Fは、更新用のソフトウェアの受信さえ完了すれば自動的にソフトウェア更新処理を開始するので、送信側ロボット制御装置12Aは、受信側ロボット制御装置12B~12Fへの更新用のソフトウェア送信のみを全ての受信側ロボット制御装置12B~12Fに対して行えばよい。
 一般に、EPROM27への消去・書き込み時間に対して、更新用のソフトウェアの送信にかかる時間はごく短いので、全ての受信側ロボット制御装置12B~12Fに対する更新用のソフトウェアの送信がほぼ同時に完了する。すなわち、全ての受信側ロボット制御装置12B~12Fのソフトウェア更新がほぼ同時に完了することになり、短時間ですべてのロボット制御装置12A~12Fのソフトウェアを更新することができる。
 以上のように、本実施の形態によれば、外部端末やホストコンピュータ無しに、かつ、複数のロボット制御装置12A~12Fのソフトウェアを同時に、短時間で更新することができる。
 また、送信側ロボット制御装置12Aと受信側ロボット制御装置12B~12Fの間で相互にソフトウェアのバージョン確認を行うことがない。したがって、すべてのロボット制御装置12A~12Fのソフトウェアバージョンを、新しいバージョンであっても古いバージョンであっても、同一のものに統一することが可能である。したがって、作業者の操作性やロボット動作を統一することができる。
 また、予めソフトウェアが書き込まれた、取り外し可能かつ不揮発性の記憶メディア26Bを送信側ロボット制御装置12A内の記憶メディアスロット26に挿入し、送信側ロボット制御装置12Aは、記憶メディア26B内の更新用のソフトウェアを、全ての受信側ロボット制御装置12B~12Fへ同時に転送する。このことにより、従来のように最初の1台のロボット制御装置に外部記憶装置を人為的に接続してソフトウェア更新作業を行う必要がない。すなわち、ソフトウェアが書き込まれた記憶メディア26Bを送信側ロボット制御装置12Aに挿入するのみで、複数の受信側ロボット制御装置12B~12Fのソフトウェアを同時に更新することができる。
 また、受信側ロボット制御装置12B~12Fは、受信した更新用のソフトウェアを受信側ロボット制御装置12B~12F内の取り外し可能であり不揮発性の記憶メディア26Bに格納した後に、記憶メディア26Bに格納された更新用のソフトウェアをEPROM27へ書き込む。このことにより、受信した更新用のソフトウェアを、一旦記憶メディア26Bにバッファリングすることができる。したがって、万一、EPROM27への書き込みが何らかの理由で中断しても、再度、記憶メディア26Bから更新作業を行って復旧することができる。また、生産ラインで稼働中のロボット制御装置内のソフトウェアが何らかの理由で破壊された場合でも、再度、記憶メディア26Bから更新作業を行って復旧することができる。
 また、送信側ロボット制御装置12A内の取り外し可能であり不揮発性の記憶メディア26Bへの更新用のソフトウェアの書き込みは、送信側ロボット制御装置12Aのティーチングペンダント22内の取り外し可能かつ不揮発性の記憶メディア22Bから、更新用のソフトウェアを転送することにより行なう。例えば、ロボット制御装置が工場内の中2階や、屋根裏空間など、容易にアクセスできない場所に格納されている場合でも、送信側ロボット制御装置12Aに接続されたティーチングペンダント22に更新用のソフトウェアが書き込まれた記憶メディア22Bを挿入し、ティーチングペンダント22から送信側ロボット制御装置12A内の記憶メディア26Bに更新用のソフトウェアを転送することにより、複数の受信側ロボット制御装置12B~12Fのソフトウェアを同時に更新することが可能となる。
 なお、本実施の形態における送信側ロボット制御装置12Aと複数の受信側ロボット制御装置12B~12Fは、ある所定の領域に配置されているものであり、公衆回線を通じずに接続されている。また、ある所定の領域とは、例えば、1つの工場内や、工場内の1設備ライン等のことである。
 本発明は、ロボット制御装置内のソフトウェアの更新を行うために外部端末やホストコンピュータを用いる必要はなく、1つのロボット制御装置により、他の複数のロボット制御装置に対して同時にソフトウェアの更新を行うことができる。したがって、例えば、所定の領域に設置された複数のロボット制御装置のソフトウェアの更新を行うロボットシステムとして有用である。
 11  通信線
 12A~12F,21  ロボット制御装置
 13,13A~13F  ロボット
 22  ティーチングペンダント
 22A,26  記憶メディアスロット
 22B,26B  記憶メディア
 23  CPU
 24  RAM
 25  ロボット駆動部
 27  EPROM
 28  通信部
 30  ソフトウェア更新処理用プログラム
 31  ソフトウェア

Claims (15)

  1. 更新用ソフトウェアを送信する送信側ロボット制御装置と、前記送信側ロボット制御装置から前記更新用ソフトウェアを受信する受信側ロボット制御装置とを有するロボットシステムであって、前記送信側ロボット制御装置および前記受信側ロボット制御装置は、それぞれ、ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部と、前記第1記憶部から読み出された前記ソフトウェア更新処理用プログラムを記憶する第2記憶部と、前記更新用ソフトウェアを記憶する第3記憶部と、前記第3記憶部に記憶された前記更新用ソフトウェアを送受信する通信部とを備えたロボットシステム。
  2. 前記第3記憶部は、外部記憶媒体を着脱自在に保持する着脱部を有し、前記外部記憶媒体に前記更新用ソフトウェアを記憶する請求項1記載のロボットシステム。
  3. 前記送信側ロボット制御装置の前記第3記憶部に対して、ロボット教示用操作盤から前記更新用ソフトウェアが転送される請求項1記載のロボットシステム。
  4. 前記ロボット教示用操作盤は、他の外部記憶媒体を着脱自在に保持する他の着脱部を有し、前記他の外部記憶媒体に前記更新用ソフトウェアが記憶されている請求項3記載のロボットシステム。
  5. 前記受信側ロボット制御装置の前記第1記憶部に記憶された前記ソフトウェア更新処理用プログラムおよび前記ロボット動作制御ソフトウェアのうち少なくとも一方を前記送信側ロボット制御装置の前記第3記憶部に記憶された前記更新用ソフトウェアで更新する際に、前記受信側ロボット制御装置の前記第1記憶部に記憶された前記ソフトウェア更新処理用プログラムまたは前記ロボット動作制御ソフトウェアのバージョンを確認することなく更新する請求項1記載のロボットシステム。
  6. 前記受信側ロボット制御装置の前記第3記憶部には、前記送信側ロボット制御装置の前記第3記憶部に記憶された前記更新用ソフトウェアが、前記送信側ロボット制御装置の前記通信部から前記受信側ロボット制御装置の前記通信部へ送信されて記憶される請求項1記載のロボットシステム。
  7. 前記送信側ロボット制御装置を1台と、前記受信側ロボット制御装置を複数台有する請求項1記載のロボットシステム。
  8. ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部と、前記第1記憶部から読み出された前記ソフトウェア更新処理用プログラムを記憶する第2記憶部と、更新用ソフトウェアを記憶する第3記憶部と、前記第3記憶部に記憶された前記更新用ソフトウェアを送受信する通信部とを備えたロボット制御装置。
  9. 前記第3記憶部は、外部記憶媒体を着脱自在に保持する着脱部を有し、前記外部記憶媒体に前記更新用ソフトウェアを記憶する請求項8記載のロボット制御装置。
  10. 前記第3記憶部に対して、ロボット教示用操作盤から前記更新用ソフトウェアが転送される請求項8記載のロボット制御装置。
  11. 前記ロボット教示用操作盤は、他の外部記憶媒体を着脱自在に保持する他の着脱部を有し、前記他の外部記憶媒体に前記更新用ソフトウェアが記憶されている請求項10記載のロボット制御装置。
  12. ソフトウェア更新処理用プログラムおよびロボット動作制御ソフトウェアを記憶する第1記憶部と、前記第1記憶部から読み出された前記ソフトウェア更新処理用プログラムを記憶する第2記憶部と、更新用ソフトウェアを記憶する第3記憶部と、前記第3記憶部に記憶された前記更新用ソフトウェアを送受信する通信部とを有するロボット制御装置を複数備えたロボットシステムのソフトウェア更新方法であって、
    前記複数のロボット制御装置のうち前記更新用ソフトウェアを送信する送信側ロボット制御装置を決定するステップと、
    前記複数のロボット制御装置のうち前記送信側ロボット制御装置から送信された前記更新用ソフトウェアを受信する受信側ロボット制御装置を決定するステップと、
    前記送信側ロボット制御装置が前記第3記憶部に記憶された前記更新用ソフトウェアを前記通信部を介して前記受信側ロボット制御装置に送信するステップと、
    前記送信側ロボット制御装置が前記第3記憶部に記憶された前記更新用ソフトウェアにより前記第1記憶部に記憶されている前記ソフトウェア更新処理用プログラムおよび前記ロボット動作制御ソフトウェアのうち少なくとも一方を更新するステップと、
    前記受信側ロボット制御装置が前記送信側ロボット制御装置から送信された前記更新用ソフトウェアを前記通信部を介して受信し前記第3記憶部に記憶するステップと、
    前記更新用ソフトウェアを受信した前記受信側ロボット制御装置が前記第3記憶部に記憶された前記更新用ソフトウェアにより前記第1記憶部に記憶されている前記ソフトウェア更新処理用プログラムおよび前記ロボット動作制御ソフトウェアのうち少なくとも一方を更新するステップとを備えたロボットシステムのソフトウェア更新方法。
  13. 前記第3記憶部は、外部記憶媒体を着脱自在に保持する着脱部を有し、前記外部記憶媒体に前記更新用ソフトウェアを記憶する請求項12記載のロボットシステムのソフトウェア更新方法。
  14. 前記送信側ロボット制御装置がロボット教示用操作盤から前記第3記憶部に前記更新用ソフトウェアを転送するステップをさらに備えた請求項12記載のロボットシステムのソフトウェア更新方法。
  15. 前記ロボット教示用操作盤は、他の外部記憶媒体を着脱自在に保持する他の着脱部を有し、前記他の外部記憶媒体に前記更新用ソフトウェアが記憶されている請求項12記載のロボットシステムのソフトウェア更新方法。
PCT/JP2010/000121 2009-02-09 2010-01-13 ロボットシステム、ロボット制御装置およびロボットシステムのソフトウェア更新方法 WO2010089951A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP10738295.4A EP2249222A4 (en) 2009-02-09 2010-01-13 ROBOTIC SYSTEM, ROBOT CONTROL SYSTEM, AND SOFTWARE UPDATE METHOD FOR ROBOTIC SYSTEM
CN201080001762.3A CN102047191B (zh) 2009-02-09 2010-01-13 机器人系统、机器人控制装置及机器人系统的软件更新方法
JP2010514737A JP5051298B2 (ja) 2009-02-09 2010-01-13 ロボットシステムおよびロボットシステムのソフトウェア更新方法
US12/866,326 US20100325623A1 (en) 2009-02-09 2010-01-13 Robot system, robot control device, and software update method of robot system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-026896 2009-02-09
JP2009026896 2009-02-09

Publications (1)

Publication Number Publication Date
WO2010089951A1 true WO2010089951A1 (ja) 2010-08-12

Family

ID=42541865

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/000121 WO2010089951A1 (ja) 2009-02-09 2010-01-13 ロボットシステム、ロボット制御装置およびロボットシステムのソフトウェア更新方法

Country Status (5)

Country Link
US (1) US20100325623A1 (ja)
EP (1) EP2249222A4 (ja)
JP (1) JP5051298B2 (ja)
CN (1) CN102047191B (ja)
WO (1) WO2010089951A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107921639A (zh) * 2015-08-25 2018-04-17 川崎重工业株式会社 多个机器人系统间的信息共享系统及信息共享方法
US11099543B2 (en) 2017-09-12 2021-08-24 Fanuc Corporation Numerical controller and device included in industrial machine

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009050646A1 (de) * 2009-10-26 2011-04-28 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern einer Mehrmaschinenanordnung
US20110246977A1 (en) * 2010-03-31 2011-10-06 Leviton Manufacturing Co., Inc. Control system code installation and upgrade
GB201509341D0 (en) * 2015-05-29 2015-07-15 Cambridge Medical Robotics Ltd Characterising robot environments
CN109218372A (zh) * 2017-07-06 2019-01-15 广州奥睿智能科技有限公司 机器人的动作更新系统及机器人
CN108789415B (zh) * 2018-07-27 2021-05-28 珠海格力智能装备有限公司 机器人及其运动轨迹数据的存储方法和装置
CN110874230A (zh) * 2018-09-03 2020-03-10 苏州睿牛机器人技术有限公司 一种爬行弧焊机器人及爬行弧焊机器人的软件更新方法、装置
JP7095635B2 (ja) * 2019-03-13 2022-07-05 トヨタ自動車株式会社 不具合対応システム、その対応方法及びプログラム
CN110421594A (zh) * 2019-08-06 2019-11-08 中新智擎科技有限公司 机器人状态检测方法、系统、机器人及计算机存储介质
JP7404717B2 (ja) * 2019-09-03 2023-12-26 セイコーエプソン株式会社 プログラム識別方法、およびロボットシステム
CN111966055B (zh) * 2020-07-16 2022-11-08 珠海小工蜂科技有限公司 一种工业软件机器人系统
CN113326053A (zh) * 2021-06-18 2021-08-31 上海钛米机器人股份有限公司 一种机器人管理系统和方法
KR20230143003A (ko) * 2022-04-04 2023-10-11 두산로보틱스 주식회사 클라우드를 이용한 로봇의 업데이트 장치 및 방법

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265524A (ja) * 1992-03-23 1993-10-15 Sony Corp ロボットの数値制御装置及びその生産管理方法
JPH08202423A (ja) * 1995-01-30 1996-08-09 Fanuc Ltd Cncのソフトウェア変更方式
JPH08249034A (ja) * 1995-03-13 1996-09-27 Canon Inc ロボット制御方法及びその装置
JPH08263125A (ja) * 1995-03-22 1996-10-11 Fanuc Ltd 産業用ロボットにおけるソフトウェア更新方法
JP2000076505A (ja) * 1998-08-31 2000-03-14 Yutani Heavy Ind Ltd 稼動装置及びその情報管理システム
JP3034850B2 (ja) 1998-09-22 2000-04-17 松下電器産業株式会社 産業用ロボット
JP2005284804A (ja) * 2004-03-30 2005-10-13 Matsushita Electric Ind Co Ltd 産業用ロボット
JP2008139972A (ja) 2006-11-30 2008-06-19 Nachi Fujikoshi Corp ロボット制御装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06250727A (ja) * 1993-02-26 1994-09-09 Ishikawajima Harima Heavy Ind Co Ltd データ伝送システム
JP2995133B2 (ja) * 1993-07-12 1999-12-27 株式会社三協精機製作所 ロボットシステム
JPH09106307A (ja) * 1995-10-09 1997-04-22 Kyoritsu Syst Mach Kk ディエヌシー フォー エヌティ
EP1632904A3 (en) * 1998-08-31 2006-04-19 Kabushiki Kaisha Kobe Seiko Sho Management system for construction machines
JP2007004416A (ja) * 2005-06-23 2007-01-11 Sanyo Electric Co Ltd 駆動制御装置及び機械装置状態検出装置
EP2016800B1 (en) * 2006-05-02 2015-12-23 ANT - Advanced Network Technologies OY Method and system for wireless real-time transmission of multichannel audio or video data

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05265524A (ja) * 1992-03-23 1993-10-15 Sony Corp ロボットの数値制御装置及びその生産管理方法
JPH08202423A (ja) * 1995-01-30 1996-08-09 Fanuc Ltd Cncのソフトウェア変更方式
JPH08249034A (ja) * 1995-03-13 1996-09-27 Canon Inc ロボット制御方法及びその装置
JPH08263125A (ja) * 1995-03-22 1996-10-11 Fanuc Ltd 産業用ロボットにおけるソフトウェア更新方法
JP3550210B2 (ja) 1995-03-22 2004-08-04 ファナック株式会社 産業用ロボットにおけるソフトウェア更新方法
JP2000076505A (ja) * 1998-08-31 2000-03-14 Yutani Heavy Ind Ltd 稼動装置及びその情報管理システム
JP3034850B2 (ja) 1998-09-22 2000-04-17 松下電器産業株式会社 産業用ロボット
JP2005284804A (ja) * 2004-03-30 2005-10-13 Matsushita Electric Ind Co Ltd 産業用ロボット
JP2008139972A (ja) 2006-11-30 2008-06-19 Nachi Fujikoshi Corp ロボット制御装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2249222A4

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107921639A (zh) * 2015-08-25 2018-04-17 川崎重工业株式会社 多个机器人系统间的信息共享系统及信息共享方法
CN107921639B (zh) * 2015-08-25 2021-09-21 川崎重工业株式会社 多个机器人系统间的信息共享系统及信息共享方法
US11099543B2 (en) 2017-09-12 2021-08-24 Fanuc Corporation Numerical controller and device included in industrial machine

Also Published As

Publication number Publication date
JP5051298B2 (ja) 2012-10-17
EP2249222A4 (en) 2013-11-13
CN102047191B (zh) 2014-07-30
JPWO2010089951A1 (ja) 2012-08-09
CN102047191A (zh) 2011-05-04
US20100325623A1 (en) 2010-12-23
EP2249222A1 (en) 2010-11-10

Similar Documents

Publication Publication Date Title
WO2010089951A1 (ja) ロボットシステム、ロボット制御装置およびロボットシステムのソフトウェア更新方法
US7509121B2 (en) Method of updating firmware using object push profile in the bluetooth object exchange protocol
EP3200077B1 (en) Vehicle control device, reprogramming system
JP2006301960A (ja) 自動車用制御ユニット
JP2006264877A (ja) エレベータ制御装置
JP4302113B2 (ja) 車載制御装置
US6609033B1 (en) Field programmable welding controller
JP3550210B2 (ja) 産業用ロボットにおけるソフトウェア更新方法
CN103823771A (zh) 一种远程通信方法和系统
US10747205B2 (en) Electronic tool and method for copying a plurality of settings from a mechanical tool to another mechanical tool
US20220147040A1 (en) Electronic Control Device and Method for Setting Control Data
JP5306865B2 (ja) ロボットシステムの制御方法
CN110278716B (zh) Plc、网络单元、cpu单元、以及数据传送方法
JP2000181719A (ja) 通信機器へのプログラムのダウンロード方法
JP2019049917A (ja) 数値制御装置及び産業機械に含まれる装置
KR102434126B1 (ko) Plc 프로그램 처리 장치
JP2012059080A (ja) 電子機器及びファームウェアアップデート方法
CN101136196B (zh) 显示设备及其信息更新方法
JP2008139972A (ja) ロボット制御装置
CN114840262B (zh) 摄像头配置方法、装置及计算机可读存储介质
JP2000172508A (ja) 情報記録装置及びそのファームウェア更新方法
JP2009134384A (ja) 通信システム
JP2021125008A (ja) サイクリック通信システムおよびその通信方法
JP2001306112A (ja) プログラマブルコントローラ
JP2017151510A (ja) コントローラ

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080001762.3

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2010514737

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 12866326

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2010738295

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2010738295

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10738295

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE