System upgrade control method and device and storage medium

By generating upgrade requests and orchestrating instructions based on equipment processing capabilities, the upgrade failure problem caused by the complexity of equipment upgrade control in the air conditioning system is solved, and the success rate and operating status of equipment upgrades are improved.

CN119718372APending Publication Date: 2025-03-28SHANGHAI MEICON INTELLIGENT CONSTR CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411790121.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-05
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

The upgrade control functions of existing air conditioning systems and equipment are complex, resulting in a high probability of upgrade failure and affecting the user experience.

Method used

By generating an upgrade request for the device to be upgraded, instruction orchestration is performed according to the current processing capability of the device, instruction sequence is generated, and instructions are issued to the device in the orchestration order to control it to achieve upgrade.

Benefits of technology

Minimize the operating load of system equipment, ensure the good operating condition of the equipment, improve the success rate of equipment upgrades, and reduce cache pressure.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119718372A_ABST
    Figure CN119718372A_ABST
Patent Text Reader

Abstract

The invention discloses a system upgrading control method and device and a storage medium. The method comprises the steps of generating an upgrading request of to-be-upgraded equipment based on equipment data of a stored system; performing instruction arrangement on the upgrading request according to the current processing capability of the to-be-upgraded equipment to generate an instruction sequence, wherein the instruction sequence comprises a plurality of control instructions which can be identified by the to-be-upgraded equipment; and sequentially issuing the control instructions in the instruction sequence to the to-be-upgraded equipment so as to control the to-be-upgraded equipment to realize upgrading. The upgrade request of the device needing to be upgraded is generated by using the stored device data, the device data does not need to be inquired in real time, the operation load of the system device is reduced to the maximum extent, and the upgrade request is subjected to instruction arrangement according to the current processing capacity of the system device to generate the instruction sequence to be issued. The system equipment is prevented from receiving a heap of instructions to influence the running state of the system equipment, the cache pressure of the system equipment is relieved, and the equipment upgrading success rate can be increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of smart home appliances, and in particular to a system upgrade control method, device and storage medium. Background Art

[0002] As we enter the information age, air conditioners are becoming more and more intelligent and more and more functional, requiring regular maintenance and updating of the firmware programs of the equipment in the air conditioning system.

[0003] At present, with the increase in the number of devices in the air-conditioning system, the upgrade control function of the equipment in the system is becoming more and more complicated. Due to the complex correlation within the upgrade control function, the probability of equipment upgrade failure is increased, thereby reducing the success rate of equipment upgrade and affecting user experience. Summary of the invention

[0004] The purpose of the present application is to propose a system upgrade control method, device and storage medium to address the deficiencies of the above-mentioned prior art, and the purpose is achieved through the following technical solutions.

[0005] The first aspect of the present application provides a system upgrade control method, the method comprising:

[0006] Generate an upgrade request for the device to be upgraded based on the device data of the stored system;

[0007] Arranging instructions for the upgrade request according to the current processing capability of the device to be upgraded to generate an instruction sequence, wherein the instruction sequence includes a plurality of control instructions that can be recognized by the device to be upgraded;

[0008] The control instructions in the instruction sequence are sent to the device to be upgraded in sequence to control the device to be upgraded to achieve upgrading.

[0009] The system upgrade control method described above has the following beneficial effects or benefits:

[0010] By using the device data stored in the system to generate upgrade requests for the devices that need to be upgraded, without the need to query the device data in real time, the operating load of the system devices can be reduced to the maximum extent, ensuring the good operating status of the system devices. By arranging the upgrade requests according to the current processing capacity of the system devices to generate a command sequence, and issuing the commands to the system devices in the arrangement order to control the upgrade, the system devices are prevented from receiving a bunch of commands and affecting their own operating status, reducing the cache pressure of the system devices. The system devices can directly execute the control commands received, thereby improving the success rate of equipment upgrades. This system upgrade solution can be applied to the upgrade of air-conditioning systems.

[0011] In some embodiments of the present application, generating an upgrade request for a device to be upgraded based on the stored device data of the system includes:

[0012] Determining device objects included in the system and upgrade versions corresponding to the device objects;

[0013] According to the device version recorded in the device shadow stored for the device object being lower than the upgrade version, the device object is used as a device to be upgraded, and an upgrade request is generated for the device to be upgraded. The device shadow is a virtual mapping of the device object.

[0014] In some embodiments of the present application, the step of arranging instructions for the upgrade request according to the current processing capability of the device to be upgraded to generate an instruction sequence includes:

[0015] Determining an upgrade method suitable for the device to be upgraded according to the current processing capability of the device to be upgraded;

[0016] The upgrade request is command-organized based on the upgrade method to generate an instruction sequence.

[0017] In some embodiments of the present application, determining an upgrade method suitable for the device to be upgraded according to the current processing capability of the device to be upgraded includes:

[0018] Sending a preset number of detection instructions to the device to be upgraded, wherein the detection instructions are used to detect the current processing capability of the device to be upgraded;

[0019] According to the response returned by the device to be upgraded to any detection instruction, determining that the upgrade mode of the device to be upgraded is a first upgrade mode, where the first upgrade mode is used to indicate that the device to be upgraded selects an active pull mode;

[0020] According to the fact that the device to be upgraded does not return a response to any detection instruction, it is determined that the upgrade of the device to be upgraded is a second upgrade mode, and the second upgrade mode is used to indicate that the device to be upgraded selects a passive receiving mode.

