A building automation system

By using a microservice architecture to collect and visualize point data for the building automation system, the problems of poor scalability and high coupling under the monolithic program architecture are solved, and the building automation system can be flexibly expanded and maintained at low cost.

CN116743563BActive Publication Date: 2026-03-13GREE ELECTRIC APPLIANCE INC OF ZHUHAI
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-15
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

Existing building automation systems are based on a monolithic program architecture, resulting in poor scalability, high internal coupling, and difficulty in flexible expansion and maintenance.

Method used

A microservice architecture is adopted, including a guardian microservice, a message middleware, a shared cache, a configuration microservice, a data open microservice, and multiple integration protocol microservices. Through the independent operation and collaborative processing of each microservice, the point data collection and visualization of the building automation system are realized.

Benefits of technology

This reduces the internal coupling of the building automation system, making the system easier to expand and maintain, reducing development and testing costs, and improving the system's flexibility and scalability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116743563B_ABST
    Figure CN116743563B_ABST
Patent Text Reader

Abstract

This application provides a building automation system, including: a host computer, underlying devices, and a main controller. The main controller includes: a guardian microservice, a message middleware, a shared cache, a configuration microservice, a data open microservice, and multiple integration protocol microservices. The configuration microservice receives configuration information sent by the host computer. The guardian microservice determines at least one location table based on the configuration information and initializes the message middleware, shared cache, data open microservice, and multiple integration protocol microservices based on the at least one location table. The multiple integration protocol microservices collect location data for each location in the corresponding location table from the underlying devices, store the location data in the shared cache, and send corresponding location change information to the message middleware. The message middleware sends the location change information to the data open microservice. The data open microservice retrieves the corresponding location data from the shared cache based on the location change information and sends the location data to the host computer.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of building automation system technology, and more particularly to a building automation system. Background Technology

[0002] A Building Automation System (BAS) is a comprehensive system for the centralized management and monitoring of various electromechanical equipment within a building. The building control system mainly includes air conditioning units, supply and exhaust fans, sump pits and drainage pumps, elevators, power distribution systems, and lighting. Throughout the entire building, the entire building automation system, along with its built-in optimized control programs and preset time programs, centrally manages and monitors all electromechanical equipment.

[0003] Integrated Building Management Systems (IBMS) refers to a building management system that goes a step further than building automation systems and integrates with communication and information network systems to achieve a higher level of building integration.

[0004] Currently, intelligent building systems are generally developed based on a monolithic program architecture. However, the monolithic program architecture is highly coupled internally and has poor scalability. Summary of the Invention

[0005] The purpose of this application is to provide a building automation system to solve the above-mentioned problems. The specific technical solution is as follows:

[0006] In the first aspect, a building automation system is provided, the system comprising: a host computer, underlying devices and a main controller, wherein the main controller comprises: a guardian microservice, a message middleware, a shared cache, a configuration microservice, a data open microservice and multiple integration protocol microservices;

[0007] The configuration microservice is used to receive configuration information sent by the host computer;

[0008] The guardian microservice is used to determine at least one location table based on the configuration information, and to initialize the message platform, the shared cache, the data open microservice, and multiple integration protocol microservices based on at least one location table.

[0009] Multiple integrated protocol microservices are used to collect point data for each point in the corresponding point table from the underlying device, store the point data in the shared cache, and send the point change information corresponding to the point data to the message middleware.

[0010] The message middle platform is used to send the location change information to the data open microservice;

[0011] The data open microservice is used to retrieve corresponding point data from the shared cache based on the point change information, and send the point data to the host computer so that the host computer can display the point data.

[0012] In one possible implementation, the guardian microservice is used to start the message middle platform and the shared cache. After starting the message middle platform and the shared cache, the target integration protocol microservice corresponding to each point table is determined from multiple integration protocol microservices, all target integration protocol microservices are started, and after starting the target integration protocol microservices, the data opening microservice is started.

[0013] In one possible implementation, the data open microservice is also used to read the changed value and send the changed value and the location identifier of the change point corresponding to the changed value to the message middleware;

