WO2015186210A1 - 機能管理システム及び機能管理方法 - Google Patents

機能管理システム及び機能管理方法 Download PDF

Info

Publication number
WO2015186210A1
WO2015186210A1 PCT/JP2014/064859 JP2014064859W WO2015186210A1 WO 2015186210 A1 WO2015186210 A1 WO 2015186210A1 JP 2014064859 W JP2014064859 W JP 2014064859W WO 2015186210 A1 WO2015186210 A1 WO 2015186210A1
Authority
WO
WIPO (PCT)
Prior art keywords
circuit data
unit
functional unit
function
data
Prior art date
Application number
PCT/JP2014/064859
Other languages
English (en)
French (fr)
Inventor
洋平 塚本
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2014/064859 priority Critical patent/WO2015186210A1/ja
Priority to TW103125794A priority patent/TW201546584A/zh
Publication of WO2015186210A1 publication Critical patent/WO2015186210A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components

Definitions

  • the present invention relates to a function management system and a function management method.
  • a system that controls industrial equipment (for example, machine tools), various functions are required depending on the application. Therefore, a system is constituted by one general-purpose computer (hereinafter referred to as “main unit”) and a plurality of computers (hereinafter referred to as “function expansion units”) having functions according to the application.
  • main unit general-purpose computer
  • function expansion units computers
  • the function expansion unit inputs various data such as switch on / off data, machine element position, rotation speed data, temperature, pressure, and flow rate data of substances used in the manufacturing process via sensors or motors. Has a function to output.
  • the main unit has a function of instructing the function expansion unit to input / output various data according to a preset procedure by executing a program.
  • the function of the function expansion unit is realized by an FPGA that allows easy design modification and function addition.
  • circuit data is loaded into the FPGA built in the function expansion unit, and a desired function is given to the FPGA.
  • the same function may be required for two or more function expansion units.
  • a plurality of types for example, types
  • a plurality of machine tools are used for each type of product. If one function expansion unit is connected to one machine tool, the functions required for the function expansion unit are determined by the type of product used to manufacture the product. . That is, two or more function expansion units connected to machine tools used for manufacturing the same type of product (hereinafter, such function expansion units are considered as function expansion units having the same “function expansion unit type”). In some cases, these function expansion units require the same functionality.
  • An object of the present invention is to efficiently manage circuit data loaded into a programmable logic device, for example.
  • a function management system includes: Type information indicating a programmable logic device, a load device for loading circuit data for configuring an internal circuit of the programmable logic device into the programmable logic device, and a type of the functional unit itself corresponding to a plurality of types
  • a functional unit having a storage device for storing A non-volatile memory that prestores individual circuit data corresponding to each of the plurality of types, and a circuit that receives type information stored in the storage device from the functional unit and corresponds to the type indicated by the received type information
  • a management unit having a processor that reads data from the nonvolatile memory and transmits the read circuit data to the functional unit to load the circuit data from the load device to the programmable logic device.
  • type information indicating which of the plurality of types the functional unit type corresponds to is stored in the storage device of the functional unit. Individual circuit data corresponding to each of the plurality of types is stored in advance in the nonvolatile memory of the management unit. Then, circuit data corresponding to the type indicated by the type information is read from the nonvolatile memory of the management unit, and the read circuit data is loaded into the programmable logic device of the functional unit. Therefore, according to the present invention, circuit data can be managed efficiently.
  • FIG. 1 is a block diagram illustrating a configuration of a function management system according to Embodiment 1.
  • FIG. 3 is a block diagram showing a configuration of a function expansion unit (an example of a function unit) of the function management system according to the first embodiment.
  • FIG. 3 is a block diagram illustrating a configuration of a main unit (an example of a management unit) of the function management system according to the first embodiment.
  • 4 is a table showing a configuration of an address table of the function management system according to the first embodiment.
  • 5 is a flowchart showing an example of the operation of the main unit of the function management system according to the first embodiment. 5 is a flowchart showing an example of the operation of a function expansion unit of the function management system according to the first embodiment.
  • FIG. 1 is a block diagram showing a configuration of a function management system 100 according to the present embodiment.
  • the function management system 100 includes one main unit 110 and two or more function expansion units 120.
  • the main unit 110 is an example of a management unit.
  • the function expansion unit 120 is an example of a function unit. The internal configuration of the main unit 110 and the function expansion unit 120 will be described later.
  • the main unit 110 and the function expansion unit 120 are connected to each other via a data transmission path 130.
  • the function management system 100 further includes a housing 140.
  • the housing 140 accommodates the main unit 110.
  • casing 140 accommodates each function expansion unit 120 so that attachment or detachment is possible.
  • the housing 140 has, for example, a backplane on which the data transmission path 130 is mounted.
  • Each function expansion unit 120 is connected to one or a plurality of external devices 150.
  • the external device 150 is, for example, an industrial device.
  • the function management system 100 may include two or more main units 110.
  • the function management system 100 may include only one function expansion unit 120.
  • the housing 140 may accommodate the main unit 110 in a detachable manner.
  • the main unit 110 and the function expansion unit 120 may be housed in separate housings instead of being housed in the same housing 140.
  • An arbitrary communication protocol can be used for communication performed via the data transmission path 130.
  • FIG. 2 is a block diagram showing the configuration of the function expansion unit 120.
  • the function expansion unit 120 includes an FPGA 121, a load device 122, a buffer 123, a storage device 124, and a communication device 125.
  • the FPGA 121 is an example of a PLD (programmable logic device).
  • the FPGA 121 is connected to the external device 150 and controls the external device 150 by the operation of the internal circuit. That is, the FPGA 121 exhibits a function corresponding to the application by the operation of the internal circuit.
  • the load device 122 loads circuit data 201 for configuring the internal circuit of the FPGA 121 into the FPGA 121.
  • the load device 122 is implemented by a microcomputer, for example.
  • the buffer 123 is a memory for temporarily storing circuit data 201 transmitted from the main unit 110.
  • the buffer 123 is a volatile memory such as a RAM (Random Access Memory), for example. Note that the buffer 123 may be a nonvolatile memory.
  • the storage device 124 stores type information 301 indicating which of the plurality of types 1 to n (n is an arbitrary integer greater than 1) is the type of the function expansion unit 120.
  • the storage device 124 is, for example, a nonvolatile memory such as a ROM (Read Only Memory) or a flash memory.
  • the type of the function expansion unit 120 is classified by, for example, the type or lot of a product manufactured by the external device 150 connected to the FPGA 121, the manufacturing process in which the external device 150 is used, or a combination thereof. .
  • the communication device 125 communicates with the main unit 110 via the data transmission path 130. For example, the communication device 125 receives the circuit data 201 from the main unit 110 and passes the received circuit data 201 to the buffer 123. Further, the communication device 125 receives the type information 301 from the storage device 124 and transmits the received type information 301 to the main unit 110.
  • FIG. 3 is a block diagram showing the configuration of the main unit 110.
  • the main unit 110 includes a nonvolatile memory 111, a CPU 112 (central processing unit), and a communication device 113.
  • the nonvolatile memory 111 stores in advance individual circuit data 201 (that is, circuit data 1 to n) corresponding to each of the plurality of types 1 to n described above.
  • the nonvolatile memory 111 stores an address table 202 and a program 203 which will be described later.
  • the nonvolatile memory 111 is, for example, a flash memory or a hard disk.
  • the main unit 110 may hold the address table 202 or the program 203 in a memory different from the nonvolatile memory 111.
  • the CPU 112 is an example of a processor.
  • the CPU 112 receives the type information 301 stored in the storage device 124 of the function expansion unit 120 from the function expansion unit 120 via the communication device 113.
  • the CPU 112 reads circuit data 201 corresponding to the type indicated by the received type information 301 from the nonvolatile memory 111.
  • the CPU 112 transmits the read circuit data 201 to the function expansion unit 120 via the communication device 113 and loads the circuit data 201 from the load device 122 of the function expansion unit 120 to the FPGA 121 of the function expansion unit 120.
  • the CPU 112 reads the program 203 from the nonvolatile memory 111.
  • the CPU 112 instructs the function expansion unit 120 to input / output various data according to a preset procedure.
  • the communication device 113 communicates with the function expansion unit 120 via the data transmission path 130. For example, the communication device 113 receives the type information 301 from the function expansion unit 120 and passes the received type information 301 to the CPU 112. Further, the communication device 113 receives the circuit data 201 from the CPU 112 and transmits the received circuit data 201 to the function expansion unit 120.
  • FIG. 4 is a table showing the configuration of the address table 202.
  • an address table 202 is a table that defines a correspondence relationship between a plurality of types 1 to n and addresses at which circuit data 1 to n are stored in the nonvolatile memory 111 of the main unit 110.
  • the CPU 112 of the main unit 110 extracts an address corresponding to the type indicated by the type information 301 received from the function expansion unit 120 from the address table 202.
  • the CPU 112 reads the circuit data 201 stored at the extracted address.
  • the CPU 112 transmits the read circuit data 201 to the function expansion unit 120, thereby causing the function expansion unit 120 to be loaded from the load device 122 of the function expansion unit 120 to the FPGA 121 of the function expansion unit 120. Control.
  • FIG. 5 is a flowchart showing an example of the operation of the main unit 110.
  • the main unit 110 starts operation from S11.
  • the CPU 112 confirms whether or not the FPGAs 121 of all the function expansion units 120 are in a load completion state.
  • the load completion state is a state where the circuit data 201 is completely loaded into the FPGA 121.
  • the load incomplete state is a state in which the circuit data 201 is partially loaded in the FPGA 121 or a state in which the circuit data 201 is not loaded in the FPGA 121 at all. Whether or not the FPGA 121 is in a load completion state can be confirmed by referring to the value of a specific register built in the FPGA 121, for example. If the FPGA 121 of at least one function expansion unit 120 is in an incomplete load state, the flow proceeds to S12. If the FPGAs 121 of all the function expansion units 120 are in the load completion state, the flow proceeds to S19.
  • the CPU 112 selects one function expansion unit 120 having the FPGA 121 in an incomplete loading state.
  • the CPU 112 reads out the type information 301 of the function expansion unit 120 selected in S12 from the storage device 124 of the function expansion unit 120.
  • the CPU 112 selects the circuit data 201 on the nonvolatile memory 111 in accordance with the type information 301 read in S13. Specifically, the CPU 112 extracts an address corresponding to the type indicated by the type information 301 read in S13 from the address table 202 shown in FIG. Thereby, the circuit data 201 on the nonvolatile memory 111 is substantially selected.
  • the CPU 112 confirms whether or not there is an empty space in the buffer 123 of the function expansion unit 120 selected in S12.
  • the free space in the buffer 123 means free space for the most recent transmission data size. For example, if the CPU 112 divides the circuit data 201 into a plurality of times and transmits the circuit data 201 to the function expansion unit 120, the free space in the buffer 123 means a free space corresponding to the transmission data size in each of the multiple times. On the other hand, if the CPU 112 transmits the entire circuit data 201 at a time, the buffer 123 free means a space equivalent to the size of the circuit data 201 itself.
  • Whether or not there is a space in the buffer 123 can be confirmed by referring to the value of a specific register built in the buffer 123, for example. If there is no space in the buffer 123, the flow repeats S15. If the buffer 123 is free, the flow proceeds to S16.
  • the CPU 112 reads the circuit data 201 selected in S14 from the nonvolatile memory 111.
  • the CPU 112 writes the read circuit data 201 into the buffer 123 of the function expansion unit 120.
  • the CPU 112 checks whether or not the loading of the circuit data 201 is completed. For example, if the CPU 112 transmits the circuit data 201 to the function expansion unit 120 in a plurality of times, the CPU 112 checks whether or not the last data transmission of the plurality of times has been completed. If the last data transmission has not been completed, the CPU 112 determines that the loading of the circuit data 201 has not been completed. When the last data transmission has been completed, the CPU 112 determines that the loading of the circuit data 201 has been completed. On the other hand, if the CPU 112 transmits the entire circuit data 201 at a time, the CPU 112 simply checks whether the data transmission is completed.
  • the CPU 112 determines that the loading of the circuit data 201 is not completed. When the data transmission has been completed, the CPU 112 determines that the loading of the circuit data 201 has been completed. The CPU 112 may inquire of the load device 122 of the function expansion unit 120 whether the circuit data 201 has been normally received, and may determine whether the loading of the circuit data 201 has been completed according to the result. . If the loading of the circuit data 201 has not been completed, the flow returns to S15. When the loading of the circuit data 201 is completed, the flow proceeds to S18.
  • the CPU 112 transmits the circuit data 201 to the function expansion unit 120 in a plurality of times (for example, the circuit data 201 of several megabits is transmitted every 512 bits), the CPU 112 Data transmission is started after confirming that the buffer 123 of the function expansion unit 120 has space for the transmission data size at each of the plurality of times. Therefore, overflow of the buffer 123 can be prevented.
  • the CPU 112 instructs the load device 122 of the function expansion unit 120 to output a load completion signal to the FPGA 121 of the function expansion unit 120 selected in S12. Thereafter, the flow returns to S11.
  • the CPU 112 reads the program 203 from the nonvolatile memory 111.
  • the CPU 112 executes the read program 203.
  • FIG. 6 is a flowchart showing an example of the operation of the function expansion unit 120.
  • the function expansion unit 120 starts operation from S21.
  • the load device 122 confirms whether or not the circuit data 201 is stored in the buffer 123. Whether or not the circuit data 201 is stored in the buffer 123 can be confirmed, for example, by accessing the buffer 123 and searching for header information (or meta information) of the circuit data 201. If circuit data 201 is stored, the flow proceeds to S22. If the circuit data 201 is not stored, the flow proceeds to S23.
  • the load device 122 reads the circuit data 201 from the buffer 123.
  • the load device 122 loads the read circuit data 201 into the FPGA 121. Thereafter, the flow returns to S21.
  • the load device 122 confirms whether or not an output of a load completion signal is instructed from the main unit 110. If the output of the load completion signal has not been instructed yet, the flow returns to S21. If the output of the load completion signal has already been instructed, the flow proceeds to S24.
  • the load device 122 outputs a load completion signal to the FPGA 121.
  • the FPGA 121 transitions from the load incomplete state to the load complete state in accordance with the load completion signal input in S24. For example, the FPGA 121 changes from the load incomplete state to the load complete state by rewriting the value of the register described above.
  • the main unit 110 holds the circuit data 201 corresponding to the type of the function expansion unit 120 in advance.
  • the main unit 110 transfers circuit data 201 corresponding to the type of each function expansion unit 120.
  • Each function expansion unit 120 writes the circuit data 201 transferred from the main unit 110 from the load device 122 to the FPGA 121.
  • the type of the function expansion unit 120 is considered. That is, the main unit 110 does not hold individual circuit data 201 for each function expansion unit 120, but holds common circuit data 201 for the same type of function expansion unit 120. Therefore, the circuit data 201 can be managed efficiently.
  • the main unit 110 manages the circuit data 201 in an integrated manner, it is not necessary to mount a nonvolatile memory for holding the circuit data 201 in each function expansion unit 120. Therefore, the cost required for the nonvolatile memory can be reduced.
  • 100 function management system 110 main unit, 111 nonvolatile memory, 112 CPU, 113 communication device, 120 function expansion unit, 121 FPGA, 122 load device, 123 buffer, 124 storage device, 125 communication device, 130 data transmission path, 140 housing Body, 150 external device, 201 circuit data, 202 address table, 203 program, 301 type information.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Logic Circuits (AREA)

