A method for dynamically allocating communication time periods of an indoor unit and an outdoor unit of an air conditioner
By dynamically allocating communication time slots in the air conditioning group control system and utilizing the sub-time slot structure of uplink and downlink time slots, the problems of signal collision and resource contention in wireless communication are solved, system power consumption is reduced, and the communication efficiency of the air conditioning group control system is improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-22
- Publication Date
- 2026-03-24
AI Technical Summary
In air conditioning group control systems, wireless communication methods suffer from signal collisions, resource contention, and increased energy consumption, especially in data interaction between multiple indoor units and a single outdoor unit, leading to communication conflicts, disordered response priorities, and increased system power consumption.
A dynamic allocation method for communication time slots between indoor and outdoor air conditioning units is adopted. This method divides the time frame of the communication channel into uplink and downlink time slots, and further divides the uplink time slot into multiple sub-time slots. The time slots are dynamically allocated to avoid resource waste. The method utilizes shared contention time slots to schedule additional requests and data transmissions from the indoor unit, and increases protection time to optimize communication efficiency.
It effectively solves the communication conflicts and response priority disorder caused by multiple indoor units sending data at the same time, reduces system power consumption, and improves the communication efficiency and energy efficiency of the air conditioning group control system.
Smart Images

Figure CN120351622B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the technical field of air conditioner multiplex communication, and particularly relates to a communication time period dynamic allocation method for an air conditioner indoor unit and an outdoor unit. BACKGROUND
[0002] In an air conditioner group control system, for example, a multi-connected system, an outdoor unit as a single master is connected to multiple indoor units, and the multiple indoor units frequently interact with the outdoor unit as a single master to upload user settings and real-time states (such as temperature requests, compressor states, etc.) to the outdoor unit, and the outdoor unit allocates resources according to global information, such as dynamically adjusting output power, matching the total load of all indoor units, avoiding frequent start-stop or overload, and improving the overall energy efficiency ratio, and the indoor and outdoor units report real-time faults to each other to trigger a protection mechanism (such as shutdown or frequency reduction) to prevent fault propagation.
[0003] The data communication between the outdoor unit and the indoor unit is generally divided into wired and wireless communication. The wired communication includes RS485 or CAN bus supporting master-slave communication between multiple nodes (indoor units) and a single master (outdoor unit), but when the number of indoor units is large and the communication distance is long, the installation environment, cost, installation complexity, quality level of communication lines, distance, and technical ability of installation personnel all affect the communication quality. Wireless connection does not require the use of communication lines, and wireless modules are used between the indoor and outdoor units to maintain communication, which is simple to install and low in cost.
[0004] However, the wireless communication method has the following problems:
[0005] a. Signal collision: multiple indoor units simultaneously sending data causes communication conflict, resulting in command loss or delay;
[0006] b. Resource competition: the outdoor unit needs to respond to multiple indoor unit requests, and improper scheduling can cause response priority disorder;
[0007] c. Increased energy consumption: frequent data retransmission increases system power consumption and reduces energy efficiency;
[0008] Therefore, how to solve the above problems has become an important research topic for air conditioner indoor and outdoor unit communication. SUMMARY
[0009] To solve the problems in the background art, the present application provides a communication time period dynamic allocation method for an air conditioner indoor unit and an outdoor unit.
[0010] To achieve this purpose, the present application adopts the following technical solutions:
[0011] A communication period dynamic allocation method for an air conditioner indoor unit and an outdoor unit, comprising: using the same wireless frequency band by an outdoor unit and a plurality of indoor units in an air conditioner group control system to share the same communication channel; dividing the communication time of the communication channel into a plurality of time frames with fixed length; dividing each time frame into an uplink time slot and a downlink time slot; dividing the uplink time slot into a plurality of sub-slots with fixed length; the uplink time slot is used for the plurality of indoor units to send data to the outdoor unit, and the downlink time slot is used for the outdoor unit to send data to the plurality of indoor units, comprising:
[0012] Step A: when the uplink time slot is divided into sub-slots, the number of sub-slots is greater than or equal to the number of indoor units;
[0013] Step B: initially, the outdoor unit sequentially numbers each sub-slot, allocates the corresponding numbered sub-slot to each indoor unit according to the SN code of each indoor unit, and generates a time slot allocation table; the outdoor unit broadcasts the time slot allocation table to all indoor units through the downlink time slot;
[0014] Step C: in the communication period of the current frame, each indoor unit sends data to the outdoor unit in sequence according to the corresponding numbered sub-slot; the outdoor unit sends data to all indoor units in the form of broadcast according to all indoor unit addresses through the downlink time slot, or sends data to the corresponding indoor unit in the form of unicast according to the target indoor unit address;
[0015] Step D: in other communication periods of subsequent frames, the outdoor unit reallocates the sub-slots of all indoor units according to the communication data volume or communication priority of all indoor units, generates a new time slot allocation table, and broadcasts it to all indoor units; all indoor units perform data sending operation according to the new time slot allocation table;
[0016] Step E: when a new indoor unit is connected to the air conditioner group control system, steps A to D are re-executed.
[0017] Preferably, the online running status of all indoor units is obtained to determine the communication state of all sub-slots in the current frame; the sub-slot corresponding to the indoor unit that has been online running is marked as a static time slot in a busy state; and the sub-slot corresponding to the indoor unit that has not been online running is marked as a dynamic time slot in an idle state.
[0018] Preferably, at least one sub-slot in the uplink time slot is divided as a shared contention time slot, which is used for the indoor unit to initiate an additional request for communication demand in the next frame to the outdoor unit by occupying the shared contention time slot in the current frame or for the indoor unit to send additional data again;
[0019] Dividing at least one shared contention time slot comprises:
[0020] Operation I: in addition to dividing the required number of sub-slots for the indoor unit, at least one sub-slot is also divided as a shared contention time slot, and the number of the shared contention time slot is arranged to the last;
[0021] Or operation two: if there is a dynamic time slot in idle state in the current frame, on the basis of operation one, the dynamic time slot in idle state is taken as a shared contention time slot.
[0022] Preferably, the additional data is emergency warning data or fault data.
[0023] After receiving the additional request or the additional data in the current frame, the external machine re-allocates the sub-slots of all internal machines according to the additional request or the additional data, generates a new time slot allocation table for the communication period of the subsequent frame, and sends the new time slot allocation table to all internal machines through the downlink time slot of the current frame. All internal machines perform data sending operation according to the new time slot allocation table in the communication period of the subsequent frame.
[0024] Preferably, when all internal machines are online, each internal machine sends data to the external machine according to the corresponding static time slot.
[0025] When there is an internal machine that is not online, if the current internal machine itself needs to send data this time, and the data this time does not include additional data or additional request, it is judged whether there are N dynamic time slots in front of the static time slot corresponding to the current internal machine, N>a, a representing the number of sub-slots reserved for other internal machines to occupy, if yes, the nth dynamic time slot is allocated to the current internal machine to send data, a+1≤n≤N, and the static time slot corresponding to the current internal machine is reserved, if no, the current internal machine sends data according to the corresponding static time slot.
[0026] Or it is judged whether there are N dynamic time slots between the static time slot corresponding to the current internal machine and another static time slot in front of it, N>a, a representing the number of sub-slots reserved for other internal machines to occupy, if yes, the nth dynamic time slot between the two static time slots is allocated to the current internal machine to send data, a+1≤n≤N, and the static time slot corresponding to the current internal machine is reserved, if no, the current internal machine sends data according to the corresponding static time slot.
[0027] Preferably, when the nth dynamic time slot allocated to the current internal machine to send data is occupied by other internal machines as a shared contention time slot to send additional request or additional data, the n+1th dynamic time slot is allocated to the current internal machine, if the n+1th dynamic time slot is also occupied by other internal machines as a shared contention time slot to send additional request or additional data, the n+2th dynamic time slot is allocated to the current internal machine, and so on until there is no dynamic time slot available to the current internal machine to send data this time, the current internal machine sends data according to the corresponding static time slot.
[0028] Preferably, all sub-slots divided by the uplink time slot are embedded with protection time, and the interval length of the protection time corresponding to each sub-slot is consistent.
[0029] The calculation formula of the guard time is:
[0030] T=T mpd +T ce +T pre .
[0031] Wherein, T represents the guard time, T mpd represents the maximum propagation delay, T ce represents the clock error, T pre represents the pre-allocation time, and the total length of the pre-allocation time of all the inner machines is the length of a sub-slot.
[0032] Preferably, when the outer machine receives data sent from all the inner machines and receives additional data or additional requests sent from different inner machines in the communication period of continuous multiple frames, the outer machine shortens the guard time of each sub-slot, combines the pre-allocation time in the original guard time to divide more than one new sub-slot, takes the new sub-slot as a shared contention time slot, and formulates a new time slot allocation table and broadcasts it to all the inner machines through a downlink time slot.
[0033] The calculation formula of the shortened guard time is:
[0034] T=T mpd +T ce .
[0035] Preferably, the outer machine sends data to the inner machine through the downlink time slot, and the method further comprises the steps that:
[0036] The downlink time slot is divided into sub-slots with the same number as the number of the inner machines, and each sub-slot is allocated to a corresponding inner machine, so that the outer machine sends designated data for different inner machines in different sub-slots.
[0037] Preferably, when the outer machine sends data to the inner machine through the downlink time slot in the current frame, a starting identifier is attached at the beginning of the frame, and all the inner machines align the clock by taking the starting identifier as a synchronization signal.
[0038] The beneficial effects of the present application relative to the prior art are:
[0039] This invention dynamically allocates communication time slots between multiple indoor units and a single outdoor unit in an air conditioning group control system. This includes dynamically adjusting the structure of time frames according to actual needs, using idle time slots as shared, contention-based time slots for other indoor units to compete for, and dynamically scheduling the use of idle time slots to avoid wasting time slot resources. Simultaneously, a pre-allocated time is added to the protection time of each time slot. This pre-allocated time can be used to create a new time slot, effectively solving the problem of communication conflicts caused by multiple indoor units simultaneously sending data, leading to command loss or delays. It also addresses the issue of improper scheduling causing response priority disorder when an outdoor unit needs to respond to multiple indoor unit requests, and the problem of frequent data retransmission by indoor units increasing system power consumption and reducing energy efficiency. Attached Figure Description
[0040] Figure 1 This is a flowchart of the method for dynamically allocating communication time periods between the indoor and outdoor units of an air conditioner according to the present invention;
[0041] Figure 2 This is a communication diagram of multiple time frames (downlink time slots are not divided into multiple sub-time slots) according to an embodiment of the present invention;
[0042] Figure 3 This is a communication diagram of the current time frame (downlink time slots are divided into multiple sub-time slots) according to an embodiment of the present invention;
[0043] Figure 4 This is a communication diagram illustrating the division of at least one shared contention time slot according to an embodiment of the present invention;
[0044] Figure 5 This is a communication diagram illustrating how other internal machines use other idle sub-time slots in an embodiment of the present invention. Detailed Implementation
[0045] The technical solution of the present invention will be further described below with reference to the accompanying drawings and specific embodiments.
[0046] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. 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.
[0047] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this invention are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, apparatus, product, or end that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or ends.
[0048] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of the invention. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0049] In air conditioning group control systems, such as multi-split systems, multiple indoor units and outdoor units frequently exchange data. The communication essence of such systems is "on-demand allocation and global optimization." Indoor units upload "demand" and "status," while the outdoor unit, acting as a "central processing unit," coordinates refrigerant flow, power output, and fault handling, ultimately achieving efficient, stable, and intelligent operation. For example, the data and control logic exchanged between indoor and outdoor units includes:
[0050] 1. The internal unit sends user-defined data.
[0051] Basic commands: power on / off, mode (cooling / heating / dehumidifying / air supply), set temperature (e.g., 18℃), fan speed (low / medium / high / auto), air swing angle; Special functions: sleep mode (automatic temperature adjustment), energy saving mode (limiting maximum load), self-cleaning request.
[0052] Outdoor unit response:
[0053] The compressor's operating direction is switched according to the mode (a four-way valve is required for heating). The target superheat / subcooling is calculated based on the set temperature, and the opening of the electronic expansion valve is adjusted accordingly. The fan speed affects the indoor unit's air volume, and the outdoor unit adjusts the fan speed synchronously (such as increasing condenser heat dissipation when the fan speed is high).
[0054] 2. The internal unit sends real-time status data.
[0055] Indoor environment: Current room temperature (collected by thermocouple / infrared sensor), humidity (used to determine dehumidification mode); Equipment status: Indoor unit fan speed, electronic expansion valve opening, filter clogging signal (estimated by sensor or running time).
[0056] Outdoor unit response:
[0057] Calculate the load of a single indoor unit (e.g., the difference between room temperature and set temperature × air volume), and adjust the compressor frequency after accumulating the loads of all indoor units (if the total load is low, it will run at a low frequency); when the filter is clogged, the outdoor unit can reduce the refrigerant flow or prompt the user to clean it to avoid insufficient air volume leading to decreased efficiency.
[0058] 3. The indoor unit sends fault and protection data.
[0059] Fault codes: Indoor unit sensor malfunction (e.g., room temperature sensor short circuit), motor abnormality, communication interruption. Protection signals: Overheat protection (indoor unit heat exchanger temperature too high), anti-freeze protection (evaporator temperature ≤ 0℃).
[0060] Outdoor unit response:
[0061] Upon receiving a fault code, local or global protection is triggered: if a single indoor unit malfunctions, the solenoid valve of that indoor unit is closed, while other indoor units continue to operate; if the outdoor unit detects high-pressure protection (such as refrigerant leakage), all indoor units will shut down.
[0062] When multiple indoor units send data to an outdoor unit, signal collisions may occur. Conversely, when an outdoor unit sends data or commands to multiple indoor units, improper scheduling and incorrect priority requests may occur. In practical research and development, TDMA (Time Division Multiple Access) communication technology has been found to allow multiple devices to communicate using the same frequency in different time slots. This involves dividing the communication time into multiple fixed-length time frames, each containing multiple time slots. Each device is allocated one or more time slots for sending and receiving data, enabling time isolation between different devices and reducing mutual interference. Time slot allocation allows for flexible resource allocation based on device needs, meeting the communication requirements of different devices. Optimizing TDMA technology to adapt to frequent data interaction between multiple indoor units and a single outdoor unit, based on the actual needs of air conditioning group control systems, is a current direction in air conditioning communication research and development. Based on this, this application proposes a dynamic allocation method for communication time slots between air conditioning indoor and outdoor units.
[0063] Specifically, this includes: such as Figure 1 and Figure 2 As shown, the outdoor unit and multiple indoor units in the air conditioning group control system use the same wireless frequency band to share the same communication channel. The communication time of the communication channel is divided into multiple time frames of fixed length. Each time frame is divided into uplink time slots and downlink time slots. The uplink time slots are divided into multiple sub-time slots of fixed length. The uplink time slots are used for multiple indoor units to send data to the outdoor unit, and the downlink time slots are used for the outdoor unit to send data to multiple indoor units.
[0064] The outdoor unit and multiple indoor units need to access the same wireless frequency band to ensure that both outdoor and indoor units can share the same communication channel. Communication time slots are dynamically allocated to ensure that each device exclusively occupies the channel within a specified time window, avoiding collisions. In this embodiment, the time frame is a complete communication cycle encompassing all time slots. The length of the time frame needs to balance real-time performance and efficiency, avoiding delays due to excessively long frames and insufficient time slots due to excessively short frames. The specific time frame length needs to be set according to the actual usage requirements of the air conditioner, such as the number of indoor units, the amount of data exchanged between indoor and outdoor units, the online operation status of indoor units, communication speed, etc. For example, during the off-season for air conditioner use, each of the four indoor units is allocated a 50ms sub-time slot, and the outdoor unit's downlink time slot is allocated 40ms. Therefore, the cycle of one frame is 200ms for uplink time slots and 40ms for downlink time slots, totaling 240ms. With a reserved optimization cycle length, we optimize the cycle length of one frame. The time interval is reduced to 250ms. However, during peak air conditioning seasons, such as summer, each frame of 10 indoor units needs to send at least 100 bytes of uplink data packets and at least 50 bytes of downlink commands from the outdoor unit. If the communication rate is 9600bps per 8 bytes, then the length of the uplink time slot of a frame is approximately 10 units × 100 bytes × 8 bits / 9600bps ≈ 833ms. Therefore, the uplink time slot is allocated to 900ms (including the 7ms protection time for the corresponding sub-time slot of each indoor unit). If there are no sub-time slots for the downlink time slot, then the length of a single downlink time slot is half the length of a single sub-time slot of the uplink time slot, which is 50ms. So the length of a frame is 900ms (uplink) + 50ms (downlink) = 950ms, which is optimized to a 1-second cycle.
[0065] Furthermore, a sub-time slot is a fixed time period allocated to a single device for exclusive data transmission. If the period is 100ms, each of the five internal units is allocated a 20ms time slot. Each internal unit sends data only in its dedicated time slot. For example, 0-20ms is the transmission period for the first internal unit, 20-40ms is the transmission period for the second internal unit, and so on.
[0066] The specific implementation of this method is as follows:
[0067] Step A: When dividing the uplink time slot into sub-time slots, the number of sub-time slots is greater than or equal to the number of internal units;
[0068] The number of sub-time slots must be greater than or equal to the number of indoor units. For example, if the current number of indoor units in the air conditioning group control system is 10, then the number of sub-time slots divided into the uplink time slots must be at least 10. Usually, we will add 2 more sub-time slots, that is, 12 sub-time slots, so that if a new indoor unit is connected to the air conditioning group control system in the future, it can be allocated to the new indoor unit. However, the number of sub-time slots added should not be too many, as too many will increase the period length of the frame or shorten the length of each sub-time slot. Therefore, the number of sub-time slots should be designed according to actual needs.
[0069] Step B: Initially, the external unit sequentially numbers each sub-time slot, assigns a corresponding numbered sub-time slot to each internal unit according to the SN code of each internal unit, and generates a time slot allocation table. The external unit then broadcasts the time slot allocation table to all internal units via downlink time slots.
[0070] In this embodiment, the sub-time slot or time period through which each indoor unit sends data to the outdoor unit is assigned by the outdoor unit. Initially, the outdoor unit sequentially numbers each sub-time slot, for example, sub-time slots 0-9, and assigns a corresponding numbered sub-time slot to each indoor unit based on its SN code, thus forming a time slot allocation table. The reason for using the indoor unit's SN code for allocation is that the entire machine's control board will have SN codes burned in, including the indoor unit's SN code and the outdoor unit's SN code. The outdoor unit and the indoor unit mutually store each other's SN codes, and the SN codes are unique. Using this method for allocation allows each indoor unit to clearly identify its own sub-time slot.
[0071] Step C: During the communication period of the current frame, each internal unit sends data to the external unit in sequence according to the corresponding numbered sub-time slot. The external unit sends data to all internal units in the form of broadcast according to all internal unit addresses or sends data to the corresponding internal unit in the form of unicast according to the target internal unit address through the downlink time slot.
[0072] For example, within a frame's communication cycle, internal device A is assigned to sub-time slot 0, internal device B to sub-time slot 1, and internal device C to sub-time slot 2. Each sub-time slot is 20ms long. Internal device A sends data during the 0-20ms period, internal device B sends data during the 20-40ms period, and internal device C sends data during the 40-60ms period. Internal device B must wait for internal device A to finish sending data before it can send its own data. If internal device A has not sent data, internal device B still needs to wait for the 0-20ms period to complete before it can send its own data during the 20-40ms period. This rule is a setting of TDMA technology itself to ensure that each internal device can avoid interference. However, this setting also causes internal devices that need to send data to wait for the previous sub-time slot to complete, which leads to a waste of time slots. This application also improves the problem of wasted time slots, as detailed below.
[0073] Furthermore, after receiving data from the indoor unit, the outdoor unit issues targeted instructions or control commands by broadcasting data to all indoor units or unicasting data to the corresponding indoor unit via downlink time slots. When broadcasting data to all indoor units, the data sent is generally a global command, such as compressor start / stop, temperature setting, or mode switching. When unicasting data to a specific indoor unit, the data sent is generally a control command for that specific indoor unit, such as the opening degree of the electronic expansion valve for indoor unit A. Both broadcasting and unicasting require transmission through the indoor unit's address field; therefore, the outdoor unit must initially store the indoor unit's address field. Alternatively, a unicast effect can be achieved through broadcasting. For example, sending "Indoor unit A opens the electronic expansion valve" to all outdoor units will cause all indoor units to receive and parse the command. After parsing, only indoor unit A will open the electronic expansion valve; other indoor units do not need to execute the command. In this case, the indoor unit needs to have the function of parsing commands.
[0074] Step D: In other communication cycles of subsequent frames, the external unit reallocates the sub-time slots of all internal units according to the communication data volume or communication priority of all internal units and generates a new time slot allocation table, which is then broadcast to all internal units. All internal units perform data transmission operations according to the new time slot allocation table.
[0075] In this embodiment, the time slot allocation table initially set by the external machine is not used indefinitely. The time slot allocation table needs to be set according to the actual communication situation. For example, after running for a period of time, the external machine, by statistically analyzing the communication data volume and priority of all internal machines within a communication cycle, may find that internal machine A has a particularly large communication data volume, and internal machine B's data transmission priority is much higher than that of other internal machines. In this case, the external machine may allocate an additional sub-time slot to internal machines A and B, allowing them to send data to the external machine twice within the communication cycle of the current frame. Once a new time slot allocation table is formed, all internal machines will execute according to the new table. It is important to note that after the external machine sets the new time slot allocation table for the current frame, all internal machines will execute in the next frame.
[0076] Step E: When a new indoor unit is connected to the air conditioning group control system, repeat steps A through D.
[0077] Preferably, the online operation status of all indoor units is obtained to determine the communication status of all sub-time slots in the current frame. The sub-time slots corresponding to the online indoor units are marked as static time slots in a busy state, and the sub-time slots corresponding to the offline indoor units are marked as dynamic time slots in an idle state.
[0078] As mentioned earlier, this solution allocates corresponding sub-time slots to all internal units. After each internal unit goes online, it can send data to the external unit through its corresponding sub-time slot. However, not all internal units will go online. This means that the communication status of the sub-time slots corresponding to internal units that are not online is idle. For example, internal unit A corresponds to sub-time slot 0, internal unit B corresponds to sub-time slot 1, and internal unit C corresponds to sub-time slot 2. If internal units A and B are not online, internal unit C needs to wait for the time slots 0 and 1 to complete before it can use sub-time slot 2 to send data. This wastes the time slots 0 and 1. Therefore, this application determines the communication status of all sub-time slots in the current frame by checking the online operation status of all internal units. The sub-time slots corresponding to the internal units that are online are marked as static time slots in a busy state, and the sub-time slots corresponding to the internal units that are not online are marked as dynamic time slots in an idle state. Dynamic time slots mean that they can be used by other online internal units during the communication period of the current frame. As long as the external unit sets the time slot allocation table, it only needs to synchronously set the logic to allow other internal units to use dynamic time slots. After receiving the time slot allocation table, the internal unit will execute the allowed logic operation. The dynamic time slots can be shared contention time slots as described below or the internal unit with a later number can be moved to the dynamic time slot with a previous number to send.
[0079] Preferably, at least one sub-slot is divided in the uplink time slot as a shared contention time slot. The shared contention time slot is used by the internal unit to initiate an additional request for communication needs of the next frame to the external unit in the current frame by preempting the shared contention time slot, or by the internal unit to send additional data again.
[0080] Within the communication cycle of a current frame, we allocate a corresponding sub-time slot to each internal unit for it to send data, but some problems still exist, such as the following:
[0081] Scenario 1: When an internal unit has already sent data to the external unit in its corresponding sub-time slot and the internal unit's sub-time slot quota has been used up, but the internal unit suddenly detects fault data or emergency warning data and needs to send it to the external unit in the current frame, and other internal units need to send data in the subsequent sub-time slots, then there are no additional sub-time slots available for the internal unit to send additional data to the external unit.
[0082] Scenario 2: In contrast to Scenario 1, it may be unknown whether an indoor unit needs to send additional data to an outdoor unit;
[0083] Scenario 3: If the length of the sub-time slot allocated to an internal machine is insufficient to support the amount of data that the internal machine needs to send in the current frame, then in this case, the internal machine can only send part of the data to the external machine. After receiving the data, the external machine is unaware that the data is incomplete. Alternatively, the internal machine may send an additional request in its sub-time slot to save the data to be sent in the next frame. In either case, an additional sub-time slot is needed to allow the internal machine to initiate an additional request to the external machine in the current frame to request communication in the next frame. That is, in the current frame, the internal machine informs the external machine that it needs to occupy more sub-time slots in the next frame to send data, so that the internal machine can report the request to the external machine and the external machine can rearrange the time slot allocation table.
[0084] Therefore, in either case, we need to reserve at least one shared contention time slot in the uplink time slot so that the internal machine can initiate additional requests for communication needs in the next frame to the external machine in the current frame or send additional data again. The shared contention time slot needs to be occupied by multiple internal machines in a competitive manner. In short, whichever internal machine can occupy it first can use it.
[0085] like Figure 4 As shown, dividing at least one shared contention time slot includes:
[0086] Operation 1: In addition to allocating the required number of sub-time slots for the indoor unit, at least one sub-time slot also needs to be allocated as a shared contention time slot. The numbers of the shared contention time slots are arranged to the end.
[0087] Alternatively, Operation 2: If there is an idle dynamic time slot in the current frame, based on Operation 1, the idle dynamic time slot will be used as a shared contention time slot.
[0088] In this embodiment, two operations for allocating shared contention time slots are provided. Operation one involves adding at least one additional sub-time slot as a shared contention time slot, in addition to the number of sub-time slots allocated to all internal units (e.g., allocating one sub-time slot to each internal unit or multiple sub-time slots to a specific internal unit). This additional shared contention time slot is assigned to the last slot by default and should not affect the transmission of other internal units. Figure 4 In the first frame, time slot 3 is an added shared contention time slot, which can be preempted by internal unit A, internal unit B, and internal unit C.
[0089] Furthermore, Operation Two is based on Operation One. As mentioned earlier, not all internal machines will be online and running. For internal machines that are not online, their sub-time slots are in an idle state. We mark these as dynamic time slots. These dynamic time slots will still complete their time periods even if they are not used. Therefore, we can utilize these dynamic time slots as shared contention time slots, increasing the number of shared contention time slots to meet the needs of multiple internal machines that need to send additional requests or additional data, for example... Figure 4 In the second frame, slot 1 of internal machine B is idle and is designated as a shared contention slot. Both internal machines A and C can preempt slot 1. If all internal machines are online and running, it means that there are no dynamic slots in the current frame. In this case, the internal machines can only send additional requests and data by operating the shared contention slot allocated in slot 1.
[0090] Preferably, the additional data is emergency warning data or fault data;
[0091] After receiving an additional request or additional data in the current frame, the outdoor unit reallocates the sub-time slots of all indoor units according to the additional request or additional data, and generates a new time slot allocation table for the communication cycle of subsequent frames. The new time slot allocation table is sent to all indoor units through the downlink time slot of the current frame. All indoor units perform data transmission operations according to the new time slot allocation table in the communication cycle of subsequent frames.
[0092] In this embodiment, when the outdoor unit receives an additional request, it will allocate more sub-time slots to the indoor unit that sent the additional request in the next frame. Similarly, when the outdoor unit receives additional data, the indoor unit that sends the additional data will also need to send fault data in addition to routine data (operating status data such as temperature), so it will also be allocated more sub-time slots. When the frame length cannot be adjusted, more sub-time slots can be formed by shortening the length of all sub-time slots to allocate to the indoor units that need them.
[0093] Preferably, when all internal units are online and running, each internal unit sends data to the external unit according to the corresponding static time slot;
[0094] When an internal machine is not online, if the current internal machine needs to send data (excluding additional data or requests), it is determined whether there are N dynamic time slots (N>a) before the current internal machine's static time slot, where a represents the number of sub-time slots reserved for other internal machines to preempt. If yes, the nth dynamic time slot is allocated to the current internal machine to send data (a+1≤n≤N), while the static time slot corresponding to the current internal machine is retained. If no, the current internal machine sends data according to its corresponding static time slot.
[0095] Alternatively, determine whether there are N dynamic time slots between the static time slot corresponding to the current internal unit and the other static time slot before it, where N>a, and a represents the number of sub-time slots reserved for other internal units to preempt. If yes, allocate the nth dynamic time slot between the two static time slots to the current internal unit to send data, where a+1≤n≤N, and retain the static time slot corresponding to the current internal unit. If not, the current internal unit sends data according to the corresponding static time slot.
[0096] In this embodiment, when an internal machine is not online, it means that some sub-time slots are idle. We need to utilize these dynamic time slots to avoid wasting time resources. Therefore, for internal machines that need to send data, scheduling can be performed by judging the dynamic time slots, such as... Figure 5 As shown, the air conditioning group control system has 8 indoor units, namely A, B, C, D, E, F, G, and H, corresponding to sub-time slots numbered 0-7 respectively. When a=1, a represents the number of sub-time slots reserved for other indoor units to occupy. If only indoor units C, D, and H are online and running:
[0097] Example 1: The second sub-time slot corresponding to the internal unit C is a static time slot. There are two dynamic time slots, 0 and 1, before it. There are no other static time slots before the second static time slot. At this time, N = 2 and is greater than a. Then the internal unit C can use the nth dynamic time slot, that is, a + 1 = 2 ≤ n ≤ N = 2, so n = 2. That is, the internal unit C can use the second dynamic time slot, that is, the first dynamic time slot.
[0098] Example 2: The 7th sub-time slot of the internal unit H is a static time slot. There is a 3rd static time slot of the internal unit D in front of it. Then there are 3 dynamic time slots between the internal units H and D, namely the 4th, 5th and 6th, that is, N = 3 and greater than a. Then the internal unit H can use the nth static time slot, that is, a + 1 = 2 ≤ n ≤ N = 3, so n = 2 or 3. Therefore, the internal unit H can use the 2nd or 3rd dynamic time slot of the 3 dynamic time slots of the 4th, 5th and 6th, that is, the 5th and 6th dynamic time slots.
[0099] Example 3: The 3rd sub-time slot of the internal unit D is a static time slot. There is a 2nd static time slot of the internal unit C in front of it. There are no other dynamic time slots between the two. Therefore, the internal unit D can only use its own corresponding 3rd static time slot to send data and cannot be scheduled to other dynamic time slots.
[0100] It's important to note that 'a' represents the number of sub-time slots reserved for other internal machines to preempt. For example, in Example 1, a = 1, meaning only one sub-time slot is reserved for other internal machines to preempt. This means internal machine C has two dynamic time slots, slots 0 and 1, but slot 0 is reserved as a shared contention slot for other internal machines to preempt. Therefore, internal machine C can only schedule slot 1. In Example 2, internal machines H and D have three dynamic time slots, slots 4, 5, and 6. 'a' = 1 means slot 4 is reserved as a shared contention slot for other internal machines to preempt. Therefore, internal machine H can only schedule slots 5 and 6. Since the priority of preempting shared contention slots is higher than the priority of scheduling other dynamic time slots, N must be greater than 'a', reserving 'a' dynamic time slots as shared contention slots for other internal machines to preempt. The value of 'a' is set according to the actual situation.
[0101] Preferably, when the nth dynamic time slot allocated to the current internal machine for sending data is preempted by another internal machine to send additional requests or additional data via a shared contention time slot, the (n+1)th dynamic time slot is allocated to the current internal machine. If the (n+1)th dynamic time slot is also preempted by another internal machine to send additional requests or additional data via a shared contention time slot, the (n+2)th dynamic time slot is allocated to the current internal machine, and so on... until no dynamic time slot is available to be allocated to the current internal machine for sending this data. Then, the current internal machine sends data according to the corresponding static time slot.
[0102] In this embodiment, since the priority of using a dynamic time slot as a shared contention time slot by other internal machines is higher than the priority of internal machines scheduling other dynamic time slots to send data, the scheduling must follow the avoidance principle. As in Example 2 above, there are three dynamic time slots, numbered 4, 5, and 6, between internal machines H and D. Dynamic time slot number 4 is initially reserved as a shared contention time slot. Internal machine H can only schedule to the second dynamic time slot, i.e., number 5, or the third dynamic time slot, i.e., number 6. At this time, the internal machine has priority to use the second dynamic time slot, i.e., number 5. If dynamic time slot number 5 is also preempted by other internal machines as a shared contention time slot, then internal machine H must yield to the third dynamic time slot, i.e., number 6. If dynamic time slot number 6 is also preempted by other internal machines as a shared contention time slot, then there are no other dynamic time slots available for internal machine H to schedule, and internal machine H can only use its own corresponding static time slot, number 7.
[0103] Furthermore, while internal machines C and H can use other dynamic time slots to schedule and send data in advance, their own static time slots must still be reserved for their own use. This is because even if dynamic time slots are available for scheduling, they can be preempted at any time and become shared, contentionable time slots. Therefore, it's necessary to reserve their own static time slots to prevent situations where, after scheduling, a preempted slot leaves no sub-time slot to send messages. For successfully scheduled internal machines, their corresponding static time slots are allowed to be used to repeatedly send the same data or send other real-time data.
[0104] Preferably, all sub-time slots divided by the uplink time slot are embedded with a protection time, and the interval length of the protection time corresponding to each sub-time slot is the same;
[0105] The formula for calculating the protection time is:
[0106] T = T mpd +T ce +T pre ;
[0107] Where T represents the protection time, T mpd T represents the maximum propagation delay. ce T represents the clock error. pre This indicates the pre-allocated time; the total length of the pre-allocated time for all internal units is the length of one sub-time slot.
[0108] Preferably, when the external unit receives data from all internal units and receives additional data or requests from different internal units within a communication cycle of multiple consecutive frames, the external unit shortens the protection time of each sub-time slot, merges the pre-allocated time in the original protection time to divide up a new sub-time slot, uses the new sub-time slot as a shared contention time slot, and the external unit re-formulates the new time slot allocation table and broadcasts it to all internal units through the downlink time slot.
[0109] The formula for calculating the shortened protection time is:
[0110] T = T mpd +T ce .
[0111] In this embodiment, the guard time serves as a buffer time between time slots to prevent signal overlap caused by clock drift or transmission delay. Therefore, each sub-time slot needs to be embedded with a guard time. In existing TDMA technology, the guard time is generally calculated by adding the maximum propagation delay to the clock error. This invention adds a pre-allocation time, and the total length of the pre-allocation time for all sub-time slots is equal to the length of a sub-time slot. This allows the pre-allocation time to be removed and a new sub-time slot to be added as a shared contention time slot, thus solving the problem of insufficient shared contention time slots.
[0112] Simultaneously, after adding sub-time slots, all atomic time slots can maintain their original actual usable length while retaining the basic protection time. For example, during the off-season for air conditioning use, each of the 5 indoor units is allocated a 12ms sub-time slot. This 12ms includes a 4ms protection time, leaving each sub-time slot with an actual usable length of 8ms. Within the 4ms protection time, there is a maximum propagation delay of 1.5ms, a clock error of 0.5ms, and a pre-allocated time of 2ms. Therefore, the actual usable length within each atomic time slot is 8ms plus the 4ms protection time (maximum propagation delay 1.5ms, clock error 0.5ms, pre-allocated time 2ms), equaling 12ms. With a total of 5 indoor units in the uplink time slots, the total uplink time slots... The length is 5 x 12 ms = 60 ms. Now, the pre-allocated time of 2 ms is removed, and the basic guard time is retained. A new sub-slot is added, resulting in a total of 6 sub-slots. The length of each of these 6 sub-slots is 8 ms of actual usable length plus the guard time of 2 ms (maximum propagation delay of 1.5 ms, clock error of 0.5 ms), which equals 10 ms. The total length of the uplink slots is 6 x 10 ms = 60 ms. That is, the total length of the uplink slots remains unchanged, and there is no need to change the period length of the frame. At the same time, after adding the sub-slots, the actual usable length of each sub-slot remains unchanged, and the basic guard time is retained to prevent signal overlap caused by clock drift or transmission delay.
[0113] Preferred, such as Figure 3 As shown, the process of the outdoor unit sending data to the indoor unit via the downlink time slot also includes:
[0114] The downlink time slot is divided into sub-time slots equal to the number of internal units, and each sub-time slot is assigned to a corresponding internal unit, so that the external unit can send specified data for different internal units in different sub-time slots.
[0115] In this embodiment, in addition to sending data to all indoor units or specific indoor units via broadcast or unicast through a dedicated downlink time slot, the outdoor unit can also divide the downlink time slot into sub-time slots with the same number of indoor units as the uplink time slots. This allows the outdoor unit to send instructions for different indoor units in different sub-time slots. For example, if the outdoor unit needs to control indoor unit A (set temperature), indoor unit B (adjust fan speed), and indoor unit C (switch modes) simultaneously, the downlink time slot can be divided into three sub-time slots to send corresponding instructions, thereby improving instruction transmission efficiency and avoiding redundant broadcast data.
[0116] Preferably, when the external unit sends data to the internal unit through the downlink time slot in the current frame, it will attach a start identifier at the beginning of the frame, and all internal units will use the start identifier as a synchronization signal to align their clocks.
[0117] In this embodiment, it is necessary to ensure that the clocks of all indoor and outdoor units are aligned so that the sub-time slots can be switched and scheduled accurately. Therefore, during the communication cycle of each frame, the outdoor unit will send a start flag to the indoor unit through the downlink time slot, so that all indoor units can use the start flag as a synchronization signal to align their clocks.
[0118] The technical principles of the present invention have been described above with reference to specific embodiments. These descriptions are merely for explaining the principles of the invention and should not be construed as limiting the scope of protection of the invention in any way. Based on this explanation, those skilled in the art can readily conceive of other specific embodiments of the invention without inventive effort, and these embodiments will all fall within the scope of protection of the present invention.
Claims
1. A method for dynamically allocating communication time slots between indoor and outdoor units of an air conditioner, comprising using the same wireless frequency band to share the same communication channel for the outdoor unit and multiple indoor units in an air conditioning group control system, dividing the communication time of the communication channel into multiple time frames of fixed length, dividing each time frame into uplink time slots and downlink time slots, dividing the uplink time slots into multiple sub-time slots of fixed length, wherein the uplink time slots are used for multiple indoor units to send data to the outdoor unit, and the downlink time slots are used for the outdoor unit to send data to multiple indoor units, characterized in that: Step A: When dividing the uplink time slot into sub-time slots, the number of sub-time slots is greater than or equal to the number of internal units; Step B: Initially, the external unit sequentially numbers each sub-time slot, assigns a corresponding numbered sub-time slot to each internal unit according to the SN code of each internal unit, and generates a time slot allocation table. The external unit then broadcasts the time slot allocation table to all internal units via downlink time slots. Step C: During the communication period of the current frame, each internal unit sends data to the external unit in sequence according to the corresponding numbered sub-time slot. The external unit sends data to all internal units in the form of broadcast according to all internal unit addresses or sends data to the corresponding internal unit in the form of unicast according to the target internal unit address through the downlink time slot. Step D: In other communication cycles of subsequent frames, the external unit reallocates the sub-time slots of all internal units according to the communication data volume or communication priority of all internal units and generates a new time slot allocation table, which is then broadcast to all internal units. All internal units perform data transmission operations according to the new time slot allocation table. Step E: When a new indoor unit is connected to the air conditioning group control system, repeat steps A through D. It also includes obtaining the online operation status of all indoor units to determine the communication status of all sub-time slots in the current frame, marking the sub-time slots corresponding to the online indoor units as static time slots in a busy state, and marking the sub-time slots corresponding to the offline indoor units as dynamic time slots in an idle state. At least one sub-slot is divided in the uplink time slot as a shared contention time slot. The shared contention time slot is used by the internal unit to initiate an additional request for communication needs of the next frame to the external unit in the current frame by preempting the shared contention time slot, or by the internal unit to send additional data again. Allocating at least one shared contention time slot includes: Operation 1: In addition to allocating the required number of sub-time slots for the internal unit, at least one sub-time slot also needs to be allocated as a shared contention time slot. The shared contention time slots are numbered last. Alternatively, Operation 2: If there is an idle dynamic time slot in the current frame, based on Operation 1, the idle dynamic time slot will be used as a shared contention time slot. The additional data includes emergency warning data or fault data; After receiving an additional request or additional data in the current frame, the outdoor unit reallocates the sub-time slots of all indoor units according to the additional request or additional data, and generates a new time slot allocation table for the communication cycle of subsequent frames. The new time slot allocation table is sent to all indoor units through the downlink time slot of the current frame. All indoor units perform data transmission operations according to the new time slot allocation table in the communication cycle of subsequent frames.
2. The method for dynamically allocating communication time slots between an indoor and outdoor unit of an air conditioner according to claim 1, characterized in that: When all internal units are online and running, each internal unit sends data to the external unit according to the corresponding static time slot. When an internal machine is not online, if the current internal machine itself needs to send this data (excluding any additional data or requests), then it is determined whether there are N dynamic time slots if there are no other static time slots preceding the current internal machine's static time slot. 'a' represents the number of sub-time slots reserved for other internal units to preempt. If 'a' is the number of sub-time slots reserved for other internal units to preempt, then the nth dynamic time slot will be allocated to the current internal unit to send data. At the same time, the static timeslot corresponding to the current internal unit is retained; otherwise, the current internal unit sends data according to the corresponding static timeslot. Alternatively, determine whether there are N dynamic time slots between the current static time slot of the internal unit and the previous static time slot. 'a' represents the number of sub-time slots reserved for other internal units to preempt. If 'a' is true, then the nth dynamic time slot between two static time slots will be allocated to the current internal unit for data transmission. At the same time, the static timeslot corresponding to the current internal unit is retained; otherwise, the current internal unit sends data according to the corresponding static timeslot.
3. The method for dynamically allocating communication time slots between an indoor and outdoor unit of an air conditioner according to claim 2, characterized in that: When the nth dynamic time slot allocated to the current internal machine for sending data is preempted by another internal machine to send additional requests or data via a shared contention time slot, the (n+1)th dynamic time slot is allocated to the current internal machine. If the (n+1)th dynamic time slot is also preempted by another internal machine to send additional requests or data via a shared contention time slot, the (n+2)th dynamic time slot is allocated to the current internal machine, and so on... until no dynamic time slot is available for the current internal machine to send the current data. At that point, the current internal machine sends the data according to the corresponding static time slot.
4. The method for dynamically allocating communication time slots between an indoor and outdoor unit of an air conditioner according to claim 1, characterized in that: All sub-time slots divided by the uplink time slot are embedded with a protection time, and the interval length of the protection time corresponding to each sub-time slot is the same; The formula for calculating the protection time is: ; Where T represents the protection time. Indicates the maximum propagation delay. Indicates clock error. This indicates the pre-allocated time; the total length of the pre-allocated time for all internal units is the length of one sub-time slot.
5. The method for dynamically allocating communication time slots between an indoor and outdoor unit of an air conditioner according to claim 4, characterized in that: When the external unit receives data from all internal units and receives additional data or requests from different internal units within a communication cycle of multiple consecutive frames, the external unit shortens the protection time of each sub-time slot, merges the pre-allocated time in the original protection time to divide up a new sub-time slot, uses the new sub-time slot as a shared contention time slot, and the external unit re-formulates the new time slot allocation table and broadcasts it to all internal units through the downlink time slot. The formula for calculating the shortened protection time is: 。 6. The method for dynamically allocating communication time slots between an indoor and outdoor unit of an air conditioner according to claim 1, characterized in that: The outdoor unit also sends data to the indoor unit via downlink time slots, including: The downlink time slot is divided into sub-time slots equal to the number of internal units, and each sub-time slot is assigned to a corresponding internal unit, so that the external unit can send specified data for different internal units in different sub-time slots.
7. The method for dynamically allocating communication time slots between an indoor and outdoor unit of an air conditioner according to claim 1, characterized in that: When the external unit sends data to the internal unit through the downlink time slot in the current frame, it will attach a start identifier at the beginning of the frame. All internal units will use the start identifier as a synchronization signal to align their clocks.
Citation Information
Patent Citations
Wireless communication system and wireless slave and master units used therein
CN103493577A
Building air conditioner temperature controller low-delay wireless communication system and method based on Internet of Things
CN117490194A
Wireless communication system
JP2006140820A