[0014] The message middleware is also used to send the changed value and the location identifier to the integration protocol microservice corresponding to the changed location;

[0015] The integrated protocol microservice is also used to obtain the point attribute information corresponding to the changed point based on the point identifier, generate corresponding control information based on the changed value and the point attribute information, and send the control information to the underlying device corresponding to the changed point to control the underlying device to modify the point value of the changed point to the changed value.

[0016] In one possible implementation, the integration protocol microservice is further configured to detect the amount of data stored in the corresponding receiving buffer, and send a stop receiving signal to the message middleware when the amount of data exceeds a first preset value, wherein the receiving buffer is used to store point data collected from the underlying device;

[0017] The message middleware is also used to stop sending data to the integration protocol microservice upon receiving the stop receiving signal.

[0018] In one possible implementation, the guardian microservice is further configured to detect the data transmission volume between the multiple integration protocol microservices and the underlying device. If the data transmission volume is greater than a second preset value, the service priority of each started integration protocol microservice is determined, and the integration protocol microservice with a service priority higher than the preset priority is determined as the first integration protocol microservice, and the integration protocol microservice with a service priority lower than or equal to the preset priority is determined as the second integration protocol microservice.

[0019] The first integration protocol microservice is used to collect point data for each point in the corresponding point table from the underlying device;

[0020] The second integration protocol microservice is used to stop collecting point data for each point in the corresponding point table from the underlying device.

[0021] In one possible implementation, the guardian microservice is further configured to obtain the data type of the location data collected by each started integration protocol microservice, determine the real-time requirement level of the corresponding location data based on the data type, and determine the service priority of the corresponding integration protocol microservice based on the real-time requirement level, wherein the higher the real-time requirement level, the higher the corresponding service priority.

[0022] In one possible implementation, the guardian microservice is further configured to obtain the table priority corresponding to each of the point tables from the configuration information, and use the table priority as the service priority of the corresponding integration protocol microservice.

[0023] In one possible implementation, the guardian microservice is further configured to use the preset priority as the table priority corresponding to the point table when the table priority corresponding to any of the point tables is not obtained in the configuration information.

[0024] In one possible implementation, the system further includes a display module.

[0025] The guardian microservice is also used to monitor the status of the guardian microservice, the message platform, the shared cache, the configuration microservice, the data open microservice, and multiple integration protocol microservices, and send the status information corresponding to the status to the display module;

[0026] The display module is used to display corresponding information based on the status information.

[0027] Beneficial effects of the embodiments in this application:

[0028] This application provides a building automation system. In this application, the building automation system is implemented based on a microservice architecture. By running each microservice independently and by cooperating among multiple microservices, the system can collect and visualize data from various points in the building. This reduces the coupling within the building automation system. When adding new functions, only the corresponding microservices need to be added, making the building automation system easy to expand.

[0029] Of course, implementing any product or method of this application does not necessarily require achieving all of the advantages described above at the same time. Attached Figure Description

[0030] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0031] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0032] One or more embodiments are illustrated by way of example with reference numerals in the accompanying drawings. These illustrations do not constitute a limitation on the embodiments. Elements with the same reference numerals in the drawings are denoted as similar elements. Unless otherwise stated, the figures in the drawings are not to be limited by scale.

[0033] Figure 1 A system topology diagram of a building automation system provided in this application embodiment;

[0034] Figure 2 A schematic diagram of a module within a main controller provided in an embodiment of this application;

[0035] Figure 3 This is a schematic diagram illustrating data transmission between various microservices, provided as an embodiment of this application.

[0036] Figure 4 This is a schematic diagram of configuration information used to describe location points, provided in an embodiment of this application.

[0037] Figure 5 This is a schematic diagram of the structure of a display module provided in an embodiment of this application. Detailed Implementation

[0038] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0039] The following disclosure provides numerous different embodiments or examples for implementing various structures of the invention. To simplify the disclosure, specific examples of components and arrangements are described below. These are merely examples and are not intended to limit the scope of the invention. Furthermore, reference numerals and / or letters may be repeated in different examples. Such repetition is for simplification and clarity and does not in itself indicate a relationship between the various embodiments and / or arrangements discussed.

