WO2025224973A1 - ロボットソフトウェア保守装置 - Google Patents

ロボットソフトウェア保守装置

Info

Publication number
WO2025224973A1
WO2025224973A1 PCT/JP2024/016436 JP2024016436W WO2025224973A1 WO 2025224973 A1 WO2025224973 A1 WO 2025224973A1 JP 2024016436 W JP2024016436 W JP 2024016436W WO 2025224973 A1 WO2025224973 A1 WO 2025224973A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
control device
software
patch
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/JP2024/016436
Other languages
English (en)
French (fr)
Inventor
洋平 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to PCT/JP2024/016436 priority Critical patent/WO2025224973A1/ja
Publication of WO2025224973A1 publication Critical patent/WO2025224973A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Definitions

  • This disclosure relates to a robot software maintenance device.
  • robots with different specifications may be selected depending on the tasks to be performed when the robot system is designed, or new models of robots may be added when the system is modified.
  • a robot software maintenance device is a software maintenance device that checks the suitability of a software update for a robot control device connected via a network, and includes a patch storage unit that stores patches for updating the software of the robot control device, a test case storage unit that stores test cases for determining the success or failure of the software update, a configuration data acquisition unit that acquires configuration data that identifies the configuration of the robot from the robot control device, a virtual control device generation unit that generates a virtual control device that virtually mimics the behavior of the robot control device based on the configuration data, and an update determination unit that applies the patches to the virtual control device and determines the success or failure of the software update according to the test cases.
  • FIG. 1 is a block diagram illustrating a configuration of a robot software maintenance device according to an embodiment of the present disclosure.
  • Figure 1 is a block diagram showing the configuration of a robot software maintenance device 1 according to one embodiment of the present disclosure.
  • the robot software maintenance device 1 checks the appropriateness of software updates for the robot control device RC connected via a network.
  • the robot control device RC controls the robot mechanical unit RM.
  • the robot software maintenance device 1 has memory, a processor, an input/output interface, etc., and can be realized by one or more computer devices that execute appropriate control programs.
  • the robot software maintenance device 1 comprises a patch storage unit 11, a patch input unit 12, a test case storage unit 13, a test case input unit 14, a configuration data acquisition unit 15, a robot manual selection unit 16, an automatic robot selection unit 17, a patch manual selection unit 18, a patch automatic selection unit 19, a virtual control device generation unit 20, an update determination unit 21, and a software update unit 22. Note that these components categorize the functions of the robot software maintenance device 1, and do not necessarily have to be clearly distinguishable in terms of physical configuration and program configuration.
  • the patch storage unit 11 stores patches that update the software of the robot control device RC. Patches are recognized as having the potential to update the software of the robot control device RC, and the robot software maintenance device 1 checks whether they can actually be applied to the robot control device RC. In other words, the patches stored in the patch storage unit 11 do not necessarily have to be able to update all or part of the software of the robot control device RC that is actually connected to the robot software maintenance device 1.
  • the patch storage unit 11 may also store multiple patches.
  • the patch input unit 12 accepts input of a patch to be stored in the patch storage unit 11.
  • the patch input unit 12 may be configured to accept input of a patch via a storage medium, a communication line, etc.
  • the patch input unit 12 may also provide a user interface that allows the user to select a patch to be stored in the patch storage unit 11, and may also have an editor function that allows the user to modify or create a new patch.
  • test case storage unit 13 stores test cases for determining whether a software update resulting from the application of a correction patch has been successful.
  • a "test case” refers to data that compiles test conditions, procedures, and result judging criteria for determining whether a software update has been successful. Examples of test cases include attempting to start the system and determining that the software update has been successful if the system starts up properly, attempting to communicate over the network and determining that the software update has been successful if the communication is proper, ensuring that register values are appropriate after a specified confirmation program is executed, and ensuring that the execution time of a specified confirmation program is within a specified time.
  • the test case input unit 14 accepts input of test cases to be stored in the test case storage unit 13.
  • the test case input unit 14 may be configured to accept input of test cases via a storage medium, a network, etc.
  • the test case input unit 14 may also provide a user interface that allows the user to create new test cases, for example, by editing already stored test cases.
  • the configuration data acquisition unit 15 acquires configuration data specifying the configuration of a robot controller RC from the robot controller RC via the network.
  • the configuration data acquisition unit 15 may acquire configuration data only from the robot controller RC selected by the robot manual selection unit 16, or from all connected robot controllers RC.
  • the configuration data acquisition unit 15 may be configured to store multiple pieces of configuration data acquired from multiple robot controllers RC.
  • the configuration data preferably includes sufficient information to reproduce the configuration of each robot controller RC, and may include information such as the model of the robot controller RC, the type of end effector such as a work head, the version of the OS (operating system), the type and version of the application program used for the operation, and the setting values of parameters for adjusting various operations.
  • the configuration data preferably covers the physical and software configuration of the robot controller RC and may also serve as backup data for restoring the system in the event of a failure.
  • the robot manual selection unit 16 accepts user selection of the robot control device RC (the robot control device RC that generates the virtual control device described below) for which the virtual control device generation unit 20 is to check the suitability of a software update. By checking the suitability of a software update by applying a correction patch only for the robot control device RC selected by the user, the user can quickly check the suitability of a software update for a specific robot control device RC.
  • the robot manual selection unit 16 may also provide a user interface that displays a list of numbers assigned to robot control devices RC connected to the robot software maintenance device 1, IP addresses that identify the robot control devices RC on the network, etc., and allows the user to make a selection.
  • the automatic robot selection unit 17 selects a robot control device RC from among the multiple robot control devices RC for which the appropriateness of a software update is to be checked using a virtual control device, based on the configuration data acquired by the configuration data acquisition unit 15. In other words, the automatic robot selection unit 17 excludes robot control devices RC for which it is clear that a patch cannot be applied.
  • the header of a patch may describe the OS version of the robot control device RC to which the patch can be applied, and the automatic robot selection unit 17 may be configured to select a robot control device RC to which the patch can potentially be applied, based on the OS version information included in the configuration data.
  • the automatic robot selection unit 17 may further limit the robot control devices RC selected by the manual robot selection unit 16 for which the appropriateness of a software update is to be checked, or may override the selection by the manual robot selection unit 16 and select a robot control device RC from all robot control devices RC connected to the robot software maintenance device 1 for which the appropriateness of a software update is to be checked. By including the automatic robot selection unit 17, the robot software maintenance device 1 can quickly identify an appropriate combination of robot control device RC and patch.
  • the patch manual selection unit 18 selects a patch to be applied to the robot control device RC from among multiple patches stored in the patch storage unit 11.
  • the patch manual selection unit 18 may also provide a user interface that displays a list of patch file names, version information, header information, etc., and allows the user to select one.
  • the patch automatic selection unit 19 selects a patch to be applied to the robot control device RC from among multiple patches stored in the patch storage unit 11, based on the configuration data of the robot control device RC.
  • the patch automatic selection unit 19 can be configured to select a patch that can be applied to the robot control device RC based on a match between the OS version included in the configuration data and the header information of the patch.
  • the patch manual selection unit 18 and the patch automatic selection unit 19 may be configured to be enabled alternatively.
  • patch selection by the patch automatic selection unit 19 is based on the assumption that the robot control devices RC that will check the suitability of the software update have been identified (including all of them), the patch automatic selection unit 19 may be configured not to be enabled at the same time as the robot automatic selection unit 17. By including the patch automatic selection unit 19, the robot software maintenance device 1 can quickly identify an appropriate combination of robot control device RC and patch.
  • the virtual controller generation unit 20 generates a virtual controller that virtually mimics the behavior of the robot controller RC based on the configuration data of the robot controller RC. In other words, the virtual controller generation unit 20 builds an emulator that mimics the behavior of the robot controller RC. If there are multiple robot controllers RC for which the appropriateness of a software update is to be checked, the virtual controller generation unit 20 may generate a virtual controller for one robot controller RC, and then generate a virtual controller for the next robot controller RC in sequence after the update judgment unit 21 has finished judging that robot controller RC. If there are multiple combinations of robot controllers RC and patch updates, it is preferable that the virtual controller generation unit 20 generate independent virtual controllers for each combination, either sequentially or in parallel.
  • the update determination unit 21 applies a correction patch to the virtual control device generated by the virtual control device generation unit 20 and determines whether the software update was successful according to the test case. If there are multiple combinations of robot control device RC and selected correction patches, the update determination unit 21 preferably determines whether the software update was successful for each combination independently. It is also preferable to output information on the success or failure of the software update by, for example, displaying it on a display or sending a signal to an external computer device, etc.
  • the software update unit 22 is preferably configured to check the operating status of the robot control device RC and perform a software update using a patch only if the software can be updated safely.
  • the software update unit 22 is preferably configured not to perform a software update while the robot control device RC is operating or a program is running, and may also be configured not to perform a software update when the robot mechanism unit RM controlled by the robot control device RC is not in a specified standby position.
  • the robot software maintenance device 1 with the above configuration can easily confirm the appropriateness of a software update for a robot control device RC by checking the results of patch application using a virtual control device, without applying the patch to the actual robot control device RC. Therefore, by using the robot software maintenance device 1, it is possible to prevent unexpected problems from occurring when a patch is applied to the wrong robot control device RC.
  • the robot software maintenance device (1) is a software maintenance device (1) that checks the suitability of a software update for a robot control device (RC) connected via a network, and includes a patch storage unit (11) that stores a patch for updating the software of the robot control device (RC), a test case storage unit (13) that stores test cases for determining whether the software update has been successful, a configuration data acquisition unit (15) that acquires configuration data that identifies the configuration of the robot control device (RC) from the robot (R), a virtual control device generation unit (20) that generates a virtual control device that virtually imitates the behavior of the robot control device (RC) based on the configuration data, and an update determination unit (21) that applies the patch to the virtual control device (R) and determines whether the software update has been successful in accordance with the test case.
  • a patch storage unit (11) that stores a patch for updating the software of the robot control device (RC)
  • a test case storage unit (13) that stores test cases for determining whether the software update has been successful
  • the robot software maintenance device (1) of Supplementary Note 1 may further include an automatic robot selection unit (16) that selects a robot control device (RC) that generates a virtual control device based on a user's input.
  • RC robot control device
  • the robot software maintenance device (1) of Supplementary Notes 1 and 2 may further include an automatic robot selection unit (17) that selects a robot control device (RC) that generates a virtual control device based on the configuration data.
  • RC robot control device
  • the robot software maintenance device (1) of Supplementary Notes 1 to 3 may further include an automatic patch selection unit (18) that selects a patch to be applied to the robot control device (RC) from among a plurality of patches stored in the patch storage unit (11) based on configuration data of the robot control device (RC).
  • an automatic patch selection unit (18) that selects a patch to be applied to the robot control device (RC) from among a plurality of patches stored in the patch storage unit (11) based on configuration data of the robot control device (RC).
  • the robot software maintenance device (1) of Supplementary Notes 1 to 4 may further include a test case input unit (14) that accepts input of a test case.
  • the robot software maintenance device (1) of Supplementary Notes 1 to 5 may further include a software update unit (21) that transfers a correction patch to the robot control device (RC) and executes the software update when the update determination unit determines that the software update is successful.
  • a software update unit (21) that transfers a correction patch to the robot control device (RC) and executes the software update when the update determination unit determines that the software update is successful.
  • all connected robots may be subject to software update suitability check, and the manual robot selection unit and automatic robot selection unit may be configured as desired.
  • the robot software maintenance device according to the present disclosure may not have a patch input unit, but may be implemented by a dedicated control program for each patch, or may not have a test case input unit, but may be implemented by a dedicated control program for each test case.
  • the robot software maintenance device according to the present disclosure may not have a software update unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

