JPWO2016051557A1 - コントローラ - Google Patents

コントローラ Download PDF

Info

Publication number
JPWO2016051557A1
JPWO2016051557A1 JP2016551426A JP2016551426A JPWO2016051557A1 JP WO2016051557 A1 JPWO2016051557 A1 JP WO2016051557A1 JP 2016551426 A JP2016551426 A JP 2016551426A JP 2016551426 A JP2016551426 A JP 2016551426A JP WO2016051557 A1 JPWO2016051557 A1 JP WO2016051557A1
Authority
JP
Japan
Prior art keywords
data
compressed
processing
stored
power
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016551426A
Other languages
English (en)
Other versions
JP6386575B2 (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.)
Fuji Corp
Original Assignee
Fuji Machine Manufacturing Co Ltd
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 Fuji Machine Manufacturing Co Ltd filed Critical Fuji Machine Manufacturing Co Ltd
Publication of JPWO2016051557A1 publication Critical patent/JPWO2016051557A1/ja
Application granted granted Critical
Publication of JP6386575B2 publication Critical patent/JP6386575B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)
  • Debugging And Monitoring (AREA)

Abstract

コントローラ10は、制御装置14と、不揮発性メモリ18と、揮発性メモリ16とを備えている。制御装置10は、処理周期毎に、予め設定された処理を実行する処理実行手段と、処理周期において、処理実行手段が処理を実行することで揮発性メモリ16に格納されている非圧縮データを圧縮するデータ圧縮手段と、外部から入力される電源OFF予告信号を検出すると、揮発性メモリ16に格納され、かつ、データ圧縮手段により圧縮されていない非圧縮データと、データ圧縮手段により圧縮された圧縮データとを不揮発性メモリ18に格納するデータ退避手段と、を有している。

Description