[0040] See Figure 1 This is a system topology diagram of the building automation system shown in the embodiments of this application.

[0041] like Figure 1 As shown, the building automation system comprises a three-layer logical structure: the business layer, the data processing layer, and the equipment integration layer.

[0042] The business layer includes a host computer, which can be a computer, smartphone, etc.

[0043] The data processing layer includes a main controller and several expansion modules. These expansion modules acquire data from the underlying devices and perform basic data processing. The number of expansion modules depends on the type and number of device points that need to be connected. In applications, expansion modules can be I / O expansion, RS485 expansion, 5G expansion, dual-bus expansion, etc. In this embodiment, the expansion modules are considered as underlying devices of the CAN protocol.

[0044] The device integration layer includes multiple underlying devices, i.e., the actual connected devices. The main controller is equipped with two 485 interfaces, one CAN interface, and two Ethernet ports. Among them, the 485 interfaces can connect to Modbus RTU devices, the CAN interfaces are used for communication with expansion modules, and the Ethernet ports can connect to Modbus TCP and other devices.

[0045] Figure 2 The diagram shown is a schematic of the modules within the main controller. Figure 2 As shown, the main controller includes: a guardian microservice, a message middleware, a shared cache, a configuration microservice, a data open microservice, and multiple integration protocol microservices.

[0046] The configuration microservice is used to receive configuration information sent by the host computer;

[0047] The guardian microservice is used to determine at least one location table based on the configuration information, and to initialize the message platform, the shared cache, the data open microservice, and multiple integration protocol microservices based on at least one location table.

[0048] Multiple integrated protocol microservices are used to collect point data for each point in the corresponding point table from the underlying device, store the point data in the shared cache, and send the point change information corresponding to the point data to the message middleware.

[0049] The message middle platform is used to send the location change information to the data open microservice;

[0050] The data open microservice is used to retrieve corresponding point data from the shared cache based on the point change information, and send the point data to the host computer so that the host computer can display the point data.

[0051] Specifically, after the system powers on, the configuration microservice is started first. Users can input the corresponding configuration information through the host computer, which then sends the configuration information to the configuration microservice to configure the system. The configuration information includes information on the underlying devices and their locations that need to be connected to the main controller (e.g., the location includes its protocol, underlying device, extension module, read / write permissions, etc.).

[0052] For example, if you need to connect a Modbus RTU device with address 1 and 3 coil points, you would configure the Modbus RTU protocol, add the device with address 1 under this protocol, and then add 3 points with the corresponding addresses under this device. The process for adding devices with other protocols is the same.

[0053] A point is the smallest unit in a system, referring to a single data collection point on a low-level device. For example, if a device has a temperature sensor and a humidity sensor, then the device has two data collection points (i.e., points), namely the temperature sensor and the humidity sensor.

[0054] The configuration information for the data points includes the data points specified by the user. That is, the data points corresponding to the same protocol device are stored in the same data point table. For example, the data points that need to be collected on the CAN protocol device are stored in the CAN protocol data point table, and the data points that need to be collected on the Modbus protocol device are stored in the Modbus protocol data point table.

[0055] After receiving the configuration information, the configuration microservice sends the configuration information to the daemon microservice or stores the configuration information in a shared cache. The daemon microservice then reads the configuration information from the shared cache and initializes other microservices based on the configuration information.

[0056] Here, each integrated protocol microservice is used to collect point data from each point in the corresponding protocol point table. For example, the CAN protocol microservice is used to collect point data from each point in the CAN protocol point table, and the Modbus protocol microservice is used to collect point data from each point in the Modbus protocol point table.

[0057] Therefore, after obtaining the configuration information, the guardian microservice can determine at least one point table based on the configuration information, and determine the target integration protocol microservice corresponding to each point table among multiple integration protocol microservices. Then, it can start and initialize the message middleware, shared cache, data open microservice and target integration protocol microservice.