ネットワークを介して接続されるロボット制御装置のソフトウェア更新の適否を確認するソフトウェア保守装置であって、前記ロボット制御装置のソフトウェアを更新する修正パッチを記憶する修正パッチ記憶部と、ソフトウェア更新の成否を判定するためのテストケースを記憶するテストケース記憶部と、前記ロボット制御装置から、前記ロボット制御装置の構成を特定する構成データを取得する構成データ取得部と、前記構成データに基づいて、仮想的に前記ロボット制御装置の挙動を模倣する仮想制御装置を生成する仮想制御装置生成部と、前記仮想制御装置に前記修正パッチを適用し、前記テストケースに従ってソフトウェア更新の成否を判定する更新判定部と、を備えるロボットソフトウェア保守装置。

Description

ロボットソフトウェア保守装置
 本開示は、ロボットソフトウェア保守装置に関する。
 従来、ロボット機構部を制御するロボット制御装置のオペレーションシステム、アプリケーションプログラム等のソフトウェアの更新は、例えば、ロボット制御装置に端末を接続してEPROMのデータを書き換えることによって行われている。複数のロボットを備えるロボットシステムにおいてソフトウェア更新を行う場合には、端末を接続してデータを書き換える作業を繰り返す必要があった。そこで、通信回線を通して、それぞれロボット機構部を制御する複数のロボット制御装置のソフトウェアを更新可能としたロボットシステムも提案されている(例えば特許文献1参照)。
