JP6874814B2 - 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム - Google Patents

産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム Download PDF

Info

Publication number
JP6874814B2
JP6874814B2 JP2019197400A JP2019197400A JP6874814B2 JP 6874814 B2 JP6874814 B2 JP 6874814B2 JP 2019197400 A JP2019197400 A JP 2019197400A JP 2019197400 A JP2019197400 A JP 2019197400A JP 6874814 B2 JP6874814 B2 JP 6874814B2
Authority
JP
Japan
Prior art keywords
address
data
memory
attribute
turned
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
JP2019197400A
Other languages
English (en)
Other versions
JP2021071861A (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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric 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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2019197400A priority Critical patent/JP6874814B2/ja
Priority to EP20203985.5A priority patent/EP3816744B1/en
Priority to US17/082,021 priority patent/US12019422B2/en
Priority to CN202011177635.0A priority patent/CN112748694B/zh
Publication of JP2021071861A publication Critical patent/JP2021071861A/ja
Application granted granted Critical
Publication of JP6874814B2 publication Critical patent/JP6874814B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/109Address translation for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • 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/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13158Non volatile memory, no battery
    • 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/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14053Power failure, loss, abnormal battery
    • 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/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24139Recovery from power loss, failure
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25004Power and data bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/657Virtual address space management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Programmable Controllers (AREA)

Description

本発明は、産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラムに関する。
特許文献1には、ラダーチャート等を利用して、PLC(Programmable Logic Controller)の制御プログラムを作成する技術が記載されている。このような技術では、電源オフ時に保持するデータと、電源オフ時に保持しないデータと、を使い分けてプログラミングが行われる。
特開2012−194678号公報
本発明が解決しようとする課題は、例えば、プログラムの修正の手間を省くことである。
本発明の一側面に係る産業機器の制御装置は、産業機器を制御する制御装置であって、電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリと、複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、を有する。
本発明の一側面に係る産業機器の制御装置の設定システムは、電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置の設定システムであって、複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、を有する。
本発明の一側面に係る産業機器の制御装置の設定方法は、電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置のアドレス設定方法であって、複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定し、各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定する。
本発明の一側面に係るプログラムは、電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置又は当該制御装置の設定端末を、複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部、各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部、として機能させる。
本発明の一側面に係る産業機器の制御装置は、前記アドレス設定部は、各データ単位に、仮想アドレスと、前記属性に応じたメモリの物理アドレスと、を設定し、前記アドレス設定部は、各データ単位の前記仮想アドレスと前記物理アドレスの変換データを記録し、前記変換データに基づいて、各メモリにアクセスする。
本発明の一側面に係る産業機器の制御装置は、前記アドレス設定部は、電源オフ時に保持することを示す属性が設定されたデータ単位と、電源オフ時に保持しないことを示す属性が設定されたデータ単位と、が連番になるように、各データ単位の前記仮想アドレスを設定する。
本発明の一側面に係る産業機器の制御装置は、各データ単位には、前記複数のメモリの何れかの物理アドレスが予め設定されており、前記アドレス設定部は、予め設定された前記物理アドレスの順序を維持するように、各データ単位の前記仮想アドレスを設定する。
本発明の一側面に係る産業機器の制御装置は、各データ単位には、前記複数のメモリの何れかの物理アドレスが予め設定されており、前記属性設定部は、前記第1メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持しないことを示す属性を設定する、又は、前記第2メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持することを示す属性を設定する。
本発明の一側面に係る産業機器の制御装置は、前記属性設定部は、各データ単位に設定する前記属性を指定するための属性指定画面において指定された前記属性を各データ単位に設定する。
本発明の一側面に係る産業機器の制御装置は、前記属性指定画面では、アドレス帯域ごとに、前記データ単位がグループ化されており、何れかのアドレス帯域が選択された場合に、当該アドレス帯域に属するデータ単位の前記属性が指定可能となる。
本発明の一側面に係る産業機器の制御装置は、電源オフ時に保持することを示す属性と、電源オフ時に保持しないことを示す属性と、の少なくとも一方を設定可能なデータ単位に上限を設定する上限設定部を更に有する。
本発明の一側面に係る産業機器の制御装置は、前記第1メモリは、不揮発性メモリ、又は、バッテリバックアップに対応したメモリであり、前記第2メモリは、揮発性メモリ、又は、バッテリバックアップに対応していないメモリである。
上記発明によれば、例えば、プログラムの修正の手間を省くことができる。
産業機器の制御装置及びその設定システムの全体構成の一例を示す図である。 属性指定画面の一例を示す図である。 仮想アドレスが物理アドレスに変換される様子を示す図である。 設定システムで実現される機能を示す機能ブロック図である。 属性設定データのデータ格納例を示す図である。 設定システムで実行される処理の一例を示すフロー図である。 変形例の機能ブロック図である。 Gレジスタのデータ単位の属性が変更される様子を示す図である。
[1.実施形態の全体構成]
本発明の発明者の見地によれば、産業機器を制御するPLC等の制御装置では、電源オフ時に保持するデータと、電源オフ時に保持しないデータと、を使い分けてプログラミングが行われており、これらのデータの属性が変更されるとプログラムの修正が必要になっていた。そこで本発明の発明者は、プログラムの修正の手間を省くために鋭意研究開発を行った結果、新規かつ独創的な産業機器の制御装置等に想到した。以降、本実施形態に係る産業機器の制御装置等を詳細に説明する。
図1は、産業機器の制御装置及びその設定システムの全体構成の一例を示す図である。図1に示すように、設定システム1は、設定端末10、コントローラ20、及び被制御装置30を含む。本実施形態では、設定端末10、コントローラ20、及び被制御装置30の各々は、Ethernet(登録商標)又は専用の通信規格等の任意のネットワークに接続可能である。設定システム1は、産業機器の制御装置の設定システムの一例であり、本実施形態では、単に設定システム1と記載する。
設定端末10は、ユーザが操作するコンピュータである。例えば、設定端末10は、パーソナルコンピュータ、携帯端末(タブレット型端末を含む)、又は携帯電話(スマートフォンを含む)である。設定端末10は、プロセッサ11、メモリ12、通信IF13、入力デバイス14、及びモニタ15を含む。
プロセッサ11は、汎用的なプロセッサであり、例えば、CPUである。設定端末10は、少なくとも1つのプロセッサ11を含む。プロセッサ11は、公知のメモリマネジメントユニットを含んでもよい。メモリ12は、RAMやハードディスクを含み、各種プログラムやデータを記憶する。プロセッサ11は、これらプログラムやデータに基づいて各種処理を実行する。通信IF(インタフェース)13は、有線又は無線通信用のインタフェースであり、例えば、ネットワークカードや各種通信コネクタ等を含む。入力デバイス14は、マウスやキーボード等の操作部材である。モニタ15は、液晶ディスプレイ又は有機ELディスプレイ等であり、プロセッサ11の指示により各種画面を表示する。
コントローラ20は、いわゆるPLCであり、少なくとも1つの被制御装置30を制御する。コントローラ20は、産業機器の制御装置の一例である。このため、本実施形態でコントローラ20と記載した箇所は、産業機器の制御装置と読み替えることができる。産業機器の制御装置は、コントローラ20に限られず、任意の種類の装置を適用可能である。例えば、産業機器の制御装置は、ロボットコントローラ、ロボットコントローラの下位装置、モータコントローラ、モータコントローラの下位装置、インバータ、又は工作機械等であってもよい。
コントローラ20は、プロセッサ21、SRAM(Static Random Access Memory)22、DDR(Double Data Rate)メモリ23、FPGA(Field-Programmable Gate Array)24、及び通信IF25を含む。プロセッサ21及び通信IF25の物理的構成は、それぞれプロセッサ11及び通信IF13と同様であってよい。なお、コントローラ20の電源や電池等の他の構成については、図示を省略する。
SRAM22は、第1メモリの一例である。このため、本実施形態でSRAM22と記載した箇所は、第1メモリと読み替えることができる。第1メモリは、コントローラ20の電源オフ時にデータを保持するメモリである。
電源オフとは、コントローラ20の電源が落とされた状態を意味する。例えば、コントローラ20の電源ボタンをオフにしたり、コントローラ20から所定のシャットダウン操作を行ったりすると、電源オフになる。電源オフは、コントローラ20内の全ての構成に完全に通電されない状態を意味してもよいが、本実施形態では、コントローラ20の主たる構成(プロセッサ21など)には通電されず、少なくともSRAM22については通電される状態を意味する。電源オフ時の通電は、外部からの電力又はコントローラ20内蔵の電池によって行われる。
データを保持するとは、データを消去しないことである。別の言い方をすれば、データを保持するとは、データを記録した状態を維持することである。第1メモリは、コントローラ20の電源オン時にデータを保持し、電源オフになったとしても、それまで保持していたデータ(電源オフ直前の値)を引き続き保持する。
例えば、第1メモリは、不揮発性メモリ、又は、バッテリバックアップに対応したメモリである。不揮発性メモリは、通電されなくでもデータを保持するメモリである。バッテリバックアップ可能なメモリは、コンピュータの電源オフ時に通電されることによって、データを保持するメモリである。バッテリバックアップは、メモリバックアップと呼ばれることもある。バッテリバックアップによって、本来は揮発性メモリに分類されるメモリが、電源オフ時にデータを保持できる。第1メモリは、SRAM22に限られず、任意の種類のメモリを適用可能である。例えば、第1メモリは、MRAM(Magnetoresistive Random Access Memory)、NVRAM(Non-Volatile RAM)、EEPROM、又はフラッシュメモリであってもよい。
DDRメモリ23は、第2メモリの一例である。このため、本実施形態でDDRメモリ23と記載した箇所は、第2メモリと読み替えることができる。第2メモリは、コントローラ20の電源オフ時にデータを保持しないメモリである。第2メモリは、コントローラ20の電源オン時にデータを保持し、電源オフになると、それまで保持していたデータ(電源オフ直前の値)を保持せずに消去する。
例えば、第2メモリは、揮発性メモリ、又は、バッテリバックアップに対応していないメモリである。揮発性メモリは、通電されないとデータが保持されないメモリである。バッテリバックアップに対応していないメモリは、バッテリバックアップの機能を有しないメモリである。第2メモリは、DDRメモリ23に限られず、任意の種類のメモリを適用可能である。例えば、第2メモリは、DRAM(Dynamic RAM)、FeRAM(Ferroelectric Random Access Memory)、又はバッテリバックアップを利用しないSRAMであってもよい。
本実施形態では、SRAM22は、DDRメモリ23よりも、速度が遅く、高価であり、物理的に大きく、容量が小さいものとする。ただし、SRAM22とDDRメモリ23の速度、価格、大きさ、及び容量は、任意の関係にあってよく、本実施形態の例に限られない。
なお、コントローラ20は、電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有すればよく、3つ以上のメモリを有してもよい。例えば、コントローラ20は、複数の第1メモリを有してもよいし、複数の第2メモリを有してもよい。また例えば、コントローラ20は、第1メモリ及び第2メモリ以外のメモリを有してもよい。また例えば、コントローラ20は、ファームウェアや制御プログラムを記憶するための専用のメモリを有してもよい。プロセッサ21内のメモリも、コントローラ20が有するメモリの一例である。
FPGA24は、ユーザが事後的に構成を設定可能な集積回路である。例えば、FPGA24には、コントローラ20又は被制御装置30に接続されたセンサの検出結果が格納される。センサは、任意のセンサを適用可能であり、例えば、加工対象のワークを認識するためのセンサ、ワークの把持を検出するためのセンサ、トルクセンサ、モータエンコーダ、加速度センサ、ジャイロセンサ、又は温度センサ等である。
被制御装置30は、コントローラ20により制御される産業機器である。このため、本実施形態で被制御装置30と記載した箇所は、産業機器と読み替えることができる。被制御装置30は、コントローラ20からの指示に基づいて、自身に記憶されたプログラムを実行し、所定の工程を実行する。被制御装置30は、任意の種類の装置を適用可能であり、例えば、産業用ロボット、ロボットコントローラ、モータコントローラ、工作機械、プレス加工機、又は搬送機器などである。被制御装置30も産業装置の一種である。コントローラ20により制御される被制御装置30の台数は、任意の台数であってよく、例えば、1台だけであってもよいし、3台以上であってもよい。
なお、設定端末10、コントローラ20、及び被制御装置30の各々に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されるようにしてもよい。また、設定端末10、コントローラ20、及び被制御装置30の各々のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)が含まれていてもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが、読取部又は入出力部を介して供給されるようにしてもよい。また例えば、ASIC(Application Specific Integrated Circuit)等の他の構成が含まれていてもよい。
[2.設定システムの概要]
ユーザは、設定端末10を操作し、コントローラ20が実行する制御プログラムを作成する。制御プログラムは、被制御装置30を制御するためのプログラムであり、被制御装置30に対する命令が記述される。制御プログラムは、任意の言語で作成可能であり、例えば、ラダー言語又はロボット言語を利用可能である。例えば、ユーザは、ラダーチャート、ファンクションブロック、又はソースコードのエディタを利用して、制御プログラムのプログラミングを行う。例えば、コントローラ20は、所定の制御周期(スキャン)ごとに、ユーザが作成した制御プログラム(例えば、ラダープログラム)で規定されたように被制御装置30等に対する制御演算を実行する。本実施形態では、制御プログラムの作成前又は作成後において、データ単位に属性が設定される。
データ単位は、SRAM22又はDDRメモリ23の何れかに記憶される個々のデータである。別の言い方をすれば、データ単位は、制御プログラム等のプログラムによって参照又は変更される個々のデータである。データ単位は、変数データと呼ばれることもある。例えば、データ単位は、制御プログラムの作成前にユーザによって指定される。また例えば、データ単位には、何れかのメモリのアドレスが設定される。ユーザは、任意のデータ単位を指定可能であり、例えば、制御プログラムによる途中計算の値若しくは計算結果の値を示すデータ単位、被制御装置30のティーチングデータ等の設定を示すデータ単位、又はセンサの検出結果を示すデータ単位を設定可能である。データ単位は、制御プログラムの開始や終了の条件になってもよい。
属性は、コントローラ20の電源オフ時に保持するか否かを識別する情報である。属性は、データ単位の分類ということもできる。本実施形態では、コントローラ20の電源オフ時に保持することを示す保持属性と、コントローラ20の電源オフ時に保持しないことを示す非保持属性と、の2つの属性がある。データ単位には、保持属性又は非保持属性の何れかが設定される。必ずしも全てのデータ単位に属性が設定されなくてもよく、ユーザが属性を設定しないデータ単位が存在してもよい。
本実施形態では、ユーザは、制御プログラムの作成時に、データ単位の属性の初期設定を行う。ユーザは、初期設定の属性を事後的に変更できる。以降、初期設定として保持属性が設定されたデータ単位の集合をMレジスタと記載し、初期設定として非保持属性が設定されたデータ単位の集合をGレジスタと記載する。初期設定時には、Mレジスタのデータ単位はSRAM22に格納され、Gレジスタのデータ単位はDDRメモリ23に格納される。
各データ単位には、SRAM22又はDDRメモリ23の何れかの物理アドレスが割り当てられる。物理アドレスの割り当ては、ユーザによって指定されてもよいし、所定のアドレス割り当てルールに基づいて自動的に行われてもよい。例えば、Mレジスタのデータ単位には、SDRAM22の物理アドレスが連番となるように割り当てられる。また例えば、Gレジスタのデータ単位には、DDRメモリ23の物理アドレスが連番となるように割り当てられる。なお、MレジスタとGレジスタの各々のインデックスレジスタは、コントローラ20内の任意のメモリに格納されるものとする。インデックスレジスタには、基準となるアドレスからの相対値が格納される。
例えば、ユーザは、設定端末10にインストールされた設定ツールを利用して、初期設定の属性を変更する。本実施形態では、Mレジスタのデータ単位の属性が変更される場合を例に挙げるが、後述する変形例のように、Gレジスタのデータ単位の属性が変更されてもよい。例えば、設定ツールが起動すると、データ単位の属性を指定するための属性指定画面が設定端末10のモニタ15に表示される。
図2は、属性指定画面の一例を示す図である。図2に示すように、属性指定画面UIは、Mレジスタのアドレス帯域のリストLが表示される。アドレス帯域は、一定の幅を有するアドレスの範囲である。リストLには、アドレス帯域の名称として数値範囲が表示される。本実施形態では、データ単位をグループ化するためにアドレス帯域が用意されており、図2の例では、0番から9999番まで、10000番から19999番まで、といったように、1万番ごとにグループ化されている。各アドレス帯域には、少なくとも1つのデータ単位が属する。
例えば、属性指定画面UIは、階層構造の情報を表示するためのユーザインタフェース(いわゆるTreeViewコントロール)を有する。各アドレス帯域の横には、当該アドレス帯域に属するデータ単位のツリーを開閉するためのチェックボックスが表示される。各アドレス帯域のチェックボックスに対する操作によって、当該アドレス帯域に属するデータ単位の表示/非表示を切り替えることができる。
図2に示すように、ユーザが0番から9999番までのアドレス帯域のチェックボックスを選択すると、ツリーが開き、このアドレス帯域のデータ単位が表示される。図2の例では、0番から1999番を使用するデータ単位、2000番から3999番を使用するデータ単位、4000番から5999番を使用するデータ単位、6000番から7999番を使用するデータ単位、及び8000番から9999番を使用するデータ単位が表示される。これらのアドレスの値は、初期設定時の物理アドレスとするが、後述する仮想アドレスの値であってもよい。
リストLに表示されたデータ単位の横には、チェックボックスが表示される。例えば、データ単位のチェックボックスに対する操作によって、属性を変更できる。本実施形態では、保持属性を設定する場合にはチェックを入れ、非保持属性を設定する場合にはチェックを外すものとする。ユーザは、一度チェックを外して非保持属性にしたデータ単位に対し、再びチェックを入れて保持属性に戻すこともできる。同様に、ユーザは、一度チェックを入れて保持属性にしたデータ単位に対し、再びチェックを外して非保持属性に戻すこともできる。
Mレジスタのデータ単位は、初期設定時には、全てチェックが入る。ユーザは、電源オフ時に保持する必要がないと事後的に判断したデータ単位のチェックを外す。図2の例では、0番から1999番を使用するデータ単位と、4000番から5999番を使用するデータ単位と、については保持する必要がないと判断され、これらのチェックが外されている。
ユーザは、他のアドレス帯域についても同様にして、ツリーを開いてチェックボックスを操作することによって、データ単位の属性を設定できる。ユーザは、ツリーを開かずに、アドレス帯域のチェックボックスに対して操作することによって、当該アドレス帯域の全てのデータ単位に、まとめて保持属性又は非保持属性を設定してもよい。ユーザがOKボタンB1を選択すると、データ単位の属性が確定し、データ単位のアドレスが自動的に設定される。なお、ユーザがキャンセルボタンB2を選択すると、属性は変更されない。
例えば、保持属性から非保持属性に変更されたデータ単位は、SRAM22からDDRメモリ23に移す必要があるので、SRAM22の物理アドレスからDDRメモリ23の物理アドレスに変更される。また例えば、非保持属性から保持属性に変更されたデータ単位は、DDRメモリ23からSRAM22に移す必要があるので、DDRメモリ23の物理アドレスからSRAM22の物理アドレスに変更される。
例えば、図2の場合、0番から1999番を使用するデータ単位と、4000番から5999番を使用するデータ単位と、の各々が保持属性から非保持属性に変更されるので、Mレジスタの一部を、SRAM22からDDRメモリ23に移す必要がある。この場合、Mレジスタのデータ単位が、物理的に異なる2つのメモリに分散されるので、Mレジスタの物理アドレスが連番にならなくなる。これにより、インデックスレジスタを変更しても、Mレジスタのデータ単位にアクセスできなくなり、制御プログラムを修正する必要がある。
そこで、本実施形態では、Mレジスタのデータ単位に、互いに連番となるように仮想アドレスが設定され、インデックスレジスタに仮想アドレスが格納される。更に、仮想アドレスと物理アドレスの変換テーブルがコントローラ20に記録される。コントローラ20は、変換テーブルを参照し、仮想アドレスを物理アドレスに変換して、Mレジスタのデータ単位が分散されたSRAM22とDDRメモリ23の各々にアクセスする。
図3は、仮想アドレスが物理アドレスに変換される様子を示す図である。図3に示すように、Mレジスタの中に、保持属性のデータ単位と、非保持属性のデータ単位と、が混在していたとしても、仮想アドレスが互いに連番となるように設定される。実際の物理的アドレスが連番になっていなくても、仮想アドレスによって、見た目上(インデックスレジスタ上)は連番となる。このため、制御プログラムを修正しなくても、インデックスレジスタを変更することによって、SRAM22とDDRメモリ23に分散されたMレジスタのデータ単位にアクセスすることができる。以降、設定システム1の詳細を説明する。
[3.設定システムで実現される機能]
図4は、設定システム1で実現される機能を示す機能ブロック図である。図4に示すように、設定システム1では、設定端末10において、データ記憶部100と表示制御部101が実現され、コントローラ20において、データ記憶部200、属性設定部201、及びアドレス設定部202が実現される。なお、後述する変形例のように、属性設定部201とアドレス設定部202は、設定端末10によって実現されてもよい。
[3−1.設定端末において実現される機能]
データ記憶部100は、メモリ12を主として実現される。データ記憶部100は、本実施形態で説明する処理を実行するためのデータを記憶する。例えば、データ記憶部100は、設定ツールを記憶する。また例えば、データ記憶部100は、コントローラ20から取得した後述する属性設定データを記憶してもよい。また例えば、データ記憶部100は、属性指定画面UIの画像データ、ユーザが作成した制御プログラム、ラダーチャートのファイル、ファンクションブロックのファイル、又はソースコードが記述されたファイルを記憶してもよい。
表示制御部101は、プロセッサ11を主として実現される。表示制御部101は、各データ単位に設定する属性を指定するための属性指定画面UIを表示させる。ユーザは、入力デバイス14を操作して属性を指定する。属性の指定は、チェックボックスに対する操作に限られず、任意の操作を適用可能である。例えば、ラジオボタン等の他の入力フォームに対する操作によって属性が指定されてもよいし、属性を示す文字列や数値の入力によって属性が指定されてもよい。
属性指定画面UIは、図2のようなレイアウトに限られず、属性の指定を受け付ける任意のレイアウトであってよい。例えば、属性指定画面UIは、表形式のレイアウトであってもよい。また例えば、属性指定画面UIは、チェックボックスではなく、ラジオボタン等の他の入力フォームによって指定を受け付けるレイアウトであってもよい。また例えば、属性指定画面UIは、アドレス帯域ごとにグループ化されていなくてもよい。
例えば、属性指定画面UIでは、アドレス帯域ごとに、データ単位がグループ化されている。アドレス帯域の幅は、固定値であってもよいし、可変値であってもよい。図2の例では、アドレス帯域の幅を1万番としたが、他の任意の幅を適用可能である。また、MレジスタとGレジスタとで属性指定画面UIに表示されるアドレス帯域の幅が異なってもよい。
グループ化とは、複数のデータ単位が同じアドレス帯域に属することである。属性指定画面UIでは、同じアドレス帯域に属するデータ単位が互いに関連付けられて表示されることによって、これらがグループ化される。グループ化の表示態様としては、図2のようなツリーに限られず、同じグループであることを識別可能な任意の態様を適用可能である。例えば、アドレス帯域ごとに区切られたスペースの中に、データ単位の名称が表示されるようにしてもよいし、同じアドレス帯域のデータ単位の名称が同じ色で表示されるようにしてもよい。
例えば、表示制御部101は、何れかのアドレス帯域が選択された場合に、当該アドレス帯域に属するデータ単位の属性を指定可能に表示させる。属性指定画面UIには、複数のアドレス帯域が表示され、ユーザは、任意のアドレス帯域を個別に選択可能である。図2の例では、チェックボックスを利用してアドレス帯域が選択される場合を説明したが、他の任意の操作によってアドレス帯域が選択されてよい。例えば、ラジオボタン等の他の入力フォームを利用してアドレス帯域が選択されてもよい。
例えば、表示制御部101は、アドレス帯域が選択されない場合、当該アドレス帯域の個々のデータ単位の属性の指定を許可しない。表示制御部101は、アドレス帯域が選択された場合に、当該アドレス帯域の個々のデータ単位の属性の指定を許可する。なお、図2を参照して説明したように、アドレス帯域が選択されない場合には、アドレス帯域全体の属性の指定が受け付けられるようにしてもよい。
[3−2.コントローラにおいて実現される機能]
データ記憶部200は、プロセッサ21内のメモリ及び他のメモリの少なくとも一方を主として実現される。データ記憶部200は、本実施形態で説明する処理を実行するためのデータを記憶する。例えば、データ記憶部200は、制御プログラムを記憶する。また例えば、データ記憶部200は、データ単位に設定された属性を示す属性設定データを記憶する。
図5は、属性設定データのデータ格納例を示す図である。図5に示すように、属性設定データは、データ単位の名称、データ単位に設定された属性、及び変換テーブルが格納される。なお、属性設定データには、他の情報が格納されてもよく、例えば、データ単位がMレジスタとGレジスタの何れに属するかを示す情報が格納されてもよい。
データ単位の名称は、データ単位を一意に識別する情報である。例えば、データ単位の名称は、ユーザが指定した文字列であってもよいし、初期設定時の物理アドレスであってもよい。本実施形態では、データ単位の名称は、初期設定時の物理アドレスを含み、互いに連番となる数値を含む文字列となっている。仮想アドレスや物理アドレスが変更されても、データ単位の名称は変更されないものとする。
変換テーブルは、変換データの一例である。このため、本実施形態で変換テーブルと記載した箇所は、変換データと読み替えることができる。変換データは、各データ単位の仮想アドレスと物理アドレスとが関連付けられた情報である。変換データは、仮想アドレスから物理アドレスを検索可能であり、物理アドレスから仮想アドレスを検索可能である。変換データでは、仮想アドレスと物理アドレスが1対1で対応する。変換データは、テーブル形式に限られず、任意のデータ形式を適用可能である。例えば、変換データは、CSV形式やテキスト形式であってもよい。変換テーブルは、データ単位の属性の変更に応じて更新される。更新後の変換テーブルは、コントローラ20に記録される。なお、図5の例では、各データ単位の開始アドレスのみ示している。
また例えば、データ記憶部200は、インデックスレジスタの内容を記憶してもよい。初期設定時点では、Mレジスタのデータ単位は全て保持属性となり、互いに連番となるようにSRAM22の物理アドレスが設定されるので、インデックスレジスタには、Mレジスタのデータ単位のアドレスとして、SRAM22の物理アドレスの相対値が格納される。同様に、初期設定時点では、Gレジスタのデータ単位は全て非保持属性となり、互いに連番となるようにDDRメモリ23の物理アドレスが設定されるので、インデックスレジスタには、Gレジスタのデータ単位のアドレスとして、DDRメモリ23の物理アドレスの相対値が格納される。データ単位の属性が変更された場合、インデックスレジスタの内容は、後述するアドレス設定部202によって変更される。
属性設定部201は、プロセッサ21を主として実現される。属性設定部201は、複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する。属性の設定とは、属性の決定、更新、又は確定ということもできる。属性設定部201は、各データ単位に、ユーザが指定した属性を設定する。
本実施形態では、属性の初期設定が行われるので、属性設定部201は、ユーザにより属性の変更が指示されたデータ単位の属性を変更する。属性設定部201は、各データ単位に変更後の属性が関連付けられるように、属性設定データを更新する。また、本実施形態では、属性指定画面UIが用意されているので、属性設定部201は、属性指定画面UIにおいて指定された属性を各データ単位に設定する。
なお、属性設定部201は、SRAM22の物理アドレスが設定されたデータ単位に、電源オフ時に保持しないことを示す保持属性を設定してもよいし、DDRメモリ23の物理アドレスが設定されたデータ単位に、電源オフ時に保持することを示す非保持属性を設定してもよい。属性設定部201は、これらの両方を行ってもよいし、何れか一方のみを行ってもよい。
アドレス設定部202は、プロセッサ21を主として実現される。アドレス設定部202は、各データ単位が属性に応じたメモリに格納されるように、各データ単位のアドレスを設定する。属性に応じたメモリとは、保持属性であればSRAM22であり、非保持属性であればDDRメモリ23である。属性とメモリとの関係は、設定ツールのプログラムに定義されているものとする。アドレスを設定するとは、データ単位が格納されるアドレスを決定することである。ここでのアドレスは、仮想アドレスと物理アドレスの両方を意味する。
例えば、アドレス設定部202は、各データ単位に、属性に応じたメモリの物理アドレスを設定する。もし仮に、Mレジスタの全てのデータ単位が非保持属性に変更されたとすると、アドレス設定部202は、Mレジスタの全てのデータ単位の物理アドレスを、SRAM22からDDRメモリ23に変更する。この場合、アドレス設定部202は、DDRメモリ23の物理アドレスが連番になるように、Mレジスタの各データ単位の物理アドレスを設定する。アドレス設定部202は、それに応じてインデックスレジスタも変更する。
本実施形態では、仮想アドレスが用意されているので、アドレス設定部202は、各データ単位に、仮想アドレスと、属性に応じたメモリの物理アドレスと、を設定する。仮想アドレスは、物理アドレス空間とは異なる仮想アドレス空間におけるアドレスである。仮想アドレスは、予め定められた範囲内のアドレスとなる。仮想アドレスは、物理アドレスの代わりにインデックスレジスタに格納されるアドレスということもできる。
アドレス設定部202は、データ単位ごとに、他のデータ単位と重複しないように、仮想アドレスと物理アドレスのペアを設定する。アドレス設定部202は、これらのペアを格納した変換テーブルを生成し、データ記憶部100に記録する。アドレス設定部202は、データ単位の属性が変更された場合には、変更後の属性に応じた仮想アドレスと物理アドレスを設定し、変換テーブルを更新する。
アドレス設定部202は、各データ単位の仮想アドレスと物理アドレスの変換テーブルをコントローラ20に記録する。例えば、アドレス設定部202は、変換テーブルを生成した場合に、生成した変換テーブルをコントローラ20に送信して記録する。また例えば、変換テーブルを更新した場合に、更新後の変換テーブルをコントローラ20に送信して記録する。
コントローラ20は、アドレス設定部202により記録された変換テーブルに基づいて、各メモリにアクセスする。例えば、コントローラ20は、制御プログラムの実行中に、インデックスレジスタを参照し、アクセスするデータ単位の仮想アドレスを特定する。コントローラ20は、変換テーブルを参照し、仮想アドレスを物理アドレスに変換し、当該物理アドレスのメモリ領域にアクセスする。なお、制御プログラムに対し、データ単位の仮想アドレスを渡す必要がある場合には、コントローラ20は、変換テーブルを参照し、アクセスした物理アドレスを仮想アドレスに変換すればよい。
本実施形態では、アドレス設定部202は、電源オフ時に保持することを示す保持属性が設定されたデータ単位と、電源オフ時に保持しないことを示す非保持属性が設定されたデータ単位と、が連番になるように、各データ単位の仮想アドレスを設定する。例えば、保持属性が設定されたデータ単位の末尾のアドレスの次のアドレスが、非保持属性が設定された他のデータ単位の最初のアドレスになることは、連番に相当する。また例えば、非保持属性が設定されたデータ単位の末尾のアドレスの次のアドレスが、保持属性が設定された他のデータ単位の最初のアドレスになることは、連番に相当する。
例えば、各データ単位に、複数のメモリの何れかの物理アドレスが予め設定されている場合、アドレス設定部202は、予め設定された物理アドレスの順序を維持するように、各データ単位の仮想アドレスを設定する。本実施形態では、初期設定時に、GレジスタとMレジスタの各々の物理アドレスが予め定められているので、アドレス設定部202は、これら物理アドレスの順番を保つように、各データ単位の仮想アドレスを設定する。これにより、図5のデータ格納例のように、初期設定のGレジスタの物理アドレスの順序を保つように、連番の仮想アドレスが設定される。即ち、アドレス設定部202は、初期設定時の物理アドレスの昇順又は降順を保つように、仮想アドレスを設定する。
アドレス設定部202は、アドレスの設定結果に基づいて、インデックスレジスタを変更する。本実施形態では、アドレス設定部202は、互いに連番となるように仮想アドレスを設定するので、インデックスレジスタにおける仮想アドレスの相対値についても、この連番を保つように変更する。
[4.設定システムで実行される処理]
図6は、設定システム1で実行される処理の一例を示すフロー図である。図6に示す処理は、プロセッサ11,21の各々がプログラムに従って動作することによって実行される。図6に示す処理は、図4に示す機能ブロックにより実行される処理の一例である。なお、図6に示す処理が実行されるにあたり、制御プログラムが予め作成されており、各データ単位の属性の初期設定(MレジスタとGレジスタの振り分け)も完了しているものとする。
図6に示すように、設定端末10は、メモリ12に記憶された設定ツールを起動し(S1)、コントローラ20から取得した属性設定データに基づいて、属性指定画面UIをモニタ15に表示させる(S2)。属性指定画面UIが表示された時点では、何れのアドレス帯域も選択されていないので、各グループのツリーは閉じた状態(図2の上側の属性指定画面UI)となる。
設定端末10は、入力デバイス14の検出信号に基づいて、ユーザの操作を特定する(S3)。本実施形態では、ツリーを開く操作、ツリーを閉じる操作、属性を指定する操作、OKボタンB1を選択する操作、又はキャンセルボタンB2を選択する操作の何れかが行われる場合を説明する。
ツリーを開く操作が行われた場合(S3;ツリーを開く)、設定端末10は、選択されたアドレス帯域のツリーを開き、属性設定データに基づいて、リストLにデータ単位の名称とチェックボックスを表示させる(S4)。S4では、例えば、図2の上側の属性指定画面UIから下側の属性指定画面UIに変化し、ツリーが開いたアドレス帯域のデータ単位の属性を個別に指定可能な状態になる。
ツリーを閉じる操作が行われた場合(S3;ツリーを閉じる)、設定端末10は、選択されたアドレス帯域のツリーを閉じ、リストLからデータ単位の名称とチェックボックスを消去する(S5)。S5では、例えば、図2の下側の属性指定画面UIから上側の属性指定画面UIに変化し、ツリーが閉じられたアドレス帯域のデータ単位の属性を指定できないようになる。
データ単位に設定する属性が指定された場合(S3;属性を指定)、設定端末10は、指定された属性のチェックをオン/オフする(S6)。各データ単位に指定された属性(チェックのオン/オフ)は、メモリ12に一時的に記録される。この属性は、OKボタンB1が選択された場合に確定し、コントローラ20に書き込まれる。
OKボタンB1が選択された場合(S3;OKボタン)、設定端末10は、コントローラ20に対し、所定の設定指示を送信し、コントローラ20は、設定指示に応じてデータ単位に属性を設定する(S7)。設定指示は、属性とアドレスを設定するための指示であり、所定の形式のデータが送信されることによって行われる。例えば、設定指示には、属性指定画面UIから指定された各データ単位の属性が含まれるものとする。S7においては、コントローラ20は、設定指示に含まれる各データ単位の属性(ユーザが指定した属性)となるように、属性設定データを更新する。
コントローラ20は、各データ単位に、仮想アドレスと、属性に応じたメモリの物理アドレスと、を設定する(S8)。S8においては、コントローラ20は、は、Mレジスタのデータ単位に、連番となるような仮想アドレスと、属性に応じたメモリの物理アドレスと、を設定する。コントローラ20は、S8の設定となるように変換テーブルを更新し(S9)、本処理は終了する。一方、S3において、キャンセルボタンB2が選択された場合(S3;キャンセルボタン)、本処理は終了する。この場合、S7〜S9の処理は実行されず、属性設定データは更新されない。
以上説明した実施形態によれば、電源オフ時に保持するか否かを示す属性を各データ単位に設定し、各データ単位が属性に応じたメモリに格納されるように、各データ単位のアドレスを設定することによって、制御プログラムを修正しなくてもデータ単位を格納するメモリを切り替えが可能となり、制御プログラムの修正の手間を省くことができる。例えば、ユーザがデータ単位の属性を変更すれば、データ単位が属性に応じたメモリに格納されるようになるので、ラダーチャートやソースコードを改変する変更する必要がなくなり、制御プログラムの修正の手間を省くことができる。また、Mレジスタのデータ単位をGレジスタに移す場合には、アクセス速度を高速化し、Mレジスタの使用量を減らすことができる。即ち、高速メモリと低速メモリの切り替えをすることができる。また例えば、コントローラ20が所定の制御周期ごとに制御演算を実行する場合、制御周期が短くなるほど応答の性能が向上するが、1演算周期内における処理内容を増やすと制御周期を短く設定することができなくなる(即ち、制御周期が長くなってしまう)。従来はメモリの応答速度などを加味した制御プログラムの変更が必要となるが、実施形態で説明したコントローラ20によれば、処理内容を増やしたとしても、より高速なメモリに割り当てを見直すことによりスキャンタイムが長くなることを防止できる。
また、各データ単位に、仮想アドレスと、属性に応じたメモリの物理アドレスと、を設定し、産業装置が変換データに基づいて各メモリにアクセスすることによって、制御プログラムを修正しなくても、例えばインデックスレジスタを変更の変更によってデータ単位を格納するメモリを切り替えが可能となり、プログラムの修正の手間を省くことができる。即ち、インデックスレジスタの変更によって、SRAM22とDDRメモリ23の両方にアクセスすることができる。また、ユーザが、仮想アドレスと物理アドレスの対応付けや変換データの設定作業をする必要が無くなり、ユーザの負担を軽減することもできる。また、コントローラ20は、変換データによって各データ単位の物理アドレスに確実にアクセスすることができる。
また、電源オフ時に保持することを示す属性が設定されたデータ単位と、電源オフ時に保持しないことを示す属性が設定されたデータ単位と、が連番になるように、各データ単位の仮想アドレスを設定することによって、例えばインデックスレジスタを変えるだけで対応することができ、制御プログラムの修正の手間を省くことができる。
また、予め設定された物理アドレスの順序を維持するように、各データ単位の仮想アドレスが設定されることによって、ユーザから見たデータ単位のアドレス順が変わらないので、データ単位のアドレスを管理しやすくなる。
また、SRAM22の物理アドレスが設定されたデータ単位に非保持属性を設定する場合には、保持する必要のないデータ単位をDDRメモリ23に格納し、SRAM22を有効活用することができる。DDRメモリ23の物理アドレスが設定されたデータ単位に保持属性を設定する場合には、保持する必要のあるデータ単位をSRAM22に格納し、当該データ単位を確実に保持することができる。
また、各データ単位に設定する属性を指定するための属性指定画面UIを表示させ、属性指定画面UIにおいて指定された属性を各データ単位に設定することによって、ユーザによる属性の設定作業を効率化することができる。
また、属性指定画面UIでは、アドレス帯域ごとにデータ単位がグループ化されており、選択されたアドレス帯域に属するデータ単位の属性を指定可能に表示させることによって、ユーザによる属性の設定作業を効率化することができる。
また、不揮発性メモリ又はバッテリバックアップに対応したメモリと、揮発性メモリ又はバッテリバックアップに対応していないメモリと、を含む複数のメモリを有するコントローラ20における制御プログラムの修正の手間を省くことができる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
(1)例えば、データ単位の属性が偏りすぎると、メモリ容量が不足することがあるので、属性を設定可能なデータ単位に上限を設けてもよい。図7は、変形例の機能ブロック図である。図7に示すように、変形例では、実施形態で説明した機能に加えて、上限設定部203が実現される。上限設定部203は、プロセッサ21を主として実現される。
上限設定部203は、電源オフ時に保持することを示す保持属性と、電源オフ時に保持しないことを示す非保持属性と、の少なくとも一方を設定可能なデータ単位に上限を設定する。上限設定部203は、保持属性と非保持属性の両方に上限を設定してもよいし、何れか一方のみに上限を設定してもよい。
上限とは、属性を設定可能なデータ単位の合計数、又は、データ単位の総容量の上限値である。保持属性の上限は、SRAM22の容量に応じて設定され、非保持属性の上限は、DDRメモリ23の容量に応じて設定される。上限は、これらの容量をオーバーしないように設定される。上限は、固定値であってもよいし、可変値であってもよい。
上限設定部203は、属性設定データに基づいて、属性の上限に達したか否かを判定する。上限設定部203は、上限に達した属性がそれ以上設定されることを制限する。このため、上限に達した属性については、それ以上他のデータ単位に当該属性が設定されない(即ち、属性設定データが更新されない)ようになる。上限設定部203は、上限に達していない属性については、設定されることを制限せずに許可する。
変形例(1)によれば、保持属性を設定可能なデータ単位に上限を設定する場合には、SRAM22の容量が足りなくなることを防止でき、非保持属性を設定可能なデータ単位に上限を設定する場合には、DDRメモリ23の容量が足りなくなることを防止できる。
(2)また例えば、実施形態では、Mレジスタのデータ単位の属性が変更される場合を説明したが、Gレジスタのデータ単位の属性が変更されてもよい。図8は、Gレジスタのデータ単位の属性が変更される様子を示す図である。図8に示すように、Gレジスタについても属性指定画面UIから属性の変更が可能であってもよい。Gレジスタのデータ単位は、初期設定時には、全てチェックが入っていない。
ユーザは、電源オフ時に保持する必要があると判断したデータ単位のチェックを入れる。図2の例では、ユーザは、502000番から503999番を使用するデータ単位と、504000番から505999番を使用するデータ単位と、については保持する必要があると判断し、これらのチェックを入れる。アドレス設定部202は、これらのデータ単位がSRAM22に格納されるように、仮想アドレスと、SRAM22の物理アドレスと、を設定する。Gレジスタについても、Mレジスタと同様、仮想アドレスは、初期設定の順序を保つように連番になるものとする。
(3)また例えば、実施形態では、属性設定部201とアドレス設定部202がコントローラ20で実現される場合を説明したが、これらの機能は、設定端末10で実現されてもよい。この場合、属性設定部201とアドレス設定部202の各々は、プロセッサ21を主として実現される。例えば、属性設定部201は、各データ単位に属性を設定し、当該設定された属性を、コントローラ20の属性設定データに書き込む。また例えば、アドレス設定部202は、各データ単位のアドレスを設定し、当該設定されたアドレスに基づいて、コントローラ20の変換テーブルを更新する。属性を設定する処理及びアドレスを設定する処理の詳細は、実施形態で説明した通りである。
(4)また例えば、上記変形例を組み合わせてもよい。
また例えば、Gレジスタのデータ単位を全て非保持属性にしたり、Mレジスタのデータ単位を全て保持属性にしたりする場合には、メモリが分散されず物理アドレスを連番にすることができるので、仮想アドレスは省略してもよい。また例えば、GレジスタとMレジスタの初期設定は特に行われなくてもよい。この場合、ユーザは、制御プログラムの作成時に、データ単位に属性を指定すればよい。アドレス設定部202は、データ単位ごとに、他のデータ単位と連番となるように仮想アドレスを設定し、属性に応じたメモリの物理アドレスを設定する。ユーザが属性指定画面UIから事後的に属性を変更した場合には、制御プログラムの作成時に設定された仮想アドレスと物理アドレスが変更される。インデックスレジスタは、これらのアドレスの変更に応じて変更されるようにすればよい。また例えば、コントローラ20は、周期的な制御をしなくてもよい。
また例えば、設定端末10で実現されるものとして説明した機能は、コントローラ20で実現されてもよい。また例えば、コントローラ20で実現されるものとして説明した機能は、設定端末10で実現されてもよい。また例えば、設定端末10によって主な機能が実現される場合を説明したが、各機能が複数のコンピュータによって分担されてもよい。例えば、設定端末10とコントローラ20によって、各機能が分担されてもよい。また例えば、サーバコンピュータ等の他のコンピュータによって、各機能が実現されてもよいし、設定端末10と当該他のコンピュータによって、各機能が分担されてもよい。
また、以上説明した実施形態は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成やデータ格納例そのものに限定するものではない。当業者はこれら開示された実施形態に種々の変形、例えば、物理的構成の形状や数、データ構造、処理の実行順を変更したりしてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
1 設定システム、10 設定端末、11,21 プロセッサ、12 メモリ、13 通信IF、14 入力デバイス、15 モニタ、20 コントローラ、22 SRAM、23 DDRメモリ、24 FPGA、30 被制御装置、B1 OKボタン、B2 キャンセルボタン、100,200 データ記憶部、101 表示制御部、201 属性設定部、202 アドレス設定部、203 上限設定部、UI 属性指定画面、L リスト。

