The present disclosure relates to a management device, a management method, and a program.
In facilities such as factories, systems are formed in which a plurality of devices are connected by a network. Typically, a management device for managing the devices is provided to operate the system (for example, see Patent Literature 1). Patent Literature 1 describes a technique for managing the hierarchy of plants including devices and a facility system including plants as objects that form tree-structure hierarchies.
Patent Literature 1: Unexamined Japanese Patent Application Publication No. 2004-252700
In systems such as that described above, processing including modifying and diagnosing of data collected from the plurality of devices is sequentially performed on the data. However, there is a demand to realize a flexible process flow by enabling a user to combine, as desired, processes to be performed on the data. To answer this demand, a technique in which a user executes a process flow that is set as desired has been considered. In a case in which the user sets the process flow, the user must manage the devices as described above and, at the same time, also manage the process flow set by the user. However, when the number of devices is great and the process flow is complex, the management burden of the user may become excessively heavy.
The present disclosure is made with the view of the above situation, and an objective of the present disclosure is to lighten the management burden of the user.
In order to achieve the aforementioned objective, a management device of the present disclosure is a management device to be connected to a plurality of devices, the management device including first reception means for receiving a setting of processing to be performed on data output from at least one of the plurality of devices, execution control means for causing processing means to execute the processing with the setting received by the first reception means, second reception means for receiving a setting of a hierarchical relationship of the plurality of devices, and device management means for providing management information for displaying (i) the hierarchical relationship of the plurality of devices according to the setting received by the second reception means and (ii) information related to an execution state of the processing.
According to the present disclosure, management information for displaying the hierarchical relationship of a plurality of devices, and for displaying information about the execution state of the processing is provided. As such, the user can easily manage a plurality of devices along with the execution state of the processing related to the plurality of devices. As a result, the management burden of the user can be lightened.
Hereinafter, a management system 100 according to an embodiment of the present disclosure is described in detail while referencing the drawings.
The management system 100 according to the present embodiment is a factory automation (FA) system to be installed in a factory, and corresponds to a production system for producing products. The management system 100 performs various processes such as machining, monitoring, and inspecting workpieces flowing on a line X that is a manufacturing line. Moreover, the management system 100 has a function of providing management information for a user U1 to manage the state of the processing.
As illustrated in
The communication path 30 connects the management device 10 and the devices 21 to 23 so as to enable communication between the management device 10 and the devices 21 to 23. The communication path 30 connects the management device 10 and the devices 24 to 26 so as to enable communication between the management device 10 and the devices 24 to 26 via the device 23 that is connected to the communication path 30. The communication path 30 is an industrial control network realized by communication lines installed in the factory. However, the communication path 30 may be implemented as an information network such as a local area network (LAN). Additionally, the communication path 30 may be implemented as a dedicated line.
The devices 21 to 26 are devices such as actuators, robots, or sensor devices installed on the line X. In the following, an example is described in which the devices 23 to 26 of the device 22 are sensor devices, the device 23 outputs a measurement value indicating X-axis vibration, the device 24 outputs a measurement value indicating Y-axis vibration, the device 25 outputs a measurement value indicating Z-axis vibration, and the device 26 outputs a measurement value of a housing temperature. The devices 22 to 26 periodically output, to the management device 10, data that indicates measurement results by the sensors. For example, the cycle on which the devices 22 to 26 output the measurement results is 1 ms, 100 ms, or 1 sec. In the following, the devices 21 to 26 are collectively referred to as “devices 20.”
The management device 10 is implemented as an industrial computer to be installed in the factory. The management device 10 executes control processing for using the devices 21 to 26 to run the line X. This control processing is a process flow that the user U1 designs by combining, as desired, one or more partial processes. Additionally, the management device 10 provides a management screen for the user U1 to manage the configuration of the management system 100. Furthermore, in addition to the configuration of the management system 100, the management device 10 displays an execution state of the process flow on this management screen.
The partial process 41 corresponds to processing for collecting data from the device 22, and the partial process 42 corresponds to processing for clipping the data output as the result of the partial process 41. The data clipping processing is processing for rounding values to a predefined range. The partial process 43 corresponds to processing for smoothing the data output as the result of the partial process 42. In one example, the data smoothing is carried out by a moving average or infinite impulse response (IIR) filter. The partial process 44 corresponds to processing for collecting data from the device 23, the partial process 45 corresponds to processing for clipping the data output as the result of the partial process 44, and partial process 46 corresponds to processing for smoothing the data output as the result of the partial process 45. The partial process 47 corresponds to processing for diagnosing the data output as the result of the partial processes 43, 46. The data diagnosing processing is processing for diagnosing, based on a comparison with a predetermined normal pattern, whether there is an abnormality.
According to the process flow 40 illustrated in
The management device 10 provides, to the user U1, a screen such as illustrated in
Next, the hardware configuration of the management device 10 is described. As illustrated in
The processor 11 includes a micro processing unit (MPU). The processor 11 executes a program P1 stored in the auxiliary storage 13 to realize the various functions of the management device 10 and execute processing (described later).
The main storage 12 includes random access memory (RAM). The program P1 is loaded into the main storage 12 from the auxiliary storage 13. Moreover, the main storage 12 is used as the working area of the processor 11.
The auxiliary storage 13 includes non-volatile memory such as electrically erasable programmable read-only memory (EEPROM). In addition to the program P1, the auxiliary storage 13 stores various pieces of data used in the processing of the processor 11. In accordance with commands from the processor 11, the auxiliary storage 13 supplies data to be used by the processor 11 to the processor 11, and stores data supplied from the processor 11.
The inputter 14 includes an input device such as an input key and a pointing device. The inputter 14 acquires information input by the user U1 of the management device 10, and notifies the processor 11 of the acquired information.
The outputter 15 includes an output device such as a liquid crystal display (LCD) and a speaker. The outputter 15 constitutes a touch screen that is formed integrally with the pointing device that constitutes the inputter 14. The outputter 15 presents various pieces of information to the user U1 in accordance with commands from the processor 11.
The communicator 16 includes a network interface circuit for communicating with an external device. The communicator 16 receives an external signal and outputs data expressed by that signal to the processor 11. The communicator 16 sends a signal expressing data output from the processor 11 to the external device.
The hardware components described above cooperate and, as a result, the management device 10 achieves various functions. As illustrated in
The execution controller 120, the first receiver 150, the storage 160, the second receiver 170, and the device manager 180 form a platform 50 for executing the process flow and managing the system configuration.
The processing units 110 are realized mainly by the processor 11. Each of the processing units 110 is realized by the program P1 preset in the management device 10 or plug-in software prepared by the user. Each of the processing units 110 executes the partial processes that are elements of the process flow. Specifically, each of the processing units 110 acquires, as the subject of the partial process, data input by the execution controller 120, and outputs the results of performing the partial process on the acquired data to the execution controller 120. In the example illustrated in
The execution controller 120 is realized mainly by the processor 11. The execution controller 120 causes the processing units 110 to execute the partial processes in order according to the settings received by the first receiver 150. Specifically, the execution controller 120 acquires the data collected by the collectors 130, and outputs the acquired data to the processing unit 110 that performs a partial process on that data. Additionally, the execution controller 120 acquires data output as the result of the partial process from the processing unit 110, and sends the acquired data to the processing unit 110 that performs the next partial processes on that data, or to an output module 131, which outputs that data, of the collector 130. The execution controller 120 functions as the execution control means recited in the claims.
The collectors 130 are realized mainly by cooperation between the processor 11 and the communicator 16. In
The collectors 130 each include an output module 131 that outputs output information. The output information is information related to the execution results of the process flow. For example, in a case in which a process flow for controlling the device 21 is executed, the output module 131 sends, as the output information to the device 21 to be controlled, a command signal sent from the execution controller 120. Note that the output information is not limited to a control signal, and may be a notification for reporting the occurrence of an abnormality, or may be quality control information to be stored in an external server device.
The UI 140 corresponds to a touch screen that is realized mainly by the inputter 14 and the outputter 15. The UI 140 displays, in accordance with control by the first receiver 150, a screen to the user for inputting the settings of the process flow. The user operates the UI 140 to set, as desired, the content and number of partial processes of the process flow, and parameters necessary for the execution of the partial processes. Moreover, the UI 140 sends, to the first receiver 150, information indicating the settings of the process flow input by the operations of the user. Additionally, the UI 140 displays, in accordance with control of the device manager 180 via the second receiver 170, a screen to the user for inputting the system configuration including the hierarchical relationships of the devices 20. The user operates the UI 140 to set the system configuration as desired. Moreover, the UI 140 sends, to the second receiver 170, information indicating the settings of the system configuration input by the operations of the user.
The first receiver 150 is realized mainly by the processor 11. The first receiver 150 receives the settings of the process flow from the UI 140, and reports flow setting information indicating the setting content to the execution controller 120. The flow setting information reported to the execution controller 120 is stored in the storage 160. The first receiver 150 functions as the first reception means recited in the claims.
The storage 160 is realized mainly by the auxiliary storage 13. The storage 160 stores the flow setting information.
In
Note that the flow setting information 161 may include information that differs from the information illustrated in
Returning to
The device manager 180 is realized mainly by cooperation between the processor 11 and the auxiliary storage 13. The device manager 180 acquires the system configuration information from the second receiver 170 and stores the acquired system configuration information. Additionally, the device manager 180 acquires, from the execution controller 120, execution information indicating the execution state of the process flow, and acquires, from the collectors 130, device information related to the devices 20 from which data is to be collected. Moreover, the device manager 180 provides, to the UI 140 via the second receiver 170, management information for displaying the acquired information and the configuration of the management system 100 on the UI 140. The device manager 180 functions as the device management means recited in the claims.
The display controller 181 sends, to the second receiver 170, the management information output from the manager 182, and causes the UI 140 to display the content of the management information. The manager 182 acquires the system configuration information from the second receiver 170, and stores the system configuration information in the accumulator 183. Additionally, the manager 182 integrates the system configuration information stored in the accumulator 183, the device information acquired from the device monitor 184, and the execution information acquired from the process monitor 185 to generate management information for simultaneously displaying the system configuration and the execution state of the process flow. Moreover, the manager 182 sends the management information to the display controller 181.
The term “slave component” refers to a lower level component that belongs to a single component. The master-slave relationship between the components is defined and the hierarchical structure of the management system 100 is determined based on the ID of the slave component. In one example, the component having the component ID “3” that corresponds to the device 22 has the component IDs “4”, “5”, “6”, and “7” as lower level components, and these lower level components respectively correspond to the devices 23 to 26. That is, as illustrated in
In the management information 1821, the section including the component ID, the slave component ID, the corresponding device, and the display name corresponds to system configuration information 1831. Since tags are not assigned to the components immediately after the system configuration is defined by the user, management information 1821 having empty tags, such as illustrated in
The data structure of the management information 1821 is not limited. For example, the management information 1821 may have a data structure such as illustrated in
In this data structure, another component, a header, and a body belong to the component. The hierarchical relationships between the devices 20 are expressed by the other component belonging to the component that corresponds to the device 20. Note that other components do not belong to components that correspond to the end nodes of the tree illustrated in
The header represents formal or additional information including the data sue of the component, and substantial information is stored in the body. In one example, the information included in the header is a component name for the management device 10 to handle the component in the internal processing, a component ID for identifying each component, a component display name for displaying the component on a screen, and a component icon file path indicating the location of data of an icon to be displayed on the screen. In
Resources belong to the body. The body is an element that bundles the resources. There are cases in which the body does not include resources, and also cases in which the body includes one or more resources. The resources correspond to at least one of a data tag resource and a file resource. However, there are cases in which a plurality of resources belongs to the body, and this plurality of resources includes both a data tag resource and a file resource.
The data tag resource represents the execution information and the device information. Specifically, in one example, the information included in the data tag resource is a resource ID for identifying the resource, a resource name for the management device 10 to handle the resource in the internal processing, a resource display name for displaying the resource on a screen, a resource icon file path indicating the location of data of an icon to be displayed on the screen, access destination information for the device manager 180 to carry out external access by communication, location address information indicating the location of the data, a current value that is a value acquired from the device at the access destination, the data type of the current value, and a number of characters to be used when the current value is string-type data. In one example, the access destination information is an IP address or a station code. The location address information corresponds to a device address that is handled by a programmable logic controller (PLC). The execution information and the device information can be said to be pieces of information that are primarily represented by the current value among the data tag resources. In
The file resource represents information related to data in a case in which the component is file format data. In one example, the information included in the file resource is a resource ID for identifying the resource, a resource name for the management device 10 to handle the resource in the internal processing, a resource display name for displaying the resource on a screen, a resource icon file path indicating the location of data of an icon to be displayed on the screen, and a file path indicating the location of the file format data.
For example, if the process flow is being executed, the current value of the data tag resource is a string-type object called “Executing”, and the data type is string. The data type indicates various data types based on the content of the execution information and the device information and, for example, is bool, int, float, or string.
Returning to
The process monitor 185 monitors the execution state of the process flow. Specifically, the process monitor 185 monitors whether the process flow is being executed. Note that the process monitor 185 may perform other monitoring for the process flow. For example, the process monitor 185 may monitor whether there is an error in the execution of the process flow. The process monitor 185 may acquire the execution information from the execution controller 120 by a polling method in which the execution controller 120 is periodically requested to send the execution information, or may acquire the execution information by a push method in which the execution controller 120 autonomously sends the execution information periodically. The process monitor 185 sequentially sends the acquired execution information to the manager 182.
Next, the management processing executed by the management device 10 is described using
In the management processing, the first receiver 150 executes first receiving processing (step S1). Specifically, the first receiver 150 causes the UI 140 to display the screen illustrated in
Returning to
Returning to
The flow execution processing is processing for executing the process flow, and is mainly executed by the processing units 110, the execution controller 120, and the collectors 130. The flow execution processing corresponds to the execution step recited in the claims. As illustrated in
If it is determined that there is no start command (NO in step S31), the management device 10 repeats the determination of step S31, and waits until there is a start command. Meanwhile, if it is determined that there is a start command (YES in step S31), the management device 10 starts execution control processing (step S32). The execution control processing is processing in which the execution controller 120 transfers data between the processing units 110 and the collectors 130 in accordance with the flow setting information. This execution control processing is described using
In the execution control processing, the execution controller 120 starts up all of the collectors 130 and the processing units 110 needed to execute the process flow, and starts partial processing (step S321). Specifically, the execution controller 120 references the flow setting information of the storage 160 to identify and start up the program that realizes the collectors 130 and the processing units 110 that execute the partial processes included in the process flow. As a result, the collectors 130 and the processing units 110 become capable of executing the partial processes.
Next, the execution controller 120 determines whether there is an input of flow data (step S322). Specifically, the execution controller 120 determines whether data according to the process flow is sent to the execution controller 120 from either of the processing units 110 and the collectors 130.
Returning to
Returning to
Next, the partial processing started in step S321 is described using
In the partial processing, the processing units 110 determine whether there is input data (step S3211). Specifically, the processing units 110 determine whether data sent from the execution controller 120 is input. However, in a case in which the partial processing is executed by the collectors 130, the collectors 130 determine whether there is data output from the devices 20.
If it is determined that there is no input data (NO in step S3211), the processing units 110 repeat the determination of step S3211, and wait until there is input data. Meanwhile, if it is determined that there is input data (YES in step S3211), the processing units 110 execute the content of the partial processing, and output data that represents the result of the partial processing to the execution controller 120 (step S3212). Then, the processing units 110 repeat the processing from step S3211.
As a result of the execution control processing and the partial processing described above, the management device 10 iteratively executes, in a semi-permanent manner, the process flow on data repeatedly output from the collectors 130 until there is an end command (described later).
It is described that the execution controller 120 causes the processing units 110 to execute the partial processes in the order specified in the flow setting information. This description is related to data acquired from devices by the collectors 130 at a certain timing. However, the order of execution of the partial processes regarding data that is repeatedly acquired is not limited thereto. Specifically, the order of execution of the partial processes by the processing units 110 for data acquired at different timings is not necessarily limited to the order defined by the process flow. For example, in a case in which the collectors 130 acquire data D1 at time t1 and data D2 at time 12, and a first partial process and a second partial process are respectively carried out on these pieces of data D1 and D2, the processing may be carried out in the order of the first partial process on the data D1, the second partial process on the result of this first partial process, the first partial process on the data D2, and the second partial process on the result of this first partial process; or the processing may be carried out in the order of the first partial process on the data D1, the first partial process on the data D2, the second partial process on the result of the first partial process of the data D1, and the second partial process on the result of the first partial process of the data D2.
Returning to
If it is determined that there is no end command (NO in step S33), the management device 10 repeats the determination of step S33 and continues the execution control processing. Meanwhile, if it is determined that there is an end command (YES in step S33), the management device 10 ends the execution control processing and the partial processing (step S34). Specifically, the management device 10 ends the execution control processing that is started in step S32 and the partial processing started in this execution control processing.
Next, the management device 10 determines whether a new setting of the flow setting information is received (step S35). Specifically, the first receiver 150 uses the management information to determine whether a new setting has been performed by the user. For example, as illustrated in
Note that the setting change by the user of the process flow is input using the UI 140 at a desired timing of the user and, in step S35, the management device 10 simply determines whether there is a new setting. In a case in which a setting change of the process flow is input during the execution of the execution control processing, this input acts as a trigger that stops the execution control processing, the determination of step S33 is affirmed, the execution control processing is stopped, and the determination of step S35 is affirmed.
Returning to
Returning to
Next, the device management processing started in step S4 of
As illustrated in
Next, the device manager 180 acquires the device information (step S42). Specifically, the device monitor 184 acquires, from the collectors 130, the device information related to the devices 20, and sends this device information to the manager 182.
Next, the second receiver 170 determines whether a new setting of the management information is received (step S43). Specifically, the second receiver 170 uses the settings of the process flow to determine whether a setting has been performed by the user for displaying information related to the execution state of the processing on the management information display screen. For example, as illustrated in
Note that the management information setting change by the user is input using the UI 140 at a desired timing of the user and, in step S43, the management device 10 simply determines whether there is a new setting.
Returning to
Returning to
Returning to
As described above, management information is provided for displaying the hierarchical relationships of the plurality of devices 20 and for displaying information related to the execution state of the processing. As such, the user can easily manage the plurality of devices 20 and the execution state of the processing related to the plurality of devices 20. As a result, the management burden of the user can be lightened.
The management information includes the execution information that indicates whether the process flow is being executed. As such, the user can easily recognize whether the process flow is being executed and can manage the management system 100.
The management information includes the device information that indicates whether the data output from the devices 20 is to be subjected to the process flow. As such, the user can easily recognize which devices 20 of the plurality of devices 20 are involved in the process flow, and can manage the management system 100.
The first receiver 150 newly receives process flow settings using the management information. As such, the user can more easily set the process flow while referencing the management information.
The second receiver 170 newly receives the setting for displaying the management information using the process flow settings. As a result, the user can more easily change the management information while referencing the process flow settings.
The hierarchical relationships of the plurality of devices 20 are displayed in a tree-like manner. As a result, the user can easily recognize the hierarchical relationships of the plurality of devices 20.
The management information has a data structure for expressing the hierarchical relationships and, in this data structure, another component and a body belong to the component corresponding to the device, and a data tag resource belongs to the body. The data tag resource represents the device information and the execution information. As a result, the hierarchical relationships can be easily managed and changes thereto are easier.
An embodiment of the present disclosure is described above, but the present disclosure is not limited by the embodiment described above.
For example, the platform 50 illustrated in
As illustrated in
As illustrated in
A configuration is possible in which the management information includes other information in addition to the system configuration, the device information, and the execution information. For example, parameters set for the devices 20 may be included as lower level components of the devices 20. Additionally, as with component 718 of
The functions of the management device 10 can by realized by dedicated hardware or by a typical computer system.
For example, the program P1 executed by the processor 11 can be stored and distributed on a non-transitory computer-readable recording medium, and a device that executes the processing described above can be configured by installing that program P1 on a computer. Examples of such a recording medium include a flexible disc, a compact disc read-only memory (CD-ROM), a digital versatile disc (DVD), and a magneto-optical disc (MO).
A configuration is possible in which the program P1 is stored on a disc device of a server device installed on a communication network such as the interne, and downloaded to a computer by being superimposed on a carrier wave.
The processing described above can also be achieved by starting up and executing the program P1 while transferring the program P1 via the communication network.
Furthermore, the processing described above can also be achieved by causing a portion or the entirety of the program P1 to be executed on a server device, and executing the program while the computer sends and receives information related to the processing of the program P1 via the communication network.
Note that, in cases in which the functions described above are realized in part by an operating system (OS), or the functions are realized by cooperation between an OS and an application, it is possible to store and distribute only the portion other than the OS on the medium, or download the portion other than the OS to a computer.
The means whereby the functions of the management device 10 are realized are not limited to software, and a portion or the entirety of the functions may be realized by dedicated hardware including circuits.
The foregoing describes some example embodiments for explanatory purposes. Although the foregoing discussion has presented specific embodiments, persons skilled in the art will recognize that changes may be made in form and detail without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. This detailed description, therefore, is not to be taken in a limiting sense, and the scope of the invention is defined only by the included claims, along with the full range of equivalents to which such claims are entitled.
The present disclosure is suitable for managing a plurality of devices related to data processing.
100 Management system
10 Management device
12 Main storage
13 Auxiliary storage
110 Processing unit
111 Processing device
120 Execution controller
131 Output module
150 First receiver
161 Flow setting information
170 Second receiver
180 Device manager
181 Display controller
1821 Management information
1831 System configuration information
184 Device monitor
185 Processing monitor
30 Communication path
40 Process flow
41 to 47 Partial process
61 Flow data
711 Process flow
714 Component group
81 External device
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2018/023751 | 6/22/2018 | WO | 00 |