本明細書に開示する技術は、コントローラに関し、詳しくは、電源OFF時にコントローラの揮発性メモリに記憶されているデータを不揮発性メモリに退避する技術に関する。
RAM(Random−Access Memory)等の揮発性メモリを備えるコントローラでは、電源ON中に揮発性メモリに格納されたデータが、停電や異常等による電源OFF時に不揮発性メモリに書き込まれ、退避されることがある。電源OFF時にはコントローラへの電源供給もOFFされるため、コントローラは、限られた時間の中で不揮発性メモリへのデータ退避を行う必要がある。このため、不揮発性メモリへのデータ退避を短時間で行うための方法が提案されている(例えば、特許文献1)。
特許文献1では、揮発性メモリに格納されているデータを不揮発性メモリへ書き込む際に、まず、揮発性メモリに格納されているデータを圧縮データに変換する。その後、変換した圧縮データのみを不揮発性メモリに書き込んでいる。データを圧縮することによって、データ量を小さくし、揮発性メモリへの書き込み時間を低減している。これによって、データ退避に要する時間を短くしている。
特開2000−194607号公報
特許文献1の技術では、電源OFF時に、揮発性メモリに格納されているデータを圧縮データへ変換し、その変換した圧縮データを不揮発性メモリに格納する。そのため、不揮発性メモリに退避するデータ量が減ることでデータ書き込み時間は減少できるものの、揮発性メモリに記憶されているデータを圧縮データへ変換するための処理が必要となる。その結果、電源OFF時の処理の短時間化が十分ではないという問題がある。
本明細書は、電源OFF時に揮発性メモリに記憶されているデータを不揮発性メモリに退避する処理を短時間で行うことができるコントローラを開示する。
本明細書に開示するコントローラは、制御装置と、不揮発性メモリと、揮発性メモリと、を備えている。制御装置は、処理周期毎に、予め設定された処理を実行する処理実行手段と、処理周期において、処理実行手段が処理を実行することで前記揮発性メモリに格納されている非圧縮データを圧縮するデータ圧縮手段を有している。また、制御装置は、外部から入力される電源OFF予告信号を検出すると、揮発性メモリに格納され、かつ、データ圧縮手段により圧縮されていない非圧縮データと、データ圧縮手段により圧縮された圧縮データとを不揮発性メモリに格納するデータ退避手段を有している。
上記のコントローラでは、制御装置の処理周期において、揮発性メモリに格納されている非圧縮データを圧縮データに圧縮している。そのため、制御装置は、外部から入力される電源OFF予告信号検出後に、データ退避手段により、非圧縮データを圧縮データに圧縮する必要がない。データ退避手段では、データ圧縮手段により圧縮されていない圧縮データと、データ圧縮手段により圧縮されたデータを退避するだけとなり、データ退避に要する時間を短くすることができる。
本実施例に係るサーボコントローラのブロック図である。 図1のRAMのメモリ領域を説明する概念図である。 サーボコントローラの通常時の処理を説明するフローチャートである。 サーボコントローラの電源OFF予告時の処理を説明するフローチャートである。
以下に説明する実施例の主要な特徴を列記しておく。なお、以下に記載する技術要素は、それぞれ独立した技術要素であって、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。
(特徴1)データ圧縮手段は、処理周期のうち処理実行手段が処理を実行していない空き時間において、揮発性メモリに格納されている非圧縮データを圧縮してもよい。このような構成によると、非圧縮データのデータ圧縮処理のためだけに、処理周期(1周期の時間間隔)が長くなることを抑制することができる。
(特徴2)処理実行手段は、処理周期において、定期的に行われる定期処理と、特定条件が成立した時に行われる不定期処理とを実行してもよい。データ圧縮手段は、不定期処理が実行されないことによる空き時間を利用して、非圧縮データを圧縮してもよい。不定期処理は、特定条件が成立したときにのみ実行され、常時実行される処理ではない。上記の構成では、制御装置の処理周期(1周期の時間)は、定期処理と不定期処理とを1周期内で実行できるように設定される。そのため、ある処理周期において不定期処理が実行されないときは、その処理周期において制御装置は不定期処理の代わりにデータ圧縮処理を実行することが可能となる。このため、データ圧縮手段によるデータ圧縮処理のために、処理周期が長くなることが抑制される。
(特徴3)制御装置は、電源OFF予告信号を検出したときに、電源がOFFするまでの電源OFF時間を算出する算出手段と、算出手段により算出された電源OFF時間に応じて、データ退避手段により不揮発性メモリに退避される非圧縮データと圧縮データのデータ量を調整する調整手段を有していてもよい。上記の構成によると、電源OFFするまでの時間(予測時間)に応じて不揮発性メモリに退避されるデータ量を調整するため、データ退避処理の途中で電源供給が停止するという事態を防止することができる。
(特徴4)揮発性メモリは、データ圧縮手段により圧縮された圧縮データを記憶する複数の圧縮データ記憶領域と、圧縮データが複数の圧縮データ記憶領域のどこに記憶されたかを特定する管理情報を記憶する管理情報記憶領域を有していてもよい。データ圧縮手段は、揮発性メモリに格納されている非圧縮データを格納すると、その圧縮データを複数のデータ記憶領域のいずれかに記憶するとともに、その圧縮データの管理情報を管理情報記憶領域に記憶してもよい。処理周期のうち空き時間を利用してデータ圧縮を行うと、データ圧縮手段によって生成される圧縮データの容量が一定とはならない。上記の構成によると、圧縮データの容量が変化しても、それに応じて管理情報を記憶するため、作成される圧縮データを連続データとして処理することができる。
(実施例) 以下、本実施例に係るサーボコントローラ10について説明する。サーボコントローラ10は、電子部品を基板に実装する実装機に装備され、当該実装機に装備されるサーボモータ(図示しない)を制御する。図1に示すように、サーボコントローラ10は、上位制御装置2に接続されている。サーボコントローラ10は、上位制御装置2の指示に基づいてサーボモータを制御することで、実装機の動作を制御する。
サーボコントローラ10は、電源監視回路12と、CPU(Central Processing Unit)14と、RAM(Random Access Memory)16と、CF(Compact Flash)18と、ICH(I/O Controller Hub)20と、を備えている。
電源監視回路12は、CPU14に接続されている。電源監視回路12は、公知の回路であり、サーボコントローラ10に供給される電源電圧を監視する。電源監視回路12は、サーボコントローラ10に供給される電源電圧が所定値を下回ったときに、電源OFF予告信号をCPU14に出力する。なお、本実施例では、サーボコントローラ10に電源監視回路12を設けたが、このような構成には限られない。例えば、電源監視回路を上位制御装置2に設け、上位制御装置2からサーボコントローラに電源OFF予告信号を出力するようにしてもよい。
CPU14は、サーボコントローラ10の動作を制御するプロセッサである。CPU14は、RAM16に接続されると共に、ICH20を介してCF18に接続されている。CPU14は、予め記憶されたプログラムを実行し、上位制御装置2からの指示に基づいてサーボモータを制御する。CPU14がプログラムを実行することで、CPU14は、処理実行手段、データ圧縮手段、データ退避手段、算出手段、調整手段として機能する。CPU14による処理については、後で詳述する。
RAM16は、揮発性メモリであり、CPU14に接続されている。RAM16は、CPU14がプログラムを実行することで生成される各種データを格納する。RAM16は揮発性メモリであるため、外部から電源が供給されている間だけ、格納されているデータを保持する。このため、外部からの電源供給が停止すると、格納されているデータは消失する。RAM16に格納されるデータには、CPU14が実行する処理の履歴を示すログ情報と、そのログ情報を圧縮処理することで得られる圧縮ログ情報と、圧縮ログ情報を管理するための管理情報が含まれる。具体的には、図2に示すようにRAM16には、データ領域202と、圧縮データ領域204と、管理情報記憶領域206が設けられる。
データ領域202は、リングバッファとして構成されており、4個のデータ記憶領域202a〜202dで構成されている。各データ記憶領域202a〜202dには、ログ情報(非圧縮データ)が記憶される。各データ記憶領域202a〜202dの容量は同一に設定されている。このため、各データ記憶領域202a〜202dに記憶されるログ情報の容量も同一となる。ログ情報が格納される順番は、データ記憶領域202aからデータ記憶領域202dに順に格納され、データ記憶領域202dにログ情報が格納されると、再度、データ記憶領域202aから順に格納される。
圧縮データ領域204は、データ領域202に格納されたログ情報を圧縮して得られる圧縮ログ情報ファイルが格納される。後で詳述するように、データ領域202に格納されるログ情報は、データ記憶領域202a〜202d毎に圧縮されて圧縮データ領域204に格納される。すなわち、圧縮データ領域204は、データ領域202の4個のデータ記憶領域202a〜202dのそれぞれに対応した圧縮ログ情報ファイル204a〜204dを記憶する。具体的には、圧縮ログ情報ファイル204aはデータ記憶領域202aに、圧縮ログ情報ファイル204bはデータ記憶領域202bに、圧縮ログ情報ファイル204cはデータ記憶領域202cに、圧縮ログ情報ファイル204dはデータ記憶領域202dに対応している。各圧縮ログ情報ファイル204a〜204dの容量は、圧縮したログ情報(非圧縮データ)の内容によって異なる。このため、図2に示すように、圧縮ログ情報ファイル204a,204b,204dの容量は、それぞれ相違している。
管理情報記憶領域206は、データ領域202の現在のデータ書き込み先(ログ情報の書き込み先)と、圧縮データ領域204に格納される圧縮ログ情報ファイル204a〜204dのそれぞれの書き込み先と容量が格納される。すなわち、CPU14が処理を行うことでログ情報は順次生成され、そのログ情報はデータ領域202に順次格納される。このため、生成されるログ情報の書き込み先を管理情報記憶領域206に記憶・更新することで、生成されるログ情報がデータ領域202の正しいアドレスに格納される。また、上述したように、圧縮データ領域204に格納される圧縮ログ情報ファイル204a〜204dの容量は、圧縮したログ情報の内容によって相違する。このため、複数の圧縮ログ情報ファイル204a〜204dを圧縮データ領域204に連続データとして区別することなく格納すると、圧縮ログ情報ファイル204a〜204d毎の境界が分からなくなってしまう。圧縮ログ情報ファイル204a〜204d毎の境界が分からないと、圧縮ログ情報ファイル204a〜204dを解凍することができず、ログ情報の復元ができない。そのため、管理情報記憶領域206に各圧縮ログ情報ファイル204a〜204dの書き込み先と容量を記憶することで、各圧縮ログ情報ファイル204a〜204dの境界を特定可能としている。
CF18は、不揮発性メモリであり、ICH20を介してCPU14に接続されている。後述するように、CF18には、電源遮断時に、RAM16のデータ領域202に格納されているログ情報(非圧縮データ)と、圧縮データ領域204に格納されている圧縮ログ情報(圧縮データ)と、管理情報記憶領域206に格納されている管理情報が格納される。CF18は不揮発性メモリであるため、外部からの電源が遮断された後も、格納されているデータを保持することができる。このため、電源遮断時にCF18に退避したログ情報を用いて、電源回復後に異常解析等が可能となる。
次に、図3,4を参照して、CPU14が行う処理について説明する。CPU14は、サーボコントローラ10への電源供給が正常に行われている間は、予め定められた処理周期(例えば、250μs)で、図3に示す通常時処理を実行する。一方、電源監視回路12から電源OFF予告信号が入力されると、CPU14は、図4に示す電源OFF予告時処理(電源OFF予告信号をトリガーとする割り込み処理)を実行する。以下、図3に示す通常時処理より説明する。
図3に示すように、CPU14は、まず、定期処理を行う(S10)。定期処理は、サーボモータを駆動するための処理(サーボ制御のための処理)であり、各処理周期において必ず実行される。定期処理においてCPU14は、サーボモータの現在値と目標値との偏差からサーボモータのトルク指令値を算出し、そのトルク指令値をサーボモータに出力する処理を行う。なお、サーボモータの目標値(例えば、目標位置)は、上位制御装置2よりサーボコントローラ10に入力される。また、CPU14は、定期処理を行うことで生成されるログ情報(非圧縮データ)を、RAM14のデータ領域202に格納する。具体的には、管理情報記憶領域206に記憶されている現在の書き込み先に、生成したログ情報(非圧縮データ)を格納する。また、ログ情報を格納すると、管理情報記憶領域206に記憶されている現在の書き込み先を更新する。
次に、CPU14は、不定期処理を行う必要があるか否かを判断する(S12)。具体的には、CPU14は上位制御装置2と通信を行う必要があるか否かにより、不定期処理の要否を判断する。例えば、上位制御装置2より指示(目標値等)が入力される場合や、上位制御装置2にサーボコントローラ10の状態(事象)を通知する場合には、不定期処理を行う必要があると判断する。不定期処理を行う必要がない場合(S12でNO)は、S16に進む。一方、不定期処理を行う必要がある場合(S12でYES)は、CPU14は、S14に進んで不定期処理を行う。したがって、S14の不定期処理は、S12の特定の条件が成立した時にのみ行われ、常時実行される処理ではない。不定期処理においてCPU14は、上位制御装置2からの指示(目標値等)を受信し、あるいは、サーボコントローラ10で生じた事象を上位制御装置2に送信する。なお、不定期処理を行うことで生じるログ情報もRAM14のデータ領域202に格納される。また、ログ情報がデータ領域202に格納されると、それに応じて管理情報記憶領域206に記憶されている情報(現在の書き込み先)も更新される。
次に、CPU14は、当該処理周期において、データ領域202に格納されているログ情報を圧縮するための処理(後述するS20〜S24の処理)を行う時間があるか否かを判断する(S16)。すなわち、本実施例のサーボコントローラ10では、サーボ制御の精度を高めるために処理周期が短く設定され、CPU14が定期処理(S10)と不定期処理(S14)のみを実施できる程度の時間を処理周期としている。一方、上述したように不定期処理は特定条件下でのみ行われる処理であり、処理周期毎に常に行われる処理ではない。そこで、本実施例では、不定期処理が行われない処理周期において、データ領域202に格納されているログ情報を圧縮するための処理(後述するS20〜S24の処理)を行うこととしている。このため、S16でCPU14は、ログ情報を圧縮するための処理を行う時間があるか否か(すなわち、不定期処理を実行しているか否か)を判断する。ログ情報を圧縮するための処理を行う時間がない場合(S16でNO)は、S18〜24をスキップして、当該処理周期における処理を終了する。
一方、ログ情報を圧縮するための処理を行う時間がある場合(S16でYES)は、CPU14は、データ領域202に記憶されているログ情報が指定容量に達しているか否かを判断する(S18)。上述したように、本実施例では、データ領域202に格納されるログ情報は、データ記憶領域202a〜202d毎に圧縮され、圧縮ログ情報ファイル204a〜204dとして圧縮データ領域204に格納される。すなわち、データ記憶領域202a〜202dのいずれかの領域の全体にログ情報が格納されると、その領域のログ情報が圧縮される。したがって、CPU14は、現在書き込み中のデータ記憶領域(202a〜202dのいずれかの領域)の全体にログ情報が格納されているか否かを判断する。具体的には、管理情報記憶領域206に記憶されている「現在のデータ書き込み先」の情報から、CPU14はログ情報が指定容量に達したか否かを判断する。例えば、図2に示す状態では、CPU14はデータ記憶領域202cにログ情報を書き込んでおり、現在の書き込み先の情報よりデータ記憶領域202cの全体にログ情報が格納されていないと判断することができる。このため、CPU14は、ログ情報が指定容量に達していないと判断する。圧縮処理の対象となるログ情報が指定容量に達していない場合(S18でNO)は、S20〜24をスキップして、当該処理周期における処理を終了する。
一方、圧縮処理の対象となるログ情報が指定容量に達している場合(S18でYES)は、CPU14は、圧縮対象となるログ情報(非圧縮データ)を圧縮する(S20)。ログ情報を圧縮する方法としては、公知のデータ圧縮方法を用いることができる。これによって、データ記憶領域202a〜202dのいずれかに格納されているログ情報(非圧縮データ)が圧縮されて、圧縮ログ情報ファイルとなる。
次に、CPU14は、S20の圧縮処理によって得られた圧縮ログ情報ファイル(204a〜204dのいずれか)を、RAM16の圧縮データ領域204に格納する(S22)。次いで、CPU14は、S22で格納した圧縮ログ情報ファイルの書き込み先と容量を管理情報記憶領域206に格納する(S24)。S24が終了すると、当該処理周期における処理を終了する。
次に、図4を参照して電源OFF予告時処理を説明する。上述したように、電源OFF予告時処理は、電源監視回路12からの電源OFF予告信号をトリガーとして開始される。具体的には、電源監視回路12から出力される電源OFF予告信号がCPU14に入力されると、CPU14は、まず、図3に示す通常時処理を停止し、その後に、図4に示す電源OFF予告時処理を実行する。
図4に示す電源OFF予告時処理では、まず、CPU14は、電源がOFFするまでの電源OFF時間を算出する(S30)。電源OFF時間は、例えば、電源監視回路12で検出される外部電源の電圧値の変化から算出することができる。なお、本実施例では、CPU14が電源OFF時間を算出したが、上位制御装置2が電源OFF時間を算出し、その算出した電源OFF時間をサーボコントローラ10に入力するようにしてもよい。
次に、CPU14は、S30で算出された電源OFF時間とCF18への書き込み速度を用いて、電源がOFFするまでにCF18への書き込みが完了するデータ容量を算出する(S32)。そして、CPU14は、算出したデータ容量となるように、RAM16からCF18へ退避するデータを選定する。具体的には、データ領域202のデータ記憶領域202a〜202dのうち、電源OFF予告時処理を開始したときにログ情報を書き込んでいたデータ記憶領域のログ情報(非圧縮データ)と、圧縮データ領域204に格納されている圧縮ログ情報ファイル204a〜204d(圧縮データ)と、管理情報記憶領域206に格納されているデータ(圧縮ログ情報ファイルの書き込み先と容量に関する情報)を選択する。ここで、データ領域202のログ情報と管理情報記憶領域206のデータは必ず選択されるため、CPU14は、電源OFF時間とCF18への書き込み速度から、CF18に退避する圧縮ログ情報ファイルを直近のものより順に選択する。なお、電源OFF時間とCF18への書き込み速度から十分な時間があると判断される場合は、CPU14は、圧縮データ領域204に格納されている全ての圧縮ログ情報ファイル204a〜204dを選択する。例えば、図2に示す状態で電源OFF予告時処理が開始された場合、CPU14は、データ記憶領域202cに記憶されている非圧縮データ3(ハッチングされた部分)と、圧縮データ領域204の圧縮ログ情報ファイル204a,204b,204d(ハッチングされた部分)と、管理情報記憶領域206のデータを選択する。これによって、CF18へのデータ退避中に電源OFF予告時処理が中断して、CF18に不正ファイルが残存してしまうことが抑制される。
次に、CPU14は、RAM16に格納されているデータのうち、S32で選択したデータ(すなわち、CF18へ退避するデータ)を読み込む(S34)。そして、CPU14は、S34で読み込んだデータを、ICH20を介してCF18に退避する(S36)。RAM16からのデータの読み込みと、CF18へのデータの書き込みと、を一度にできるデータ量には制限がある。このため、CPU14は、S32で選択したデータ(CF18に退避するデータ)の全てを、CF18へ退避したか否かを判断する(S38)。S32で選択したデータの全てをCF18へ退避していない場合(S38でNO)は、CPU14は、S34に戻って、S34からの処理を実行する。一方、S32で選択したデータの全てがCF18へ退避している場合(S38でYES)は、CPU14は、電源OFF予告時処理を終了する。これによって、S32で選択したデータの全てがCF18へ退避される。CF18は不揮発性メモリであるため、CF18へ退避されたデータは、サーボコントローラ10への電源供給が遮断されている間も保持される。このため、CF18へ退避したログ情報を解析することで、電源遮断時の状況等を解析することができる。
上述の説明から明らかなように、本実施例のサーボコントローラ10では、通常時処理(図3)において、RAM16に格納されたログ情報を圧縮する処理を行って、圧縮ログ情報ファイル204a〜204dを作成している。このため、電源OFF予告時処理では、データ記憶領域に格納されている直近のログ情報(非圧縮データ)と、圧縮データ領域204に格納されている圧縮ログ情報ファイルと、管理情報記憶領域206のデータを退避するだけでよい。退避するデータの容量が少なくされているため、電源OFF予告時処理を短時間で行うことができる。また、CF18に退避されたデータの一部は圧縮により暗号化されているため、セキュリティ性を向上することができる。
また、電源OFF予告時処理を短時間で行うことができるため、データの退避を行う不揮発性メモリに、低速なアクセス速度であるCF18を用いることができる。CF18を用いることで、サーボコントローラ10の製造コストを低減することができる。また、不揮発性メモリのCF18でデータ退避を行うことから、バックアップ電源が不要となり、サーボコントローラ10の基板サイズを小さくすることができる。
また、本実施例のサーボコントローラ10では、予測される電源OFFまでの時間に応じて、CF18へ退避するデータ量が調整される。仮に、電源OFF予告時処理の実行中にサーボコントローラ10への電源が遮断されると、CF18に不正ファイルが作成され、その不正ファイルが残存するという問題が生じる。一方、本実施例では、予測される電源OFFまでの時間に応じて退避するデータ量が調整されるため、不正ファイルが発生することを未然に防止することができる。
さらに、本実施例のサーボコントローラ10では、不定期処理(図3のS14)を行わないことによる空き時間を利用して、RAM16のデータ領域202に格納されているログ情報を圧縮する処理を行う。このため、ログ情報を圧縮する処理を定常の処理周期に実行する構成としても、圧縮処理を行うことがサーボモータの制御へ影響することはない。
以上、本明細書に開示の技術に係る実施例について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
(1)例えば、上記の実施例では、データ領域と、そのデータ領域に対応する圧縮データ領域の組み合わせが1組であったが、データ領域と、そのデータ領域に対応する圧縮データ領域との組合せを複数組としてもよい。すなわち、RAMに複数のデータ領域(各データ領域が複数のデータ記憶領域を有するリングバッファとして構成される)と、それら複数のデータ領域に対応する複数の圧縮データ領域とを設けてもよい。圧縮処理においては、通常、非圧縮データ(ログ情報)の内容によって適切な圧縮率は異なる。データ領域とそれに対応する圧縮データ領域の組合せが1つの場合は、一番圧縮率の低い非圧縮データ(ログ情報)に合わせて、全データを圧縮しなければならない。一方、データ領域と圧縮データ領域の組合せを複数組とすると、複数の圧縮率を設定し、圧縮縮率毎に非圧縮データ(ログ情報)を分類し、分類した非圧縮データ毎にデータ領域と圧縮データ領域の組合せを割り当てることができる。これにより、非圧縮データ(ログ情報)の圧縮率を高くすることができ、データ退避時間をさらに低減することができる。
(2)上記の実施例では、ログ情報を退避する不揮発性メモリにCF18を用いたが、CF18の代わりに、HDDを用いてログ情報を退避してもよい。このような構成を採用する場合、HDDはデータ退避専用領域を有していてもよい。なお、HDDを用いてデータ退避を行う場合、HDDへのデータ退避処理中に電源がOFFすると、不正ファイルが生成されることがある。その結果、HDDに不正ファイルが残存し、HDDの容量を圧迫してしまう可能性がある。したがって、HDDを用いてデータ退避を行う場合は、HDDに不正ファイルが存在するか否かを判断し、HDDから不正ファイルを削除するように構成しておくことが好ましい。例えば、次に説明する方法で不正ファイルの存在を判定し、不正ファイルが存在する場合はその不正ファイルを削除することができる。すなわち、サーボコントローラ10の立ち上げ時などに、データ退避前後のHDDの使用容量を比較する。HDDの使用容量の差分が、圧縮前のデータの容量を超えている場合は、不正なファイルがデータ退避専用領域に保存されていると判断する。不正なファイルがデータ退避専用領域に保存されていると判断する場合、HDDのデータ退避専用領域をフォーマットして、HDDより不正ファイルを削除する。
(3)さらに、上記の実施例では、通常時処理においてはログ情報の圧縮のみを行っていたが、処理時間に余裕がある場合には、通常処理において圧縮したログ情報を不揮発性メモリに格納する処理を行ってもよい。
(4)上記の実施例では、定期処理、不定期処理、圧縮処理を単一のプログラムで実施していたが、それぞれ異なるプログラムで独立して実施してもよい。その場合、CPUは、定期処理を実行する定期処理プログラム、不定期処理を実行する不定期処理プログラムと、圧縮処理を実行する圧縮処理プログラムと、それぞれの処理プログラムに処理時間を割り当てるプログラムマネージャと、を備える。プログラムマネージャの割り当てる処理時間の優先度を、定期処理プログラム、不定期処理プログラム、圧縮処理プログラムの順に設定する。このような構成にすることで、プログラムマネージャは、定期処理プログラムに最優先に処理時間を割り当てる。そのため、定期処理プログラムは、必ず処理周期毎に処理が完了することが保証される。不定期処理プログラムは、特定条件が成立しているとき(不定期)に実行される。特定条件が成立しているとき、プログラムマネージャは、不定期処理プログラムへの処理時間の割り当てを優先するため、圧縮処理プログラムに処理時間は割り当てない。一方、特定条件が成立していないとき、プログラムマネージャは、不定期処理プログラムに処理時間は割り当てない。そのため、CPUの処理時間に空きが発生する。そこで、プログラムマネージャは、圧縮処理プログラムに処理時間を割り当て、圧縮処理プログラムは実施される。このような構成であっても、上記実施例と同等の処理が実現できる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2・・上位制御装置
10・・サーボコントローラ
12・・電源監視回路
14・・CPU
16・・RAM
18・・CF
20・・ICH
202・・データ領域
202a−d・・データ記憶領域
204・・圧縮データ領域
204a−d・・圧縮データ記憶領域
206・・管理情報記憶領域