特開2022-116952号公報
 異なる仕様のロボットを含むロボットシステムも少なくない。例として、ロボットシステムの設計時に実行する作業に応じて異なる仕様のロボットが選択されたり、システムの改修によって新しい型式のロボットが追加されたりすることなどが考えられる。このようなシステムにおいて、特定の仕様のロボット制御装置のソフトウェアのみを更新することが必要となり得る。システム管理者がソフトウェアを更新すべきロボット制御装置を誤って選択すると、システムを起動できなくなる等の不都合が生じるおそれがある。そこで、ロボット制御装置のソフトウェアの更新の適否を容易に確認できる技術が望まれる。
 本開示の一態様に係るロボットソフトウェア保守装置は、ネットワークを介して接続されるロボット制御装置のソフトウェア更新の適否を確認するソフトウェア保守装置であって、前記ロボット制御装置のソフトウェアを更新する修正パッチを記憶する修正パッチ記憶部と、ソフトウェア更新の成否を判定するためのテストケースを記憶するテストケース記憶部と、前記ロボット制御装置から、前記ロボットの構成を特定する構成データを取得する構成データ取得部と、前記構成データに基づいて、仮想的に前記ロボット制御装置の挙動を模倣する仮想制御装置を生成する仮想制御装置生成部と、前記仮想制御装置に前記修正パッチを適用し、前記テストケースに従ってソフトウェア更新の成否を判定する更新判定部と、を備える。
