WO2015059816A1 - プログラマブル表示器、プログラム - Google Patents

プログラマブル表示器、プログラム Download PDF

Info

Publication number
WO2015059816A1
WO2015059816A1 PCT/JP2013/078960 JP2013078960W WO2015059816A1 WO 2015059816 A1 WO2015059816 A1 WO 2015059816A1 JP 2013078960 W JP2013078960 W JP 2013078960W WO 2015059816 A1 WO2015059816 A1 WO 2015059816A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
display
time
magnification
logging
Prior art date
Application number
PCT/JP2013/078960
Other languages
English (en)
French (fr)
Inventor
欣史 古山
Original Assignee
発紘電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 発紘電機株式会社 filed Critical 発紘電機株式会社
Priority to CN201380080068.9A priority Critical patent/CN105593774A/zh
Priority to JP2015543667A priority patent/JPWO2015059816A1/ja
Priority to PCT/JP2013/078960 priority patent/WO2015059816A1/ja
Publication of WO2015059816A1 publication Critical patent/WO2015059816A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • the present invention relates to a programmable display and the like.
  • a programmable display is connected to various connected devices such as a PLC main body and a temperature control device, and items such as numerical displays and lamps for displaying the status of these connected devices, and for users to give arbitrary instructions. Displays an image of items such as switches. An item is also called a screen component or the like. Usually, images of a plurality of screen parts (items) are displayed on the screen of the programmable display.
  • the screen of the programmable display is called an operation display screen.
  • Screen data or the like Data or the like for displaying such an operation display screen (referred to as screen data or the like) is arbitrarily created in advance by a developer or the like in a support device (not shown) and downloaded from the support device to a programmable display. .
  • the screen data includes data for each item, such as an image of the item, display position coordinates, and an address of an allocated memory area to be described later.
  • some programs may be included.
  • the item image is, for example, an image of a switch, an image of a lamp, or a “image of a type indicating a numerical value by a figure” such as a meter (meter or the like) or a bar graph.
  • Each of the above items displays the status of the component corresponding to an arbitrary component of an arbitrary connected device, or accepts an ON / OFF instruction for the component.
  • the current temperature is displayed as a numerical value as needed.
  • the display control related to the various items is realized by, for example, periodically executing predetermined processing for each item.
  • the predetermined processing is, for example, reading stored data in a predetermined area (allocated memory area) of a memory device in the connected device, and determining / displaying the display content of the item based on the stored data.
  • the connected device updates the stored data in each allocated memory area as needed. For example, in the temperature control device, the temperature measurement value is updated as needed.
  • the stored data in the allocated memory area is 1-bit data. When this bit is “0”, the item image to turn off the lamp, and when “1”, the lamp is turned on is programmable. Display on the display.
  • the stored data in the allocated memory area is updated on the connected device side as described above. For example, “1” is stored in the allocated memory area when the push button on the connected device is ON, and “0” is stored when the push button is OFF.
  • a predetermined area of the memory device in the connected device that is, an allocated memory area may be referred to as a monitoring memory. From the above, it can be said that an arbitrary monitoring memory is assigned to each item, and the display content of each item is controlled to be updated based on the data stored in the monitoring memory.
  • the data read from the monitoring memory is temporarily stored in a predetermined area (referred to as internal memory) of the memory device in the programmable display, and the display contents of the item are determined and displayed based on the stored data.
  • internal memory a predetermined area of the memory device in the programmable display
  • the process of reading the data stored in the monitoring memory and storing it in the internal memory is executed, for example, periodically by the communication function unit of the programmable display.
  • the communication function unit communicates with various connected devices such as the PLC main body and the temperature control device, acquires the storage data of the monitoring memory for each item, and stores the acquired data in the internal memory. Overwrite and store.
  • the item display function part which performs the display control which concerns on the said various items in a programmable display determines and controls the display content regarding each item by accessing an internal memory regularly.
  • Patent Documents 1, 2, and 3 are known.
  • Patent Document 1 discloses the display of a historical trend graph (a time-series display of a system state collected by logging; a graph of logging results) regarding a programmable display.
  • Patent Document 1 realizes a programmable display capable of easily and efficiently referring to different types of information managed in time series such as alarms, logging, and operation logs. That is, a recording unit that records a plurality of status information of connected devices as a time series, and a plurality of display function processing units that perform control to display the recorded status information in a format corresponding to each characteristic of the status information And display means for displaying the state information under the control of the display function processing means.
  • the display function processing means causes the display means to display the state information based on time information to be displayed in the state information, and other display function processing means in the state information. Time information to be displayed on the display means can be designated.
  • Patent Document 2 has a disclosure relating to historical trend graph display.
  • the invention of Patent Document 2 realizes a log data acquisition system with a wide application range of control devices. That is, in the invention of Patent Document 2, the control device has a log data storage area and an address storage area in which the latest write address of log data to the log data storage area is stored.
  • the control device further includes a control device control unit that collects log data related to the controlled device and sequentially writes the log data to the log data storage area, and writes the current write address of the log data to the address storage area.
  • the programmable display includes a storage area for accumulating log data, and a logging processing unit that acquires a predetermined amount of log data from the log data storage area based on a write address stored in the address storage area and writes the log data to the storage area;
  • Patent Document 3 can solve the problem of holding a plurality of display data fixed in accordance with different preset magnifications, which is a problem of the conventional programmable display.
  • the screen can be enlarged / reduced to any magnification with one data, and the function area can be changed following the arbitrary magnification change of each displayed object.
  • a display can be realized.
  • the historical trend graph display basically stores time-series log data of data collected at regular intervals (for example, every minute or every 10 minutes). This is displayed as a graph.
  • one dot on the graph and one data point are paired.
  • one pixel in the time axis direction of the graph and one data point form a pair. That is, using a display of horizontal 640 (pixels) ⁇ vertical 480 (pixels), for example, when displaying a graph in which the horizontal axis represents the time axis and the vertical axis represents the data value, only 640 points of data can be displayed at maximum. Become. In practice, the maximum number of data points is less than 640 points.
  • FIG. 17 shows a specific example of a conventional historical trend graph display.
  • the historical trend graph shown in the figure is a graph in which the horizontal axis represents the time axis and the vertical axis represents the data value as in the above example.
  • the data value is displayed in the range of 0 to 100 in the illustrated example.
  • FIG. 17 shows an enlarged part of this graph.
  • each piece of data in the graph corresponds to one dot (one pixel) of the display.
  • the number of dots in the time axis (horizontal axis) direction is 20, so the maximum number of data that can be displayed is 20. In this example, if only 10 pieces of data are displayed, the data may be plotted every other dot.
  • “Enlarge” button and “Reduce” button are arranged below the graph, and the user can press any button.
  • the display time range on the horizontal axis is expanded. For example, when the “enlarge” button is operated in the state where the display time range is 10:00 to 15:00 as shown in the figure, the display time range is expanded to, for example, 08:00 to 15:00.
  • the “enlarge” button is further operated in this state, the display time range is expanded to, for example, 05:00 to 15:00.
  • the maximum display range is 5 hours.
  • the maximum display range means a time range that can be displayed at one time. That is, in this example, as shown in the figure, for example, data from 10:00 to 15:00 can be displayed at a time, but for example, data from 08:00 to 15:00 cannot be displayed at a time. .
  • the “reduction” button may be operated.
  • the maximum display range means a time range that can be displayed at one time. Therefore, if scroll display or the like can be performed, the user can refer to data in a time range wider than the above five hours, for example. Of course, not all of this can be referred to at once, but it is referred to over a certain amount of time by scroll display.
  • the subject of the present invention is that the maximum display range can be expanded as compared to the conventional display with respect to the historical trend graph display in the programmable display, and therefore the number of display target data points exceeds the number of pixels in the time axis direction of the display screen
  • the programmable display of the present invention is a programmable display for displaying a historical trend graph, and has the following configurations.
  • -Time series data storage means for storing time series data
  • -Aggregated data generation means for generating aggregated data by aggregating the time-series data according to the specified magnification when the specified magnification is a predetermined magnification
  • Display control means for displaying the historical trend graph based on the time series data, but displaying the historical trend graph based on the aggregated data when the aggregated data is generated.
  • FIG. 1 It is a schematic block diagram of the whole system containing the programmable display of this example. It is a structural example of the programmable display of this example. It is a software block diagram of this system. It is a structure and functional diagram (1/2) of the programmable display of this example. It is a structure and functional diagram (2/2) of the programmable display of this example.
  • (A), (b) is a data block diagram of an item list.
  • (A), (b) is an example of the data structure of a shared memory, and an example of data storage.
  • (A), (b) is a specific example of a logging list,
  • (c) is a specific example of logging data. It is a process flowchart figure of a communication process part.
  • (A) is a memory list and (b) is a specific example of memory information. It is a process flowchart figure of a logging process part. It is a process flowchart figure (1/2) of an item process part. It is a process flowchart figure (2/2) of an item process part. (A), (b) is a figure for demonstrating an integrated logging data production
  • FIG. 1 is a schematic configuration diagram of the entire system including the programmable display 1 of this example.
  • the programmable controller system shown in FIG. 1 has various connection devices 4 and a programmable display 1 connected to the various connection devices 4 via a communication line 6. Furthermore, the structure by which the programmable display 1 was connected to the drawing editor apparatus 5 (support apparatus) via the communication line 3 may be sufficient. However, the drawing editor device 5 does not necessarily need to be connected to the programmable display device 1. The drawing editor device 5 may be referred to as the support device 5 in some cases.
  • the programmable display 1 is provided with a plurality of communication interfaces 2 (communication ports), and is connected to various connection devices 4 and the drawing editor device 5 by the communication line 3 / communication line 6 connected to each communication interface 2. ing.
  • Programmable display 1 displays the operation display screen based on the screen data and the like during operation. As in the past, the programmable display 1 obtains the data in the allocated memory area from the connection device 4 at a fixed cycle, for example, for each item on the currently displayed operation display screen, and displays the operation based on the obtained data. Update the display contents of the screen. For example, the above-described historical trend graph display is performed.
  • the scroll display may not be applicable. is there.
  • the number of display target data points exceeds the number of pixels in the time axis direction of the display screen, it is not possible to display all data at once.
  • This is a typical example, and is not limited to this example. However, basically, it is desired that the above-described maximum display range can be expanded as compared with the conventional case.
  • the maximum display range described above can be expanded as compared with the related art with respect to the historical trend graph display in the programmable display 1.
  • all data can be displayed at once.
  • all data can be displayed at one time by substantially reducing the number of data points by aggregating data. In other words, not all data is displayed as it is. Details will be described later.
  • FIG. 2 is a configuration example of the programmable display 1 of this example.
  • the programmable display device 1 has a function of displaying an operation display screen based on the above-described screen data and the like in substantially the same manner as the conventional example described above.
  • the display on the operation display screen includes the display of the historical trend graph. And in this example, it has the various functions mentioned later regarding the said historical trend graph display. For example, it has a data aggregation function corresponding to the magnification. Details will be described later.
  • the illustrated programmable display 1 includes a display operation control device 10, a touch panel 18, a display 19, the communication interface 2 and the like.
  • the display operation control device 10 includes a CPU 11, a ROM 12 (flash memory, etc.), a RAM 13, a communication controller 14, a graphic controller 15, a touch panel controller 16, etc., which are connected to a bus 17.
  • the CPU 11 is a central processing unit (arithmetic processor) that controls the entire display operation control device 10.
  • the CPU 11 performs a predetermined arithmetic processing operation by executing a program (for example, a main body program 21 described later) stored in advance in the ROM 12. Thereby, for example, the processing of various flowcharts to be described later is realized.
  • a program for example, a main body program 21 described later
  • Various calculation results are stored in, for example, the RAM 13 or the ROM 12.
  • the ROM 12 may be a flash memory, for example.
  • the ROM 12 stores the screen data (screen data 22 described later) and the like described in the background art.
  • the screen data includes various data related to item display such as the image of the item, display position coordinates and size, and the allocation memory. It has data related to monitoring memory access, such as area addresses.
  • the processing of the CPU 11 includes, for example, processing for acquiring “stored data in the allocated memory area for each item” described in the background art. From the above, it can be said that this is a process of acquiring data stored in the “monitoring memory”. This acquired data is temporarily stored, for example, in the shared memory 64 described later.
  • the shared memory 64 may be a part of the storage area of the RAM 13 or the ROM 12, or may be another memory (not shown).
  • display target data based on, for example, the screen data and the acquired data is developed (drawn) on, for example, the RAM 13 or a video RAM (not shown) by the processing of the CPU 11.
  • the graphic controller 15 displays the above-described operation display screen on the display 19.
  • the display 19 is made of, for example, a liquid crystal panel, and a touch panel 18 is provided so as to overlap the liquid crystal panel.
  • the operation display screen is basically displayed in which a plurality of item images are arranged at predetermined positions. As one of such item images, the historical trend graph display is assumed.
  • the communication controller 14 communicates with the connection device 4 and the drawing editor device 5 such as a PLC main body (not shown), a temperature control device, and the like via the communication interface 2.
  • the detection result of the pressing operation position (touch position) on the touch panel 18 by the operator or the like is taken into the CPU 11 or the like via the touch panel controller 16 and analyzed. This is analyzed based on the display position coordinates and size data of each item, for example. For example, when an operator touches the display position of an image of an arbitrary switch, it is assumed that the operation has been performed on this switch by analyzing that the touch position is within the display area of the switch image. It becomes.
  • Fig. 3 shows the software configuration of this system.
  • various programs / data such as a main body program 21, screen data 22, and communication program 23 are stored in the ROM 12 (flash memory or the like), for example.
  • the CPU 11 reads / executes / references these programs / data and the like, display control of the operation display screen and the like is performed.
  • This operation display screen consists of image display of various items such as meters, bar graphs, historical trend graphs, lamps and switches.
  • the display content of each item image is updated as needed, for example, by reflecting data acquired from the allocated memory area (monitoring memory) through communication with the connected device 4.
  • the CPU 11 performs processing based on the main body program 21 and the screen data 22, whereby the operation display screen is displayed.
  • the display content of each screen component on the operation display screen is updated as needed based on the result of communication with the connected device 4 by the communication program 23 (such as the acquired data).
  • the display content is, for example, a display indicating a numerical value such as a temperature or lighting / extinguishing of a lamp.
  • the screen data 22 is, for example, a screen data file 32 arbitrarily created in advance on the drawing editor device 5 side, downloaded to the programmable display device 1 and stored.
  • the communication program 23 is also the one in which, for example, the communication program file 33 previously stored on the drawing editor device 5 side is downloaded and stored in the programmable display device 1.
  • the CPU 11 performs display control of the operation display screen based on the main body program 21, screen data 22, acquired data, and the like.
  • data is periodically read from the allocated memory area of the item, and the display content of the item is updated based on the read data.
  • switch ON image display / switch OFF image display is performed.
  • the CPU 11 performs a predetermined process (for example, control of the connection device 4) according to the switch operation.
  • the communication program 23 of the programmable display 1 is a program for communicating with the connection device 4 via the communication line 6.
  • each connected device 4 has a communication protocol (communication rule) unique to each model and performs communication between the programmable display 1 and the connected device 4 in accordance with this communication rule. Therefore, the communication program 23 needs to be developed for each model of each connected device 4.
  • the CPU 11 and the like execute the communication program 23 to realize communication processing with the connected device 4.
  • connection device 4 such as the PLC main body has various manufacturers and models, each manufacturer / model has its own communication program, and the communication program 23 depends on the manufacturer / model of the connection device 4 depending on the case. Multiple types will be provided.
  • the communication program 23 is normally stored in advance as a plurality of communication program files 33 (a plurality of communication programs developed for each model) in an HD (hard disk) (not shown) in the drawing editor device 5. Then, when the user selects / designates an arbitrary connected device 4 using the drawing editor 31, the drawing editor device 5 transfers the communication program file 33 corresponding to the selected connected device 4 to the programmable display device 1, The communication program 23 is stored.
  • the process of accessing the monitoring memory in the connected device 4 from the programmable display 1 is executed according to various settings included in the screen data 22. In other words, it is executed according to various user settings made when the screen data file 32 is created on the drawing editor 31. For example, when the user creates the screen data file 32, the user arranges various items in the screen and designates an arbitrary address (monitoring memory) for each item.
  • the screen data file 32 created as described above is downloaded to the programmable display 1 and stored as the screen data 22.
  • the programmable display 1 performs display control of the operation display screen using the screen data 22 as in the conventional case, and accordingly, periodically acquires the data in the monitoring memory for each item. Perform operations and so on. Furthermore, the operation
  • the program for realizing the various processes described above may be included in the main body program 21, for example, or may be included in the screen data file 32 (screen data 22).
  • the CPU 11 executes such a program, for example, various processes and operations of the programmable display 1 of this example are realized.
  • the support device 5 is, for example, a personal computer or the like.
  • a general general-purpose computer configuration (CPU, storage unit (hard disk, memory, etc.), communication unit, operation unit (mouse, etc.), display) is provided. Have. When the CPU executes an application program stored in advance in the storage unit, for example, the processing functions of the drawing editor 31 are realized.
  • 4 and 5 are configuration / function diagrams of the programmable display of this example.
  • FIGS. 4 and 5 show one figure divided into two, and are hereinafter collectively referred to as FIG. 4 and the like.
  • the CPU 11 executes a predetermined program (for example, the main body program 21, the communication program 23, etc.) stored in the ROM 12, thereby realizing various processing function units within a frame indicated by a dotted line in FIG. Is done. That is, various processing functions of various processing function units such as the item generation unit 51, the item processing schedule unit 52, the item processing unit 53, the logging processing unit 54, the communication processing unit 55, and the logging generation unit 56 shown in the figure are realized. Details of these various processing functions will be described later.
  • a predetermined program for example, the main body program 21, the communication program 23, etc.
  • the communication processing unit 55 is realized by the main body program 21 and the communication program 23, for example.
  • the other processing function units are realized by the main body program 21.
  • various data such as the illustrated logging list 61, logging data 62, item list 63, shared memory 64 and the like are stored in a memory (not illustrated) in the CPU 11.
  • these various data may be stored in the RAM 13 or the ROM 12.
  • the item generation unit 51 generates an item list 63 based on the screen data 22 or the like. This is generated, for example, by extracting a part of the screen data 22.
  • the item generation unit 51 is an existing function. Therefore, the processing function of the item generation unit 51 is not particularly illustrated or described with reference to a flowchart diagram or the like.
  • FIGS. 6A and 6B show data structure diagrams of the item list 63.
  • FIG. 6A is a data configuration diagram of the entire item list 63.
  • FIG. 6B is a detailed data configuration example of “data for each item type” 75 which is a part of the data.
  • the item list 63 in the example shown is an item number. 71, item type 72, coordinates 73, size 74, “data for each item type” 75, processed flag 76, and the like.
  • Item No. 71 stores the identification ID of the corresponding item. Each item is assigned a unique identification ID in advance.
  • the item list 63 stores the various information 71 to 75 for each item on the operation display screen. From the above, the various information 71 to 75 may be regarded as a part of the screen data 22. The data structure of the screen data 22 is not particularly shown.
  • Item type 72 stores item type identification information indicating the type of the item (switch, lamp, meter, bar graph, historical trend graph, etc.).
  • the processed flag 76 is a flag indicating whether or not the processing has been completed, and its usage will be described later with reference to a flowchart.
  • data for each item type stores various data according to the type of the item.
  • various data when the item type is “historical trend graph” is shown in FIG.
  • Logging No. Reference numeral 81 denotes an ID for identifying the logging data 62 to be displayed by the historical trend graph item. Note that when there are a plurality of historical trend graph items, there is logging data 62 used for displaying the graphs for each item.
  • the magnification 84 indicates the display range of the horizontal axis (time axis) of the graph.
  • the display is in the state of being displayed in the conventional maximum display range described in FIG. And Therefore, conventionally, as described above, it is not possible to “enlarge” any more. In other words, in the past, the magnification could not be "enlarged” from the same magnification to 2 times, 4 times, or the like. Note that this state can also be referred to as the above-described state “one pixel point and one data point in the time axis direction of the graph are a pair”.
  • the magnification can be “reduced” from the same magnification to 1/2 or 1/4.
  • the magnification is 1/2, “two pixels on the time axis of the graph and one data point are a pair”. In this case, at the time of display, only one of the two pixels paired therewith may be used for each data.
  • the magnification 84 is updated every time the “enlarge” button and the “reduced” button described in FIG. 17 are operated by the user.
  • a data aggregation method is stored.
  • this method when the magnification is “enlarged” to 2 ⁇ , 4 ⁇ , etc., the data aggregation processing described later is performed on the display target data, so that the above-mentioned 1 ⁇ to 2 ⁇ , 4 ⁇ , etc. It is possible to display “enlarged” on the screen.
  • This data aggregation method uses a method of using an average value, which will be described later, as an example in this description, but is not limited to this example.
  • a data aggregation method such as peak (maximum value), bottom (minimum value), or moving average is used. It doesn't matter.
  • the aggregation type 85 stores one of average value, peak, bottom, and moving average.
  • Such a data aggregation method is registered in advance or can be arbitrarily set / changed by the user.
  • the item generation unit 51 may generate not only the item list 63 but also the initial state of the shared memory 64 based on the screen data 22 and the like.
  • the present invention is not limited to this example, and the logging generation unit 56 may generate not only a logging list 61 described later but also an initial state of the shared memory 64. In any case, the initial state generation of the shared memory 64 based on the screen data 22 or the like will be described here.
  • the screen data 22 includes not only the data of the item list 63 but also information (memory device, address, etc.) indicating the allocated memory area. Based on this information, an initial state of the shared memory 64 is generated. Note that this generation process itself is an existing technology and will not be described in detail.
  • FIGS. 1-10 a specific example of the shared memory 64 is shown in FIGS.
  • FIG. 7A shows an example of the data structure of the shared memory 64
  • FIG. 7B shows an example of data storage.
  • the shared memory 64 includes data items of a port 91, a device name 92, an address 93, and data 94. These data items may be substantially the same as those in the past. Therefore, a brief description will be given below.
  • the port 81 is identification information or the like of the communication port, and is substantially information for identifying the connection device 4 of the communication partner.
  • the device 82 is identification information of a memory device in the connection device 4 of the communication partner.
  • the address 83 is an address of a predetermined storage area (allocated memory area) in the memory device indicated by the device 82, and the data 84 stores data acquired from the allocated memory area.
  • the address of the allocated memory area may be referred to as “allocated memory address”.
  • the corresponding data of the screen data 22 is copied and stored in the port 91, device name 92, and address 93.
  • the data 94 is “NULL” in the initial state, and the latest data is stored in the data 94 every time the latest data is acquired by the communication processing unit 55 described later. In the example shown in FIG. 7B, since some data is stored in the data 94, this is not an initial state.
  • the data 94 in the shared memory 64 is updated to the latest data by the communication processing unit 55 as needed. Note that the processing function itself of the communication processing unit 55 is an existing technology and will not be described in detail.
  • the communication processing unit 55 is a communication processing unit 55-1 or 55-1 provided for each of the connection devices 4 (4-1, 4-2). That is, the communication processing unit 55-1 shown in the figure performs communication with the connection device 4-1 via the communication line 6 using the communication port WAY1 corresponding to the connection device 4-1, and each item is sent to each item. The storage data of each corresponding allocated memory area is acquired. The acquired data is overwritten and stored in a predetermined area of the shared memory 64.
  • the communication processing unit 55-2 shown in the figure performs communication with the connection device 4-2 via the communication line 6 using the communication port WAY2 corresponding to the connection device 4-2, and each item.
  • the storage data of each allocated memory area corresponding to is acquired.
  • the acquired data is overwritten and stored in a predetermined area of the shared memory 64.
  • a processing flowchart of the communication processing unit 55 is shown in FIG. 9 and will be described later.
  • the logging generation unit 56 generates a part of the logging list 61 based on the screen data 22 or the like. Since the logging list 61 and its generation process itself are existing technologies, detailed description will not be given.
  • the logging list 61 has a logging No. 131, memory setting number 132, memory setting 133, logging interval 134, logging number (maximum value) 135, previous logging execution time 136, and the like. Of these various data, all data other than the previous logging execution time 136 may be regarded as being included in the screen data 22. Basically, the logging list 61 is generated by extracting a part of the screen data 22.
  • the data storage example of the logging list 61 is not shown, but if there are a plurality of records, it may be considered that there are basically a plurality of historical trend graph items. That is, each record in the logging list 61 corresponds to one historical trend graph item. And, for example, the logging No. of the corresponding historical trend graph item. 81 is the logging number. 131.
  • the memory setting 133 stores N pieces of memory setting data.
  • the memory setting data is an address of the allocated memory area.
  • the N pieces are stored in the memory setting number 132. For example, in the example of FIG. 17 described above, since three types of data, data A, data B, and data C, are to be displayed, the N is ‘3’.
  • the memory setting 133 stores the allocated memory address related to the data A, the allocated memory address related to the data B, and the allocated memory address related to the data C.
  • FIG. 17 shows an example in which there are logging data for three types of data A, data B, and data C. Therefore, the allocated memory address is registered for each of them as described above.
  • the display example of the historical trend graph is shown assuming that only one type of data (for example, only data A) is displayed. This is simply shown by omitting it because it becomes complicated when three types of graph display are shown. Therefore, in reality, three types of graph display of data A, data B, and data C are performed. This is substantially the same for FIG. 15 described later.
  • the memory setting 133 in the illustrated example includes a device name 101 and an address 102, which are the address of the allocated memory area and the like. That is, the address 102 in the memory device indicated by the device name 101 is the address of the allocated memory area.
  • the memory device indicated by the device name 101 is a memory device in the connected device 4.
  • the logging interval 134 is an execution cycle of logging processing, that is, logging data 62 update processing. For example, if the logging interval 134 is 100 (ms), the logging data 62 is updated every 100 (ms).
  • the update of the logging data 62 is basically such that the latest data is additionally stored in the logging data 62.
  • the latest data is data acquired from the allocated memory area in the connected device 4 and stored in the data 94 of the shared memory 64.
  • the logging number (maximum value) 135 is the upper limit of the number of data points stored in the logging data 62. After the number of data points stored in the logging data 62 reaches this upper limit value, the oldest data is deleted and the latest data is added each time the logging data 62 is updated.
  • the previous logging execution time 136 stores the date and time at that time each time the above logging process is executed. This processing is executed by the logging processing unit 54, for example. When the logging interval 134 elapses from the previous logging execution time 136, the next logging process is executed.
  • the logging processing unit 54 performs processing for updating the logging data 62 according to the logging list 61, for example. That is, for example, as described above, the logging processing unit 54 executes a predetermined process when the logging interval 134 has elapsed from the previous logging execution time 136.
  • a processing example of the logging processing unit 54 is shown in FIG. 11 and will be described later. Basically, the latest data is additionally stored in the logging data 62 as described above.
  • the item processing unit 53 is a processing function unit that updates the display content of each item on the screen.
  • the display of the historical trend graph / item will be described, and description of other item display will be omitted.
  • other item display basically refers to the shared memory 64 and determines and displays the display contents based on the data 94.
  • the logging data 62 is updated according to the data 94 as described above, and basically display based on the logging data 62 is performed. This may be the same as before.
  • FIG. 8C shows a data configuration diagram of the logging data 62.
  • the logging data 62 is the logging number. 141, logging time 142, number of data 143, and data 144.
  • Logging No. 142 is the logging No. Since it is substantially the same as 131, description is abbreviate
  • the time series log data is stored for each data type such as data A, data B, data C and the like.
  • the collection time of each data 144 is stored.
  • the date and time at that time is stored in the logging time 142.
  • “time” in the time series data (logging data) shown in the upper right of the figure corresponds to the logging time 142.
  • the item processing unit 53 of this example may aggregate the data 144 of the logging data 62 and display a historical trend graph based on the aggregated logging data (not shown). Details will be described later with reference to a flowchart of FIG.
  • the item processing schedule unit 52 causes the item processing unit 53 to execute the above processing periodically, for example.
  • FIG. 9 is a processing flowchart of the communication processing unit 55. This process itself is an existing process and will be briefly described below.
  • each of the communication processing units 55-1 and 55-2 executes the processing of FIG. 9 cyclically (at a regular cycle).
  • the memory list 110 related to the connected device 4 that the user is in charge of is generated (step S11). For example, in the case of processing by the communication processing unit 55-1, the memory list 110 related to the connected device 4-1 is generated. For example, the memory list 110 related to the connected device 4-1 is generated by extracting all the records in which the port 81 is WAY 1 in the shared memory 64.
  • FIG. 10A shows a data configuration example of the memory list 110.
  • the memory list 110 includes data items of a device name 111, an address 112, and data 113.
  • the memory list 110 includes data items of a device name 111, an address 112, and data 113.
  • all records in which the port 91 is “WAY 1” are extracted from the shared memory 64, and the information of the device name 92, the address 93, and the data 94 of each extracted record is extracted.
  • the memory list 110 related to the connected device 4-1 is generated.
  • the data 113 is not necessarily required. Instead, flag information indicating whether or not the processing has been completed may be stored.
  • steps S12 to S14 are repeatedly executed until the determination in step S15 is NO.
  • This process itself may be the same as that of the prior art, and will be briefly described below.
  • Step S12 This command includes information (allocated memory address) for specifying an access destination such as the device name 111 and the address 112.
  • the connected device 4 performs a response process of reading data from the storage area indicated by the allocated memory address and returning the read data.
  • the communication processing unit 44 uses the data 94 in the record corresponding to the processing target record in the shared memory 64 to read the read data included in the response. (Step S14).
  • step S15 After executing the process of step S14, it is checked whether or not an unprocessed record remains in the memory list 110 (step S15). If it remains (step S15, YES), the process returns to step S12. If not (NO at step S15), the process is terminated.
  • FIG. 11 is a processing flowchart of the logging processing unit 54.
  • step S41 initialization processing of the logging list 61 is executed (step S41).
  • the logging list 61 also includes a flag corresponding to the processed flag 76.
  • step S41 for example, all the records in the logging list 61 are not shown. Clear the flag.
  • each piece of information of an arbitrary record in the logging list 61 is acquired (step S42), and it is first determined whether or not the execution timing of the logging process has come based on the previous logging execution time 136 and the logging interval 134. (Step S43). That is, it is determined whether or not the logging interval 134 minutes has elapsed from the previous logging execution time 136.
  • step S43, NO it is determined whether there is an unprocessed list (record) (step S49). If there is an unprocessed list (step S49, YES). ) Return to step S42. Of course, when all the lists have been processed (step S49, NO), this process is terminated.
  • the memory information 120 is generated from the shared memory 64 (step S44).
  • a specific example of the memory information 120 is composed of data 121 as shown in FIG.
  • Data 121 is data 94 of the corresponding record in the shared memory 64.
  • the corresponding record is a record in which the device name 92 and the address 93 are the same as the memory setting 133 (device name 101 and address 102; allocated memory address) in the logging list 61.
  • the memory information 120 (the data 121) is generated by obtaining the data 94 (latest data) of the corresponding record for each.
  • the memory information 120 since the memory setting 133 stores three types of allocated memory addresses of data A, data B, and data C, the memory information 120 includes the latest data of data A and the latest data of data B. , Data C is the latest data.
  • step S45 NO
  • the memory information 120 is stored in the logging data 62. Additional storage is performed (step S47). That is, the latest data is additionally recorded in the logging data 62. Then, the “flag” is turned ON (processed) (step S48), and the process proceeds to step S49.
  • step S47 additionally stores the latest data in a predetermined data storage area in the logging data 62 for each of data A, data B, and data C.
  • the number of stored time-series log data should be the same for all of data A, data B, and data C, so the upper limit of the number of time-series log data for any one (logging number (maximum value)) 135) and the determination in step S45 may be performed.
  • step S46 the oldest data is deleted from the logging data 62 (step S46) and the above steps S47 and S48 are performed. Execute the process.
  • step S46 for example, in the specific example, the oldest data is deleted from the predetermined data storage area for each of data A, data B, and data C.
  • a predetermined completion process is executed (step S48). For example, the fact that the logging process has been executed is recorded by turning on the flag (not shown) of the record to be processed.
  • FIG. 12 and 13 are processing flowcharts of the item processing unit 53.
  • FIG. 12 and 13 are processing flowcharts of the item processing unit 53.
  • FIGS. 12 and 13 only show one process flow divided into two, and therefore, hereinafter, FIG.
  • the item processing unit 53 executes the processing of FIG. 12 or the like on the basis of schedule management by the item processing scheduling unit 52, for example, cyclically.
  • the initialization process of the item list 63 is executed (step S21).
  • the processed flag 76 of all records in the item list 63 is set to flag OFF (unprocessed).
  • step S22 every time information of an arbitrary record to be processed is acquired from the item list 63 (step S22), the processes of steps S23 to S27 are executed.
  • Each record in the item list 63 corresponds to each item on the operation display screen.
  • step S23 it is determined whether or not the item is a historical trend graph item by referring to the item type 72 of the processing target record.
  • step S23 When the processing target is an item other than the historical trend graph item (step S23, NO), an existing normal item display process is performed. Therefore, only a brief description of this will be given. That is, first, for example, the data 94 of the corresponding record in the shared memory 64 is acquired as the memory information 120 (step S24). This is substantially the same process as step S44. Subsequently, a drawing (display) process related to the processing target item is performed based on the information acquired in step S22, the memory information 120, and the like. As an example, the figure shows a display example of a numerical display item when the memory information 120 is '12345'.
  • step S26 the processed flag 76 of the processing target record is set to flag ON (processed) (step S26). If there is an unprocessed record in the item list 63 (step S27, YES), the process returns to step S22, the same processing as described above is performed for the next processing target record, and if all records have been processed (step S27, NO) This process ends.
  • step S23 is YES, that is, if the processing target is a historical trend graph item, the processing of steps S28 to S31 is executed.
  • log No. of the record to be processed The corresponding logging data 62 is acquired as the logging information 66 using 81 (step S28).
  • the logging data 62 relating to the historical trend graph item of the predetermined target is acquired.
  • the logging No. 141 is a logging No. of the record to be processed.
  • Logging data 62 that is the same as 81 is acquired as logging information 66.
  • the time series log data (logging time 142 and data 144) in the logging data 62 is acquired as the logging information 66.
  • the time series log data (logging time 142 and data 144) in the logging data 62 is acquired as the logging information 66.
  • a historical trend graph item that displays the three types of time series log data, data A, data B, and data C, for example, the time for each of the data A, B, and C, respectively. Get series log data.
  • step S29 With reference to the magnification 84 of the record to be processed, it is determined whether or not this is larger than the same magnification (step S29).
  • the magnification is larger than the same magnification, that is, when the magnification is 2 times or 4 times (YES in step S29)
  • the logging information 66 is aggregated to generate aggregated logging data 200 (step S30).
  • step S30 The aggregated logging data generation process in step S30 will be described using an example shown in FIG. Although an example in which an average value is used as an aggregation method is shown here, of course, the present invention is not limited to this example, and may be a peak, bottom, moving average, or the like as described above.
  • Fig. 14 (a) shows a calculation method for generating aggregate logging data.
  • FIG. 14B shows a data configuration example of the logging information 66 and the aggregated logging data 200.
  • the logging information 66 includes data items of time 211 and data 212. In the case of the above specific example, there is the illustrated logging information 66 for each of the data A, data B, and data C, and the aggregated logging data 200 is generated for each.
  • the time 211 and data 212 correspond to the logging time 142 and data 144 acquired from the logging data 62 in step S28.
  • the logging information 66 includes “N + 1” records in the illustrated example. This “N + 1” corresponds to the number of loggings (maximum value) 135. Note that when the logging information 66 is generated from the logging data 62. You may sort in time order. That is, the time 211 and the data 212 may be obtained by sorting the logging time 142 and the data 144 acquired from the logging data 62 in step S28 in order of time. For example, the data may be sorted and stored in the order closest to the current date and time, or vice versa. That is, the latest data may be sorted in order, or the oldest data may be sorted in order. In this example, “Data 0” shown in the figure is the latest data, and “Data N” is the oldest data.
  • the aggregate logging data 200 is No. 201, time 202, and data 203.
  • No. 201 is a serial number (0, 1, 2, 3,%) Assigned to each record of the aggregated logging data 200 in order from the top.
  • a plurality of records are acquired in order according to the magnification in order from the first record of the logging information 66. For example, when the magnification is 4 times, four records are acquired as shown in the figure. Each time four records are acquired, an average value of these data 212 is calculated, and the calculated value is stored in the data 203 of the aggregate logging data 200.
  • Such calculation of the average value is represented by an equation (equation b) shown in FIG.
  • the average values of the illustrated Data 0, Data 1, Data 2 and Data 3 as the data 212 are obtained as follows.
  • Average value (Data0 + Data1 + Data2 + Data3) / 4 If the magnification is double, the average value of two records in the logging information 66 is obtained and stored in the data 203.
  • time 211 stores the time 211 of the first record among the four processing target records. Therefore, “Time 0” is stored in the time 202 in the illustrated example. This is expressed by an expression (expression a) in FIG. Of course, this is only an example.
  • actual data (logging time 142, data 144) is stored in each cell of the logging information 66 instead of Time 0 and Data 0 as shown.
  • the illustrated Time 0 and Data 0 may be regarded as identifiers assigned in advance to each cell.
  • “Time 0” stored at the time 202 does not store the “Time 0” itself, but the actual data stored in the cell of the “Time 0” is stored at the time 202. become.
  • the calculation process is performed using actual data.
  • the item processing unit 53 performs a historical trend graph display, for example, using the aggregate logging data 200 generated in this way (step S31). This makes it possible to “enlarge” the display time range even when the display time range cannot be “enlarged” any more. This “enlargement” means the enlargement of the time range that can be displayed at once, as already described.
  • step S31 the process of said step S26 and S27 will be performed like the said other item.
  • the (M + 1) number is equal to or less than the number of pixels P that can be used for the historical trend graph display on the display, substantially all of the logging data can be displayed at once.
  • “substantially” does not display the data of the logging information 66 as it is, but intends to use aggregated data.
  • the point that the number of data points that can be displayed at one time is equal to or less than the number of pixels P is the same as in the prior art.
  • the pixel number P can also be said to be the number of pixels corresponding to the time axis of the historical trend graph.
  • the number of pixels P is, for example, the number of pixels in the horizontal direction of the display, but is not limited to this example.
  • the display resolution is horizontal 640 (pixels) ⁇ vertical 480 (pixels) and the “number of pixels P corresponding to the time axis of the historical trend graph” is 600 (pixels), (M + 1)
  • ⁇ 600 substantially all logging data can be displayed at once, and the user can easily grasp the entire image.
  • FIG. 15 shows a display example of the historical trend graph according to this example.
  • one point of logging data or one point of aggregated data is associated with each dot in the horizontal axis direction in the graph display area.
  • data that can be displayed at a time is data in a time range of 10:00 to 15:00 for five hours as shown in FIG.
  • the display time range cannot be expanded any more. The reason is as described above.
  • the aggregated logging data 200 is generated, and a graph is displayed using the aggregated logging data 200.
  • data in the time range from 2:00 to 15:00 can be displayed at a time.
  • the average value of four arbitrary data points in the logging information 66 is plotted for each dot.
  • FIG. 16 is a functional block diagram of the programmable display 1 of this example.
  • the programmable display 1 shown in the figure is a programmable display that displays a historical trend graph, and includes various processing function units such as a time-series data storage unit 301, an aggregated data generation unit 302, and a display control unit 303.
  • various processing function units such as a time-series data storage unit 301, an aggregated data generation unit 302, and a display control unit 303.
  • the CPU 11 reads and executes an application program stored in advance in the ROM 12 or the like, these various processing function units are realized.
  • the aggregated data generation unit 302 and the display control unit 303 may be regarded as equivalent to the item processing unit 53 as an example.
  • the time series data storage unit 301 stores time series data.
  • An example of the time series data is the logging data 62.
  • the aggregate data generation unit 302 aggregates the time series data according to the magnification and generates aggregate data.
  • An example of the aggregated data is the aggregated logging data 200.
  • the display control unit 303 displays a historical trend graph based on the time series data.
  • the display control unit 303 displays the historical trend graph based on the aggregated data. That is, the display control unit 303 displays a historical trend graph based on the aggregated data when the predetermined magnification is designated.
  • the predetermined magnification is larger than equal magnification, for example, 2 times, 4 times, or the like.
  • the aggregated data generation unit 302 performs a predetermined aggregation process for each of a plurality of data corresponding to the specified magnification in the time series data, so that the number of data is smaller than the time series data. Data will be generated.
  • the aggregate data generation unit 302 aggregates the data in two points of the time series data into one data point.
  • the number of pieces of aggregated data is half of the number of pieces of time-series data.
  • the aggregate data generation unit 302 aggregates the data of 4 points of the time series data into one data point.
  • the number of data of the aggregated data is 1 ⁇ 4 of the number of data of the time series data.
  • the data aggregation method is performed for each of a plurality of data corresponding to the specified magnification of the time series data. The average value or moving average value or peak or bottom of a plurality of data is obtained. In the example already described with reference to FIG. 14 and the like, an example in which the average value is used is shown, but the present invention is not limited to this example.
  • the display time range in the historical trend graph becomes larger when the display based on the aggregated data is performed than when the display based on the time series data is performed.
  • the display time range has conventionally been 5 hours at the maximum as shown in FIG. 17, but in this example, the display time range is as shown in FIG. The maximum is 13 hours.
  • the upper limit of the number of data points that can be displayed on the historical trend graph is determined according to the resolution of the display for displaying the historical trend graph.
  • the upper limit of the number of data points that can be displayed at one time is determined according to the resolution in the horizontal axis (time axis) direction.
  • the upper limit is, for example, 640 (pixels) or 600 (pixels).
  • the number of data of the aggregated data can be equal to or less than the upper limit.
  • the display control unit 303 displays one pixel of the display in association with each data point of the time series data.
  • the upper limit of the number of data points that can be displayed at one time is determined according to the resolution in the horizontal axis (time axis) direction.
  • the display control unit 303 displays one pixel of the display in association with each data point of the aggregated data. Associating one point of data with one pixel is the same as when using time-series data, but it is “aggregated” so that substantially more data (data in a wider time range) can be displayed at once. It becomes possible.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

 ヒストリカルトレンドグラフ表示において、最大表示範囲を従来よりも拡大させることができ、表示対象データ点数が表示画面の時間軸方向の画素数を越える場合でも、一度に全データを表示させることが可能であるプログラマブル表示器を提供することを課題とする。 時系列データ記憶部(301)は、時系列データを記憶する。集約データ生成部(302)は、指定された倍率が所定の倍率である場合、該倍率に応じて上記時系列データを集約して集約データを生成する。表示制御部(303)は、上記時系列データに基づいてヒストリカルトレンドグラフを表示するが、上記集約データが生成されている場合には該集約データに基づいてヒストリカルトレンドグラフを表示する。つまり、表示制御部(303)は、上記所定の倍率が指定されている場合には、集約データに基づいてヒストリカルトレンドグラフを表示する。上記所定の倍率は、等倍よりも大きい倍率であり、例えば2倍、4倍等である。

