Air-cooled refrigerator CAN bus multi-node instruction scheduling method and system
By collecting temperature data, calculating the temperature rise slope and deviation in the air-cooled refrigerator, generating emergency sequence pairs, and optimizing bus window scheduling, the problem of untimely and unstable temperature control in the air-cooled refrigerator under sudden heat loads is solved, and the stability and timeliness of multi-node collaborative control are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HANGZHOU JIANGNAN GRP
- Filing Date
- 2026-05-08
- Publication Date
- 2026-07-07
AI Technical Summary
Existing technologies have failed to effectively handle sudden heat load scenarios in air-cooled refrigerators, resulting in untimely and unstable temperature control. In particular, when the freezer compartment is suddenly filled or the door is opened, the temperature is prone to exceed the limit. Furthermore, the traditional fixed-priority message sending method is difficult to map the urgency of thermal operations to the bus priority, affecting the timeliness and stability of multi-node collaborative scheduling.
By collecting the temperatures of the freezer and refrigerator compartments, performing first-order recursive smoothing, calculating the temperature rise slope and deviation, constructing message description items, defining message age and loop mode, generating emergency sequence pairs by combining gate disturbances and over-limit time, prioritizing emergency commands, constructing emergency and normal transmission sequences, setting synchronization and acknowledgment windows, and adjusting the number of slots to optimize bus window scheduling.
It realizes that the thermal urgency of the freezer and refrigerator compartments is directly mapped to the message sending rights, avoiding the squeezing of critical control messages by ordinary periodic messages, improving the stability and timeliness of multi-node collaborative control of air-cooled refrigerators in emergency scenarios, and adapting to load changes.
Smart Images