Claims (15)

  1. 産業機器を制御する制御装置であって、
    電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリと、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、
    を有し、
    前記アドレス設定部は、電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    前記アドレス設定部は、電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記アドレス設定部は、各データ単位に、仮想アドレスと、前記属性に応じたメモリの物理アドレスと、を設定し、
    前記アドレス設定部は、各データ単位の前記仮想アドレスと前記物理アドレスの変換データを記録し、
    前記変換データに基づいて、各メモリにアクセスする、
    産業機器の制御装置。
  2. 前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定された複数のデータ単位の何れかの末尾のアドレスの次のアドレスが、電源オフ時に保持しないことを示す属性が設定された複数のデータ単位の何れかの最初のアドレスになるように、各データ単位の前記仮想アドレスを設定する、又は、
    電源オフ時に保持しないことを示す属性が設定された複数のデータ単位の何れかの末尾のアドレスの次のアドレスが、電源オフ時に保持することを示す属性が設定された複数のデータ単位の何れかの最初のアドレスになるように、各データ単位の前記仮想アドレスを設定する、
    請求項1に記載の産業機器の制御装置。
  3. 各データ単位には、前記複数のメモリの何れかの物理アドレスが予め設定されており、
    前記アドレス設定部は、予め設定された前記物理アドレスの順序を維持するように、各データ単位の前記仮想アドレスを設定する、
    請求項1又はに記載の産業機器の制御装置。
  4. 産業機器を制御する制御装置であって、
    電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリと、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、
    を有し、
    各データ単位には、前記複数のメモリの何れかの物理アドレスが予め設定されており、
    前記属性設定部は、前記第1メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持しないことを示す属性を設定、又は、前記第2メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持することを示す属性を設定
    前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当てる、
    業機器の制御装置。
  5. 産業機器を制御する制御装置であって、
    電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリと、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、
    を有し、
    前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記属性設定部は、各データ単位に設定する前記属性を指定するための属性指定画面において指定された前記属性を各データ単位に設定し、
    前記属性指定画面では、アドレス帯域ごとに、前記データ単位がグループ化されており、何れかのアドレス帯域が選択された場合に、当該アドレス帯域に属するデータ単位の前記属性が指定可能となる、
    業機器の制御装置。
  6. 電源オフ時に保持することを示す属性と、電源オフ時に保持しないことを示す属性と、の少なくとも一方を設定可能なデータ単位に上限を設定する上限設定部を更に有する、
    請求項1〜の何れかに記載の産業機器の制御装置。
  7. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置の設定システムであって、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、
    を有し、
    前記アドレス設定部は、電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    前記アドレス設定部は、電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記アドレス設定部は、各データ単位に、仮想アドレスと、前記属性に応じたメモリの物理アドレスと、を設定し、
    前記アドレス設定部は、各データ単位の前記仮想アドレスと前記物理アドレスの変換データを記録し、
    前記変換データに基づいて、各メモリにアクセスする、
    産業機器の制御装置の設定システム。
  8. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置の設定システムであって、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、
    を有し、
    各データ単位には、前記複数のメモリの何れかの物理アドレスが予め設定されており、
    前記属性設定部は、前記第1メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持しないことを示す属性を設定し、又は、前記第2メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持することを示す属性を設定し、
    前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当てる、
    産業機器の制御装置の設定システム。
  9. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置の設定システムであって、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部と、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部と、
    を有し、
    前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記属性設定部は、各データ単位に設定する前記属性を指定するための属性指定画面において指定された前記属性を各データ単位に設定し、
    前記属性指定画面では、アドレス帯域ごとに、前記データ単位がグループ化されており、何れかのアドレス帯域が選択された場合に、当該アドレス帯域に属するデータ単位の前記属性が指定可能となる、
    産業機器の制御装置の設定システム。
  10. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置のアドレス設定方法であって、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定し、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するために、電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    各データ単位に、仮想アドレスと、前記属性に応じたメモリの物理アドレスと、を設定し、
    データ単位の前記仮想アドレスと前記物理アドレスの変換データを記録し、
    前記変換データに基づいて、各メモリにアクセスする、
    産業機器の制御装置の設定方法。
  11. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置のアドレス設定方法であって、
    前記複数のメモリの何れかの物理アドレスが予め設定された、複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定するために、前記第1メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持しないことを示す属性を設定し、又は、前記第2メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持することを示す属性を設定し、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するために、電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当てる、
    産業機器の制御装置の設定方法。
  12. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置のアドレス設定方法であって、
    複数のデータ単位の各々に設定される属性であって、電源オフ時に保持するか否かを示す属性を指定するための属性指定画面において指定された前記属性を各データ単位に設定し、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するために、電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記属性指定画面では、アドレス帯域ごとに、前記データ単位がグループ化されており、何れかのアドレス帯域が選択された場合に、当該アドレス帯域に属するデータ単位の前記属性が指定可能となる、
    産業機器の制御装置の設定方法。
  13. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置又は当該制御装置の設定端末を、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部、
    として機能させるためのプログラムであって、
    前記アドレス設定部は、電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    前記アドレス設定部は、電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記アドレス設定部は、各データ単位に、仮想アドレスと、前記属性に応じたメモリの物理アドレスと、を設定し、
    前記アドレス設定部は、各データ単位の前記仮想アドレスと前記物理アドレスの変換データを記録し、
    前記変換データに基づいて、各メモリへのアクセスが行われる、
    プログラム。
  14. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置又は当該制御装置の設定端末を、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部、
    として機能させるためのプログラムであって、
    各データ単位には、前記複数のメモリの何れかの物理アドレスが予め設定されており、
    前記属性設定部は、前記第1メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持しないことを示す属性を設定し、又は、前記第2メモリの前記物理アドレスが設定されたデータ単位に、電源オフ時に保持することを示す属性を設定し、
    前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当てる、
    プログラム。
  15. 電源オフ時にデータを保持する第1メモリと、電源オフ時にデータを保持しない第2メモリと、を含む複数のメモリを有し、産業機器を制御する制御装置又は当該制御装置の設定端末を、
    複数のデータ単位の各々に、電源オフ時に保持するか否かを示す属性を設定する属性設定部、
    各データ単位が前記属性に応じたメモリに格納されるように、各データ単位のアドレスを設定するアドレス設定部、
    として機能させるためのプログラムであって、
    前記アドレス設定部は、
    電源オフ時に保持することを示す属性が設定されたデータ単位に、前記第2メモリのアドレスは割り当てず、前記第1メモリのアドレスを割り当て、
    電源オフ時に保持しないことを示す属性が設定されたデータ単位に、前記第1メモリのアドレスは割り当てず、前記第2メモリのアドレスを割り当て、
    前記属性設定部は、各データ単位に設定する前記属性を指定するための属性指定画面において指定された前記属性を各データ単位に設定し、
    前記属性指定画面では、アドレス帯域ごとに、前記データ単位がグループ化されており、何れかのアドレス帯域が選択された場合に、当該アドレス帯域に属するデータ単位の前記属性が指定可能となる、
    プログラム。