Claims (5)

  1. 制御装置と、
    不揮発性メモリと、
    揮発性メモリと、を備えており、
    前記制御装置は、
    処理周期毎に、予め設定された処理を実行する処理実行手段と、
    前記処理周期において、前記処理実行手段が処理を実行することで前記揮発性メモリに格納されている非圧縮データを圧縮するデータ圧縮手段と、
    外部から入力される電源OFF予告信号を検出すると、前記揮発性メモリに格納され、かつ、前記データ圧縮手段により圧縮されていない非圧縮データと、前記データ圧縮手段により圧縮された圧縮データとを前記不揮発性メモリに格納するデータ退避手段と、を有している、コントローラ。
  2. 前記データ圧縮手段は、前記処理周期のうち前記処理実行手段が処理を実行していない空き時間において、前記揮発性メモリに格納されている非圧縮データを圧縮する、請求項1に記載のコントローラ。
  3. 前記処理実行手段は、前記処理周期において、定期的に行われる定期処理と、特定条件が成立したときに行われる不定期処理と、を実行し、
    前記データ圧縮手段は、前記不定期処理が実行されないことによる空き時間を利用して非圧縮データを圧縮する、請求項2に記載のコントローラ。
  4. 前記制御装置は、
    前記電源OFF予告信号を検出したときに、電源がOFFするまでの電源OFF時間を算出する算出手段と、
    前記算出手段により算出された電源OFF時間に応じて、前記データ退避手段により前記不揮発性メモリに退避される前記圧縮データのデータ量を調整する調整手段を有している、請求項1〜3のいずれか一項に記載のコントローラ。
  5. 前記揮発性メモリは、前記データ圧縮手段により圧縮された圧縮データを記憶する複数の圧縮データ記憶領域と、前記圧縮データが前記複数の圧縮データ記憶領域のどこに記憶されたかを特定する管理情報を記憶する管理情報記憶領域を有しており、
    前記データ圧縮手段は、前記揮発性メモリに格納されている非圧縮データを圧縮すると、その圧縮データを前記複数の圧縮データ記憶領域のいずれかに記憶すると共に、その圧縮データの管理情報を前記管理情報記憶領域に記憶する、請求項1〜4のいずれかに記載したコントローラ。