Abstract

 機能管理システム(100)は、1つの主ユニット(110)と、2つ以上の機能拡張ユニット(120)とを備える。機能拡張ユニット(120)の種別が複数の種別のいずれに該当するかを示す種別情報が機能拡張ユニット(120)の記憶装置に記憶される。これら複数の種別のそれぞれに対応する個別の回路データが主ユニット(110)の不揮発メモリに予め格納される。そして、種別情報で示される種別に対応する回路データが主ユニット(110)の不揮発メモリから読み取られ、読み取られた回路データが機能拡張ユニット(120)のFPGAにロードされる。

Description

機能管理システム及び機能管理方法
 本発明は、機能管理システム及び機能管理方法に関するものである。
 回路配置データをネットワーク経由で外部装置から受信し、受信した回路配置データを用いてFPGA(フィールドプログラマブルゲートアレイ)のコンフィグレーションを実行する技術がある(例えば、特許文献1~3参照)。
特開2006-262227号公報 特開2001-306343号公報 特開平9-218781号公報
 産業用機器(例えば、工作機械)を制御するシステムでは、用途に応じて多様な機能が求められる。そのため、1つの汎用的な計算機(以下、「主ユニット」と呼ぶ)と、用途に応じた機能を持つ複数の計算機(以下、「機能拡張ユニット」と呼ぶ)とによりシステムが構成される。
 機能拡張ユニットは、スイッチのオンオフを示すデータ、機械要素の位置、回転数を示すデータ、製造工程で用いられる物質の温度、圧力、流量を示すデータといった各種データをセンサ又はモータ等を介して入出力する機能を持つ。
 主ユニットは、プログラムを実行することにより、予め設定された手順に沿って、機能拡張ユニットに対して各種データの入出力を指示する機能を持つ。
 機能拡張ユニットの機能は、設計の修正、機能の追加が容易なFPGAにより実現される。機能拡張ユニットの起動時には、機能拡張ユニットが内蔵するFPGAに回路データがロードされ、FPGAに所望の機能が与えられる。
 2つ以上の機能拡張ユニットで同じ機能が必要な場合がある。例えば、複数の種別(例えば、型)の製品を大量生産する設備では、製品の種別ごとに、複数台の工作機械が用いられる。1台の工作機械に1つの機能拡張ユニットが接続されるとすると、機能拡張ユニットに必要な機能は、その機能拡張ユニットがどの種別の製品の製造に用いられる工作機械に接続されるかによって決まる。即ち、同じ種別の製品の製造に用いられる工作機械に接続される2つ以上の機能拡張ユニット(以下、このような機能拡張ユニットを「機能拡張ユニットの種別」が同じ機能拡張ユニットと考える)がある場合、これらの機能拡張ユニットでは同じ機能が必要となる。
 従来技術では、機能拡張ユニットの種別が考慮されていない。そのため、FPGAにロードされる回路データを効率的に管理することができないという課題がある。
 本発明は、例えば、プログラマブルロジックデバイスにロードされる回路データを効率的に管理することを目的とする。
 本発明の一の態様に係る機能管理システムは、
 プログラマブルロジックデバイスと、前記プログラマブルロジックデバイスの内部回路を構成するための回路データを前記プログラマブルロジックデバイスにロードするロード装置と、機能ユニット自身の種別が複数の種別のいずれに該当するかを示す種別情報を記憶する記憶装置とを有する機能ユニットと、
 前記複数の種別のそれぞれに対応する個別の回路データを予め格納する不揮発メモリと、前記機能ユニットから前記記憶装置に記憶された種別情報を受信し、受信した種別情報で示される種別に対応する回路データを前記不揮発メモリから読み取り、読み取った回路データを前記機能ユニットに送信して前記ロード装置から前記プログラマブルロジックデバイスにロードさせるプロセッサとを有する管理ユニットとを備える。
 本発明では、機能ユニットの種別が複数の種別のいずれに該当するかを示す種別情報が機能ユニットの記憶装置に記憶される。これら複数の種別のそれぞれに対応する個別の回路データが管理ユニットの不揮発メモリに予め格納される。そして、種別情報で示される種別に対応する回路データが管理ユニットの不揮発メモリから読み取られ、読み取られた回路データが機能ユニットのプログラマブルロジックデバイスにロードされる。このため、本発明によれば、回路データを効率的に管理することが可能となる。