本開示の一実施形態に係るロボットソフトウェア保守装置の構成を示すブロック図である。
 以下、本開示の実施形態について、図面を参照しながら説明する。図1は、本開示の一実施形態に係るロボットソフトウェア保守装置1の構成を示すブロック図である。
 ロボットソフトウェア保守装置1は、ネットワークを介して接続されるロボット制御装置RCのソフトウェア更新の適否を確認する。ロボット制御装置RCは、ロボット機構部RMを制御する。ロボットソフトウェア保守装置1は、メモリ、プロセッサ、入出力インターフェイス等を有し、適切な制御プログラムを実行する1または複数のコンピュータ装置により実現され得る。
 ロボットソフトウェア保守装置1は、修正パッチ記憶部11、修正パッチ入力部12、テストケース記憶部13、テストケース入力部14、構成データ取得部15、ロボット手動選択部16、ロボット自動選択部17、修正パッチ手動選択部18、修正パッチ自動選択部19、仮想制御装置生成部20、更新判定部21、およびソフトウェア更新部22を備える。なお、これらの構成は、ロボットソフトウェア保守装置1の機能を類別したものであって、物理構成およびプログラム構成において明確に区分できるものでなくてもよい。
 修正パッチ記憶部11は、ロボット制御装置RCのソフトウェアを更新する修正パッチを記憶する。修正パッチは、ロボット制御装置RCのソフトウェアを更新できる可能性を有すると認識されるものであり、ロボットソフトウェア保守装置1により実際にロボット制御装置RCに適用できるか否かが確認される。つまり、修正パッチ記憶部11に記憶される修正パッチは、必ずしも実際にロボットソフトウェア保守装置1に接続されているロボット制御装置RCの全部または一部のソフトウェアを更新できるものでなくてもよい。また、修正パッチ記憶部11は、複数の修正パッチを記憶してもよい。
 修正パッチ入力部12は、修正パッチ記憶部11に記憶させる修正パッチの入力を受け付ける。修正パッチ入力部12は、記憶媒体、通信回線等を介して修正パッチの入力を受け付けるよう構成され得る。また、修正パッチ入力部12は、修正パッチ記憶部11に記憶させる修正パッチをユーザが選択し得るユーザインターフェイスを提供してもよく、ユーザが修正パッチを修正または新規に作成できるエディタ機能を備えてもよい。
 テストケース記憶部13は、修正パッチの適用によるソフトウェア更新の成否を判定するためのテストケースを記憶する。なお、「テストケース」とは、ソフトウェア更新の成否を判定するためのテストの条件、手順、結果の判定基準等をまとめたデータを意味する。テストケースの例としては、システムの起動を試行し、適切に起動ができたときソフトウェア更新が成功したと判断すること、ネットワーク通信を試行し、適切に通信できたときにソフトウェア更新が成功したと判断すること、所定の確認プログラムを実行した後にレジスタの値が適切な値となること、所定の確認プログラムを実行したときに実行時間が所定時間以内であること、などが挙げられる。
 テストケース入力部14は、テストケース記憶部13に記憶させるテストケースの入力を受け付ける。テストケース入力部14は、記憶媒体、ネットワーク等を介してテストケースの入力を受け付けるよう構成され得る。また、テストケース入力部14は、ユーザが、例えば既に記憶しているテストケースを編集する等の手法により、新しいテストケースを作成できるユーザインターフェイスを提供してもよい。
 構成データ取得部15は、ネットワークを介してロボット制御装置RCからそのロボット制御装置RCの構成を特定する構成データを取得する。構成データ取得部15は、ロボット手動選択部16において選択されるロボット制御装置RCのみから構成データを取得してもよく、接続されている全てのロボット制御装置RCから構成データを取得してもよい。構成データ取得部15は、複数のロボット制御装置RCから取得した複数の構成データを記憶するよう構成されてもよい。構成データは、各ロボット制御装置RCの構成を再現できる十分な情報を含むことが好ましく、例えば、ロボット制御装置RCの型式、例えば作業ヘッド等のエンドエフェクタの種類、OS(オペレーションシステム:基本ソフト)のバージョン、作業のためのアプリケーションプログラムの種類およびバージョン、各種動作を調整するためのパラメータの設定値等の情報を含み得る。つまり、構成データは、ロボット制御装置RCの物理構成およびソフトウェア構成を網羅するものとされることが好ましく、障害が発生した場合にシステムを復旧するためのバックアップデータを兼ねてもよい。
 ロボット手動選択部16は、仮想制御装置生成部20を用いたソフトウェア更新の適否確認の対象とするロボット制御装置RC(後述する仮想制御装置を生成するロボット制御装置RC)のユーザによる選択を受け付ける。ユーザが選択したロボット制御装置RCに限定して修正パッチの適用によるソフトウェア更新の適否を確認することで、特定のロボット制御装置RCについてユーザが迅速にソフトウェア更新の適否を確認できる。ロボット手動選択部16は、ロボットソフトウェア保守装置1に接続されているロボット制御装置RCに付される番号、ネットワーク上でロボット制御装置RCを特定するIPアドレス等を一覧表示し、ユーザに選択させるユーザインターフェイスを提供してもよい。
 ロボット自動選択部17は、構成データ取得部15が取得した構成データに基づいて、複数のロボット制御装置RCの中から仮想制御装置を用いてソフトウェア更新の適否を確認するロボット制御装置RCを選択する。つまり、ロボット自動選択部17は、修正パッチを適用できないことが明らかなロボット制御装置RCを除外する。具体例として、修正パッチのヘッダ等に当該修正パッチを適用できるロボット制御装置RCのOSのバージョン等を記述し、ロボット自動選択部17は、構成データに含まれるOSのバージョンの情報に基づいて、修正パッチを適用できる可能性を有するロボット制御装置RCを選択するよう構成され得る。ロボット自動選択部17は、ロボット手動選択部16において選択された複数のロボット制御装置RCの中からさらにソフトウェア更新の適否確認を行う対象を限定してもよく、ロボット手動選択部16による選択を無効化し、ロボットソフトウェア保守装置1に接続されているすべてのロボット制御装置RCの中からソフトウェア更新の適否確認を行う対象を選択してもよい。ロボット自動選択部17を備えることで、ロボットソフトウェア保守装置1は、ロボット制御装置RCと修正パッチの適切な組み合わせを迅速に特定できる。
 修正パッチ手動選択部18は、修正パッチ記憶部11に記憶される複数の修正パッチの中からロボット制御装置RCに適用すべき修正パッチを選択する。修正パッチ手動選択部18は、修正パッチのファイル名、バージョン情報、ヘッダ情報等を一覧表示し、ユーザにいずれかを選択させるユーザインターフェイスを提供してもよい。
 修正パッチ自動選択部19は、ロボット制御装置RCの構成データに基づいて、修正パッチ記憶部11に記憶される複数の修正パッチの中からロボット制御装置RCに適用すべき修正パッチを選択する。修正パッチ自動選択部19は、構成データに含まれるOSのバージョンと、修正パッチのヘッダ情報とのマッチングに基づいて、ロボット制御装置RCに適用し得る修正パッチを選択するよう構成され得る。修正パッチ手動選択部18と修正パッチ自動選択部19は、択一的に有効化され得るよう構成されてもよい。また、修正パッチ自動選択部19による修正パッチの選択は、ソフトウェア更新の適否確認を行うロボット制御装置RCが特定されていること(全数を含む)が前提であるため、ロボット自動選択部17と同時に有効化できないよう構成されてもよい。修正パッチ自動選択部19を備えることで、ロボットソフトウェア保守装置1は、ロボット制御装置RCと修正パッチの適切な組み合わせを迅速に特定できる。
 仮想制御装置生成部20は、ロボット制御装置RCの構成データに基づいて、仮想的にロボット制御装置RCの挙動を模倣する仮想制御装置を生成する。つまり、仮想制御装置生成部20は、ロボット制御装置RCの挙動を模倣するエミュレータを構築する。ソフトウェア更新の適否確認を行うロボット制御装置RCが複数存在する場合、仮想制御装置生成部20は、1つのロボット制御装置RCの仮想制御装置を生成し、当該ロボット制御装置RCについての更新判定部21による判定が終わってから、次のロボット制御装置RCの仮想制御装置を順番に生成してもよい。ロボット制御装置RCと修正パッチの組み合わせが複数存在する場合、仮想制御装置生成部20は、それぞれの組み合わせに対して、逐次または並列して独立した仮想制御装置を生成することが好ましい。
 更新判定部21は、仮想制御装置生成部20が生成した仮想制御装置に修正パッチを適用し、テストケースに従ってソフトウェア更新の成否を判定する。更新判定部21は、ロボット制御装置RCと選択された修正パッチの組み合わせが複数存在する場合には、それぞれ独立してソフトウェア更新の成否を判定することとが好ましい。また、ソフトウェア更新の成否の情報を、例えばディスプレイに表示、信号を外部のコンピュータ装置等に送信等の方法で出力することが好ましい。
 ソフトウェア更新部22は、更新判定部21でソフトウェア更新の成功と判定された場合に、ロボット制御装置RCに修正パッチを転送してソフトウェア更新を実行する。このように、修正パッチの適用が可能なロボット制御装置RCのソフトウェアを自動更新することで、ロボット制御装置RCの保守に関するユーザの手間が省ける。ソフトウェア更新部22は、ロボット制御装置RCの稼動状態を確認し、ソフトウェアを安全に更新できる場合にのみ、修正パッチによるソフトウェアの更新を実行するよう構成されることが望ましい。具体的には、ソフトウェア更新部22は、ロボット制御装置RCの稼動中およびプログラムの実行中にはソフトウェアの更新を行わないよう構成されることが好ましく、ロボット制御装置RCが制御するロボット機構部RMが所定の待機姿勢でない場合にもソフトウェアの更新を行わないよう構成されてもよい。
 以上の構成を備えるロボットソフトウェア保守装置1は、実際のロボット制御装置RCに修正パッチを適用することなく、仮想制御装置を用いて修正パッチの適用結果を確認することにより、ロボット制御装置RCのソフトウェアの更新の適否を容易に確認できる。このため、ロボットソフトウェア保守装置1を用いることにより、誤ったロボット制御装置RCに修正パッチを適用して予期しないトラブルを生じさせることを防止できる。
 上記実施形態および変形例に関し、更に以下の付記を開示する。