[0021] In some embodiments of the present application, the step of arranging instructions for the upgrade request according to the upgrade mode to generate an instruction sequence includes:

[0022] According to the upgrade mode being an active pull mode, generating an initial instruction sequence according to the upgrade request through a first orchestration model corresponding to the active pull mode;

[0023] According to the upgrade mode being a passive receiving mode, generating an initial instruction sequence according to the upgrade request through a second orchestration model corresponding to the passive receiving mode;

[0024] The initial instruction sequence is verified to obtain the instruction sequence, wherein the verification process includes at least one of instruction failure detection, instruction encryption, and instruction sequence verification.

[0025] In some embodiments of the present application, the step of sending the control instructions in the instruction sequence to the device to be upgraded in sequence includes:

[0026] According to the upgrade mode being an active pull mode, sending a control instruction to the device to be upgraded according to the instruction sequence, sending the next control instruction to the device to be upgraded according to the execution state returned by the device to be upgraded, and stopping after receiving the end instruction returned by the device to be upgraded;

[0027] According to the upgrade mode being a passive receiving mode, a control instruction is sent to the device to be upgraded according to the instruction sequence, and an end instruction is sent to the device to be upgraded after the last control instruction in the instruction sequence is sent.

[0028] A second aspect of the present application provides a system upgrade control device, the device comprising:

[0029] An operation service, for generating an upgrade request for the device to be upgraded based on the device data of the stored system, and sending the upgrade request to the communication service;

[0030] A communication service, used for forwarding the upgrade request to a model service;

[0031] The model service is used to arrange the upgrade request according to the current processing capability of the device to be upgraded, generate an instruction sequence, wherein the instruction sequence includes multiple control instructions that can be recognized by the device to be upgraded, and send the control instructions in the instruction sequence to the device to be upgraded in sequence to control the device to be upgraded to achieve the upgrade.

[0032] The system upgrade control device described above has the following beneficial effects or advantages:

[0033] By designing the upgrade service of the entire monomer in layers, the operation service is responsible for generating upgrade requests based on the stored device data and forwarding the upgrade requests through the communication service. The model service is responsible for arranging the instructions for the upgrade request and sending the instructions to the device to be upgraded to control the upgrade. In this way, the operation behavior and the interactive behavior of the device can be decoupled, which is convenient for maintenance and management, and realizes the refined management of the entire upgrade process. In the operation service layer, the stored device data can be used to generate upgrade requests for all devices to be upgraded in the system to control the simultaneous upgrade of multiple devices, without the need to query the device in real time to ensure the good operation status of the system equipment. In the model service layer, the upgrade request is automatically arranged according to the current processing capacity of the system equipment and follows the device upgrade specification to generate an instruction sequence, and the instructions are sent to the system equipment in the order of arrangement to control the upgrade, so as to avoid the system equipment receiving a bunch of instructions and affecting its own operation status, thereby improving the success rate of equipment upgrade. This system upgrade solution can be applied to the upgrade of air-conditioning systems.

[0034] In some embodiments of the present application, there are multiple connection channels between the communication service and the model service;

[0035] The communication service is specifically used to determine the communication protocol supported by the device to be upgraded based on the upgrade package information carried in the upgrade request, add the information of the communication protocol to the upgrade request, select a target connection channel corresponding to the device type in the upgrade request from the multiple connection channels, and forward the upgrade request with the communication protocol added to the model service by calling the target connection channel.

[0036] In some embodiments of the present application, the device further comprises:

[0037] A device service, configured to receive device data reported by the device to be upgraded and forwarded by the model service, and update the device data to a device shadow stored for the device to be upgraded;

[0038] The device service is further configured to return the device data to the operation service according to a query request of the operation service.

[0039] In some embodiments of the present application, the model service includes a plurality of executors, each executor using a communication protocol;

[0040] The model service is specifically used to select a target executor corresponding to the communication protocol carried by the upgrade request from the multiple executors, to arrange instructions for the upgrade request to generate an instruction sequence according to the current processing capability of the device to be upgraded through the target executor, and to send the control instructions in the instruction sequence to the device to be upgraded in sequence through the target executor.

[0041] In some embodiments of the present application, the device further comprises:

[0042] The monitoring service is used to record the behavior information of the operation service, the model service and the communication service.

[0043] A third aspect of the present application provides a computer-readable storage medium having a computer program stored thereon, wherein the program, when executed by a processor, implements the steps of the method described in the first aspect or the second aspect above. BRIEF DESCRIPTION OF THE DRAWINGS

[0044] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the structures shown in these drawings without paying any creative work.

[0045] Figure 1 This is a schematic diagram of an embodiment flow of a system upgrade control method according to an exemplary embodiment of the present application;

[0046] Figure 2 This is a structural schematic diagram of a system upgrade control device according to an exemplary embodiment of the present application;

[0047] Figure 3 This is an interactive flow chart of a system upgrade control method according to an exemplary embodiment of the present application;

[0048] Figure 4 The figure is a schematic diagram of the structure of a storage medium according to an exemplary embodiment of the present application.

[0049] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0050] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0051] It should be noted that all directional indications in the embodiments of the present application (such as up, down, left, right, front, back, etc.) are only used to explain the relative position relationship, movement status, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.

