WO2015163219A1 - 制御装置 - Google Patents

制御装置 Download PDF

Info

Publication number
WO2015163219A1
WO2015163219A1 PCT/JP2015/061627 JP2015061627W WO2015163219A1 WO 2015163219 A1 WO2015163219 A1 WO 2015163219A1 JP 2015061627 W JP2015061627 W JP 2015061627W WO 2015163219 A1 WO2015163219 A1 WO 2015163219A1
Authority
WO
WIPO (PCT)
Prior art keywords
variable
model
area
address
controller
Prior art date
Application number
PCT/JP2015/061627
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 US14/915,744 priority Critical patent/US20160216705A1/en
Priority to CN201580001381.8A priority patent/CN105659210A/zh
Publication of WO2015163219A1 publication Critical patent/WO2015163219A1/ja

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/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme 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/054Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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/11Plc I-O input output
    • G05B2219/1105I-O
    • 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/14073Real time modeling of plc behaviour, display pictogram of system

Definitions

  • Embodiments of the present invention relate to a control device.
  • a CPU (Central Processing Unit) module of a control device such as a controller or PLC (Programmable Logic Controller) is an I / O for controlling an external device such as an I (Input) / O (Output) module connected to the CPU module.
  • a storage area capable of storing the O variable is allocated to the storage unit.
  • control device equipped with the storage units having different capacities is a different model. Accordingly, software such as firmware installed in the control device also has a memory management method (for example, I / O in the storage unit depending on the capacity of the storage unit provided in the control device, even if the processing function executed by the software is the same. Since the allocation of storage areas in which variables can be stored is different, different software is manufactured and managed for each type of control device.
  • the control device of the embodiment is a control device that controls an external device, and includes a first storage unit, a second storage unit, and a control unit.
  • the first storage unit has a first area capable of storing first information for controlling an external device.
  • the second storage unit stores software capable of executing access to the first area.
  • the control unit executes software stored in the second storage unit.
  • the software identifies the model of the control device, and associates the model of the control device with the identified model in a database that stores the model of the control device and the address of the first area in the first storage unit included in the control device of the model.
  • the first area is accessed according to the stored address.
  • FIG. 1 is a block diagram illustrating a configuration of a controller according to the first embodiment.
  • FIG. 2A is a diagram for explaining an access operation to the I / O variable area by firmware included in the controller according to the first embodiment.
  • FIG. 2B is a diagram for explaining an access operation to the I / O variable area by firmware included in the controller according to the first embodiment.
  • FIG. 3 is a flowchart illustrating a flow of an access operation to the I / O variable area by the firmware included in the controller according to the first embodiment.
  • FIG. 4A is a diagram for explaining an access operation to the I / O variable area by firmware included in the controller according to the second embodiment.
  • FIG. 4B is a diagram for explaining an access operation to the I / O variable area by firmware included in the controller according to the second embodiment.
  • FIG. 5A is a diagram for explaining an access operation to the I / O variable area by firmware included in the controller according to the third embodiment.
  • FIG. 5B is a diagram for explaining an access operation to the I / O variable area by firmware included in the controller according to the third embodiment.
  • FIG. 1 is a block diagram illustrating a configuration of a controller according to the first embodiment.
  • the controller 1 is an example of a control device that controls an I / O module 3 (an example of an external device) to be controlled.
  • a RAM Random Access Memory
  • a CPU Central Processing Unit
  • communication I / F 103 communication I / F 103
  • ROM Read Only Memory
  • the communication I / F 103 is connected to a host device such as a PC (Personal Computer) 2 having an engineering tool 201 that controls the entire information processing system including the controller 1 via a network such as Ethernet (registered trademark). It is an interface that can communicate with the host device.
  • a host device such as a PC (Personal Computer) 2 having an engineering tool 201 that controls the entire information processing system including the controller 1 via a network such as Ethernet (registered trademark). It is an interface that can communicate with the host device.
  • the RAM 101 functions as a work area for a CPU module 102 described later.
  • the RAM 101 (an example of a first storage unit) stores an I / O variable area 101a (FIG. 2A) that can store an I / O variable (an example of first information) for controlling the I / O module 3.
  • FIG. 2B an example of the first region).
  • the RAM 101 stores a variable area 101b (see FIGS. 2A and 2B) that can store variables other than I / O variables and an address of the I / O variable area 101a (hereinafter referred to as an I / O variable address).
  • Variable pointer area 101c (see FIGS. 2A and 2B, an example of a predetermined second area) and the like.
  • the ROM 104 (an example of the second storage unit) is executed by a CPU module 102 described later, and accesses the I / O variable area 101a (see FIGS. 2A and 2B) of the RAM 101 (for example, to the I / O variable area 101a).
  • Various firmware such as firmware 104a (see FIGS. 2A and 2B, examples of software) and OS (Operating System) capable of executing I / O variable writing, I / O variable reading from the I / O variable area 101a, etc. Memorize the program.
  • the ROM 104 also stores model information (for example, model name) that can identify the model of the controller 1, and an I / O variable area 101a (see FIG. 2A and FIG. 2A) in the RAM 101 of the controller 1 of the model identified by the model information.
  • model information for example, model name
  • I / O variable area 101a see FIG. 2A and FIG. 2A
  • An address table 104b (see FIGS. 2A and 2B, an example of a database) that associates I / O variable addresses, which are addresses of FIG. 2B), is stored.
  • the CPU module 102 controls the entire controller 1. Specifically, the CPU module 102 controls each unit such as the RAM 101 and the ROM 104 connected via a bus.
  • a plurality of I / O modules 3 controlled by the controller 1 are connected to the CPU module 102.
  • the CPU module 102 executes the firmware 104a (see FIGS. 2A and 2B) stored in the ROM 104, whereby the I / O variable area 101a (see FIGS. 2A and 2B) of the RAM 101 is included. ) Access.
  • FIGS. 2A and 2B are diagrams for explaining the access operation to the I / O variable area by the firmware included in the controller according to the first embodiment.
  • the RAM 101 mounted on the controller 1 depends on the model of the controller 1 (the number of I / O modules that is the number of I / O modules 3 connected to the CPU module 102, in other words, the number of external devices controlled by the controller 1).
  • the capacity is different. For example, when the number of I / O modules controlled by the controller 1 of the model A is “1” and the number of I / O modules controlled by the controller 1 of the model B is “5”, the capacity of the RAM 101 of the model A is As shown in FIGS. 2A and 2B, the capacity of the model B RAM 101 is smaller. Accordingly, the capacity of the I / O variable area 101a in the model A RAM 101 is also smaller than the capacity of the I / O variable area 101a in the model B RAM 101, as shown in FIGS. 2A and 2B.
  • the firmware 104a executed by the CPU module 102 identifies the model of the controller 1 on which the firmware 104a is mounted, and the identified information is stored in the address table 104b stored in the ROM 104.
  • the I / O variable area 101a of the RAM 101 is accessed according to the I / O variable address stored in association with the model information of the model.
  • the controller 1 access to the I / O variable area 101a different for each model can be realized without designing different firmware 104a for each model of the controller 1. Even when the model of the controller 1 is different, the access to the I / O variable area 101a can be executed by the same firmware 104a.
  • the controller 1 when various changes such as function addition or function correction are performed on the firmware 104a of the controller 1 of different models, the same applies to the firmware 104a of the controller 1 of each model. Since it is sufficient to make changes, it is possible to reduce change mistakes and workload when making various changes to the firmware 104a, and to unify management of the firmware 104a.
  • FIG. 3 is a flowchart illustrating a flow of an access operation to the I / O variable area by the firmware included in the controller according to the first embodiment.
  • the CPU module 102 executes the firmware 104a stored in the ROM 104 (step S301).
  • the firmware 104a identifies the model of the controller 1 based on a signal (hereinafter, referred to as a hardware signal) output from hardware included in the controller 1 when the controller 1 is activated (step S302).
  • the firmware 104a specifies the model of the controller 1 based on the hardware signal.
  • the present invention is not limited to this.
  • the operation unit or the communication I / F 103 (not shown) provided in the controller 1 is included.
  • the model of the controller 1 may be specified based on the model information input from the PC 2 via the PC 2.
  • the firmware 104a prior to accessing the I / O variable area 101a, from the address table 104b stored in the ROM 104, the I associated with the model specified in step S302.
  • the / O variable address is read (step S303).
  • the firmware 104a reads the I / O variable address from the storage unit (the address table 104b stored in the ROM 104) that the controller 1 itself has.
  • the present invention is not limited to this. It is also possible to read out the I / O variable address from the address table 104b stored in the external storage unit included in.
  • the firmware 104a writes the read I / O variable address in the variable pointer area 101c (an example of a predetermined second area) in the RAM 101.
  • the I / O variable area 101a can be accessed using the I / O variable address stored in the variable pointer area 101c. Since it is not necessary to read the I / O variable address from the address table 104b every time the access to the 101a is performed, the processing load due to the access to the I / O variable area 101a can be reduced.
  • the firmware 104a uses an I / O variable address: address A associated with the model A from the address table 104b. read out. Then, the firmware 104 a writes the read I / O variable address: address A into the variable pointer area 101 c of the RAM 101 as shown in FIG. 2A.
  • the firmware 104a uses an I / O variable address: address B associated with the model B from the address table 104b. read out. Then, the firmware 104 a writes the read I / O variable address: address B into the variable pointer area 101 c of the RAM 101 as shown in FIG. 2B.
  • the firmware 104 a when accessing the I / O variable area 101 a to control the external device connected to the I / O module 3, the firmware 104 a first accesses the variable pointer area 101 c of the RAM 101. Read the I / O variable address. Then, the firmware 104a accesses the I / O variable area 101a according to the read I / O variable address (step S304). That is, by accessing the I / O variable area 101a using the I / O variable address read from the address table 104b, different I / Os for each model can be obtained without designing different firmware 104a for each model of the controller 1. Since access to the O variable area 101a can be realized, access to the I / O variable area 101a can be executed by the same firmware 104a even when the model of the controller 1 is different.
  • the firmware 104a of the model A accesses the variable pointer area 101c of the RAM 101, and reads the I / O variable address: address A. Then, the firmware 104a accesses the I / O variable area 101a according to the read I / O variable address: address A.
  • the model 104 firmware 104a accesses the variable pointer area 101c of the RAM 101 and reads the I / O variable address: address B. Then, the firmware 104a accesses the I / O variable area 101a according to the read I / O variable address: address B.
  • the firmware 104a accesses the I / O variable area 101a using the I / O variable address previously written in the variable pointer area 101c when the controller 1 is started, but the I / O variable area 101a is read from the ROM 104a.
  • the present invention is not limited to this as long as the I / O variable area 101a is accessed using the / O variable address.
  • the firmware 104a reads an I / O variable address from the ROM 104 and uses the read I / O variable address to access the I / O variable area 101a. good.
  • access to the I / O variable area 101a different for each model can be realized without designing different firmware 104a for each model of the controller 1. Therefore, even when the model of the controller 1 is different, access to the I / O variable area 101a can be executed by the same firmware 104a.
  • the RAM has a plurality of I / O variable areas provided for each type of I / O variable, and the address table is associated with the model of the controller, and each type of I / O variable.
  • the address of the corresponding I / O variable area is stored, the firmware is stored in the address table in association with the model of the controller itself, and at least one of read / write is performed by accessing the I / O variable area
  • access to the I / O variable area is executed according to the I / O variable address corresponding to the type of the O variable.
  • description of the same parts as those in the first embodiment is omitted.
  • FIG. 4A and FIG. 4B are diagrams for explaining the access operation to the I / O variable area by the firmware included in the controller according to the second embodiment.
  • the RAM 401 included in the controller 4 according to the present embodiment includes I / O variable types (for example, I / O variable data format, I / O variables).
  • I / O variable types for example, I / O variable data format, I / O variables.
  • the RAM 401 has a plurality (two in this embodiment) of variable pointer areas 401c and 401d provided for each I / O variable type as shown in FIGS. 4A and 4B. is doing.
  • the ROM 104 stores a plurality (two in this embodiment) of address tables 402 and 403 for each I / O variable type.
  • the address table 402 stores model information that can identify the model of the controller 4 and the address of the I / O variable area 401a corresponding to the I / O variable type X.
  • the address table 403 stores model information that can identify the model of the controller 4 and the address of the I / O variable area 401 b corresponding to the I / O variable type Y. That is, the address tables 402 and 403 function as an example of a database that stores addresses of I / O variable areas corresponding to each I / O variable type in association with the model of the controller 4.
  • the firmware 404 after starting the activation process of the controller 4, prior to accessing the I / O variable areas 401a and 401b, identifies the specified model and the address table 402 and 403 stored in the ROM 104, respectively. Read the I / O variable address of each associated I / O variable type. Next, the firmware 404 writes the read I / O variable address of each I / O variable type in the variable pointer areas 401c and 401d provided for each I / O variable type.
  • the firmware 404 when the controller 4 specified based on the hardware signal is the model A and the I / O variable that performs at least one of writing and reading is the I / O variable type X, the firmware 404 is as shown in FIG. 4A. Then, the I / O variable address: address AX associated with the model A is read from the address table 402 corresponding to the I / O variable type X. Then, the firmware 404 writes the read I / O variable address: address AX in the variable pointer area 401c corresponding to the I / O variable type X, as shown in FIG. 4A.
  • the firmware 404 is as shown in FIG. 4A. Then, from the address table 403 corresponding to the I / O variable type Y, the I / O variable address: address AY associated with the model A is read. Then, the firmware 404 writes the read I / O variable address: address AY in the variable pointer area 401d corresponding to the I / O variable type Y, as shown in FIG. 4A.
  • the firmware 404 when the controller 4 specified based on the hardware signal is the model B and the I / O variable for performing at least one of writing and reading is the I / O variable type X, the firmware 404 is as shown in FIG. 4B. Then, I / O variable address: address BX associated with model B is read from address table 402 corresponding to I / O variable type X. Then, the firmware 404 writes the read I / O variable address: address BX in the variable pointer area 401c corresponding to the I / O variable type X as shown in FIG. 4B.
  • the firmware 404 is as shown in FIG. 4B.
  • the I / O variable address: address BY associated with the model B is read from the address table 403 corresponding to the I / O variable type Y.
  • the firmware 404 writes the read I / O variable address: address BY to the variable pointer area 401d corresponding to the I / O variable type Y as shown in FIG. 4B.
  • the firmware 404 accesses the I / O variable areas 401a and 401b, the variable pointer areas 401c and 401d corresponding to the I / O variable type of the I / O variable that executes at least one of writing and reading by the access.
  • the firmware 404 reads from the address tables 402 and 403 the I / O variable address corresponding to the I / O variable type of the I / O variable that executes at least one of writing and reading. Thereafter, the firmware 404 executes access to the I / O variable areas 401a and 401b based on the read I / O variable address.
  • the first embodiment In the same manner as described above, access to the I / O variable areas 401a and 401b different for each model can be realized without designing different firmware 404 for each model of the controller 4, so that the model of the controller 4 is different. However, access to the I / O variable areas 401a and 401b can be executed by the same firmware 404.
  • various changes such as function addition and function correction are performed on the firmware 404 of the controller 4 of a different model, it is only necessary to make similar changes to the firmware 404 of the controller 4 of each model. Change mistakes and the amount of work when making changes can be reduced, and management of the firmware 404 can be unified.
  • I / O module registration information (an example of second information) that enables identification of a controller model is received from a host device, and the controller model is determined based on the received I / O module registration information. It is an example to identify.
  • description of the same parts as those in the first and second embodiments is omitted.
  • FIG. 5A and FIG. 5B are diagrams for explaining an access operation to the I / O variable area by the firmware included in the controller according to the third embodiment.
  • the ROM 104 included in the controller 5 according to the present embodiment has an address table 502 that associates model information that can identify the model of the controller 5 with the addresses of the I / O variable areas 401a and 401b corresponding to each I / O variable type. Is remembered.
  • the firmware 501 starts from the PC 2 (an example of a host device) via the communication I / F 103 prior to the access to the I / O variable areas 401a and 401b after starting the startup process of the controller 5.
  • I / O module registration information I that enables identification of the model of the controller 5 is received.
  • the engineering tool 201 of the PC 2 transmits I / O module registration information I to the controller 5 when detecting the start of the startup process of the controller 5.
  • the I / O module registration information I is information that makes it possible to identify the model of the controller 5 that has detected the start of the startup process.
  • the I / O module registration information I is used to control the I / O module 3. This is the magnitude relationship between the number of I / O variables of the / O variable type X and the number of I / O variables of the I / O variable type Y.
  • the firmware 501 specifies the model of the controller 5 based on the I / O module registration information I received from the PC 2. For example, the firmware 501 indicates that the received I / O module registration information I indicates that the number of I / O variables of the I / O variable type X is smaller than the number of I / O variables of the I / O variable type Y. In the case of the representation, it is specified that the model of the controller 5 is model A as shown in FIG.
  • the firmware 501 reads I / O variable addresses: addresses AX and AY associated with the identified model A from the address table 502 stored in the ROM 104. Then, as shown in FIG. 5A, the firmware 501 converts the read I / O variable address: address AX, AY corresponding to each I / O variable type into a variable pointer area 401c, corresponding to each I / O variable type. Write to 401d.
  • the firmware 501 accesses the I / O variable area 401a in which the I / O variable of the I / O variable type X is stored, the I / O variable stored in the variable pointer area 401c as shown in FIG. 5A.
  • Variable address The I / O variable area 401a is accessed based on the address AX.
  • the firmware 501 accesses the I / O variable stored in the variable pointer area 401d as shown in FIG. 5A.
  • the I / O variable area 401b is accessed based on the address AY.
  • the firmware 501 confirms that the received I / O module registration information I indicates that the number of I / O variables of the I / O variable type X is larger than the number of I / O variables of the I / O variable type Y. If it is represented, it is specified that the model of the controller 5 is model B as shown in FIG.
  • the firmware 501 reads I / O variable addresses: addresses BX and BY associated with the identified model B from the address table 502 stored in the ROM 104. Then, as shown in FIG. 5B, the firmware 501 converts the read I / O variable address corresponding to each I / O variable type: address BX, BY into the variable pointer area 401c corresponding to each I / O variable type. Write to 401d.
  • the firmware 501 is based on the I / O variable address: address BX stored in the variable pointer area 401c.
  • the I / O variable area 401a is accessed.
  • the firmware 501 is based on the I / O variable address: address BY stored in the variable pointer area 401d. Then, the I / O variable area 401b is accessed.
  • the controller 5 when the model of the controller 5 is specified based on the I / O module registration information I received from the PC 2, as in the first embodiment, Since it is possible to access different I / O variable areas 401a and 401b for each model without designing different firmware 501 for each model of the controller 5, the same firmware can be used even when the model of the controller 5 is different. Access to the I / O variable areas 401a and 401b can be executed by 501. In addition, when various changes such as function addition and function correction are performed on the firmware 501 of the controller 5 of a different model, the same change may be performed on the firmware 501 of the controller 5 of each model. Change mistakes and the amount of work when changing can be reduced, and management of the firmware 501 can be unified.
  • access to the I / O variable area can be executed by the same firmware between controller models.
  • the programs executed by the controllers 1, 4 and 5 of this embodiment are provided by being incorporated in advance in the ROM 104 or the like, but can be installed in an installable or executable format file such as a CD-ROM, flexible disk ( (FD), CD-R, DVD (Digital Versatile Disk) and the like may be provided by being recorded on a computer-readable recording medium.
  • an installable or executable format file such as a CD-ROM, flexible disk ( (FD), CD-R, DVD (Digital Versatile Disk) and the like may be provided by being recorded on a computer-readable recording medium.
  • the program executed by the controllers 1, 4 and 5 of this embodiment may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network.
  • the program executed by the controllers 1, 4 and 5 of the present embodiment may be provided or distributed via a network such as the Internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

 実施形態の制御装置は、外部機器を制御する制御装置であって、第1記憶部と、第2記憶部と、制御部と、を備える。第1記憶部は、外部機器を制御するための第1情報を記憶可能な第1領域を有する。第2記憶部は、第1領域に対するアクセスを実行可能なソフトウェアを記憶する。制御部は、第2記憶部に記憶されたソフトウェアを実行する。ソフトウェアは、制御装置の機種を特定し、制御装置の機種と当該機種の制御装置が備える第1記憶部における第1領域のアドレスとを対応付けて記憶するデータベースにおいて、当該特定した機種と対応付けて記憶されるアドレスに従って第1領域に対するアクセスを実行する。

Description

制御装置
 本発明の実施形態は、制御装置に関する。
 コントローラやPLC(Programmable Logic Controller)等の制御装置のCPU(Central Processing Unit)モジュールは、当該CPUモジュールに接続されたI(Input)/O(Output)モジュール等の外部機器を制御するためのI/O変数を記憶可能な記憶領域を記憶部に割り付けている。
特開2013-142933号公報
 ところで、制御装置によって制御可能な外部機器の数は、当該制御装置が装備している記憶部の容量によって異なるため、容量が異なる記憶部を装備する制御装置は、別機種となっている。それに伴い、制御装置に装備されるファームウェア等のソフトウェアも、当該ソフトウェアにより実行される処理機能が同じでも、制御装置が装備する記憶部の容量によってメモリ管理方法(例えば、記憶部における、I/O変数を記憶可能な記憶領域の割り付け等)が異なるため、制御装置の機種毎に別のソフトウェアを製造・管理している。
 また、従来技術においては、機種が異なる制御装置に搭載された処理機能が同じ2つのソフトウェアに対して、機能の追加や機能の修正等の変更を行う場合、当該2つのソフトウェアそれぞれに変更を行う必要があるため、当該2つのソフトウェアそれぞれに対する変更に誤って差異が生じる可能性があり、同じ変更作業を2度行う必要もありその作業量が増えるので、ソフトウェアの管理が複雑になる。
 実施形態の制御装置は、外部機器を制御する制御装置であって、第1記憶部と、第2記憶部と、制御部と、を備える。第1記憶部は、外部機器を制御するための第1情報を記憶可能な第1領域を有する。第2記憶部は、第1領域に対するアクセスを実行可能なソフトウェアを記憶する。制御部は、第2記憶部に記憶されたソフトウェアを実行する。ソフトウェアは、制御装置の機種を特定し、制御装置の機種と当該機種の制御装置が備える第1記憶部における第1領域のアドレスとを対応付けて記憶するデータベースにおいて、当該特定した機種と対応付けて記憶されるアドレスに従って第1領域に対するアクセスを実行する。
図1は、第1の実施形態にかかるコントローラの構成を示すブロック図である。 図2Aは、第1の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。 図2Bは、第1の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。 図3は、第1の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作の流れを示すフローチャートである。 図4Aは、第2の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。 図4Bは、第2の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。 図5Aは、第3の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。 図5Bは、第3の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。
 以下、添付の図面を用いて、本実施形態にかかる制御装置を適用したコントローラについて説明する。
(第1の実施形態)
 図1は、第1の実施形態にかかるコントローラの構成を示すブロック図である。本実施形態では、コントローラ1は、制御対象のI/Oモジュール3(外部機器の一例)を制御する制御装置の一例であり、図1に示すように、RAM(Random Access Memory)101と、CPU(Central Processing Unit)モジュール102と、通信I/F103と、ROM(Read Only Memory)104と、を備えている。
 通信I/F103は、イーサーネット(登録商標)等のネットワークを介して、コントローラ1を含む情報処理システム全体を制御するエンジニアリングツール201を備えたPC(Personal Computer)2等の上位機器と接続され、当該上位機器と通信可能なインタフェースである。
 RAM101は、後述するCPUモジュール102の作業領域として機能する。具体的には、RAM101(第1記憶部の一例)は、I/Oモジュール3を制御するためのI/O変数(第1情報の一例)を記憶可能なI/O変数領域101a(図2Aおよび図2B参照、第1領域の一例)を有する。本実施形態では、RAM101は、I/O変数以外の他の変数を記憶可能な変数領域101b(図2Aおよび図2B参照)やI/O変数領域101aのアドレス(以下、I/O変数アドレスと言う)を記憶可能な変数ポインタ領域101c(図2Aおよび図2B参照、所定の第2領域の一例)等を有している。
 ROM104(第2記憶部の一例)は、後述するCPUモジュール102により実行され、RAM101が有するI/O変数領域101a(図2Aおよび図2B参照)へアクセス(例えば、I/O変数領域101aへのI/O変数の書き込み、I/O変数領域101aからのI/O変数の読み出しなど)を実行可能なファームウェア104a(図2Aおよび図2B参照、ソフトウェアの一例)やOS(Operating System)等の各種プログラムを記憶する。
 また、ROM104は、コントローラ1の機種を識別可能とする機種情報(例えば、機種名など)と、当該機種情報により識別される機種のコントローラ1が有するRAM101におけるI/O変数領域101a(図2Aおよび図2B参照)のアドレスであるI/O変数アドレスと、を対応付けるアドレス表104b(図2Aおよび図2B参照、データベースの一例)を記憶する。
 CPUモジュール102は、コントローラ1全体を制御する。具体的には、CPUモジュール102は、バスを介して接続されているRAM101、ROM104等の各部を制御する。
 また、CPUモジュール102には、コントローラ1が制御するI/Oモジュール3が複数接続されている。そして、CPUモジュール102(制御部の一例)は、ROM104に記憶されたファームウェア104a(図2Aおよび図2B参照)を実行することにより、RAM101が有するI/O変数領域101a(図2Aおよび図2B参照)へのアクセスを実行する。
 ここで、図2Aおよび図2Bを用いて、本実施形態にかかるコントローラ1が備えるファームウェア104aによるI/O変数領域101aへのアクセス動作について説明する。図2Aおよび図2Bは、第1の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。
 コントローラ1に搭載されるRAM101は、コントローラ1の機種(CPUモジュール102に接続されたI/Oモジュール3の数であるI/Oモジュール数、言い換えると、コントローラ1により制御する外部機器の数)によってその容量が異なる。例えば、機種Aのコントローラ1により制御するI/Oモジュール数が「1」で、機種Bのコントローラ1により制御するI/Oモジュール数が「5」である場合、機種AのRAM101の容量は、図2Aおよび図2Bに示すように、機種BのRAM101の容量より少ない。それに伴い、機種AのRAM101におけるI/O変数領域101aの容量も、図2Aおよび図2Bに示すように、機種BのRAM101におけるI/O変数領域101aの容量よりも少なくなる。
 しかしながら、機種AのCPUモジュール102および機種BのCPUモジュール102それぞれの処理機能は同一であるため、RAM101におけるI/O変数以外の他の変数を記憶可能な変数領域101bの容量およびアドレスは、図2Aおよび図2Bに示すように、機種Aと機種Bとの間において同一となる。そのため、機種Aおよび機種BそれぞれのI/O変数領域101aを、図2Aおよび図2Bに示すように、RAM101における同じ領域に設けることはできない。
 従来のコントローラにおいては、コントローラの機種毎に異なるファームウェアに設計することにより、機種毎に異なるI/O変数領域へのアクセスを実現していたが、コントローラの機種毎に異なるファームウェアを設計しなければならない。
 また、従来のコントローラにおいては、機種が異なるコントローラに搭載されかつ処理機能が同じ2つのファームウェアに対して機能の追加や機能の修正等の変更を行う場合、当該2つのファームウェアそれぞれに変更を行う必要があるため、当該2つのファームウェアそれぞれに対する変更に誤って差異が生じる可能性があり、同じ変更作業を2度行う必要もありその作業量が増えるので、ファームウェアの管理が複雑になる。
 そこで、本実施形態にかかるコントローラ1では、CPUモジュール102により実行されるファームウェア104aが、当該ファームウェア104aが搭載されたコントローラ1の機種を特定し、ROM104に記憶されたアドレス表104bにおいて、当該特定した機種の機種情報と対応付けて記憶されたI/O変数アドレスに従って、RAM101が有するI/O変数領域101aにアクセスする。
 これにより、本実施形態にかかるコントローラ1によれば、コントローラ1の機種毎に異なるファームウェア104aを設計しなくても、機種毎に異なるI/O変数領域101aへのアクセスを実現することができるので、コントローラ1の機種が異なる場合でも同一のファームウェア104aによってI/O変数領域101aへのアクセスを実行することができる。
 また、本実施形態にかかるコントローラ1によれば、異なる機種のコントローラ1のファームウェア104aに機能追加や機能修正等の各種の変更を行う場合に、各機種のコントローラ1のファームウェア104aに対して同様の変更を行えば良いので、ファームウェア104aに対する各種変更を行う場合の変更ミスや作業量が低減でき、ファームウェア104aの管理を統一化することができる。
 次に、図2A、図2Bおよび図3を用いて、本実施形態にかかるコントローラ1におけるI/O変数領域101aへのアクセス動作について説明する。図3は、第1の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作の流れを示すフローチャートである。
 本実施形態では、CPUモジュール102は、コントローラ1の起動処理が開始されると、ROM104に記憶されたファームウェア104aを実行する(ステップS301)。ファームウェア104aは、コントローラ1の起動時に当該コントローラ1が備えるハードウェアから出力される信号(以下、ハードウェア信号と言う)に基づいて、コントローラ1の機種を特定する(ステップS302)。
 本実施形態では、ファームウェア104aは、ハードウェア信号に基づいてコントローラ1の機種を特定しているが、これに限定するものではなく、例えば、コントローラ1が備える図示しない操作部または通信I/F103を介してPC2から入力された機種情報に基づいて、コントローラ1の機種を特定しても良い。
 次いで、ファームウェア104aは、コントローラ1の起動処理の開始後、I/O変数領域101aへのアクセスに先立って、ROM104に記憶されたアドレス表104bから、ステップS302において特定した機種と対応付けられたI/O変数アドレスを読み出す(ステップS303)。本実施形態では、ファームウェア104aは、コントローラ1自身が有する記憶部(ROM104に記憶されたアドレス表104b)からI/O変数アドレスを読み出しているが、これに限定するものではなく、例えば、PC2等が備える外部記憶部に記憶されたアドレス表104bからI/O変数アドレスを読み出すようにすることも可能である。
 そして、ファームウェア104aは、読み出したI/O変数アドレスを、RAM101における変数ポインタ領域101c(所定の第2領域の一例)に書き込む。これにより、I/O変数領域101aにアクセスする際に、変数ポインタ領域101cに記憶されたI/O変数アドレスを用いて、I/O変数領域101aにアクセスすることができ、I/O変数領域101aへアクセスする度にアドレス表104bからI/O変数アドレスを読み出す必要がないので、I/O変数領域101aのアクセスによる処理負荷を軽減することができる。
 例えば、ファームウェア104aは、図2Aに示すように、ハードウェア信号に基づいて特定した機種が機種Aである場合、アドレス表104bから、機種Aと対応付けられたI/O変数アドレス:アドレスAを読み出す。そして、ファームウェア104aは、図2Aに示すように、読み出したI/O変数アドレス:アドレスAを、RAM101の変数ポインタ領域101cに書き込む。
 一方、ファームウェア104aは、図2Bに示すように、ハードウェア信号に基づいて特定した機種が機種Bである場合、アドレス表104bから、機種Bと対応付けられたI/O変数アドレス:アドレスBを読み出す。そして、ファームウェア104aは、図2Bに示すように、読み出したI/O変数アドレス:アドレスBを、RAM101の変数ポインタ領域101cに書き込む。
 図3に戻り、その後、I/Oモジュール3に接続された外部機器を制御するためにI/O変数領域101aにアクセスする場合、ファームウェア104aは、まず、RAM101の変数ポインタ領域101cにアクセスして、I/O変数アドレスを読み出す。そして、ファームウェア104aは、読み出したI/O変数アドレスに従って、I/O変数領域101aにアクセスする(ステップS304)。すなわち、アドレス表104bから読み出したI/O変数アドレスを用いてI/O変数領域101aにアクセスすることにより、コントローラ1の機種毎に異なるファームウェア104aを設計しなくても、機種毎に異なるI/O変数領域101aへのアクセスを実現することができるので、コントローラ1の機種が異なる場合でも同一のファームウェア104aによってI/O変数領域101aへのアクセスを実行することができる。
 例えば、機種Aのファームウェア104aは、図2Aに示すように、RAM101の変数ポインタ領域101cにアクセスして、I/O変数アドレス:アドレスAを読み出す。そして、ファームウェア104aは、読み出したI/O変数アドレス:アドレスAに従って、I/O変数領域101aにアクセスする。一方、機種Bのファームウェア104aは、図2Bに示すように、RAM101の変数ポインタ領域101cにアクセスして、I/O変数アドレス:アドレスBを読み出す。そして、ファームウェア104aは、読み出したI/O変数アドレス:アドレスBに従って、I/O変数領域101aにアクセスする。
 本実施形態では、ファームウェア104aは、コントローラ1の起動時に予め変数ポインタ領域101cに書き込まれたI/O変数アドレスを用いて、I/O変数領域101aにアクセスしているが、ROM104aから読み出したI/O変数アドレスを用いて、I/O変数領域101aにアクセスするものであれば、これに限定するものではない。例えば、ファームウェア104aは、I/O変数領域101aにアクセスする際に、ROM104からI/O変数アドレスを読み出し、当該読み出したI/O変数アドレスを用いてI/O変数領域101aにアクセスしても良い。
 このように、第1の実施形態にかかるコントローラ1によれば、コントローラ1の機種毎に異なるファームウェア104aを設計しなくても、機種毎に異なるI/O変数領域101aへのアクセスを実現することができるので、コントローラ1の機種が異なる場合でも同一のファームウェア104aによってI/O変数領域101aへのアクセスを実行することができる。
(第2の実施形態)
 本実施形態は、RAMが、I/O変数の種類毎に設けられた複数のI/O変数領域を有し、アドレス表が、コントローラの機種と対応付けて、I/O変数の各種類に対応するI/O変数領域のアドレスを記憶し、ファームウェアが、アドレス表において、コントローラ自身の機種と対応付けて記憶されかつI/O変数領域へのアクセスによって読み出しまたは書き込みの少なくとも一方を行うI/O変数の種類に対応するI/O変数アドレスに従ってI/O変数領域へのアクセスを実行する例である。以下の説明では、第1の実施形態と同様の箇所については説明を省略する。
 図4Aおよび図4Bは、第2の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。本実施形態にかかるコントローラ4が備えるRAM401は、図4Aおよび図4Bに示すように、I/O変数の種類であるI/O変数種類(例えば、I/O変数のデータフォーマット、I/O変数により制御するI/Oモジュール3など)毎に設けられた複数(本実施形態では、2つ)のI/O変数領域401a,401bを有する。また、本実施形態では、RAM401は、図4Aおよび図4Bに示すように、I/O変数種類毎に設けられた複数の(本実施形態では、2つ)の変数ポインタ領域401c,401dを有している。
 さらに、本実施形態では、ROM104は、I/O変数種類毎の複数(本実施形態では、2つ)のアドレス表402,403を記憶している。具体的には、アドレス表402は、コントローラ4の機種を識別可能とする機種情報と、I/O変数種類Xに対応するI/O変数領域401aのアドレスを記憶する。アドレス表403は、コントローラ4の機種を識別可能とする機種情報と、I/O変数種類Yに対応するI/O変数領域401bのアドレスを記憶する。すなわち、アドレス表402,403は、コントローラ4の機種に対応付けて、各I/O変数種類に対応するI/O変数領域のアドレスを記憶するデータベースの一例として機能する。
 本実施形態では、ファームウェア404は、コントローラ4の起動処理の開始後、I/O変数領域401a,401bへのアクセスに先立って、ROM104に記憶されたアドレス表402,403それぞれから、特定した機種と対応付けられた各I/O変数種類のI/O変数アドレスを読み出す。次いで、ファームウェア404は、読み出した各I/O変数種類のI/O変数アドレスを、I/O変数種類毎に設けられた変数ポインタ領域401c,401dに書き込む。
 例えば、ファームウェア404は、ハードウェア信号に基づいて特定したコントローラ4が機種Aでありかつ書き込みおよび読み出しの少なくとも一方を行うI/O変数がI/O変数種類Xである場合、図4Aに示すように、当該I/O変数種類Xに対応するアドレス表402から、機種Aと対応付けられたI/O変数アドレス:アドレスAXを読み出す。そして、ファームウェア404は、図4Aに示すように、読み出したI/O変数アドレス:アドレスAXを、I/O変数種類Xに対応する変数ポインタ領域401cに書き込む。
 一方、ファームウェア404は、ハードウェア信号に基づいて特定したコントローラ4が機種Aでありかつ書き込みおよび読み出しの少なくとも一方を行うI/O変数がI/O変数種類Yである場合、図4Aに示すように、I/O変数種類Yに対応するアドレス表403から、機種Aと対応付けられたI/O変数アドレス:アドレスAYを読み出す。そして、ファームウェア404は、図4Aに示すように、読み出したI/O変数アドレス:アドレスAYを、I/O変数種類Yに対応する変数ポインタ領域401dに書き込む。
 また、ファームウェア404は、ハードウェア信号に基づいて特定したコントローラ4が機種Bでありかつ書き込みおよび読み出しの少なくとも一方を行うI/O変数がI/O変数種類Xである場合、図4Bに示すように、I/O変数種類Xに対応するアドレス表402から、機種Bと対応付けられたI/O変数アドレス:アドレスBXを読み出す。そして、ファームウェア404は、図4Bに示すように、読み出したI/O変数アドレス:アドレスBXを、I/O変数種類Xに対応する変数ポインタ領域401cに書き込む。
 一方、ファームウェア404は、ハードウェア信号に基づいて特定したコントローラ4が機種Bでありかつ書き込みおよび読み出しの少なくとも一方を行うI/O変数がI/O変数種類Yである場合、図4Bに示すように、I/O変数種類Yに対応するアドレス表403から、機種Bと対応付けられたI/O変数アドレス:アドレスBYを読み出す。そして、ファームウェア404は、図4Bに示すように、読み出したI/O変数アドレス:アドレスBYを、I/O変数種類Yに対応する変数ポインタ領域401dに書き込む。
 そして、ファームウェア404は、I/O変数領域401a,401bにアクセスする場合、当該アクセスにより書き込みおよび読み出しの少なくとも一方を実行するI/O変数のI/O変数種類に対応する変数ポインタ領域401c,401dから、I/O変数アドレスを読み出す。すなわち、ファームウェア404は、アドレス表402,403から、書き込みおよび読み出しの少なくとも一方を実行するI/O変数のI/O変数種類に対応するI/O変数アドレスを読み出す。その後、ファームウェア404は、読み出したI/O変数アドレスに基づいて、I/O変数領域401a,401bへのアクセスを実行する。
 このように、第2の実施形態のコントローラ4によれば、RAM401が、I/O変数の種類毎に設けられた複数のI/O変数領域401a,401bを有する場合も、第1の実施形態と同様に、コントローラ4の機種毎に異なるファームウェア404を設計しなくても、機種毎に異なるI/O変数領域401a,401bへのアクセスを実現することができるので、コントローラ4の機種が異なる場合でも同一のファームウェア404によってI/O変数領域401a,401bへのアクセスを実行することができる。また、異なる機種のコントローラ4のファームウェア404に機能追加や機能修正等の各種の変更を行う場合に、各機種のコントローラ4のファームウェア404に対して同様の変更を行えば良いので、ファームウェア404に対する各種変更を行う場合の変更ミスや作業量が低減でき、ファームウェア404の管理を統一化することができる。
(第3の実施形態)
 本実施形態は、上位機器から、コントローラの機種を識別可能とするI/Oモジュール登録情報(第2情報の一例)を受信し、当該受信したI/Oモジュール登録情報に基づいてコントローラの機種を特定する例である。以下の説明では、第1,2の実施形態と同様の箇所について説明を省略する。
 図5Aおよび図5Bは、第3の実施形態にかかるコントローラが備えるファームウェアによるI/O変数領域へのアクセス動作を説明するための図である。本実施形態にかかるコントローラ5が備えるROM104は、コントローラ5の機種を識別可能とする機種情報と、各I/O変数種類に対応するI/O変数領域401a,401bのアドレスとを対応付けるアドレス表502を記憶している。
 本実施形態では、ファームウェア501は、コントローラ5の起動処理の開始後、I/O変数領域401a,401bへのアクセスに先立って、通信I/F103を介して、PC2(上位機器の一例)から、コントローラ5の機種を識別可能とするI/Oモジュール登録情報Iを受信する。
 本実施形態では、PC2のエンジニアリングツール201は、コントローラ5の起動処理の開始を検知すると、当該コントローラ5に対してI/Oモジュール登録情報Iを送信する。ここで、I/Oモジュール登録情報Iは、上述したように、起動処理の開始を検知したコントローラ5の機種を識別可能とする情報であり、例えば、I/Oモジュール3を制御するためのI/O変数種類XのI/O変数の数とI/O変数種類YのI/O変数の数との大小関係である。
 そして、ファームウェア501は、PC2から受信したI/Oモジュール登録情報Iに基づいて、コントローラ5の機種を特定する。例えば、ファームウェア501は、受信したI/Oモジュール登録情報Iが、I/O変数種類XのI/O変数の数が、I/O変数種類YのI/O変数の数よりも少ないことを表している場合、図5Aに示すように、コントローラ5の機種が機種Aであることを特定する。次いで、ファームウェア501は、図5Aに示すように、ROM104に記憶されたアドレス表502から、特定した機種Aと対応付けられたI/O変数アドレス:アドレスAX,AYを読み出す。そして、ファームウェア501は、図5Aに示すように、読み出した各I/O変数種類に対応するI/O変数アドレス:アドレスAX,AYを、各I/O変数種類に対応する変数ポインタ領域401c,401dに書き込む。
 その後、ファームウェア501は、I/O変数種類XのI/O変数が記憶されたI/O変数領域401aにアクセスする場合、図5Aに示すように、変数ポインタ領域401cに記憶されたI/O変数アドレス:アドレスAXに基づいて、I/O変数領域401aにアクセスする。一方、ファームウェア501は、I/O変数種類YのI/O変数が記憶されたI/O変数領域401bにアクセスする場合、図5Aに示すように、変数ポインタ領域401dに記憶されたI/O変数アドレス:アドレスAYに基づいて、I/O変数領域401bにアクセスする。
 また、ファームウェア501は、受信したI/Oモジュール登録情報Iが、I/O変数種類XのI/O変数の数が、I/O変数種類YのI/O変数の数よりも多いことを表している場合、図5Bに示すように、コントローラ5の機種が機種Bであることを特定する。次いで、ファームウェア501は、図5Bに示すように、ROM104に記憶されたアドレス表502から、特定した機種Bと対応付けられたI/O変数アドレス:アドレスBX,BYを読み出す。そして、ファームウェア501は、図5Bに示すように、読み出した各I/O変数種類に対応するI/O変数アドレス:アドレスBX,BYを、各I/O変数種類に対応する変数ポインタ領域401c,401dに書き込む。
 その後、ファームウェア501は、I/O変数種類XのI/O変数が記憶されたI/O変数領域401aにアクセスする場合、変数ポインタ領域401cに記憶されたI/O変数アドレス:アドレスBXに基づいて、I/O変数領域401aにアクセスする。一方、ファームウェア501は、I/O変数種類YのI/O変数が記憶されたI/O変数領域401bにアクセスする場合、変数ポインタ領域401dに記憶されたI/O変数アドレス:アドレスBYに基づいて、I/O変数領域401bにアクセスする。
 このように、第3の実施形態にかかるコントローラ5によれば、PC2から受信したI/Oモジュール登録情報Iに基づいてコントローラ5の機種を特定する場合も、第1の実施形態と同様に、コントローラ5の機種毎に異なるファームウェア501を設計しなくても、機種毎に異なるI/O変数領域401a,401bへのアクセスを実現することができるので、コントローラ5の機種が異なる場合でも同一のファームウェア501によってI/O変数領域401a,401bへのアクセスを実行することができる。また、異なる機種のコントローラ5のファームウェア501に機能追加や機能修正等の各種の変更を行う場合に、各機種のコントローラ5のファームウェア501に対して同様の変更を行えば良いので、ファームウェア501に対する各種変更を行う場合の変更ミスや作業量が低減でき、ファームウェア501の管理を統一化することができる。
 以上説明したとおり、第1から第3の実施形態によれば、コントローラの機種間において同一のファームウェアによってI/O変数領域へのアクセスを実行することができる。
 なお、本実施形態のコントローラ1,4,5で実行されるプログラムは、ROM104等に予め組み込まれて提供されるが、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
 さらに、本実施形態のコントローラ1,4,5で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のコントローラ1,4,5で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
 本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。

Claims (4)

  1.  外部機器を制御する制御装置であって、
     前記外部機器を制御するための第1情報を記憶可能な第1領域を有する第1記憶部と、
     前記第1領域に対するアクセスを実行可能なソフトウェアを記憶する第2記憶部と、
     前記第2記憶部に記憶された前記ソフトウェアを実行する制御部と、を備え、
     前記ソフトウェアは、前記制御装置の機種を特定し、前記制御装置の機種と当該機種の前記制御装置が備える前記第1記憶部における前記第1領域のアドレスとを対応付けて記憶するデータベースにおいて、当該特定した機種と対応付けて記憶される前記アドレスに従って前記第1領域に対するアクセスを実行する制御装置。
  2.  前記ソフトウェアは、前記制御装置の起動処理の開始後、前記第1領域に対するアクセスの実行に先立って、前記データベースから、特定した機種と対応付けて記憶された前記アドレスを読み出して前記第1記憶部の所定の第2領域に書き込み、前記第2領域に記憶された前記アドレスに従って前記第1領域に対するアクセスを実行する請求項1に記載の制御装置。
  3.  前記第1記憶部は、前記第1情報の種類毎に設けられた複数の前記第1領域を有し、
     前記データベースは、前記制御装置の機種と対応付けて、前記第1情報の各種類に対応する前記第1領域の前記アドレスを記憶し、
     前記ソフトウェアは、前記データベースにおいて、特定した機種と対応付けて記憶されかつ前記第1領域へのアクセスにより書き込みおよび読み出しの少なくとも一方を実行する前記第1情報の種類に対応する前記アドレスに従って前記第1領域へのアクセスを実行する請求項1または2に記載の制御装置。
  4.  前記ソフトウェアは、上位機器から、前記制御装置の機種を識別可能とする第2情報を受信し、当該受信した第2情報に基づいて前記制御装置の機種を特定する請求項1から3のいずれか一に記載の制御装置。
PCT/JP2015/061627 2014-04-21 2015-04-15 制御装置 WO2015163219A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/915,744 US20160216705A1 (en) 2014-04-21 2015-04-15 Control apparatus
CN201580001381.8A CN105659210A (zh) 2014-04-21 2015-04-15 控制装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-087637 2014-04-21
JP2014087637A JP2015207172A (ja) 2014-04-21 2014-04-21 制御装置

Publications (1)

Publication Number Publication Date
WO2015163219A1 true WO2015163219A1 (ja) 2015-10-29

Family

ID=54332386

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/061627 WO2015163219A1 (ja) 2014-04-21 2015-04-15 制御装置

Country Status (4)

Country Link
US (1) US20160216705A1 (ja)
JP (1) JP2015207172A (ja)
CN (1) CN105659210A (ja)
WO (1) WO2015163219A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111610765B (zh) * 2020-05-25 2022-09-30 珠海格力电器股份有限公司 一种集散消息控制装置、方法和楼宇控制系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06149550A (ja) * 1992-10-30 1994-05-27 Ricoh Co Ltd 画像形成装置
JPH07319512A (ja) * 1994-05-26 1995-12-08 Fanuc Ltd プログラマブル・ロジック・コントローラ

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5794032A (en) * 1996-04-15 1998-08-11 Micron Electronics, Inc. System for the identification and configuration of computer hardware peripherals
US6138178A (en) * 1997-01-29 2000-10-24 Fuji Photo Film Co., Ltd. Controlled device storing multiple drivers that judges and downloads a particular driver corresponding to a controller's operating system having an identical or greater version number
US6175770B1 (en) * 1997-12-31 2001-01-16 Dana Corporation Electronic controller having automatic self-configuration capabilities
WO2000070466A1 (fr) * 1999-05-17 2000-11-23 Technowave, Ltd. Procede d'acces a un dispositif e/s et une memoire utilisant une adresse virtuelle et support enregistre comportant un programme destine a executer le procede d'acces a un dispositif e/o et une memoire utilisant une adresse virtuelle
JP2002055824A (ja) * 2000-08-09 2002-02-20 Sony Corp 電子装置、それを使用する機器及びデータ読み込み方法
US8214849B2 (en) * 2001-07-13 2012-07-03 Advanced Micro Devices, Inc. System for loading device-specific code and method thereof
US7103432B2 (en) * 2004-06-02 2006-09-05 Research In Motion Limited Auto-configuration of hardware on a portable computing device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06149550A (ja) * 1992-10-30 1994-05-27 Ricoh Co Ltd 画像形成装置
JPH07319512A (ja) * 1994-05-26 1995-12-08 Fanuc Ltd プログラマブル・ロジック・コントローラ

Also Published As

Publication number Publication date
JP2015207172A (ja) 2015-11-19
US20160216705A1 (en) 2016-07-28
CN105659210A (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
US20170346919A1 (en) Bluetooth device and bluetooth device name managing method
JP2010233006A (ja) サーバシステム、集合型サーバ装置及びmacアドレス管理方法
JP6776436B2 (ja) 制御装置
RU2017104121A (ru) Система и способ для создания выборочных моментальных снимков базы данных
US8868793B2 (en) SAS expander system and method for dynamically allocating SAS addresses to SAS expander devices
JP2009152790A (ja) 動的再構成支援プログラム、動的再構成支援方法、動的再構成回路、動的再構成支援装置および動的再構成システム
TWI464583B (zh) 取得觸發功能之指令的方法
WO2015163219A1 (ja) 制御装置
US9588918B2 (en) Storage control devices and method therefor to invoke address thereof
WO2020075351A1 (ja) コントロール装置
JP2016181055A (ja) 情報処理装置
JP2006318102A (ja) フィールド機器管理装置およびフィールド機器管理方法
JP2017138785A5 (ja) 情報処理装置及びその制御方法
WO2014002220A1 (ja) 管理装置、データ取得方法およびデータ取得プログラム
US20130198408A1 (en) IP Parameter Determination and Configuration
JP2019144762A (ja) プログラマブルコントローラ
JP6076564B2 (ja) システム設計支援ツール
JP6455096B2 (ja) コントロールシステム、その支援装置、プログラマブルコントロール装置
WO2020179581A1 (ja) 制御装置およびソフトウェアのデプロイ方法
JP5079166B1 (ja) シンボルテーブル生成方法、周辺機器との通信方法およびプログラマブルロジックコントローラ
WO2021048976A1 (ja) 数値制御装置
KR20190127110A (ko) Plc 프로그램 처리 장치
KR20160013807A (ko) 기판 처리 시스템, 저장 매체 및 신규 장치를 등록하는 방법
CN105808318B (zh) 一种信息处理方法和电子设备
US20150356032A1 (en) Information processing apparatus and information processing method

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14915744

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15783315

Country of ref document: EP

Kind code of ref document: A1