Description

プログラマブル表示器、プログラム
 本発明は、プログラマブル表示器等に関する。
 プログラマブル表示器は、一般的に、PLC本体や温調装置等の各種接続機器と接続して、これら接続機器の状態表示を行う数値表示やランプ等のアイテムや、ユーザが任意の指示を出す為のスイッチ等のアイテムの画像を表示する。尚、アイテムは、画面部品等とも呼ばれている。プログラマブル表示器の画面には、通常、複数の画面部品(アイテム)の画像が表示される。尚、当該プログラマブル表示器の画面を、操作表示画面と呼ぶものとする。
 この様な操作表示画面を表示する為のデータ等(画面データ等と呼ばれる)は、予め不図示の支援装置において開発者等によって任意に作成されて、支援装置からプログラマブル表示器にダウンロードされている。
 上記画面データには、上記各アイテム毎に、そのアイテムの画像や表示位置座標、更に後述する割当メモリ領域のアドレス等のデータが含まれている。更に何らかのプログラム等が含まれている場合もある。尚、上記アイテム画像は、例えば、スイッチの画像やランプの画像、あるいはメーター(メーター等)や棒グラフ等のような“数値を図形等によって示すタイプの画像”等である。
 上記各アイテムは、例えば、それぞれが任意の接続機器の任意の構成要素に対応して、当該構成要素の状態表示を行ったり、当該構成要素のON/OFFの指示を受け付けるものである。例えば、温調装置の温度測定値を数値表示するアイテムの場合、随時、現在の温度を数値で表示することになる。
 上記各種アイテムに係る表示制御は、上記各アイテム毎に、例えば定期的に所定の処理を実行することで実現される。所定の処理とは、例えば、接続機器内のメモリデバイスの所定領域(割当メモリ領域)の格納データを読出して、この格納データに基づいてアイテムの表示内容を決定・表示するものである。尚、接続機器は、随時、各割当メモリ領域の格納データを更新している。例えば上記温調装置においては、上記温度測定値を随時更新している。
 例えば、“ランプ”のアイテムに関して、その割当メモリ領域の格納データは1ビットデータであり、このビットが‘0’の場合はランプ消灯、‘1’の場合はランプ点灯とするアイテム画像を、プログラマブル表示器で表示する。尚、割当メモリ領域の格納データは、上記の通り接続機器側で更新される。例えば接続機器における押しボタンがONの場合には‘1’が、OFFの場合には‘0’が、接続機器側の処理によって上記割当メモリ領域に格納される。
 尚、ここで、上記接続機器内のメモリデバイスの所定領域、すなわち割当メモリ領域を、監視メモリと呼ぶ場合もあるものとする。これより、上述したことは、各アイテム毎に任意の監視メモリが割り当てられており、この監視メモリの格納データに基づいて各アイテムの表示内容が更新制御されるものと言うこともできる。
 また、上記監視メモリから読出したデータを、プログラマブル表示器内のメモリデバイスの所定領域(内部メモリと呼ぶ)に一時的に格納して、この格納データに基づいてアイテムの表示内容を決定・表示する構成もある。
 この例の場合、上記監視メモリの格納データを読み出して上記内部メモリに格納する処理は、プログラマブル表示器の通信機能部等が、例えば定期的に実行する。この通信機能部は、例えば、上記PLC本体や温調装置等の各種接続機器と通信を行って、各アイテム毎に、上記監視メモリの格納データを取得して、この取得データを上記内部メモリに上書き格納する。そして、プログラマブル表示器における上記各種アイテムに係る表示制御を行うアイテム表示機能部は、定期的に内部メモリにアクセスすることで、各アイテムに係わる表示内容を決定制御する。
 ここで、例えば、特許文献1、2、3に記載の従来技術が知られている。
 特許文献1には、プログラマブル表示器に関して、ヒストリカルトレンドグラフ(ロギングにより収集したシステムの状態の時系列表示;ロギングの結果をグラフ化したもの)の表示に関する開示がある。
 特許文献1の発明は、アラーム、ロギング、操作ログなどの時系列で管理される異なる複数種の情報を、容易にかつ効率的に参照することが可能なプログラマブル表示器を実現するものである。すなわち、接続された機器の複数の状態情報を時系列として記録する記録手段と、上記記録した状態情報を上記状態情報のそれぞれの特性に応じた形式で表示させる制御を行う複数の表示機能処理手段と、上記表示機能処理手段の制御により上記状態情報を表示する表示手段とを備える。そして、上記表示機能処理手段は、それぞれ上記状態情報のうち表示対象とする時刻の情報に基づいて上記表示手段に上記状態情報を表示させるとともに、上記状態情報のうち他の上記表示機能処理手段が上記表示手段に表示させる時刻の情報を指定可能である。
 また、特許文献2にも、ヒストリカルトレンドグラフ表示に係わる開示がある。
 特許文献2の発明は、制御機器の適用範囲が広いログデータ取得システムを実現するものである。すなわち、特許文献2の発明では、制御機器は、ログデータ格納領域と、ログデータ格納領域に対するログデータの最新の書き込みアドレスが記憶されるアドレス記憶領域とを有する。制御機器は、更に、被制御機器に関するログデータを収集してログデータ格納領域に順次書き込むとともに、ログデータの現在の書き込みアドレスをアドレス記憶領域に書き込む制御機器制御部を有する。また、プログラマブル表示器は、ログデータを蓄積する記憶領域と、アドレス記憶領域に記憶されている書き込みアドレスに基づいてログデータ格納領域からログデータを所定量取得して記憶領域に書き込むロギング処理部とを有する。
 また、特許文献3の発明は、従来のプログラマブル表示器の問題点であった、予め設定された異なる倍率に応じて固定化された表示データを複数保有する課題を解消できるものである。特許文献3の発明では、1つのデータで画面を任意の倍率に拡大縮小させることができ、表示されている各オブジェクトの任意の倍率変化に追従して、ファンクションエリアを変化させることが可能なプログラマブル表示器を実現することができる。