[0052] In addition, the descriptions of "first", "second", etc. in this application are only for descriptive purposes and cannot be understood as indicating or implying their relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.

[0053] In this application, unless otherwise clearly specified and limited, the terms "connection", "fixation", etc. should be understood in a broad sense. For example, "fixation" can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements, unless otherwise clearly defined. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0054] In addition, the technical solutions between the various embodiments of the present application can be combined with each other, but it must be based on the fact that ordinary technicians in the field can implement it. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.

[0055] In the related art, most single services are used in the control upgrade process of air-conditioning systems. As the number of devices increases, single services become more and more bloated, and the complex correlation of their internal functions increases the probability of device upgrade failure. In addition, after the upgrade service is uploaded to the cloud, the cloud application is coupled with the device communication function. When communicating with the device, the business function operation is also required. The device interaction is coupled with the business operation. The control upgrade process depends on the stability of the cloud service. If the business function operation fails, it will also affect the control upgrade result, reduce the success rate of the device upgrade, and affect the user experience.

[0056] To solve the above technical problems, the present application proposes a system upgrade solution, which designs the upgrade service of the entire monomer in layers. Each layer of service follows the principle of single responsibility. The operation service is responsible for screening the equipment objects that need to be upgraded, initiating upgrade requests, and forwarding the upgrade requests to the model service through the communication service. The model service is responsible for arranging instructions for the upgrade requests and sending the instructions to the equipment to control the upgrade, thereby decoupling the operation behavior and the interactive behavior of the equipment, facilitating maintenance and management, and realizing refined management of the entire upgrade process.

[0057] At the operation service layer, the stored device data can be used to generate upgrade requests for all devices to be upgraded in the system, and multiple devices can be controlled to upgrade at the same time, without real-time querying the devices to ensure the good operation status of the devices. At the model service layer, the upgrade request is automatically arranged according to the current processing capacity of the device and the device upgrade specification to generate an instruction sequence, and the instructions are sent to the system equipment in the order of arrangement to control the upgrade, so as to avoid the device receiving a bunch of instructions and affecting its own operation status, thereby improving the success rate of equipment upgrade. This system upgrade solution can be applied to the upgrade of air-conditioning systems.

[0058] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The several specific embodiments listed can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0059] Embodiment 1:

[0060] Figure 1 This is a flow chart of an embodiment of a system upgrade control method according to an exemplary embodiment of the present application. The system upgrade control method can be applied to a server, which can be a cloud server. The cloud server can be implemented as a distributed server cluster composed of multiple servers, or as a single server or a server combined with blockchain. The server can also be a cloud server for basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, and security services, or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology.

[0061] like Figure 1 As shown, the system upgrade control method includes the following steps:

[0062] Step 101: Generate an upgrade request for the device to be upgraded based on the stored device data of the system;

[0063] Step 102: Arrange the upgrade request according to the current processing capability of the device to be upgraded, and generate an instruction sequence, where the instruction sequence includes a plurality of control instructions that can be recognized by the device to be upgraded;

[0064] Step 103: Send the control instructions in the instruction sequence to the device to be upgraded in sequence to control the device to be upgraded to achieve upgrading.

[0065] The system's device data can be understood as the operating status information, attribute information, etc. of different devices in the system. These device data, as the shadow of the device, describe the latest status of the device, such as device version, online and offline status, etc.

[0066] The device to be upgraded is the device in the system that needs to be upgraded, which can be one or more devices that are controlled and upgraded at the same time.

[0067] Taking the air-conditioning system as an example, assuming that the equipment it includes includes water-cooled units, air-cooled units, magnetic levitation units, centrifuges, air-cooled screws, water-cooled screws, scroll units, multi-split indoor units, multi-split outdoor units, etc., these devices only need to report data when they are operating stably. By storing the data reported by these devices, when upgrade control is required, the equipment to be upgraded can be screened out based on these equipment data.

[0068] The upgrade request may be an instruction for controlling the upgrade generated for the device to be upgraded, and the upgrade request may include upgrade package information, device information, etc. of the device to be upgraded.

[0069] The processing capability can be understood as the operating performance of the device to be upgraded, which is used to characterize whether the current operating state of the device to be upgraded is stable. Instructions are arranged in combination with the current operating state of the device to generate an instruction sequence suitable for the current capability of the device.

[0070] Instruction orchestration can be understood as the process of organizing and arranging multiple instructions into a complete, executable instruction set based on different inputs. It involves generating corresponding instructions based on different inputs and contexts, determining the execution order between instructions to ensure that the logical relationship and execution dependencies of the instructions are met, and adapting the equipment to ensure that the equipment can understand and execute correctly.

[0071] The instruction sequence can be understood as an instruction set in which multiple instructions are arranged in a certain order, through which the upgrade control of the device to be upgraded can be realized. It can be understood that the instruction sequence includes some device initialization instructions and device firmware upgrade control instructions.

[0072] At this point, the above Figure 1The system upgrade process shown uses the device data stored in the system to generate upgrade requests for the devices to be upgraded, without the need to query the device data in real time, thereby reducing the operating load of the system devices to the maximum extent and ensuring the good operating status of the system devices. The upgrade request is commanded according to the current processing capacity of the system devices to generate a command sequence, and the command is sent to the system devices in the order of the command arrangement to control the upgrade, so as to avoid the system devices receiving a bunch of commands and affecting their own operating status, and reduce the cache pressure of the system devices. The system devices can directly execute the control commands received, thereby improving the success rate of the equipment upgrade. The system upgrade solution can be applied to the upgrade of air-conditioning systems.