(付記1)
 ロボットソフトウェア保守装置(1)は、ネットワークを介して接続されるロボット制御装置(RC)のソフトウェア更新の適否を確認するソフトウェア保守装置(1)であって、ロボット制御装置(RC)のソフトウェアを更新する修正パッチを記憶する修正パッチ記憶部(11)と、ソフトウェア更新の成否を判定するためのテストケースを記憶するテストケース記憶部(13)と、ロボット(R)から、ロボット制御装置(RC)の構成を特定する構成データを取得する構成データ取得部(15)と、構成データに基づいて、仮想的にロボット制御装置(RC)の挙動を模倣する仮想制御装置を生成する仮想制御装置生成部(20)と、仮想制御装置(R)に修正パッチを適用し、テストケースに従ってソフトウェア更新の成否を判定する更新判定部(21)と、を備える。
(付記2)
 付記1のロボットソフトウェア保守装置(1)は、ユーザの入力により、仮想制御装置を生成するロボット制御装置(RC)を選択するロボット自動選択部(16)をさらに備えてもよい。
(付記3)
 付記1~2のロボットソフトウェア保守装置(1)は、構成データに基づいて、仮想制御装置を生成するロボット制御装置(RC)を選択するロボット自動選択部(17)をさらに備えてもよい。
(付記4)
 付記1~3のロボットソフトウェア保守装置(1)は、ロボット制御装置(RC)の構成データに基づいて、修正パッチ記憶部(11)に記憶される複数の修正パッチの中からロボット制御装置(RC)に適用すべき修正パッチを選択する修正パッチ自動選択部(18)をさらに備えてもよい。