Figure CN122149147B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of refrigerator control technology, and more specifically, to a method and system for multi-node instruction scheduling on the CAN bus of an air-cooled refrigerator. Background Technology
[0002] The distributed refrigerator temperature control system based on the CAN bus can realize communication and control between temperature acquisition nodes, master control nodes, and execution nodes, and has good scalability and anti-interference capabilities. The parallel dual-evaporator refrigerator switches between freezing and refrigeration cycles through a three-way solenoid valve, which can control the freezer and refrigerator compartments separately to improve temperature control accuracy and energy efficiency. In terms of communication scheduling, traditional CAN networks usually adopt a fixed priority allocation method based on a period, while the system matrix and time window method based on TTCAN shows that message transmission timing, worst-case response time, and jitter can be optimized through scheduling design.
[0003] The existing technology has the following shortcomings:
[0004] Current technologies primarily focus on distributed communication, hot and cold cycle switching, or bus scheduling optimization within refrigerators, without establishing an integrated processing mechanism for sudden heat load scenarios in frost-free refrigerators. Especially during sudden addition of materials to the freezer compartment, door opening disturbances, or load changes in both compartments, existing sequential control strategies are prone to temperature exceeding limits and deviations from the target average temperature. Furthermore, traditional fixed-priority message transmission methods struggle to directly map the urgency of compartment thermal operations to bus priority, potentially leading to emergency cooling switching commands still competing with periodic messages such as display refresh, setting synchronization, and normal status reporting for bus priority. This results in delays in sending critical control actions, impacting the timeliness and stability of multi-node collaborative scheduling.
[0005] To address the above problems, this invention proposes a solution. Summary of the Invention
[0006] In order to overcome the above-mentioned defects of the prior art, embodiments of the present invention provide a method and system for multi-node instruction scheduling of CAN bus in air-cooled refrigerators, so as to solve the problems mentioned in the background art.
[0007] To achieve the above objectives, the present invention provides the following technical solution:
[0008] A method for multi-node instruction scheduling on a CAN bus of an air-cooled refrigerator, comprising the following steps;
[0009] Step S1: Collect the original temperatures of the freezer and refrigerator compartments, convert them to the original temperatures through a temperature mapping function, and perform first-order recursive smoothing to obtain the state temperature; calculate the freezing deviation and refrigeration deviation based on the state temperature, and calculate the freezing temperature rise slope and refrigeration temperature rise slope in combination with the sampling period; establish a message description item, estimate the message bus occupancy time according to the bus transmission rate, define the message age, and set the current loop mode.
[0010] Step S2: Calculate the gate disturbance interval, generate effective disturbance markers by combining the temperature rise slope, calculate the over-limit arrival time, construct an emergency sequence pair by combining the effective disturbance markers and the over-limit arrival time, determine the target loop mode according to the comparison rule of prioritizing the effective disturbance markers and the over-limit arrival time, filter the emergency instruction set, and extract the set of delayable messages from the remaining messages according to the message age and the allowable delay limit.
[0011] Step S3: Calculate the basic period and scheduling period based on the period of the current active message set, determine the emergency window length and confirmation window length, construct an emergency action dependency graph, generate an emergency sending sequence through topology sorting, generate a normal sending sequence through sorting, send a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution confirmation and fast retrieval results in the confirmation window.
[0012] Step S4: Read the execution confirmation delay of the emergency message, calculate the maximum execution confirmation delay, obtain the freezing and cooling trend from the rapid data retrieval results, adjust the number of emergency slots and confirmation slots in the next basic cycle based on the freezing and cooling trend, adjust the number of ordinary slots in the next basic cycle based on the freezing and cooling trend, map the adjusted number of slots to the window length, and reconstruct the bus window scheduling table for the next round.
[0013] In a preferred embodiment, step S1 includes the following:
[0014] Each sampling node performs a temperature mapping operation on the sampled data to obtain the original freezing temperature and the original refrigeration temperature;
[0015] First-order recursive smoothing is performed on the original freezing temperature and the original refrigeration temperature respectively. The state temperature of the current sampling period is obtained by adding the smoothing coefficient to the state temperature of the previous sampling period and the product of the current original temperature and the previous state temperature.
[0016] The freezing temperature rise slope and the refrigeration temperature rise slope are obtained by dividing the difference in state temperature between adjacent sampling periods by the sampling period, respectively.
[0017] Each message description includes the sending node, destination node, message type, data length, generation time, and allowed delay limit;
[0018] The bus occupancy time of a message is estimated based on the ratio of the total bit length of each message to the bus transmission rate.
[0019] For each ordinary message, the message age is defined as the time difference between the current master control time and the message generation time;
[0020] The current cycle mode can be set to freeze cycle, refrigeration cycle, evacuation transition, or shutdown hold.
[0021] In a preferred embodiment, step S2 includes the following:
[0022] The master control node calculates the perturbation interval of the freezer door and the perturbation interval of the refrigerator door based on the difference between the current time and the time of the most recent door event.
[0023] When the door disturbance interval does not exceed the corresponding door disturbance effective duration threshold and the corresponding temperature rise slope is positive, the effective disturbance flag is set to effective; otherwise, it is set to invalid.
[0024] The time to exceed the limit is obtained by dividing the margin between the upper limit temperature of the chamber and the current state temperature by the temperature rise slope. When the temperature rise slope is not positive, it is recorded as infinity.
[0025] Construct emergency pairs of valid disturbance markers and over-limit arrival times and compare them in lexicographical order. First, compare the valid disturbance markers, and give priority to the side with valid disturbance markers. If they are the same, give priority to the side with shorter over-limit arrival times.
[0026] Based on this, the target cycle mode is determined. When the freezing emergency pair takes priority, the cycle is frozen; when the refrigeration emergency pair takes priority, the cycle is refrigerated; if the same, the current cycle mode of the previous sampling period is maintained.
[0027] When the over-limit arrival time corresponding to the target cycle mode does not exceed the emergency over-limit arrival time threshold, the emergency instruction set consists of key messages that can directly drive the corresponding cooling circuit switching and back sampling confirmation; otherwise, the emergency instruction set is empty.
[0028] The set of deferred messages consists of messages that do not belong to the set of urgent instructions and whose current message age has not reached their allowed deferred limit.
[0029] In a preferred embodiment, step S3 includes the following:
[0030] The basic period is obtained by finding the greatest common divisor of the periods of each message in the current active message set, and the scheduling period is obtained by finding the least common multiple.
[0031] The length of the emergency window is determined by the sum of the bus occupancy times of each message in the emergency instruction set, and the length of the acknowledgment window is determined by the sum of the bus occupancy times of the acknowledgment messages corresponding to the messages in the emergency instruction set that need to return execution results.
[0032] Each basic cycle is divided into a synchronization window, an emergency window, a confirmation window, a normal window, and a reserved window;
[0033] Construct an emergency action dependency graph, with the emergency instruction set as the node set and the physical dependencies between cooling actions as the edge set, and perform topological sorting on the dependency graph to obtain the emergency sending sequence;
[0034] For each ordinary message in the set of messages that can be delayed, construct an ordinary sorting pair, which consists of the remaining delay margin and the current message age. Sort the messages according to the rule that the message with the smaller margin is sent first, and the message with the older age is sent first when the margins are the same, to obtain the ordinary transmission sequence.
[0035] The master node sends a synchronization reference frame in the synchronization window, and each node corrects its local time base accordingly.
[0036] The master control node releases messages in the corresponding windows according to the emergency sending sequence and the normal sending sequence, and each execution node returns the execution confirmation and the fast retrieval result in the confirmation window;
[0037] Ordinary messages that have not yet been sent enter the buffer queue, and their age continues to increase.
[0038] In a preferred embodiment, step S4 includes the following:
[0039] The execution confirmation delay is the difference between the time when the corresponding execution confirmation arrives at the master control node and the actual time when the emergency message is sent. The maximum execution confirmation delay is taken as the maximum execution confirmation delay among all emergency messages.
[0040] The freezing and cooling trend is obtained by dividing the difference between the current freezing state temperature and the freezing state temperature of the previous control cycle by the control cycle.
[0041] When the maximum execution confirmation latency exceeds the execution confirmation latency limit and the freezing cooling trend is non-negative, the number of emergency slots increases;
[0042] When the maximum execution confirmation delay is not exceeded and the freezing and cooling trend is negative, the number of emergency slots is reduced;
[0043] All other conditions remain unchanged;
[0044] The number of confirmation slots increases when the maximum execution confirmation delay exceeds the upper limit of execution confirmation delay; otherwise, it remains unchanged.
[0045] The maximum value of the ages of all cached packets in the cache queue at the current moment is determined as the oldest packet age;
[0046] When the oldest message reaches the release age threshold for ordinary messages and the freezing and cooling trend is negative, the number of ordinary slots increases;
[0047] When the freezing and cooling trend is non-negative, the number of ordinary tanks decreases; otherwise, it remains unchanged.
[0048] Multiply the adjusted number of emergency slots, confirmation slots, and normal slots by the length of a single slot to map them to the corresponding window length.
[0049] A multi-node command scheduling system for a CAN bus in an air-cooled refrigerator includes: a status construction module, an emergency assessment module, a window scheduling module, and a closed-loop correction module, with signal connections between the modules;
[0050] State construction module: Collects the raw temperatures of the freezer and refrigerator compartments, converts them to raw temperatures through a temperature mapping function, and performs first-order recursive smoothing to obtain the state temperature; calculates the freezing deviation and refrigeration deviation based on the state temperature, and calculates the freezing temperature rise slope and refrigeration temperature rise slope in combination with the sampling period; establishes message description items, estimates the message bus occupancy time according to the bus transmission rate, defines the message age, and sets the current loop mode;
[0051] Emergency assessment module: Calculates the gate disturbance interval, generates effective disturbance markers by combining the temperature rise slope, calculates the over-limit arrival time, constructs an emergency sequence pair by combining the effective disturbance markers and the over-limit arrival time, determines the target loop mode according to the comparison rule of prioritizing effective disturbance markers and over-limit arrival time, filters the emergency instruction set, and extracts the set of delayable messages from the remaining messages based on message age and allowable delay limit;
[0052] Window scheduling module: Calculates the basic period and scheduling period based on the period of the current active message set, determines the emergency window length and confirmation window length, constructs an emergency action dependency graph, generates an emergency sending sequence through topology sorting, generates a normal sending sequence through sorting, the master node sends a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution confirmation and fast retrieval results in the confirmation window;
[0053] Closed-loop correction module: Reads the execution confirmation delay of emergency messages, calculates the maximum execution confirmation delay, obtains the freezing and cooling trend from the rapid data retrieval results, adjusts the number of emergency slots and confirmation slots in the next basic cycle based on the freezing and cooling trend, adjusts the number of ordinary slots in the next basic cycle based on the freezing and cooling trend, maps the adjusted number of slots to the window length, and reconstructs the bus window scheduling table for the next round.
[0054] The technical effects and advantages of the multi-node command scheduling method for the CAN bus of an air-cooled refrigerator according to the present invention are as follows:
[0055] The system transforms temperature deviation, temperature rise rate, door opening disturbance, and predicted over-limit results into bus scheduling criteria, enabling the thermal urgency of the freezer or refrigerator compartment to be directly mapped to message priority. This avoids sending messages based solely on fixed cycles or priorities. By setting synchronization reference windows, emergency exclusive windows, critical feedback windows, and ordinary arbitration windows, emergency cooling commands, execution confirmations, and ordinary services are processed in a hierarchical manner in terms of transmission timing. This reduces the probability of critical control messages being squeezed out by ordinary periodic messages. Through iterative correction of critical response delays, compartment recovery status, and ordinary message backlog, the scheduling rules can be continuously adjusted according to dynamic operating conditions, making it more suitable for multi-node collaborative control of frost-free refrigerators in scenarios such as door opening, refilling, and sudden load changes. Attached Figure Description
[0056] Figure 1 This is a schematic diagram of a multi-node instruction scheduling method and system flow for a CAN bus in an air-cooled refrigerator according to the present invention.
[0057] Figure 2 This is a timing diagram illustrating bus window scheduling and multi-node interaction. Detailed Implementation
[0058] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0059] Example: Please refer to Figures 1-2 As shown, this invention discloses a multi-node instruction scheduling method for a CAN bus in an air-cooled refrigerator, comprising the following steps:
[0060] Step S1: Collect the original temperatures of the freezer and refrigerator compartments, convert them to the original temperatures through a temperature mapping function, and perform first-order recursive smoothing to obtain the state temperature; calculate the freezing deviation and refrigeration deviation based on the state temperature, and calculate the freezing temperature rise slope and refrigeration temperature rise slope in combination with the sampling period; establish a message description item, estimate the message bus occupancy time according to the bus transmission rate, define the message age, and set the current loop mode.
[0061] Step S2: Calculate the gate disturbance interval, generate effective disturbance markers by combining the temperature rise slope, calculate the over-limit arrival time, construct an emergency sequence pair by combining the effective disturbance markers and the over-limit arrival time, determine the target loop mode according to the comparison rule of prioritizing the effective disturbance markers and the over-limit arrival time, filter the emergency instruction set, and extract the set of delayable messages from the remaining messages according to the message age and the allowable delay limit.
[0062] Step S3: Calculate the basic period and scheduling period based on the period of the current active message set, determine the emergency window length and confirmation window length, construct an emergency action dependency graph, generate an emergency sending sequence through topology sorting, generate a normal sending sequence through sorting, send a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution confirmation and fast retrieval results in the confirmation window.
[0063] Step S4: Read the execution confirmation delay of the emergency message, calculate the maximum execution confirmation delay, obtain the freezing and cooling trend from the rapid data retrieval results, adjust the number of emergency slots and confirmation slots in the next basic cycle based on the freezing and cooling trend, adjust the number of ordinary slots in the next basic cycle based on the freezing and cooling trend, map the adjusted number of slots to the window length, and reconstruct the bus window scheduling table for the next round.
[0064] In step S1, the raw temperatures of the freezer and refrigerator compartments are collected, converted to raw temperatures using a temperature mapping function, and then subjected to first-order recursive smoothing to obtain the state temperature. Based on the state temperature, the freezing deviation and refrigeration deviation are calculated, and the freezing temperature rise slope and refrigeration temperature rise slope are calculated in conjunction with the sampling period. A message description item is established, the message bus occupancy time is estimated based on the bus transmission rate, the message age is defined, and the current loop mode is set. Specific content includes:
[0065] This embodiment of the air-cooled refrigerator includes a main control node, a freezer sampling node, a refrigerator sampling node, a compressor execution node, a valve position execution node, a fan execution node, and a door display node. The main control node is used for status aggregation, mode determination, and scheduling table generation. The freezer sampling node collects freezer temperature data, the refrigerator sampling node collects refrigerator temperature data, the compressor execution node executes compressor start / stop or operation hold commands, the valve position execution node executes refrigeration circuit switching commands, the fan execution node executes evaporator fan operation commands, and the door display node reports door status and receives display updates. With the synchronization command set, each node is connected to the same CAN bus. The master control node maintains a unified node table, status table, command table and buffer table. The original temperature of the freezer compartment is recorded as the original freezing temperature, the original temperature of the refrigerator compartment is recorded as the original refrigeration temperature, the smoothed temperature is recorded as the freezing state temperature and the refrigeration state temperature, the corresponding set temperature is recorded as the freezing set temperature and the refrigeration set temperature, the corresponding upper limit temperature is recorded as the freezing upper limit temperature and the refrigeration upper limit temperature, the current operating mode is recorded as the current loop mode, the set of control messages to be sent is recorded as the command queue, and the set of ordinary messages to be sent later is recorded as the buffer queue.
[0066] The frozen and refrigerated sampling nodes first acquire the chamber temperature data and then perform a temperature mapping operation on the sampling voltage or sampling code. The purpose of the temperature mapping operation is to convert the heterogeneous sampling results on the node side into chamber temperature results that the master control node can directly compare. The formula can be expressed as: ;in, For the first The original freezing temperature for each sampling period, This is a freezing temperature mapping function. For the first The amount of frozen samples per sampling cycle;
[0067] Calculate the first The original refrigerated temperature for each sampling period can be expressed by the formula: ;in, For the first The original refrigerated temperature for each sampling period, This is a mapping function for refrigeration temperature. For the first Refrigerated sampling volume per sampling cycle;
[0068] It should be noted that the freezing temperature mapping function and the refrigeration temperature mapping function are not abstract functions, but rather temperature conversion rules used to convert the sampled quantities output by the temperature acquisition nodes into the chamber temperature results.
[0069] Specifically, a mapping function can be constructed based on the characteristic curve of the temperature sensor used, the parameter relationship of the sampling circuit, and a pre-established temperature conversion lookup table. The temperature conversion lookup table can be generated from the temperature sensor calibration data or factory test data. After the node reads the current sample quantity, the corresponding temperature can be directly obtained by using a lookup table algorithm. When the current sample quantity is between two adjacent reference points, an interval interpolation algorithm can be further used to obtain the temperature.
[0070] Furthermore, the mapping function is constructed by establishing a correspondence between the sampling quantity and temperature based on the calibration sample of the target temperature sensor. This correspondence is then solidified and stored in the form of a lookup table, piecewise interpolation rules, or fitting parameter sets. For the sampling quantity that falls within the effective sampling range, the temperature value is output according to the corresponding conversion rules.
[0071] Because the initial temperature fluctuates briefly due to the opening of the chamber door, heat exchange, and transient jitter at the sampling nodes, a first-order recursive smoothing process is performed on both the initial freezing and refrigeration temperatures to avoid directly treating these transient disturbances as emergency limit exceedance risks. The purpose of this operation is to obtain a state temperature that better reflects the continuous change characteristics of the chamber's thermal state. The formula can be expressed as: ;in, For the first The frozen state temperature for each sampling period, The temperature of the frozen state in the previous sampling period. The original freezing temperature for the current sampling period. This is the freezing smoothness coefficient; ;in, For the first The refrigerated temperature for each sampling period. The temperature of the refrigerated state in the previous sampling period. The original refrigeration temperature for the current sampling period. This is the smoothness coefficient for refrigeration.
[0072] The actual temperature of the refrigerator compartment is compared with the set temperature to identify freezing deviation and refrigeration deviation. The purpose of this operation is to use a uniform difference to characterize the degree to which the current compartment deviates from the target state. The formula can be expressed as: ;in, For the first Freezing deviation per sampling period This is the current freezing temperature. Set the temperature for freezing; ;in, For the first Refrigeration deviation for each sampling period This is the current refrigerated temperature. Set the temperature for refrigeration;
[0073] The chamber temperature rise slope is calculated using the state temperatures of adjacent sampling periods. This operation aims to distinguish between two operating conditions: a relatively stable temperature that is already high, and a continuously rising temperature. The formula can be expressed as: ;in, For the first The freezing temperature rise slope for each sampling period, This is the current freezing temperature. This is the temperature of the previous freezing state. The sampling period; ;in, For the first The slope of refrigeration temperature rise in each sampling period. This is the current refrigerated temperature. This is the temperature of the previous refrigerated state. The sampling period;
[0074] While forming the container state framework, the command framework is established, including the sending node, destination node, message type, data length, generation time, and allowable delay limit. The formula can be expressed as: ;in, For the first Message description item, For the sending node, For the destination node, For message type, For data length, For the generation time, To allow for the extension of the limit;
[0075] The message categories are uniformly divided into temperature reporting, command execution, execution confirmation, rapid data retrieval, display refresh, setting synchronization, and normal status.
[0076] Estimate the duration of various messages on the bus. The purpose of this operation is to enable subsequent steps to allocate window resources based on the actual duration of the messages rather than abstract priorities. The formula can be expressed as: ;in, For the first Bus occupancy time of each message For the first The total bit length corresponding to each message. This refers to the bus transmission rate;
[0077] It should be noted that, The length of the message control field, the identifier field, the data field, and the check field is determined by the protocol layer.
[0078] Define a message age for each ordinary message. The purpose of this operation is to ensure that ordinary messages, while potentially delayed, will not be delayed indefinitely. The formula can be expressed as: ;in, For a moment The corresponding number Message age, At the current master control moment, For the first The message generation time;
[0079] Establish the loop pattern framework required for subsequent pattern determination; the current loop pattern is uniformly denoted as... Its values include freezing cycle, refrigeration cycle, evacuation transition and shutdown hold. Subsequent steps, after comparing the urgency of the freezer and refrigerator compartments, can directly map the comparison results into an executable cycle mode.
[0080] Through the above construction method, this step does not only complete the conventional establishment of a multi-node control framework for air-cooled refrigerators, but also establishes a unified association between compartment temperature status, message attributes, and bus timing in advance. This allows the originally scattered sampling information, control information, and communication information to be incorporated into the same technical framework for description. The freezing state temperature, refrigeration state temperature, message occupancy time, message age, and current cycle mode are placed in the same analysis basis in advance. This provides a unified basis that can be calculated, compared, and scheduled for subsequent direct triggering of command scheduling changes based on compartment thermal status. Subsequent steps no longer need to repeatedly establish mapping relationships between the thermal control layer and the bus communication layer, but can directly complete emergency identification, command screening, and time window scheduling around the same set of state variables, thus giving the entire solution a clear integrity and continuity.
[0081] In step S2, the gate disturbance interval is calculated, and an effective disturbance marker is generated based on the temperature rise slope. The over-limit arrival time is calculated, and the effective disturbance marker and the over-limit arrival time are constructed into an emergency sequence pair. The target loop mode is determined according to the comparison rule of prioritizing the effective disturbance marker and the over-limit arrival time. The emergency instruction set is filtered, and the set of delayable messages is extracted from the remaining messages based on the message age and the allowable delay limit. The specific contents include:
[0082] To determine whether a door disturbance is still within its effective range, the door display node records the most recent door trigger time after detecting a door event, and the master control node calculates the door disturbance interval. The purpose of this operation is to limit the occurrence of sudden heat loads to a valid interval following the door event. The formula can be expressed as: ;in, For the first The interval of the freezer door disturbance in each sampling period For the current moment, This refers to the most recent incident involving the freezing of the door. ;in, For the first The interval of cold storage door disturbance in each sampling period For the current moment, This refers to the most recent incident involving the cold storage facility;
[0083] After obtaining the door disturbance interval, the door disturbance interval is further combined with the chamber temperature rise slope to form an effective door disturbance mark. The purpose of this operation is to exclude cases where door events have occurred long ago but still retain old event marks. The formula can be expressed as: ;in, For the first Frozen effective perturbation markers for each sampling period, This is the interval for disturbing the freezer door. The threshold for the effective duration of disturbance to the freezer door. This represents the slope of the freezing temperature rise. ;in, For the first Effective disturbance markers for refrigeration in each sampling period, For the disturbance interval of the refrigerator door, The effective duration threshold for disturbance of the refrigerator door. This represents the slope of the refrigeration temperature rise.
[0084] In a sudden material feeding scenario, simply knowing that the temperature is rising is insufficient to determine whether the bus should relinquish its priority transmission right. Calculating the chamber's over-limit arrival time is used to characterize how long it will take for the chamber to reach its upper temperature limit under the current temperature rise trend. The purpose of this operation is to convert thermal risk into a directly sortable time quantity, which can be expressed by the formula: ;in, For the first The freezing limit arrival time for each sampling period, This is the upper limit temperature for freezing. This is the current freezing temperature. The slope of the freezing temperature rise; when At that time, It is denoted as infinity; ;in, For the first The refrigeration over-limit arrival time for each sampling period, This is the upper limit temperature for refrigeration. This is the current refrigerated temperature. The slope of the refrigeration temperature rise; when At that time, It is denoted as infinity;
[0085] Constructing urgent priority pairs for each chamber and comparing them lexicographically aims to perform an actionable priority ordering using two parameters, which can be expressed as: ;in, For the first Frozen emergency sequence pairs for each sampling period For effective perturbation markers during freezing, This refers to the time when freezing exceeds the limit. ;in, For the first Refrigerated emergency sequence pairs for each sampling period For effective disturbance marking in refrigeration, For refrigerated items exceeding the arrival limit;
[0086] The comparison rule is as follows: first, compare the valid disturbance markers, and the side with the valid disturbance markers takes priority; when the valid disturbance markers on both sides are the same, then compare the arrival time of exceeding the limit, and the side with the shorter arrival time of exceeding the limit takes priority. Through this rule, the sudden heat load caused by opening the door to add materials can be directly distinguished from ordinary fluctuations, and an executable priority order can be made between the freezer and the refrigerator.
[0087] After completing the chamber sequencing, the sequencing results need to be mapped to the current target loop mode. The purpose of this operation is to allow the master control node to directly convert the emergency chamber sequencing into the control direction of the compressor, valve position, and fan. The formula can be expressed as: ;in, For the first The target cyclic pattern for each sampling period For cryogenic emergency sequence pairs, For refrigerated emergency pairs, This indicates the priority relationship according to the aforementioned comparison rules. This represents the current loop mode from the previous sampling period;
[0088] The target loop mode alone cannot be directly used for bus scheduling. Further identification is needed to determine which messages in this round must immediately enter the emergency queue. Since the core of emergency scheduling is not to elevate all cryogenically related messages to the highest priority, but rather to prioritize only messages that can directly drive cryogenic loop switching and retrieval confirmation, an emergency instruction set is constructed only for critical actions in the cryogenic loop mode. The purpose of this operation is to control the size of the emergency queue and prevent non-critical messages from filling the emergency window. The formula can be expressed as: ;in, For the first A set of emergency instructions for each sampling period. For compressor control messages, For valve position switching messages, For wind turbine control messages, To quickly retrieve messages, To execute the confirmation message, For emergency limit exceedance arrival time threshold;
[0089] The set of deferred messages is separated from the instruction queue. Whether a message can be deferred is not determined by a fixed category, but by two parameters: message age and the allowed delay limit. The purpose of this operation is to ensure that ordinary messages can be deferred but will not be suppressed indefinitely due to an emergency. The formula can be expressed as: ;in, For the first The set of deferred messages for each sampling period. For the current moment, the first Message age, For the first Allowable delay limits for messages, A set of emergency instructions;
[0090] By combining the above processing method with the door disturbance state to form a two-parameter emergency criterion, the arrival time of the compartment exceeding the limit is made more scenario-specific and engineering-feasible in determining whether the compartment has truly entered an emergency state that requires preemption of the bus. Furthermore, this step does not stop at the thermal level to give an abstract priority result, but continues to transform the priority result into a target cycle mode, an emergency instruction set, and a set of deferred messages. This completes the key transformation from state judgment to scheduling object generation, and directly refines the compartment risk into a set of message and mode results that can be operated by subsequent bus scheduling. This allows subsequent steps to organize scheduling directly around the emergency instruction set, avoiding the problem in the existing technology that although it is determined that priority cooling is needed, the bus layer still cannot adjust the transmission order in time.
[0091] In step S3, the basic period and scheduling period are calculated based on the period of the current active message set, the emergency window length and acknowledgment window length are determined, an emergency action dependency graph is constructed, an emergency transmission sequence is generated through topology sorting, a normal transmission sequence is generated through sorting, the master node sends a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution acknowledgment and fast retrieval results in the acknowledgment window. Specific content includes:
[0092] After the target cycle mode, emergency instruction set, and deferred message set have been formed in step S2, this step begins to actually schedule the message transmission in the CAN bus. An application layer bus window scheduling table is established at the master node, and the master node periodically sends synchronization reference frames. Each node sends the corresponding message according to a unified basic period, window boundary, and slot release rules. In an emergency cooling scenario, if the free competition mode of ordinary CAN is still used, even if the priority of emergency messages is increased, they may still be affected by the release time and retransmission behavior of other messages in the same period. However, by putting the key instructions into a predefined time window, the question of whether to send first becomes the question of whether to send within the window, thereby improving the determinism of scheduling.
[0093] The basic period and scheduling period are established based on the current set of active messages. The purpose of this operation is to provide a unified time scale for the entire bus window scheduling table. The formula can be expressed as: ;in,
[0094] For the basic cycle, The period of each message in the current active message set. This represents the operation of the greatest common divisor; ;in, For the scheduling period, The period of each message in the current active message set. Represents the least common multiple operation;
[0095] The basic cycle is used to divide a single scheduling unit, and the scheduling cycle is used to describe a complete repeated scheduling round. In subsequent steps, any window length, slot location, and back sampling confirmation time are all based on the basic cycle as the smallest scheduling unit.
[0096] The total duration of the current round of emergency command sets and acknowledgment command sets is calculated. The purpose of this operation is to ensure that the time window length is directly determined by the current packet occupancy, rather than by an empirical constant. The formula can be expressed as: ;in, For the first The length of the emergency window within a basic cycle, This is the current set of emergency instructions. For the first Bus occupancy time for each message; ;in, For the first The length of the confirmation window within a basic cycle. This is the current set of confirmation instructions. For the first Bus occupancy time for each acknowledgment message;
[0097] It should be noted that the confirmation instruction set The results are mapped one by one from the messages that need to return execution results in the emergency command set. The compressor control message corresponds to the compressor execution confirmation, the valve position switching message corresponds to the valve position execution confirmation, the fan control message corresponds to the fan execution confirmation, and the rapid temperature recovery message corresponds to the rapid temperature recovery return. The confirmation window length and the emergency control window length are not designed separately, but are naturally derived from the same round of emergency actions.
[0098] To form a complete bus window scheduling table, it is also necessary to define synchronization windows, normal windows, and reserved windows. The purpose of this operation is to ensure that emergency windows do not exist in isolation, but rather share the same scheduling framework with normal and rollback messages. The formula can be expressed as: ;in, For the basic cycle, For the synchronization window length, For the emergency window length, To confirm the window length, For normal window length, To preserve window length;
[0099] It should be noted that the synchronization window is used by the master node to broadcast the synchronization reference frame, the emergency window is used to send the current emergency instruction set, the acknowledgment window is used to receive execution acknowledgments and fast retrieval results, the normal window is used to send normal messages in the set of deferred messages, and the reserved window is used to handle occasional retransmissions or idle backoffs before the next cycle. Through this structure, emergency instructions and normal instructions no longer share the same transmission time period, thereby avoiding the situation where emergency cooling instructions are squeezed out by normal cycle messages.
[0100] Within the emergency window, a topological sort is performed according to the dependency order of the actual cooling actions. Because there are natural action dependencies between the compressor, valve position, and fan in a frost-free refrigerator, an emergency action dependency graph needs to be constructed first. The purpose of this operation is to transform physical action dependencies into schedulable sequence dependencies, which can be expressed as: ;in, For the first Emergency action dependency graph for each basic cycle This is the current set of emergency instructions. For emergency action dependency edge set;
[0101] For the refrigeration cycle, the dependency edge set satisfies the following conditions: compressor control message precedes valve position switching message, valve position switching message precedes fan control message, fan control message precedes fast recovery message, and fast recovery message precedes execution confirmation aggregation message.
[0102] The emergency dispatch sequence is obtained by performing a topological sort on the dependency graph. The purpose of this operation is to automatically generate the order of emergency actions from graph relationships, which can be expressed as: ;in, For the first An emergency transmission sequence for each basic cycle, For topological sorting operators, This is an emergency action dependency graph;
[0103] Within the normal window, the order of normal messages is no longer arranged according to a fixed category, but rather sorted using two parameters: expiration order and message age. Although normal messages are not urgent, they still have time limits. Simply queuing by category cannot accommodate both near-expiration and long-awaited normal messages. Therefore, a normal sorting pair is constructed for normal messages. The purpose of this operation is to ensure that the sending order within the normal window also has executable time-limited logic. The formula can be expressed as: ;in, For the first Within the first basic cycle A normal sorting pair of ordinary messages, This is the allowed delay limit for the message. The current message age;
[0104] The comparison rule within a normal window is: first compare the remaining quantity, then compare the quantity that can be deferred. The message with the smaller margin is sent first; when the margins are the same, the message age is compared, and the older message is sent first. This yields the normal transmission sequence, which can be expressed by the formula: ;in, For the first A normal transmission sequence with one basic period, For sorting operators according to ordinary sort order, For a set of messages that can be delayed;
[0105] To ensure that each node transmits at the same time within its respective window, the master node sends a synchronization reference frame within the synchronization window. Each node then adjusts its local time base based on the synchronization reference frame. The purpose of this operation is to ensure that the window boundaries remain consistent across the entire network. This can be expressed as: ;in, For the first The node at the th The time base correction for each fundamental period, For the reference time in the synchronization reference frame, For the first The local time of each node; ;in, For the first The local time after node correction Local time This is the time base correction amount;
[0106] The master node can be set to Release emergency commands in the emergency window, press Ordinary messages are released in the normal window; while each execution node returns its own execution confirmation and fast retrieval result in the confirmation window. If a normal message is not sent in the current normal window, it enters the buffer queue, keeping its original generation time unchanged, and its message age continues to increase.
[0107] Through the above scheduling method, a bus window scheduling table is actively constructed based on the target cycle mode and the emergency command set. Synchronization reference, emergency control, execution confirmation, and ordinary messages are placed into different time windows. Within the emergency window, they are further organized according to action dependencies and sending order. In this step, the thermal status of the compartment is specifically implemented for the first time as the window resource occupation method and message release order at the bus level. This truly transforms the hot and cold priority relationship that was originally in the control logic into an executable multi-node command scheduling process. Through time window isolation and dependency sorting, emergency cooling commands are given a deterministic priority sending opportunity. At the same time, it is ensured that execution confirmation and rapid retrieval can return in a timely manner under the same scheduling framework. This fundamentally alleviates the problem of emergency control commands being squeezed out by ordinary periodic messages and the unstable response of critical action links in the existing technology.
[0108] In step S4, the execution confirmation delay of the emergency message is read, the maximum execution confirmation delay is calculated, and the freezing and cooling trend is obtained from the rapid data retrieval results. Based on the freezing and cooling trend, the number of emergency slots and confirmation slots in the next basic cycle are adjusted, and the number of ordinary slots in the next basic cycle is also adjusted. The adjusted number of slots is mapped to the window length, and the bus window scheduling table for the next round is reconstructed. Specific details include:
[0109] After completing one round of emergency scheduling, the bus window scheduling table for the next round is modified based on the actual execution results of this round. The window iteration rules are constructed using two parameters: execution confirmation delay and chamber cooling trend. The ordinary message release rules are constructed using two parameters: buffer age and cooling trend.
[0110] The execution confirmation results of the emergency action are read from the confirmation window, and the maximum execution confirmation delay for this round is calculated. The purpose of this operation is to determine whether the current confirmation window is sufficient to cover the actual execution feedback process. The formula can be expressed as: ;in, For the first Within the first basic cycle The execution confirmation delay of an emergency message To correspond to the time when the confirmation arrives at the master node, This refers to the actual time the emergency message was sent. ;in, For the first The maximum execution confirmation latency for each basic cycle This is the current set of emergency instructions. To accommodate the corresponding execution confirmation delay;
[0111] The execution confirmation delay alone is insufficient to determine the effectiveness of the emergency action. Therefore, it is also necessary to read the cooling trend of the freezer after execution from the rapid data recovery results. The purpose of this operation is to determine whether the current emergency action has caused the freezer to transition from a heating state to a cooling state. The formula can be expressed as: ;in, For the first The freezing and cooling trend of each control cycle This is the current freezing temperature. This is the freezing temperature from the previous control cycle. To control the cycle; when This indicates that the freezer compartment has started to cool down. This indicates that the freezer compartment is still heating up or has not yet cooled down significantly;
[0112] Based on the maximum execution confirmation latency and the cooling trend, it is determined whether the emergency window and confirmation window should be expanded in the next round. The purpose of this operation is to ensure that the adjustment logic is clear and easy to implement. The formula can be expressed as: ;in, The number of emergency slots for the next basic cycle. This represents the number of emergency slots in the current basic cycle. This represents the current maximum execution confirmation delay. To implement the confirmation delay limit, This indicates a trend towards freezing and cooling. ;in, The number of slots to be confirmed for the next basic cycle. This represents the number of confirmed slots in the current basic cycle. This represents the current maximum execution confirmation delay. To set the upper limit for confirmation delay;
[0113] Based on the above rules, when the emergency action feedback is slow and the freezer compartment has not yet dropped, the number of emergency slots and the number of confirmation slots are increased simultaneously; when the confirmation feedback has met the requirements and the freezer compartment has begun to drop, the number of emergency slots is reduced, and resources are gradually returned to the normal windows. Since the emergency window length and the confirmation window length are determined by the emergency message occupation and the confirmation message occupation in step S3, respectively, this step can directly map the number of slots to the window length of the next round, and then recalculate the bus window scheduling table.
[0114] After completing the emergency resource iteration, it is also necessary to address the issue of long-term delays in ordinary packets. A release rule for ordinary packets is constructed using two parameters: the age of the oldest packet in the cache queue and the freezing / cooling trend. The purpose of this operation is to ensure that ordinary packets are only refilled when the emergency process no longer worsens, and to prioritize refilling ordinary packets closest to their expiration date. The formula can be expressed as: ;in, For the first The oldest message age in the basic cycle cache queue For the current cache queue, For the first The age of the cached message at the current moment;
[0115] After obtaining the oldest message age, the normal window release threshold is executed according to the following rules, which can be expressed by the formula: ;in, This represents the number of regular slots for the next basic cycle. This represents the number of regular slots in the current basic cycle. The age of the oldest message in the cache queue. To remove age thresholds for regular messages, This indicates a trend towards freezing and cooling.
[0116] The scheduling logic described above can be implemented as follows: as long as the freezer has not yet entered the fallback state, the emergency window is prioritized and the normal window is not actively expanded; once the freezer has entered the fallback state, the age of the oldest message in the cache queue is used to determine whether to add a normal slot so as to backfill normal messages that are close to the time limit, thus unifying the priority of emergency services and the bounded waiting of normal services into the same iterative framework.
[0117] Furthermore, the new number of emergency slots, confirmed slots, and normal slots are remapped to the window length of the next basic cycle. The purpose of this operation is to transform the discrete slot update results into continuous time window results, which can be expressed by the formula: ; ; ;in, The length of the emergency window for the next basic cycle. The number of emergency slots for the next basic cycle. The length of a single slot. The length of the confirmation window for the next basic cycle. The number of slots to be confirmed for the next basic cycle. The length of a single slot. The normal window length for the next basic cycle. This represents the number of regular slots for the next basic cycle. The length of a single slot;
[0118] Subsequently, the master node, based on the updated... , and Reconstruct the bus window scheduling table for the next round, and load the target loop mode, emergency instruction set, and deferred message set recalculated in step S2 into the new matrix. If the freezing over-limit arrival time has increased significantly and the refrigeration over-limit arrival time has begun to shorten, the cycle can be naturally switched to refrigeration in the next round of step S2. If the freezing door disturbance has ended and the freezing cooling trend remains negative, the normal window will be continuously released to gradually empty the buffer queue.
[0119] Through the aforementioned iterative correction method, the execution confirmation delay, the cooling trend, and the waiting status of ordinary messages in the buffer queue are further incorporated into the next round of scheduling decisions. This allows bus window resources to be continuously adjusted based on actual operating results, establishing a closed-loop scheduling correction mechanism oriented towards the actual cooling process: when emergency action feedback is insufficient, the emergency window and confirmation window are automatically strengthened; when the freezer has entered a fallback state, the ordinary window is released in a bounded manner, taking into account the long-term stable operation of both emergency and routine services. The effectiveness of scheduling is elevated from a simple judgment of transmission completion to a dynamic correction basis that combines execution feedback and changes in thermal state. This enables the entire solution to continuously adapt to different thermal load disturbances, different node loads, and different message backlog states, avoiding the problem in existing technologies where scheduling strategies, once set, are difficult to adaptively adjust to changes in actual operating conditions.
[0120] This invention discloses a multi-node command scheduling system for a CAN bus in an air-cooled refrigerator, comprising: a state construction module, an emergency assessment module, a window scheduling module, and a closed-loop correction module, with signal connections between the modules;
[0121] State construction module: Collects the raw temperatures of the freezer and refrigerator compartments, converts them to raw temperatures through a temperature mapping function, and performs first-order recursive smoothing to obtain the state temperature; calculates the freezing deviation and refrigeration deviation based on the state temperature, and calculates the freezing temperature rise slope and refrigeration temperature rise slope in combination with the sampling period; establishes message description items, estimates the message bus occupancy time according to the bus transmission rate, defines the message age, and sets the current loop mode;
[0122] Emergency assessment module: Calculates the gate disturbance interval, generates effective disturbance markers by combining the temperature rise slope, calculates the over-limit arrival time, constructs an emergency sequence pair by combining the effective disturbance markers and the over-limit arrival time, determines the target loop mode according to the comparison rule of prioritizing effective disturbance markers and over-limit arrival time, filters the emergency instruction set, and extracts the set of delayable messages from the remaining messages based on message age and allowable delay limit;
[0123] Window scheduling module: Calculates the basic period and scheduling period based on the period of the current active message set, determines the emergency window length and confirmation window length, constructs an emergency action dependency graph, generates an emergency sending sequence through topology sorting, generates a normal sending sequence through sorting, the master node sends a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution confirmation and fast retrieval results in the confirmation window;
[0124] Closed-loop correction module: Reads the execution confirmation delay of emergency messages, calculates the maximum execution confirmation delay, obtains the freezing and cooling trend from the rapid data retrieval results, adjusts the number of emergency slots and confirmation slots in the next basic cycle based on the freezing and cooling trend, adjusts the number of ordinary slots in the next basic cycle based on the freezing and cooling trend, maps the adjusted number of slots to the window length, and reconstructs the bus window scheduling table for the next round.
[0125] The above formulas are all dimensionless calculations. The formulas are derived from software simulations based on a large amount of collected data to obtain the most recent real-world results. The preset parameters in the formulas are set by those skilled in the art according to the actual situation.
[0126] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, in the form of a computer program product.
[0127] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and inventive constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0128] In addition, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.
[0129] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0130] In conclusion, the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for multi-node instruction scheduling on a CAN bus of an air-cooled refrigerator, characterized in that, Includes steps; Step S1: Collect the original temperatures of the freezer and refrigerator compartments, convert them to the original temperatures through a temperature mapping function, and perform first-order recursive smoothing to obtain the state temperature; calculate the freezing deviation and refrigeration deviation based on the state temperature, and calculate the freezing temperature rise slope and refrigeration temperature rise slope in combination with the sampling period; establish a message description item, estimate the message bus occupancy time according to the bus transmission rate, define the message age, and set the current loop mode. Step S2: Calculate the gate disturbance interval, generate effective disturbance markers by combining the temperature rise slope, calculate the over-limit arrival time, construct an emergency sequence pair by combining the effective disturbance markers and the over-limit arrival time, determine the target loop mode according to the comparison rule of prioritizing the effective disturbance markers and the over-limit arrival time, filter the emergency instruction set, and extract the set of delayable messages from the remaining messages according to the message age and the allowable delay limit. Step S3: Calculate the basic period and scheduling period based on the period of the current active message set, determine the emergency window length and confirmation window length, construct an emergency action dependency graph, generate an emergency sending sequence through topology sorting, generate a normal sending sequence through sorting, send a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution confirmation and fast retrieval results in the confirmation window. Step S4: Read the execution confirmation delay of the emergency message, calculate the maximum execution confirmation delay, obtain the freezing and cooling trend from the rapid data retrieval results, adjust the number of emergency slots and confirmation slots in the next basic cycle based on the freezing and cooling trend, adjust the number of ordinary slots in the next basic cycle based on the freezing and cooling trend, map the adjusted number of slots to the window length, and reconstruct the bus window scheduling table for the next round.
2. The method for multi-node instruction scheduling of a CAN bus in a frost-cooled refrigerator according to claim 1, characterized in that, Each sampling node performs a temperature mapping operation on the sampled data to obtain the original freezing temperature and the original refrigeration temperature; First-order recursive smoothing is performed on the original freezing temperature and the original refrigeration temperature respectively. The state temperature of the current sampling period is obtained by adding the smoothing coefficient to the state temperature of the previous sampling period and the product of the current original temperature and the previous state temperature. The freezing temperature rise slope and the refrigeration temperature rise slope are obtained by dividing the difference in state temperature between adjacent sampling periods by the sampling period.
3. The method for multi-node instruction scheduling of a CAN bus in a frost-free refrigerator according to claim 2, characterized in that, Each message description includes the sending node, destination node, message type, data length, generation time, and allowed delay limit; The bus occupancy time of a message is estimated based on the ratio of the total bit length of each message to the bus transmission rate. For each ordinary message, the message age is defined as the time difference between the current master control time and the message generation time; The current cycle mode can be set to freeze cycle, refrigeration cycle, evacuation transition, or shutdown hold.
4. The method for multi-node instruction scheduling of a CAN bus in a wind-cooled refrigerator according to claim 1, characterized in that, The master control node calculates the perturbation interval of the freezer door and the perturbation interval of the refrigerator door based on the difference between the current time and the time of the most recent door event. When the door disturbance interval does not exceed the corresponding door disturbance effective duration threshold and the corresponding temperature rise slope is positive, the effective disturbance flag is set to effective; otherwise, it is set to invalid. The time to exceed the limit is obtained by dividing the margin between the upper limit temperature of the chamber and the current state temperature by the temperature rise slope. When the temperature rise slope is not positive, it is recorded as infinity. Construct emergency pairs of valid disturbance markers and over-limit arrival times and compare them in lexicographical order. First, compare the valid disturbance markers, and give priority to the side with valid disturbance markers. If they are the same, give priority to the side with shorter over-limit arrival times. Based on this, the target cycle mode is determined: when the frozen emergency sequence pair takes priority, it is a frozen cycle; when the refrigerated emergency sequence pair takes priority, it is a refrigerated cycle; if the same, the current cycle mode of the previous sampling cycle is maintained.
5. A multi-node instruction scheduling method for a CAN bus in an air-cooled refrigerator according to claim 4, characterized in that, When the over-limit arrival time corresponding to the target cycle mode does not exceed the emergency over-limit arrival time threshold, the emergency instruction set consists of key messages that can directly drive the corresponding cooling circuit switching and back sampling confirmation; otherwise, the emergency instruction set is empty. The set of deferred messages consists of messages that do not belong to the set of urgent instructions and whose current message age has not reached their allowed deferred limit.
6. The method for multi-node instruction scheduling of a CAN bus in a frost-free refrigerator according to claim 1, characterized in that, The basic period is obtained by finding the greatest common divisor of the periods of each message in the current active message set, and the scheduling period is obtained by finding the least common multiple. The length of the emergency window is determined by the sum of the bus occupancy times of each message in the emergency instruction set, and the length of the acknowledgment window is determined by the sum of the bus occupancy times of the acknowledgment messages corresponding to the messages in the emergency instruction set that need to return execution results. Each basic cycle is divided into a synchronization window, an emergency window, a confirmation window, a normal window, and a reserved window; Construct an emergency action dependency graph, with the emergency instruction set as the node set and the physical dependencies between cooling actions as the edge set, and perform topological sorting on the dependency graph to obtain the emergency sending sequence.
7. A multi-node instruction scheduling method for a CAN bus in a wind-cooled refrigerator according to claim 6, characterized in that, For each ordinary message in the set of messages that can be delayed, construct an ordinary sorting pair, which consists of the remaining delay margin and the current message age. Sort the messages according to the rule that the message with the smaller margin is sent first, and the message with the older age is sent first when the margins are the same, to obtain the ordinary transmission sequence. The master node sends a synchronization reference frame in the synchronization window, and each node corrects its local time base accordingly. The master control node releases messages in the corresponding windows according to the emergency sending sequence and the normal sending sequence, and each execution node returns the execution confirmation and the fast retrieval result in the confirmation window; Ordinary messages that have not yet been sent enter the buffer queue, and their age continues to increase.
8. A multi-node instruction scheduling method for a CAN bus in an air-cooled refrigerator according to claim 1, characterized in that, The execution confirmation delay is the difference between the time when the corresponding execution confirmation arrives at the master control node and the actual time when the emergency message is sent. The maximum execution confirmation delay is taken as the maximum execution confirmation delay among all emergency messages. The freezing and cooling trend is obtained by dividing the difference between the current freezing state temperature and the freezing state temperature of the previous control cycle by the control cycle. When the maximum execution confirmation latency exceeds the execution confirmation latency limit and the freezing cooling trend is non-negative, the number of emergency slots increases; When the maximum execution confirmation delay is not exceeded and the freezing and cooling trend is negative, the number of emergency slots is reduced; All other conditions remain unchanged; The number of confirmation slots increases when the maximum execution confirmation delay exceeds the upper limit of execution confirmation delay; otherwise, it remains unchanged.
9. A multi-node instruction scheduling method for a CAN bus in an air-cooled refrigerator according to claim 8, characterized in that, The maximum value of the ages of all cached packets in the cache queue at the current moment is determined as the oldest packet age; When the oldest message reaches the release age threshold for ordinary messages and the freezing and cooling trend is negative, the number of ordinary slots increases; When the freezing and cooling trend is non-negative, the number of ordinary tanks decreases; otherwise, it remains unchanged. Multiply the adjusted number of emergency slots, confirmation slots, and normal slots by the length of a single slot to map them to the corresponding window length.
10. A multi-node instruction scheduling system for a CAN bus of an air-cooled refrigerator, used to implement the multi-node instruction scheduling method for a CAN bus of an air-cooled refrigerator as described in any one of claims 1-9, characterized in that... ; State construction module: Collects the raw temperatures of the freezer and refrigerator compartments, converts them to raw temperatures through a temperature mapping function, and performs first-order recursive smoothing to obtain the state temperature; calculates the freezing deviation and refrigeration deviation based on the state temperature, and calculates the freezing temperature rise slope and refrigeration temperature rise slope in combination with the sampling period; establishes message description items, estimates the message bus occupancy time according to the bus transmission rate, defines the message age, and sets the current loop mode; Emergency assessment module: Calculates the gate disturbance interval, generates effective disturbance markers by combining the temperature rise slope, calculates the over-limit arrival time, constructs an emergency sequence pair by combining the effective disturbance markers and the over-limit arrival time, determines the target loop mode according to the comparison rule of prioritizing effective disturbance markers and over-limit arrival time, filters the emergency instruction set, and extracts the set of delayable messages from the remaining messages based on message age and allowable delay limit; Window scheduling module: Calculates the basic period and scheduling period based on the period of the current active message set, determines the emergency window length and confirmation window length, constructs an emergency action dependency graph, generates an emergency sending sequence through topology sorting, generates a normal sending sequence through sorting, the master node sends a synchronization reference frame in the synchronization window, each node corrects its local time base according to the synchronization reference frame, releases emergency instructions and normal messages, and the execution node returns execution confirmation and fast retrieval results in the confirmation window; Closed-loop correction module: Reads the execution confirmation delay of emergency messages, calculates the maximum execution confirmation delay, obtains the freezing and cooling trend from the rapid data retrieval results, adjusts the number of emergency slots and confirmation slots in the next basic cycle based on the freezing and cooling trend, adjusts the number of ordinary slots in the next basic cycle based on the freezing and cooling trend, maps the adjusted number of slots to the window length, and reconstructs the bus window scheduling table for the next round.