[0073] In some embodiments of the present application, the above step 101 generates an upgrade request for the device to be upgraded based on the stored device data of the system, which may include:

[0074] Determine the device objects included in the system and the corresponding upgraded versions of the device objects;

[0075] Since the device version recorded in the device shadow stored for the device object is lower than the upgrade version, the device object is used as a device to be upgraded, and an upgrade request is generated for the device to be upgraded.

[0076] The device objects are the device components that make up the system. By obtaining the upgrade packages of these device objects, the corresponding upgrade versions can be determined.

[0077] The device shadow can be understood as a virtual mapping of the device object storage, usually in the form of a JSON document. The device shadow can reflect the real-time status of the device. By storing the data reported by the device object in the device shadow, the device information in the device shadow can be queried at any time, such as the device version, to obtain the firmware version currently used by the device object.

[0078] In this embodiment, by performing upgrade operations based on the stored device shadows, there is no need to connect to the actual device in real time to query device information. Control instructions will only be sent to the actual device when the device needs to be controlled and upgraded. This can reduce the operating load of the device as a whole and ensure that the equipment is in good operating condition.

[0079] In some embodiments of the present application, the above step 102 arranges the upgrade request according to the current processing capability of the device to be upgraded to generate an instruction sequence, which may include:

[0080] Determine an upgrade method suitable for the device to be upgraded based on the current processing capacity of the device to be upgraded;

[0081] The upgrade request is commanded based on the upgrade method to generate a command sequence.

[0082] The upgrade mode can be understood as the control upgrade mode supported by the device. Different upgrade modes can be used for different operating conditions of the device.

[0083] Exemplarily, from the perspective of the device, the upgrade method can include an active pull method and a passive reception method. Among them, the active pull method is active on the device to be upgraded, indicating that the current operating state of the device to be upgraded is good and can receive control instructions. The passive reception method is that the device to be upgraded passively receives control instructions, indicating that the current operating state of the device to be upgraded is not good and cannot receive control instructions.

[0084] It is worth noting here that for the same upgrade request, different upgrade methods generate different instruction sequences to adapt to the upgrade requirements of the device.

[0085] In this embodiment, an upgrade method suitable for the device to be upgraded is selected according to the current processing capability of the device, and an instruction sequence adapted to the current processing capability of the device is generated by arranging instructions for the upgrade request based on the upgrade method, so as to realize adaptive switching of the device upgrade path.

[0086] In some embodiments of the present application, determining an upgrade method suitable for the device to be upgraded according to the current processing capability of the device to be upgraded may include:

[0087] Sending a preset number of detection instructions to the device to be upgraded, where the detection instructions are used to detect the current processing capability of the device to be upgraded;

[0088] According to the response returned by the device to be upgraded to any detection instruction, determining that the upgrade mode of the device to be upgraded is a first upgrade mode, where the first upgrade mode is used to indicate that the device to be upgraded selects an active pull mode;

[0089] According to the fact that the device to be upgraded does not return a response to any detection instruction, it is determined that the upgrade of the device to be upgraded is a second upgrade mode, and the second upgrade mode is used to indicate that the device to be upgraded selects a passive receiving mode.

[0090] Those skilled in the art can understand that the above-mentioned “first upgrade method” and “second upgrade method” are an active pull method and a passive receive method.

[0091] The detection command can be understood as a sniffing behavior against the device to be upgraded, which is used to test the current processing capacity of the device to be upgraded, and the device to be upgraded chooses the upgrade method according to its own conditions. In other words, if the device to be upgraded returns a response, it means that the current processing capacity of the device to be upgraded is good, and the active pull method is selected. If the device to be upgraded does not return a response, it means that the current processing capacity of the device to be upgraded is not good, and the passive receiving method is selected.

[0092] Exemplarily, the number of reconnaissance instructions sent to the device to be upgraded can be set to 5 times, and the reconnaissance instructions can be sent to the device to be upgraded at a certain interval each time. If the device to be upgraded returns a response, it can be determined that the upgrade method supported by the device is the active pull method. If the device to be upgraded always returns no response, it can be determined that the upgrade method supported by the device is the passive receiving method.

[0093] In this embodiment, multiple detection instructions are sent to the device to be upgraded for interaction, and the upgrade method supported by the device is obtained according to whether the device to be upgraded returns a response. This can effectively determine the processing capability of the device and thus select a suitable upgrade method.

[0094] It should be noted that, in addition to the above-mentioned method of determining the upgrade method by sending a detection instruction to the device, the upgrade method can also be selected for the device to be upgraded by querying the current processing capability of the device.

[0095] In some embodiments of the present application, arranging instructions for the upgrade request according to the upgrade mode to generate an instruction sequence may include:

[0096] According to the upgrade mode being an active pull mode, generating an initial instruction sequence according to the upgrade request through a first orchestration model corresponding to the active pull mode;

[0097] According to the upgrade mode being a passive receiving mode, generating an initial instruction sequence according to the upgrade request through a second arrangement model corresponding to the passive receiving mode;

[0098] The initial instruction sequence is verified to obtain an instruction sequence.