特表2009-75633号公報 特開2010-66901号公報 特開2011-154613号公報
 上述した特許文献1、2等に開示されているように、ヒストリカルトレンドグラフ表示は、基本的に、定周期で(例えば1分毎や10分毎に)収集したデータの時系列ログデータを記憶しており、これをグラフ化して表示するものである。
 ここで、従来では、上記時系列ログデータ表示において、出来るだけ多くのデータを表示しようとする場合、グラフ上の1ドットとデータ1点とが1対となる。換言すれば、グラフの時間軸方向における画素1点と、データ1点とが、1対となる。つまり、横640(画素)×縦480(画素)のディスプレイを用いて、例えば横軸が時間軸、縦軸がデータ値を表すグラフ表示を行う場合、最大で640点のデータしか表示できないことになる。尚、実際には、最大データ点数は640点より少なくなる。
 ここで、図17に、従来のヒストリカルトレンドグラフ表示の具体例を示す。
 図示のヒストリカルトレンドグラフは、上記一例のような横軸が時間軸、縦軸がデータ値を表すグラフである。尚、縦軸に関しては、図示の例ではデータ値は0~100の範囲内で表示されることになる。
 そして、図17では、このグラフの一部を拡大して示している。この拡大図に示す通り、グラフの各データは、それぞれ、ディスプレイの1ドット(1画素)に対応している。この拡大図では、図示の通り、時間軸(横軸)方向でのドット数は20個であるので、表示できるデータ数は最大で20個となる。尚、この例で10個のデータのみを表示させるならば、1ドット置きにデータをプロットすればよい。
 そして、グラフの下側には「拡大」ボタン、「縮小」ボタンが配置されており、ユーザが任意のボタンを押下操作できる。「拡大」ボタンが操作されると、横軸(時間軸)の表示時間範囲が拡大される。例えば、図示のように表示時間範囲が10:00~15:00の状態で「拡大」ボタンが操作されると、表示時間範囲が例えば08:00~15:00等に拡大される。この状態で更に「拡大」ボタンが操作されると、表示時間範囲が例えば05:00~15:00等に拡大される。
 但し、例えば図示の10:00~15:00の表示状態で既に640点のデータが表示されている状態であるとした場合、この状態で「拡大」ボタンが操作されても、表示時間範囲はそれ以上は拡大されない。つまり、この例では、最大表示範囲は5時間分ということになる。尚、最大表示範囲は、一度に表示出来る時間範囲を意味している。つまり、この例では、例えば図示のように10:00~15:00のデータを一度に表示させることは出来るが、例えば、08:00~15:00のデータを一度に表示させることは出来ない。
 尚、表示時間範囲を現状よりも狭めたい場合には、「縮小」ボタンを操作すればよい。
 ここで、上記のように最大表示範囲は、一度に表示可能な時間範囲を意味する。従って、スクロール表示等を行えるようにすれば、例えば上記5時間分よりも広い時間範囲のデータを、ユーザは参照することができる。勿論、これは、一度に全てを参照出来るのではなく、スクロール表示することである程度時間を掛けて参照することになる。
 しかしながら、ユーザが、例えば所望の時間範囲の全データを一度に表示させたい場合、すなわち例えば全体像を視覚的に把握したい場合等には、上記スクロール表示では対応できない。換言すれば、一度に表示可能なデータ点数に上限がある為に、表示させたい全てのデータを一度に表示させることができない場合がある。これは、例えば、表示対象データ点数が、表示画面の時間軸方向の画素数を越える場合に、表示対象データ全てを一度に表示させることができない。
 本発明の課題は、プログラマブル表示器におけるヒストリカルトレンドグラフ表示に関して、最大表示範囲を従来よりも拡大させることができ、以って表示対象データ点数が、表示画面の時間軸方向の画素数を越える場合でも、一度に全データを表示させることも可能であるプログラマブル表示器等を提供することである。
 本発明のプログラマブル表示器は、ヒストリカルトレンドグラフを表示するプログラマブル表示器であって、下記の各構成を有する。
 ・時系列データを記憶する時系列データ記憶手段;
 ・指定された倍率が所定の倍率である場合、該倍率に応じて前記時系列データを集約して集約データを生成する集約データ生成手段;
 ・前記時系列データに基づいて前記ヒストリカルトレンドグラフを表示するが、前記集約データが生成されている場合には該集約データに基づいて前記ヒストリカルトレンドグラフを表示する表示制御手段。