実施の形態1に係る機能管理システムの構成を示すブロック図。 実施の形態1に係る機能管理システムの機能拡張ユニット(機能ユニットの例)の構成を示すブロック図。 実施の形態1に係る機能管理システムの主ユニット(管理ユニットの例)の構成を示すブロック図。 実施の形態1に係る機能管理システムのアドレステーブルの構成を示す表。 実施の形態1に係る機能管理システムの主ユニットの動作の一例を示すフローチャート。 実施の形態1に係る機能管理システムの機能拡張ユニットの動作の一例を示すフローチャート。
 以下、本発明の実施の形態について、図を用いて説明する。
 実施の形態1.
 図1は、本実施の形態に係る機能管理システム100の構成を示すブロック図である。
 機能管理システム100は、1つの主ユニット110と、2つ以上の機能拡張ユニット120とを備える。主ユニット110は、管理ユニットの例である。機能拡張ユニット120は、機能ユニットの例である。主ユニット110及び機能拡張ユニット120の内部構成については後述する。
 主ユニット110と機能拡張ユニット120は、データ伝送路130を介して相互に接続されている。
 機能管理システム100は、さらに、筐体140を備える。筐体140は、主ユニット110を収容する。また、筐体140は、それぞれの機能拡張ユニット120を着脱自在に収容する。筐体140は、例えば、データ伝送路130が実装されたバックプレーンを有する。
 それぞれの機能拡張ユニット120は、1台又は複数台の外部機器150に接続されている。外部機器150は、例えば、産業用機器である。
 なお、機能管理システム100は、2つ以上の主ユニット110を備えていてもよい。機能管理システム100は、1つの機能拡張ユニット120のみを備えていてもよい。筐体140は、主ユニット110を着脱自在に収容してもよい。主ユニット110と機能拡張ユニット120は、同一の筐体140に収容される代わりに、別々の筐体に収容されてもよい。データ伝送路130を介して行われる通信には、任意の通信プロトコルを使用することができる。
 図2は、機能拡張ユニット120の構成を示すブロック図である。
 図2において、機能拡張ユニット120は、FPGA121、ロード装置122、バッファ123、記憶装置124、通信装置125を有する。
 FPGA121は、PLD(プログラマブルロジックデバイス)の例である。FPGA121は、外部機器150に接続され、内部回路の動作によって外部機器150を制御する。即ち、FPGA121は、内部回路の動作によって、用途に応じた機能を発揮する。
 ロード装置122は、FPGA121の内部回路を構成するための回路データ201をFPGA121にロードする。ロード装置122は、例えば、マイクロコンピュータにより実装される。
 バッファ123は、主ユニット110から送信される回路データ201を一旦格納するためのメモリである。バッファ123は、例えば、RAM(ランダムアクセスメモリ)等の揮発メモリである。なお、バッファ123は、不揮発メモリであってもよい。
 記憶装置124は、機能拡張ユニット120の種別が複数の種別1~n(nは1よりも大きい任意の整数)のいずれに該当するかを示す種別情報301を記憶する。記憶装置124は、例えば、ROM(リードオンリーメモリ)又はフラッシュメモリ等の不揮発メモリである。なお、機能拡張ユニット120の種別は、例えば、FPGA121に接続された外部機器150によって製造される製品の型又はロット、その外部機器150が使用される製造工程、或いは、これらの組み合わせによって分類される。
 通信装置125は、データ伝送路130を介して主ユニット110と通信を行う。例えば、通信装置125は、主ユニット110から回路データ201を受信し、受信した回路データ201をバッファ123に渡す。また、通信装置125は、記憶装置124から種別情報301を受け取り、受け取った種別情報301を主ユニット110に送信する。
 図3は、主ユニット110の構成を示すブロック図である。
 図3において、主ユニット110は、不揮発メモリ111、CPU112(セントラルプロセッシングユニット)、通信装置113を有する。
 不揮発メモリ111は、前述した複数の種別1~nのそれぞれに対応する個別の回路データ201(即ち、回路データ1~n)を予め格納する。また、不揮発メモリ111は、後述するアドレステーブル202と、プログラム203とを格納する。不揮発メモリ111は、例えば、フラッシュメモリ又はハードディスクである。なお、主ユニット110は、アドレステーブル202或いはプログラム203を不揮発メモリ111とは別のメモリに保持していてもよい。
 CPU112は、プロセッサの例である。CPU112は、機能拡張ユニット120から機能拡張ユニット120の記憶装置124に記憶された種別情報301を、通信装置113を介して受信する。CPU112は、受信した種別情報301で示される種別に対応する回路データ201を不揮発メモリ111から読み取る。CPU112は、読み取った回路データ201を、通信装置113を介して機能拡張ユニット120に送信して機能拡張ユニット120のロード装置122から機能拡張ユニット120のFPGA121にロードさせる。全ての機能拡張ユニット120のFPGA121に回路データ201がロードされた後、CPU112は、プログラム203を不揮発メモリ111から読み取る。CPU112は、読み取ったプログラム203を実行することにより、予め設定された手順に沿って、機能拡張ユニット120に対して各種データの入出力を指示する。
 通信装置113は、データ伝送路130を介して機能拡張ユニット120と通信を行う。例えば、通信装置113は、機能拡張ユニット120から種別情報301を受信し、受信した種別情報301をCPU112に渡す。また、通信装置113は、CPU112から回路データ201を受け取り、受け取った回路データ201を機能拡張ユニット120に送信する。
 図4は、アドレステーブル202の構成を示す表である。
 図4において、アドレステーブル202は、複数の種別1~nと、主ユニット110の不揮発メモリ111にて回路データ1~nが格納されたアドレスとの対応関係を定義するテーブルである。主ユニット110のCPU112は、機能拡張ユニット120から受信した種別情報301で示される種別に対応するアドレスを、このアドレステーブル202から抽出する。CPU112は、抽出したアドレスに格納された回路データ201を読み取る。CPU112は、読み取った回路データ201を機能拡張ユニット120に送信することにより、この回路データ201が機能拡張ユニット120のロード装置122から機能拡張ユニット120のFPGA121にロードされるように機能拡張ユニット120を制御する。
 以下では、機能管理システム100の動作(本実施の形態に係る機能管理方法)について説明する。
 図5は、主ユニット110の動作の一例を示すフローチャートである。
 機能管理システム100の起動直後に、主ユニット110は、S11から動作を開始する。
 S11において、CPU112は、全ての機能拡張ユニット120のFPGA121がロード完了状態であるかどうかを確認する。ロード完了状態とは、FPGA121に回路データ201が完全にロードされた状態のことである。ロード未完了状態とは、FPGA121に回路データ201が部分的にロードされた状態、或いは、FPGA121に回路データ201が全くロードされていない状態のことである。FPGA121がロード完了状態であるかどうかは、例えば、FPGA121に内蔵される特定のレジスタの値を参照することで確認できる。少なくとも1つの機能拡張ユニット120のFPGA121がロード未完了状態である場合、フローはS12に進む。全ての機能拡張ユニット120のFPGA121がロード完了状態である場合、フローはS19に進む。
 S12において、CPU112は、ロード未完了状態のFPGA121を有する1つの機能拡張ユニット120を選択する。
 S13において、CPU112は、S12で選択した機能拡張ユニット120の種別情報301を、その機能拡張ユニット120の記憶装置124から読み出す。
 S14において、CPU112は、S13で読み出した種別情報301に応じて、不揮発メモリ111上の回路データ201を選択する。具体的には、CPU112は、S13で読み出した種別情報301で示される種別に対応するアドレスを図4に示したアドレステーブル202から抽出する。これにより、実質的に不揮発メモリ111上の回路データ201を選択したことになる。
 S15において、CPU112は、S12で選択した機能拡張ユニット120のバッファ123に空きがあるかどうかを確認する。バッファ123の空きとは、直近の送信データサイズ分の空きのことである。例えば、CPU112が回路データ201を複数回に分けて機能拡張ユニット120に送信するのであれば、バッファ123の空きとは、当該複数回のそれぞれにおける送信データサイズ分の空きのことになる。一方、CPU112が回路データ201の全体を1度に送信するのであれば、バッファ123の空きとは、回路データ201そのもののサイズ分の空きのことになる。バッファ123に空きがあるかどうかは、例えば、バッファ123に内蔵される特定のレジスタの値を参照することで確認できる。バッファ123に空きがない場合、フローはS15を繰り返す。バッファ123に空きがある場合、フローはS16に進む。
 S16において、CPU112は、不揮発メモリ111からS14で選択した回路データ201を読み出す。CPU112は、読み出した回路データ201を機能拡張ユニット120のバッファ123に書き込む。
 S17において、CPU112は、回路データ201のロードが完了したかどうかを確認する。例えば、CPU112が回路データ201を複数回に分けて機能拡張ユニット120に送信するのであれば、CPU112は、当該複数回の最後のデータ送信が完了したかどうかを確認する。最後のデータ送信が完了していない場合、CPU112は、回路データ201のロードが完了していないと判断する。最後のデータ送信が完了している場合、CPU112は、回路データ201のロードが完了したと判断する。一方、CPU112が回路データ201の全体を1度に送信するのであれば、CPU112は、単にデータ送信が完了したかどうかを確認する。データ送信が完了していない場合、CPU112は、回路データ201のロードが完了していないと判断する。データ送信が完了している場合、CPU112は、回路データ201のロードが完了したと判断する。なお、CPU112は、回路データ201が正常に受信できたかどうかを機能拡張ユニット120のロード装置122に問い合わせて、その結果に応じて、回路データ201のロードが完了したかどうかを判断してもよい。回路データ201のロードが完了していない場合、フローはS15に戻る。回路データ201のロードが完了した場合、フローはS18に進む。
 上記のように、本実施の形態では、CPU112が回路データ201を複数回に分けて機能拡張ユニット120に送信する(例えば、数メガビットの回路データ201を512ビットごとに送信する)場合、CPU112が当該複数回のそれぞれで機能拡張ユニット120のバッファ123に送信データサイズ分の空きがあることを確認してからデータ送信を開始する。そのため、バッファ123のオーバーフローを防止することができる。
 S18において、CPU112は、S12で選択した機能拡張ユニット120のFPGA121へのロード完了信号の出力を、その機能拡張ユニット120のロード装置122に指示する。その後、フローはS11に戻る。
 S19において、CPU112は、プログラム203を不揮発メモリ111から読み取る。CPU112は、読み取ったプログラム203を実行する。
 図6は、機能拡張ユニット120の動作の一例を示すフローチャートである。
 機能管理システム100の起動直後に、機能拡張ユニット120は、S21から動作を開始する。
 S21において、ロード装置122は、バッファ123に回路データ201が格納されているかどうかを確認する。バッファ123に回路データ201が格納されているかどうかは、例えば、バッファ123にアクセスして回路データ201のヘッダ情報(又はメタ情報)を検索することで確認できる。回路データ201が格納されている場合、フローはS22に進む。回路データ201が格納されていない場合、フローはS23に進む。
 S22において、ロード装置122は、バッファ123から回路データ201を読み出す。ロード装置122は、読み出した回路データ201をFPGA121にロードする。その後、フローはS21に戻る。
 S23において、ロード装置122は、主ユニット110からロード完了信号の出力が指示されているかどうかを確認する。ロード完了信号の出力がまだ指示されていない場合、フローはS21に戻る。ロード完了信号の出力が既に指示されている場合、フローはS24に進む。
 S24において、ロード装置122は、FPGA121へロード完了信号を出力する。
 S25において、FPGA121は、S24で入力されたロード完了信号に従って、ロード未完了状態からロード完了状態に遷移する。例えば、FPGA121は、前述したレジスタの値を書き換えることで、ロード未完了状態からロード完了状態に遷移する。
 以上説明したように、本実施の形態に係る機能管理システム100では、予め主ユニット110が機能拡張ユニット120の種別に応じた回路データ201を保持しておく。システム起動時に、主ユニット110は、各機能拡張ユニット120の種別に応じた回路データ201を転送する。各機能拡張ユニット120は、主ユニット110から転送された回路データ201をロード装置122からFPGA121に書き込む。
 本実施の形態では、機能拡張ユニット120の種別が考慮されている。即ち、主ユニット110は、個々の機能拡張ユニット120に対して個別の回路データ201を保持するのではなく、同じ種別の機能拡張ユニット120に対しては共通の回路データ201を保持する。そのため、回路データ201を効率的に管理することができる。
 また、本実施の形態では、主ユニット110が回路データ201を一元的に管理するため、各機能拡張ユニット120に回路データ201を保持するための不揮発メモリを搭載する必要がない。よって、不揮発メモリに要するコストを削減することができる。
 以上、本発明の実施の形態について説明したが、この実施の形態を部分的に実施しても構わない。例えば、この実施の形態の説明において「部」として説明するもののうち、いずれか1つのみを採用してもよいし、いくつかの任意の組み合わせを採用してもよい。なお、本発明は、この実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
 100 機能管理システム、110 主ユニット、111 不揮発メモリ、112 CPU、113 通信装置、120 機能拡張ユニット、121 FPGA、122 ロード装置、123 バッファ、124 記憶装置、125 通信装置、130 データ伝送路、140 筐体、150 外部機器、201 回路データ、202 アドレステーブル、203 プログラム、301 種別情報。