[0099] The first orchestration model can be understood as an orchestration instruction mode based on upgrade requests according to the needs of an active pull method, and the second orchestration model can be understood as an orchestration instruction mode based on upgrade requests according to the needs of a passive receiving method.

[0100] For example, if it is an active pull mode, the first orchestration model is used to perform command orchestration according to the upgrade request to generate a device instruction A that can be recognized by the device. If it is a passive receiving mode, the second orchestration model is used to perform command orchestration according to the upgrade request to generate a device instruction B that can be recognized by the device.

[0101] Verification processing may include at least one of instruction failure detection, instruction encryption, and instruction sequence verification. Instruction failure detection refers to scanning all instructions to check whether there are any failed instructions. Failed instructions may be caused by version mismatch or unsupported device status; instruction encryption refers to encrypting valid instructions to ensure security during transmission; instruction sequence verification refers to checking whether the order of each instruction complies with the predetermined logic by simulating the device upgrade scenario.

[0102] Exemplarily, for the equipment upgrade control of the air-conditioning system, the generated upgrade request includes: setting the temperature to 26 degrees: {"setTemp":26}, power on: {"startStopCommandCom":1}, control upgrade: {"targetControl":"jkq09.df.iern"}. After the command is orchestrated using the first orchestration model corresponding to the active pull method, the command to set the temperature to 26 degrees will be converted to instruction 0x00001A, the power on command will be converted to instruction 0x000001, the control upgrade command conversion instruction will be 0xAA80CC4C0000000000024174AA41, and the temperature setting instruction will be recognized, and the temperature unlocking instruction 0x0001000 will be added. As well as recognizing the power on and off command, the instruction 0x00000012121 will be added. In addition, the channel opening instruction 0x8856598832, the offline instruction 0x0000CC311171CCM, the remote priority control instruction 0x99121999, and the enable control instruction 0x8856598832 will be added. Finally, the first arrangement model will output a series of instructions 0x00001A, 0x000001, 0x0001000, 0x00000012121, 0x99121999, 0x8856598832, 0x0000CC311171CCM, 0xAA80CC4C0000000000024174AA41. Then, the instructions output by the first orchestration model are subjected to failure detection, encryption, and sequence verification. For example, if a control upgrade instruction is identified, the temperature control instruction and the switch instruction are invalidated, and the instructions are encrypted, and it is determined whether the sequence is legal. The final instruction sequence obtained is the channel opening instruction 0x8983232, the offline instruction 0x0000CC311171CCM, the remote priority control instruction 0x99121999, the enable control instruction 0x8856598832, and the control upgrade instruction 0xAA80CC4C0000000000024174AA41.

[0103] After using the second orchestration model corresponding to the passive receiving mode for instruction orchestration, the output instructions lack the channel opening instruction and the remote priority control instruction, that is, the initial output instruction sequence is: 0x00001A, 0x000001, 0x0001000, 0x00000012121, 0x0000CC311171CCM, 0xAA80CC4C0000000000024174AA41. After verification, the final instruction sequence is the offline instruction 0x0000CC311171CCM, the enable control instruction 0x8856598832, and the control upgrade instruction 0xAA80CC4C0000000000024174AA41.

[0104] In this embodiment, different orchestration models are selected for instruction orchestration according to different upgrade methods to ensure the validity of the instructions, and by verifying the initial instruction sequence output by the first orchestration model or the second orchestration model, the security and reliability of instruction transmission can be enhanced to ensure that the device can correctly receive and execute instructions.

[0105] In some embodiments of the present application, the above step 103 sends the control instructions in the instruction sequence to the device to be upgraded in sequence, which may include:

[0106] According to the upgrade mode being the active pull mode, a control instruction is sent to the device to be upgraded according to the instruction sequence, and the next control instruction is sent to the device to be upgraded according to the execution status returned by the device to be upgraded, until an end instruction returned by the device to be upgraded is received, and then the device stops;

[0107] According to the upgrade mode being a passive receiving mode, a control instruction is sent to the device to be upgraded according to the instruction sequence, and an end instruction is sent to the device to be upgraded after the last control instruction in the instruction sequence is sent.

[0108] The execution status can be understood as the control status feedback of the device to be upgraded receiving the control instruction. That is to say, the device to be upgraded will return an execution status once it receives no control instruction, until it recognizes the last control instruction and returns the end instruction.

[0109] In this embodiment, when the upgrade mode is active pull mode, each time a control instruction is issued, wait for the execution status to be received before issuing the next control instruction, thereby realizing the process of actively controlling the instruction sequence issued by the device to be upgraded. When the upgrade mode is passive reception mode, the control instructions are only issued in the order of the instruction sequence, and the device to be upgraded receives them passively.

[0110] In some embodiments of the present application, after executing step 103, the following steps may also be included:

[0111] Receive the upgrade control result sent by the device to be upgraded, and update the latest version information of the device in the upgrade control result to the corresponding device shadow.

[0112] Embodiment 2:

[0113] Corresponding to the above-mentioned embodiment of the system upgrade control method, the present application also provides an embodiment of a system upgrade control device. Figure 2 FIG. 1 is a schematic diagram of a system upgrade control device according to an exemplary embodiment of the present application. Figure 2 As shown, the system upgrade control device includes: operation service 210, communication service 220 and model service 230. Communication service 220 is responsible for the communication interaction between operation service 210 and model service 230. Operation service 210 is the initiator of control upgrade, and model service 230 is the agent between operation service 210 and the device to be upgraded. These services are microservices on the cloud server and can be deployed in containers for easy maintenance and management. The signal interaction between each service is as follows:

[0114] The operation service 210 is used to generate an upgrade request for the device to be upgraded based on the device data of the stored system, and send the upgrade request to the communication service;

[0115] The communication service 220 is used to forward the upgrade request to the model service 230;

[0116] Model service 230 is used to arrange the upgrade request according to the current processing capability of the device to be upgraded, generate an instruction sequence, the instruction sequence includes multiple control instructions that can be recognized by the device to be upgraded, and send the control instructions in the instruction sequence to the device to be upgraded in sequence to control the device to be upgraded to achieve the upgrade.

[0117] The implementation process of the functions and effects of each service in the above-mentioned device is specifically described in the implementation process of the corresponding steps in the above-mentioned method, which will not be repeated here.

[0118] In the embodiment of the present application, the upgrade service of the entire monomer is designed in layers. The operation service is responsible for generating upgrade requests based on the stored device data and forwarding the upgrade requests through the communication service. The model service is responsible for arranging the instructions of the upgrade request and sending the instructions to the device to be upgraded to control the upgrade. In this way, the operation behavior and the interactive behavior of the device can be decoupled, which is convenient for maintenance and management, and realizes the refined management of the entire upgrade process. In the operation service layer, the stored device data can be used to generate upgrade requests for all devices to be upgraded in the system to control the simultaneous upgrade of multiple devices. There is no need to query the device in real time to ensure the good operation status of the system equipment. In the model service layer, the upgrade request is automatically arranged according to the current processing capacity of the system equipment and follows the device upgrade specification to generate an instruction sequence, and the instructions are sent to the system equipment in the arrangement order to control the upgrade, so as to avoid the system equipment receiving a bunch of instructions and affecting its own operation status, thereby improving the success rate of equipment upgrade. This system upgrade solution can be applied to the upgrade of air-conditioning systems.

[0119] In some embodiments of the present application, there are multiple connection channels between the communication service 220 and the model service 230;

[0120] The communication service 220 is specifically used to determine the communication protocol supported by the device to be upgraded based on the upgrade package information carried in the upgrade request, add the information of the communication protocol to the upgrade request, select the target connection channel corresponding to the device type in the upgrade request from multiple connection channels, and forward the upgrade request with the added communication protocol to the model service 230 by calling the target connection channel.

[0121] The upgrade package information may include the location information, version information, supported protocols, etc. of the upgrade package. Since the upgrade package is firmware developed for the device to be upgraded, the protocols supported by the upgrade package are the communication protocols supported by the device to be upgraded.

[0122] Exemplarily, the communication protocols may include HTTP (Hypertext Transfer Protocol), MQTT (Message Queuing Telemetry Transport), Modbus (serial communication protocol), BACnet (Building Automation Control Network Data Communication Protocol), and the like.

[0123] The connection channel can be understood as a communication connection established between the communication service 220 and the model service 230, such as a TCP (Transmission Control Protocol) connection. The number of connection channels between the communication service 220 and the model service 230 can be consistent with the number of device types in the system, so that upgrade requests for different device types can be transmitted using different connection channels, further improving the success rate of device upgrades.

[0124] Taking the air conditioning system as an example, during the control upgrade process, the multiple connection channels between the communication service 220 and the model service 230 may include 9 channels, including water-cooled units, air-cooled units, magnetic suspension units, centrifuges, air-cooled screws, water-cooled screws, scroll units, multi-split indoor units, and multi-split outdoor units. If the upgrade request is for an air-cooled unit, the connection channel of the air-cooled unit is selected as the target connection channel.

[0125] In this embodiment, by adding the communication protocol supported by the device to the upgrade request, the model service uses the communication protocol to issue instructions to the device to be upgraded. The communication service transmits the upgrade request to the model service by selecting an appropriate connection channel to improve the success rate of the device upgrade.

[0126] In some embodiments of the present application, Figure 2 As shown, the device also includes:

[0127] The device service 240 is used to receive the device data reported by the device to be upgraded and forwarded by the model service 230, and update the device data to the device shadow stored for the device to be upgraded;

[0128] The device service 240 is further configured to return device data to the operation service 210 according to a query request of the operation service 210 .

[0129] The device service 240 acts as a proxy for the operation service 210 and the model service 230 , and can communicate and interact with the operation service 210 and the model service 230 .

[0130] When the model service 230 receives the device data reported by the device to be upgraded, it converts the device data into data that the user can understand and passes it to the device service 240. The device service 240 updates the device data to the corresponding device shadow, so that the device shadow always records the real-time status of the device.

[0131] When control upgrade is required, the operation service 210 sends a query request for the device to the device service 240, so that the device service 240 returns the device data recorded in the stored device shadow to the operation service 210. The device data may include information such as device version and operating status.

[0132] In this embodiment, by adding a device shadow of each device in the device service storage system and updating it in real time based on the device data reported by the device, the device information of the device can be provided to the operation service without the need for the operation service to interact with the device, thereby reducing the operating load of the device.

[0133] In some embodiments of the present application, the model service 230 may include multiple executors, each executor using a communication protocol;