(付記5)
 付記1~4のロボットソフトウェア保守装置(1)は、テストケースの入力を受け付けるテストケース入力部(14)をさらに備えてもよい。
(付記6)
 付記1~5のロボットソフトウェア保守装置(1)は、更新判定部でソフトウェア更新の成功と判定された場合に、ロボット制御装置(RC)に修正パッチを転送してソフトウェア更新を実行するソフトウェア更新部(21)をさらに備えてもよい。
 以上、本開示について詳述したが、本開示は上述した個々の実施形態に限定されるものではない。これらの実施形態は、本開示の要旨を逸脱しない範囲で、または、特許請求の範囲に記載された内容とその均等物から導き出される本開示の趣旨を逸脱しない範囲で、種々の追加、置き換え、変更、部分的削除等が可能である。また、これらの実施形態は、組み合わせて実施することもできる。例えば、上述した実施形態において、各動作の順序や各処理の順序は、一例として示したものであり、これらに限定されるものではない。また、上述した実施形態の説明に数値または数式が用いられている場合も同様である。
 例として、本開示に係るロボットソフトウェア保守装置において、接続されているロボットのすべてをソフトウェア更新の適否確認の対象としてもよく、ロボット手動選択部およびロボット自動選択部は任意の構成である。また、本開示に係るロボットソフトウェア保守装置は、修正パッチ入力部を有せず、修正パッチごとに専用の制御プログラムによって実現されてもよく、さらにテストケース入力部を有せず、テストケースごとに専用の制御プログラムによって実現されてもよい。また、本開示に係るロボットソフトウェア保守装置は、ソフトウェア更新部を有しないものであってもよい。
 1 ロボットソフトウェア保守装置
 11 修正パッチ記憶部
 12 修正パッチ入力部
 13 テストケース記憶部
 14 テストケース入力部
 15 構成データ取得部
 16 ロボット手動選択部
 17 ロボット自動選択部
 18 修正パッチ手動選択部
 19 修正パッチ自動選択部
 20 仮想制御装置生成部
 21 更新判定部
 22 ソフトウェア更新部
 RC ロボット制御装置
 RM ロボット機構部