JP2016551426A 2014-10-01 2014-10-01 コントローラ Active JP6386575B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/076277 WO2016051557A1 (ja) 2014-10-01 2014-10-01 コントローラ

Publications (2)

Publication Number Publication Date
JPWO2016051557A1 true JPWO2016051557A1 (ja) 2017-07-20
JP6386575B2 JP6386575B2 (ja) 2018-09-05

Family

ID=55629647

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016551426A Active JP6386575B2 (ja) 2014-10-01 2014-10-01 コントローラ

Country Status (2)

Country Link
JP (1) JP6386575B2 (ja)
WO (1) WO2016051557A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6746788B2 (ja) * 2017-06-28 2020-08-26 株式会社Fuji 部品装着機用ヘッド
JP2020154741A (ja) * 2019-03-20 2020-09-24 株式会社リコー 電子機器、データ退避制御方法、およびデータ退避制御プログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000194607A (ja) * 1998-12-24 2000-07-14 Yamatake Corp メモリ・バックアップ方法
JP2001092627A (ja) * 1999-09-20 2001-04-06 Toshiba Tec Corp データ圧縮方法
JP2004199339A (ja) * 2002-12-18 2004-07-15 Sony Corp 携帯デバイス,制御部の電源制御方法
JP2005102027A (ja) * 2003-09-26 2005-04-14 Kyocera Corp 無線通信装置
WO2010055937A1 (ja) * 2008-11-17 2010-05-20 日本電気株式会社 計算機システム、データ保存方法およびプログラム
JP2011175379A (ja) * 2010-02-23 2011-09-08 Toshiba Corp マイクロコンピュータ及び車両

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000194607A (ja) * 1998-12-24 2000-07-14 Yamatake Corp メモリ・バックアップ方法
JP2001092627A (ja) * 1999-09-20 2001-04-06 Toshiba Tec Corp データ圧縮方法
JP2004199339A (ja) * 2002-12-18 2004-07-15 Sony Corp 携帯デバイス,制御部の電源制御方法
JP2005102027A (ja) * 2003-09-26 2005-04-14 Kyocera Corp 無線通信装置
WO2010055937A1 (ja) * 2008-11-17 2010-05-20 日本電気株式会社 計算機システム、データ保存方法およびプログラム
US20110225343A1 (en) * 2008-11-17 2011-09-15 Takashi Takeuchi Computer system, data storage method, and program
JP2011175379A (ja) * 2010-02-23 2011-09-08 Toshiba Corp マイクロコンピュータ及び車両