[0058] In one embodiment, the guardian microservice is used to start the message middle platform and the shared cache. After starting the message middle platform and the shared cache, the target integration protocol microservice corresponding to each point table is determined from multiple integration protocol microservices, and all target integration protocol microservices are started. After starting the target integration protocol microservices, the data opening microservice is started. This avoids abnormal program exits due to the message middle platform and shared cache not being started when starting the microservices.

[0059] Figure 3 The diagram shown illustrates data transmission between various microservices. Next, we will combine... Figure 3 Explain the data transmission process between the various microservices.

[0060] Before the target integration protocol microservice starts, the corresponding point table (which includes the underlying devices and points) can be recorded in the shared cache. After startup, the point data of each point in the corresponding point table is collected from the corresponding underlying devices. Specifically, the integration protocol microservice obtains the data by polling the corresponding underlying devices and sending data requests, writes the corresponding point data into the shared cache, and sends the corresponding point change information to the message platform, which then sends the point change information to the data opening microservice.

[0061] The shared cache is used to store the location data collected by the integration protocol microservices. It works by creating a hash table-based cache area in the main controller. Each integration protocol microservice stores its configured location information in this area upon startup. During interaction between the integration protocol microservice and the underlying device, if the location value of a certain location changes, the corresponding location value in the shared cache will be updated synchronously.

[0062] Location change information describes changes in the location value of a corresponding location, and may include the location identifier and location value of the corresponding location.

[0063] In the application, when the system is idle (i.e., no underlying device is connected), the integration protocol microservice operates in a low-power mode, and its receive buffer contains no data. When the system connects to an underlying device, data is reported on the communication bus. Only then will the integration protocol microservice corresponding to that underlying device collect and parse the point data of the corresponding location on the underlying device, and simultaneously report the point change information to the message platform. This reduces system power consumption when no underlying device is connected.

[0064] In addition, the configuration information for the data points also includes the data point information for which the user indicates the data to be displayed, i.e., the open data point information. Before the data openness microservice starts, it can record the open data point information in its own cache. After starting, it polls the data points in its own cache, calculates the key value, and after receiving the data point change information sent by the message platform, it determines the data point described by the data point change information. It then retrieves the corresponding data point from the shared cache using the key value of that data point and sends the data point to the host computer. Finally, the data openness microservice sends the received data point to the host computer so that the host computer can display the data point.

[0065] In addition, the guardian microservice is also responsible for program upgrades and monitoring whether started microservices have exited abnormally.

[0066] Correspondingly, the system may also include an upgrade microservice responsible for verifying the upgrade package and performing upgrade file replacement and database data migration.

[0067] The message middle platform is also used to transmit startup and abnormal exit messages sent by the corresponding microservice to itself when a microservice starts or exits abnormally, and then to the guardian microservice, which displays these messages to the user.

[0068] In this way, each program microservice can be compiled and run independently. When adding new microservices in the application, such as integrating protocol-type microservices and expanding business functions, they are also integrated into the controller as independent program microservices. This is both efficient and does not affect the previous functions.

[0069] In this embodiment, a building automation system is implemented based on a microservice architecture. By allowing each microservice to run independently and by enabling collaborative processing among multiple microservices, the system can collect and visualize location data from various points within the building. This reduces the coupling within the building automation system. When adding new functions, only the corresponding microservices need to be added, making the building automation system easy to expand and reducing development costs. In addition, compared to monolithic program architecture testing, the microservice architecture has a shorter testing cycle and lower testing difficulty, thus reducing the testing cost of the building automation system.

[0070] In another embodiment of this application, the data open microservice is further configured to read the changed value and send the changed value and the location identifier of the changed location corresponding to the changed value to the message middleware. The message middleware is further configured to send the changed value and the location identifier to the integration protocol microservice corresponding to the changed location. The integration protocol microservice is further configured to obtain the location attribute information corresponding to the changed location based on the location identifier, generate corresponding control information based on the changed value and the location attribute information, and send the control information to the underlying device corresponding to the changed location to control the underlying device to modify the location value of the changed location to the changed value.

[0071] The "changed value" refers to the value that the user modifies (i.e., changes the value of a specific point) via a host computer. The changed point is a point whose attribute is writable.