本例のプログラマブル表示器を含むシステム全体の概略構成図である。 本例のプログラマブル表示器の構成例である。 本システムのソフトウェア構成図である。 本例のプログラマブル表示器の構成・機能図(1/2)である。 本例のプログラマブル表示器の構成・機能図(2/2)である (a)、(b)は、アイテムリストのデータ構成図である。 (a),(b)は、共有メモリのデータ構造例、データ格納例である。 (a),(b)はロギングリストの具体例、(c)はロギングデータの具体例である。 通信処理部の処理フローチャート図である。 (a)がメモリリスト、(b)はメモリ情報の具体例である。 ロギング処理部の処理フローチャート図である。 アイテム処理部の処理フローチャート図(1/2)である。 アイテム処理部の処理フローチャート図(2/2)である。 (a)、(b)は、集約ロギングデータ生成処理について説明する為の図である。 本例によるヒストリカルトレンドグラフ表示例等である。 本例のプログラマブル表示器の機能ブロック図である。 従来のヒストリカルトレンドグラフ表示例等である。
 以下、図面を参照して、本発明の実施の形態について説明する。
 図1は、本例のプログラマブル表示器1を含むシステム全体の概略構成図である。
 図1に示すプログラマブルコントローラシステムは、各種接続機器4と、通信ライン6を介して各種接続機器4に接続するプログラマブル表示器1とを有する。更に、プログラマブル表示器1が、通信ライン3を介して作画エディタ装置5(支援装置)に接続された構成であってもよい。但し、作画エディタ装置5は、必ずしもプログラマブル表示器1に接続されている必要があるわけではない。尚、作画エディタ装置5を支援装置5と記す場合もあるものとする。
 プログラマブル表示器1には、複数の通信インタフェース2(通信ポート)が備えられており、各通信インタフェース2に接続された通信ライン3/通信ライン6によって各種接続機器4や作画エディタ装置5と接続されている。
 プログラマブル表示器1は、運用中、上記画面データ等に基づいて上記操作表示画面を表示する。プログラマブル表示器1は、従来と同様、現在表示中の操作表示画面上の各アイテムに関して、例えば定周期で接続機器4から上記割当メモリ領域のデータを取得して、この取得データに基づいて操作表示画面の表示内容更新を行う。例えば、上述したヒストリカルトレンドグラフ表示を行う。
 ここで、上述したように、例えばユーザが所望の時間範囲内の全データを一度に表示させたい場合、すなわち例えば全体像を視覚的に把握したい場合等には、上記スクロール表示では対応できない場合がある。換言すれば、一度に表示可能なデータ点数に上限がある為に、表示させたい全てのデータを一度に表示させることができない場合がある。これは、例えば、表示対象データ点数が、表示画面の時間軸方向の画素数を越える場合には、全データを一度に表示させることができない。これは典型的な一例であり、この例に限らないが、基本的に、上述した最大表示範囲を従来よりも拡大可能とすることが望まれる。
 これに対して、本例のプログラマブル表示器1では、プログラマブル表示器1におけるヒストリカルトレンドグラフ表示に関して、上述した最大表示範囲を従来よりも拡大可能とすることができる。特に、例えば、表示対象データ点数が、表示画面の時間軸方向の画素数(ディスプレイ表示解像度)を越える場合でも、全データを一度に表示させることができる。これは、データを集約することで実質的にデータ点数を減らすことで、全データを一度に表示可能とするものである。つまり、全データをそのまま表示させるのではない。詳しくは後述する。
 図2は、本例のプログラマブル表示器1の構成例である。
 プログラマブル表示器1は、上述した従来例と略同様に上述した画面データ等に基づく操作表示画面の表示等を行う機能を有する。この操作表示画面上の表示には、上記ヒストリカルトレンドグラフの表示も含まれる。そして、本例では、当該ヒストリカルトレンドグラフ表示に関して、後述する各種機能を有する。例えば倍率に応じたデータ集約機能等を有する。詳しくは後述する。
 図示のプログラマブル表示器1は、表示操作制御装置10と、タッチパネル18、ディスプレイ19、上記通信インタフェース2等を有する。
 表示操作制御装置10は、CPU11、ROM12(フラッシュメモリ等)、RAM13、通信コントローラ14、グラフィックコントローラ15、タッチパネルコントローラ16等より成り、これらがバス17に接続されている。
 CPU11は、表示操作制御装置10全体を制御する中央処理装置(演算プロセッサ)である。CPU11は、ROM12に予め格納されているプログラム(例えば後述する本体プログラム21等)を実行することで、所定の演算処理動作を行う。これによって例えば後述する各種フローチャート図の処理等を実現する。各種の演算結果は、例えばRAM13やROM12に格納される。尚,ROM12は例えばフラッシュメモリ等であってもよい。
 また、ROM12には、上記背景技術で説明した画面データ(後述する画面データ22)等が格納されている。上記のように、画面データは、例えば上述したスイッチ、ランプ、メーター、棒グラフ等の各アイテム毎に、そのアイテムの画像や表示位置座標や大きさ等のアイテム表示に係わる各種データや、上記割当メモリ領域のアドレス等の監視メモリアクセスに係わるデータ等を有する。
 上記CPU11の処理には、例えば上記背景技術で説明した“各アイテム毎の割当メモリ領域の格納データ”を取得する処理等が含まれる。尚、上記のことから、これは「監視メモリ」の格納データを取得する処理と言うことも出来る。この取得データは、例えば後述する共有メモリ64に一時的に格納される。尚、共有メモリ64は、上記RAM13やROM12の記憶領域の一部であってもいし、不図示の他のメモリであってもよい。
 また、上記CPU11の処理によって、例えば上記画面データや上記取得データ等に基づく表示対象データが、例えばRAM13や不図示のビデオRAM上に展開(描画)される。この描画に基づいてグラフィックコントローラ15が、ディスプレイ19上に上述した操作表示画面等を表示する。
 ディスプレイ19は、例えば液晶パネル等より成り、この液晶パネル上に重ねるようにしてタッチパネル18が設けられる。ディスプレイ19上には、基本的には、複数のアイテム画像が所定位置に配置されて成る上記操作表示画面が表示される。そして、このようなアイテム画像の1つとして、上記ヒストリカルトレンドグラフ表示があるものとする。
 また、通信コントローラ14は、通信インタフェース2を介して、不図示のPLC本体等や温調装置等である接続機器4や作画エディタ装置5との通信を行う。
 オペレータ等によるタッチパネル18上での押圧操作位置(タッチ位置)の検知結果は、タッチパネルコントローラ16を介してCPU11等に取り込まれて解析される。これは、例えば各アイテムの上記表示位置座標や大きさのデータ等に基づいて、解析することになる。例えば、任意のスイッチの画像の表示位置をオペレータ等がタッチすると、このタッチ位置が当該スイッチ画像の表示領域内であると解析することで、このスイッチに対する操作が行われたものと見做すものとなる。
 図3に、上記本システムのソフトウェア構成図を示す。
 プログラマブル表示器1においては、本体プログラム21、画面データ22、通信プログラム23等の各種プログラム/データが、例えば上記ROM12(フラッシュメモリ等)に格納されている。これらのプログラム/データ等をCPU11が読出し・実行/参照等することで、上記操作表示画面等の表示制御等が行なわれる。
 この操作表示画面は、メーター、棒グラフ、ヒストリカルトレンドグラフ、ランプ、スイッチ等の各種アイテムの画像表示から成る。各アイテム画像の表示内容は、例えば接続機器4との通信によって割当メモリ領域(監視メモリ)から取得したデータを反映させる形で、随時更新される。
 基本的には、CPU11が本体プログラム21と画面データ22とに基づく処理を行うことで、上記操作表示画面が表示される。そして、この操作表示画面上の各画面部品の表示内容は、通信プログラム23による接続機器4との通信結果(上記取得データ等)等に基づいて、随時、更新等されるものである。表示内容は、例えば、温度等の数値を示す表示やランプの点灯/消灯などである。
 上記画面データ22は、例えば予め作画エディタ装置5側で任意に作成された画面データファイル32が、プログラマブル表示器1にダウンロードされて格納されたものである。また、上記通信プログラム23も、例えば予め作画エディタ装置5側に格納されていた通信プログラムファイル33が、プログラマブル表示器1にダウンロードされて格納されたものである。
 上述したように、基本的には、CPU11が、本体プログラム21と画面データ22と取得データ等に基づいて、上記操作表示画面の表示制御を行う。例えば、メーターやランプ等のアイテムに関して、定期的に、そのアイテムの割当メモリ領域からデータを読み出して、そのアイテムの表示内容を当該読出データに基づいて更新する。あるいは、当該読出データを蓄積して、この蓄積データ(ログデータ;ロギングデータ)の一部または全部を用いてグラフ表示するアイテムもあり、その一例が上記ヒストリカルトレンドグラフ表示に係わるアイテムである。
 あるいは、例えばスイッチ等のアイテムに関しては、ユーザが、この操作表示画面上の所望のスイッチをタッチしてON/OFF操作すると、スイッチON画像表示/スイッチOFF画像表示が行われる。また、CPU11は、このスイッチ操作に応じた所定の処理(例えば接続機器4の制御等)を行う。
 そして、この割当メモリ領域からの読出しデータを、プログラマブル表示器1の内部メモリ(後述する共有メモリ64等)に一時的に格納し、これに基づいてアイテム表示制御を行う構成がある。
 すなわち、例えば後述する各通信処理部55等によって定期的に、接続機器4内のメモリデバイスの所定の記憶領域(割当メモリ領域)からデータを読み出して、この読出データを上記内部メモリに格納する処理が行われる。そして、内部メモリの格納データ等に基づいて、上記操作表示画面の表示制御が行われることになる。これによって、操作表示画面上の各アイテム画像の表示内容が、そのアイテムに対応する割当メモリ領域(監視メモリ)の最新の格納データの内容を反映させたものとなる。
 プログラマブル表示器1の通信プログラム23は、通信ライン6を介して接続機器4と通信を行うためのプログラムである。通常、接続機器4の機種毎等に固有の通信プロトコル(通信規定)を持ち、この通信規定に従って、プログラマブル表示器1-接続機器4間での通信を行う。そのため、通信プログラム23は、各接続機器4の機種毎等に開発が必要となる。尚、当然、CPU11などが通信プログラム23を実行することで、接続機器4との通信処理が実現される。
 尚、プログラマブル表示器1-作画エディタ装置5間の通信は、例えば本体プログラム21と作画エディタ31とによって行う。例えば、通信機能が作画エディタ31に組み込まれている。これについては本手法とは特に関係ないので、図示・説明しない。PLC本体等である接続機器4は、様々なメーカー・機種があり、各メーカー/機種毎に独自の通信プログラムがあり、上記通信プログラム23は、接続機器4のメーカー/機種に応じて場合によっては複数種類備えられるものとなる。
 通信プログラム23は、通常、作画エディタ装置5内の不図示のHD(ハードディスク)内に、複数の通信プログラムファイル33(各機種毎に開発済の複数の通信プログラム)として予め記憶されている。そして、作画エディタ装置5は、作画エディタ31によりユーザが任意の接続機器4を選択・指定すると、該選択された接続機器4に応じた通信プログラムファイル33を、プログラマブル表示器1に転送して、上記通信プログラム23として記憶させる。
 プログラマブル表示器1から接続機器4内の監視メモリへアクセスする処理は、画面データ22に含まれる各種設定に従って実行される。換言すれば、作画エディタ31上で画面データファイル32作成時に行われた各種ユーザ設定に従って実行される。例えば、ユーザが、画面データファイル32作成の際に、画面内に各種アイテムを配置すると共に、これら各アイテム毎に任意のアドレス(監視メモリ)を指定する。
 上記のようにして作成された画面データファイル32を、プログラマブル表示器1にダウンロードして画面データ22として記憶させる。プログラマブル表示器1は、従来と同様に、画面データ22を用いて上記操作表示画面の表示制御を行うものであり、これに伴って、各アイテム毎に上記監視メモリのデータを定期的に取得する動作等を実行する。更に、取得データに基づいて画面上のアイテム表示内容を更新する動作等を行う。
 尚、上述した各種処理を実現させるプログラムは、例えば本体プログラム21に含まれていてもよいし、画面データファイル32(画面データ22)に含まれていてもよい。何れにしても、この様なプログラムを例えば上記CPU11が実行することで、本例のプログラマブル表示器1の各種処理・動作などが実現されることになる。
 ここで、支援装置5は、例えばパソコン等であり、特に図示しないが一般的な汎用コンピュータの構成(CPU、記憶部(ハードディスク、メモリ等)、通信部、操作部(マウス等)、ディスプレイ)を有している。記憶部に予め記憶されているアプリケーションプログラムを、CPUが実行することにより、例えば作画エディタ31の上記処理機能等が実現される。
 図4、図5は、本例のプログラマブル表示器の構成・機能図である。
 尚、図4、図5は、1つの図を2つに分けて示しているのであり、以下、まとめて図4等と記すものとする。
 上記CPU11が、例えば上記ROM12に記憶されている所定のプログラム(例えば上記本体プログラム21、通信プログラム23等)を実行することにより、例えば図4等に点線で示す枠内の各種処理機能部が実現される。すなわち、図示のアイテム生成部51、アイテム処理スケジュール部52、アイテム処理部53、ロギング処理部54、通信処理部55、ロギング生成部56等の各種処理機能部の各種処理機能が実現される。これら各種処理機能の詳細は後述する。
 尚、通信処理部55は、例えば、本体プログラム21と通信プログラム23とによって実現される。それ以外の処理機能部は本体プログラム21によって実現される。
 また、図示のロギングリスト61、ロギングデータ62、アイテムリスト63、共有メモリ64等の各種データが、CPU11内の不図示のメモリ等に格納される。あるいは、これら各種データは、RAM13やROM12などに格納されるものであってもよい。
 アイテム生成部51は、上記画面データ22等に基づいて、アイテムリスト63を生成する。これは、例えば、画面データ22の一部を抽出する形で生成する。尚、アイテム生成部51は既存の機能である。よって、アイテム生成部51の処理機能については、特にフローチャート図等は示さず、説明もしないものとする。
 ここで、図6(a)、(b)に、アイテムリスト63のデータ構成図を示す。
 図6(a)は、アイテムリスト63全体のデータ構成図である。図6(b)は、その一部である“アイテムタイプ毎のデータ”75の詳細データ構成例である。
 図示の例のアイテムリスト63は、アイテムNo.71、アイテムタイプ72、座標73、サイズ74、“アイテムタイプ毎のデータ”75、処理済みフラグ76などから成る。
 例えば上記操作表示画面の各アイテム毎に、アイテムリスト63の任意のレコードが対応付けられる。アイテムNo.71には、対応するアイテムの識別IDが格納される。尚、各アイテムにはユニークな識別用IDが予め割り当てられている。
 アイテムリスト63には、操作表示画面上の各アイテム毎に、上記各種情報71~75が格納される。尚、上記のことから、上記各種情報71~75は画面データ22の一部であると見做してよい。画面データ22のデータ構造は特に示さないものとする。
 アイテムタイプ72には、そのアイテムの種別(スイッチ、ランプ、メーター、棒グラフ、ヒストリカルトレンドグラフ等)を示すアイテム種別識別情報が格納される。
 座標73とサイズ74には、そのアイテムの画像の表示位置、大きさを示す情報が格納される。
 処理済みフラグ76は、処理済みか否かを示すフラグであり、その使用方法は後にフローチャート図で説明する。
 ここで、“アイテムタイプ毎のデータ”75には、そのアイテムの種別に応じた各種データが格納される。ここでは、一例としてアイテム種別が“ヒストリカルトレンドグラフ”である場合の各種データを、図6(b)に示すものとする。
 図6(b)に示す例の“アイテムタイプ毎のデータ”75は、ロギングNo.81、最大値82、最小値83、倍率84、集約タイプ85等から成る。
 ロギングNo.81は、当該ヒストリカルトレンドグラフ・アイテムによる表示対象のロギングデータ62の識別用IDである。尚、ヒストリカルトレンドグラフ・アイテムが複数ある場合、これら各アイテム毎に、そのアイテムによるグラフ表示に用いるロギングデータ62が存在している。
 最大値82、最小値83は、ヒストリカルトレンドグラフの縦軸(データ軸)の表示範囲を示す。つまり、表示対象データ値の表示範囲を示す。上述した図17の例の場合、グラフの縦軸は0~100となっているので、最大値82=‘100’、最小値83=‘0’が格納されていることになる。
 倍率84は、グラフの横軸(時間軸)の表示範囲を示すものであり、ここでは“等倍”の場合、上記図17で説明した上記従来の最大表示範囲で表示される状態であるものとする。よって、従来では上述したようにこれ以上は“拡大”することが出来ない状態である。つまり、従来では、倍率を等倍から2倍、4倍等に“拡大”することは出来なかった。尚、この状態は、上述した「グラフの時間軸方向での画素1点とデータ1点とが1対となる」状態と言うこともできる。
 尚、言うまでもないが、従来でも倍率を等倍から1/2や1/4などに“縮小”することは出来る。例えば倍率が1/2倍の場合には「グラフの時間軸上の画素2点とデータ1点とが1対となる」ことになる。尚、この場合、表示の際には、各データ毎に、それと対となる2つの画素のうちの1つのみを用いるようにしてもよい。
 尚、倍率84は、上記図17で説明した「拡大」ボタン、「縮小」ボタンが、ユーザによって操作される毎に更新される。
 集約タイプ85には、データ集約方法が格納される。ここで、本手法では、上記倍率が2倍、4倍等に“拡大”された場合、表示対象データに対して後述するデータ集約処理を行うことで、上記等倍から2倍、4倍等に“拡大”表示することを可能とする。このデータ集約方法は、本説明では一例として後述する平均値を用いる方法を採るが、この例に限らず、例えばピーク(最大値)、ボトム(最小値)、移動平均等のデータ集約手法を用いても構わない。これより、例えば、集約タイプ85には、平均値、ピーク、ボトム、移動平均のなかの何れかが格納される。尚、この様なデータ集約方法は、予め登録されるか、あるいはユーザが任意に設定/変更可能となっている。
 以上、図6に示すアイテムリスト63の具体例について説明した。
 図4等の説明に戻る。
 ここで、アイテム生成部51は、上記画面データ22等に基づいて、上記アイテムリスト63だけでなく、更に、共有メモリ64の初期状態を生成してもよい。但し、この例に限らず、ロギング生成部56が後述するロギングリスト61の生成だけでなく、更に、共有メモリ64の初期状態を生成してもよい。何れにしても、ここでは、画面データ22等に基づく共有メモリ64の初期状態生成について説明する。
 ここで、まず、画面データ22には、上記アイテムリスト63の各データだけでなく、上記割当メモリ領域を示す情報(メモリデバイスやアドレス等)も含まれている。この情報に基づいて、共有メモリ64の初期状態が生成される。尚、この生成処理自体は既存技術であり、詳細な説明は行わないものとする。
 ここで、図7(a),(b)に、上記共有メモリ64の具体例を示す。
 図7(a)には共有メモリ64のデータ構造例、図7(b)にはデータ格納例を示す。
 図7(a)、(b)に示す例では、共有メモリ64は、ポート91、デバイス名92、アドレス93、データ94の各データ項目より成る。尚、これらのデータ項目は、従来と略同様であっても構わない。よって、以下、簡単に説明する。
 ポート81は、上記通信ポートの識別情報等であり、実質的には通信相手の接続機器4を識別する情報となる。デバイス82は、通信相手の接続機器4内のメモリデバイスの識別情報である。アドレス83は、デバイス82が示すメモリデバイスにおける所定の記憶領域(割当メモリ領域)のアドレスであり、データ84にはこの割当メモリ領域から取得したデータが格納される。尚、上記割当メモリ領域のアドレスを“割当メモリアドレス”と呼ぶ場合もあるものとする。
 ポート91、デバイス名92、アドレス93には、画面データ22の該当データがコピーされて格納される。データ94は、初期状態では“NULL”となっており、後述する通信処理部55によって最新のデータが取得される毎に、当該最新データがデータ94に格納されることになる。尚、図7(b)に示す例では、データ94には何等かのデータが格納されているので、これは初期状態ではないことになる。
 上記共有メモリ64のデータ94は、随時、通信処理部55によって最新データに更新される。尚、通信処理部55の処理機能自体は、既存技術であり、詳細な説明は行わないものとする。
 通信処理部55は、各接続機器4(4-1、4-2)毎に対応して備えられる通信処理部55-1、55-1である。すなわち、図示の通信処理部55-1は、接続機器4-1に対応する通信ポートWAY1を使用して、通信ライン6を介して、接続機器4-1との通信を行って、各アイテムに対応する各割当メモリ領域の格納データを取得する。取得データは、共有メモリ64の所定領域に上書き格納する。
 同様に、図示の通信処理部55-2は、接続機器4-2に対応する通信ポートWAY2を使用して、通信ライン6を介して、接続機器4-2との通信を行って、各アイテムに対応する各割当メモリ領域の格納データを取得する。取得データは、共有メモリ64の所定領域に上書き格納する。
 尚、通信処理部55の処理フローチャート図を、図9に示し、後に説明するものとする。
 また、ロギング生成部56は、画面データ22等に基づいて、ロギングリスト61の一部を生成する。尚、ロギングリスト61やその生成処理自体は、既存技術であるので、詳細な説明は行わないものとする。
 ここで、図8(a)に、ロギングリスト61の具体例を示す。
 図示の例では、ロギングリスト61は、ロギングNo.131、メモリ設定個数132、メモリ設定133、ロギング間隔134、ロギング数(最大値)135、前回ロギング実行時間136等から成る。これら各種データのうち、前回ロギング実行時間136以外のデータは全て、画面データ22に含まれていたものと見做して構わない。基本的には、画面データ22の一部を抽出することで、ロギングリスト61が生成される。
 ロギングリスト61のデータ格納例は示さないが、複数のレコードがある場合、基本的に、ヒストリカルトレンドグラフ・アイテムが複数あるものと見做してよい。つまり、ロギングリスト61の各レコードは、それぞれ、1つのヒストリカルトレンドグラフ・アイテムに対応するものである。そして、例えば、対応するヒストリカルトレンドグラフ・アイテムの上記ロギングNo.81が、ロギングNo.131に格納される。
 メモリ設定133には、N個のメモリ設定データが格納される。メモリ設定データは、上記割当メモリ領域のアドレス等である。そして、上記N個が、メモリ設定個数132に格納される。例えば、上述した図17の例の場合、データA、データB、データCの3種類のデータが表示対象であるので、上記Nは‘3’となる。そして、メモリ設定133には、データAに係わる割当メモリアドレスと、データBに係わる割当メモリアドレスと、データCに係わる割当メモリアドレスとが、格納されることになる。
 尚、図17では、データA、データB、データCの3種類についてロギングデータがある例を示しており、それ故、それぞれについて上記の通り割当メモリアドレスが登録されている。但し、図17ではヒストリカルトレンドグラフの表示例は、1種類のデータのみ(例えばデータAのみ)が表示されているものとして示している。これは、単に、3種類のグラフ表示を示すと、複雑になる為、省略して示しているだけである。よって、実際には、データA、データB、データCの3種類のグラフ表示が行われることになる。これは、後述する図15に関しても略同様である。
 ここで、メモリ設定133の詳細例を、図8(b)に示す。図示の例のメモリ設定133は、デバイス名101とアドレス102から成り、これらが上記割当メモリ領域のアドレス等である。すなわち、デバイス名101が示すメモリデバイスにおけるアドレス102が、上記割当メモリ領域のアドレスである。尚、デバイス名101が示すメモリデバイスは、接続機器4内のメモリデバイスである。
 ロギング間隔134は、ロギング処理すなわちロギングデータ62の更新処理の実行周期である。例えば、ロギング間隔134が100(ms)であれば、100(ms)毎にロギングデータ62が更新される。ロギングデータ62の更新は、基本的に、最新のデータがロギングデータ62に追加格納されるものである。最新のデータは、接続機器4内の割当メモリ領域から取得したデータが、共有メモリ64のデータ94に格納されているものである。
 ロギング数(最大値)135は、ロギングデータ62に格納するデータ点数の上限である。ロギングデータ62に格納されているデータ点数が、この上限値に達した後には、ロギングデータ62の更新処理実行毎に、最古のデータを削除して上記最新データを追加することになる。
 前回ロギング実行時間136は、上記ロギング処理実行する毎に、そのときの日時等が格納される。この処理は、例えばロギング処理部54等が実行する。前回ロギング実行時間136から上記ロギング間隔134の時間経過したら、次のロギング処理が実行されることになる。
 ロギング処理部54は、例えば上記ロギングリスト61に従って、上記ロギングデータ62を更新する処理等を行う。すなわち、ロギング処理部54は、例えば上述したように、前回ロギング実行時間136から上記ロギング間隔134の時間経過したら、所定の処理を実行する。ロギング処理部54の処理例は、図11に示し、後に説明するが、基本的には上記の通り、最新のデータをロギングデータ62に追加格納するものである。
 アイテム処理部53は、画面上の各アイテムの表示内容を更新する処理機能部である。ここでは、ヒストリカルトレンドグラフ・アイテムの表示に関してのみ説明するものとし、他のアイテム表示については説明を省略する。但し、他のアイテム表示は、基本的に、共有メモリ64を参照して、その上記データ94に基づいて表示内容を決定して表示するものである。これに対して、ヒストリカルトレンドグラフ・アイテムの場合、上記のようにデータ94に応じてロギングデータ62が更新されており、基本的にはロギングデータ62に基づく表示を行うことになる。これ自体は従来と同様であってよい。
 ここで、図8(c)に、ロギングデータ62のデータ構成図を示す。
 図示の例では、ロギングデータ62は、ロギングNo.141、ロギング時間142、データ個数143、データ144の各データ項目から成る。
 ロギングNo.142は、上記ロギングNo.131と略同様であるので、説明は省略する。
 データ144は、ここでは省略して示すが、例えば図17に示すように、データA、データB、データC等の各データ種別毎に、その時系列ログデータが格納される。データ個数143は、データ種別の個数であり、上記N個に相当する。よって、この例ではデータ個数143=‘3’となっている。
 ロギング時間142には、各データ144の収集時間が格納される。換言すれば、各データ144が収集・格納される毎に、そのときの日時等がロギング時間142に格納される。上記図17の例では図上右上に示す時系列データ(ロギングデータ)における「時間」が、ロギング時間142に相当する。
 上記ロギング時間142の各「時間」に対応付けて、そのときに収集されたデータがデータ144に格納される。例えば、図17に示すデータAの例の場合、ロギング時間142=‘0:10’に対してはデータ144=‘25’が格納され、ロギング時間142=‘10:00’に対してはデータ144=‘40’が格納されていることになる。
 ここで、本例のアイテム処理部53は、場合によっては上記ロギングデータ62のデータ144を集約して、当該不図示の集約ロギングデータに基づいてヒストリカルトレンドグラフ表示を行う場合がある。詳しくは後に図12等のフローチャート図を参照して説明する。
 アイテム処理スケジュール部52は、例えば定期的にアイテム処理部53に上記処理を実行させる。
 以下、各フローチャート図を参照して、上記図4等に示す各種処理機能部の処理例について説明する。
 まず、図9を参照して、通信処理部55の処理例について説明する。
 図9は、通信処理部55の処理フローチャート図である。尚、この処理自体は、既存の処理であり、以下、簡単に説明する。
 例えば図4等の例では各通信処理部55-1、55-2が、各々、図9の処理をサイクリックに(定周期で)実行するものである。
 図9の処理例では、まず、共有メモリ64に基づいて、自己が担当する接続機器4に係るメモリリスト110を生成する(ステップS11)。例えば、通信処理部55-1による処理の場合には、接続機器4-1に係るメモリリスト110を生成することになる。例えば、共有メモリ64において、ポート81がWAY1であるレコードを全て抽出することで、接続機器4-1に係るメモリリスト110を生成する。
 図10(a)に、このメモリリスト110のデータ構成例を示す。
 図示の例では、メモリリスト110は、デバイス名111、アドレス112、データ113の各データ項目より成る。例えば上記通信処理部44-1の例の場合、共有メモリ64からポート91が“WAY1”であるレコードを全て抽出して、該各抽出レコードのデバイス名92、アドレス93、データ94の情報を、上記デバイス名111、アドレス112、データ113に格納することで、上記接続機器4-1に係るメモリリスト110を生成することになる。尚、データ113は、必ずしも必要ないものである。代わりに、処理済みか否かを示すフラグ情報が格納されていてもよい。
 その後は、生成したメモリリスト110を参照しながら、ステップS15の判定がNOとなるまで、ステップS12~S14の処理を繰り返し実行する。尚、この処理自体は従来と同様であってよく、以下、簡単に説明する。
 すなわち、メモリリスト110から未処理のレコードを1つ取り出して処理対象レコードとし、この処理対象レコードの内容に基づくメモリ読込コマンドを生成して、これを自己が担当する接続機器4に通信ライン6を介して送信する(ステップS12)。このコマンドには、上記デバイス名111やアドレス112等のアクセス先を特定する情報(割当メモリアドレス)が含まれる。これより、接続機器4は、この割当メモリアドレスが示す記憶領域からデータを読み出して、この読出しデータを返信する応答処理を行う。
 通信処理部44は、上記メモリ読込コマンドに対する接続機器4からの応答を受信したら(ステップS13)この応答に含まれる上記読出しデータを、上記共有メモリ64において処理対象レコードに相当するレコードにおける上記データ94の欄に格納する(ステップS14)。
 そして、上記ステップS14の処理を実行後、メモリリスト110に未処理のレコードが残っているか否かをチェックし(ステップS15)、残っている場合には(ステップS15,YES)ステップS12に戻り、残っていない場合には(ステップS15,NO)本処理を終了する。
 図11は、ロギング処理部54の処理フローチャート図である。
 尚、当該図11の処理も、既存の処理と見做してよく、以下、簡単に説明する。
 まず、ロギングリスト61の初期化処理を実行する(ステップS41)。尚、図8(a)には示していないが、ロギングリスト61にも上記処理済みフラグ76に相当するフラグ等が含まれており、ステップS41では例えばロギングリスト61の全レコードの当該不図示のフラグをクリアする。
 続いて、ロギングリスト61の任意のレコードの各情報を取得して(ステップS42)、まず、前回ロギング実行時間136とロギング間隔134に基づいて、ロギング処理の実行タイミングとなったか否かを判定する(ステップS43)。つまり、現在、前回ロギング実行時間136からロギング間隔134分経過しているか否かを判定する。
 未だロギング実行タイミングではない場合には(ステップS43,NO)、未処理のリスト(レコード)があるか否かを判定し(ステップS49)、未処理のリストがある場合には(ステップS49,YES)ステップS42に戻る。尚、当然、全てのリストについて処理実行したら(ステップS49,NO)、本処理を終了する。
 ロギング処理の実行タイミングである場合には(ステップS43,YES)、まず、共有メモリ64からメモリ情報120を生成する(ステップS44)。メモリ情報120の具体例は、図8(b)に示すように、データ121から成るものである。データ121は、共有メモリ64における該当レコードのデータ94である。該当レコードは、そのデバイス名92及びアドレス93が、ロギングリスト61における上記メモリ設定133(デバイス名101及びアドレス102;割当メモリアドレス)と同一であるレコードである。
 尚、メモリ設定133の割当メモリアドレスが複数ある場合には、それぞれについて上記該当レコードのデータ94(最新データ)を取得することで上記メモリ情報120(そのデータ121)を生成する。尚、上記の例ではメモリ設定133にはデータA、データB、データCの3種類の割当メモリアドレスが格納されているので、上記メモリ情報120は、データAの最新データ、データBの最新データ、データCの最新データから成ることになる。
 そして、ロギングデータ62に格納済みの時系列ログデータ数が、未だ上限(ロギング数(最大値)135)に達していない場合には(ステップS45,NO)、上記メモリ情報120をロギングデータ62に追加格納する(ステップS47)。つまり、最新データをロギングデータ62に追加記録する。そして、上記“フラグ”をON(処理済み)にして(ステップS48)、上記ステップS49の処理へ移行する。
 尚、上記ステップS47の処理は、例えば上記具体例の場合、データA、データB、データCそれぞれについて、ロギングデータ62における所定のデータ格納領域にその上記最新データを追加格納することになる。尚、上記格納済みの時系列ログデータ数は、データA、データB、データCで全て同じとなるはずであるので、何れか1つについて時系列ログデータ数を上限(ロギング数(最大値)135)と比較することで、上記ステップS45の判定を行えばよい。
 一方、ロギングデータ62の時系列ログデータ数が上限に達している場合には(ステップS45,YES)、ロギングデータ62から最古のデータを削除したうえで(ステップS46)上記ステップS47,S48の処理を実行する。尚、ステップS46の処理も、例えば上記具体例では、データA、データB、データCそれぞれについて、上記所定のデータ格納領域から最古のデータを削除することになる。
 そして、所定の完了処理を実行する(ステップS48)。これは、例えば、処理対象レコードの上記不図示のフラグをONすることで、ロギング処理実行済みであることを記録する。
 図12、図13は、アイテム処理部53の処理フローチャート図である。
 尚、図12、図13は、1つの処理フローを2つに分けて示しているだけであり、よって、以下、特に区別せずに図12等と記すものとする。尚、上記の通り、アイテム処理部53は、例えばアイテム処理スケジュール部52によるスケジュール管理の元、例えばサイクリックに図12等の処理を実行する。
 図12等に示す処理例では、まず、アイテムリスト63の初期化処理を実行する(ステップS21)。これは、例えば、アイテムリスト63の全レコードの上記処理済みフラグ76を、フラグOFF(未処理)とする。
 そして、アイテムリスト63から任意の処理対象レコードの情報を取得する毎に(ステップS22)、ステップS23~S27の処理を実行する。尚、アイテムリスト63の各レコードは、操作表示画面上の各アイテムに対応するものである。
 まず、処理対象レコードのアイテムタイプ72を参照することで、ヒストリカルトレンドグラフ・アイテムであるか否かを判定する(ステップS23)。
 処理対象がヒストリカルトレンドグラフ・アイテム以外のアイテムである場合には(ステップS23,NO)、既存の通常のアイテム表示処理を行う。よって、これについては簡単な説明のみとする。すなわち、まず、例えば共有メモリ64の該当レコードのデータ94をメモリ情報120として取得する(ステップS24)。これは上記ステップS44と略同様の処理である。続いて、ステップS22で取得した情報とメモリ情報120等に基づいて、当該処理対象アイテムに係わる描画(表示)処理を行う。図上には一例として、数値表示アイテムの表示例であってメモリ情報120が‘12345’であった場合の例を示してある。
 そして、最後に、処理対象レコードの上記処理済みフラグ76をフラグON(処理済み)とする(ステップS26)。そして、アイテムリスト63に未処理のレコードがあれば(ステップS27,YES)ステップS22に戻って次の処理対象レコードについて上記と同様の処理を行い、全レコードについて処理済みであれば(ステップS27,NO)本処理を終了する。
 一方、上記ステップS23がYESの場合、すなわち処理対象がヒストリカルトレンドグラフ・アイテムである場合には、ステップS28~S31の処理を実行する。
 すなわち、まず、処理対象レコードのロギングNo.81を用いて、該当するロギングデータ62をロギング情報66として取得する(ステップS28)。換言すれば、所定対象のヒストリカルトレンドグラフ・アイテムに係わるロギングデータ62を取得する。これは、特に、ヒストリカルトレンドグラフ・アイテムが複数あり、それぞれに対応するロギングデータ62がある場合を想定している。つまり、ロギングデータ62が複数ある場合を想定している。そして、上記ステップS28の処理では、そのロギングNo.141が、上記処理対象レコードのロギングNo.81と同一であるロギングデータ62を、ロギング情報66として取得する。これは、特に、当該ロギングデータ62における時系列ログデータ(ロギング時間142及びデータ144))を、ロギング情報66として取得する。尚、これは、例えば上記データA、データB、データCの3種類の時系列ログデータをグラフ表示するヒストリカルトレンドグラフ・アイテムである場合には、これら各データA,B,C毎にそれぞれ時系列ログデータを取得する。
 次に、処理対象レコードの倍率84を参照して、これが等倍より大きいか否かを判定する(ステップS29)。倍率が等倍より大きい場合すなわち倍率が2倍や4倍等である場合には(ステップS29,YES)、ロギング情報66を集約することで、集約ロギングデータ200を生成する(ステップS30)。
 上記ステップS30の集約ロギングデータ生成処理について、図14に示す一例を用いて説明する。尚、ここでは集約方法として平均値を用いる例を示すが、勿論、この例に限るものではなく、上述したようにピーク、ボトム、移動平均等であってもよい。
 図14(a)には集約ロギングデータ生成の為の算出方法などを示す。
 図14(b)には、ロギング情報66と集約ロギングデータ200のデータ構成例を示す。
 まず、図14(b)に示すデータ例について説明する。
 図示の例では、ロギング情報66は、時間211とデータ212の各データ項目から成る。尚、上記具体例の場合、上記データA、データB、データCそれぞれについて図示のロギング情報66があり、且つ、それぞれについて図示の集約ロギングデータ200が生成されることになる。
 上記時間211とデータ212が、上記ステップS28においてロギングデータ62から取得したロギング時間142とデータ144に相当する。ロギング情報66は、図示の例では“N+1”個のレコードから成る。この“N+1”は上記ロギング数(最大値)135に相当する。尚、上記ロギングデータ62からロギング情報66を生成する際に。時間順にソートしてもよい。すなわち、上記ステップS28においてロギングデータ62から取得したロギング時間142とデータ144を、時間順にソートしたものを、上記時間211とデータ212としてもよい。例えば現在日時に近い順にソートして格納してもよいし、その逆であってもよい。つまり、最新のデータから順にソートしてもよいし、最古のデータから順にソートしてもよい。この例では図示の“Data0”が最新のデータ、“DataN”が最古のデータとなる。
 また、図示の例では、集約ロギングデータ200は、No.201、時間202、データ203の各データ項目から成る。尚、No.201は、集約ロギングデータ200の各レコードに対して先頭から順に割り当てられるシリアル番号(0,1,2、3、・・・)である。
 集約ロギングデータ生成処理では、例えば、ロギング情報66の先頭レコードから順に、倍率に応じた分ずつ複数のレコードを取得する。例えば倍率4倍の場合には、図示のように4つのレコードを取得する。そして、4つのレコードを取得する毎に、これらのデータ212の平均値を算出して、該算出値を集約ロギングデータ200のデータ203に格納する。この様な平均値の算出を式で表したものが、図14(a)に示す(式b)である。
 例えば、図示のTime0~Time3が処理対象の場合、これらのデータ212である図示のData0,Data1,Data2,Data3の平均値は、下記のように求められる。
 平均値=(Data0+Data1+Data2+Data3)/4
 尚、仮に倍率が2倍であるならば、ロギング情報66における2つのレコードずつ、その平均値を求めてデータ203に格納することになる。
 また、本例では、時間202には、上記4つの処理対象レコードのうちの先頭レコードの時間211が格納されるものとする。よって、図示の例では時間202には“Time0”が格納される。これを式で表したものが、図14(a)の(式a)である。勿論、これは一例に過ぎない。
 尚、(式a)や(式b)に示す時間mやデータmの“m”は、No.201に対応するものである。つまり、図14(b)に示す例では、例えばm=3の場合、すなわち時間3とデータ3は、No.201が‘2’のレコードの時間202、データ203に対応することになる。つまり、上記の例では倍率は4であるので、(式a)より、図示のように、時間3=Time(3×4)=Time12が、No.201=‘3’のレコードの時間202に格納されることになる。(式b)によって算出されるデータ3についても、略同様である。尚、図示の例では、m=0~Mとなる。
 尚、当然ながら、ロギング情報66の各セルには、図示のようなTime0やData0ではなく、実際のデータ(ロギング時間142、データ144)が格納されることになる。図示のTime0やData0は、予め各セルに割り当てられている識別子のようなものと見做しても構わない。よって、例えば上記時間202に格納される“Time0”は、当該“Time0”自体が格納されるのではなく、当該“Time0”のセルに格納される実データが、上記時間202に格納されることになる。これは、上記平均値の算出についても同様であり、実際には実データを用いて算出処理が行われることになる。
 アイテム処理部53は、例えばこの様にして生成される集約ロギングデータ200を用いて、ヒストリカルトレンドグラフ表示を行う(ステップS31)。これによって、従来ではそれ以上は表示時間範囲を“拡大”できなかった場合でも、表示時間範囲を“拡大”可能となる。尚、この“拡大”は、既に述べたように、一度に表示可能な時間範囲の拡大を意味する。
 尚、上記ステップS31の処理を実行したら、上記他のアイテムと同様、上記ステップS26、S27の処理を実行する。
 ここで、図14(b)に示す例では、ロギング情報66のデータ点数は(N+1)個、集約ロギングデータ200のデータ点数は(M+1)個となる。そして、ここでは倍率は4倍であるので、一例としてロギング情報66の全レコードを集約対象とする場合には、(M+1)=(N+1)/4あるいは(M+1)≒(N+1)/4の関係となる。また、(N+1)は、上記ステップS45がYESとなる状況では、上記上限値(ロギング数(最大値)135)と同一であると見做して良い。
 ここで、上記(M+1)個が、ディスプレイ上でヒストリカルトレンドグラフ表示に用いることができる画素数P以下である場合には、実質的にロギングデータの全てを一度に表示できることになる。尚、上記“実質的に”とは、ロギング情報66のデータをそのまま表示させるものではなく、集約データを用いることを意図している。一度に表示可能なデータ点数が、画素数P以下である点は、従来と同じである。また、尚、上記画素数Pは、ヒストリカルトレンドグラフの時間軸に対応する画素数と言うこともできる。
 上記画素数Pは、例えばディスプレイの横方向の画素数であるが、この例に限らない。
 例えば、ディスプレイ解像度が横640(画素)×縦480(画素)であって、上記“ヒストリカルトレンドグラフの時間軸に対応する画素数P”が600(画素)であるものとした場合、(M+1)≦600である場合には、実質的に全ロギングデータを一度に表示させることができ、ユーザは全体像を把握し易くなる。
 また、(M+1)>Pであっても構わない。この場合には、集約ロギングデータ200のデータ203の全てを一度に表示させることは出来ないが、その一部を表示させることができ、また例えばスクロール表示させても構わない。この様に、集約ロギングデータ200を用いる場合でも、必ずしも全時系列データを実質的に一度に表示出来るとは限らない。しかし、一度に表示可能な時間範囲は、従来よりも“拡大”させることができる。
 例えば仮に、現在時刻が15:00であり、等倍の場合には12:00~15:00の3時間分のデータまでしか一度に表示出来なかったものとする。この場合、本手法では、例えば倍率を2倍に拡大すると、09:00~15:00の6時間分のデータを実質的に一度に表示出来ることになる。勿論、これは、データ2点をデータ1点に集約したことで、データ点数を半分とすることで、一度に表示可能とするものである。同様に、例えば倍率を4倍に拡大すると、03:00~15:00の12時間分のデータを実質的に一度に表示出来ることになる。勿論、これも、データ4点をデータ1点に集約したことで、データ点数を1/4とすることで、一度に表示可能とするものである。
 図15に、本例によるヒストリカルトレンドグラフ表示例を示す。
 図示の例では、グラフの表示領域において横軸方向について1ドット毎に、ロギングデータ1点または集約データ1点が対応付けられることになる。仮に、従来では一度に表示可能なデータは、図17のように10:00~15:00の5時間分の時間範囲のデータであるものとする。従来では、この状態でユーザが「拡大」ボタンを操作しても、これ以上表示時間範囲は拡大できなかった。理由は既に述べた通りである。
 これに対して、本手法では、この状態でユーザが「拡大」ボタンを操作すると、例えば上記集約ロギングデータ200が生成されて、これを用いてグラフ表示が行われることになり、これによって例えば図15に示すように、2:00~15:00の時間範囲のデータを、一度に表示することができる。図14(b)の例の場合、1ドット毎に、ロギング情報66における任意のデータ4点の平均値が、プロットされることになる。
 図16は、本例のプログラマブル表示器1の機能ブロック図である。
 図示のプログラマブル表示器1は、ヒストリカルトレンドグラフを表示するプログラマブル表示器であって、時系列データ記憶部301、集約データ生成部302、表示制御部303等の各種処理機能部を有する。尚、例えば上記CPU11が上記ROM12等に予め記憶されているアプリケーションプログラムを読出し実行することにより、これら各種処理機能部が実現される。尚、集約データ生成部302と表示制御部303は、一例としては上記アイテム処理部53に相当するものと見做してもよい。
 時系列データ記憶部301は、時系列データを記憶する。時系列データの一例が上記ロギングデータ62である。
 集約データ生成部302は、指定された倍率が所定の倍率である場合、該倍率に応じて上記時系列データを集約して集約データを生成する。この集約データの一例が上記集約ロギングデータ200である。
 表示制御部303は、上記時系列データに基づいてヒストリカルトレンドグラフを表示するが、上記集約データが生成されている場合には該集約データに基づいてヒストリカルトレンドグラフを表示する。つまり、表示制御部303は、上記所定の倍率が指定されている場合には、集約データに基づいてヒストリカルトレンドグラフを表示する。
 ここで、例えば、上記所定の倍率は、等倍よりも大きい倍率であり、例えば2倍、4倍等である。
 また、例えば、上記集約データ生成部302は、上記時系列データにおいて上記指定された倍率に応じた複数のデータ毎に所定の集約処理を行うことで、上記時系列データよりデータ数が少ない上記集約データを生成することになる。
 例えば、上記集約データ生成部302は、上記指定された倍率が2倍の場合には上記時系列データのデータ2点毎にデータ1点に集約する。この場合、集約データのデータ数は、時系列データのデータ数の半分となる。また、例えば、上記集約データ生成部302は、上記指定された倍率が4倍の場合には上記時系列データのデータ4点毎にデータ1点に集約する。この場合、集約データのデータ数は、時系列データのデータ数の1/4となる
 そして、例えば、上記データの集約方法は、上記時系列データの上記指定倍率に応じた複数データ毎に、該複数データの平均値または移動平均値あるいはピークまたはボトムを求めるものである。既に図14等で説明した一例では、平均値を用いる例を示したが、この例に限らない。
 また、上記時系列データに基づく表示を行う場合よりも上記集約データに基づく表示を行う場合の方が、前記ヒストリカルトレンドグラフにおける表示時間範囲が大きくなる。例えば、既に図15、図17などで説明したように、従来では図17に示すように表示時間範囲は最大で5時間分であったが、本例では図15に示すように表示時間範囲は最大で13時間分等となる。
 また、上記ヒストリカルトレンドグラフを表示させるディスプレイの解像度に応じて、該ヒストリカルトレンドグラフ上で一度に表示可能なデータ点数の上限が決まる。これは、例えば、横軸(時間軸)方向の解像度に応じて、一度に表示可能なデータ点数の上限が決まる。これは、例えば上述した一例では、横640(画素)×縦480(画素)のディスプレイの場合、上記上限は例えば640(画素)や600(画素)等となる。
 そして、本例のプログラマブル表示器1では、上記時系列データのデータ数が上記上限を超える場合でも、上記集約データのデータ数は該上限以下と成り得る。これによって、本例では、実質的に時系列データの全データを一度に表示することも可能となる。尚、“実質的に”の意味は、既に説明した通りである。
 また、上記表示制御部303は、上記指定された倍率が上記等倍である場合、上記時系列データのデータ一点毎にディスプレイの1画素を対応付けて表示する。これによって、上記のように、横軸(時間軸)方向の解像度に応じて、一度に表示可能なデータ点数の上限が決まることになる。
 また、上記表示制御部303は、例えば、上記指定された倍率が上記等倍より大きい倍率である場合、上記集約データのデータ一点毎にディスプレイの1画素を対応付けて表示する。データ1点と1画素とを対応付けること自体は、時系列データを用いる場合と変わらないが、“集約”していることで実質的により多くのデータ(より広い時間範囲のデータ)を一度に表示可能となる。