JP2019197400A 2019-10-30 2019-10-30 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム Active JP6874814B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019197400A JP6874814B2 (ja) 2019-10-30 2019-10-30 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム
EP20203985.5A EP3816744B1 (en) 2019-10-30 2020-10-27 Control device for industrial machine, setting system for control device for industrial machine, method of setting control device for industrial machine, and program
US17/082,021 US12019422B2 (en) 2019-10-30 2020-10-28 Control device with attribute setting for industrial machine, attribute setting system for control device for industrial machine, method of setting control device with attributes for industrial machine, and information storage medium for setting a control device with attributes
CN202011177635.0A CN112748694B (zh) 2019-10-30 2020-10-29 用于工业机械的控制设备及其设置系统、设置方法和程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019197400A JP6874814B2 (ja) 2019-10-30 2019-10-30 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021071861A JP2021071861A (ja) 2021-05-06
JP6874814B2 true JP6874814B2 (ja) 2021-05-19

Family

ID=73029857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019197400A Active JP6874814B2 (ja) 2019-10-30 2019-10-30 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム

Country Status (4)

Country Link
US (1) US12019422B2 (ja)
EP (1) EP3816744B1 (ja)
JP (1) JP6874814B2 (ja)
CN (1) CN112748694B (ja)

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2276739A (en) * 1993-03-30 1994-10-05 Ibm System for storing persistent and non-persistent queued data.
JP4348664B2 (ja) * 2000-06-28 2009-10-21 オムロン株式会社 プログラマブルコントローラの制御方法
JP2005258851A (ja) 2004-03-12 2005-09-22 Renesas Technology Corp メモリカード
JP4373943B2 (ja) * 2005-02-28 2009-11-25 Tdk株式会社 メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
KR101449524B1 (ko) * 2008-03-12 2014-10-14 삼성전자주식회사 스토리지 장치 및 컴퓨팅 시스템
US9223642B2 (en) * 2013-03-15 2015-12-29 Super Talent Technology, Corp. Green NAND device (GND) driver with DRAM data persistence for enhanced flash endurance and performance
US8271638B2 (en) * 2009-06-24 2012-09-18 Hitachi, Ltd. Node management apparatus and method
US8688899B2 (en) * 2010-09-28 2014-04-01 Fusion-Io, Inc. Apparatus, system, and method for an interface between a memory controller and a non-volatile memory controller using a command protocol
JP5810563B2 (ja) 2011-03-15 2015-11-11 オムロン株式会社 制御プログラム開発支援装置、制御プログラム開発支援用プログラム及び記録媒体
KR101810932B1 (ko) * 2011-04-27 2017-12-20 시게이트 테크놀로지 엘엘씨 주소 사상 정보 관리 방법, 디스크 드라이브에서의 액세스 방법, 저장 장치, 컴퓨터 시스템, 네트워크를 통한 주소 사상 정보 관리 방법 및 컴퓨터로 읽을 수 있는 저장 매체
US8949508B2 (en) * 2011-07-18 2015-02-03 Apple Inc. Non-volatile temporary data handling
JP2013257679A (ja) 2012-06-12 2013-12-26 Sony Corp 情報処理装置および方法、並びに、プログラム
JP6020071B2 (ja) * 2012-11-14 2016-11-02 富士電機株式会社 プログラマブルコントローラシステム、その支援装置、プログラマブルコントローラ
JP2015191336A (ja) 2014-03-27 2015-11-02 キヤノン株式会社 メモリ制御装置、情報処理装置とその制御方法、及びプログラム
JP6408277B2 (ja) * 2014-07-25 2018-10-17 株式会社ベルチャイルド データ収集装置及び産業用ネットワークシステム
JP6401071B2 (ja) * 2015-02-05 2018-10-03 株式会社日立産機システム プログラマブルコントローラ
JP6672623B2 (ja) * 2015-07-08 2020-03-25 富士電機株式会社 制御システム、その制御装置
US20170322740A1 (en) 2016-05-09 2017-11-09 Microsoft Technology Licensing, Llc Selective data persistence in computing systems
US10423446B2 (en) 2016-11-28 2019-09-24 Arm Limited Data processing
JP6408044B2 (ja) 2017-01-25 2018-10-17 ファナック株式会社 プログラマブルコントローラ
US10545882B2 (en) * 2018-01-29 2020-01-28 Dell Products L.P. Systems and methods for load-balancing cache flushes to non-volatile memory
US11494311B2 (en) * 2019-09-17 2022-11-08 Micron Technology, Inc. Page table hooks to memory types