Claims (7)

  1.  プログラマブルロジックデバイスと、前記プログラマブルロジックデバイスの内部回路を構成するための回路データを前記プログラマブルロジックデバイスにロードするロード装置と、機能ユニット自身の種別が複数の種別のいずれに該当するかを示す種別情報を記憶する記憶装置とを有する機能ユニットと、
     前記複数の種別のそれぞれに対応する個別の回路データを予め格納する不揮発メモリと、前記機能ユニットから前記記憶装置に記憶された種別情報を受信し、受信した種別情報で示される種別に対応する回路データを前記不揮発メモリから読み取り、読み取った回路データを前記機能ユニットに送信して前記ロード装置から前記プログラマブルロジックデバイスにロードさせるプロセッサとを有する管理ユニットと
    を備えることを特徴とする機能管理システム。
  2.  前記管理ユニットは、前記複数の種別と、前記不揮発メモリにて前記個別の回路データが格納されたアドレスとの対応関係を定義するテーブルを保持し、
     前記管理ユニットの前記プロセッサは、受信した種別情報で示される種別に対応するアドレスを前記テーブルから抽出し、抽出したアドレスに格納された回路データを読み取ることを特徴とする請求項1の機能管理システム。
  3.  前記機能ユニットは、前記管理ユニットの前記プロセッサから送信される回路データを一旦格納するためのバッファを有し、
     前記管理ユニットの前記プロセッサは、読み取った回路データを複数回に分けて前記機能ユニットに送信し、当該複数回のそれぞれで前記機能ユニットの前記バッファに送信データサイズ分の空きがあることを確認してからデータ送信を開始することを特徴とする請求項1又は2の機能管理システム。
  4.  前記管理ユニットを収容するとともに、前記機能ユニットとして2つ以上の機能ユニットを着脱自在に収容する筐体
    をさらに備えることを特徴とする請求項1から3のいずれかの機能管理システム。
  5.  前記機能ユニットの前記プログラマブルロジックデバイスは、外部の産業用機器に接続され、前記内部回路の動作によって当該機器を制御することを特徴とする請求項1から4のいずれかの機能管理システム。
  6.  前記機能ユニットは、前記プログラマブルロジックデバイスとしてフィールドプログラマブルゲートアレイを有することを特徴とする請求項1から5のいずれかの機能管理システム。
  7.  プログラマブルロジックデバイスと、前記プログラマブルロジックデバイスを構成するための回路データを前記プログラマブルロジックデバイスにロードするロード装置とを有する機能ユニットが、当該機能ユニット自身の種別が複数の種別のいずれに該当するかを示す種別情報を送信し、
     前記複数の種別のそれぞれに対応する個別の回路データを予め格納する不揮発メモリを有する管理ユニットが、前記機能ユニットから送信された種別情報を受信し、受信した種別情報で示される種別に対応する回路データを前記不揮発メモリから読み取り、読み取った回路データを前記機能ユニットに送信し、
     前記機能ユニットが、前記管理ユニットから送信された回路データを受信し、受信した回路データを前記ロード装置から前記プログラマブルロジックデバイスにロードすることを特徴とする機能管理方法。