[0134] The model service 230 is specifically used to select a target executor corresponding to the communication protocol carried by the upgrade request from multiple executors, to generate an instruction sequence by arranging instructions for the upgrade request according to the current processing capability of the device to be upgraded through the target executor, and to send the control instructions in the instruction sequence to the device to be upgraded in sequence through the target executor.

[0135] The executor can be understood as a unit that implements the orchestration and issuance of upgrade request instructions according to the communication protocol, which may include HTTP executor, MQTT executor, Modbus executor, etc.

[0136] Exemplarily, if the upgrade request carries the HTTP protocol, then the HTTP executor is used to perform the control upgrade; if the upgrade request carries the MQTT protocol, then the MQTT executor is used to perform the control upgrade.

[0137] In this embodiment, in the model service, multiple executors are used to control the upgrade, so that upgrade requests carrying different communication protocols can use different executors to control the upgrade without affecting each other.

[0138] In some embodiments of the present application, Figure 2 As shown, the device may also include:

[0139] The monitoring service 250 is used to record the behavior information of the operation service 210 , the model service 230 and the communication service 220 .

[0140] In this embodiment, a monitoring service is added to record the full life cycle behavior of the control upgrade process, which is helpful for locating the problem when the upgrade fails.

[0141] Based on the above Figure 1 to Figure 2 Based on the embodiment shown, Figure 3 This is an interactive flow chart of a system upgrade control method according to an exemplary embodiment of the present application. Figure 3 In the process, it involves the interaction between operation service, communication service, device service, model service and system equipment. In order to maintain communication, the communication service will keep heartbeat communication with the operation service and model service to ensure smooth link.

[0142] like Figure 3 As shown, the upgrade process includes:

[0143] First, the operation service initiates an upgrade request: the operation service upgrades the device objects contained in the controlled system as needed, queries the device service for device information in the device shadow of the corresponding device object, compares the device version included in the device information with the upgrade version, and submits the upgrade request to the communication service if the upgrade version is higher than the device version. At the same time, the monitoring service will record relevant behavior information for the operation service and the communication service by registering an agent.

[0144] Secondly, the communication service selects the appropriate connection channel to forward the upgrade request: the communication service adds the communication protocols supported by the device upgrade to the upgrade request, such as HTTP, MQTT, Modbus, BACnet, etc., based on the upgrade package information carried in the upgrade request. The communication service selects the corresponding connection channel based on the device type carried in the upgrade request and passes the upgrade request to the model service. Taking the air-conditioning system as an example, during the entire control upgrade process, the connection channel between the communication service and the model service may include water-cooled units, air-cooled units, magnetic levitation units, centrifuges, air-cooled screws, water-cooled screws, vortex units, multi-split indoor units, multi-split outdoor units, etc. At the same time, the monitoring service will record the behavior information of the communication service and the model service.

[0145] Furthermore, the model service uses multiple executors to control the upgrade: the model service can have HTTP request pools, MQTT request pools, Modbus request pools, BACnet request pools, etc., and these request pools have upgrade requests from different connection channels waiting. The model service selects the corresponding executor according to the communication protocol carried by the upgrade request. If the communication protocol is HTTP, the HTTP executor is selected. If the communication protocol is MQTT, the MQTT executor is selected, and so on. The selected executor performs the next upgrade operation: (1) The executor sends multiple reconnaissance instructions to the system device for sniffing. If the system device responds, it can be determined that the system device has selected the active pull upgrade method. If the system device does not respond within a certain time range, it can be determined that the system device has selected the passive reception upgrade method. (2) After the executor determines the upgrade method, if it is an active pull upgrade method, it calls the first orchestration model to orchestrate the upgrade request and generates an initial instruction sequence A that the device can recognize. If it is a passive reception upgrade method, it calls the second orchestration model to orchestrate the upgrade request and generates an initial instruction sequence B that the device can recognize. (3) The executor verifies the initial instruction sequence A or the initial instruction sequence B to obtain a complete and reliable instruction sequence.

[0146] Finally, the model service establishes a connection with the system device and sends a command sequence: if it is an active pull upgrade method, the model service sends a control instruction to the system device according to the instruction sequence, waits for the system device to return to the execution state, and then sends the next control instruction until it receives the end instruction returned by the system device and stops; if it is a passive reception upgrade method, the model service sends control instructions to the device to be upgraded according to the instruction sequence, and sends an end instruction to the system device after sending the last control instruction in the instruction sequence.

[0147] The system device parses the address code, digital signature, software version and other information in the control instruction, and uses the digital signature to verify the legitimacy of the instruction. If it is legal, the instruction is stored in the communication module area and the instruction is CRC checked. After the check passes, the instruction is executed until the last instruction is executed, and then it automatically restarts to make the new version of the software effective. Then, the system device establishes communication with the model service, passes the latest version information to the device service, and the device service passes the version information to the operation service. Finally, the operation service displays the latest device upgrade information, completing the entire control upgrade process.

[0148] The present application also provides a computer-readable storage medium corresponding to the system upgrade control method provided in the above embodiment. Figure 4 As shown, the computer-readable storage medium shown is a CD 30 on which a computer program (ie, a program product) is stored. When the computer program is run by a processor, the system upgrade control method provided by any of the aforementioned embodiments will be executed.

[0149] It should be noted that examples of the computer-readable storage medium may also include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other optical or magnetic storage media, which are not listed here one by one.