Claims (6)

  1.  ネットワークを介して接続されるロボット制御装置のソフトウェア更新の適否を確認するソフトウェア保守装置であって、
     前記ロボット制御装置のソフトウェアを更新する修正パッチを記憶する修正パッチ記憶部と、
     ソフトウェア更新の成否を判定するためのテストケースを記憶するテストケース記憶部と、
     前記ロボット制御装置から、前記ロボット制御装置の構成を特定する構成データを取得する構成データ取得部と、
     前記構成データに基づいて、仮想的に前記ロボット制御装置の挙動を模倣する仮想制御装置を生成する仮想制御装置生成部と、
     前記仮想制御装置に前記修正パッチを適用し、前記テストケースに従ってソフトウェア更新の成否を判定する更新判定部と、
    を備えるロボットソフトウェア保守装置。
  2.  ユーザの入力により、前記仮想制御装置を生成する前記ロボット制御装置を選択するロボット自動選択部をさらに備える、請求項1に記載のロボットソフトウェア保守装置。
  3.  前記構成データに基づいて、前記仮想制御装置を生成する前記ロボット制御装置を選択するロボット自動選択部をさらに備える請求項1または2に記載のロボットソフトウェア保守装置。
  4.  前記ロボット制御装置の前記構成データに基づいて、前記修正パッチ記憶部に記憶される複数の前記修正パッチの中から前記ロボット制御装置に適用すべき前記修正パッチを選択する修正パッチ自動選択部をさらに備える、請求項1から3のいずれかに記載のロボットソフトウェア保守装置。
  5.  前記テストケースの入力を受け付けるテストケース入力部をさらに備える、請求項1から4のいずれか記載のロボットソフトウェア保守装置。
  6.  前記更新判定部でソフトウェア更新の成功と判定された場合に、前記ロボット制御装置に前記修正パッチを転送してソフトウェア更新を実行するソフトウェア更新部をさらに備える、請求項1から5のいずれかに記載のロボットソフトウェア保守装置。