Claims (9)

  1.  ヒストリカルトレンドグラフを表示するプログラマブル表示器であって、
     時系列データを記憶する時系列データ記憶手段と、
     指定された倍率が所定の倍率である場合、該倍率に応じて前記時系列データを集約して集約データを生成する集約データ生成手段と、
     前記時系列データに基づいて前記ヒストリカルトレンドグラフを表示するが、前記集約データが生成されている場合には該集約データに基づいて前記ヒストリカルトレンドグラフを表示する表示制御手段と、
     を有することを特徴とするプログラマブル表示器。
  2.  前記所定の倍率は、等倍よりも大きい倍率であり、
     前記集約データ生成手段は、前記時系列データにおいて前記指定された倍率に応じた複数のデータ毎に所定の集約処理を行うことで、前記時系列データよりデータ数が少ない前記集約データを生成することを特徴とする請求項1記載のプログラマブル表示器。
  3.  前記所定の倍率は、2倍または4倍であり、
     前記集約データ生成手段は、前記指定された倍率が2倍の場合には前記時系列データのデータ2点毎にデータ1点に集約し、前記指定された倍率が4倍の場合には前記時系列データのデータ4点毎にデータ1点に集約する集約処理を行うことを特徴とする請求項2記載のプログラマブル表示器。
  4.  前記データの集約方法は、前記時系列データの前記指定倍率に応じた複数データ毎に、該複数データの平均値または移動平均値あるいはピークまたはボトムを求めることを特徴とする請求項1~3の何れかに記載のプログラマブル表示器。
  5.  前記時系列データに基づく表示を行う場合よりも前記集約データに基づく表示を行う場合の方が、前記ヒストリカルトレンドグラフにおける表示時間範囲が大きくなることを特徴とする請求項1~3の何れかに記載のプログラマブル表示器。
  6.  前記ヒストリカルトレンドグラフを表示させるディスプレイの解像度に応じて、該ヒストリカルトレンドグラフ上で一度に表示可能なデータ点数の上限が決まり、
     前記時系列データのデータ数が該上限を超える場合でも、前記集約データのデータ数は該上限以下となることを特徴とする請求項1~3の何れかに記載のプログラマブル表示器。
  7.  前記表示制御手段は、前記指定された倍率が前記等倍である場合、前記時系列データのデータ一点毎にディスプレイの1画素を対応付けて表示することを特徴とする請求項2または3記載のプログラマブル表示器。
  8.  前記表示制御手段は、前記指定された倍率が前記等倍より大きい倍率である場合、前記集約データのデータ一点毎にディスプレイの1画素を対応付けて表示することを特徴とする請求項2または3記載のプログラマブル表示器。
  9.  ヒストリカルトレンドグラフを表示するプログラマブル表示器のコンピュータを、
     時系列データを記憶する時系列データ記憶手段と、
     指定された倍率が所定の倍率である場合、該倍率に応じて前記時系列データを集約して集約データを生成する集約データ生成手段と、
     前記時系列データに基づいて前記ヒストリカルトレンドグラフを表示するが、前記集約データが生成されている場合には該集約データに基づいて前記ヒストリカルトレンドグラフを表示する表示制御手段、
    として機能させる為のプログラム。
     