[0150] The computer-readable storage medium provided in the above-mentioned embodiments of the present application and the system upgrade control method provided in the embodiments of the present application are based on the same inventive concept and have the same beneficial effects as the methods adopted, run or implemented by the application programs stored therein.

[0151] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. The present application is intended to cover any modification, use or adaptation of the present application, which follows the general principles of the present application and includes common knowledge or customary techniques in the art that are not disclosed in the present application. The specification and examples are intended to be exemplary only, and the true scope and spirit of the present application are indicated by the following claims.

[0152] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A system upgrade control method, characterized in that: The method comprises: Generate an upgrade request for the device to be upgraded based on the device data of the stored system; Arranging instructions for the upgrade request according to the current processing capability of the device to be upgraded to generate an instruction sequence, wherein the instruction sequence includes a plurality of control instructions that can be recognized by the device to be upgraded; The control instructions in the instruction sequence are sent to the device to be upgraded in sequence to control the device to be upgraded to achieve upgrading.

2. The method according to claim 1, characterized in that The step of generating an upgrade request for the device to be upgraded based on the stored device data of the system includes: Determining device objects included in the system and upgrade versions corresponding to the device objects; According to the device version recorded in the device shadow stored for the device object being lower than the upgrade version, the device object is used as a device to be upgraded, and an upgrade request is generated for the device to be upgraded. The device shadow is a virtual mapping of the device object.

3. The method according to claim 1, characterized in that The step of arranging instructions for the upgrade request according to the current processing capability of the device to be upgraded to generate an instruction sequence includes: Determining an upgrade method suitable for the device to be upgraded according to the current processing capability of the device to be upgraded; The upgrade request is command-organized based on the upgrade method to generate an instruction sequence.

4. The method according to claim 3, characterized in that The step of determining an upgrade method suitable for the device to be upgraded according to the current processing capability of the device to be upgraded includes: Sending a preset number of detection instructions to the device to be upgraded, wherein the detection instructions are used to detect the current processing capability of the device to be upgraded; According to the response returned by the device to be upgraded to any detection instruction, determining that the upgrade mode of the device to be upgraded is a first upgrade mode, where the first upgrade mode is used to indicate that the device to be upgraded selects an active pull mode; According to the fact that the device to be upgraded does not return a response to any detection instruction, it is determined that the upgrade of the device to be upgraded is a second upgrade mode, and the second upgrade mode is used to indicate that the device to be upgraded selects a passive receiving mode.

5. The method according to claim 4, characterized in that The step of arranging instructions for the upgrade request according to the upgrade mode to generate an instruction sequence includes: According to the upgrade mode being the active pull mode, generating an initial instruction sequence according to the upgrade request through a first orchestration model corresponding to the active pull mode; According to the upgrade mode being the passive receiving mode, generating an initial instruction sequence according to the upgrade request through a second orchestration model corresponding to the passive receiving mode; The initial instruction sequence is verified to obtain the instruction sequence, wherein the verification process includes at least one of instruction failure detection, instruction encryption, and instruction sequence verification.

6. The method according to claim 4, characterized in that The step of sending the control instructions in the instruction sequence to the device to be upgraded in sequence includes: According to the upgrade mode being the active pull mode, sending a control instruction to the device to be upgraded according to the instruction sequence, sending the next control instruction to the device to be upgraded according to the execution state returned by the device to be upgraded, and stopping after receiving the end instruction returned by the device to be upgraded; According to the upgrade mode being the passive receiving mode, a control instruction is sent to the device to be upgraded according to the instruction sequence, and an end instruction is sent to the device to be upgraded after the last control instruction in the instruction sequence is sent.

7. A system upgrade control device, characterized in that: The device comprises: An operation service, for generating an upgrade request for the device to be upgraded based on the device data of the stored system, and sending the upgrade request to the communication service; A communication service, used for forwarding the upgrade request to a model service; The model service is used to arrange the upgrade request according to the current processing capability of the device to be upgraded, generate an instruction sequence, wherein the instruction sequence includes multiple control instructions that can be recognized by the device to be upgraded, and send the control instructions in the instruction sequence to the device to be upgraded in sequence to control the device to be upgraded to achieve the upgrade.

8. The device according to claim 7, characterized in that There are multiple connection channels between the communication service and the model service; The communication service is specifically used to determine the communication protocol supported by the device to be upgraded based on the upgrade package information carried in the upgrade request, add the information of the communication protocol to the upgrade request, select a target connection channel corresponding to the device type in the upgrade request from the multiple connection channels, and forward the upgrade request with the communication protocol added to the model service by calling the target connection channel.

9. The device according to claim 7, characterized in that The device also includes: A device service, configured to receive device data reported by the device to be upgraded and forwarded by the model service, and update the device data to a device shadow stored for the device to be upgraded; The device service is further configured to return the device data to the operation service according to a query request of the operation service.

10. The device according to claim 7, characterized in that The model service includes a plurality of executors, each executor using a communication protocol; The model service is specifically used to select a target executor corresponding to the communication protocol carried by the upgrade request from the multiple executors, to arrange instructions for the upgrade request to generate an instruction sequence according to the current processing capability of the device to be upgraded through the target executor, and to send the control instructions in the instruction sequence to the device to be upgraded in sequence through the target executor.

11. The device according to claim 7, characterized in that The device also includes: The monitoring service is used to record the behavior information of the operation service, the model service and the communication service.

12. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.