[0072] Location attribute information, pre-configured by the user and stored in the configuration information, can be retrieved from the configuration information and is used to describe the data format information and device address information of the corresponding location. For example... Figure 4 As shown, the configuration information describes the location. Among them, object_type and object_instance are automatically generated by the system and are used to uniquely identify the corresponding location (i.e., location identifier), device address (i.e., device address information), protocol stack (i.e., data format information), and location description (i.e., other descriptive information about the location).

[0073] Here, after the user inputs a change value via the host computer, the data open microservice retrieves the change value from the host computer and sends the change value and the corresponding point identifier to the message middleware. The message middleware then sends the change value and point identifier (i.e., object_type, object_instance) to the integration protocol microservice corresponding to the change point. This integration protocol microservice then retrieves the protocol stack information and device address from the configuration information using the point identifier. Finally, based on the protocol stack information, it encapsulates the change value into the appropriate format and sends the encapsulated change value to the corresponding underlying device based on the device address. The underlying device then modifies the point value of the change point to the changed value.

[0074] In this embodiment, the location data of each point in the building can be modified by running each microservice independently or by processing multiple microservices collaboratively.

[0075] In applications, data transmission between microservices is generally carried out through IPC (Inter-Process Communication). When the business layer issues control (i.e., change value-related information) too quickly or the data volume is too large, the IPC channel is prone to running at full load. At the same time, a busy hardware bus can lead to data loss.

[0076] Therefore, in another embodiment of this application, the integration protocol microservice is further configured to detect the amount of data stored in the corresponding receiving buffer, and send a stop receiving signal to the message middleware when the amount of data is greater than a first preset value. The receiving buffer is used to store point data collected from the underlying device, and the message middleware is further configured to stop sending data to the integration protocol microservice when the stop receiving signal is received.

[0077] In the application, the integration protocol microservice corresponds to a receive buffer, which is used to cache the point data it collects.

[0078] In this embodiment, each integration protocol microservice detects its own receive buffer status (i.e., the amount of data stored in the receive buffer). If the amount of data is greater than a first preset value, it means that the receive buffer is full or about to be full. At this time, a stop receiving signal is sent to the message middleware. After receiving the stop signal, the message middleware stops sending data to the integration protocol microservice and informs the business layer hardware bus that it is in a busy state.

[0079] After the integration protocol microservice has finished processing the data in the receive buffer, it sends a ready status to the message middleware to restore data transmission in the internal communication link.

[0080] This solution can avoid IPC channel full-load operation and data loss due to busy hardware bus.

[0081] In another embodiment of this application, the guardian microservice is further configured to detect the data transmission volume between the multiple integration protocol microservices and the underlying device. If the data transmission volume is greater than a second preset value, the service priority of each started integration protocol microservice is determined. The integration protocol microservice with a service priority higher than the preset priority is determined as the first integration protocol microservice, and the integration protocol microservice with a service priority lower than or equal to the preset priority is determined as the second integration protocol microservice. The first integration protocol microservice is configured to collect point data of each point in the corresponding point table from the underlying device. The second integration protocol microservice is configured to stop collecting point data of each point in the corresponding point table from the underlying device.

[0082] As one implementation method, the guardian microservice is also used to obtain the data type of the point data collected by each started integration protocol microservice, determine the real-time requirement level of the corresponding point data based on the data type, and determine the service priority of the corresponding integration protocol microservice based on the real-time requirement level, wherein the higher the real-time requirement level, the higher the corresponding service priority.

[0083] As another implementation, the guardian microservice is also used to obtain the table priority corresponding to each of the point tables from the configuration information, and use the table priority as the service priority of the corresponding integration protocol microservice.

[0084] As another implementation, the guardian microservice is also used to use the preset priority as the table priority corresponding to the point table when the table priority corresponding to any of the point tables is not obtained in the configuration information.

[0085] In the application, the configuration microservice within the controller can interface with the configuration software on the host computer, receive configurations, and establish point tables for different protocols. Due to the large number of points that can be integrated, users can assign priority to the corresponding point tables according to actual needs during configuration, and use this priority as the priority of the corresponding integration protocol microservice. In this way, users can flexibly set priorities according to actual needs.