PCT/JP2024/016436 2024-04-26 2024-04-26 ロボットソフトウェア保守装置 Pending WO2025224973A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/016436 WO2025224973A1 (ja) 2024-04-26 2024-04-26 ロボットソフトウェア保守装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/016436 WO2025224973A1 (ja) 2024-04-26 2024-04-26 ロボットソフトウェア保守装置

Publications (1)

Publication Number Publication Date
WO2025224973A1 true WO2025224973A1 (ja) 2025-10-30

Family

ID=97489555

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2024/016436 Pending WO2025224973A1 (ja) 2024-04-26 2024-04-26 ロボットソフトウェア保守装置

Country Status (1)

Country Link
WO (1) WO2025224973A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017004201A (ja) * 2015-06-09 2017-01-05 富士通株式会社 パッチプログラム抽出装置、パッチプログラム抽出プログラム及びパッチプログラム抽出方法
US20220111516A1 (en) * 2021-12-20 2022-04-14 Wei Seng Yeap Reliable real-time deployment of robot safety updates

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017004201A (ja) * 2015-06-09 2017-01-05 富士通株式会社 パッチプログラム抽出装置、パッチプログラム抽出プログラム及びパッチプログラム抽出方法
US20220111516A1 (en) * 2021-12-20 2022-04-14 Wei Seng Yeap Reliable real-time deployment of robot safety updates

Similar Documents

Publication Publication Date Title
EP1280027B1 (en) Control server, control terminal, control system, and recording medium storing control communication program
JP3925557B2 (ja) パラメータ設定装置
KR20040028804A (ko) 운영체제의 자동 설치 및 구성을 위한 시스템 및 방법
JP2002268707A (ja) コントローラ及びツール並びにそれらにより構成されるシステム
CN111399861A (zh) 一种软件自动化部署方法及系统
JP4462443B2 (ja) パラメータ設定装置
US11403113B2 (en) Server with system setting data synchronization function
JP4815938B2 (ja) 情報処理装置および方法、並びにプログラム
US7325039B1 (en) Router image support device
WO2025224973A1 (ja) ロボットソフトウェア保守装置
JPH09244985A (ja) コンピュータ装置
JP2007102625A (ja) Nc工作機械の制御プログラムの更新方法及び装置
US20100094949A1 (en) Method of Backing Up Library Virtual Private Database Using a Web Browser
WO2025039408A1 (zh) 组件管理方法、装置、非易失性存储介质及电子设备
JP2002169693A (ja) 制御用表示装置、および、そのプログラムが記録された記録媒体
CN112597131B (zh) 一种分布式脚本控制方法及相关装置
CN114327535A (zh) 一种bmc固件更新保护方法及相关组件
JP2001195110A (ja) 数値制御装置
EP3862884A1 (en) Device testing arrangement
CN113377398A (zh) 操作系统升级方法
CN112988196A (zh) 作业机械程序升级装置、方法及系统
JP3853581B2 (ja) 制御装置、および、そのプログラムが記録された記録媒体
CN119071166B (zh) 可编程交换机的sdn控制器部署方法、装置、设备及介质
JP3317239B2 (ja) プログラムの自動配布システム、プログラムの自動配布方法およびプログラムの自動配布用プログラムを記録した記録媒体
CN110162416A (zh) 一种工控设备的控制方法、系统、适配器及可读存储介质

Legal Events

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

Ref document number: 24936891

Country of ref document: EP

Kind code of ref document: A1