programmable logic controller
Patent Information
- Application Number
- CN202210305933.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-04-01
- Filing Date
- 2022-03-25
- Publication Date
- 2026-10-30
- Estimated Expiration
- 2042-03-25
AI Technical Summary
[0004]另一方面,在JP 2019 016325A的发明中,在设置在PLC外部的IPC(工业计算机)中收集信息,并且无法仅利用PLC来收集必要的信息并将该信息提供给外围设备
[0005]因此,本发明的目的是提供一种具有数据收集功能和数据显示画面生成功能的PLC。
Smart Images

Figure CN115202283B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a programmable logic controller. Background Technology
[0002] A programmable logic controller (PLC) is a controller used in factory automation to control industrial machines such as manufacturing equipment, conveying equipment, and inspection equipment. A PLC controls various expansion units and controlled devices by executing user programs created by programmers, such as ladder diagrams.
[0003] To monitor the operation of a PLC, it is proposed to collect the data held by the PLC and monitor the data using a computer (PC) or HMI (human-machine interface: display device) connected to the outside of the PLC (JP 2019-016325A).
[0004] On the other hand, in the invention of JP 2019 016325A, information is collected in an IPC (industrial computer) located outside the PLC, and it is not possible to collect the necessary information and provide that information to peripheral devices using only the PLC. Summary of the Invention
[0005] Therefore, the purpose of this invention is to provide a PLC with data collection and data display screen generation functions.
[0006] For example, the present invention provides a programmable logic controller, comprising: a storage unit for storing an application; and an execution unit for executing the application. The execution unit includes: a collection unit for collecting symbol values stored in symbols according to the application, wherein the symbols are means or variables used as collection objects; an analysis unit for determining whether the symbol values collected by the collection unit according to the application meet normal conditions set for the application, in order to detect conditions different from normal conditions related to the symbol values; and a generation unit for generating a display screen, the display screen including the determination result of the determination unit and information indicating the symbol values collected by the collection unit according to the application.
[0007] According to the present invention, a PLC with data collection function and data display screen generation function is provided. Attached Figure Description
[0008] Figure 1 This is a diagram showing a PLC system;
[0009] Figure 2 This is a diagram showing the PC;
[0010] Figure 3 This is a diagram showing the PLC;
[0011] Figure 4 This demonstrates the functionality implemented by the CPU of a programmable device.
[0012] Figure 5 This illustrates the functions implemented by the CPU in the expansion unit (data utilization unit);
[0013] Figure 6 This illustrates the functions implemented by the CPU in the expansion unit (data utilization unit);
[0014] Figure 7 This illustrates the functions implemented by the CPU in the expansion unit (data utilization unit);
[0015] Figure 8 This is a diagram showing the displayed screen;
[0016] Figure 9 This is a diagram showing the displayed screen;
[0017] Figure 10 This is a diagram showing the displayed screen;
[0018] Figure 11 This is a diagram showing the displayed screen;
[0019] Figure 12 This is a diagram showing the displayed screen;
[0020] Figure 13 This is an image showing the application selection screen;
[0021] Figure 14 This is a diagram illustrating the setup wizard;
[0022] Figure 15 This is a diagram showing the automatic setting of the threshold;
[0023] Figure 16 This is a diagram showing the monitoring settings screen;
[0024] Figure 17 This is a diagram showing the threshold setting screen;
[0025] Figure 18 This is a diagram illustrating the setup wizard;
[0026] Figure 19 This is a diagram showing the displayed screen;
[0027] Figure 20 This is a diagram showing the screen for switching between receiving application operations;
[0028] Figure 21 It is a diagram showing a chart;
[0029] Figure 22 This is a diagram illustrating the setup wizard;
[0030] Figure 23 This is a diagram illustrating the application of waveform upper / lower limit monitoring;
[0031] Figure 24 This is a diagram illustrating the application of waveform upper / lower limit monitoring;
[0032] Figure 25 This is a diagram illustrating the application of waveform upper / lower limit monitoring;
[0033] Figure 26 This is a diagram illustrating the application of waveform upper / lower limit monitoring;
[0034] Figure 27 This is a diagram illustrating the application of waveform upper / lower limit monitoring;
[0035] Figure 28 This is a diagram illustrating the application of waveform upper / lower limit monitoring;
[0036] Figure 29 This is a diagram illustrating the combination of monitoring technology and status assessment technology;
[0037] Figure 30 This is a diagram illustrating the setup wizard;
[0038] Figure 31 This is a diagram illustrating the application of waveform guard band monitoring;
[0039] Figure 32 This is a diagram illustrating the technique used to determine the threshold waveform;
[0040] Figure 33 This is a diagram illustrating the technique used to determine the threshold waveform;
[0041] Figure 34 This is a diagram illustrating the technique used to determine the threshold waveform;
[0042] Figure 35 This is a diagram showing the displayed screen;
[0043] Figure 36 This is a diagram illustrating the setup wizard;
[0044] Figure 37 This is a flowchart illustrating the processing of monitoring and timed monitoring;
[0045] Figure 38 This is a flowchart illustrating waveform monitoring;
[0046] Figure 39 This is a diagram showing the notification dialog box; and
[0047] Figure 40 This is a diagram showing the dashboard for KPI calculation applications. Detailed Implementation
[0048] In the following, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are necessarily required for the invention. Any combination of two or more features described in the embodiments may be used. Furthermore, identical or similar configurations are indicated by the same reference numerals, and redundant descriptions are omitted. Sometimes lowercase letters are added to the end of reference numerals indicating identical or similar elements. Lowercase letters are omitted when describing matters common to multiple elements.
[0049] <System Configuration>
[0050] First, to enable those skilled in the art to better understand programmable logic controllers (PLCs, which may be simply referred to as programmable controllers), the configuration and operation of a general-purpose PLC will be described.
[0051] Figure 1 This is a conceptual diagram illustrating a configuration example of a programmable logic controller system according to an embodiment of the present invention. Figure 1 As shown, the system includes: a PC 2a configured to edit user programs such as ladder diagram programs; and a PLC (Programmable Logic Controller) 1 configured to integrate and control various control devices installed in factories, etc. PC is an abbreviation for Personal Computer. User programs can be created using graphical programming languages such as ladder logic and flowchart-format motion programs such as Sequential Function Charts (SFCs), or using high-level programming languages such as C. In the following description, for ease of description, it is assumed that the user program executed by the basic unit 3 is a ladder diagram program. The PLC 1 includes a basic unit 3 containing a CPU and one or more expansion units 4. One or more expansion units 4 can be detached from the basic unit 3.
[0052] The basic unit 3 includes a display unit 5 and an operation unit 6. The display unit 5 can display the operating status of each expansion unit 4 attached to the basic unit 3. The display unit 5 switches the display content according to the operation content of the operation unit 6. The display unit 5 typically displays the current value (device value) of the device in PLC 1 and error messages generated by PLC 1. A device is the name of a region in memory that is set to store device values (device data), and can be called device memory. A device value is information set in the user program indicating the input status from input devices, the output status to output devices, or the status of internal relays (auxiliary relays), timers, counters, or data memory. Device values are of two types: bit and word. A bit device stores a 1-bit device value. A word device stores a 1-word device value. In addition to devices, PLC 1 can also be configured to handle variables. Devices and variables are called symbols, and the value indicated by a symbol is called a symbol value.
[0053] An expansion unit 4 is prepared to expand the functionality of PLC 1. Field devices (controlled devices) 10 corresponding to the functions of expansion unit 4 are sometimes connected to each expansion unit 4, thereby connecting each field device 10 to the base unit 3 via the expansion unit 4. The field devices 10 can be input devices such as sensors and cameras, or output devices such as actuators. Furthermore, multiple field devices can be connected to one expansion unit 4.
[0054] For example, the expansion unit 4b can be a positioning unit for driving a motor (field device 10) to position a workpiece, or it can be a counter unit. The counter unit counts signals from an encoder (field device 10) such as a manual pulsar.
[0055] Extension unit 4a is a data collection unit that performs the following process: collecting collection object data from basic unit 3 and extension unit 4b, processing the collected object data to create display object data, and creating display data for displaying the dashboard on display unit 7 or PC 2. Basic unit 3 is sometimes also referred to as the CPU unit. Note that a system including PLC 1 and PC 2 can be referred to as a programmable logic controller system.
[0056] PC 2a is a computer primarily operated by a programmer. On the other hand, PC 2b is a computer operated by a field administrator. PC 2b can be a programmable display whose screen is user-configurable. In this case, the user can configure the screen for displaying analysis results, etc. A web browser function can be pre-installed in the programmable display, and analysis results, etc., can be displayed through the web browser function. PC 2a can be referred to as a programming support device (setting device). PC 2 is, for example, a portable laptop or tablet PC or smartphone, and is an external computer including a display unit 7 and an operation unit 8. The external computer is a computer outside of PLC 1. A ladder diagram program is created using PC 2a as an example of a user program configured to control PLC 1. The created ladder diagram program is converted into mnemonic codes in PC 2a. PC 2 is connected to the basic unit 3 of PLC 1 via a communication cable 9 such as a Universal Serial Bus (USB) cable. For example, PC 2a sends the ladder diagram program converted to mnemonic codes to the basic unit 3. Basic unit 3 converts the ladder diagram program into machine code and stores the machine code in the memory provided in basic unit 3. Note that the mnemonic code is sent to basic unit 3 here, but the invention is not limited thereto. For example, PC 2a can convert the mnemonic code into intermediate code and send the intermediate code to basic unit 3.
[0057] Note that the operation unit 8 of PC 2 may include a pointing device such as a mouse connected to PC 2, but... Figure 1 Not shown in the diagram. Additionally, PC 2 can be configured to be detachably connected to the base unit 3 of PLC 1 via a communication cable 9 other than a USB cable. Alternatively, PC 2 can be connected to the base unit 3 of PLC 1 wirelessly without using the communication cable 9.
[0058] A human-machine interface (HMI) 16 is a display device that reads and displays information stored in the device or buffer of a PLC 1. An HMI 16 may include, for example, a touch panel type input device.
[0059] <Programming Support Device>
[0060] Figure 2 This is a block diagram showing the electrical configuration of PC 2. (As shown...) Figure 2As shown, PC 2 includes a CPU 11, a display unit 7, an operation unit 8, a storage device 12, and a communication unit 13. The display unit 7, operation unit 8, storage device 12, and communication unit 13 are electrically connected to the CPU 11. The storage device 12 includes RAM, ROM, HDD, and SSD, and may also include a removable memory card. CPU is an abbreviation for Central Processing Unit. ROM is an abbreviation for Read-Only Memory. RAM is an abbreviation for Random Access Memory. HDD is an abbreviation for Hard Disk Drive. SSD is an abbreviation for Solid State Drive.
[0061] The user of PC 2a causes CPU 11 to execute the project editing program 14 stored in storage device 12, and the user of PC 2a edits project data through operation unit 8. That is, PC 2a is an engineering tool and is used as a programming support device. Project data includes one or more user programs (e.g., ladder diagram program, control program, motion program, and data utilization program), configuration information of basic unit 3 and extension unit 4, WebHMI drawing data, and setting information for specific functions provided in basic unit 3 and extension unit 4, etc. Configuration information includes information indicating the connection positions of multiple extension units 4 relative to basic unit 3, or information indicating the functions provided in basic unit 3 (e.g., data collection function, communication function, and positioning function), and information indicating the functions of extension unit 4 (e.g., communication function, positioning function, and camera function), etc. Drawing data is a group of display components configured to implement WebHMI. Drawing data is implemented through markup data describing the structure of the front end (e.g., HTML data), style data describing decoration (e.g., CSS data), and code describing dynamic processing (e.g., JavaScript code). Note that the front end refers to the part of a webpage, web service, and web application that is directly visible to the user. Style data describing decorations can be provided, for example, in a file format. In this case, the style data can be invoked by calling the description of an external style data file in the tag data describing the structure. Code describing dynamic processing can be provided, for example, in a file format. In this case, the code describing dynamic processing can be invoked by calling the description of an external code file in the tag data describing the structure. Front ends that can call and use external style data files and external code files have high reusability and maintainability, and can, for example, use general-purpose front end components. When such a general and highly reusable web drawing technology is adopted, components can be reused in the development of WebHMIs, etc., and the maintainability of WebHMIs, etc., can also be improved. Hereinafter, this drawing data will be referred to as a display component. The data utilization program includes a program configured to collect control data (such as device values) from PLC 1, process the data, and create data to be transmitted to the WebHMI. Specific function setting information includes setting information related to the functions provided in basic unit 3 (e.g., data collection function, communication function, and positioning function). For example, in the case of a data collection function, it includes setting information related to data collection conditions and data collection objects. It may also include setting information related to the functions of the expansion unit 4 (e.g., communication function, positioning function, data utilization function, and camera function). Here, editing project data includes creating and changing (re-editing) project data. Users can read project data stored in storage device 12 as needed and modify the project data using project editing program 14a.The communication unit 13 communicates with the basic unit 3 via communication cable 9a. The CPU 11 transmits project data to the basic unit 3 via the communication unit 13. The communication unit 13 communicates with the expansion unit 4a via communication cable 9b.
[0062] CPU 11 can execute stream / dashboard editor 14b to create settings data for streams (data utilization programs) and dashboards. Stream / dashboard editor 14b can be part of project editor 14a.
[0063] CPU 11 can execute the web browser program 14d for use as Figure 4 The web browser 61 shown is also included. The web browser 61 can also be part of the project editing program 14a. The web browser 61 displays the display screen (dashboard) provided by the PLC 1 on the display unit 7. Note that the project editing program 14a or the stream / dashboard editing program 14b may include the function of displaying the display screen (dashboard) provided by the PLC 1 on the display unit 7. The CPU 11 transmits the stream and dashboard setting data to the expansion unit 4a via the communication unit 13.
[0064] <plc>
[0065] Figure 3 This is a block diagram showing the electrical configuration of PLC 1. (Example) Figure 3 As shown, the basic unit 3 includes a CPU 31, a display unit 5, an operation unit 6, a storage device 32, and a communication unit 33. The display unit 5, operation unit 6, storage device 32, and communication unit 33 are electrically connected to the CPU 31. The storage device 32 may include RAM, ROM, and memory cards, etc. The storage device 32 includes multiple storage areas such as a device section 34 and a project storage section 35. The device section 34 includes bit devices and word devices, etc., and each of these devices stores a device value. The project storage section 35 stores project data input from the PC 2a. The storage device 32 also stores control programs for the basic unit 3. Figure 3 As shown, the basic unit 3 and the expansion unit 4 are connected via an internal unit bus 19, which is a type of expansion bus. Note that the communication functions associated with the internal unit bus 19 are installed on the CPU 31, but can also be installed as part of the communication unit 33. The communication unit 33 may include network communication circuitry. The CPU 31 receives project data from the PC 2a via the communication unit 33.
[0066] Here, the internal bus 19 of the unit will be described in detail. The internal bus 19 of the unit is a communication bus used for input / output refresh. Input / output refresh is a process used to update the device values between the basic unit 3 and the extended unit 4. Input / output refresh is performed each time the ladder diagram program is executed (i.e., each scan).
[0067] The expansion unit 4b includes a CPU 41b and a memory 42b. The CPU 41b of the expansion unit 4b controls the field device 10 according to instructions (device values) from the base unit 3 stored in the device. Additionally, the CPU 41b stores the control results of the field device 10 in a device called a buffer memory. The control results stored in the device are transmitted to the base unit 3 via an input / output refresh. Furthermore, even at a different timing than the input / output refresh, the control results stored in the device are sometimes transmitted to the base unit 3 according to a read command from the base unit 3. The memory 42 includes RAM and ROM, etc. Specifically, a storage area is ensured in the RAM to serve as a buffer memory. The memory 42 may have a buffer to temporarily hold the data acquired by the field device 10 (e.g., still image data or moving image data).
[0068] The CPU 41a, which serves as an extension unit 4a for the data utilization unit (analysis unit), communicates with the PC 2a via a communication unit 43 and a cable 9b. The communication unit 43 includes communication circuitry for performing network communication. When the operation log analysis application is set as a data utilization application, the CPU 41a analyzes the device values collected in the basic unit 3 to create an analysis report including the analysis results. For example, the CPU 41a analyzes the symbol values included in the operation log data to identify anomalous symbols and the times when the symbols become anomalous, and creates an analysis report including the analysis results, wherein the anomalous symbols and the times when the symbols become anomalous are correlated with each other. The operation log data includes information for reproducing the conditions near the time the operation log saving event occurred. Therefore, the operation log data can be managed in association with the analysis report. In addition, the operation log data includes symbol values of many symbols configured to reproduce the conditions near the time the operation log saving event occurred. Therefore, the data size of the operation log data may be large. For example, the CPU 41a can read the data required for the analysis report from the operation log data and additionally save the read data as data in the operation log data. Here, additional saving refers to, for example, saving data created for the analysis report by reading and copying the data required for the analysis report from the operation log data and marking the copied data, so as to add that data to the operation log data. Creating analysis reports becomes easier when data processing is applied, for example, by marking data in this way.
[0069] Operation log data may include camera images. In this case, the user can replay the camera images to gain a more detailed understanding of the situation around the time the operation log was saved. Analysis reports may include a user interface (UI) for replaying camera images. Camera images have a large data size. Therefore, when a click or scroll operation is received in the UI for replaying camera images, only a portion of the required camera image data can be downloaded. For example, when creating an analysis report, CPU 41a can process camera images according to the display order in the analysis report, or generate index information indicating the correspondence between time and the saved location of camera images. As a result, CPU 41a can quickly and partially download camera images corresponding to the display time (the time of the internal clock used for playback).
[0070] In a narrow sense, an analysis report refers to the analysis results themselves; however, in a broader sense, an analysis report can refer to a web application used to display the analysis results or its user interface. CPU 41a determines, for example, whether a device value is within a normal range and whether the timing of device value changes is within a normal range. Whether the timing of device value changes is within a normal range can be, for example, whether the length of a period in which the device value is "1" (ON) is within a normal range. Additionally, it can determine whether the number of times the device value changes in a certain process or cycle is within a normal range. If the device value collected from a device does not meet normal conditions, the device can be called an abnormal device because it behaves differently than usual. CPU 41a can create an analysis report in web format and provide the analysis report to the web browser of PC 2b via communication unit 43 and communication cable 9b.
[0071] The data utilization unit is an extension unit for executing data utilization applications. The data utilization application includes a data utilization program (e.g., a stream) for collecting and processing control data, and a dashboard for displaying the execution results of the data utilization program. Here, a stream is used as an example of a data utilization program, but user programs in other languages can be used. A stream may have a calculation block for collecting data, a calculation block for performing data processing, and a calculation block for creating and displaying data. The dashboard includes graphical display components and numerical display components. Analysis reports may include graphical display components and numerical display components, etc. These display components can be implemented using marker data describing the structure of the front end, style data describing decoration, and code describing dynamic processing, etc. In this embodiment, the stream is implemented using a stream template. The stream template is prepared in advance for each application, and the stream template has one or more calculation blocks with parameters set by the user. The dashboard is also implemented using a template. The dashboard template has one or more display components with parameters set by the user. Parameters are various types of information, such as dashboard name, device name, names of numerical values and unit variables, etc. Unit variables are variables configured to allow extension unit 4a to retain the execution results of the stream.
[0072] The CPU 41a stores the data received from the PC 2a and the instrument panel settings data in the memory 42a. Based on the settings data, the CPU 41a executes the flow, collects device values, and creates display data to be displayed on the instrument panel. The CPU 41a communicates with the PC 2b via the communication unit 43 and cable 9b. The CPU 41a sends the instrument panel display data to the PC 2b. As a result, the PC 2b displays an instrument panel containing various types of data related to the PLC 1.
[0073] The HMI 16 can also be connected to the communication unit 43 and communicate with the CPU 41a via the communication unit 43. The CPU 41a stores display data in a predetermined buffer or device. The HMI 16 reads the display data from the predetermined buffer or device and displays the display data.
[0074] Figure 4 This diagram illustrates the functions implemented by the CPU 11 of PC 2a. The project creation unit 50 is a function implemented when the CPU 11 executes the project editing program 14a. The project creation unit 50 includes a control program creation unit 52, a flow / dashboard creation unit 51, and a collection setting unit 57. The project creation unit 50 creates project data 70, including user programs such as ladder diagram programs, based on user instructions input through the operation unit 8.
[0075] The control program creation unit 52 creates a control program 155, such as a ladder diagram program, to be executed by the CPU 31 based on user instructions input through the operation unit 8. The control program 155 is stored in the storage device 12 as part of the project data 70.
[0076] The flow / instrument creation unit 51 is a function implemented when the CPU 11 executes the flow / instrument editing program 14b. The flow / instrument creation unit 51 includes an application selection unit 55 and a setting data creation unit 56. The application selection unit 55 displays a selection screen on the display unit 7, allowing the user to select an application from multiple applications (data utilization programs), and receives the user's application selection. Applications may include real-time monitoring applications for real-time monitoring of devices or variables being monitored, and operation record analysis applications for analyzing operation records used to reproduce the operating status of the PLC 1 and generating analysis reports. Additionally, calculation applications may exist for calculating key performance indicators (KPIs) (such as utilization rate, yield rate, and cycle time).
[0077] The setup data creation unit 56 creates application setting data 74b based on user instructions. This data includes parameters related to the user-selected application (data utilization program) and parameters related to the display settings of the dashboard. Examples of parameters include monitored object devices or variables, monitored item names (e.g., the name of the process), monitoring conditions for each monitored object, parsing object files, parsing object devices, parsing object time periods, display objects, display component names, and units. The setup data creation unit 56 can provide the PLC 1 with the information required to create the application setting data 74b in a file format such as CSV. The setup unit 78 can read the provided file (such as CSV) and create the application setting data 74b. The setup data creation unit 56 extracts a template for displaying the user-selected dashboard. For example, it extracts dashboard template 71a from dashboard template 71 and saves it in the setup data 73. Dashboard template 71 has various display components (graphic modules) configured to implement the dashboard. The setup data creation unit 56 extracts a template for a data utilization program that performs the data processing required to display data on the user-selected dashboard. For example, application template 72a is extracted from application template 72 and saved in setting data 73. Application template 72 has a computing component (program module) configured to perform data processing. Setting data creation unit 56 creates setting data 73 including dashboard templates, data application templates, and application setting data 74b set in these templates, and stores setting data 73 in storage device 12. Note that setting data creation unit 56 can create collection setting data 74a including collection object devices or variables and collection conditions, etc.
[0078] The data creation unit 56 can create other applications that reference the measurement results of the monitored object calculated in the real-time monitoring application. The measurement results of the monitored object calculated by the real-time monitoring application are output to predetermined variables for each measurement result. The data creation unit 56 can set up other applications or applications newly created by the user to reference the variables indicating the measurement results. Examples of measurement results of the monitored object calculated in the real-time monitoring application may include time results, such as the processing time of each process, the time between the previous and next processes, the time indicating the length of the entire process, characteristic quantities of time series data (waveform data), and characteristic quantities of camera images. The data creation unit 56 can set up dashboards to be created by the user to reference the variables indicating the measurement results. Note that the measurement results of the monitored object calculated in the real-time monitoring application can be stored in a database. This can be achieved by linking the real-time monitoring application with a database function.
[0079] The collection setting unit 57 defines the operation of the collection device or variable according to user instructions. Furthermore, the collection setting unit 57 creates collection setting data 74a, which includes the collection target device or variable and collection conditions. Collection setting data 74a can be included in setting data 73. The collection setting unit 57 and the setting data creation unit 56 can be integrated into one unit.
[0080] The transmission unit 60 transmits project data 70 to the basic unit 3 or transmits setting data 73 to the expansion unit 4a. When the CPU 11 executes the web browser program 14d, the web browser 61 is implemented.
[0081] Figure 5 The functions implemented by the CPU 41a of the expansion unit 4a are shown. Some or all of the functions of the expansion unit 4a, which will be described below, can be installed on the basic unit 3. The setting unit 80 stores the setting data 73 received from the PC 2a in the memory 42a. The setting unit 80 can set which device values need to be collected for the basic unit 3 according to the setting data 73. The setting data 73 includes the instrument panel template 71a, the application template 72a, the collected setting data 74a, and the applied setting data 74b. The collected setting data 74a can be transferred from the PC 2a to the expansion unit 4a in a state that is assigned to the instrument panel template 71a and the application template 72a, or it can be transferred from the PC 2a to the expansion unit 4a in a state that is separate from the instrument panel template 71a and the application template 72a. The stream execution unit 81 is a function implemented when the CPU 41a executes the stream in the application template 72a according to the collected setting data 74a. The collection unit 82 collects the device values specified by the collection setting data 74a from the basic unit 3 and the extension unit 4b, creates the collected data 75, and stores the collected data 75 in the memory 42a. The data processing unit 83 applies the data processing specified by the collection setting data 74a to the collected data 75, creates the parsed data 76, and stores the parsed data 76 in the memory 42a. The display processing unit 84 creates dashboard display data 77 (e.g., HTML data and image data, Cascading Style Sheets (CSS) and JavaScript (registered trademark) code) based on the dashboard template 71a and display object data specified by the application setting data 74b. The web server 85 provides the dashboard display data 77 to a web browser 61, such as a PC 2b.
[0082] Figure 6 This diagram illustrates additional functions implemented by the CPU 41a of the expansion unit 4a. Some or all of the functions of the expansion unit 4a, which will be described below, can be installed on the basic unit 3. Here, the expansion unit 4a provides settings editing functions such as dashboards to the PC 2b via Web-based technology. Note that the settings editing functions can be invoked and executed from the dashboard. Alternatively, the settings editing functions can also be provided in the PC 2a as a programming support device. Note that functions similar to those already described are indicated by the same reference numerals, and descriptions of such functions are omitted.
[0083] The setting unit 80 includes the aforementioned stream / dashboard creation unit 51. The stream / dashboard creation unit 51 is a function implemented when the CPU 41a executes the stream / dashboard editing program 14b. The stream / dashboard editing program 14b enables the CPU 41a to function as a web processing unit communicating with a so-called web browser 61 via a web server 85, providing display screens and receiving input. The application selection unit 55 displays a selection screen on the display unit 7b of the PC 2b via the web server 85, allowing the user to select a dashboard from multiple dashboards (real-time monitoring applications), and receives the user's selection of a dashboard. The setting data creation unit 56 receives, via the web server 85, user-specified parameters related to the stream associated with the user-selected dashboard and parameters related to the dashboard display settings. Parameters include the collection object device, parsing object device, parsing object time period, display object, name and unit of display components, etc. The setting data creation unit 56 extracts the dashboard template 71a configured to display the user-selected dashboard from the dashboard template 71. The dashboard template 71 has various display components (graphic modules) configured to implement the dashboard. The setup data creation unit 56 extracts application template 72a from application template 72, which performs the data processing required to display data on a dashboard selected by the user. Application template 72 has a computing component (program module) configured to perform data processing. The stream / dashboard creation unit 51 can also create the aforementioned collection setup data 74a and application setup data 74b according to user instructions input from the web browser 61. The setup data creation unit 56 creates setup data 73 including dashboard template 71a, application template 72a, collection setup data 74a, and application setup data 74b, and stores the setup data 73 in memory 42a.
[0084] Figure 7 The additional functions implemented in extension unit 4a are shown.
[0085] The alarm unit 90 is a function that sends notifications to peripheral devices based on the judgment results of the flow execution unit 81 (analysis unit 54). Peripheral devices include HMI 16, PC 2a, and PC 2b, etc. The application notification unit 91 is a function that notifies peripheral devices that the monitoring status of the real-time monitoring application has changed from a normal state to an alert state or a warning state. The real-time monitoring application is an application that displays device values on a display screen when a user program (ladder diagram program) is executed in PLC 1. The real-time monitoring application differs from applications that only display past device values stored in memory cards, etc. The real-time monitoring application may also include the function of displaying these past device values.
[0086] The event registration unit 92 is responsible for registering changes in the monitoring status of the monitoring application from a normal state to an alert state or a warning state as events within the basic unit 3. The CPU 31 of the basic unit 3 has the function of saving error and event history. The event registration unit 92 sends communication commands via the internal bus 19 to request the CPU 31 of the basic unit 3 to register events.
[0087] The operation record saving unit 93 is a function that requests the CPU 31 of the basic unit 3 to save the collected device values (operation records). The CPU 31 stores the device values in a ring buffer or similar container during each scan of the ladder diagram program. The CPU 41a of the extension unit 4a acquires and analyzes these device values to determine whether the saving conditions are met. When the saving conditions are met, the operation record saving unit 93 sends a save request to the CPU 31 via the internal bus 19. The CPU 31 saves the device values stored in the ring buffer as operation records according to the save request. The stream execution unit 81 (analysis unit 54) can read and analyze the operation records from the basic unit 3 to obtain analysis results, and can save these analysis results in the parsed data 76.
[0088] Here, the operation log can be a record of the operating status of PLC 1 at the scan time level. For example, the operation log can be obtained by recording the symbol values and collection times of all symbols related to the operation of PLC 1 in a time sequence during each scan. For example, all symbols related to the operation can be all symbols used in a user program such as a ladder diagram program, or all symbols included in a unit or cell of a program selected by the user. In this case, the symbols that are the objects of the operation log can be selected together by important units (such as program units or cell units). Symbols that are the objects of the operation log can be added or removed individually. For example, when a fault occurs, the operation log can be generated by recording the symbol values and collection times of all symbols related to the operation of PLC 1 near the time of the fault occurrence in a time sequence during each scan. Based on the operation log, the user can accurately understand what happened when the fault occurred, even afterward. The operation log can include a large amount of information to recreate the situation at that time. If a large amount of information exists, the data volume of the operation log increases, making the handling of the operation log (data processing, etc.) difficult and placing a burden on the collection of the operation log. Therefore, the symbols that are collected can be selected by the user on a program-by-program or unit-by-unit basis.
[0089] In addition to symbols, operation logs can also include time-series camera images and their capture times. As a result, for example, when a malfunction occurs, the user can accurately trace back to what happened around the time of the malfunction, even afterward. In particular, it can be useful to understand the situation if camera images indicating changes in the appearance of the equipment are included in the operation log. Therefore, camera images can be recorded in conjunction with the time series of user program execution. Write history from external devices such as human-machine interfaces (HMIs) or PCs, or write history from PLCs, can be included in the operation log as change point events. As a result, for example, the user can identify what type of change point events occurred before and after the malfunction in the time series. Furthermore, operation logs can include project data. Since operation logs include project data obtained when the operation log data was generated, even if multiple versions of project data exist, the situation can be reproduced using the project data actually used when the operation log was generated. Operation logs can include analysis reports. Since operation logs include analysis reports containing analysis results obtained by analyzing the operation log data, these analysis results can be aligned with the operation log data.
[0090] The history saving unit 94 is a function used to save device values, dashboard display data (charts or graphs), and thresholds acquired when a warning or alert state has occurred as history. This history is useful for reproducing past abnormal operations on the display screen.
[0091] The data processing unit 83 may have the function of performing statistical processing on the collected data 75 (device values, etc.). The trend chart creation unit 53a creates a trend chart based on the collected data 75. For example, the trend chart creation unit 53a has the function of selecting a statistical value (maximum, average, or minimum value) for each of a specified number of device values included in the collected data 75, and accumulating the selected statistical values in association with time information indicating the time when the statistical value has been collected. Since a measurement value is selected from a specified number of measurements and saved, a data compression effect can be obtained. When the specified number increases, the amount of data to be saved decreases, and data indicating a longer-term trend is obtained.
[0092] The histogram creation unit 53b creates a distribution of a specified number of device values included in the collected data 75. For example, the distribution of measurements from hundreds of recently collected points can be obtained.
[0093] The analysis unit 54 analyzes the symbol values collected by the application to determine whether they meet the normal conditions set for the application. As a result, the analysis unit 54 detects conditions that differ from normal conditions related to the symbol values. Examples of normal conditions include thresholds used to detect attention and warning states.
[0094] The flow / dashboard creation unit 51 may include a threshold setting unit 58 and a group (bank) switching unit 59. The threshold setting unit 58 assists the user in setting thresholds to be used for detecting attention and warning states. For example, the threshold setting unit 58 may perform learning based on previously collected device values and suggest thresholds to the user based on the learning results. The group switching unit 59 prepares threshold sets (groups) in advance according to the product type manufactured under the control of PLC 1, and switches the threshold set when the product type changes.
[0095] The flow execution unit 81 may include a stop / resume unit 86 and an application error detection unit 87. The stop / resume unit 86 is a function that temporarily stops or resumes the operation of the monitoring application. The monitoring application sometimes accesses a memory card to save various types of data. If the memory card is removed while the monitoring application is accessing it, data corruption may occur. Therefore, the monitoring application needs to be stopped when the memory card is removed. Additionally, the operation of the actuator may sometimes be unstable until a certain period of time has elapsed after power-on. During such a period, it may not be necessary for the monitoring application to monitor the actuator. Therefore, when a stop request from the monitoring application is received from PC 2a or PC 2b, the stop / resume unit 86 temporarily stops the operation of the monitoring application. When a request to resume the monitoring application is received from PC 2a or PC 2b, the stop / resume unit 86 resumes the operation of the monitoring application. The application error detection unit 87 detects errors within the monitoring application itself and notifies peripheral devices of the occurrence of the error. For example, when the destination of the device or variable used as the monitoring object is incorrect, or when the free space on the memory card used to save the monitoring results is insufficient, the application error detection unit 87 sends a notification to the peripheral device. The application error detection unit 87 can be included in the alarm unit 90.
[0096] Real-time monitoring applications
[0097] The following sections describe several real-time monitoring applications used to provide dashboards. Such applications perform real-time monitoring of the monitored devices or variables. The following may be examples of real-time monitoring applications.
[0098] (I) Processing Monitoring (Cycle Chart): Cycle operation refers to the repeated execution of multiple processes in each cycle. In cycle monitoring, the bit devices indicating the start timing and the bit devices indicating the end timing of each of the multiple processes forming the cycle operation are set as the monitoring objects. The time interval from start to end of the entire cycle operation and the time interval from start to end of each process in a cycle are monitored. The entire cycle operation refers to the entire cycle. For example, it is possible to monitor whether the time from the start trigger to the end trigger (processing time) is within a specified range. When the monitoring results of multiple processes are displayed simultaneously, the user can easily identify the bottleneck process from among the multiple processes. When an anomaly occurs in a certain process, the monitoring results (charts) are saved not only for that process but also for other processes executed before and after that process.
[0099] (II) Timed Monitoring: Monitors the timing of the on and / or off states of the monitored device. For example, monitors whether the time from the start of triggering to the end of triggering is within a specified range. In timed monitoring, when an anomaly occurs in a process, only the monitoring results (charts) of that process are saved.
[0100] (III) Waveform upper / lower limit monitoring: Monitor whether the waveform (monitored waveform) formed by the time series device value (or the analog value stored in the variable) is within the preset range from the upper limit value to the lower limit value.
[0101] (IV) Waveform Guard Band Monitoring: This monitors whether the waveform (monitored waveform) formed by time-series device values (or analog values stored in variables) falls within a predetermined guard band. The guard band is a band-shaped range surrounded by two threshold waveforms. The guard band can be defined by an upper or lower limit that changes over time. In other words, the guard band can be defined by an upper limit and a lower limit of the time series.
[0102] (V) Camera monitoring: Monitors whether the characteristic data (e.g., brightness, blue difference, or red difference) of the camera image of the monitored object meet predetermined detection conditions. When the field device 10 is a camera, the camera monitoring application is executed.
[0103] The real-time monitoring application is configured to continuously monitor the symbol values of symbols based on PLC 1. For example, it continuously collects the symbol values of one or more symbols at a scan time level according to the settings of the real-time monitoring application and continuously displays this information based on the collected symbol values during real-time information updates. The one or more symbols to be continuously monitored are preset by the user. The real-time monitoring application has, for example, web server functionality and can be set via a general-purpose browser through the communication unit 43. Since it can be set from a general-purpose browser, it can be set or monitored from a PC, smartphone, or tablet without using specialized tools such as programming support devices. Furthermore, for the one or more symbols to be continuously monitored, the real-time monitoring application automatically sets a threshold corresponding to the symbol based on the symbol values in multiple cycles under normal conditions. For example, the real-time monitoring application receives user instructions and automatically sets a threshold for monitoring the status of multiple symbols to be continuously monitored based on changes in symbol values in multiple cycles under normal conditions. The threshold is set to monitor states that differ from the norm, i.e., abnormal states, and the real-time monitoring application issues an alarm when the symbol value of the monitored symbol exceeds the threshold. In this way, for example, PLC 1 can capture signs before the equipment is shut down. PLC 1 can be set to alarm when the symbol value of a monitored object symbol exceeds a threshold, as a result of sign monitoring performed by a real-time monitoring application, as a condition for saving the operation log. PLC 1 saves operation log data before and after the alarm performed by the real-time monitoring application is triggered as an event. When the saving of the operation log data is complete, PLC 1 activates the save completion device. When the completion of saving of the operation log data is received, the operation log analysis application can automatically analyze the operation log data. For example, the operation log analysis application can analyze the operation log data in response to activating the save completion device. The operation log analysis application analyzes the symbol value of the symbol to be analyzed (e.g., the device value of all bit devices) and extracts the symbol that is a candidate for causing the alarm. In this way, the operation log analysis application automatically analyzes the cause of the alarm based on the operation log data saved due to the alarm performed by the real-time monitoring application and extracts symbols that are different from the usual ones from the operation log data. As a result, CPU 41a continuously monitors the status of the equipment through the sign monitoring function of the real-time monitoring application and issues alarms due to changes. Furthermore, the CPU 41a automatically analyzes the cause of the alarm and extracts symbols that are different from the usual ones. That is, the PLC 1 monitors the symptoms of the equipment to be controlled by continuously monitoring the symbol values, notifies the equipment to be controlled of the symptoms through an alarm before the equipment to be controlled stops, and automatically analyzes the cause of the symptoms.
[0104] [Details on handling monitoring applications]
[0105] Figure 8 A dashboard 100 for the processing monitoring application is displayed on a PC 2b. The dashboard 100 is displayed, for example, by a web browser 61 based on display data 77. The dashboard 100 can be displayed on a display device using software different from a web browser, such as a PC 2a and an HMI 16. The dashboard 100 is a display screen (user interface) that displays monitoring results in real time. The operation display unit 101 shows whether the processing monitoring application is operating or stopped. The toggle button 102 is used to instruct the stop / resume unit 86 to switch the operation status of the processing monitoring application between "operation" and "stop". The toggle button 102 can switch between on / off test operation mode and application operation / non-operation. The test operation mode performs judgments on warning and attention states and displays the judgment results, but does not record the judgment results as history. The history button 103 is used to instruct the history save unit 94 to save the currently displayed information (measurement values or charts, etc.) as history. The settings button 104 is used to invoke the settings wizard for the processing monitoring application. The scale button 105 is used to request the display processing unit 84 to display the measurement values (time from start to end of triggering) of each process using a scale. In this way, the display data 77 includes a display component that implements control objects such as buttons.
[0106] The status display area 106a indicates whether the measurement value is in a normal, alert, or warning state. The item name display area 106b displays the name of each process. The measurement value display area 106c displays the measurement value from the start of triggering to the end of triggering. The chart display area 106d uses bar objects 107a to display the measurement value. The chart display area 106d can use vertical line objects 107c to display the upper and lower limits used to determine whether the measurement value is in a warning state, and the upper and lower limits used to determine whether the measurement value is in an alert state. In addition, the chart display area 106d can use bar objects 107b to display the master data of the learning results or measurement values specified by the user. The master data object 107b can be shaded, for example, to visually distinguish it from the measurement value object 107a. The detail button 108 is a button used to indicate the display of details of the measurement value (e.g., trend charts and histograms).
[0107] exist Figure 8 In the diagram, chart display area 106d displays measured values in synchronous mode (cut-out mode). Synchronous mode displays the measured values of each process throughout the entire cycle operation, starting from the initial trigger timer. In synchronous mode, chart display area 106d displays measured values and master data for each entire cycle. The measured values are updated in real time. Therefore, the object 107a, indicating the measured values for the entire cycle, gradually extends from left to right over time. When generation begins in each process, the object 107a, indicating the measured values for that process, gradually extends from left to right over time. When generation ends, the object 107b stops extending. Note that the master data object 107b is always displayed as an object with a fixed length.
[0108] In this way, the display data 77 has display components configured to implement multiple display areas 106. In addition, since the display processing unit 84 updates the display data 77 over time, the information displayed on the dashboard 100 is also updated.
[0109] Figure 9 A dashboard 100 for monitoring processing in asynchronous mode is shown. In the measurements of the duration of each process in asynchronous mode, the most recent measurement is displayed as a bar object 107d moving from right to left. Past measurements are displayed as dashed bar objects 107e. That is, when a start trigger is detected for a process, object 107d extends from the right edge to the left edge of the chart display area 106d. When an end trigger is detected for that process, object 107d stops extending because the measurement value has already been defined. Thereafter, while object 107d maintains a fixed length corresponding to the measurement value, object 107d moves to the left over time. Note that once object 107d reaches the left edge of the chart display area 106d, further leftward movement is not permitted; therefore, object 107d is displayed as shrinking over time.
[0110] The chart shows that region 106d can display multiple consecutive measurements over the entire cycle. For example, it can be visually observed that when the distance from the right edge of object 107e, which indicates a past measurement, to the left edge of object 107d, which indicates the next measurement, is short for a given process, that process has less idle time and becomes a bottleneck in the entire cycle.
[0111] The colors of objects 107a, 107b, 107d, and 107e can change according to their normal, attentive, and warning states. For example, green, yellow, and red can be used to visually distinguish between the normal, attentive, and warning states, respectively.
[0112] Figure 10 The diagram illustrates a scaled display mode invoked by the scale button 105. This scaled display mode is, for example, where objects 107a and 107b are normalized and displayed such that the larger of the upper limit of the warning state and the upper limit of the attention state is 70% of the entire length of the chart display area 106d. Alternatively, in this mode, objects 107a and 107b can be normalized and displayed such that the smaller of the lower limit of the warning state and the lower limit of the attention state is 30% of the entire length of the chart display area 106d. Alternatively, in this mode, objects 107a and 107b can be normalized and displayed such that the main data is 50% of the entire length of the chart display area 106d. Alternatively, in this mode, objects 107a and 107b can be normalized and displayed as 100% for a predetermined maximum monitoring time. The specific numerical values for the specified scale are merely examples. Display settings related to the scale display mode (such as parameters indicating the scale) can also be selected or specified by the user in the setup wizard, which will be described later.
[0113] exist Figure 10 The system includes a notification display area 109 indicating that an application error has occurred. If no application error has occurred, the notification display area 109 may display a normal status or may not display any content. When the application error detection unit 87 detects an application error, it issues a notification. Based on this notification, the notification display area 109 displays the error message (notification content) along with the error code, date and time of occurrence, etc.
[0114] exist Figure 10 The system includes a group switching button 191. The group switching button 191 is used to specify one of multiple groups for the group switching unit 59. When the group switching button 191 is pressed before the user has created a group, the group switching unit 59 can display a new group creation screen on the display unit 7, for example, to receive the specified group identification information (e.g., group number or group name). In this way, multiple groups are stored in the memory 42a. These multiple groups may be part of the setting data 73.
[0115] Each group is associated with attention state threshold settings, warning state threshold settings, and chart display settings (e.g., settings for creating and displaying trend charts and settings for creating and displaying histograms). Therefore, these settings can also be switched together by switching groups.
[0116] Figure 11 The detailed screen 110 to be displayed by pressing the detail button 108 is shown. When the web server 85 receives information indicating that the detail button 108 has been pressed, the display processing unit 84 sends the display data for displaying the detailed screen 110 to the web browser 61 via the web server 85. Note that the display data for displaying the detailed screen 110 may be a part of the display data 77.
[0117] The status display area 111 indicates the status of the process selected by the detail button 108. The date and time display area 112 indicates the date and time when the status indicated in the status display area 111 occurred. The return button 113 is used to indicate returning from the detail screen 110 to the dashboard 100. Details of the status of the process selected by the detail button 108 are displayed in display areas 106a to 106d. The scale button 105 can be located in the chart display area 106d.
[0118] Detailed display area 114 displays a histogram when button 116a is pressed, and a trend chart when button 116b is pressed. Histogram display area 115 contrasts the histograms of recent data with the histograms of the main data. Histogram display area 115 can display the thresholds (upper and lower limits) for warning and alert states using vertical lines. Statistical display area 117a displays the statistical values of recent data (number of data points, maximum, minimum, and average). Statistical display area 117b displays the statistical values of the main data (number of data points, maximum, minimum, and average).
[0119] The monitoring item setting display area 118 displays the item name (processing name) set as a monitoring item, the monitoring method, the bit device used as the start trigger, and the bit device used as the end trigger. The edit button 120a is a button used to indicate the editing of the monitoring item's settings. When the edit button 120a is pressed, the CPU 41a (display processing unit 84 and setting unit 80) of the expansion unit 4a can display the setting editing screen for the PC 2b.
[0120] The threshold setting display area 119 displays the thresholds (upper and lower limits) for warning and alert states. The edit button 120b is used to instruct the user to edit the threshold settings. When the edit button 120b is pressed, the CPU 41a of the expansion unit 4a can display the threshold setting editing screen for the PC 2b. The automatic threshold setting button 121 is used to instruct the CPU 41a (threshold setting unit 58) of the expansion unit 4a to automatically set the thresholds.
[0121] Figure 12 The detailed screen 110 shown is the result of pressing the detailed button 108. Here, button 116b has been pressed, so the detailed display area 114 displays the trend graph in the trend graph display area 123. The trend graph display area 123 can display lines indicating the trend of the maximum value, lines indicating the trend of the average value, and lines indicating the trend of the minimum value. In addition, the thresholds (upper limit and lower limit) for warning and attention states can be displayed as horizontal lines.
[0122] Setup Wizard
[0123] Figure 13 The selection screen 130 shown is displayed on the display unit 7 of PC 2 when setting up these real-time monitoring applications. Essentially the same selection screen 130 is displayed on PC 2a and PC 2b. Selection screen 130 can be displayed on either PC 2a or PC 2b. When button 131a is pressed, the stream / instrument creation unit 51 displays a setup wizard on the display unit 7 for setting up the processing monitoring application. When button 131b is pressed, the stream / instrument creation unit 51 displays a setup wizard on the display unit 7 for setting up the timing monitoring application. When button 131c is pressed, the stream / instrument creation unit 51 displays a setup wizard on the display unit 7 for setting up the waveform upper / lower limit monitoring application. When button 131d is pressed, the stream / instrument creation unit 51 displays a setup wizard on the display unit 7 for setting up the waveform guard band monitoring application. When button 131e is pressed, the stream / instrument creation unit 51 displays a setup wizard on the display unit 7 for setting up the camera monitoring application. Buttons 131a to 131e are operated by indicator 132.
[0124] Figure 14 A setup wizard 140 for setting up a real-time monitoring application is shown. The application name setting unit 141 receives the identification information and name of the real-time monitoring application to be set. For example, the application name setting unit 141 can receive application names for each application ID (=0, 1, 2, ... etc.). Furthermore, the application name setting unit 141 can receive application names in various languages.
[0125] The maximum monitoring time input unit 142 receives input of time such as the value of the continuously monitored device by the real-time monitoring application. The display mode selection menu 143 is a menu for receiving the selection of the display mode of the graph in the graph display area 106d. Here, the synchronous mode or asynchronous mode mentioned above is selected. The monitoring method setting unit 145a receives the setting of the monitoring method for each process. The start specification in the monitoring method refers to a monitoring method that sets the time period from one start-triggered input to the next start-triggered input as the monitoring period. The start / end specification refers to a monitoring method that sets the time period from the start-triggered input to the end-triggered input as the monitoring period. The item name setting unit 145b receives the input of the process name. The start-triggered setting unit 145c receives the specification of the bit device used as the start trigger. The end-triggered setting unit 145d receives the specification of the bit device used as the end trigger. If the monitoring method is "start specification", it is not necessary to set the end trigger. The monitoring enable unit 145e receives the specification of whether to enable or disable process monitoring. The attention status threshold setting unit 145f receives the specification of the upper limit and lower limit values of the attention status. The warning state threshold setting unit 145g receives the specified upper and lower limits for the warning state. Although in Figure 14 It is not shown in the diagram, but a master data settings section and a detailed settings section can be added (e.g., an automatic threshold setting button, an input section for the amount of data used to create a trend chart).
[0126] In the setup information received by the setup wizard 140, the setup information received by the start trigger setup unit 145c and the end trigger setup unit 145d, etc., is appropriately selected by understanding the user program executed in the basic unit 3. However, there may be cases where the creator of the user program is different from the setter of the real-time monitoring application. In this case, the setter of the real-time monitoring application may understand the user program. Therefore, bit devices used as start triggers and bit devices used as end triggers can be entered in file format. Start triggers and end triggers for the entire process and start triggers and end triggers for each process can be entered in file format including structured data such as CSV. In addition, parameters for multiple applications can be entered together in file format including structured data. Multiple applications may include operation log analysis applications and real-time monitoring applications, or may include process monitoring applications and timing monitoring applications within real-time monitoring applications. Parameters may include the name of the item, the trigger type (using only start trigger or using both start trigger and end trigger), the name of the device used as the start trigger and its trigger establishment condition (the rising or falling edge of the device will be determined as trigger establishment), and the name of the device used as the end trigger and its trigger establishment condition.
[0127] When the synchronization mode is selected as the display mode, a receiving unit can be further displayed, which receives the designation of the name or number of the item used as the reference for the synchronization display.
[0128] The language settings button 146 is used to set which language is assigned to which of the multiple review sets. For example, performing the language settings will assign Japanese to review set No. 1 and English to review set No. 2. Note that the application name is also entered in association with the language settings. For example, if review set No. 1 is set to Japanese, then the application name set to review set No. 1 will be written in Japanese.
[0129] The translation button 147 is used to request the CPU 41a to translate words written in one language from one comment set into words written in another selected language from another comment set. When the user specifies the language before translation, the language after translation, and the number of the comment set to which the translation result is to be output, the CPU 41a performs the translation to create the comment set. The CPU 41a can receive the dictionary data to be used for translation from the user.
[0130] The save button 148 is used to command the CPU 41a to save the setting data entered through the setup wizard 140 with a filename. The read button 149 is used to command the CPU 41a to read the pre-saved setting data and reflect that setting data in the setup wizard 140.
[0131] • Automatic threshold setting
[0132] When detected Figure 12 When the automatic threshold setting button 121 shown has been pressed, the threshold setting unit 58 automatically sets the threshold for the attention state and the threshold for the warning state according to the pre-provided setting rules (calculation rules). Here, automatic setting means that the user does not need to manually input at least some of the thresholds that need to be set. The threshold setting unit 58 can receive input of the conditions required for the calculation in automatic setting. Here, the conditions may include the specification of the measurement data to be used for threshold calculation and the specification of the threshold calculation technique (calculation rules). As measurement data, measurement data that is accumulated to display a histogram may be specified, or new measurement data may be specified. In the latter case, the threshold setting unit 58 starts measuring data when it detects that the execution button (not shown) has been pressed, acquires new measurement data, and uses the new measurement data to perform threshold calculation.
[0133] Figure 15 The threshold setting unit 58 displays a condition setting screen 150 on the display unit 7 of the PC 2b. In this example, a selection menu for the calculation technique is provided for each threshold. In this example, the upper limit (e.g., +σ) and lower limit (e.g., -σ) of the attention state are set using the standard deviation σ of the measurement data. When using the standard deviation σ, it is easy to set an appropriate threshold under stable conditions where there are small long-term deviations (such as drift). On the other hand, considering long-term deviations, the upper limit and lower limit can be set using the maximum and minimum values of the measurement data. For example, the threshold setting unit 58 can set the upper limit and lower limit by multiplying the maximum and minimum values by coefficients such as 1.1 and 0.9, respectively. In addition, regarding the warning state, the upper limit (e.g., +3σ) and lower limit (e.g., -3σ) of the warning state are set using the standard deviation σ of the measurement data. Regarding the warning state, the setting method of using the maximum and minimum values can also be prepared in the same way as the attention state. Regarding the main value, the average value of the measurement data is used. In this way, multiple calculation techniques are suggested via a selection menu, and the threshold is automatically set using one of the user-selected techniques. Note that the checkbox is unchecked when the user specifies the threshold.
[0134] • Monitoring settings
[0135] Figure 16 The manual settings screen 200 shows the monitoring item to be displayed when the edit button 120a is pressed. In this example, a toggle switch 201 is provided to indicate whether monitoring is enabled or disabled. The manual settings unit 202 receives the monitoring method, item name (processing name), start trigger, and end trigger specifications from the user. The settings unit 80 saves the information entered through the manual settings screen 200 in the settings data 73.
[0136] • Threshold setting
[0137] Figure 17 The manual setting screen 210 displays the threshold to be shown when the edit button 120b is pressed. The threshold input unit 211 receives not only thresholds (upper and lower limits) related to attention and warning states, but also manual input for the main value. The setting unit 80 saves the information input through the manual setting screen 210 in the setting data 73.
[0138] System Settings
[0139] Figure 18 The system settings tab 160 included in the setup wizard 140 is shown. The operation log settings section 161 includes a checkbox for specifying whether to save operation logs and a section for specifying the operation log ID. When the checkbox is selected, the operation log saving section 93 is enabled. The details button 165a is a button for receiving detailed settings related to operation logs. For example, a settings screen for operation log saving conditions can be displayed. In this settings screen, as a saving condition, one can select whether to save operation logs only when a warning state occurs, only when a alert state occurs, or when both a warning state and an alert state occur.
[0140] The event registration setting unit 162 includes a checkbox for receiving settings on whether to register a notice state or a warning state in the CPU event / error history of the basic unit 3. When the checkbox is selected, the event registration unit 92 described above is enabled. The detail button 165b is a button for receiving detailed settings related to the event / error history. When the detail button 165b is pressed, a setting screen for the registration conditions of the event / error history is displayed. As the registration conditions, one can select whether to perform registration only when a notice state occurs, only when a warning state occurs, or perform registration when either a warning state or a warning state occurs.
[0141] Regarding data settings, the memory card settings unit 163 includes: a checkbox for specifying whether to use the memory card as the destination for saving operation records; and a menu for specifying which memory card is attached to which unit.
[0142] The historical data setting unit 164 includes: a setting unit that receives a specification of the amount of chart data to be saved by the historical data saving unit 94 after an alert or warning state occurs; a setting unit that specifies the maximum number of historical data to be saved; and a checkbox for specifying whether to retain the data used to display the trend chart.
[0143] The advanced settings unit 166 receives specifications for the maximum number of monitored items (the number of processes to be monitored), the maximum length of the string of item names, and the maximum length of the variable names specified by the start / end trigger. Information entered via the system settings tab 160 is saved by the settings unit 80 in the settings data 73.
[0144] Another example of a dashboard
[0145] Figure 19 Another example of the dashboard 100 is shown. The display components already described are indicated by the same reference numerals, and their descriptions are omitted. Figure 19 The dashboard 100 shown includes: a threshold display area 106e for displaying thresholds (upper and lower limits) for an attention state; and a threshold display area 106f for displaying thresholds (upper and lower limits) for a warning state. These threshold display areas display the upper and lower limits as numerical values. Even... Figure 19 In the dashboard 100 shown, when the automatic threshold setting button 121 is pressed, it also displays... Figure 15 The condition setting screen shown is 150, and it automatically sets the thresholds for all items under specified conditions. Other buttons and displays include "About". Figure 10 The described button and display are the same.
[0146] • Screen used for switching application operations
[0147] Figure 20 Screen 220 is displayed for switching application operations. When the switch button 102 is pressed, screen 220 is displayed on the display unit 7 of PC 2b via the stop / resume unit 86. Switch 221 is a switch for instructing the stop / resume unit 86 to switch the application's operation status to "operating" or "stopped". Switch 221 is also a switch for instructing the stop / resume unit 86 to switch the test operation mode to enabled or disabled.
[0148] • Relationship between measurement data and master data in the chart
[0149] Figure 21 The graph is shown in synchronous mode. Shaded bar objects indicate master data. Blank bar objects indicate the duration of each process (measurement result). In this example, the entire cycle is triggered at time t0. The transport process in the master data has already started at time t1. On the other hand, the transport process in the measurement data starts at a later time t2. Time t3 corresponds to the lower limit of the warning state based on time t2. Time t4 corresponds to the lower limit of the attention state based on time t2. Time t5 is the time when the transport process in the master data has ended and is the start time of the processing. Time t6 corresponds to the upper limit of the attention state based on time t2 regarding the transport process. Time t7 corresponds to the upper limit of the warning state based on time t2 regarding the transport process. In practice, times t1 to t7 are managed as individual time lengths. For example, the lower limit of the warning state for transport processing is pre-stored as the time length T1 from time t2 to time t3. The lower limit value for the attention state used in the conveying process is pre-stored as the time length T2 from time t2 to time t4. The upper limit value for the attention state used in the conveying process is pre-stored as the time length T3 from time t2 to time t6. The upper limit value for the warning state used in the conveying process is pre-stored as the time length T4 from time t2 to time t7. Since time t2 changes each time, if time t2 is determined, the time lengths T1 to T4 are added to time t2, and the display position of each threshold is determined.
[0150] The bar charts indicating the duration (measurement) of each process can be colored according to the state. Similarly, the vertical lines indicating the thresholds for each state can also be colored according to the state. For example, a normal state can be colored green, a caution state can be colored yellow, and a warning state can be colored red.
[0151] Within the display range, set (1) the maximum monitoring time for the entire cycle or (2) the maximum value among the threshold, master value (master data), and measured value (measurement data) of the previous entire cycle. (1) is the case where neither the threshold nor the master value is set. (2) is the case where either the threshold or the master value is set.
[0152] [Details of the scheduled monitoring application]
[0153] The timed monitoring application is a simplified version of the processing monitoring application described above. For example, the processing monitoring application has synchronous, asynchronous, and proportional display modes, while the timed monitoring application only has a proportional display mode. Additionally, if a history save event occurs, the graphs of all processes are saved as history in the processing monitoring application, but only the graphs of the processes that caused the history save event are saved in the timed monitoring application. The timed monitoring application is primarily used to monitor the operation of actuators (e.g., cylinders). In other words, the timed monitoring application is provided independently of the processing monitoring application to make it easier for users to understand the differences between using the processing monitoring application and using the timed monitoring application. Therefore, monitoring techniques that can be performed in the timed monitoring application can also be performed in the processing monitoring application. Because simplified functionality is provided in the timed monitoring application, the setup wizard is also simplified. This improves usability.
[0154] Figure 22 A setup wizard 140 for a timed monitoring application is shown. The setup wizard 140 for the timed monitoring application is essentially the same as the setup wizard 140 for a processing monitoring application. Since the display mode is fixed to a proportional display mode, the display mode selection menu is omitted. On the other hand, a setup section 145h is provided to receive settings for the maximum monitoring time for each processing cycle. The maximum monitoring time in the timed monitoring application is the timeout period for the end trigger. Although a maximum monitoring time is set for the entire cycle in the processing monitoring application, the maximum monitoring time is set for each processing cycle in the timed monitoring application.
[0155] [Waveform Upper / Lower Limit Monitoring Application]
[0156] • Upper / lower limit monitoring
[0157] Figure 23 This is a graph illustrating a monitoring technique (upper / lower limit monitoring) in waveform upper / lower limit monitoring applications. The horizontal axis represents time. The vertical axis represents the magnitude of the measured value. Upper / lower limit monitoring is a technique that monitors whether all time-series measurements taken within a specific measurement time period are equal to or less than the upper limit and equal to or greater than the lower limit. Here, the upper and lower limits can be two thresholds set for a warning state or two thresholds set for a attention state. Figure 23 In this context, the normal range is defined as the range equal to or less than the upper limit and equal to or greater than the lower limit. When the measured value exceeds the upper limit of the warning state, CPU 41a determines that an upper limit NG has occurred and issues a warning notification. NG stands for "defect" (abnormality). When the measured value falls below the lower limit of the warning state, CPU 41a determines that a lower limit NG has occurred and issues a warning notification. Note that the same judgment and notification processing is performed for the warning state.
[0158] • Peak (bottom) upper / lower limit monitoring
[0159] Figure 24 This is a graph illustrating a monitoring technique (peak (bottom) upper / lower limit monitoring) in waveform upper / lower limit monitoring applications. The horizontal axis represents time. The vertical axis represents the measured value. Peak (bottom) upper / lower limit monitoring is a technique that monitors whether the peak (or trough) of a time series measurement measured within a specific measurement time period is equal to or less than the upper limit and equal to or greater than the lower limit. Here, the upper and lower limits can be two thresholds set for a warning state or two thresholds set for a attention state. Figure 24 In this context, the normal range is defined as the range equal to or less than the upper limit and equal to or greater than the lower limit. When the peak (or bottom) value is outside the normal range, the CPU 41a (analysis unit 54 and application notification unit 91) determines that a peak (or bottom) NG has occurred and issues a warning notification. Note that the same judgment and notification processing are performed for the alert state. The measurement time is pre-specified by the user. For example, the measurement time begins from the rising (falling) edge of the trigger. Figure 24 During the measurement, the peak value measured within the measurement time did not reach the normal range. Therefore, the analysis unit 54 determined that a peak NG had occurred, and the application notification unit 91 issued a notification. Figure 24 In the case of NG, the timing determined by the analysis unit 54 is the end of the measurement time.
[0160] Figure 25 This shows another example of peak (bottom) upper / lower limit monitoring. Figure 25 During the measurement, the measured value deviates from the normal range in the middle of the measurement time. In this case, the CPU 41a (analysis unit 54 and application notification unit 91) issues a notification indicating that the peak value exceeds the upper limit when the measured value exceeds the upper limit. When the upper / lower limit monitoring of the peak value is performed in this way, an NG notification is issued when the measured value exceeds the upper limit.
[0161] Note that if, during the measurement time for monitoring the upper / lower limits of the baseline, the baseline is not equal to or less than the upper limit but is equal to or greater than the lower limit, CPU 41a issues an NG notification. The timing for this decision is the end timing of the measurement time. Conversely, if the measured value falls below the lower limit in the middle of the measurement time, CPU 41a immediately issues an NG notification.
[0162] • Timed upper / lower limit monitoring
[0163] Figure 26 This is a diagram illustrating timed upper / lower limit monitoring. Timed upper / lower limit monitoring refers to monitoring changes in the measured value at specific times. These changes occur, for example, when the measured value exceeds a threshold (trigger level).
[0164] CPU 41a (analysis unit 54) determines whether the timing when the measured value exceeds a threshold (trigger level) is within the normal range. That is, if the timing when the measured value exceeds the trigger level is equal to or greater than the lower limit and equal to or less than the upper limit, CPU 41a determines the state to be normal. Figure 26 In this case, when the measured value exceeds the trigger level, the timing exceeds the upper limit. Therefore, CPU 41a (application notification unit 91) issues an NG notification. The timing for this judgment is the timing corresponding to the upper limit.
[0165] Figure 27 This indicates a situation where the measured value has not exceeded the trigger level within the normal range. The CPU 41a (analysis unit 54 and application notification unit 91) issues an NG notification because the measured value has not reached the trigger level within the normal range. The timing for this judgment is the timing corresponding to the upper limit value.
[0166] Figure 28 The UI shows the detailed display area 114 in the waveform upper / lower limit monitoring application. In the waveform upper / lower limit monitoring application, in... Figure 12 The detailed display area 114 of the UI shown provides buttons 116c for indicating waveform display. Buttons 116a to 116c can be implemented as tabs.
[0167] When button 116c is pressed, CPU 41a (display processing unit 84) displays the waveform of the time series data as the measured value in waveform display area 305. In this example, the length of the horizontal axis (display range) of waveform display area 305 corresponds to a measurement time. CPU 41a determines the vertical axis (display range) of waveform display area 305 based on the maximum and minimum values in past measurements. That is, the scale of the vertical axis is set so that the maximum and minimum values in past measurements are not outside the display range. CPU 41a can display the thresholds for warning and attention states in waveform display area 305. CPU 41a can display cursor 306 in waveform display area 305. Cursor 306 can move in the horizontal direction in response to user operation and specify the collection time (collection timing) of the measurement value displayed on tooltip 307. Tooltip 307 displays the current measurement value and past measurement values that have elapsed for the same period since the start of the trigger. Display control 303 may include a control object for instructing CPU 41a to stop or resume updating the display of waveform display area 305. Display control 303 may also include a control object for instructing CPU 41a to zoom in or out on the horizontal axis (time axis) of waveform display area 305. CPU 41a may receive a zoom operation on the display range and move the waveform display range accordingly.
[0168] exist Figure 28 In the synchronous mode, multiple waveforms are displayed, but waveforms can also be displayed in asynchronous mode. For example, if waveform cut-out technology is not set, the CPU 41a displays the most recent measurement value at the right edge of the waveform display area 305. When the most recent measurement value is updated, the CPU 41a displays the most recent measurement value at the right edge of the waveform display area 305 and displays past measurement values to its left. As a result, the waveform is displayed such that the waveform moves from the right edge to the left edge of the waveform display area 305. In this case, the display range of the horizontal axis of the waveform display area 305 can be set according to the maximum monitoring time. The CPU 41a (display processing unit 84 and setting unit 80) can adjust the display range of the vertical axis according to the maximum and minimum values among the multiple measurement values acquired so far.
[0169] The CPU 41a (display processing unit 84) can display the threshold values for each state in the waveform display area 305. In this case, the CPU 41a can set different colors for the display of the current measurement value, past measurement values, and the threshold values for each state.
[0170] Surveillance technology
[0171] Figure 29 This illustrates the relationship between monitoring techniques (waveform cut-out techniques) and judgment techniques in waveform upper / lower limit monitoring applications. "Start-only triggering" is a monitoring technique where the time from one start trigger to the next start trigger is set as the measurement time (monitoring time). "Start-trigger / end-triggering" is a monitoring technique where the time from the start trigger to the end trigger is set as the measurement time (monitoring time). "Start-trigger / monitoring time" is a monitoring technique where a predetermined time from the start trigger is set as the monitoring time. "Continuous monitoring" is a technique that monitors continuously. "Sample trigger" is a technique that monitors the value only at the instant a sample trigger occurs.
[0172] like Figure 29 As shown, there are five waveform display modes obtained through a combination of monitoring and state determination techniques. In the first mode, the waveform does not move, and the left edge of the waveform display area 305 corresponds to the start trigger time. The position of the right edge of the waveform display area 305 corresponds to the maximum range of the waveform cut-out range (monitoring time) applicable to previously acquired waveforms. When the trigger generation timing is non-periodic, the waveform cut-out range (monitoring time) changes. Therefore, the position of the right edge of the waveform display area 305 can be set according to this change. Not only can the most recent waveform be displayed in the waveform display area 305, but one or more past waveforms can also be displayed in the waveform display area 305. In addition, the thresholds corresponding to each state can be displayed as horizontal bars.
[0173] The second mode is a technique that continuously displays the waveform, moving from the right edge to the left edge within the waveform display area 305. The display range of the horizontal axis of the waveform display area 305 is determined by a maximum measurement time preset by the user. Thresholds corresponding to various states are displayed as horizontal bars.
[0174] The third mode is a technique that continuously displays the waveform, moving from the right edge to the left edge within the waveform display area 305. The display range of the horizontal axis of the waveform display area 305 is determined by a user-preset maximum measurement time. Thresholds corresponding to each state are displayed as horizontal bars.
[0175] In the fourth mode, the waveform does not move, and the left edge of the waveform display area 305 corresponds to the start trigger time. The right edge of the waveform display area 305 is located at the end of the waveform cut-out range (monitoring time). Not only can the most recent waveform be displayed in the waveform display area 305, but one or more past waveforms can also be displayed. Additionally, the thresholds corresponding to each state are displayed as horizontal bars.
[0176] In the fifth mode, the waveform does not move, and the left edge of the waveform display area 305 corresponds to the start of the triggering time. The right edge of the waveform display area 305 is located at the end of the waveform cut-out range (monitoring time). Not only can the most recent waveform be displayed in the waveform display area 305, but one or more past waveforms can also be displayed. Additionally, the thresholds corresponding to each state are displayed as vertical bars. Furthermore, a horizontal bar indicating the trigger level to be used for judgment is displayed at the timing change point.
[0177] Figure 30 A setup wizard 140 for waveform upper / lower limit monitoring applications is shown. The already described portions are indicated by the same reference numerals.
[0178] The judgment technique setting unit 310a receives settings for any waveform judgment technique among the waveform judgment techniques described above. The monitoring object setting unit 310c receives settings for the unit, device (or variable), or data type used as the monitoring object. The collection period setting unit 310d receives settings for the collection period (e.g., fixed period or scan time) used for the monitoring object. If a fixed period is selected, settings for a specific period length (e.g., 50 milliseconds) are also received. The monitoring technique setting unit 310e selects one of the monitoring techniques described above (e.g., "start triggering only" and "start triggering / end triggering"). The specified condition setting unit 310f receives settings for the triggering device, the timing (falling or rising edge) of the trigger signal, and the monitoring time. When the judgment technique is to change the timing (upper / lower limit monitoring), the timing setting unit 310g receives the trigger level and conditions for the trigger level. Conditions for the trigger level mean, for example, comparing the time (measurement time) required until the measured value exceeds (or falls below) the trigger level with the upper or lower limit value of each state. For example, you can choose "more than" or "less than" as the condition for the trigger level.
[0179] Despite Figure 30 The middle part is omitted, but a monitoring enablement section 145e can be provided for each item to indicate whether monitoring is enabled or disabled. Additionally, a detailed settings button can be provided. When the detailed settings button is pressed, for example, the setting for the number of decimal places of the values displayed on the dashboard can be received.
[0180] [Waveform Guard Band Monitoring Application]
[0181] Waveform guard band monitoring refers to monitoring whether the waveform formed by the measured values is within the normal range (guard band) defined by the upper and lower limit waveforms. The upper and lower limit waveforms can be referred to as guard band waveforms (threshold waveforms). Note that waveform guard band monitoring applications and waveform upper / lower limit monitoring applications are essentially common applications. However, these applications use different thresholds in their judgment techniques. In waveform upper / lower limit monitoring applications, the threshold is specified as a fixed value. On the other hand, in waveform guard band monitoring applications, the threshold is specified as the waveform. Furthermore, waveform guard band monitoring applications only use the "start trigger / measurement time" as the monitoring technique. This is because the duration of the measured waveform needs to match the duration of the threshold waveform in order to compare the measured waveform with the threshold waveform. In waveform upper / lower limit monitoring applications, the threshold is used... Figure 29 Any of the five patterns shown.
[0182] Figure 31 The waveform to be displayed in waveform display area 305 for a waveform guard band monitoring application is shown. CPU 41a synchronizes the threshold waveform and the measured waveform with a start trigger as a reference and compares the measured values acquired over time with the threshold waveform. In this example, the normal range is the band range (guard band) between the upper and lower limit waveforms. Figure 31 In the waveform, the measured value exceeds the upper limit value at a certain time interval. Therefore, the CPU 41a (analysis unit 54 and application notification unit 91) determines that the upper limit NG has occurred and issues a notification. Figure 31 If the measured value falls below the lower limit waveform at another timing point, the CPU41a determines that the lower limit NG has occurred and issues a notification.
[0183] • How to set the threshold waveform
[0184] Figure 32 The method (calculation rule) for setting the threshold waveform is shown. The vertical axis represents the value, and the horizontal axis represents time. The CPU 41a (threshold setting unit 58) determines the upper limit waveform and the lower limit waveform based on past measurement data and a value tolerance width mv pre-specified by the user. The past measurement data can be measurement data obtained from a single measurement or the average value of measurement data obtained from multiple measurements. In this example, the upper limit waveform Uth(t) is calculated by adding the value tolerance width mv to the past measurement value M(t). Similarly, the lower limit waveform Lth(t) is calculated by subtracting the value tolerance width mv from the past measurement value M(t).
[0185] Figure 33 Another method for setting the threshold waveform (calculation rule) is shown. In this example, a time tolerance width mt is used to deform the upper limit waveform Uth(t) and the lower limit waveform Lth(t) obtained using a value tolerance width mv. For example, when the time tolerance width mt is 2, the new upper limit waveform Uth'(t) is obtained as follows. First, the maximum value Uth_max(t) is obtained in Uth(t-2), Uth(t-1), Uth(t), Uth(t+1), and Uth(t+2). When t = 3, Uth_max(3) is 7. Therefore, Uth'(3) is determined to be 7.
[0186] The new lower limit waveform Lth'(t) is obtained as follows. When the time tolerance width mt is 2, the minimum value Lth_min(t) is obtained in Lth(t-2), Lth(t-1), Lth(t), Lth(t+1), and Lth(t+2). When t=3, Lth_min(3) is -1. Therefore, Lth'(3) is determined to be -1.
[0187] In this way, the upper limit value Uth'(t) at a given time t is determined as the maximum value among the (mt+1) measurements (Uth when using the value tolerance width mv) obtained between time t-mt and time t+mt. Similarly, the lower limit value Lth'(t) at a given time t is determined as the minimum value among the (mt+1) measurements (Lth when using the value tolerance width mv) obtained between time t-mt and time t+mt.
[0188] Figure 34 Another method for setting the threshold waveform is shown. The CPU 41a (threshold setting unit 58) can determine the upper limit value Uth(t) and the lower limit value Lth(t) as a free curve drawn based on the trajectory of the indicator 132 linked to the operation of the operation unit 8 of the PC 2b. For example, the CPU 41a can save the coordinate data of the trajectory (free curve) of the indicator 132 as a CSV file. The CPU 41a creates a file path by combining the application ID and the number of monitored items, and saves the CSV file along with the file path. As a result, CSV files including the upper limit value and the lower limit value are saved for each combination of monitoring application and monitored item.
[0189] Figure 35 This illustrates the UI of detailed display area 114 in a waveform guard band monitoring application. Figure 28 compared to, Figure 35 The difference lies in that the threshold for each state is set to the waveform. Other display technologies used in waveform guard band monitoring applications are the same as those used in waveform upper / lower limit monitoring applications. For example, in addition to the current waveform, three previously measured waveforms can also be displayed.
[0190] As described above, the monitoring technique for waveform guard band monitoring applications is defined using the start trigger and measurement time. However, in rare cases, the monitoring technique is not set by the user. In this case, the CPU 41a (display processing unit 84) updates the display as time elapses, so that the most recent measurement value in the measured waveform is displayed at the right edge of the waveform display area 305. That is, the waveform moves from the right edge to the left edge of the waveform display area 305 in the same manner as in asynchronous mode. The CPU 41a can display the threshold waveforms of each state based on the start trigger along with the measured waveform. Note that the display range of the horizontal axis of the waveform display area 305 is set to the maximum monitoring time predetermined by the user.
[0191] Figure 36 A setup wizard 140 for waveform guard band monitoring applications is shown. The parts already described are indicated by the same reference numerals. The setup unit 80 displays the setup wizard 140 on the PC 2b and receives various settings. The start trigger setting unit 320a receives settings for devices used as start triggers, etc. The measurement time setting unit 320b receives settings for the measurement time (monitoring time) based on the start trigger. The threshold specification technology setting unit 320c receives settings for threshold specification technologies. As described above, the user can select a technology that specifies tolerance widths (value tolerance width and time tolerance width) and past measurement data, or a technology that specifies the threshold waveform using a free curve. If other technologies are already implemented, they are also used as options. In the tolerance width setting unit 320d, settings for the value tolerance width mv and time tolerance width mt related to the attention state are received. In the tolerance width setting unit 320e, settings for the value tolerance width mv and time tolerance width mt related to the warning state are received. The tolerance width setting unit 320d and tolerance width setting unit 320e receive the common values of the upper threshold waveform and the lower threshold waveform, namely the tolerance width mv and the time tolerance width mt, but this is only an example. The value tolerance width mv and time tolerance width mt of the upper threshold waveform and the value tolerance width mv and time tolerance width mt of the lower threshold waveform can be received separately.
[0192] [flow chart]
[0193] • Handling monitoring applications and scheduled monitoring applications
[0194] Figure 37 This is a flowchart illustrating the monitoring processing performed by the CPU 41a of the expansion unit 4a. Since the timing monitoring application is a simplified version (subset) of the monitoring application as described above, the processing applicable to both applications will be described below. Furthermore, the monitoring application includes a data exploitation program executed in the expansion unit 4a and a web application executed in the web browser of the PC 2b.
[0195] In S1, CPU 41a (collection unit 82) monitors devices or variables corresponding to start triggering and end triggering based on setting data 73. Setting data 73 stores the name of the device or variable used for start triggering and the predetermined value stored in that device or variable. The start timing can be set when the value of the device or variable has changed to the predetermined value, or the start condition can be set when the change of the device or variable is a rising or falling edge. The same applies to end triggering. CPU 41a (collection unit 82) executes a data utilization program based on setting data 73 to collect device values specified by setting data 73 and stores these device values as collected data 75 in memory 42a. Here, collected data 75 can be time-series data collected at different times. In addition to the data utilization program, a collection program that performs collection operations based on collection setting data 74a in setting data 73 can also be provided.
[0196] In S2, CPU 41a (data processing unit 83) executes the data utilization program specified by the application template 72. CPU 41a (data processing unit 83) executes the data utilization program to determine timing information from the timing of satisfying the start trigger condition to the timing of satisfying the end trigger condition based on the collected data 75 (device value). CPU 41a (data processing unit 83) monitors whether the device or variable set as the monitoring object satisfies conditions such as a rising edge. Here, monitoring the timing of satisfying the condition means monitoring the timing of satisfying the start trigger condition. CPU 41a (data processing unit 83) monitors whether the device or variable set as the monitoring object satisfies conditions such as a rising edge. Here, monitoring the timing of satisfying the condition means monitoring the timing of satisfying the end trigger condition. The timing information determined by CPU 41a (data processing unit 83) can be the time width (measurement time) from the timing of satisfying the start trigger condition to the timing of satisfying the end trigger condition.
[0197] In S3, CPU 41a (data processing unit 83) determines the state based on the time information determined in S2 and the judgment threshold set according to setting data 73. CPU 41a (data processing unit 83) performs this judgment by executing a data utilization program. There are cases where the upper and lower limits of the attention state and warning state are set as the judgment thresholds. In this case, CPU 41a (data processing unit 83) determines whether the determined time information, as a measured value, exceeds the upper limit. Additionally, CPU 41a (data processing unit 83) determines whether the determined time information is below the lower limit. The state of the monitored object can include a normal state, an attention state, and a warning state. The attention state and warning state are distinguished based on the degree of difference between the measured value and the normal state. The difference between the measured value (normal value) in the normal state and the measured value (warning value) in the warning state is greater than the difference between the measured value in the normal state and the measured value (attention value) in the attention state. Therefore, a value that differs more from the normal value than the threshold for the attention state is set as the threshold for the warning state. There are cases where the threshold for the attention state and the threshold for the warning state are each set as upper limits. In this situation, when the determined time information is equal to or less than the threshold of the attention state, the CPU 41a (data processing unit 83) determines that the monitored object's state is "normal state". When the determined time information exceeds the threshold of the attention state but is equal to or less than the threshold of the warning state, the CPU 41a (data processing unit 83) determines that the monitored object's state is "attention state". When the determined time information exceeds the threshold of the warning state, the CPU 41a (data processing unit 83) determines that the monitored object's state is "warning state". As a result, the parsed data 76 is created and stored in the memory 42a.
[0198] The thresholds for both the attention state and the warning state are set to lower limits. In this case, when the determined time information is equal to or greater than the attention state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "normal state". When the determined time information is less than the attention state threshold but equal to or greater than the warning state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "attention state". When the determined time information is less than the warning state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "warning state". As a result, the parsed data 76 is created and stored in the memory 42a.
[0199] There are cases where the thresholds for the attention state and the warning state are each set with upper and lower limits. In this case, when the determined time information is equal to or greater than the lower limit of the attention state and equal to or less than the upper limit of the attention state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "normal state". When the determined time information is less than the upper limit of the warning state and equal to or greater than the upper limit of the attention state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "attention state". Similarly, when the determined time information is less than the lower limit of the attention state and equal to or greater than the lower limit of the warning state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "attention state". When the determined time information is less than the lower limit of the warning state threshold or when the determined time information exceeds the upper limit of the warning state threshold, the CPU 41a (data processing unit 83) determines that the monitored object is in a "warning state". As a result, the parsed data 76 is created and stored in the memory 42a.
[0200] In step S4, CPU 41a (display processing unit 84) generates display data 77 for a dashboard that includes the time information, judgment threshold, and monitored object status determined in step S2 and step S3. CPU 41a (display processing unit 84) reflects the time information, judgment threshold, and monitored object status determined based on dashboard template 71 and setting data 73 in variables assigned to dashboard template 71. For example, CPU 41a creates display data 77 such that a measured value indicating the time width from the time when the start trigger condition is met to the time when the end trigger condition is met is displayed in the chart display area 106d in bar chart format. Display data 77 can be created as part of a web application. The time and the time from the time when the start trigger condition is met to the time when the end trigger condition is met can be displayed in a stripe format. As a result, a dashboard is displayed in the control of periodic operations that indicates not only the time width but also any time when each monitored object is operating within the period. CPU 41a can create display data 77 by periodically updating the displayed object data. CPU 41a uses display object data such as collected data 75 and / or parsed data 76 to create display data 77.
[0201] In S5, CPU 41a (Web server 85) provides display data 77 to PC 2b. CPU 41a can display the display data 77 on the monitor (HMI 16) of PLC 1. The monitor of PLC 1 can be built into PLC 1, or it can be connected to PLC 1 via wired or wireless means.
[0202] • Waveform upper / lower limit monitoring applications and waveform guard band monitoring applications
[0203] Figure 38 This is a flowchart illustrating the monitoring processes associated with waveform monitoring applications. Figure 38 In, with Figure 37 The same processes are denoted by the same reference numerals, and their descriptions are omitted. After S1 above, CPU 41a proceeds to S12.
[0204] In S12, the CPU 41a (data processing unit 83) determines the characteristic quantity of the waveform cut out during the monitoring period from the timing when the start trigger condition is met to the timing when the end trigger condition is met, based on the collected data 75 (device value) according to the setting data 73. In upper / lower limit monitoring, the characteristic quantity is the measured value itself. In peak upper / lower limit monitoring, the characteristic quantity is the maximum value (peak value) among all measured values measured during the monitoring period. In bottom upper / lower limit monitoring, the characteristic quantity is the minimum value (bottom value) among all measured values measured during the monitoring period. Changing the characteristic quantity in timing monitoring is the time from when the start trigger is activated until the measured value first exceeds the trigger level.
[0205] In S13, CPU 41a (data processing unit 83) determines the state based on the characteristic quantity and the judgment threshold. The judgment threshold varies depending on the judgment technique. For example, in waveform guard band monitoring applications, the judgment threshold is provided as waveform data (such as a CSV file). As described in S3, the characteristic quantity and the judgment threshold (which serve as the upper and lower limits of the threshold for each state) are compared to classify the state of the monitored item into a normal state, a warning state, or a warning state.
[0206] In S14, CPU 41a (display processing unit 84) generates display data 77 for displaying the judgment threshold, waveform (measured value or characteristic quantity), and judgment information (judgment result) on the instrument panel. In S5, the display data 77 of the instrument panel 100 is provided to PC 2a, PC 2b, or HMI 16.
[0207] [Details of KPI Calculation Applications]
[0208] Figure 40 A dashboard 400 of a KPI calculation application displayed on a PC 2b is shown. The KPI calculation application can, for example, calculate KPIs for a production preparation period. The dashboard 400 of the KPI calculation application displays the calculated KPIs. Here, KPIs include KPIs for a specific time period. For example, they may also include hourly output, utilization rate, yield rate, and cycle time. The KPI calculation application can not only calculate KPIs but also calculate and display the completion rate relative to the target value of the KPI. A KPI for a specific time period can be the KPI for the measurement period from the time the measurement start button 401 displayed on the dashboard 400 of the KPI calculation application was pressed to the time the measurement end button 402 was pressed. In this way, KPIs for a measurement period specified by user input can be calculated. Alternatively, a device can be set to specify the measurement period. In this case, KPIs for the measurement period determined according to the device values of the set device can be calculated.
[0209] The dashboard 400 for the KPI calculation application includes a KPI item display unit 410 and a measurement result display unit 420. The item display unit 410 displays items related to production volume measurement, items related to average CT (cycle time), items related to yield rate, and items related to utilization rate as KPI items. The measurement result display unit 420 displays the raw data (measurement results) used for KPI calculation. Measurement results may include measurement start time, measurement end time, elapsed time, operation time, cycle time, cycle time measurement count, product discharge count, number of good products, and number of defective products, etc. The dashboard 400 displays the KPI calculated based on the measurement values from the start of the measurement to the current time, from the start of the measurement to the end of the measurement. The dashboard 400 displays the KPI calculated based on the measurement values from the start of the measurement to the end of the measurement after the measurement ends. The dashboard 400 displays the measurement start time based on user input and device input in the start time display field. The dashboard 400 displays the measurement end time based on user input and device input in the end time display field. The dashboard 400 displays the time from the start of the measurement to the current time in the elapsed time display field. If the measurement has not yet ended, the end time display field can show that a measurement is in progress.
[0210] The KPI calculation application (flow / dashboard creation unit 51) receives parameter settings for calculating each KPI item. The flow / dashboard creation unit 51 receives specifications for devices corresponding to, for example, operation signals indicating that the production equipment is operating, discharge signals indicating that products have been discharged from the production equipment, output quantity per cycle, and defective product quantity per cycle. As operation signals, bit devices to be activated during operation can be specified. As discharge signals, bit devices to be activated each time a product is discharged can be specified. As output quantity per cycle, a constant indicating the output quantity or a word device storing that constant can be specified. As defective product quantity per cycle, a device for storing the defective product quantity per cycle can be specified.
[0211] As a cycle time, you can specify the entire period (measurement value) measured in the monitoring application. The KPI calculation application obtains values measured by other applications, i.e., cycle time or cycle time measurement count. The KPI calculation application can automatically obtain the measurement value for the entire cycle and the number of times the cycle time is measured from the monitoring application. The cycle time measurement count is obtained by counting the entire cycle from beginning to end as one measurement. Therefore, the cycle time measurement count indicates the number of repetitions of the entire cycle.
[0212] The dashboard 400 displays the operation time in the operation time display field, based on the ON time of the bit devices to be turned on during operation. The dashboard 400 displays the current cycle time automatically acquired from the processing monitoring application in the current CT display field, and displays the cycle time measurement count in the CT count display field. The dashboard 400 displays the ON count of the bit devices to be turned on each time a product is discharged in the discharge signal ON display field. The dashboard 400 displays the number of good products in the good product quantity display field, and the number of defective products in the defective product quantity display field. The good product quantity is a cumulative quantity obtained by adding the output quantity per cycle minus the defective product quantity per cycle when the discharge signal is turned on. The defective product quantity is a cumulative quantity obtained by adding the defective product quantity per cycle when the discharge signal is turned on.
[0213] The item display unit 410 of the dashboard 400 can display the target values entered by the user, the KPI items calculated based on the measurement results, and the completion rates corresponding to each item, along with the completion rate curves. Figure 1 The display shows the completion rate for each KPI item, indicating the actual value (calculated KPI) for each target. Output corresponds to the number of good products. Average CT is obtained by dividing the cumulative value of measurements over the entire cycle by the cycle time measurement count. The yield rate is obtained by dividing the number of good products by the total number of products. The total number of products is the cumulative number obtained by adding the output quantity per cycle when each discharge signal is turned on. Figure 40 In the example, the ON count of the discharge signal is 163 times. The number of outputs is 12. The number of good products is 1917. Therefore, the yield rate is calculated as 1917 / (163×12). The utilization rate is obtained by dividing the operation time by the elapsed time. Note that, in addition to the real-time screen described above, the dashboard 400 of the KPI calculation application may have a settings button 404 that displays a settings screen for setting up the KPI calculation application and a history display button 403 that displays a history screen for displaying past data.
[0214] Summary
[0215] [Viewpoint 1]
[0216] Storage device 32 and memories 42a and 42b can be used as storage components for storing applications. CPUs 31, 41a and 41b can be used as execution components for executing applications.
[0217] The collection unit 82 is an example of a collection component that collects symbol values stored in symbols according to an application, where the symbols are devices or variables used as collection objects. The flow execution unit 81 (analysis unit 54) can be used as a judgment or analysis component, which judges or analyzes whether the symbol values collected by the collection component according to the application meet the normal conditions set for the application, in order to detect conditions different from the normal conditions related to the symbol values. The display processing unit 84 is used as a generation component, which generates a display screen (e.g., dashboard 100) including judgment results or analysis results and information indicating the symbol values collected by the collection component according to the application. The dashboard 100 can be displayed on a PC 2a as a programming support device, a PC 2b with a web browser, or an HMI 16. The display data 77 required to display the display screen can be an image or video, or can be implemented as a web application. Furthermore, symbol values can be collected and displayed in real time. That is, symbol values can be updated and displayed in real time while the display screen is being displayed.
[0218] [Viewpoint 2]
[0219] The judgment or analysis unit (e.g., flow execution unit 81) can determine or analyze whether the duration of the process performed by PLC 1 (e.g., the time from the start of triggering to the end of triggering) meets the normal conditions. Note that the duration can be referred to as the monitoring time or measurement time.
[0220] [Viewpoint 3]
[0221] Symbolic values (e.g., device values or values stored in variables) may include device values indicating the start of processing and device values indicating the end of processing. The duration may be the time from a time when the device value of the start device has changed to a time when the device value of the end device has changed. The duration may be the time from a first start trigger to a second start trigger. The second start trigger is a start trigger that occurs after the first start trigger. Alternatively, the duration may be a predetermined time from the start of the first start trigger.
[0222] [Viewpoint 4]
[0223] A collecting component (e.g., collecting unit 82) can collect symbolic values of the duration of each of the multiple processes that form an operating cycle (e.g., the entire cycle, conveying process, processing process, inspection process, or discharge process, etc.). A generating component (e.g., display processing unit 84) can be configured to generate a display screen for displaying the duration of each of the multiple processes.
[0224] [Viewpoint 5]
[0225] The display screen can be configured to show graphical objects (e.g., bar objects) indicating the duration of each of the multiple processes, as well as graphical objects indicating master data to be compared with the durations of the multiple processes. Because the master data indicates the same state as usual, users can easily identify any processes where events have occurred that are different from usual.
[0226] [Viewpoint 6]
[0227] As described regarding asynchronous mode, a graphical object can be displayed as moving in one direction on the screen over time. As described regarding synchronous mode, a graphical object can be displayed as extending in one direction on the screen from a predetermined position.
[0228] [Viewpoint 7]
[0229] The display screen can be configured to show a graphic object (e.g., vertical line, horizontal line, wave, or band) that indicates normal conditions along with the graphic object.
[0230] [Viewpoint 8]
[0231] The alarm unit 90 can be used as a notification unit, which issues a notification when the symbol value meets the notification conditions set by the user.
[0232] [Viewpoint 9]
[0233] The notification component can be configured to send notifications to peripheral devices that display the screen. For example... Figure 19 As illustrated, the application notification unit 91 can display notifications on the dashboard 100. For example... Figure 39 As illustrated, the application notification unit 91 can display a dialog box 331 to be overlaid on the dashboard 330. The dialog box 331 can include a message indicating that the monitoring status of the application has changed from a normal state to an alert state or a warning state. When multiple notifications are generated at time intervals, the application notification unit 91 can display only the most recent notification for each monitoring application in the dialog box 331. The dialog box 331 can be provided with a clear button 332. The application notification unit 91 can erase the dialog box 331 when it detects that the user has pressed the clear button 332. The application notification unit 91 can retain notifications for each monitored device. When the clear button 332 is pressed, the application notification unit 91 can delete all notifications for the monitored device associated with the dialog box 331 including the clear button 332. Note that there is a situation where the dashboard 100 or 330 is not displayed on the PC 2b, etc., when a notification related to a monitored device is generated. In this case, the application notification unit 91 can display a dialog box 331 indicating the notifications that have been retained so far on the PC 2b when the dashboard 100 or 330 is displayed on the PC 2b. Note that the CPU 11 or HMI 16 of PC 2a or 2b can poll the application notification unit 91 to receive notifications and display dialog box 331. Display link 333 is a link to the dashboard 100 or 330 of the monitoring application that is monitoring the device notified by dialog box 331. When it is detected that display link 333 has been pressed, display processing unit 84 sends display data 77 of dashboard 100 or 330 associated with display link 333 to PC 2b via web server 85. As a result, a graph indicating the device value at the time the notification was generated is displayed on dashboard 100 or 330.
[0234] [Viewpoint 10]
[0235] Event registration unit 92 can be used as a registration component to register the history of errors or events occurring in PLC 1. Event registration unit 92 can be configured to register in the history when a symbol value meets registration conditions (e.g., a notice state or a warning state). For example, this history can be maintained by CPU 31 of basic unit 3. Event registration unit 92 can request CPU 31 to register in the history via internal bus 19.
[0236] [Viewpoint 11]
[0237] The operation record saving unit 93 is an operation record saving component that saves the symbol value as an operation record when the symbol value meets the saving conditions (e.g., a notice state or a warning state). In this case, the CPU 41a (stream execution unit 81) can analyze the operation record and create an analysis report indicating the analysis results, and display the analysis report on a peripheral device.
[0238] [Viewpoint 12]
[0239] When a symbol value is detected to deviate from the normal condition, the history saving unit 94 functions as a history saving component that saves the symbol value, the normal condition, and the display screen as history. For example, if a symbol value is detected to deviate from the normal state, not only the symbol value can be saved, but also the display data 77 for that symbol value can be saved.
[0240] [Viewpoints 13 and 14]
[0241] like Figure 12 As shown, the display screen may include a symbol value or a trend graph indicating the time trend derived from that symbol value. For example... Figure 12 As shown, the display screen may include a symbol value or a time histogram obtained from that symbol value.
[0242] [Viewpoints 15 and 16]
[0243] Setting components such as setting unit 80 and setting wizard 140 are used to set normal conditions. (See reference...) Figure 32 and 33 The setting unit (threshold setting unit 58) can be configured to create normal conditions by applying a predetermined calculation rule to a pre-acquired symbol value. For example, the threshold setting unit 58 can use a user-specified calculation rule as the predetermined calculation rule.
[0244] [Viewpoint 17]
[0245] The memory 42a can be used as a condition storage unit to store multiple condition sets with mutually different normal conditions. The group switching unit 59 can be used as a selection unit that selects a condition set from the multiple condition sets stored in the condition storage unit according to user instructions. As a result, the normal conditions can be easily changed. For example, multiple condition sets can be prepared for various types of products to be produced on the production line controlled by PLC 1.
[0246] [Viewpoint 18]
[0247] The Stop / Resume unit 86 and the toggle button 102 are examples of input components for inputting commands related to stopping or resuming application execution. When a command related to stopping application execution is input, the Stop / Resume unit 86 stops the application from executing. When a command related to resuming application execution is input, the Stop / Resume unit 86 resumes the application from executing. As a result, the user can easily instruct the application to stop and resume.
[0248] [Viewpoint 19]
[0249] The application error detection unit 87 can be configured to detect and report events that prevent the normal execution of the application. Such events include: designating a device not used in a ladder diagram program or similar program as a monitored device; the absence of a variable designated as a monitored object in the user program; and insufficient free space on the memory card designated as the destination for storing the collected data 75 and parsed data 76. All these errors prevent the normal execution of the application.
[0250] [Viewpoint 20]
[0251] like Figure 23 and Figure 28 As shown, the generating unit (display processing unit 84) can generate a display screen, so that multiple symbol values collected by the collecting unit as time series data are displayed as waveforms.
[0252] [Viewpoint 21]
[0253] like Figure 28 As shown, the generation unit (display processing unit 84) can display a first waveform (thick line) and a second waveform (thin line) in an overlapping manner. The first waveform (thick line) indicates multiple symbol values collected as time series data by the collection unit during a first collection period, and the second waveform (thin line) indicates multiple symbol values collected as time series data by the collection unit during a second collection period prior to the first collection period. The user can latch the first waveform by performing a latching operation during its display and use the latched waveform as the second waveform. As a result, the user can more easily compare the current waveform with some past waveforms.
[0254] [Viewpoint 22]
[0255] The generation unit (display processing unit 84) can generate a display screen in which a line indicating a threshold (e.g., an upper or lower limit for a noticeable or warning state) used to adjust the peak or bottom value of the waveform is displayed along with the waveform, wherein the threshold is included in normal conditions. As a result, the user can more easily visually understand how much margin the peak or bottom value has relative to the threshold.
[0256] [Viewpoint 23]
[0257] like Figure 26 and Figure 27 As shown, the generating unit (display processing unit 84) can generate a display screen such that a line indicating a threshold for adjusting a symbol value exceeding a predetermined value (e.g., a trigger level) is displayed together with a waveform, wherein the threshold is included in normal conditions.
[0258] [Viewpoint 24]
[0259] For reference Figure 32 and 33 The threshold setting unit 58 can be used as a threshold determination component to determine a threshold waveform, wherein the threshold waveform is a set of measurement waveforms based on sign values and thresholds based on user input. User input may include, for example, coefficients for adding or subtracting measurement waveforms (e.g., value tolerance width mv). User input may include specified information for specifying waveform intervals before and after attention timing (e.g., time tolerance width mt), wherein these waveform intervals are considered to determine the threshold for attention timing in the threshold waveform among multiple sign values forming the measurement waveform. As a result, the threshold can be easily set.
[0260] [Viewpoint 27]
[0261] like Figure 34 As shown, the threshold setting unit 58 can be used as a threshold determination component, which determines the threshold waveform as a set of thresholds based on a free curve drawn by the user.
[0262] The present invention is not limited to the above embodiments, and various modifications and changes can be made within the scope of the spirit of the present invention.< / plc>
Claims
1. A programmable logic controller for executing a control program, comprising: A communication component is used to receive from an external tool that supports the creation of the control program an application for real-time monitoring of a monitored object and displaying the monitoring results on a web browser via a dashboard selected by the user of the external tool, as well as the setting data of the dashboard. The application and the setting data of the dashboard are configured to include a template corresponding to the application, a template corresponding to the dashboard, and setting data of various parameters specified by the user of the external tool corresponding to each template. A storage component for storing the setting data of the application and the dashboard, which are received as setting data via the communication component; as well as An execution component is used to execute the application stored in the storage component. The execution component includes: A collection component for collecting multiple symbol values stored in symbols according to the application, wherein the symbols are means or variables used as collection objects; A judgment component is used to detect conditions that differ from normal conditions related to multiple monitoring objects by judging whether each monitoring object, based on the symbol values collected by the collection component according to the application, meets the normal conditions set for the application. A generation component is used to generate display data to display a dashboard on a web browser in response to user instructions. The dashboard is capable of displaying data according to settings specified by the user of the external tool, including a list display of judgment results from the judgment component and information indicating the values of each monitored object, detailed displays of each monitored object, and a settings display for setting the normal conditions. A web server is configured to provide the display data generated by the generating component to a web browser, and, via the web browser that has displayed the settings through the dashboard, receive the settings of the normal conditions in response to user instructions from the web browser. The dashboard settings data specified by the user of the external tool include dashboard templates prepared for each application and parameters of the display components specified by the user of the external tool for setting the dashboard template.
2. The programmable logic controller according to claim 1, wherein, The judgment component determines whether the duration of the process executed by the programmable logic controller meets the normal conditions.
3. The programmable logic controller according to claim 2, wherein, The symbol value includes a device value indicating the start of the process and a device value indicating the end of the process, and The duration is the time from the time when the device value of the starting device has changed to the time when the device value of the ending device has changed.
4. The programmable logic controller according to claim 3, wherein, The collection component collects the symbol values to obtain the duration of each of the multiple processes that form an operating cycle, and The generating component is configured to generate a display screen for showing the duration of each of the plurality of processes.
5. The programmable logic controller according to claim 4, wherein, The display screen is configured to display a graphical object indicating the duration of each of the plurality of processes and a graphical object indicating master data to be compared with the duration of each of the plurality of processes.
6. The programmable logic controller according to claim 5, wherein, The graphic object is displayed as moving in one direction on the display screen over time or extending in one direction on the display screen from a predetermined position.
7. The programmable logic controller according to claim 6, wherein, The display screen is configured to show a graphic object indicating the normal conditions, along with the graphic object.
8. The programmable logic controller according to claim 1, further comprising: The notification component is used to issue a notification when the symbol value meets the notification conditions set by the user.
9. The programmable logic controller according to claim 8, wherein, The notification component is configured to send the notification to a peripheral device used to display the screen.
10. The programmable logic controller according to claim 8, further comprising: A registration component is used to register the history of errors or events that occur in the programmable logic controller. The registration component is configured to register events related to the notification in the history when the notification component issues the notification.
11. The programmable logic controller according to claim 1, further comprising: An operation record saving component is used to save the symbol value as an operation record when the symbol value meets the saving conditions.
12. The programmable logic controller according to claim 1, further comprising: A history saving component is used to save the symbol value, the normal conditions, and the dashboard as history when the symbol value is detected to deviate from the normal conditions.
13. The programmable logic controller according to claim 1, further comprising: A setting component is used to set the normal conditions. The setting component is configured to create the normal conditions by applying predetermined calculation rules to pre-acquired symbol values.
14. The programmable logic controller according to claim 13, wherein, The settings component uses the user-specified calculation rules as the predetermined calculation rules.
15. The programmable logic controller according to claim 1, further comprising: A condition storage component for storing multiple sets of conditions, each having distinct conditions used as the normal condition; as well as The selection component is used to select a condition set from multiple condition sets stored in the condition storage component according to user instructions.
16. The programmable logic controller according to claim 1, further comprising: The input component is used to input commands related to stopping or resuming the execution of the application. Specifically, when an instruction related to stopping the execution of the application is input, the execution unit stops executing the application; and when an instruction related to resuming the execution of the application is input, the execution unit resumes executing the application.
17. The programmable logic controller according to claim 3, wherein, The generating component is configured to generate a display screen to display multiple symbol values collected by the collecting component as time series data as waveforms.
18. The programmable logic controller according to claim 17, wherein, The generating component is configured to display a first waveform and a second waveform in an overlapping manner, the first waveform indicating multiple symbol values collected by the collecting component as time series data in a first collecting period, and the second waveform indicating multiple symbol values collected by the collecting component as time series data in a second collecting period prior to the first collecting period.
19. The programmable logic controller according to claim 17, wherein, The generating component is configured to generate the display screen such that a line indicating a threshold for adjusting the peak or bottom value of the waveform is displayed together with the waveform, wherein the threshold is included in the normal conditions.
20. The programmable logic controller according to claim 17, wherein, The generating component is configured to generate the display screen such that a line indicating a threshold for adjusting the timing of the symbol value exceeding a predetermined value is displayed together with the waveform, the threshold being included in the normal conditions.
Citation Information
Patent Citations
Programmable logic controller and data collection device
JP2019016325A
Programmable display and programmable logic controller system
CN111752427A
Rotational integrated business management system
JP2004030333A
Network configurator, network power supply monitor system and network power supply monitor method
JP2006190295A
Programmable logic controller
WO2016143072A1