PCT/JP2014/064859 2014-06-04 2014-06-04 機能管理システム及び機能管理方法 WO2015186210A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2014/064859 WO2015186210A1 (ja) 2014-06-04 2014-06-04 機能管理システム及び機能管理方法
TW103125794A TW201546584A (zh) 2014-06-04 2014-07-29 機器功能管理系統以及機器功能管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/064859 WO2015186210A1 (ja) 2014-06-04 2014-06-04 機能管理システム及び機能管理方法

Publications (1)

Publication Number Publication Date
WO2015186210A1 true WO2015186210A1 (ja) 2015-12-10

Family

ID=54766307

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/064859 WO2015186210A1 (ja) 2014-06-04 2014-06-04 機能管理システム及び機能管理方法

Country Status (2)

Country Link
TW (1) TW201546584A (ja)
WO (1) WO2015186210A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000201278A (ja) * 1999-01-07 2000-07-18 Fuji Xerox Co Ltd 色変換装置
JP2005136481A (ja) * 2003-10-28 2005-05-26 Fujitsu Ltd 伝送システム
JP2006262227A (ja) * 2005-03-18 2006-09-28 Konica Minolta Holdings Inc ハードウェアコンフィグレーション装置
JP2013005080A (ja) * 2011-06-14 2013-01-07 Nippon Telegr & Teleph Corp <Ntt> ルータおよび転送方法
JP2013025416A (ja) * 2011-07-15 2013-02-04 Ricoh Co Ltd データ転送装置及び画像形成システム
JP2013105463A (ja) * 2011-11-16 2013-05-30 Fujitsu Ltd プラグインカード収容装置及びプラグインカード制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000201278A (ja) * 1999-01-07 2000-07-18 Fuji Xerox Co Ltd 色変換装置
JP2005136481A (ja) * 2003-10-28 2005-05-26 Fujitsu Ltd 伝送システム
JP2006262227A (ja) * 2005-03-18 2006-09-28 Konica Minolta Holdings Inc ハードウェアコンフィグレーション装置
JP2013005080A (ja) * 2011-06-14 2013-01-07 Nippon Telegr & Teleph Corp <Ntt> ルータおよび転送方法
JP2013025416A (ja) * 2011-07-15 2013-02-04 Ricoh Co Ltd データ転送装置及び画像形成システム
JP2013105463A (ja) * 2011-11-16 2013-05-30 Fujitsu Ltd プラグインカード収容装置及びプラグインカード制御方法