Also Published As

Publication number Publication date
WO2016051557A1 (ja) 2016-04-07
JP6386575B2 (ja) 2018-09-05

Similar Documents

Publication Publication Date Title
US20100138677A1 (en) Optimization of data distribution and power consumption in a data center
US9727246B2 (en) Memory device, computer system, and method of controlling memory device
WO2006050145A3 (en) Methods and apparatus for parallel execution of a process
JP6386575B2 (ja) コントローラ
US20120331235A1 (en) Memory management apparatus, memory management method, control program, and recording medium
KR20220134769A (ko) 온도 기반 데이터 저장 처리
US9948809B2 (en) Image forming apparatus, memory management method for image forming apparatus, and program, using discretely arranged blocks in prioritizing information
JP2016184402A (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法
US9442843B2 (en) Information processing apparatus, method of controlling the same, and storage medium
US8775768B2 (en) Information processing apparatus and method of controlling the same
US9841963B2 (en) Method and apparatus for managing application
JP2018022440A5 (ja)
KR101502725B1 (ko) 영상 사고 기록 장치의 저장 공간에 버퍼를 이용하여 파일을 관리하는 장치 및 방법
CN113468617A (zh) 一种设备掉电保护的方法、设备及存储介质
JP2012173814A5 (ja) 情報処理装置及び情報処理装置を制御する制御方法及びプログラム
JP2004338883A (ja) エレベーターの制御装置
KR102338028B1 (ko) 로봇 제어 장치, 백업 파일의 보존 방법 및 프로그램
JP6369338B2 (ja) 情報処理装置
JP2008003940A (ja) 保護制御装置、保護制御方法及び保護制御プログラム
JP6853044B2 (ja) 電力制御監視装置とこれを用いたコンピュータ及び電力制御監視方法とプログラム
JP6443583B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP2014186600A (ja) 記憶装置
TW201335754A (zh) 具有資料同步存儲功能的電子裝置及方法
JP2019007669A (ja) 制御装置、空調機及び運転データの更新周期の設定方法
JP2011159184A (ja) 情報処理システム及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180720

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180809

R150 Certificate of patent or registration of utility model

Ref document number: 6386575

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250