Also Published As

Publication number Publication date
US12019422B2 (en) 2024-06-25
JP2021071861A (ja) 2021-05-06
EP3816744B1 (en) 2023-03-29
EP3816744A1 (en) 2021-05-05
US20210132564A1 (en) 2021-05-06
CN112748694A (zh) 2021-05-04
CN112748694B (zh) 2024-06-18

Similar Documents

Publication Publication Date Title
KR100549910B1 (ko) 플래시 메모리 디바이스, 플래시 메모리 명령어 추상화방법 및 컴퓨터 프로그램 제품
JP4884382B2 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
US9841744B2 (en) Programmable controller, peripheral device thereof, and table data access program of programmable controller
JP6388736B1 (ja) プログラマブルロジックコントローラシステムおよびエンジニアリングツールプログラム
JP2008242944A (ja) 統合メモリ管理装置及び方法
TWI502345B (zh) 快閃記憶體控制晶片以及資料儲存裝置以及快閃記憶體控制方法
JP2006092169A (ja) メモリコントローラ,メモリ装置及びメモリコントローラの制御方法
US10114561B2 (en) Memory controllers, memory systems, and methods relating to wear-leveling
JP3847585B2 (ja) エディタの登録装置、登録プログラムおよびそれを記録した記録媒体
JP6874814B2 (ja) 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム
US9396769B1 (en) Memory device and operating method of same
JP5870214B2 (ja) プログラマブルコントローラシステム、そのプログラマブル表示器、支援装置、プログラム
US12085904B2 (en) Engineering device, engineering method, and information storage medium
JP6020071B2 (ja) プログラマブルコントローラシステム、その支援装置、プログラマブルコントローラ
CN111078301B (zh) 一种多核心运算装置及其运作方法
JPH0271342A (ja) メモリ管理装置
JP5017047B2 (ja) プログラマブルコントローラの内部メモリに対する外部アクセスデータ判別システムおよび該プログラマブルコントローラ
JP4479558B2 (ja) プログラマブルコントローラ及びそのプログラミングツール
JP2001056704A (ja) プログラム式表示装置
JP3392663B2 (ja) プログラム式表示装置
JP2015090512A (ja) メモリダンプ機能を有する情報処理装置
JP2007334915A (ja) メモリカード
JPH08115256A (ja) 記憶制御装置
JP2007317078A (ja) 不揮発性メモリ、メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
JPS6380330A (ja) デ−タ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191107

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20191107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200317

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210129

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: 20210323

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210405

R150 Certificate of patent or registration of utility model

Ref document number: 6874814

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