[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP7249735B2 - ロボット制御装置、バックアップファイルの保存方法およびプログラム - Google Patents

ロボット制御装置、バックアップファイルの保存方法およびプログラム Download PDF

Info

Publication number
JP7249735B2
JP7249735B2 JP2018038509A JP2018038509A JP7249735B2 JP 7249735 B2 JP7249735 B2 JP 7249735B2 JP 2018038509 A JP2018038509 A JP 2018038509A JP 2018038509 A JP2018038509 A JP 2018038509A JP 7249735 B2 JP7249735 B2 JP 7249735B2
Authority
JP
Japan
Prior art keywords
backup file
checksum
robot
file
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018038509A
Other languages
English (en)
Other versions
JP2019153134A (ja
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.)
Nidec America Corp
Original Assignee
Nidec America 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 Nidec America Corp filed Critical Nidec America Corp
Priority to JP2018038509A priority Critical patent/JP7249735B2/ja
Priority to US16/270,655 priority patent/US11106383B2/en
Priority to CN201910155236.5A priority patent/CN110228064B/zh
Priority to KR1020190024652A priority patent/KR102338028B1/ko
Publication of JP2019153134A publication Critical patent/JP2019153134A/ja
Application granted granted Critical
Publication of JP7249735B2 publication Critical patent/JP7249735B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/1602Programme controls characterised by the control system, structure, architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35278Checksum CRC
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50391Robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Robotics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Retry When Errors Occur (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ロボット制御装置、バックアップファイルの保存方法およびプログラムに関する。
産業用ロボットなどのロボットの動作を制御するロボット制御装置は、一般的にプログラムおよび設定情報に従ってロボットの制御を行う。特許文献1は、プログラムの更新時にバックアップを保存する技術を開示する。
特開2017-217734号公報
プログラムおよび設定情報は、ロボットの使用者によって修正することができる。修正前のプログラムおよび設定情報のバックアップを保存しておくことにより、なんらかの問題が発生した場合に、修正前のプログラムまたは設定情報と、修正後のプログラムまたは設定情報を比較することができる。また、使用するプログラムまたは設定情報を修正前のプログラムまたは設定情報に戻すこともできる。
しかし、定期的にすべてのバックアップを保存すると、保存されるデータの量が膨大になってしまう。
そこで、本発明は、バックアップを作成しながら、保存されるバックアップのデータの量を削減することができる技術を提供することを目的とする。
本発明のある態様に係るロボット制御装置は、ロボットの動作を制御する制御部と、前記ロボットの動作を制御するための情報セットを記憶する記憶部と、前記情報セットのバックアップファイルを作成するバックアップ作成部と、前記バックアップファイルのチェックサムを作成するチェックサム作成部と、前記チェックサム作成部で作成された現在のバックアップファイルのチェックサムと、過去のバックアップファイルのチェックサムとを比較する比較部と、前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとが異なる場合に、前記現在のバックアップファイルそのもの、または前記現在のバックアップファイルと前記過去のバックアップファイルの差分を保存する保存部とを有する。
記憶部に記憶された情報セットが更新されていない場合には、現在のバックアップファイルのチェックサムと過去のバックアップファイルのチェックサムは同一となる。一方、情報セットが更新された場合には、現在のバックアップファイルのチェックサムと過去のバックアップファイルのチェックサムは異なる。したがって、本発明においては、情報セットが更新された場合のみ、現在のバックアップファイルが保存されるので、保存されるデータの量が削減される。また、チェックサム同士を比較するので、バックアップファイル同士の比較よりも、処理の負担が少ない。
本発明の実施形態に係るロボット制御装置の構成を示すブロック図。 本発明の実施形態に係るロボット制御装置におけるバックアップファイルの保存方法を示すフローチャート。 バックアップファイルの保存方法の他の例を示すフローチャート。 本発明の実施形態に係る複数の情報セットのための単一のバックアップファイルの保存方法の具体例を示す模式図。 本発明の実施形態に係る複数の情報セットのための複数のバックアップファイルの保存方法の具体例を示す模式図。
<ロボット制御装置の構成>
図1は、本発明の実施形態に係るロボット制御装置であるコントローラ1の構成を示すブロック図である。本実施形態において、コントローラ1は、ロボット2を制御および監視する。ロボット2は、工場内での製造ロボットであり、例えば多関節ロボットである。但し、ロボット2は、多関節ロボットには限られず、自動的に作業を行う数値制御工作機械、例えば、数値制御旋盤、または数値制御マシニングセンタであってもよい。また、ロボット2は、製造ロボットには限られず、搬送ロボット、自律移動ロボット、その他のロボットであってもよい。
コントローラ1は、プロセッサ4とメモリ6(記憶部)を有する。プロセッサ4は、例えばCPU(Central Procesing Unit)であり、メモリ6に記憶された各種のプログラムを実行することで各種の機能動作を実行する。メモリ6は、例えば、EEPROM(Electrically Erasable Programmable Read-Only Memory)であり、プロセッサ4に使用されるプログラムおよび各種のデータを格納する。
コントローラ1は、ロボット2に搭載されていてもよいし、ロボット2に搭載されたプロセッサと別個に設けられ、ロボット2に搭載されたプロセッサと有線または無線で通信してもよい。また、コントローラ1は、ロボット2に搭載されたプロセッサ4と、ロボット2の外部に設けられたメモリ6を有してもよい。
メモリ6は、上記のプログラムとして、システム設定ファイル(設定情報ファイル、情報セット)10、ロボット動作プログラム(情報セット)12、エラー記録作成プログラム(情報セット)14、およびバックアップ作成プログラムを格納する。
システム設定ファイル10は、プロセッサ4の動作を統括的に制御するためのシステム制御プログラムであり、プロセッサ4の動作のためにプロセッサ4により参照される。プロセッサ4は、メモリ6からシステム設定ファイル10を読み出して実行することにより、適切に動作することができる。
また、図1において、制御モジュール16を便宜的にプロセッサ4の内部に示す。制御モジュール16は、システム設定ファイル10の一部であるモジュールまたはサブルーチンであり、プロセッサ4で実行されるタスクを表す。より具体的には、制御モジュール16は、ロボット2の動作に関する履歴を示す動作ログ18を生成し、動作ログ18をメモリ6に保存するためのタスクを表す。プロセッサ4は、制御モジュール16に従って、動作ログ18を生成し、動作ログ18をメモリ6に保存する。
プロセッサ4は、制御モジュール16に従って、逐次、動作ログ18に情報要素を追加して動作ログ18の内容を更新し、所定の保存期間が経過した情報要素を削除して動作ログ18の内容を更新する。動作ログ18の情報要素は、例えば、ロボット2の所定箇所の座標、ロボット2の所定箇所に配置されたアクチュエータ(例えばモータ)に与えられた電圧、アクチュエータが発揮した力またはトルク、ロボット2の温度などである。メモリ6に保存された動作ログ18は、ロボット2の動作に関する履歴を示すので、動作ログ18を用いて、動作ログ18の解析者は、ロボット2の挙動履歴を追跡し、例えば、ロボット2にエラーが発生した場合に、エラーの原因を特定することができる。
ロボット動作プログラム12は、ロボット2の動作を制御するためにプロセッサ4により参照される。プロセッサ4は、メモリ6からロボット動作プログラム12を読み出して実行することにより、ロボット2の動作を制御する制御部として機能し、ロボット2に所要の作業を実行させる。
プロセッサ4は、メモリ6からエラー記録作成プログラム14を読み出して実行することにより、エラーが発生した場合に、動作ログ18とは別個に、当該エラーに関連するエラー記録20を作成する。プロセッサ4は、エラー記録20をメモリ6に保存する。
コントローラ1で使用されるロボット動作プログラム12は、個々のコントローラ1専用に準備されることがあり、しかもロボット2の使用者により修正されることがある。また、システム設定ファイル10およびエラー記録作成プログラム14もロボット2の使用者により修正されることがある。修正前のプログラムおよび設定情報のバックアップを保存しておくことにより、なんらかの問題が発生した場合に、修正前のプログラムまたは設定情報と、修正後のプログラムまたは設定情報を比較することができる。また、使用するプログラムまたは設定情報を修正前のプログラムまたは設定情報に戻すこともできる。
そこで、本実施形態に係るプロセッサ4は、メモリ6からバックアップ作成プログラムを読み出して実行することにより、システム設定ファイル10とロボット動作プログラム12とエラー記録作成プログラム14の少なくともいずれかについて、バックアップファイルを作成するバックアップ作成部として機能する。また、バックアップ作成プログラムに従って、プロセッサ4は、バックアップファイルのチェックサムを作成するチェックサム作成部として機能する。また、バックアップ作成プログラムに従って、プロセッサ4は、チェックサム作成部で作成された現在のバックアップファイルのチェックサムと、過去のバックアップファイルのチェックサムとを比較する比較部として機能し、現在のバックアップファイルのチェックサムと過去のバックアップファイルのチェックサムとが異なる場合に、現在のバックアップファイルをメモリ6に保存する保存部として機能する。
メモリ6には、直前に保存されたバックアップファイル26Bが、バックアップファイル26Bのチェックサム28Bと関連付けられて保存されている。メモリ6には、さらに以前に保存されたバックアップファイル26Cが、バックアップファイル26Cのチェックサム28Cと関連付けられて保存されている。このように、バックアップファイルとチェックサムは、上書きされることなく、メモリ6に蓄積されてゆく。
図1において、バックアップ作成プログラムにより実施される機能であるバックアップ作成機能22と、チェックサム作成機能23と、チェックサム比較機能24を便宜的にプロセッサ4の内部に示す。バックアップ作成機能22は、システム設定ファイル10とロボット動作プログラム12とエラー記録作成プログラム14の少なくともいずれかについて現在のバックアップファイルを作成する。チェックサム作成機能23は、現在のバックアップファイルのチェックサムを作成する。チェックサム比較機能24は、現在のバックアップファイルのチェックサムと、直前に保存されたバックアップファイル26Bのチェックサム28Bとを比較する。チェックサム比較機能24は、現在のバックアップファイルのチェックサムと過去のバックアップファイルのチェックサムとが異なる場合に、現在のバックアップファイル26Aを、バックアップファイル26Aのチェックサム28Aと関連付けて、メモリ6に保存する。
<バックアップファイル作成の動作>
図2は、本発明の実施形態に係るロボット制御装置におけるバックアップファイルの保存方法を示すフローチャートである。この方法は、コントローラ1の起動時に起動されるバックアップ作成プログラムに従って、プロセッサ4によって実行される。
コントローラ1が起動すると、まずステップS1において、プロセッサ4は、システム設定ファイル10とロボット動作プログラム12とエラー記録作成プログラム14の少なくともいずれかの情報セットについて、現在のバックアップファイルを作成する。ここで、現在のバックアップファイルは、情報セットのコピーでもよいが、好ましくは、プロセッサ4は、情報セットを圧縮することによって、バックアップファイルを作成する。圧縮によって、バックアップファイルのデータ量を削減することができ、かつチェックサム作成の処理負担が低減する。
次に、ステップS2において、プロセッサ4は、現在のバックアップファイルのチェックサムを作成する。チェックサムとしては、例えば、巡回冗長検査(CRC)の符号でもよいし、MD5(Message Digest Algorithm 5)のハッシュ値でもよい。
次に、ステップS3において、プロセッサ4は、ステップS2で作成されたチェックサム(現在のチェックサム)が、メモリ6に記憶されているチェックサム28B(メモリ6に直前に保存されたチェックサム)と同一であるか否か判断する。
ステップS3の判断が肯定的である場合には、処理はステップS4に進む。ステップS4において、プロセッサ4は、ステップS1で作成された現在のバックアップファイルおよびステップS2で作成されたチェックサムを廃棄する。この後、処理は終了する。
一方、ステップS3の判断が否定的である場合には、処理はステップS5に進む。ステップS5において、プロセッサ4は、ステップS1で作成された現在のバックアップファイル26AおよびステップS2で作成されたチェックサム28Aをメモリ6に保存する。ステップS5の後、処理は終了する。
好ましくは、ステップS5において、プロセッサ4は、バックアップファイル26Aおよびチェックサム28Aに、保存または作成の日時を表す日時情報を付与して、メモリ6に記憶する。日時情報を用いて、ステップS3では、メモリ6に記憶された複数のチェックサムのうち直前に保存されたチェックサム28Bを特定することができる。また、日時情報を用いて、解析者は、メモリ6に記憶された複数のバックアップファイルの保存または作成の順序を特定することができる。
情報セットが更新されていない場合には、ステップS3の判断が肯定的、すなわち現在のチェックサムと直前に保存されたチェックサムは同一となる。一方、情報セットが更新された場合には、ステップS3の判断が否定的、すなわち現在のチェックサムと直前に保存されたチェックサムは異なる。したがって、本実施形態においては、情報セットが更新された場合のみ、現在のバックアップファイルが保存されるので、メモリ6に保存されるデータの量が削減される。また、本実施形態においては、チェックサム同士を比較するので、バックアップファイル同士の比較よりも、プロセッサ4の処理の負担が少ない。
上記のように、この方法は、コントローラ1の起動時に実施される。コントローラ1の起動時には、ロボット2が稼働していないため、ロボット動作プログラム12は働いていない。したがって、この方法を実施しても、コントローラ1の処理の負担が小さい。また、この方法を起動時に実施することで、バックアップファイルおよびチェックサムの作成、チェックサムの比較の処理の頻度が抑制される。また、コントローラ1の起動のたびにこの方法を自動的に実行することにより、バックアップの実行忘れを防ぐことができる。
但し、この方法は、コントローラ1の起動時に限らず、例えば、任意の時に実施してもよい。例えば、コントローラ1の使用者がプロセッサ4に指令を与えると、プロセッサ4がこの方法を実施してもよい。あるいは、定期的にプロセッサ4がこの方法を実施してもよい。
図3は、バックアップファイルの保存方法の他の例を示すフローチャートである。図2の方法と同じステップを示すために同一の符号が使用され、これらのステップの説明は省略する。
図3の方法では、ステップS3の判断が否定的である場合には、処理はステップS6に進む。ステップS6において、プロセッサ4は、ステップS1で作成された現在のバックアップファイル26Aと、直前に保存されたバックアップファイル26Bとの差分を抽出する。
次に、ステップS7において、プロセッサ4は、ステップS6で抽出された差分およびステップS2で作成されたチェックサム28Aをメモリ6に保存する。ステップS7の後、処理は終了する。
好ましくは、ステップS7において、プロセッサ4は、差分およびチェックサム28Aに、保存または作成の日時を表す日時情報を付与して、メモリ6に記憶する。日時情報を用いて、ステップS3では、メモリ6に記憶された複数のチェックサムのうち直前に保存されたチェックサム28Bを特定することができる。また、日時情報を用いて、解析者は、メモリ6に記憶された複数の差分の保存または作成の順序を特定することができる。
図3の方法が使用される場合、好ましくは、メモリ6には、更新前のいずれかの世代の(例えば初期の)情報セットがあらかじめ保存される。このような過去の情報セットは、圧縮された形式で保存されてもよい。但し、過去の情報セットは、メモリ6以外の他の記憶媒体に保存されていてもよい。解析者は、過去の情報セットと、メモリ6に記憶された1つ以上の差分に基づいて、現在の現在のバックアップファイル26A、ひいては現在の情報セットを再現することが可能である。
図3の方法では、現在のバックアップファイルと過去のバックアップファイルの差分を保存するので、保存されるデータの量が削減される。差分は、人間が読んで理解できるテキスト形式であってもよいし、機械が読むことができるバイナリ形式であってもよい。バックアップファイルが圧縮された形式であれば、差分は、人間には理解できないバイナリ形式であろうが、圧縮に対応する解凍を行うことによって、解析者は、現在の情報セットを再現することが可能である。
上記の通り、チェックサムの比較により、相違が見いだされた場合には、現在のバックアップファイルそのものをメモリ6に保存してもよいし、現在のバックアップファイルと過去のバックアップファイルとの差分をメモリ6に保存してもよい。
複数の情報セット(例えば、システム設定ファイル10およびロボット動作プログラム12)のバックアップファイルを作成する場合には、図4の模式図に示す具体例を使用することができる。以下、複数の情報セットとして、システム設定ファイル10とロボット動作プログラム12が例示されるが、エラー記録作成プログラム14が複数の情報セットに含まれてもよい。
図4の具体例では、ステップS1において、プロセッサ4は、ロボット動作プログラム12とシステム設定ファイル10とを結合して、結合された情報セットの現在のバックアップファイル26Aを作成する。この場合、バックアップファイル26Aは、ロボット動作プログラム12のコピーとシステム設定ファイル10のコピーの組合せでもよいし、当該組合せを圧縮して得られる圧縮形式のファイルでもよい。
次に、ステップS2において、プロセッサ4は、現在のバックアップファイル26Aのチェックサムである現在のチェックサム28Aを作成する。次に、ステップS3において、プロセッサ4は、現在のチェックサム28Aを直前に保存されたチェックサム28Bと比較する。図4の具体例によれば、単一のチェックサムだけが作成されるので、チェックサムの作成の処理負担と、現在のチェックサムと過去のチェックサムの比較の処理負担が軽減される。
あるいは、複数の情報セットのバックアップファイルを作成する場合には、図5の模式図に示す具体例を使用することができる。以下、複数の情報セットとして、システム設定ファイル10とロボット動作プログラム12が例示されるが、エラー記録作成プログラム14が複数の情報セットに含まれてもよい。
図5の具体例では、ステップS1において、プロセッサ4は、ロボット動作プログラム12の現在のバックアップファイル26Aaと、システム設定ファイル10の現在のバックアップファイル26Abを作成する。バックアップファイル26Aaは、ロボット動作プログラム12のコピーでもよいし、ロボット動作プログラム12を圧縮して得られる圧縮形式のファイルでもよい。バックアップファイル26Abは、システム設定ファイル10のコピーでもよいし、システム設定ファイル10を圧縮して得られる圧縮形式のファイルでもよい。
次に、ステップS2において、プロセッサ4は、現在のバックアップファイル26Aaのチェックサムである現在のチェックサム28Aaを作成する。また、ステップS2において、プロセッサ4は、現在のバックアップファイル26Abのチェックサムである現在のチェックサム28Abを作成する。
そして、ステップS3において、プロセッサ4は、ロボット動作プログラム12の現在のバックアップファイル26Aaのチェックサム28Aaと、直前に保存されたロボット動作プログラム12のバックアップファイルのチェックサム28Baとを比較する。チェックサム28Aa,28Baが同一であれば、バックアップファイル26Aaとチェックサム28Aaは廃棄される。一方、チェックサム28Aa,28Baが相違すれば、プロセッサ4は、現在のバックアップファイル26Aaそのものをメモリ6に保存してもよいし、現在のバックアップファイル26Aaと直前に保存されたロボット動作プログラム12のバックアップファイルとの差分をメモリ6に保存してもよい。
また、ステップS3において、プロセッサ4は、システム設定ファイル10の現在のバックアップファイル26Abのチェックサム28Abと、直前に保存されたシステム設定ファイル10のバックアップファイルのチェックサム28Bbとを比較する。チェックサム28Ab,28Bbが同一であれば、バックアップファイル26Abとチェックサム28Abは廃棄される。一方、チェックサム28Ab,28Bbが相違すれば、プロセッサ4は、現在のバックアップファイル26Abそのものをメモリ6に保存してもよいし、現在のバックアップファイル26Abと直前に保存されたシステム設定ファイル10のバックアップファイルとの差分をメモリ6に保存してもよい。図5の具体例によれば、ロボット動作プログラム12と設定情報ファイルの結合の負担がない。
<他の変形例>
以上、本発明の実施形態を説明したが、上記の説明は本発明を限定するものではなく、本発明の技術的範囲において、構成要素の削除、追加、置換を含む様々な変形例が考えられる。
例えば、上記の実施形態においては、1つのメモリ6に、システム設定ファイル10、ロボット動作プログラム12、エラー記録作成プログラム14、動作ログ18、エラー記録20、バックアップ作成プログラム、バックアップファイル26A,26B,…およびチェックサム28A,28B,…が格納される。しかし、これらは、異なるメモリに格納されてもよい。
コントローラ1において、プロセッサ4が実行する各機能は、プロセッサの代わりに、ハードウェアで実行してもよいし、例えばFPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)等のプログラマブルロジックデバイスで実行してもよい。
図示しないが、コントローラ1は、ネットワーク(例えばインターネット)を介して、管理装置に接続されていてもよい。この場合、プロセッサ4は、バックアップファイル26A,26B,…を管理装置に送信してもよい。この場合には、解析者は、コントローラ1が存在する場所に赴かずに、バックアップファイル26A,26B,…を用いて、コントローラ1における情報セットの更新履歴を追跡し、例えば、ロボット2で発生した問題の原因を特定することができる。
1 コントローラ(ロボット制御装置)
2 ロボット
4 プロセッサ(制御部、バックアップ作成部、比較部、保存部)
6 メモリ(記憶部)
10 システム設定ファイル(設定情報ファイル、情報セット)
12 ロボット動作プログラム(情報セット)
14 エラー記録作成プログラム(情報セット)
22 バックアップ作成機能
23 チェックサム作成機能
24 チェックサム比較機能
26A 現在のバックアップファイル
26B 直前に保存されたバックアップファイル
26C さらに以前に保存されたバックアップファイル
28A 現在のチェックサム
28B 直前に保存されたチェックサム
28C さらに以前に保存されたチェックサム

Claims (4)

  1. ロボットの動作を制御する制御部と、
    前記ロボットの動作を制御するための情報セットを記憶する記憶部と、
    前記情報セットのバックアップファイルを作成するバックアップ作成部と、
    前記バックアップファイルのチェックサムを作成するチェックサム作成部と、
    前記チェックサム作成部で作成された現在のバックアップファイルのチェックサムと、過去のバックアップファイルのチェックサムとを比較する比較部と、
    前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとが異なる場合に、前記現在のバックアップファイルそのもの、または前記現在のバックアップファイルと前記過去のバックアップファイルの差分を保存する保存部と、
    を有し、
    前記バックアップ作成部は、
    前記ロボット制御装置の起動時に、前記制御部が前記ロボットの動作を制御するために参照するロボット動作プログラムと、前記制御部が前記制御部の動作のために参照する設定情報ファイルとを結合して、結合された情報セットを圧縮することによって、前記バックアップファイルを作成し、
    前記ロボット制御装置の起動時に、前記チェックサム作成部は、前記チェックサムを作成し、
    前記ロボット制御装置の起動時に、前記比較部は、前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとを比較し、
    前記ロボット制御装置の起動時に、前記保存部は、前記現在のバックアップファイルそのもの、または前記差分を保存するロボット制御装置。
  2. 前記保存部は、現在のバックアップファイルのチェックサムと、前記過去のバックアップファイルのチェックサムとが異なる場合に、前記現在のバックアップファイルと前記過去のバックアップファイルの差分を保存する、
    ことを特徴とする請求項1に記載のロボット制御装置。
  3. ロボット制御装置の起動時に、ロボットの動作を制御するため前記ロボット制御装置に参照されるロボット動作プログラムと、前記ロボット制御装置の動作のために前記ロボット制御装置に参照される設定情報ファイルとが結合された情報セットを圧縮することによってバックアップファイルを前記ロボット制御装置によって作成し、
    前記ロボット制御装置の起動時に、前記バックアップファイルのチェックサムをロボット制御装置によって作成し、
    前記ロボット制御装置の起動時に、作成された現在のバックアップファイルのチェックサムと、過去のバックアップファイルのチェックサムとを前記ロボット制御装置によって比較し、
    前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとが異なる場合に、
    前記ロボット制御装置の起動時に、前記現在のバックアップファイルそのもの、または前記現在のバックアップファイルと前記過去のバックアップファイルの差分を前記ロボット制御装置によって保存する、
    または、前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとが同一である場合に、
    前記ロボット制御装置の起動時に、前記現在のバックアップファイルを前記ロボット制御装置によって廃棄する、
    ことを特徴するバックアップファイルの保存方法。
  4. ロボット制御装置のコンピュータに、
    前記ロボット制御装置の起動時に、ロボットの動作を制御するため前記ロボット制御装置に参照されるロボット動作プログラムと、前記ロボット制御装置の動作のために前記ロボット制御装置に参照される設定情報ファイルとが結合された情報セットを圧縮することによってバックアップファイルを作成する機能と、
    前記ロボット制御装置の起動時に、前記バックアップファイルのチェックサムを作成する機能と、
    前記ロボット制御装置の起動時に、作成された現在のバックアップファイルのチェックサムと、過去のバックアップファイルのチェックサムとを比較する機能と、
    前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとが異なる場合に、
    前記ロボット制御装置の起動時に、前記現在のバックアップファイルそのもの、または前記現在のバックアップファイルと前記過去のバックアップファイルの差分を保存する機能と、
    前記現在のバックアップファイルのチェックサムと前記過去のバックアップファイルのチェックサムとが同一である場合に、
    前記ロボット制御装置の起動時に、前記現在のバックアップファイルを廃棄する機能と
    を実行させるプログラム。
JP2018038509A 2018-03-05 2018-03-05 ロボット制御装置、バックアップファイルの保存方法およびプログラム Active JP7249735B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018038509A JP7249735B2 (ja) 2018-03-05 2018-03-05 ロボット制御装置、バックアップファイルの保存方法およびプログラム
US16/270,655 US11106383B2 (en) 2018-03-05 2019-02-08 Robot control apparatus, and method and program for preserving backup file
CN201910155236.5A CN110228064B (zh) 2018-03-05 2019-03-01 机器人控制装置、备份文件的保存方法以及记录介质
KR1020190024652A KR102338028B1 (ko) 2018-03-05 2019-03-04 로봇 제어 장치, 백업 파일의 보존 방법 및 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018038509A JP7249735B2 (ja) 2018-03-05 2018-03-05 ロボット制御装置、バックアップファイルの保存方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2019153134A JP2019153134A (ja) 2019-09-12
JP7249735B2 true JP7249735B2 (ja) 2023-03-31

Family

ID=67768605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018038509A Active JP7249735B2 (ja) 2018-03-05 2018-03-05 ロボット制御装置、バックアップファイルの保存方法およびプログラム

Country Status (4)

Country Link
US (1) US11106383B2 (ja)
JP (1) JP7249735B2 (ja)
KR (1) KR102338028B1 (ja)
CN (1) CN110228064B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110950092B (zh) * 2019-12-27 2021-06-29 深圳市越疆科技有限公司 一种码垛装置的控制方法及装置
JP2022091308A (ja) * 2020-12-09 2022-06-21 株式会社日立製作所 ストレージシステム及びデータ削除方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001195378A (ja) 2000-01-07 2001-07-19 Nippon Digital Kenkyusho:Kk データの同期方法、会計処理装置、会計処理システム、及び会計データの同期処理プログラムの記録媒体
JP2013205866A (ja) 2012-03-27 2013-10-07 Omron Corp 情報処理装置、情報処理方法、およびプログラム
JP2017142664A (ja) 2016-02-10 2017-08-17 三菱電機インフォメーションネットワーク株式会社 データ処理装置、データ処理システム、データ処理方法及びデータ処理プログラム
JP2017172113A (ja) 2016-03-18 2017-09-28 Ihi運搬機械株式会社 足場施工方法、および、該方法で用いる足場仮設トレイ
JP2017217734A (ja) 2016-06-08 2017-12-14 三菱電機株式会社 ロボット制御装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007172113A (ja) * 2005-12-20 2007-07-05 Seiko Epson Corp ファイル処理装置、印刷装置及びファイル処理方法
US7685189B2 (en) * 2006-12-27 2010-03-23 Microsoft Corporation Optimizing backup and recovery utilizing change tracking
CN101286058B (zh) * 2008-04-24 2010-09-29 上海交通大学 机器人模块化分布式自适应控制系统及方法
JP4598865B2 (ja) * 2009-02-17 2010-12-15 ファナック株式会社 工作機械と組み合わせて使用するロボットの制御装置
JP5346253B2 (ja) * 2009-08-24 2013-11-20 株式会社日立ソリューションズ ファームウェア更新システム、及び情報機器、並びにプログラム
WO2011055935A2 (ko) * 2009-11-05 2011-05-12 Kim Namcheol 실시간 자동 파일 백업을 위한 방법과 시스템
JP5948932B2 (ja) * 2012-02-16 2016-07-06 セイコーエプソン株式会社 ロボット制御装置、ロボット制御方法およびロボット制御プログラムならびにロボットシステム
JP5734240B2 (ja) * 2012-06-13 2015-06-17 三菱電機株式会社 プログラマブル表示器
JP5741614B2 (ja) * 2013-03-14 2015-07-01 株式会社安川電機 製造システム
JP5942938B2 (ja) * 2013-07-26 2016-06-29 株式会社安川電機 ロボットシステム
JP5939213B2 (ja) * 2013-08-09 2016-06-22 株式会社安川電機 ロボット制御装置及びロボット制御方法
JP2015231656A (ja) * 2014-06-10 2015-12-24 ファナック株式会社 比較した設定データの相違点の反映機能を備えるロボット制御装置
US10387378B2 (en) * 2014-07-04 2019-08-20 Druva Technologies Pte. Ltd. Storage and retrieval of file-level changes on deduplication backup server
WO2016137464A1 (en) * 2015-02-26 2016-09-01 Hewlett Packard Enterprise Development Lp Checksum requests of files
US20160291967A1 (en) * 2015-03-30 2016-10-06 Konica Minolta Laboratory U.S.A., Inc. Method and system for updating firmware
JP6862081B2 (ja) * 2015-06-23 2021-04-21 キヤノン株式会社 ロボットシステムの制御方法、制御プログラム、コンピュータ読み取り可能な記録媒体、およびロボットシステム
JP2018010545A (ja) * 2016-07-15 2018-01-18 富士通株式会社 ストレージ装置、制御装置、及び制御プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001195378A (ja) 2000-01-07 2001-07-19 Nippon Digital Kenkyusho:Kk データの同期方法、会計処理装置、会計処理システム、及び会計データの同期処理プログラムの記録媒体
JP2013205866A (ja) 2012-03-27 2013-10-07 Omron Corp 情報処理装置、情報処理方法、およびプログラム
JP2017142664A (ja) 2016-02-10 2017-08-17 三菱電機インフォメーションネットワーク株式会社 データ処理装置、データ処理システム、データ処理方法及びデータ処理プログラム
JP2017172113A (ja) 2016-03-18 2017-09-28 Ihi運搬機械株式会社 足場施工方法、および、該方法で用いる足場仮設トレイ
JP2017217734A (ja) 2016-06-08 2017-12-14 三菱電機株式会社 ロボット制御装置

Also Published As

Publication number Publication date
KR20190105516A (ko) 2019-09-17
CN110228064A (zh) 2019-09-13
JP2019153134A (ja) 2019-09-12
CN110228064B (zh) 2023-07-25
US11106383B2 (en) 2021-08-31
KR102338028B1 (ko) 2021-12-10
US20190272103A1 (en) 2019-09-05

Similar Documents

Publication Publication Date Title
US20190171445A1 (en) Vehicle-mounted control device, program writing device, program generating device and program
JP3594035B2 (ja) 制御装置、cpuユニット、プログラマブルコントローラのユーザプログラム編集方法、及びオンラインエディットされる際のプログラマブルコントローラの処理方法
JP2018063659A (ja) ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム
JP7249735B2 (ja) ロボット制御装置、バックアップファイルの保存方法およびプログラム
WO2015136970A1 (ja) 制御装置及び制御システム
JP6790686B2 (ja) 制御装置、制御方法およびプログラム
US8229892B2 (en) Storage apparatus and data restoring method used therein
US9983560B2 (en) Positioning device and PLC system
US9824229B2 (en) Controller with enhanced reliability
CN105144005A (zh) 可编程逻辑控制器系统以及可编程逻辑控制器
JP6205934B2 (ja) プログラマブルコントローラシステム、その支援装置、プログラム
JP6582438B2 (ja) 情報処理装置、システム設定方法、及び、コンピュータ・プログラム
WO2020157950A1 (ja) 情報処理装置、バックアップ方法、リストア方法およびプログラム
CN110275797B (zh) 控制器以及数据保存方法
JP4280964B2 (ja) 制御データ保護装置
KR20230004235A (ko) 제어 장치, 제어 방법, 및 프로그램
JP2009070268A (ja) 自動バックアップ機能を有する数値制御装置
JP6810630B2 (ja) ロボット制御装置、ロボットシステム及びロボットの制御方法
JP2010020416A (ja) データ転送方法およびデータ転送装置
JP2007199977A (ja) データ記憶装置及びデータ記憶方法
JP2735972B2 (ja) プログラムローディング制御システム
CN110908339B (zh) 数值控制装置
JP2004355389A (ja) リモートアップデートシステム
JP6838714B2 (ja) 車載制御装置
JP2007034451A (ja) アプリケーションソフトウェア履歴管理装置およびアプリケーションソフトウェア履歴管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211207

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220331

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220902

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20220902

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20220914

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20220920

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20220930

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20221004

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20221101

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20221213

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20230124

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20230221

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20230221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230320

R151 Written notification of patent or utility model registration

Ref document number: 7249735

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151