PCT/JP2013/078960 2013-10-25 2013-10-25 プログラマブル表示器、プログラム WO2015059816A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201380080068.9A CN105593774A (zh) 2013-10-25 2013-10-25 可编程显示器及其程序
JP2015543667A JPWO2015059816A1 (ja) 2013-10-25 2013-10-25 プログラマブル表示器、プログラム
PCT/JP2013/078960 WO2015059816A1 (ja) 2013-10-25 2013-10-25 プログラマブル表示器、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/078960 WO2015059816A1 (ja) 2013-10-25 2013-10-25 プログラマブル表示器、プログラム

Publications (1)

Publication Number Publication Date
WO2015059816A1 true WO2015059816A1 (ja) 2015-04-30

Family

ID=52992452

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/078960 WO2015059816A1 (ja) 2013-10-25 2013-10-25 プログラマブル表示器、プログラム

Country Status (3)

Country Link
JP (1) JPWO2015059816A1 (ja)
CN (1) CN105593774A (ja)
WO (1) WO2015059816A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018156592A (ja) * 2017-03-21 2018-10-04 株式会社東芝 表示制御システム、表示データ生成システム、表示制御方法及びプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109612509B (zh) * 2018-11-13 2021-05-07 中电科思仪科技股份有限公司 一种基于手持式信号测量仪器的趋势图显示处理方法
CN109782720A (zh) * 2019-01-28 2019-05-21 唐志 由工艺逻辑拓扑图直接实现控制的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0268596A (ja) * 1988-09-02 1990-03-08 Fujitsu Ltd トレンドグラフの表示装置
JPH04352939A (ja) * 1991-05-30 1992-12-08 Sharp Corp 携帯型心電計
JPH08137545A (ja) * 1994-11-07 1996-05-31 Toshiba Corp プラント監視装置
JPH08272437A (ja) * 1995-03-31 1996-10-18 Yamatake Honeywell Co Ltd プロセスデータのトレンド表示方法
JPH09269338A (ja) * 1996-04-02 1997-10-14 Yokogawa Electric Corp トレンドグラフ表示装置
JP2009139993A (ja) * 2007-12-03 2009-06-25 Mitsubishi Electric Corp プラント監視装置
JP2012014384A (ja) * 2010-06-30 2012-01-19 Digital Electronics Corp プログラマブル表示器およびデータ表示プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08272438A (ja) * 1995-03-28 1996-10-18 Toshiba Corp プラント情報画面の配色設定装置及びその配色設定方法
CN1261894C (zh) * 2003-02-21 2006-06-28 广州三瑞医疗器械有限公司 一种麻醉监护装置及其监护方法
CN102811062B (zh) * 2010-01-19 2015-05-27 北京四方继保自动化股份有限公司 电力系统广域测量系统高密度时间序列数据的曲线稀疏处理方法
CN101795138B (zh) * 2010-01-19 2013-01-16 北京四方继保自动化股份有限公司 电力系统广域测量系统高密度时间序列数据的压缩处理方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0268596A (ja) * 1988-09-02 1990-03-08 Fujitsu Ltd トレンドグラフの表示装置
JPH04352939A (ja) * 1991-05-30 1992-12-08 Sharp Corp 携帯型心電計
JPH08137545A (ja) * 1994-11-07 1996-05-31 Toshiba Corp プラント監視装置
JPH08272437A (ja) * 1995-03-31 1996-10-18 Yamatake Honeywell Co Ltd プロセスデータのトレンド表示方法
JPH09269338A (ja) * 1996-04-02 1997-10-14 Yokogawa Electric Corp トレンドグラフ表示装置
JP2009139993A (ja) * 2007-12-03 2009-06-25 Mitsubishi Electric Corp プラント監視装置
JP2012014384A (ja) * 2010-06-30 2012-01-19 Digital Electronics Corp プログラマブル表示器およびデータ表示プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018156592A (ja) * 2017-03-21 2018-10-04 株式会社東芝 表示制御システム、表示データ生成システム、表示制御方法及びプログラム