Also Published As

Publication number Publication date
TW201546584A (zh) 2015-12-16

Similar Documents

Publication Publication Date Title
EP3252605B1 (en) Vehicle-mounted control device, program writing device, program generating device and program
JP6443190B2 (ja) プログラマブルロジックコントローラ、プログラマブルロジックコントローラの制御方法、及び、制御プログラム
CN111142783A (zh) 自适应支持多个协议的存储装置
US20180357193A1 (en) Computing device and operation method
JP2017069777A (ja) 通信処理装置、通信方法および通信システム
JP6520759B2 (ja) プログラマブルコントローラ、プログラマブルコントローラの制御プログラム
JP6954190B2 (ja) 制御システム、コントローラ、および制御方法
CN111026022A (zh) 可编辑逻辑控制器的硬件配置方法及相关装置
JP6477178B2 (ja) Plc制御データ生成装置、plc制御データ生成方法、及び、plc制御データ生成プログラム
WO2015186210A1 (ja) 機能管理システム及び機能管理方法
US20150066168A1 (en) Apparatus and method for updating operating system in programmable logic controller
WO2015162754A1 (ja) 制御システム、マスタ局、およびリモート局
US20170168474A1 (en) Robot control device and communication system having communication function for communicating with programmable logic controller
CN103136022A (zh) 将压缩配置映像存储在内部只读存储器上的逻辑器件
WO2020129324A1 (ja) モジュール及びこれを備える情報処理装置、並びにモジュールのプログラムデータを更新するプログラムデータ更新方法
JP2007141205A (ja) 組込型制御装置
JP2006303730A (ja) 半導体集積回路装置および半導体集積回路装置の設計装置
JP5859176B1 (ja) プログラマブルロジックコントローラ
JP2007241570A (ja) プログラマブルコントローラ間通信のための共有メモリの設定方式
JP6570462B2 (ja) 通信プロトコル変換装置
CN108496126B (zh) 用于耦联两个总线系统的设备
JP6339438B2 (ja) 産業機器制御用ネットワークシステム
JP2019068677A (ja) インターフェース装置
WO2022137355A1 (ja) 通信装置、通信装置の制御方法及び制御プログラムの記録媒体
WO2017208365A1 (ja) 制御装置

Legal Events

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

Ref document number: 14894167

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14894167

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP