WO2022230429A1 - 制御システム、データ提供方法および中継処理プログラム - Google Patents
制御システム、データ提供方法および中継処理プログラム Download PDFInfo
- Publication number
- WO2022230429A1 WO2022230429A1 PCT/JP2022/012246 JP2022012246W WO2022230429A1 WO 2022230429 A1 WO2022230429 A1 WO 2022230429A1 JP 2022012246 W JP2022012246 W JP 2022012246W WO 2022230429 A1 WO2022230429 A1 WO 2022230429A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- character string
- control system
- alias
- string
- access request
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 72
- 238000012545 processing Methods 0.000 claims abstract description 95
- 238000003860 storage Methods 0.000 claims abstract description 24
- 230000008569 process Effects 0.000 claims description 49
- 238000006243 chemical reaction Methods 0.000 claims description 42
- 230000008859 change Effects 0.000 claims description 21
- 230000005540 biological transmission Effects 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 24
- 230000010365 information processing Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 230000004044 response Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000007493 shaping process Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000007591 painting process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
Definitions
- the present invention relates to a control system, data provision method and relay processing program.
- Patent Document 1 discloses a configuration capable of collecting arbitrary information of arbitrary devices in a control system using a general-purpose interface.
- Patent Document 2 discloses a configuration capable of efficiently collecting arbitrary information of arbitrary devices in a control system according to state changes in the control system.
- a control system includes one or more controllers.
- the control system includes a processing unit that determines processing for the control device or a device connected to the control device according to the access request, and a processing unit that transmits data acquired by executing the determined processing to the source of the access request. and at least one set of a first character string and a second character string longer than the first character string; an interpreter that replaces the included first string with the corresponding second string.
- the interpreter replaces the access request with the original second character string. This makes it easier to obtain the necessary data by reducing the time and effort required to generate an access request, and even if the system configuration to be obtained is changed, the contents of the character string definition can be updated as appropriate. Flexible.
- the interpretation unit may interpret a character string concatenated with a specific character string included in the access request as the first character string. According to this configuration, the first character string is replaced with the second character string only when it is concatenated with a specific character string. You can avoid such situations.
- the access request may contain an access path indicating a route for accessing a control device or device included in the control system. According to this configuration, the access request can be used to clearly specify the route to the target control unit or device.
- the access request may include a conversion instruction specifying a conversion process for data obtained from a control device or device included in the control system. According to this configuration, the data obtained from the control device or the device is provided with the result of the designated conversion processing, so that the processing after the data is received by the transmission source can be simplified.
- the control system may further include a generator that searches for controllers and devices included in the control system and generates a set of the first character string and the second character string. This configuration facilitates the generation of access requests for obtaining data from any controllers and devices included in the control system.
- the generation unit may generate a set of the first character string and the second character string that meet a preset condition. According to this configuration, by setting a condition according to a specific purpose, a set of the first character string and the second character string that match the condition is generated. This facilitates the generation of access requests and suppresses the generation of unnecessary pairs of the first character string and the second character string.
- the control system may further include a registration unit that registers in the character string definition only an arbitrarily selected pair of the first character string and the second character string generated by the generation unit. According to this configuration, only a set of the first character string and the second character string for a specific purpose can be registered, so resources such as recording areas can be efficiently used.
- the control system may further include an updating unit that updates the contents of the set of the first character string and the second character string included in the character string definition in accordance with a configuration change in the control system. According to this configuration, the content of the set of the first character string and the second character string is updated according to the configuration change in the control system. can continue to use the same access request as
- a method of providing data in a control system including one or more controllers refers to a string definition including at least one set of a first string and a second string longer than the first string to obtain the first string included in the access request. determining a process for the control device or a device connected to the control device according to the access request; and accessing the data obtained by executing the determined process. and sending to the source of the request.
- a relay processing program for providing computer executed data associated with a control system including one or more controllers.
- the relay processing program instructs the computer to refer to a character string definition including at least one pair of a first character string and a second character string longer than the first character string, and obtain the first character included in the access request. replacing the column with a corresponding second character string; determining a process for the controller or a device connected to the controller according to the access request; and data obtained by performing the determined process. to the source of the access request.
- the present invention it is possible to acquire necessary data more easily than in the prior art, and it is possible to respond more flexibly even when the system configuration to be acquired is changed.
- FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system according to an embodiment
- FIG. FIG. 3 is a schematic diagram showing a main part of the functional configuration of the relay device of the control system according to the present embodiment
- 3 is a block diagram showing an example hardware configuration of a relay device of the control system according to the present embodiment
- FIG. 2 is a block diagram showing an example hardware configuration of a control device of the control system according to the present embodiment
- FIG. 3 is a block diagram showing an example of functional configuration of a relay device of the control system according to the present embodiment
- FIG. 4 is a schematic diagram showing an example of alias definitions stored in the relay device of the control system according to the present embodiment; It is a figure which shows an example of the conversion command which the relay apparatus of the control system which concerns on this Embodiment processes. It is a figure which shows an example of the query used with the control system which concerns on this Embodiment.
- FIG. 7 is a diagram showing another example of queries used in the control system according to the embodiment; 7 is a flow chart showing a processing procedure related to alias management in the control system according to the present embodiment; 7 is a flowchart showing a query processing procedure in the control system according to the embodiment; 7 is a flow chart showing a processing procedure for automatic generation of aliases in the control system according to the present embodiment; FIG.
- FIG. 4 is a schematic diagram showing an example of a user interface screen for selecting aliases in the control system according to the embodiment; 7 is a flow chart showing a processing procedure for alias selection and registration in the control system according to the present embodiment;
- FIG. 4 is a schematic diagram showing an example of updating aliases in the control system according to the present embodiment;
- FIG. 7 is a schematic diagram showing an example of processing for updating an alias according to a change in network configuration in the control system according to the embodiment;
- FIG. 7 is a schematic diagram showing an example of processing for updating an alias in accordance with a change in modules in the control device of the control system according to the present embodiment;
- FIG. 1 is a schematic diagram showing an example of the overall configuration of a control system 1 according to this embodiment.
- control system 1 includes, as main components, relay device 100 and one or more control devices 200-1, 200-2, 200-3, . hereinafter also collectively referred to as “control device 200”).
- the relay device 100 responds to a request for access to data held, managed, or generated by one or more control devices 200 (hereinafter also referred to as a “query”), acquires the requested data, and responds. .
- One or more control devices 200 control control targets such as equipment and machines.
- the control device 200 may be embodied as a kind of computer, such as a PLC (Programmable Logic Controller).
- the relay device 100 and the control devices 200-1, 200-2, 200-3 are connected via the network 2 so as to be able to communicate with each other.
- Control devices 200-1, 200-2 and 200-3 are connected to device 250-1 via field networks 6-1, 6-2 and 6-3 (hereinafter collectively referred to as "field network 6"), respectively.
- field network 6 field networks 6-1, 6-2 and 6-3
- device 250 2, 250-3 (hereinafter also collectively referred to as “device 250”).
- device includes any device that retains, manages, or generates any data.
- a “device” can include, for example, individual sensors and controllers that perform control operations.
- the controller 200 is distinguished from the device 250 , but the term “device” may include the controller 200 and the device 250 .
- FIG. 1 shows a remote I/O (Input/Output) device as an example of the device 250 .
- a remote I/O device typically includes a communication unit that communicates via the field network 6 and an input/output unit that acquires input data and outputs output data. Input signals (input data) and output signals (output data) are exchanged with the controlled object.
- the device 250 is not limited to remote I/O devices, and can include arbitrary devices such as various sensors and servo drivers.
- FIG. 1 shows a configuration example in which one device 250 is connected to the field network 6 , the configuration is not limited to this, and a plurality of devices 250 may be connected to the field network 6 .
- EtherCAT registered trademark
- EtherNet/IP registered trademark
- DeviceNet registered trademark
- CompoNet registered trademark
- the control system 1 may further include one or more display devices 300.
- the display device 300 is also referred to as an HMI (Human Machine Interface) or the like, receives an operation from a user, and transmits a command or the like according to the user operation to the control device 200, and also displays data acquired from the control device 200. and so on graphically.
- HMI Human Machine Interface
- the relay device 100 is also connected to the network 4 in addition to the network 2 .
- Information processing device 400 connected to network 4 transmits a query to relay device 100 .
- the network 2 corresponds to a so-called OT (Operational Technology) network
- the network 4 corresponds to a so-called IT (Information Technology) network.
- the information processing device 400 is typically a general-purpose computer.
- the information processing device 400 transmits a query from a general-purpose application such as a browser to the relay device 100 and acquires data held, managed, or generated by the control device 200 from the relay device 100 .
- the relay device 100 receives a query from an arbitrary transmission source ((1) query), it acquires data by executing the processing specified by the query ( (2) process execution and (3) data acquisition). As a result, the relay device 100 transmits response data including the acquired data to the query transmission source ((4) response data).
- the relay device 100 provides data held, managed, or generated by the control system 1 in response to any query.
- FIG. 2 is a schematic diagram showing a main part of the functional configuration of the relay device 100 of the control system 1 according to this embodiment.
- relay device 100 includes a processing unit 10, an interpreting unit 20, a storage unit 30, and a providing unit 40 as main functional configurations.
- the processing unit 10 determines processing for the control device 200 or the device 250 connected to the control device 200 according to an access request (query) from the outside.
- the providing unit 40 transmits the data acquired by executing the determined process to the source of the access request (query).
- the relay device 100 can execute various processes on arbitrary control devices 200 and devices 250 included in the control system 1 according to queries.
- the processing executed by relay device 100 typically includes processing for acquiring all or part of the data held or managed by control device 200 or device 250 .
- Another process executed by the relay device 100 includes a process of changing the operation or behavior of the control device 200 or the device 250 .
- Examples of the processing for changing the action or behavior include the following processing.
- Control mode switching (run mode/program mode/debug mode) - Shutdown - Reboot - Start/stop of tasks and services - New creation/start/stop/delete of data trace - New creation/start/stop/delete of alarms Processing for changing the operation and behavior of the control device 200 or device 250 , for example, can acquire data including its execution results as a return value.
- processing for the control device 200 or the device 250 connected to the control device 200 means any processing that the relay device 100 can perform for any control device 200 or device 25. includes the processing of Also, “data acquired by executing processing” includes arbitrary data acquired by executing processing on the target control device 200 or device 250 .
- the storage unit 30 stores an alias definition 180 as a character string definition including at least one set of a first character string and a second character string longer than the first character string.
- the alias definition 180 includes a character string that can be used as at least a part of a query (corresponding to a first character string, hereinafter also referred to as "alias name”) and a character string longer than the character string (alias name) (corresponding to the second character string).
- alias name a character string that can be used as at least a part of a query
- alias name a character string longer than the character string
- alias refers to a character string that can be used as at least part of a query (that is, an alias name) alone, and a character string that can be used as at least part of a query and the character string Includes both combinations with longer strings that indicate the entity.
- the "alias” that can be used in the control system 1 according to the embodiment may be called a “shortcut” or a “shortened expression”. That is, "alias", regardless of its name, includes the above-mentioned meaning.
- the interpretation unit 20 refers to the character string definition (alias definition 180) stored in the storage unit 30 and replaces the first character string included in the access request with the corresponding second character string.
- the interpretation unit 20 replaces the first character string included in the access request with the corresponding second character string, and the processing unit 10 determines the access target based on the access request after replacement. Therefore, an access request can be generated without knowing the access path to the access target, and the specific access path can be made anonymous. Furthermore, even if the configuration of the control system 1 or the like changes, it can be adapted to the changed configuration simply by updating the correspondence relationship (alias definition 180) between the first character string and the second character string. Therefore, there is no need to modify or change the access request itself.
- FIG. 3 is a block diagram showing a hardware configuration example of the relay device 100 of the control system 1 according to this embodiment.
- relay device 100 is an example of a computer, and includes one or more processors 102, optical drive 104, main storage device 106, secondary storage device 108, and USB (Universal Serial Bus). ) controller 110 , network controllers 112 and 114 , input section 116 and display section 118 . These components are connected via bus 120 .
- the processor 102 is composed of, for example, a CPU (Central Processing Unit), MPU (Micro-Processing Unit), GPU (Graphics Processing Unit), etc., reads various programs stored in the secondary storage device 108, and stores them in the main storage device. 106 to implement various types of processing as described later.
- a CPU Central Processing Unit
- MPU Micro-Processing Unit
- GPU Graphics Processing Unit
- the secondary storage device 108 corresponds to the storage unit 30 shown in FIG. 2, and is composed of, for example, an HDD (Hard Disk Drive) or an SSD (Flash Solid State Drive).
- the secondary storage device 108 typically stores an OS 122 and a relay processing program 124 for realizing processing described later. Note that the secondary storage device 108 may store necessary programs other than the relay processing program 124 shown in FIG. Further, the secondary storage device 108 stores system information 170 and alias definitions 180 (details will be described later).
- the relay device 100 has an optical drive 104, which stores computer-readable code from a recording medium 105 (for example, an optical recording medium such as a DVD (Digital Versatile Disc)), into which The stored computer readable code is read and installed in secondary storage device 108 or the like.
- a recording medium 105 for example, an optical recording medium such as a DVD (Digital Versatile Disc)
- DVD Digital Versatile Disc
- the various programs executed by the relay device 100 may be installed via the computer-readable recording medium 105, or may be installed by being downloaded from any server device on the network. Also, the functions provided by the relay device 100 according to the present embodiment may be realized by using part of the software modules provided by the OS 122 .
- the USB controller 110 is in charge of exchanging data with other information processing devices via a USB connection.
- the network controller 112 is in charge of exchanging data with the control device 200 and the like via the network 2 .
- the network controller 114 is in charge of exchanging data with the information processing device 400 and the like via the network 4 .
- the input unit 116 is composed of a keyboard, mouse, etc., and receives user operations.
- a display unit 118 includes a display, various indicators, a printer, and the like, and outputs processing results from the processor 102 and the like.
- FIG. 3 shows a configuration example in which necessary functions are provided by the processor 102 executing a program. (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array), etc.).
- processor 102 Application Specific Integrated Circuit
- FPGA Field-Programmable Gate Array
- FIG. 4 is a block diagram showing a hardware configuration example of the control device 200 of the control system 1 according to this embodiment.
- control device 200 is an example of a computer, and includes processor 202, chipset 204, main storage device 206, secondary storage device 208, upper network controller 210, and USB controller 212. , a memory card interface 214, a field network controller 220, an internal bus controller 222, and I/O units 224-1, 224-2, .
- the processor 202 is composed of, for example, a CPU, an MPU, a GPU, etc., reads various programs stored in the secondary storage device 108, develops them in the main storage device 206, and executes them, thereby executing control operations. environment.
- the chipset 204 controls data transmission and the like between the processor 202 and each component.
- the secondary storage device 208 stores a system program 231 for realizing an environment for executing control calculations, as well as a user program 232 that describes commands related to control calculations.
- the upper network controller 210 is in charge of exchanging data with the relay device 100 and the like via the network 2 .
- the USB controller 212 is in charge of exchanging data with a support device (not shown) through a USB connection.
- the memory card interface 214 is configured such that a memory card 216 can be attached and detached, and data can be written to the memory card 216 and various data (user programs, trace data, etc.) can be read from the memory card 216.
- the internal bus controller 222 is an interface that exchanges data with the I/O units 224-1, 224-2, .
- the field network controller 220 is in charge of exchanging data with the device 250 via the field network 6.
- FIG. 4 shows a configuration example in which necessary functions are provided by the processor 202 executing a program. Alternatively, it may be implemented using an FPGA, etc.).
- Display device 300 of control system 1 is typically implemented using hardware (for example, a general-purpose personal computer) conforming to a general-purpose architecture. Since the hardware configuration example of the display device 300 is well known, detailed description thereof will not be provided.
- Information processing device 400 of control system 1 is typically realized using hardware (for example, a general-purpose personal computer) conforming to a general-purpose architecture. Since the hardware configuration example of the information processing apparatus 400 is publicly known, detailed description thereof will not be provided.
- FIG. 5 is a block diagram showing a functional configuration example of the relay device 100 of the control system 1 according to this embodiment. Each function shown in FIG. 5 is typically implemented by processor 102 of relay device 100 executing relay processing program 124 .
- relay device 100 includes, as main functional configurations, interface module 150, alias setting module 152, query processing module 154, alias interpretation module 156, data conversion module 162, and data shaping module 164. including.
- the relay device 100 also stores system information 170 and alias definitions 180 .
- the interface module 150 receives queries from the information processing device 400 and the like, and transmits response data to the information processing device 400 .
- the interface module 150 also receives various operations and instructions from the user.
- the query processing module 154 corresponds to the processing unit 10 shown in FIG. 2, and determines processing for the control device 200 or the device 250 connected to the control device 200 according to the access request (query). More specifically, the query processing module 154 interprets the input query and notifies the communication processing module 160 of the access path specified by the query. More specifically, the query processing module 154 determines the access path based on the string corresponding to the alias from the alias interpretation module 156 while referring to the system information 170 .
- the alias interpretation module 156 corresponds to the interpretation unit 20 shown in FIG. 2, and refers to the alias definition 180 to convert the alias (first character string) included in the access request into a corresponding character string (second character string). replace with That is, alias interpretation module 156 outputs a string corresponding to the specified alias included in the access request.
- the communication processing module 160, the data conversion module 162, and the data shaping module 164 correspond to the providing unit 40 shown in FIG. 2, and transmit the data acquired by executing the determined processing to the source of the access request.
- the communication processing module 160 accesses the device specified by the access path and acquires the specified data from the access destination device.
- the data conversion module 162 converts or processes the data acquired from the target device according to the conversion instruction included in the query. More specifically, the data conversion module 162 performs processing such as numeric conversion, unit conversion, range conversion, and format conversion.
- the data shaping module 164 shapes the acquired data into a specified output format.
- Examples of data formats include JSON format, HTML format, XML format, CSV format, text format, and binary format. If the data format is not specified, the data may be converted into a predetermined data format.
- the alias setting module 152 sets, registers, changes, and deletes aliases according to user's operations and instructions. Also, the alias setting module 152 may execute processes such as automatic generation of aliases, which will be described later.
- the system information 170 includes configuration information 171, device profiles 172, and indexes 173, for example.
- the configuration information 171 includes information indicating connection relationships of devices included in the control system 1 .
- the configuration information 171 includes information that defines network topology, address information of each device, and communication protocol of each network.
- the configuration information 171 may include physical or virtual network topology and information on unit configuration (address, type, communication band, etc.).
- the configuration information 171 may be statically set in advance, or may be dynamically changed according to changes in the network configuration.
- the device profile 172 includes information indicating the characteristics of each device. Specifically, the device profile 172 includes memory maps in the device, object specifications, type information, obtainable data (attributes), scaling, and the like.
- the index 173 is information used to make access to devices more efficient, and includes information indicating the state value of each device included in the control system 1 . Specifically, the index 173 includes device attribute values and individual identification numbers (serial numbers, MAC addresses, etc.). The index 173 is typically dynamically generated, but may be statically generated in advance. Note that the index 173 is information used for speeding up access, and is not necessarily required, and may be implemented depending on the situation.
- the alias definition 180 defines the relationship between aliases and corresponding character strings. Essentially, the alias definition 180 is used to determine the strings corresponding to aliases included in the query.
- FIG. 6 is a schematic diagram showing an example of the alias definition 180 stored in the relay device 100 of the control system 1 according to this embodiment.
- alias definition 180 includes character string 184 associated with alias name 182 .
- An alias name 182 is an abbreviated representation of an arbitrary character string 184.
- Character string 184 may include a conversion instruction indicating an access path to be accessed and/or a data conversion process.
- alias names 182 registered in the alias definition 180, and arbitrary alias names 182 can be registered. Also, any alias name 182 can be adopted as long as it is not the same character string.
- the relay device 100 interprets a specific character string included in the query as a conversion instruction, and executes conversion processing according to the conversion instruction.
- FIG. 7 is a diagram showing an example of a conversion command processed by relay device 100 of control system 1 according to the present embodiment.
- conversion instructions include arithmetic operations such as numerical operations, logical operations, comparison operations, bit operations, effective digit operations, and unit conversion. If a query contains a conversion instruction such as an operator, a character string, or a command for executing each operation, the relay apparatus 100 performs conversion processing or arithmetic processing specified according to the conversion instruction included in the query. to run.
- the query may include a conversion command specifying conversion processing for data acquired from the control device 200 or the device 250 connected to the control device 200 .
- the conversion instruction may also be included in the character string obtained by interpreting the above-mentioned alias. Furthermore, it is also possible to generate queries by combining aliases and conversion instructions.
- the query may include "ROUND ("Distance", 2)" as a conversion command.
- the query may include "CONVERT ("Temp", FAHRENHEIT, CELSIUS)" as a conversion command.
- control system 1 in the control system 1 according to the present embodiment, arbitrary conversion processing can be executed in addition to data acquisition according to the conversion instruction included in the query.
- queries can be written in a format conforming to REST (Representational State Transfer) used for providing Web services, for example.
- the query may be written in the SQL language.
- any format can be used for the description of the query.
- any new format for writing queries may be adopted as it becomes popular.
- the response data from the relay device 100 may be described in JSON (JavaScript Object Notation) format or HTML (HyperText Markup Language) format.
- JSON JavaScript Object Notation
- HTML HyperText Markup Language
- FIG. 8 is a diagram showing an example of a query used in the control system 1 according to this embodiment.
- FIG. 8 shows an example of a query conforming to REST.
- the query shown in FIG. 8 is input from a device (eg, temperature sensor) connected via IO-Link from a unit connected to the control device 200 (or remote I/O device) included in the control system 1. It requests the acquisition of data (eg temperature readings). That is, the query shown in FIG. 8 is for the control device 200 (or remote I/O device) corresponding to the first hierarchy, the unit corresponding to the second hierarchy, and the device (for example, temperature sensor) corresponding to the third hierarchy. It requires three levels of access.
- a device eg, temperature sensor
- IO-Link from IO-Link from a unit connected to the control device 200 (or remote I/O device) included in the control system 1. It requests the acquisition of data (eg temperature readings). That is, the query shown in FIG. 8 is for the control device 200 (or remote I/O device
- query 500 includes access destination description part 502 and query description parts 504, 505, 506, 507, and 508.
- Access destination description section 502 includes a scheme specifying a communication protocol with relay device 100 and an authority specifying relay device 100 .
- Query description parts 504, 505, 506, 507, and 508 mean access paths for specifying destinations for acquiring data.
- the query may include an access path indicating a route for accessing the control device 200 or device 250 included in the control system 1.
- the query description part 504 describes the item "eip" that specifies the control device 200 (or remote I/O device) corresponding to the first layer. In the example shown in FIG. 8A, it is "192.168.250.100". That is, the control device 200 (or remote I/O device) with the network address "192.168.250.100" is identified as the access target.
- the query description part 505 describes the "unitno" item that specifies the unit corresponding to the second layer. In the example shown in FIG. 8A, it is "0x01". That is, the unit with the unit number "0x01" is specified as the access target.
- the query description part 506 describes the item "iokink” that specifies the IO-Link for connecting to the device corresponding to the third layer. In the example shown in FIG. 8A, it is "port1". That is, an IO-Link whose master port number is "port1" is specified as an access target.
- the query description part 507 describes an "Index" item that identifies the index number of the IO-Link device for connecting to the device corresponding to the third layer. In the example shown in FIG. 8A, it is "0x12". That is, a device with an IO-Link device index number of "0x12" is specified as an access target.
- the query description section 508 describes a "format" item that specifies the format of the response data of the relay device 100 to the query 500. In the example shown in FIG. 8A, it is "json". That is, it is specified that the format of the response data from the relay device 100 is "JSON".
- the path for accessing the devices and units included in the control system 1 becomes longer as the hierarchy becomes deeper. Therefore, it takes time to generate queries. Therefore, in the control system 1 according to the present embodiment, another character string obtained by shortening at least part of the character string included in the query is made available.
- the relay device 100 interprets the alias included in the query into a corresponding character string and executes the specified process.
- FIG. 8(B) shows a query 510 in which the query description parts 504, 505, 506, 507, and 508 included in the query 500 shown in FIG. 8(A) are described using an alias 514.
- an alias 514 is described in addition to a "get_alias" item 512 indicating that the query should be interpreted as an alias.
- Relay device 100 treats alias 514 of “temperature” as meaning the description of query description sections 504 , 505 , 506 , 507 , and 508 . As a result, it is processed in the same manner as the query 500 shown in FIG. 8(A).
- relay device 100 extracts a specific character string (keyword such as item 512 “get_alias”) included in the query (access request). ) may be interpreted as the alias 514 .
- FIG. 8(B) shows an example in which all access paths included in the query 500 are grouped into one alias, but an alias may be set for each arbitrary element included in the access path.
- FIG. 8C shows a query 520 in which the query description parts 504, 505, 506, 507, and 508 included in the query 500 shown in FIG. indicate.
- FIG. 8D the query description part 504 included in the query 500 shown in FIG. Query 530 is shown.
- the aliases 524, 525, 526, 527, 528, 534, and 536 do not describe specific addresses or paths, but use abstract character strings. Therefore, even if the configuration of the control system 1 changes, as long as the alias is used for description, it is not necessary to change the query itself just by updating the correspondence between the alias and the character string including the access path. do not have. Similarly, even if the target of the data to be acquired changes, it is only necessary to update the correspondence between the alias and the character string containing the access path, without changing the query itself.
- FIG. 9 is a diagram showing another example of queries used in the control system 1 according to the present embodiment.
- FIG. 9A shows an example query 540 for accessing data held, managed, or generated by the controller 200 .
- Query 540 includes a query description part 542 for acquiring alarm flags held by control device 200 and memory card errors. That is, "AlarmFlags" and “Card1Err” included in the query description part 542 respectively mean "alarm flag" and "memory card error".
- a query 548 describes the contents of the query 540 using an alias 546 .
- query 540 is changed to query 541 . That is, the query description part 543 includes "SystemErr", which means a system error, in addition to "AlarmFlags" and "Card1Err".
- FIG. 10 is a flow chart showing a processing procedure related to alias management in the control system 1 according to the present embodiment. Each step shown in FIG. 10 is typically implemented by processor 102 of relay device 100 executing relay processing program 124 .
- FIG. 10(A) shows the processing procedure for alias registration processing in the alias definition 180.
- FIG. 10A relay device 100 receives a new alias and a corresponding character string (step S10). Then, the relay device 100 determines whether or not the received alias has been registered in the alias definition 180 (step S12).
- relay device 100 determines whether the character string associated with the alias conforms to a predetermined rule (step S14).
- relay device 100 registers the received alias and the associated character string in alias definition 180 (step S16). Then, the relay device 100 responds that the registration of the alias has been completed normally (step S18). Then the process ends.
- step S12 if the accepted alias has already been registered in the alias definition 180 (YES in step S12), or if the character string associated with the alias does not conform to a predetermined rule (NO in step S14). ), the relay device 100 responds that the registration of the alias has ended with an error (step S20). Then the process ends.
- FIG. 10(B) shows a processing procedure for deleting an alias from the alias definition 180.
- relay device 100 receives an alias to be deleted (step S30). Then, the relay device 100 determines whether or not the accepted alias has been registered in the alias definition 180 (step S32).
- relay device 100 deletes the entry corresponding to the accepted alias from alias definition 180 (step S34). Then, the relay device 100 responds that deletion of the alias has been completed normally (step S36). Then the process ends.
- step S38 the relay device 100 responds that deletion of the alias has ended with an error (step S38). Then the process ends.
- FIG. 10(C) shows a processing procedure for initialization processing of the alias definition 180.
- relay device 100 receives an initialization instruction for alias definition 180 (step S40). Then, the relay device 100 deletes all entries of the target alias definition 180 according to the received initialization instruction (step S42). Then, the relay device 100 responds that the initialization of the alias has been completed normally (step S44). Then the process ends.
- FIG. 11 is a flowchart showing a query processing procedure in the control system 1 according to the present embodiment. Each step shown in FIG. 11 is typically implemented by processor 102 of relay device 100 executing relay processing program 124 .
- relay device 100 receives a query from information processing device 400 or the like (step S50). Then, the relay device 100 determines whether or not the received query contains an alias (step S52).
- relay device 100 refers to alias definition 180 to determine whether the alias included in the query is registered (step S54). ).
- step S54 If the alias included in the query is not registered (NO in step S54), the relay device 100 responds with error termination (step S56). Then the process ends.
- relay device 100 refers to alias definition 180 to acquire a character string corresponding to the alias (step S58), and responds to the received query. Replace the included alias with the acquired character string (step S60).
- the relay device 100 refers to the alias definition 180 including at least one set of alias name and character string, and executes the process of replacing the alias name included in the access request with the corresponding character string ( Steps S50-S60).
- relay device 100 accesses the device specified by the access path included in the query (step S62). In this manner, the relay device 100 determines processing for the control device 200 or the device 250 connected to the control device 200 according to the access request.
- the relay device 100 acquires the specified data from the access destination device (step S64). Further, the relay device 100 determines whether or not the query (or the result of replacing the alias in the query with the corresponding character string) includes a conversion instruction (step S66).
- step S66 If the query contains a conversion instruction (YES in step S66), relay device 100 executes conversion processing according to the conversion instruction (step S68). On the other hand, if the query does not contain a conversion instruction (NO in step S66), the process of step S68 is skipped.
- the relay device 100 generates response data by forming the acquired data into a predetermined data format (step S70), and transmits the response data to the query transmission source (step S72).
- the relay device 100 transmits the data acquired by executing the determined process to the query transmission source (steps S64 to S72). Then the process ends.
- FIG. 12 is a flowchart showing a processing procedure for automatic alias generation in the control system 1 according to the present embodiment. Each step shown in FIG. 12 is typically implemented by processor 102 of relay device 100 executing relay processing program 124 .
- relay device 100 searches for control device 200 connected to network 2 (step S100).
- ARP Address Resolution Protocol
- ping etc. are used.
- the relay device 100 selects one of the found control devices 200 (step S102). Then, the relay device 100 searches for devices connected to the selected control device 200 (step S104). Protocols such as CIP Identity object reading can be used to search for devices.
- the relay device 100 acquires variable information and real configuration information from the searched device (step S106).
- a command specific to inter-unit communication, an EtherCAT command, an IO-Link command, or the like can be used to acquire the variable information and the real configuration information.
- Relay device 100 determines a character string (including an access path) and a temporary alias name for each piece of data included in the acquired variable information (step S108).
- the relay device 100 acquires I/O information from the device (step S110).
- a protocol such as CIP Identity object reading can be used to acquire I/O information.
- the relay apparatus 100 determines character strings and temporary aliases for each accessible device based on the acquired real configuration information, device information, device setting file information, and the like (step S112).
- step S108 an access path and alias for accessing specific data are automatically generated, and in step S112, an access path and alias for accessing a specific device are automatically generated.
- the relay device 100 determines whether or not processing has been completed for all of the searched control devices 200 (step S114). If there is a searched control device 200 for which processing has not been completed (NO in step S114), relay device 100 selects another control device 200 (step S116). Then, the processing from step S104 onward is repeated.
- step S114 If the process has been completed for all of the searched control devices 200 (YES in step S114), the process ends.
- access paths and corresponding alias name candidates for accessing data held, managed, or generated by the control device 200 included in the control system can be automatically generated, and devices connected to the control device 200 can It can automatically generate candidate access paths and corresponding alias names for accessing data that it maintains, manages, or generates.
- access paths to the control device 200 included in the control system and devices connected to the control device 200 and corresponding alias name candidates can also be automatically generated.
- alias name candidates may be automatically determined according to a predetermined rule, or may be automatically determined based on the corresponding access path.
- the relay device 100 searches for the control device 200 and the device 250 included in the control system 1 and obtains the alias name (first character string) and the character string such as the access path (second character string). (alias setting module 152 shown in FIG. 5).
- aliases indicating access paths are generated for all accessible data and devices.
- the range of generated aliases may be set arbitrarily. That is, filtering may be set for generated aliases and corresponding character strings.
- the following items can be used as such filtering items.
- Network range e.g., IP network address, network hierarchy, protocol type, etc.
- Processcess e.g. painting process, assembly process, inspection process, etc.
- Equipment profile e.g. packaging machine, molding machine, etc.
- Equipment maker for example, Company A, Company B, etc.
- Device name e.g, line A_XX Machine, etc.
- Internal modules for example, Mechanism A, Mechanism B, etc.
- Equipment run time equipment status attributes (e.g., normal, abnormal, etc.)
- Equipment log attributes e.g., normal, abnormal, etc.
- Device vendor for example, Company A, Company B, etc.
- Device profile e.g.
- the relay device 100 generates a set of an alias name (first character string) and a character string such as an access path (second character string) that matches a preset condition. (alias setting module 152 shown in FIG. 5).
- access path candidates are basically generated for all accessible data and devices. After that, among the generated alias candidates, only those arbitrarily specified by the user may be registered in the alias definition 180 .
- FIG. 13 is a schematic diagram showing an example of a user interface screen 190 for selecting aliases in the control system 1 according to this embodiment.
- user interface screen 190 displays a list 196 of generated alias candidates.
- the check box 194 of the candidate matching the entered condition is checked in the list 196 of alias candidates.
- FIG. 14 is a flowchart showing a processing procedure for alias selection and registration in the control system 1 according to the present embodiment. Each step shown in FIG. 14 is typically implemented by processor 102 of relay device 100 executing relay processing program 124 .
- relay device 100 outputs a user interface screen including a list of generated alias candidates (step S150). Upon receiving the conditions entered in the condition input form (step S152), the relay device 100 extracts aliases that match the entered conditions (step S154). Relay device 100 then checks the check box corresponding to the extracted alias (step S156).
- the relay device 100 receives the user's selection of the OK button and registers the checked alias in the alias definition 180 (step S158). Then, the alias registration processing ends.
- alias registration process has the following advantages. That is, the user can appropriately extract only necessary aliases from among many automatically generated aliases and register them in the alias definition 180 . In this way, the relay device 100 aliases only an arbitrarily selected pair from among pairs of a generated alias name (first character string) and a character string such as an access path (second character string). It may be registered in the definition 180 (alias setting module 152 shown in FIG. 5).
- alias definition 180 stores alias names and character strings in association with each other. After the alias is registered in the alias definition 180, the configuration of the target control system 1 may be changed. In such cases, the alias name and/or alias path should be updated. An example of such alias update processing will be described.
- FIG. 15 is a schematic diagram showing an example of alias update in the control system 1 according to the present embodiment.
- FIG. 15A shows an example of changing network configuration such as network address.
- FIG. 15B shows an example of changing modules in the control device.
- IP address IP address
- the target part of the character string 188 associated with the alias name 186 needs to be updated.
- the target part of the character string 188 needs to be updated, and the associated alias name 186 also needs to be updated. That is, when a character string indicating the target module is used as the alias name 186, it is necessary to update the character string according to the change of the target module.
- a change in the configuration of the control system 1 as described above may occur due to a setup change or device replacement. Then, when the configuration of the control system 1 is changed, it is necessary to update the alias name 186 and the character string 188 that constitute the alias.
- An example method for updating an alias is described below.
- FIG. 16 is a schematic diagram showing an example of processing for updating an alias according to a change in network configuration in the control system 1 according to this embodiment.
- a development support device connected to control device 200 or relay device 100 provides user interface screen 600 for setting and changing the network configuration of control system 1 .
- the user can set or change the network address (IP address) of the control device 200 on the user interface screen 600 . More specifically, user interface screen 600 displays setting dialog 602 for receiving setting of the network address of each control device 200 . The network address of the control device 200 is changed by providing new settings from the development support device to the control device 200 .
- IP address network address
- the relay device 100 updates the target portion of the character string 188 associated with the alias name 186.
- FIG. 17 is a schematic diagram showing an example of processing for updating aliases according to changes in modules in the control device 200 of the control system 1 according to the present embodiment.
- a development support device connected to control device 200 or relay device 100 provides user interface screen 610 for setting and changing the module configuration of control device 200 of control system 1 .
- the user can set or change the module configuration of the control device 200 on the user interface screen 610 . More specifically, user interface screen 610 visually displays devices connected to the selected controller 200 . User interface screen 610 can accept a drag-and-drop operation for an object indicating a module to be added or changed. The setting of the module configuration of the control device 200 is changed by such a drag-and-drop operation. By providing new settings to the control device 200 from the development support device, the module configuration of the control device 200 is changed.
- the relay device 100 updates the target portion of the character string 188 associated with the alias name 186, and updates the alias name 186 as necessary. do.
- the relay device 100 preferably manages the access path of the alias as a relative path (a path expression based on a specific hierarchy). By managing with relative paths, when the configuration of any hierarchy is changed, the access path related to the changed hierarchy can be changed more easily.
- the relay device 100 changes the alias name (first character string) and the character string (second character string) such as the access path included in the alias definition 180 according to the configuration change in the control system 1.
- An update process may be executed to update the contents of the set of .
- the relay device 100 responds to a query and acquires data from the access destination each time has been mainly described. may be adopted. Furthermore, the relay device 100 may function like a proxy, acquire data in advance from the control device 200 and devices included in the control system 1, and store the data in its own database.
- relay device 100 independent of control device 200 and display device 300 executes processing related to a query has been described.
- a similar process may be executed.
- relay device 100 and the control device 200 or the display device 300 may work together to realize the processing related to the query described above.
- the functions necessary for the above-described query processing are distributed among a plurality of relay devices 100 , control devices 200 and display devices 300 .
- alias definition 180 may be stored in a database on the cloud.
- any hardware configuration can be used to implement query-related processing. .
- a control system (1) comprising one or more controllers (200), a processing unit (10:154) that determines the control device or a process for the control device according to the access request (500, 510, 520, 530, 540, 541, 548); a providing unit (40: 160, 162, 164) that transmits the data acquired by executing the determined process to the transmission source of the access request; a storage unit (30) storing a character string definition (180) including at least one pair of a first character string (182, 186) and a second character string (184, 188) longer than said first character string; : 108) and an interpreter (20:156) that refers to the character string definition and replaces a first character string included in the access request with a corresponding second character string.
- an access request (query) can be written using an alias, so that the trouble of generating a query can be reduced. Also, since a specific access path can be made anonymous, security performance can be improved. Furthermore, if the configuration of the control system 1 or the like is changed, by updating the registration contents of the alias definition 180 according to the configuration after the change, the query used before the change can be used as it is. , the configuration of the control system 1 can be changed flexibly.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Programmable Controllers (AREA)
- Information Transfer Between Computers (AREA)
- Exchange Systems With Centralized Control (AREA)
Abstract
Description
まず、本発明が適用される場面の一例について説明する。
・シャットダウン
・リブート
・タスクやサービスの開始/停止
・データトレースの新規作成/開始/停止/削除
・アラームの新規作成/開始/停止/削除
制御装置200またはデバイス250の動作や挙動を変更する処理については、例えば、その実行結果などを含むデータを戻り値として取得できる。
次に、本実施の形態に係る制御システム1を構成する装置のハードウェア構成例について説明する。
図3は、本実施の形態に係る制御システム1の中継装置100のハードウェア構成例を示すブロック図である。図3を参照して、中継装置100は、コンピュータの一例であって、1または複数のプロセッサ102と、光学ドライブ104と、主記憶装置106と、二次記憶装置108と、USB(Universal Serial Bus)コントローラ110と、ネットワークコントローラ112,114と、入力部116と、表示部118とを含む。これらのコンポーネントはバス120を介して接続される。
図4は、本実施の形態に係る制御システム1の制御装置200のハードウェア構成例を示すブロック図である。図4を参照して、制御装置200は、コンピュータの一例であって、プロセッサ202と、チップセット204と、主記憶装置206と、二次記憶装置208と、上位ネットワークコントローラ210と、USBコントローラ212と、メモリカードインターフェイス214と、フィールドネットワークコントローラ220と、内部バスコントローラ222と、I/Oユニット224-1,224-2,…とを含む。
本実施の形態に係る制御システム1の表示装置300は、典型的には、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)を用いて実現される。表示装置300のハードウェア構成例については公知であるので、詳細な説明は行わない。
本実施の形態に係る制御システム1の情報処理装置400は、典型的には、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)を用いて実現される。情報処理装置400のハードウェア構成例については公知であるので、詳細な説明は行わない。
次に、本実施の形態に係る制御システム1の中継装置100の機能構成の一例について説明する。
次に、本実施の形態に係る制御システム1において処理されるクエリおよびエイリアスについて説明する。
次に、本実施の形態に係る制御システム1におけるエイリアスに係る処理手順について説明する。
上述の説明においては、ユーザがエイリアスおよび対応する文字列を指定することでエイリアス定義180に登録される処理例を示した。このような手動による登録処理に加えて、以下に説明するようなエイリアスの自動生成処理を実装してもよい。
図12は、本実施の形態に係る制御システム1におけるエイリアスの自動生成に係る処理手順を示すフローチャートである。図12に示す各ステップは、典型的には、中継装置100のプロセッサ102が中継処理プログラム124を実行することで実現される。
上述したエイリアスの自動生成処理においては、基本的には、アクセス可能なデータおよびデバイスのすべてについてアクセスパスを示すエイリアスが生成されることになる。このとき、生成されるエイリアスの範囲を任意に設定するようにしてもよい。すなわち、生成されるエイリアスおよび対応する文字列についてのフィルタリングを設定するようにしてもよい。このようなフィルタリングの項目としては、以下のようなものを用いることができる。
・工程(例えば、塗装工程、組立工程、検査工程など)
・装置プロファイル(例えば、包装機、成形機など)
・装置メーカ(例えば、A社、B社など)
・装置名(例えば、ラインA_XX Machineなど)
・装置内モジュール(例えば、機構A、機構Bなど)
・装置運転時間
・装置ステータス属性(例えば、正常、異常など)
・装置ログ属性(例えば、正常、異常など)
・デバイスベンダ(例えば、A社、B社など)
・デバイスプロファイル(例えば、コントローラ、リモートI/O、センサ、サーボなど)
・デバイス名称
・変数属性(例えば、名称、サイズ、入出力、データ型など)
・デバイス運転時間や動作回数(例えば、接点ON/OFF回数など)
・装置や工程についての任意の識別値
ユーザは上述したような項目のうち1または複数を任意に指定して、指定された条件を満たすエイリアスのみを自動的に生成できるようにしてもよい。
すなわち、目的や用途に応じて必要なエイリアスのみが生成されるので、エイリアスを用いたシステムの設計や製作に要する工数を削減できる。
上述したエイリアスの自動生成処理においては、基本的には、アクセス可能なデータおよびデバイスのすべてについてアクセスパスの候補が生成されることになる。その後、生成されたエイリアスの候補のうち、ユーザが任意に指定したものだけをエイリアス定義180に登録するようにしてもよい。
すなわち、自動的に生成された多数のエイリアスのうち、ユーザが必要なエイリアスのみを適宜抽出してエイリアス定義180に登録できる。このように、中継装置100は、生成されたエイリアス名(第1の文字列)とアクセスパスなどの文字列(第2の文字列)との組のうち、任意に選択された組のみをエイリアス定義180に登録するようにしてもよい(図5に示すエイリアス設定モジュール152)。
上述の説明では、エイリアスのフィルタリング、選択および登録などの処理を中継装置100が実行する典型例を示したが、これに限らず、中継装置100が提供する機能の少なくとも一部を外部の情報処理装置(例えば、開発支援装置など)が提供するようにしてもよい。
上述したように、エイリアス定義180には、エイリアス名と文字列とが対応付けて格納される。エイリアス定義180へのエイリアスの登録後、対象の制御システム1の構成が変更される場合がある。このような場合においては、エイリアス名および/またはエイリアスパスを更新する必要がある。このようなエイリアスの更新処理の一例について説明する。
本明細書においては、主として、中継装置100がクエリに応答して、都度アクセス先からデータを取得する構成例について説明したが、中継装置100がデータを一時保存(いわゆる、キャッシュ)するような構成を採用してもよい。さらに、中継装置100は、プロキシのように機能して、制御システム1に含まれる制御装置200およびデバイスから予めデータを取得して、自身のデータベースに格納するようにしてもよい。
上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
1または複数の制御装置(200)を含む制御システム(1)であって、
アクセス要求(500,510,520,530,540,541,548)に従って、前記制御装置または前記制御装置に対する処理を決定する処理部(10:154)と、
前記決定された処理を実行することで取得されたデータを前記アクセス要求の送信元に送信する提供部(40:160,162,164)と、
第1の文字列(182,186)と前記第1の文字列より長い第2の文字列(184,188)との組を少なくとも1つ含む文字列定義(180)を格納する記憶部(30:108)と、
前記文字列定義を参照して、前記アクセス要求に含まれる第1の文字列を対応する第2の文字列に置換する解釈部(20:156)とを備える、制御システム。
[構成2]
前記解釈部は、前記アクセス要求に含まれる特定の文字列(512)と連結された文字列を第1の文字列と解釈する、構成1に記載の制御システム。
[構成3]
前記アクセス要求は、前記制御システムに含まれる前記制御装置または前記デバイスにアクセスするための経路を示すアクセスパスを含む、構成1または2に記載の制御システム。
[構成4]
前記アクセス要求は、前記制御システムに含まれる前記制御装置または前記デバイスから取得されたデータに対する変換処理を特定する変換命令を含む、構成1~3のいずれか1項に記載の制御システム。
[構成5]
前記制御システムに含まれる前記制御装置および前記デバイスを探索して、第1の文字列と第2の文字列との組を生成する生成部(152)をさらに備える、構成1~4のいずれか1項に記載の制御システム。
[構成6]
前記生成部は、予め設定された条件に合致する、第1の文字列と第2の文字列との組を生成する、構成5に記載の制御システム。
[構成7]
前記生成部が生成した第1の文字列と第2の文字列との組のうち、任意に選択された組のみを前記文字列定義に登録する登録部(152)をさらに備える、構成5または6に記載の制御システム。
[構成8]
前記制御システムにおける構成の変更に応じて、前記文字列定義に含まれる第1の文字列と第2の文字列との組の内容を更新する更新部をさらに備える、構成1~7のいずれか1項に記載の制御システム。
[構成9]
1または複数の制御装置(200)を含む制御システム(1)におけるデータ提供方法であって、
第1の文字列と前記第1の文字列(182,186)より長い第2の文字列(184,188)との組を少なくとも1つ含む文字列定義(180)を参照して、アクセス要求(500,510,520,530,540,541,548)に含まれる第1の文字列を対応する第2の文字列に置換するステップ(S50~S60)と、
前記アクセス要求に従って、前記制御装置または前記制御装置に接続されたデバイスに対する処理を決定するステップ(S62)と、
前記決定された処理を実行することで取得されたデータを前記アクセス要求の送信元に送信するステップ(S64~S72)とを備える、データ提供方法。
[構成10]
1または複数の制御装置(200)を含む制御システム(1)に関連付けられたコンピュータで実行されるデータを提供するための中継処理プログラム(124)であって、前記中継処理プログラムは前記コンピュータに、
第1の文字列と前記第1の文字列より長い第2の文字列との組を少なくとも1つ含む文字列定義を参照して、アクセス要求(500,510,520,530,540,541,548)に含まれる第1の文字列を対応する第2の文字列に置換するステップ(S50~S60)と、
前記アクセス要求に従って、前記制御装置または前記制御装置に接続されたデバイスに対する処理を決定するステップ(S62)と、
前記決定された処理を実行することで取得されたデータを前記アクセス要求の送信元に送信するステップ(S64~S72)とを実行させる、中継処理プログラム。
本実施の形態に係る制御システムにおいては、エイリアスを用いてアクセス要求(クエリ)を記述できるので、クエリを生成する手間を削減できる。また、具体的なアクセスパスを秘匿化できるので、セキュリティ性能を向上させることができる。さらに、制御システム1の構成などが変更された場合には、変更後の構成に応じて、エイリアス定義180の登録内容を更新すれば、変更前に使用していたクエリをそのまま使用することもでき、制御システム1の構成の変更に柔軟に対応できる。
Claims (10)
- 1または複数の制御装置を含む制御システムであって、
アクセス要求に従って、前記制御装置または前記制御装置に接続されたデバイスに対する処理を決定する処理部と、
前記決定された処理を実行することで取得されたデータを前記アクセス要求の送信元に送信する提供部と、
第1の文字列と前記第1の文字列より長い第2の文字列との組を少なくとも1つ含む文字列定義を格納する記憶部と、
前記文字列定義を参照して、前記アクセス要求に含まれる第1の文字列を対応する第2の文字列に置換する解釈部とを備える、制御システム。 - 前記解釈部は、前記アクセス要求に含まれる特定の文字列と連結された文字列を第1の文字列と解釈する、請求項1に記載の制御システム。
- 前記アクセス要求は、前記制御システムに含まれる前記制御装置または前記デバイスにアクセスするための経路を示すアクセスパスを含む、請求項1または2に記載の制御システム。
- 前記アクセス要求は、前記制御システムに含まれる前記制御装置または前記デバイスから取得されたデータに対する変換処理を特定する変換命令を含む、請求項1~3のいずれか1項に記載の制御システム。
- 前記制御システムに含まれる前記制御装置および前記デバイスを探索して、第1の文字列と第2の文字列との組を生成する生成部をさらに備える、請求項1~4のいずれか1項に記載の制御システム。
- 前記生成部は、予め設定された条件に合致する、第1の文字列と第2の文字列との組を生成する、請求項5に記載の制御システム。
- 前記生成部が生成した第1の文字列と第2の文字列との組のうち、任意に選択された組のみを前記文字列定義に登録する登録部をさらに備える、請求項5または6に記載の制御システム。
- 前記制御システムにおける構成の変更に応じて、前記文字列定義に含まれる第1の文字列と第2の文字列との組の内容を更新する更新部をさらに備える、請求項1~7のいずれか1項に記載の制御システム。
- 1または複数の制御装置を含む制御システムにおけるデータ提供方法であって、
第1の文字列と前記第1の文字列より長い第2の文字列との組を少なくとも1つ含む文字列定義を参照して、アクセス要求に含まれる第1の文字列を対応する第2の文字列に置換するステップと、
前記アクセス要求に従って、前記制御装置または前記制御装置に接続されたデバイスに対する処理を決定するステップと、
前記決定された処理を実行することで取得されたデータを前記アクセス要求の送信元に送信するステップとを備える、データ提供方法。 - 1または複数の制御装置を含む制御システムに関連付けられたコンピュータで実行されるデータを提供するための中継処理プログラムであって、前記中継処理プログラムは前記コンピュータに、
第1の文字列と前記第1の文字列より長い第2の文字列との組を少なくとも1つ含む文字列定義を参照して、アクセス要求に含まれる第1の文字列を対応する第2の文字列に置換するステップと、
前記アクセス要求に従って、前記制御装置または前記制御装置に接続されたデバイスに対する処理を決定するステップと、
前記決定された処理を実行することで取得されたデータを前記アクセス要求の送信元に送信するステップとを実行させる、中継処理プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/553,140 US20240184256A1 (en) | 2021-04-28 | 2022-03-17 | Control system, data providing method, and relay processing program |
CN202280024351.9A CN117083606A (zh) | 2021-04-28 | 2022-03-17 | 控制系统、数据提供方法以及中继处理程序 |
EP22795351.0A EP4332790A1 (en) | 2021-04-28 | 2022-03-17 | Control system, data providing method, and relay processing program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021-075642 | 2021-04-28 | ||
JP2021075642A JP7494788B2 (ja) | 2021-04-28 | 2021-04-28 | 制御システム、データ提供方法および中継処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022230429A1 true WO2022230429A1 (ja) | 2022-11-03 |
Family
ID=83847905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/012246 WO2022230429A1 (ja) | 2021-04-28 | 2022-03-17 | 制御システム、データ提供方法および中継処理プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240184256A1 (ja) |
EP (1) | EP4332790A1 (ja) |
JP (1) | JP7494788B2 (ja) |
CN (1) | CN117083606A (ja) |
TW (1) | TWI808721B (ja) |
WO (1) | WO2022230429A1 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030182601A1 (en) * | 2002-03-19 | 2003-09-25 | Scott Richardson | System and method for integrating hardware switching operations into test executive software |
JP2008310532A (ja) * | 2007-06-13 | 2008-12-25 | Vision Arts Kk | コマンド実行方法及びミドルデバイス |
US20140297806A1 (en) * | 2012-12-07 | 2014-10-02 | Industry Foundation Of Chonnam National University | Machine to machine system, method and server using social network service |
JP2020013224A (ja) | 2018-07-13 | 2020-01-23 | オムロン株式会社 | 制御システム、検索装置および検索プログラム |
JP2020013223A (ja) | 2018-07-13 | 2020-01-23 | オムロン株式会社 | 制御システム、検索装置および検索プログラム |
-
2021
- 2021-04-28 JP JP2021075642A patent/JP7494788B2/ja active Active
-
2022
- 2022-03-17 CN CN202280024351.9A patent/CN117083606A/zh active Pending
- 2022-03-17 EP EP22795351.0A patent/EP4332790A1/en active Pending
- 2022-03-17 US US18/553,140 patent/US20240184256A1/en active Pending
- 2022-03-17 WO PCT/JP2022/012246 patent/WO2022230429A1/ja active Application Filing
- 2022-04-13 TW TW111113999A patent/TWI808721B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030182601A1 (en) * | 2002-03-19 | 2003-09-25 | Scott Richardson | System and method for integrating hardware switching operations into test executive software |
JP2008310532A (ja) * | 2007-06-13 | 2008-12-25 | Vision Arts Kk | コマンド実行方法及びミドルデバイス |
US20140297806A1 (en) * | 2012-12-07 | 2014-10-02 | Industry Foundation Of Chonnam National University | Machine to machine system, method and server using social network service |
JP2020013224A (ja) | 2018-07-13 | 2020-01-23 | オムロン株式会社 | 制御システム、検索装置および検索プログラム |
JP2020013223A (ja) | 2018-07-13 | 2020-01-23 | オムロン株式会社 | 制御システム、検索装置および検索プログラム |
Non-Patent Citations (1)
Title |
---|
HAYATO ISHIBASHI: "New internet construction", UNIX USER, vol. 4, no. 3, 1 March 1995 (1995-03-01), JP, pages 98 - 106, XP009541064 * |
Also Published As
Publication number | Publication date |
---|---|
JP2022169920A (ja) | 2022-11-10 |
CN117083606A (zh) | 2023-11-17 |
JP7494788B2 (ja) | 2024-06-04 |
TW202242671A (zh) | 2022-11-01 |
TWI808721B (zh) | 2023-07-11 |
US20240184256A1 (en) | 2024-06-06 |
EP4332790A1 (en) | 2024-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5043937B2 (ja) | 分散システム内の連合リソース発見のための方法およびコンピュータ・プログラム | |
JP6065008B2 (ja) | 制御装置 | |
CN106776633B (zh) | 用户可配置的自动生成a2l文件的装置和方法 | |
US10467318B2 (en) | Dynamic information retrieval and publishing | |
JPH0827726B2 (ja) | 共通エージェント・コンピュータ管理システムと方法 | |
CN112367211B (zh) | 一种设备命令行生成配置模板方法、装置及存储介质 | |
CN111966633B (zh) | 用于查询目录下子节点的方法、装置、电子设备及介质 | |
US7353322B1 (en) | System and method for providing dynamic configuration ROM using double image buffers | |
JP2022511420A (ja) | 自動化目的のためのデータモデルをターゲットオントロジーに変換する方法 | |
JP2001166977A (ja) | データ構造管理装置、データ構造管理システム、データ構造管理方法およびデータ構造管理プログラムを格納する記録媒体 | |
US11586182B2 (en) | System and device to automatically identify data tags within a data stream | |
WO2022230429A1 (ja) | 制御システム、データ提供方法および中継処理プログラム | |
JP7107046B2 (ja) | 制御システム、検索装置および検索プログラム | |
JP7265035B2 (ja) | アドレス空間の選択的集約 | |
JP2015115062A (ja) | センサネットワークで使用するためのデータ統合装置およびそのデータ統合方法 | |
US7120663B2 (en) | Method and apparatus for updating XML data | |
JP4529766B2 (ja) | 情報提供システム、情報提供方法、サーバ及び情報提供プログラム | |
JP7107047B2 (ja) | 制御システム、検索装置および検索プログラム | |
KR102428429B1 (ko) | 데이터 처리 방법, 데이터 처리 장치 및 컴퓨터 판독 가능한 저장 매체 | |
US11743121B1 (en) | Method and system for collection of vendor-agnostic state and configuration information from network devices | |
JP2006040025A (ja) | ストレージ接続変更方法、ストレージ管理システム及びプログラム | |
WO2019221234A1 (ja) | 変換ロジック生成装置、httpメソッド実行システム、httpメソッド実行方法および変換ロジック生成プログラム | |
CN113641711B (zh) | 一种针对saas租户的数据缓存处理方法、装置及介质 | |
CN112445764B (zh) | 文件操作的方法、装置、存储介质及电子设备 | |
CN115729888A (zh) | 数据迁移方法及装置 |
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: 22795351 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202280024351.9 Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18553140 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022795351 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2022795351 Country of ref document: EP Effective date: 20231128 |