[0086] If a user does not assign a priority to a certain integration protocol microservice, the service priority of that integration protocol microservice can be automatically assigned to the preset priority.

[0087] Furthermore, the priority of the corresponding integration protocol microservice can be automatically determined based on the real-time requirements of the location data. This ensures the collection of location data with high real-time requirements.

[0088] Assuming priority levels are 1 to 4, if the data from a certain protocol device requires high real-time performance, such as temperature or pressure sensors, its priority level is 1 or 2; if the data from a certain protocol device requires low real-time performance, its priority level is 3 or 4.

[0089] When the data transmission volume between the integration protocol microservice and the underlying device exceeds a second preset value, it means that the message channel between the data processing layer and the device integration layer is busy. In this case, the integration protocol microservice with higher priority (i.e., higher than the preset priority) (i.e., the second integration protocol microservice) can still interact with the underlying device and obtain real-time location data from it. The integration protocol microservice with lower priority (i.e., lower than or equal to the preset priority) (i.e., the second integration protocol microservice) will stop interacting with the underlying device.

[0090] In other words, for data requests issued by the business layer, for high-priority integration protocol microservices, the message platform will send the data request to the integration protocol microservice, which will then obtain real-time location data from the underlying device and write it to the shared cache. The message platform will then notify the business layer to obtain the corresponding location data from the shared cache. For low-priority integration protocol microservices, the message platform will not send the corresponding data request to them, and the business layer will directly obtain the historically collected location data from the shared cache.

[0091] When the amount of data transmission between the integration protocol microservice and the underlying device is less than or equal to the third preset value, it is considered that the message channel between the data processing layer and the device integration layer has been restored. The third preset value is less than or equal to the second preset value. At this time, the second integration protocol microservice can re-interact with the underlying device.

[0092] This solution allows for the suspension of some or all integration protocol microservices and data interaction with underlying devices when the message channel between the data processing layer and the device integration layer is busy, thereby reducing link pressure until the link is restored, and then resuming the interaction between the data processing layer and the device integration layer.

[0093] In yet another embodiment of this application, the system further includes a display module.

[0094] The guardian microservice is also used to monitor the status of the guardian microservice, the message platform, the shared cache, the configuration microservice, the data open microservice, and multiple integration protocol microservices, and send the status information corresponding to the status to the display module. The display module is used to display the corresponding display information according to the status information.

[0095] Among them, the status information is used to describe the running status of the corresponding microservice.

[0096] like Figure 5 The image shown is a schematic diagram of a display module. Figure 5 As shown, the display module is an LED light board, which contains multiple LEDs, such as RS485_RX, RS485_TX, CAN_TX, CAN_RX, Beat, etc.

[0097] Here, the running status of each microservice in the main controller can be observed using the LED light board. For example, if all the LEDs on the light board are lit, it means that the microservices on the main controller have not yet been initialized; a flashing Beat light indicates that the system daemon microservice has started; a flashing RS485_TX light indicates that the system-integrated Modbus protocol microservice has started and is requesting data from the Modbus RTU / TCP device; and an off RS485_TX light indicates that the system-integrated Modbus protocol microservice has encountered an error (such as a memory overflow error), and so on. The flashing or off state of the LEDs displays the information.

[0098] This solution allows users to intuitively understand the running status of each microservice in the main controller through the display module, promptly identify system problems, and improve user experience.

[0099] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented using software plus a general-purpose hardware platform, or of course, using hardware. Based on this understanding, the above technical solutions, in essence or the parts that contribute to the related technology, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0100] It should be understood that the terminology used herein is for the purpose of describing particular exemplary embodiments only and is not intended to be limiting. Unless the context clearly indicates otherwise, the singular forms “a,” “an,” and “described” as used herein may also include the plural forms. The terms “comprising,” “including,” “containing,” and “having” are inclusive and therefore indicate the presence of the stated features, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, elements, components, and / or combinations thereof. The method steps, processes, and operations described herein are not construed as requiring them to be performed in a particular order described or illustrated unless the order of performance is explicitly indicated. It should also be understood that additional or alternative steps may be used.

