Building management system and control method
Patent Information
- Application Number
- JP2021066353
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-04-09
- Publication Date
- 2025-02-17
- Estimated Expiration
- 2041-04-09
Smart Images

Figure 0007630338000001 
Figure 0007630338000002 
Figure 0007630338000003
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to building management systems and control methods. [Background technology]
[0002] In a building management system, a central monitoring device collects data based on measurement values from various equipment installed in a building, and the collected data is displayed so that the measurement values can be confirmed (meter reading). For example, Japanese Patent Laid-Open Publication No. 2007-129425 (Patent Document 1) describes a building management system in which data collected from various equipment such as air conditioning equipment and power equipment is transmitted to a central monitoring device via local monitoring devices. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2007-129425 Summary of the Invention [Problem to be solved by the invention]
[0004] One such building management system includes various types of equipment, a first device acting as a local controller connected to the equipment, a second device acting as a main controller capable of communicating with the first device, and a server acting as a central monitoring device capable of communicating with the second device. In such a configuration, values based on signals measured by the equipment are transmitted to the server via the first device and the second device.
[0005] However, when an abnormality occurs on the first device side, the value sent to the second device may temporarily become an unintended invalid value, which may cause the value (meter reading value) ultimately received by the server to become invalidly large.
[0006] The present disclosure has been made to solve the above-mentioned problems, and its purpose is to provide a building management system and a control method thereof that can prevent, as much as possible, the value sent from the second device to the server from becoming abnormally large even if there is an abnormality related to the first device. [Means for solving the problem]
[0007] A building management system according to the present disclosure includes a first device, a second device, and a server. The first device calculates a first value based on a signal periodically measured in building facilities. The second device is capable of communicating with the first device, periodically receives the calculated first value from the first device, and calculates a second value based on the first value. The server is capable of communicating with the second device, and receives the calculated second value from the second device. The second device performs a transmission process to transmit the calculated second value to the server. If the second device determines that the first value is abnormal, it does not perform the transmission process until a first time has elapsed since the abnormality was determined.
[0008] A control method according to the present disclosure is a control method for a building management system including a first device, a second device capable of communicating with the first device, and a server capable of communicating with the second device. The control method includes the steps of: the first device calculating a first value based on a signal periodically measured in building facilities; receiving the calculated first value from the first device and the second device calculating a second value based on the first value; the second device performing a transmission process to transmit the calculated second value to the server; and, if the second device determines that the first value is abnormal, the second device stopping the transmission process until a first time has elapsed since the second device determined that the abnormality occurred. [Effects of the Invention]
[0009] According to the present disclosure, a building management system and control method are provided that can prevent as much as possible the value sent from the second device to the server from becoming improperly large even if an abnormality occurs in the first device. [Brief explanation of the drawings]
[0010] [Figure 1] 1 is a diagram illustrating an example of the overall configuration of a building management system according to an embodiment of the present invention. [Figure 2] FIG. 1 is a diagram showing the flow of signals and data in a building management system. [Figure 3] FIG. 2 is a diagram for explaining a local counter and a main counter. [Figure 4] 10 is a flowchart of a main process executed by a main controller. [Figure 5] 10 is a flowchart of an abnormality determination process. [Figure 6] 10 is a flowchart of a main counter update and transmission process. [Figure 7] 10 is a flowchart of a judgment value update process. DETAILED DESCRIPTION OF THE INVENTION
[0011] Hereinafter, embodiments will be described with reference to the drawings. In the following description, the same components are denoted by the same reference numerals. The names and functions of these components are also the same. Therefore, detailed descriptions thereof will not be repeated.
[0012] [Building Management System 1] First, a description will be given of a building management system 1 according to this embodiment. Fig. 1 is a diagram showing an example of the overall configuration of a building management system 1 according to this embodiment.
[0013] As shown in FIG. 1, the building management system 1 includes a server 10, a main controller 100, local controllers 200, 300, and 400, and measuring instruments 251-253, 351-353, and 451-453.
[0014] In the building management system 1, data based on the measurement values of each measuring device is ultimately collected by the server 10, and the collected data (for example, the amount of power) can be monitored. Each device in the building management system 1 is installed in a building, but the server 10 may be installed in a building different from the building.
[0015] The server 10 is configured to be able to communicate with the main controller 100. The main controller 100 is configured to be able to communicate with each of the local controllers 200, 300, and 400.
[0016] The local controller 200 is configured to be able to communicate with each of the measuring instruments 251 to 253. The local controller 300 is configured to be able to communicate with each of the measuring instruments 351 to 353. The local controller 400 is configured to be able to communicate with each of the measuring instruments 451 to 453.
[0017] In this embodiment, the main controller 100 is a PLC (programmable logic controller). The main controller 100 includes a CPU (Central Processing Unit) 111, a ROM (Read Only Memory) 112, a RAM (Random Access Memory) 113, and a communication interface 114. These are connected to each other via a bus so that they can communicate with each other.
[0018] The CPU 111 loads a program stored in the ROM 112 into the RAM 113 and executes it to realize various functions of the main controller 100. The ROM 112 stores a program in which the processing procedures of the main controller 100 are written.
[0019] The RAM 113 serves as a work area when the CPU 111 executes a program, and temporarily stores the program, data used for executing the program, etc. The main controller 100 may also include a non-volatile storage device. The storage device may be, for example, a hard disk drive (HDD) or a solid state drive (SSD).
[0020] The main controller 100 communicates with the server 10 and the local controllers 200 , 300 , and 400 via the communication interface 114 .
[0021] In this embodiment, the local controllers 200, 300, and 400 are PLCs. The local controller 200 includes a CPU 211, a ROM 212, a RAM 213, a communication interface 214, and an I / O interface 215. These are connected to each other via a bus so that they can communicate with each other.
[0022] The CPU 211 loads a program stored in the ROM 212 into the RAM 213 and executes it to realize various functions of the local controller 200. The ROM 212 stores a program in which the processing procedures of the local controller 200 are written.
[0023] The RAM 213 serves as a work area when the CPU 211 executes a program, and temporarily stores the program, data used when the program is executed, etc. The local controller 200 may also include a non-volatile storage device. The storage device may be, for example, an HDD or SSD.
[0024] The local controller 200 communicates with the main controller 100 via a communication interface 214. The local controller 200 receives, via an I / O interface 215, signals output by the measuring instruments 251 to 253.
[0025] Although not shown, the local controllers 300 and 400 also have the same configuration as the local controller 200, and include a CPU, a ROM, a RAM, a communication interface, and an I / O interface.
[0026] [Signal and data flow in Building Management System 1] 2 is a diagram showing the flow of signals and data in the building management system 1. In this example, a flow will be described in which a local counter value is calculated in the local controller 200 based on a signal measured by the measuring device 251, and a main counter value calculated in the main controller 100 is sent to the server 10.
[0027] The local controller 200 calculates a value of a local counter (local counter value) based on a signal periodically measured in the building facility. A specific explanation will be given below. A value measured by the measuring device 251 is transmitted to the local controller 200 as a pulse signal. For example, the measuring device 251 is a power meter. The measuring device 251 periodically outputs a pulse signal. Then, by counting the pulse signals transmitted from the measuring device 251, the amount of power measured by the measuring device 251 can be identified.
[0028] Measuring devices 251 to 253, 351 to 353, 451 to 453 are wattmeters or devices connected to wattmeters that output signals that can identify the amount of electricity used, or devices that output signals that can identify the amount of gas or water used.
[0029] The pulse signal input from the measuring device 251 is input to the local controller 200 via the I / O interface 215 .
[0030] The local controller 200 calculates a local counter value by counting up the pulse signal from the measuring device 251. The local controller 200 stores the local counter value in the RAM 213.
[0031] The local counter value is incremented by one each time a pulse signal is received from the measuring device 251. The local counter can hold values from 0 to 32767. If a pulse signal is received when the local counter value is 32767, the local counter is reset to 0.
[0032] The main controller 100 periodically receives the calculated local counter value from the local controller 200 and calculates the value of the main counter (main counter value) based on the local counter value. Specifically, the main controller 100 calculates the current main counter value by subtracting the previously received local counter value from the currently received local counter value and adding the result to the previously calculated main counter value.
[0033] The main controller 100 stores the main counter value in the RAM 113. While the local counter can only hold values up to 32767 (0x7FFF, 2-byte data), the main counter can hold larger values (for example, 0x7FFFFFFF, 4-byte data).
[0034] Both the local counter value and the main counter value are values for specifying the amount of power, but in this example, at time T1 (also simply referred to as "T1"), the local counter value is 40. On the other hand, at T1, the main counter value is 1040. As mentioned above, the local counter is reset to 0 after reaching 32767, so the local counter value and the main counter value do not necessarily match.
[0035] Furthermore, even if the local counter value and the main counter value match, for example, if the local counter value is erased and becomes 0 due to the influence of noise, the two will no longer match.
[0036] The local counter value and the main counter value are values that increase over time. However, as mentioned above, once the local counter value reaches its maximum value (32767), it will then decrease to 0.
[0037] Furthermore, for example, an abnormality in the internal processing of the local controller (for example, a malfunction in the operating software) may cause the local counter value to become invalid (a value that is too large, a value smaller than the previous value, or 0). Furthermore, the influence of noise may cause the local counter value held by the main controller 100 or the local counter value received by the main controller 100 to become invalid.
[0038] The main controller 100 performs a transmission process. The transmission process is a process for transmitting the calculated main counter value to the server 10. In this embodiment, when the main counter value is calculated, the main controller 100 transmits the calculated main counter value to the server 10 (S36 in FIG. 6 is the transmission process). The server 10 receives the calculated main counter value (for example, 1040 at T1) from the main controller 100.
[0039] Next, at T2, it is assumed that the local counter value becomes 70. That is, between T1 and T2, the local controller 200 receives the pulse signal from the measuring device 251 30 times (=70-40).
[0040] Assume that at timing T2, the local counter value is transmitted to the main controller 100. The main controller 100 receives the local counter value "70" and the associated timestamp "T2".
[0041] The main controller 100 calculates the current main counter value (1070 = 1040 + 30) by subtracting the previously received local counter value (40) from the currently received local counter value (70) (30 = 70 - 40) and adding the result to the previously calculated main counter value (1040).
[0042] Next, at T3, the local counter value becomes 80 and is transmitted to the main controller 100. The main controller 100 adds the difference between the local counter values (10=80-70) to calculate the current main counter value (1080=1070+10).
[0043] After that, at Tn, the local counter value becomes 32767 and the main counter value becomes 33767.
[0044] In this example, it is assumed that all of the received local counter values are normal at times T1 to Tn when the main controller 100 receives the local counter values. In this case, the main controller 100 transmits the main counter value together with a timestamp to the server 10 at each of times T1 to Tn.
[0045] The server 10 stores the timestamp and main counter value received from the main controller 100 in a storage device (not shown) of the server 10. Then, the server 10 calculates the amount of power consumption based on the stored main counter value (power consumption = main counter value × power consumption per pulse), and can display a graph plotting the amount of power consumption on the display device 20. The display device 20 may be a display device such as a liquid crystal display provided in the server 10, or may be a display device provided in a terminal capable of communicating with the server.
[0046] In this embodiment, if the main controller 100 determines that the local counter value is abnormal, it will not perform transmission processing until time Ta has elapsed since the abnormality was determined. The conditions for determining that the local counter value is abnormal are as follows:
[0047] If the local counter value received this time is smaller than the local counter value received last time, the main controller 100 determines that the local counter value received this time is abnormal. This is because the local counter value increases over time. In this case, the main controller 100 sets error code E1.
[0048] If the currently received local counter value is 0, the main controller 100 determines that the currently received local counter value is abnormal. This is because the local counter value increases over time. In this case, the main controller 100 sets error code E2.
[0049] The main controller 100 determines that the currently received local counter value is abnormal if the difference obtained by subtracting the previously received local counter value from the currently received local counter value is greater than a predetermined judgment value K (200 in this embodiment). This is because there is a possibility that an incorrectly large value may be mixed in due to noise or other reasons as described above. In this case, the main controller 100 sets error code E3.
[0050] Returning to the explanation of FIG. 2, let us assume that the local counter value at Tn is 32767 (maximum value) and then a pulse signal is input once. In this case, the local counter value is reset to 0. Furthermore, when a pulse signal is input once at Tn+1, the local counter value becomes 1. Then, let us assume that the local counter value (1) is transmitted to the main controller 100 at Tn+1.
[0051] Because the local counter value (1) received this time is smaller than the local counter value (32767) received last time, the main controller 100 determines that the local counter value received this time is abnormal and sets error code E1.
[0052] If the local counter value is determined to be abnormal, that is, if any of the error codes E1 to E3 is set, the main controller 100 will not perform transmission processing thereafter until the time Ta has elapsed. Therefore, at Tn+1, transmission (transmission processing) of the main counter value to the server 10 is not performed.
[0053] In this embodiment, if the transmission process is not performed, the main counter value update process (the process of adding a difference value to the main counter value) is not performed either. Note that even if the transmission process is not performed, the main counter value update process may be performed. In this case, however, the updated main counter value is not transmitted to the server 10.
[0054] The transmission process (the process for transmitting the calculated main counter value to the server 10) is not limited to the process of transmitting the calculated main counter value to the server 10, and may be the following process. For example, the transmission process may be a process of writing the updated main counter value to the transmission buffer (updating the transmission buffer) every time the main counter value is updated. The main counter value written to the transmission buffer is then configured to be periodically transmitted to the server 10. In this case, the transmission buffer is configured not to be updated even if the main counter value is updated until the time Ta has elapsed since it was determined that the local counter value was abnormal.
[0055] Next, assume that the local counter value becomes 2 at Tn+2 and this value is transmitted to the main controller 100. Also assume that time Ta has passed at this point. In this case, the difference (1) between the current local counter value (2) and the previous local counter value (1) is added to the current main counter value (33776) to update the main counter value (33767+1=33768). This value is then transmitted to the server 10.
[0056] With the above configuration, even if the local counter exceeds the maximum value and is reset, the main counter is not affected and can increase its value.
[0057] If Ta has not passed at Tn+2, the main counter value is not updated, and no transmission process to the server 10 is performed. For example, if Ta has passed at the next Tn+3 and the main controller 100 receives 3 as the local counter value, it calculates the difference between Tn+3 and Tn+2 (3-2=1), updates the main counter value accordingly (33767+1=33768), and transmits it to the server 10. The difference (3-1=2) between Tn+3 (current value: 3) and Tn+1 (value when abnormality is no longer detected: 1) may also be used as the difference value.
[0058] Another example will be described with reference to Fig. 3. Fig. 3 is a diagram for explaining the local counter and the main counter.
[0059] As shown in the figure, the local counter value is 40 at T1, 70 at T2, and 100 at T3, and the main counter value is 1040 at T1, 1070 at T2, and 1100 at T3. Then, suppose that a local counter value of 2000 is transmitted to the main controller 100 at T4.
[0060] Since the difference (1900) obtained by subtracting the previously received local counter value (100) from the currently received local counter value (2000) is greater than the judgment value K (200), the currently received local counter value is determined to be abnormal and error code E3 is set.
[0061] The main controller 100 determines that the local counter value received at T4 is abnormal at E3, and therefore does not transmit the main counter value to the server 10, nor does it update the main counter value.
[0062] It is assumed that the local counter value "2000" was an invalid value that was received by the main controller 100 due to noise. Thereafter, it is assumed that a normal value of 100 was transmitted at T5 and T6. At T5 and T6, Ta has not elapsed since the abnormal value was detected, so the transmission process and update process of the main counter value are not performed.
[0063] Next, at time T7 after Ta has elapsed, the local counter value is sent as 110. At this time, the main controller 100 updates the main counter value (1100+10=1110) based on the difference value (110-100=10) and sends the main counter value to the server 10.
[0064] Thereafter, the local counter value becomes 120 at T8 and 130 at T9, and the main counter value becomes 1120 at T8 and 1130 at T9.
[0065] After that, the local counter value continues to count up normally, but for some reason the main controller 100 is unable to receive it. Then, at T10, the local counter value increases to 330, and the main controller 100 receives this value.
[0066] In this case, although the local counter value itself is normal, the difference value of the local counter is 300 (330-30), which is greater than the judgment value K (200), and therefore an abnormality in E3 is detected.
[0067] However, even if the main controller 100 determines that the local counter value is abnormal, if there is no change in the local counter value received from the local controller 200 during the subsequent time Tb, the main controller 100 determines that the local counter value is normal. Then, the main controller 100 performs a transmission process of the main counter value calculated based on the local counter value.
[0068] In this example, the same value (330) is also transmitted at T11, T12, and T13 to the main controller 100. At T13, it is assumed that Tb has passed while the same value remains, and Ta has also passed.
[0069] In this case, the main controller 100 determines that the local counter value 330 received at T10 is normal, and adds the difference value 300 (330-30) to the main counter to make it 1430 (1130+300).The main controller 100 then transmits this value to the server 10.
[0070] Next, assume that at T14, the local counter value becomes 340 and the main counter value becomes 1440. After that, assume that an abnormality (local controller abnormality) occurs in the local controller 200. The local controller abnormality includes a communication abnormality that occurs between the local controller 200 and the main controller 100. The communication abnormality can be detected on the main controller 100 side.
[0071] Furthermore, the local controller abnormality includes some kind of abnormality in the hardware or software (for example, a part of the software processing has stopped) that has occurred in the local controller 200. When the local controller 200 detects such an abnormality, it notifies the main controller 100 of that fact.
[0072] The main controller 100 stops the transmission process when an abnormality occurs in the local controller 200. The main controller 100 resumes the transmission process after a time Tc has elapsed since the local controller 200 recovered from the abnormality.
[0073] In this example, it is assumed that a local controller abnormality occurs at T15. At this time, the main controller 100 sets error code E4. While the local controller abnormality occurs, the main controller 100 does not update the main counter value. In this case, the main controller 100 also does not transmit the main counter value to the server 10.
[0074] Then, assume that the local controller abnormality is resolved at T17. In this case, at T20, which is the time Tc after T17 when the local controller recovered from the abnormality, the main counter value is updated and transmission processing is resumed.
[0075] In this example, suppose that at T15 some processing abnormality occurs in the local controller 200, causing the local counter value to be temporarily reset. As a result of this reset, the local counter value, which was 340 at T14, becomes 0 at T15. Then, when the abnormality is recovered at T17, the local counter value returns to 340, the value before the abnormality occurred. Suppose that the local counter value is 340 at T18, 340 at T19, and 350 at T20.
[0076] At T20, when time Tc has elapsed since T17, when the system recovered from the abnormality, the local counter value is 350, which is an increase of 10 from the value of 340 that was stored as the local counter value. Therefore, the main controller 100 calculates the main counter value "1450" by adding 10, which is the difference value, to 1440, and transmits this value to the server 10. In this embodiment, the reason why the transmission process is not resumed until Tc has elapsed since the system recovered from the abnormality is because there is a possibility of a time lag before the local counter value is updated normally. For example, there may be a case where the system has recovered from the abnormality, but the local counter value cannot be updated during that time due to the execution of initialization processing at the time of recovery, etc.
[0077] Furthermore, when the main controller 100 determines that the local counter value is abnormal, it records the date and time when the abnormality occurred and the conditions under which the abnormality occurred.
[0078] In this example, an error log is recorded at T4 indicating that an abnormality in the local counter value due to E3 has occurred. An error log is recorded at T10 indicating that an abnormality in the local counter value due to E3 has occurred. An error log is recorded at T15 indicating that an abnormality in the local counter value due to E4 has occurred. Note that other information, such as the abnormal value of the local counter, may also be stored. By recording error logs in this manner, it is possible to analyze the cause of a malfunction caused by an abnormal local counter value and to take prompt and appropriate action against the malfunction.
[0079] [flowchart] The following describes, with reference to a flowchart, the main processing executed by the CPU 111 of the main controller 100. The main processing is a series of processes from when the main controller 100 acquires the local counter value until it transmits the main counter value to the server 10, and a process of updating the judgment value K.
[0080] 4 is a flowchart of the main processing executed by the main controller 100. Hereinafter, "step" may also be simply referred to as "S." For example, the main processing is started every time the main controller 100 obtains a local counter value from the local controller 200.
[0081] As shown in FIG. 4, when the main processing starts, the CPU 111 acquires the current value of the local counter (the latest local counter value received from the local controller 200) in S1, and the processing proceeds to S2.
[0082] In S2, the CPU 111 sets the difference value=the current value of the local counter−the previous value of the local counter (the local counter value previously received from the local controller 200), and proceeds to S3.
[0083] In S3, the CPU 111 executes an abnormality determination process (see FIG. 5), and proceeds to S4. The abnormality determination process is a process of determining whether there is an abnormality in the local controller or the local counter value, setting an error code, and generating an error log.
[0084] In S4, the CPU 111 executes a main counter update / transmission process (see FIG. 6), and proceeds to S5. In the main counter update / transmission process, the CPU 111 updates the main counter value and transmits the main counter value to the server 10.
[0085] In S5, the CPU 111 determines whether it is time to update the judgment value. If it is determined in S5 that it is time to update the judgment value (YES in S5), the CPU 111 proceeds to S6. On the other hand, if it is not determined in S5 that it is time to update the judgment value (NO in S5), the CPU 111 ends the main processing.
[0086] The judgment value update timing is the timing at which the judgment value is updated. For example, the judgment value may be updated once every few days.
[0087] In S6, the CPU 111 executes a judgment value update process (see FIG. 6) and ends the main process. The judgment value update process is a process for determining and automatically setting a judgment value based on a group of difference values for the most recent 10 days.
[0088] Fig. 5 is a flowchart of the abnormality determination process. As shown in Fig. 5, when the abnormality determination process starts, CPU 111 determines in S21 whether or not an abnormality is occurring in the local controller. If CPU 111 determines in S21 that an abnormality is occurring in the local controller (YES in S21), the process proceeds to S25. On the other hand, if CPU 111 does not determine in S21 that an abnormality is occurring in the local controller (NO in S21), the process proceeds to S22.
[0089] In S22, CPU 111 determines whether the current value (current value of the local counter) is greater than the previous value (previous value of the local counter). If CPU 111 determines in S22 that the current value is greater than the previous value (YES in S22), CPU 111 proceeds to S6. On the other hand, if CPU 111 does not determine in S22 that the current value is greater than the previous value (NO in S22), CPU 111 proceeds to S23.
[0090] In S23, CPU 111 determines whether or not the current value is 0. If CPU 111 determines in S23 that the current value is 0 (YES in S23), it proceeds to S7. On the other hand, if CPU 111 does not determine in S23 that the current value is 0 (NO in S23), it proceeds to S24.
[0091] In S24, CPU 111 determines whether or not the difference value is greater than the judgment value K. If CPU 111 determines in S24 that the difference value is greater than the judgment value K (YES in S24), CPU 111 proceeds to S8. On the other hand, if CPU 111 does not determine in S24 that the difference value is greater than the judgment value K (NO in S24), CPU 111 proceeds to S29.
[0092] In S25, the CPU 111 sets an error code E4, and the process proceeds to S29. For example, in the example of Fig. 3, E4 is set at T15.
[0093] In S26, the CPU 111 sets an error code E1, and the process proceeds to S29. For example, in the example of Fig. 2, E1 is set at Tn+1.
[0094] In S27, the CPU 111 sets an error code E2 and proceeds to S29. For example, in the example of Fig. 3, the local counter value is 2000 at T4, but if this becomes 0 due to noise, E2 is set.
[0095] In S28, the CPU 111 sets an error code E3, and the process proceeds to S29. For example, in the example of Fig. 3, E3 is set at T4 and T10.
[0096] In S29, the CPU 111 generates an error log and ends the abnormality determination process. For example, in the example of Fig. 3, an error log is generated indicating that E3 occurred at T4, E3 occurred at T10, and E3 occurred at T15.
[0097] 6 is a flowchart of the main counter update and transmission process. As shown in FIG. 6, when the main counter update and transmission process starts, the CPU 111 determines in S31 whether or not a specified time Ta has elapsed since the occurrence of any of E1 to E3. If the CPU 111 determines in S31 that the specified time Ta has not elapsed since the occurrence of any of E1 to E3 (YES in S31), the main counter update and transmission process ends. On the other hand, if the CPU 111 does not determine in S31 that the specified time Ta has not elapsed since the occurrence of any of E1 to E3 (NO in S31), the process proceeds to S32.
[0098] In S32, the CPU 111 determines whether or not the specified period Tc has elapsed since E4 was in progress or E4 was terminated. If the CPU 111 determines in S32 that the specified period Tc has not elapsed since E4 was in progress or E4 was terminated (YES in S32), the CPU 111 ends the main counter update and transmission process. On the other hand, if the CPU 111 does not determine in S32 that the specified period Tc has not elapsed since E4 was in progress or E4 was terminated (NO in S32), the process proceeds to S33.
[0099] In S33, the CPU 111 determines whether or not there has been a change in the local counter value from the occurrence of E3 until the lapse of the specified time Tb. If the CPU 111 determines in S33 that there has been no change in the local counter value from the occurrence of E3 until the lapse of the specified time Tb (YES in S33), the process proceeds to S35. On the other hand, if the CPU 111 does not determine in S33 that there has been no change in the local counter value from the occurrence of E3 until the lapse of the specified time Tb (NO in S33), the process proceeds to S34.
[0100] In S34, the CPU 111 adds the difference value (current value of the local counter - previous value of the local counter) to the current main counter value to update the new main counter value, and proceeds to S36. For example, in the example of Fig. 3, at T2, the difference value is 30 (=70-40), and the main counter value has been updated to 1070 (=1040+30).
[0101] In S35, the CPU 111 updates the current main counter value by adding the difference value when E3 was detected to the main counter value, and proceeds to S36. For example, in the example of Fig. 3, at T13, the difference value at T10 when E3 occurred is 300 (=330-130), and the main counter value has been updated to 1430 (=1130+300).
[0102] In S36, the CPU 111 transmits the main counter value to the server 10 and ends the main counter update and transmission process. In this embodiment, the process of S36 is referred to as "transmission process."
[0103] With the above configuration, the CPU 111 does not perform transmission processing from the occurrence of any of E1 to E3 (detection of an abnormality in the local counter value) until Ta has elapsed. The CPU 111 does not perform transmission processing during E4 (local controller abnormality) or from the resolution of E4 until Tc has elapsed. Furthermore, if E3 has occurred but the local counter value has not changed until Tc has elapsed, the CPU 111 treats the local counter value as a normal value.
[0104] 7 is a flowchart of the judgment value update process. In this embodiment, the main controller 100 determines the judgment value based on the maximum value of the difference value in the most recent 10 days.
[0105] 7, when the judgment value update process starts, the CPU 111 acquires a group of difference values for the most recent 10 days for which no error code is set in S41, and proceeds to the process in S42. That is, the CPU 111 acquires all difference values for the most recent 10 days excluding the local counter values E1 to E3 that are judged to be abnormal.
[0106] In S42, the CPU 111 obtains the maximum value from the group of difference values, and proceeds to S43. In S43, the CPU 111 sets the judgment value K=maximum value×2, and ends the judgment value update process.
[0107] It should be noted that the acquisition is not limited to acquiring a group of difference values for the most recent 10 days, but may also be acquiring a group of difference values for another period (for example, 5 days).The judgment value K is not limited to multiplying the maximum value by 2, but may also be multiplied by another numerical value (for example, 1.5 or 3).
[0108] The tendency for the local counter value to increase per unit time varies depending on the building and the equipment. Therefore, when trying to set an appropriate judgment value, workers must observe the progress of the local counter value for each building and equipment. By automatically determining the judgment value as described above, the complicated task of setting the judgment value can be omitted.
[0109] As described above, the building management system 1 in this embodiment includes the local controller 200, the main controller 100, and the server 10. The local controller 200 calculates a local counter value based on a signal periodically measured in building facilities. The main controller 100 is capable of communicating with the local controller 200, periodically receives the calculated local counter value from the local controller 200, and calculates a main counter value based on the local counter value. The server 10 is capable of communicating with the main controller 100, and receives the calculated main counter value from the main controller 100. The main controller 100 performs a transmission process to transmit the calculated main counter value to the server 10. If the main controller 100 determines that the local counter value is abnormal, it does not perform the transmission process until a time Ta has elapsed since the main controller 100 determined that the abnormality occurred. This prevents the main counter value (e.g., meter reading values for electricity, gas, water, etc. used by a tenant) transmitted from the main controller 100 to the server 10 from becoming unduly large even if an abnormality occurs in the local controller 200.
[0110] [Main components and effects] The main configurations and effects of the above-described embodiments will be described below.
[0111] (1) The building management system 1 includes a local controller 200, a main controller 100, and a server 10. The local controller 200 calculates a local counter value based on a signal periodically measured in building facilities. The main controller 100 is capable of communicating with the local controller 200, periodically receives the calculated local counter value from the local controller 200, and calculates a main counter value based on the local counter value. The server 10 is capable of communicating with the main controller 100, and receives the calculated main counter value from the main controller 100. The main controller 100 performs a transmission process to transmit the calculated main counter value to the server 10. If the main controller 100 determines that the local counter value is abnormal, it does not perform the transmission process until a time Ta has elapsed since the main controller 100 determined that the abnormality occurred. This makes it possible to minimize the possibility of the main counter value being transmitted from the main controller 100 to the server 10 becoming abnormally large, even if an abnormality exists in the local controller 200.
[0112] (2) The local controller 200 calculates the local counter value by counting up pulse signals measured periodically in the building facilities. The main controller 100 calculates the current main counter value by subtracting the previously received local counter value from the currently received local counter value and adding the result to the previously calculated main counter value. This makes it possible to prevent the main counter value sent from the main controller 100 to the server 10 from becoming incorrectly large as much as possible, even if an abnormality occurs in the local controller 200.
[0113] (3) If an abnormality occurs in the local controller 200, the main controller 100 stops the transmission process. The main controller 100 resumes the transmission process after a time Tc has elapsed since the local controller 200 recovered from the abnormality. This allows the main controller 100 to resume the transmission process after waiting for the local controller 200 to operate normally, thereby further reducing the possibility that the main counter value will become inappropriately large.
[0114] (4) Even if the main controller 100 determines that the local counter value is abnormal, if there is no change in the local counter value received from the local controller 200 over a subsequent time period Tb, the main controller 100 determines that the local counter value is normal and performs transmission processing of the main counter value calculated based on the local counter value. For example, if the local counter is reset from 32767 to 0 or if transmission processing from the local controller 200 is temporarily unable to be performed, the difference value may exceed the determination value. In these cases, an abnormality in the local counter value may be detected even if the local counter value is normal. The above configuration enables accurate determination of an abnormality in the local counter value.
[0115] (5) If the local counter value received this time is smaller than the local counter value received last time, the main controller 100 determines that the local counter value received this time is abnormal. This makes it possible to detect an abnormality when the local counter is reset or when the local counter value becomes small due to a program malfunction, noise, or the like.
[0116] (6) If the currently received local counter value is 0, the main controller 100 determines that the currently received local counter value is abnormal. This makes it possible to detect as an abnormality the local counter value becoming 0 when the local counter is reset, or due to a program malfunction, noise, or the like.
[0117] (7) If the difference value obtained by subtracting the previously received local counter value from the currently received local counter value is greater than a predetermined judgment value, the main controller 100 determines that the currently received local counter value is abnormal. This makes it possible to detect as an abnormality a case where the local counter value becomes abnormally large due to a program malfunction, noise, or the like.
[0118] (8) The main controller 100 determines the judgment value based on the maximum difference value over the last 10 days. The rate at which the judgment value increases varies depending on the property and the measuring device. By automatically determining the judgment value, the complicated task of setting the judgment value can be omitted.
[0119] (9) When the main controller 100 determines that the local counter value is abnormal, it records the date and time when the abnormality occurred and the conditions under which the abnormality occurred. This makes it possible to analyze the cause of the abnormality in the local counter value and to take prompt and appropriate measures against the abnormality.
[0120] (10) A control method is a control method for a building management system 1 including a local controller 200, a main controller 100 capable of communicating with the local controller 200, and a server 10 capable of communicating with the main controller 100. The control method includes the steps of: the local controller 200 calculating a local counter value based on a signal periodically measured in building facilities; receiving the calculated local counter value from the local controller 200 and the main controller 100 calculating a main counter value based on the local counter value; the main controller 100 performing a transmission process to transmit the calculated main counter value to the server 10; and, if the main controller 100 determines that the local counter value is abnormal, the main controller 100 stopping the transmission process until a time Ta has elapsed since determining the abnormality. This makes it possible to minimize the possibility of the main counter value being transmitted from the main controller 100 to the server 10 becoming abnormally large even if there is an abnormality in the local controller 200.
[0121] The embodiments disclosed herein are merely examples and are not limited to the above. The scope of the present invention is defined by the claims, and it is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]
[0122] 1 Building management system, 10 Server, 20 Display unit, 100 Main controller, 111, 211 CPU, 112, 212 ROM, 113, 213 RAM, 114, 214 Communication interface, 200, 300, 400 Local controller, 215 I / O interface, 251-253, 351-353, 451-453 Measuring equipment.
Claims
1. A first device that calculates a first value based on a signal periodically measured in a building facility; a second device capable of communicating with the first device, periodically receiving the calculated first value from the first device, and calculating a second value based on the first value; a server capable of communicating with the second device and receiving the calculated second value from the second device; the second device performs a transmission process for transmitting the calculated second value to the server during a period other than a suspension period that is set due to the occurrence of an abnormality; The occurrence of the abnormality includes an occurrence of a first device abnormality, including an abnormality caused by a communication abnormality or a software malfunction occurring in the first device, and an occurrence of a numerical abnormality in the first value occurring independently of the first device abnormality, In a building management system, when the second device determines that the numerical abnormality occurs and the first value is abnormal, it sets the period from the time when the abnormality is determined to the time when a first time has elapsed as the suspension period.
2. The first device calculates the first value by counting up a pulse signal periodically measured in the building equipment, 2. The building management system according to claim 1, wherein the second device calculates the current second value by subtracting the previously received first value from the currently received first value and adding the result to the previously calculated second value.
3. The building management system of claim 1 or claim 2, wherein when the second device determines that the first device abnormality has occurred, the second device further sets as the suspension period a period from the time when it determines that the first device abnormality has occurred to the time when a second time has elapsed since the first device abnormality was recovered from.
4. A building management system as described in any one of claims 1 to 3, wherein the second device determines that the currently received first value is abnormal if the currently received first value is smaller than the previously received first value.
5. The building management system according to any one of claims 1 to 3, wherein the second device determines that the currently received first value is abnormal if the currently received first value is 0.
6. A building management system as described in any one of claims 1 to 3, wherein the second device determines that the currently received first value is abnormal if a difference value obtained by subtracting the previously received first value from the currently received first value is greater than a predetermined judgment value.
7. The building management system according to claim 6 , wherein the second device determines the judgment value based on a maximum value of the difference value in a most recent predetermined period.
8. The building management system according to any one of claims 1 to 7, wherein when the second device determines that the first value is abnormal, the second device records the date and time when the abnormality occurred and the conditions under which the abnormality occurred.
9. A control method for a building management system including a first device, a second device capable of communicating with the first device, and a server capable of communicating with the second device, A step of calculating a first value by the first device based on a signal periodically measured in a building facility; receiving the calculated first value from the first device and calculating by the second device a second value based on the first value; a step of performing a transmission process for transmitting the calculated second value to the server by the second device during a period other than a suspension period that is set due to the occurrence of an abnormality; The occurrence of the abnormality includes an occurrence of a first device abnormality, including an abnormality caused by a communication abnormality or a software malfunction occurring in the first device, and an occurrence of a numerical abnormality in the first value occurring independently of the first device abnormality, The control method further includes a step in which, when the second device determines that the numerical abnormality has occurred and that the first value is abnormal, the second device sets the period from the time when the abnormality is determined to the time when a first time has elapsed as the pause period.
Citation Information
Patent Citations
Meter inspection system
JP1990071399A
Centralized meter-reading device
JP1996304120A
Measuring pulse counter value abnormality judgment device for building management system
JP2003256532A
Data collection method, and data collection device
JP2007129425A
Management device of meter reading data
JP2015158788A