Also Published As

Publication number Publication date
JPWO2015059816A1 (ja) 2017-03-09
CN105593774A (zh) 2016-05-18

Similar Documents

Publication Publication Date Title
EP2858018A1 (en) Interactive user interface
JP6006399B2 (ja) プログラマブル表示器、そのプログラム
KR20170073604A (ko) 데이터 미리보기를 통한 작업 작성 기법
WO2015059816A1 (ja) プログラマブル表示器、プログラム
WO2015063847A1 (ja) プログラマブル表示器、プログラム
JP6033394B2 (ja) プログラマブル表示器、そのプログラム
KR102005656B1 (ko) 제어 시스템 및 프로그래머블 로직 컨트롤러
JP5788125B1 (ja) システム構築支援装置、方法、および記録媒体
JP5931276B2 (ja) プログラマブル表示器、そのプログラム
JP2005327039A (ja) データ解析支援プログラム、プログラム格納媒体
JP5870214B2 (ja) プログラマブルコントローラシステム、そのプログラマブル表示器、支援装置、プログラム
JP5847965B2 (ja) プログラマブルコントローラシステム、プログラマブル表示器、支援装置、プログラム
JP6333279B2 (ja) プログラマブル表示器、プログラム
JP5883936B2 (ja) プログラマブルコントローラシステム
JP5970080B2 (ja) プログラマブル表示器、プログラム
US9734274B2 (en) System design management
JP6042980B2 (ja) プログラマブルコントローラシステム、その作画エディタ装置、そのプログラム
JP6138269B2 (ja) プログラマブル表示器、プログラム
JP5883953B2 (ja) プログラマブルコントローラシステム、そのプログラマブル表示器、作画エディタ装置、プログラム
JP2016027486A (ja) プログラマブル表示器、支援装置、プログラム
JP2017509977A (ja) タッチデバイス上の電力消費を改善するための方法および装置

Legal Events

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

Ref document number: 13896074

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015543667

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13896074

Country of ref document: EP

Kind code of ref document: A1