[0101] The above description is merely a specific embodiment of the present invention, enabling those skilled in the art to understand or implement the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the present invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features claimed herein.

Claims

1. A building automation system, characterized in that, The system includes: a host computer, underlying devices and a main controller, wherein the main controller includes: a guardian microservice, a message middleware, a shared cache, a configuration microservice, a data open microservice and multiple integration protocol microservices; The configuration microservice is used to receive configuration information sent by the host computer; The guardian microservice is used to determine at least one location table based on the configuration information, and to initialize the message platform, the shared cache, the data open microservice, and multiple integration protocol microservices based on at least one location table. Multiple integrated protocol microservices are used to collect point data for each point in the corresponding point table from the underlying device, store the point data in the shared cache, and send the point change information corresponding to the point data to the message middleware. The message middle platform is used to send the location change information to the data open microservice; The data open microservice is used to retrieve corresponding point data from the shared cache based on the point change information, and send the point data to the host computer so that the host computer can display the point data. The data open microservice is also used to read the changed value and send the changed value and the point identifier of the changed point corresponding to the changed value to the message middleware; The message middleware is also used to send the changed value and the location identifier to the integration protocol microservice corresponding to the changed location; The integrated protocol microservice is also used to obtain the point attribute information corresponding to the changed point based on the point identifier, generate corresponding control information based on the changed value and the point attribute information, and send the control information to the underlying device corresponding to the changed point to control the underlying device to modify the point value of the changed point to the changed value.

2. The building automation system according to claim 1, characterized in that, The guardian microservice is used to start the message platform and the shared cache. After starting the message platform and the shared cache, the target integration protocol microservice corresponding to each point table is determined from multiple integration protocol microservices, and all the target integration protocol microservices are started. After starting the target integration protocol microservices, the data opening microservice is started.

3. The building automation system according to claim 1, characterized in that, The integrated protocol microservice is also used to detect the amount of data stored in the corresponding receiving buffer, and send a stop receiving signal to the message platform when the amount of data is greater than a first preset value. The receiving buffer is used to store point data collected from the underlying device. The message middleware is also used to stop sending data to the integration protocol microservice upon receiving the stop receiving signal.

4. The building automation system according to claim 1, characterized in that, The guardian microservice is also used to detect the data transmission volume between the multiple integration protocol microservices and the underlying device. When the data transmission volume is greater than a second preset value, the service priority of each started integration protocol microservice is determined. The integration protocol microservice with a service priority higher than the preset priority is determined as the first integration protocol microservice, and the integration protocol microservice with a service priority lower than or equal to the preset priority is determined as the second integration protocol microservice. The first integration protocol microservice is used to collect point data for each point in the corresponding point table from the underlying device; The second integration protocol microservice is used to stop collecting point data for each point in the corresponding point table from the underlying device.

5. The building automation system according to claim 4, characterized in that, The guardian microservice is also used to obtain the data type of the point data collected by each started integration protocol microservice, determine the real-time requirement level of the corresponding point data based on the data type, and determine the service priority of the corresponding integration protocol microservice based on the real-time requirement level, wherein the higher the real-time requirement level, the higher the corresponding service priority.

6. The building automation system according to claim 4, characterized in that, The guardian microservice is also used to obtain the table priority corresponding to each of the point tables from the configuration information, and use the table priority as the service priority of the corresponding integration protocol microservice.

7. The building automation system according to claim 6, characterized in that, The guardian microservice is also used to use the preset priority as the table priority corresponding to the point table when the table priority corresponding to any of the point tables is not obtained in the configuration information.

8. The building automation system according to claim 1, characterized in that, The system also includes a display module. The guardian microservice is also used to monitor the status of the guardian microservice, the message platform, the shared cache, the configuration microservice, the data open microservice, and multiple integration protocol microservices, and send the status information corresponding to the status to the display module; The display module is used to display corresponding information based on the status information.

Citation Information

Patent Citations

  • Building automation system with microservice architecture to support multi-node on-premise BAS server

    US20200209816A1