The present invention relates to the technical field of data transmission, and in particular, relates to a frame collision rate calculation method for a frame on a CAN bus and a CAN bus resource minimization method.
In the automobile industry, various electronic control systems have been developed because of the requirements for safety, comfort, convenience, low power consumption, and low cost. Due to the different data types used for communication and different reliability requirements among these systems, there are many cases where multiple buses are involved, which correspondingly increases the number of wire harnesses. In order to meet the needs of “reducing the number of wire harnesses” and “carrying out high-speed communication of large amounts of data through multiple LANs”, an automobile-oriented CAN communication protocol was developed in 1986 by the German electrical manufacturer Bosch Company.
CAN, the full name of which is Controller Area Network, is a data protocol bus proposed by Bosch Company of German in 1985. It is currently widely used in distributed real-time control fields such as automotive electronics and industrial automation. As compared to general communication buses, CAN bus data communication features outstanding reliability, real-time performance and flexibility. The CAN bus has attracted more and more attention because of its good performance and unique design. It is most widely used in the automotive field, and some well-known automobile manufacturers in the world have adopted the CAN bus to realize data communication between the internal control system and various detective and executive mechanisms in the automobiles. At the same time, due to the characteristics of the CAN bus itself, it has been applied to the fields of automatic control, aerospace, navigation, process industry, machinery industry, textile machinery, agricultural machinery, robots, computer numerical control machine tools, medical apparatuses and instruments, sensors or the like, instead of being limited to the automobile industry, and thus it is known as the computer local area network in the field of automation. The emergence of CAN has provided strong technical support for distributed control systems to realize real-time and reliable data communication among various nodes. CAN has formed an international standard and has been recognized as one of the most promising field buses.
The data segment of the frame for the CAN bus allows at most 8 bytes and uses a short frame structure, and thus the transmission time is short and the probability of being interfered with is low. However, as the load rate of the bus increases, frame collisions on the bus are inevitable. In order to enhance reliability, during the development of product protocols by using the CAN bus, usually frames are sent periodically or a random waiting time is added to the frame to be sent to prevent the occurrence of frame collision events, but this undoubtedly reduces the communication efficiency and causes a waste of communication resources.
It shall be noted that, the information disclosed in the above background section is only used for understanding the background of the present application, and therefore may include information that does not constitute prior art known to those of ordinary skill in the art.
A frame collision rate calculation method for a frame on a CAN bus includes calculating the frame collision rate of the frame, based on an Erlang B formula in the queuing theory according to an CAN bus communication rate, a sending frequency and a frame length of the frame.
In some embodiments, frames on the CAN bus include multiple priorities, and the frame collision rate of the frame of each priority is calculated in the descending order of the priorities, wherein the frame collision rate of the frame of the highest priority is calculated directly using the Erlang B formula; while the frame collision rate of the frame of each of the remaining priorities is calculated using the Erlang B formula in combination with the cumulative traffic load and overflow traffic load of the priority.
In some embodiments, the frame collision rate Bp[i] of the frame of each priority is calculated as follows:
wherein, i=0 represents the highest priority, i=1, 2, . . . , p−1 represents the remaining priorities in the descending order, the number of priorities planned to run on the CAN bus is p; A[i] represents the traffic load of the priority i relative to the CAN bus, k=1, L_S[i] represents the accumulated traffic load of the priority i, and A_L[i] represents the overflow traffic load from a higher priority to the priority i.
In some embodiments, the traffic load A[i] of the priority i relative to the CAN bus, the accumulated traffic load L_S[i] of the priority i, and the overflow traffic load A_L[i] from a higher priority to the priority i are calculated respectively as follows:
wherein L[i] and S[i] respectively represent the sending frequency and the frame length of the frame of the priority i, and B represents the current CAN bus communication rate.
A CAN bus resource minimization method comprises the following steps:
In some embodiments, in the step S1, a fixed value is given as the initial CAN bus communication rate.
In some embodiments, in the step S1, the initial CAN bus communication rate is calculated by the following formula:
wherein B_x is the initial CAN bus communication rate, L[0], S[0], and Bp_T[0] respectively represent the sending frequency, the frame length, and the allowable frame collision rate upper limit of the frame of the highest priority.
In some embodiments, the step S2 includes: at the CAN bus communication rate in step S1 and on the basis of an Erlang B formula in the queuing theory, calculating the frame collision rate of the frame of each priority in the descending order of priorities, wherein the frame collision rate of the frame of the highest priority is calculated directly using the Erlang B formula, while the frame collision rate of the frame of each of the remaining priorities is calculated using the Erlang B formula in combination with the cumulative traffic load and overflow traffic load associated with the respective priority.
In some embodiments, the frame collision rate Bp[i] of the frame of each priority is calculated as follows:
wherein, i=0 represents the highest priority, i=1, 2, . . . , p−1 represents the remaining priorities in the descending order, the number of priorities planned to run on the CAN bus is p; A[i] represents the traffic load of the priority i relative to the CAN bus, k=1, L_S[i] represents the accumulated traffic load of the priority i, and A_L[i] represents the overflow traffic load from a higher priority to the priority i.
In some embodiments, A[i] is calculated as follows:
In some embodiments, L_S[i] is calculated as follows:
L_S[i]=Σ0iA[j];j=0,1, . . . ,i.
In some embodiments, A_L[i] is calculated as follows:
In some embodiments, the increasing or decreasing of the CAN bus communication rate in the step S3 is performed by a stepwise method and/or a binary search method.
The present invention further provides a computer-readable storage medium with a computer program stored thereon, and the computer program, when executed by a processor, can implement the CAN bus resource minimization method described above.
The embodiments of the present invention will be described in detail below. It shall be emphasized that the following description is exemplary only and is not intended to limit the scope and application of the present invention.
The terms “first” and “second” are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly indicating the quantity of the indicated technical features. Therefore, features defined by “first” and “second” may explicitly or implicitly include one or more said features. In the description of the embodiments of the present invention, “multiple” means two or more, unless explicitly and specifically defined otherwise.
When designing and developing products using the CAN bus, the configuration of the CAN bus resources must be planned first. Currently, designers mostly refer to empirical values accumulated in the past. For example, in order to reduce the probability of frame collision events on the bus, the load rate of the CAN bus is generally set below 30%. The load rate can be calculated simply by the number of nodes connected to the bus, the sending frequency of each node and the frame length. A priority mechanism is introduced into the CAN bus, in which each priority competes for the transmission resources of the bus through a non-destructive arbitration mechanism. The CAN bus protocol currently may support at most 8 priorities. The protocol defines that the lower the value of the flag bit of a bit is, the higher the priority of the bit will be. That is, 0x00 has the highest priority, while 0x07 has the lowest priority. If data transmission to the bus is performed simultaneously by high and low priorities, then the frame of the high priority automatically obtains the transmission resources, while the frame of the low priority withdraws from arbitration. The frame of the low priority performs retransmission when the bus resources are idle according to the automatic retransmission mechanism. As a result, a frame collision event occurs for the frame of the low priority. In specific operation scenarios, designers may pay particular attention to the frame collision rate of the frame of a certain priority. However, the frame collision rates of frames of different priorities have a non-linear relationship and cannot be obtained through simple calculations.
In view of the current difficulties in resource configuration planning in the CAN bus development stage, the present invention provides an optimized design method for the CAN bus. First, an algorithm is provided that can accurately calculate the frame collision rate of the frame of each priority. This algorithm uses the Erlang B formula in the queuing theory and it can accurately calculate the frame collision rate of the frame of each priority in a descending order of priorities. Thus, the resource configuration of the CAN bus can be optimized to minimize the bus resources. The method specifically comprises: calculating the frame collision rate of the frame of each priority under a given bus communication rate and frame sending frequency, then comparing the calculated frame collision rate with the preset upper limit of the allowed frame collision rate of the frame of each priority; if the allowed frame collision rate upper limit is exceeded, then increasing the bus bandwidth (i.e., increasing the communication rate); if the allowed frame collision rate upper limit is not exceeded, then decreasing the communication rate; then continuing to calculate the frame collision rate of the frame of each priority at the new communication rate, and comparing the calculated frame collision rate with the allowed frame collision rate upper limit. This cycle continues until the minimum communication rate is calculated at which the frame collision rate of the frame of each priority does not exceed the corresponding allowed frame collision rate upper limit. The bus bandwidth (communication rate) at this point is the minimum bus bandwidth at which the allowed frame collision rate upper limit is not exceeded under the condition of the fixed sending frequency and frame length, thereby achieving optimization of bus resources.
As shown in
A smaller or larger initial communication rate B_x of the CAN bus is given, the value of which may start from 0, and then the cycle is continued to calculate the minimum communication rate that meets the conditions through determination. However, this method is computationally intensive and the calculation speed is slow. In order to reduce the amount of calculation and improve the calculation efficiency, this embodiment uses the following formula to calculate the initial communication rate of the CAN bus:
Usually, three parameters, namely the frame arrival rate λ, the service rate μ (1/μ is the time required for the service) and the number of servers k, need to be known for the Erlang B formula, that is: Bp=Erlang B(A, k). A=λ/μ, and k is the number of servers. In the present application, when the Erlang B formula is applied to the CAN bus to calculate the frame collision rate, the frames of all the priorities run on a CAN bus, so the number of servers k is normalized, i.e., the CAN bus is regarded as one server, k=1. L is the sending frequency of a certain priority, which corresponds to λ in the Erlang B formula. S is the frame length of the frame of a certain priority, B represents the current CAN bus communication rate, then S/B is the time required for the CAN bus to transmit a frame of a certain priority, which corresponds to 1/μ in the Erlang B formula. Therefore, the Erlang B formula may be rewritten as:
The frame collision rate Bp[i] of the frame of each priority i is calculated as follows:
wherein, i=0 represents the highest priority, i=1, 2, . . . , p−1 represents the remaining priorities in the descending order, the number of priorities planned to run on the CAN bus is p; A[i] represents the traffic load of the priority i relative to the CAN bus, k=1, L_S[i] represents the accumulated traffic load of the priority i, and A_L[i] represents the overflow traffic load from a higher priority to the priority i, wherein the traffic load refers to the ratio of the traffic aggregation of each priority to the transmission rate of the CAN bus.
A[i] is calculated as follows:
wherein L[i] and S[i] respectively represent the sending frequency and the frame length of the frame of the priority i, and B represents the current CAN bus communication rate.
The cumulative traffic load L_S[i] is calculated as follows:
L_S[i]=AU[j]=Σ0iA[j]=0,1, . . . ,i.
The overflow traffic load A_L[i] is calculated as follows:
The CAN bus communication rate may be increased/decreased in the stepwise manner, and the fixed step size may be adjusted according to the actual situation. For example, the communication rate (i.e., bus bandwidth) is increased/decreased at a fixed step size of 100 bit/s or 1000 bit/s. A smaller fixed step size will give more accurate results, but it will increase the number of iterations of the calculation and the calculation time. On the contrary, a larger fixed step size will reduce the accuracy of the calculation results, but it increases the calculation speed. The selection of a suitable fixed step size depends on the past accumulated experience of designers.
In some other embodiments, the CAN bus communication rate may also be increased/decreased by using binary search. For example, a larger bus communication rate and a smaller bus communication rate are obtained through two or more cycles; at a smaller communication rate (Data1), the frame collision rate of the frame of all the priorities does not exceed the frame collision rate upper limit of the frame of the priority; and at a larger communication rate (Data2), the frame collision rate of the frame of at least one priority exceeds the frame collision rate upper limit of the frame of the priority. Then the communication rate Data3 of the next cycle may be obtained by binary search between [Data1, Data2]. If the frame collision rate of the frame of all the priorities does not exceed the frame collision rate upper limit of the frame of the priority at the communication rate Data3, then the communication rate Data4 of the next cycle is obtained by binary search between [Data1, Data3]. If the frame collision rate of the frame of at least one priority exceeds the frame collision rate upper limit of the frame of the priority at the communication rate Data3, then the communication rate Data4 of the next cycle is obtained by binary search between [Data3, Data2]. The above cycle is continued until the minimum communication rate at which the frame collision rate upper limit of the frame of each priority is not exceeded is found out. As compared to the stepwise search, the binary search can reduce the amount of calculation and greatly speed up the calculation in some cases.
In some other embodiments, the CAN bus communication rate may also be increased/decreased by combining the stepwise method and binary search method.
In the prior art, there is no specific algorithm for the frame collision rate, so it is impossible to know the frame collision rate under specific circumstances (including the CAN bus communication rate, the sending frequency of the frame of each priority, the frame length of each priority, and the number of priorities), and thus the bus resources cannot be minimized. In the present invention, an algorithm for calculating the frame collision rate based on the Erlang B formula in the queuing theory is provided, and the bus resources are optimized based on the calculated frame collision rate, so that the minimum bus resources required to ensure that the frame collision rate does not exceed the allowed frame collision rate upper limit when the sending frequency and the frame length are fixed can be found out, thereby realizing optimal configuration of bus resources.
A lower CAN bus communication rate means a lower bus bandwidth and less requirements on devices, and at the same time, the lower CAN bus communication rate reduces the probability of being affected by electromagnetic interference generated by other devices and increases the communication reliability. In the present invention, the required minimum bus resources (communication rate) is accurately calculated based on the sending frequency of the frame of each priority and the preset upper limit of the frame collision rate of the frame of each priority, thereby achieving the purpose of flexible resource configuration and optimized resource utilization.
The present invention is applied in the development stage of products using the CAN communication bus, and relates to a design method of the CAN bus. Particularly, in the case of large bus load and simultaneous transmission of frames of multiple priorities, the design efficiency is improved and the bus resource utilization is optimized, so that users of the CAN bus can realize the optimal configuration of the bus resources in the development stage according to different usage scenarios, and CAN bus resources are saved.
In a lithium battery energy storage product, an inverter, an IoT communication module and four battery packs are connected together through the CAN bus. These three kinds of devices send data to the CAN bus periodically or irregularly (triggered by events).
The priority of sending frames is set as follows: if it is an alarm information frame or an event-triggered query information frame, then the frame length is set to 128 bits and the frame is set with a high priority (0X02); and if it is a periodic broadcast data frame, then the frame length is set to 256 bits and the frame is set with a low priority (0X06). The design index for the frame collision rate of the frame of the high priority is ≤3%, while the design index of the frame collision rate of the frame of the low priority is ≤10%.
Table 1 below shows the content type, the sending frequency and the frame length of the data sent by the inverter module to the CAN bus:
Table 2 below shows the content type, the sending frequency and the frame length of the data sent by the IoT communication module to the CAN bus:
Table 3 below shows the content type, the sending frequency and the frame length of the data sent by the battery pack module to the CAN bus:
Based on the data given in the foregoing tables, the implementation method of the embodiment of the present invention is given below.
In this embodiment, there are only two priorities, namely 0X02 and 0X06, wherein 0X02 is a high priority and 0X06 is a low priority, and the traffic aggregation of each priority is calculated as follows:
The high priority: 128×(1+0.4+2+2+1+1+1+2.5+3×4+5×4+1.5×4)=128×48.9=6259.2 bit/s
The low priority: 256×(1+1+2+2+2+2.5+2+1+2.5+2x4)=256×24=6144 bit/s
wherein B_x is the initial CAN bus communication rate, L[0], S[0], and Bp_T[0] respectively represent the sending frequency, the frame length, and the allowable frame collision rate upper limit of the frame of the highest priority.
In this embodiment, there are only two priorities, namely 0X02 and 0X06, wherein 0X02 is a high priority and 0X06 is a low priority. Therefore, this embodiment uses the design index of the frame collision rate of the frame of the high priority 0X02<3% to calculate the initial communication rate.
wherein, i=0 represents the highest priority, i=1, 2, . . . , p−1 represents the remaining priorities in the descending order, the number of priorities planned to run on the CAN bus is p; A[i] represents the traffic load of the priority i relative to the CAN bus, k=1, L_S[i] represents the accumulated traffic load of the priority i, and A_L[i] represents the overflow traffic load from a higher priority to the priority i. The traffic load refers to the ratio of the traffic aggregation of each priority to the transmission rate of the CAN bus.
Event-triggered transmission refers to transmission according to instructions of users. The user clicks the query instruction at a certain moment, and the query information frame sent by the user is sent through the CAN bus. The sending frequency is completely determined by the user and it is random. It is possible that there is no query instruction at all in a day (24 hours), or there may be multiple query instructions in a certain period of time (within 10 minutes). The more the query instructions are, the greater the load traffic will be. By considering randomly triggered information frames as being sent periodically, then the traffic aggregation of the high priority is calculated in the situation with the largest load traffic, and the situation with the largest load traffic may be regarded as the worst (or the most extreme) situation. When calculating the traffic aggregation of the high priority, it is assumed that it is in the worst situation, then the traffic aggregation of the high priority is calculated as follows:128×(1+0.4+2+2+1+1+1+2.5+3×4+5×4+1.5×4)=128×48.9=6259.2 bit/s
The traffic aggregation of the low priority (0X06) is calculated as follows: 256×(1+1+2+2+2+2.5+2+1+2.5+2×4)=256×24=6144 bit/s
In the calculation formula of the frame collision rate Bp[i], the calculation formula of the traffic load A[i] of each priority is as follows:
In this embodiment, first, the initial communication rate of 202380.8 bit/s calculated in the step S1 is adopted as B, then the traffic load of the frame of each priority is calculated as follows:
The frame collision rate of the frame of the high priority is directly calculated using the Erlang B formula as follows:
For the frame collision rate of the frame of other priorities, it is necessary to first calculate the cumulative traffic load and the overflow traffic load, and the calculation formula and specific calculation results thereof are as follows.
The calculation formula of the cumulative traffic load L_S[i] is as follows:
L_S[i]=Σ0iA[j]; j=0,1, . . . ,i;
Then L_S[1]=Σ0iA[j]=A[0]+A[1]=0.0309278+0.0303586=0.0612864.
The calculation formula of the overflow traffic load A_L[i] is as follows:
Finally, the frame collision rate of the low priority is calculated as follows:
The CAN bus communication rate may be increased/decreased in the stepwise manner, e.g., with a fixed step size of 100 bit/s or 1000 bit/s; or it may be implemented by binary search, or by a combination of stepwise and binary searches.
In this embodiment, Bp[0]=3% and Bp[1]=8.7%, which do not exceed the allowed frame collision rate of 3% and 10%, and thus the CAN bus communication rate of 202380.8 bit/s in the step S1 is again decreased to 200 k bit/s.
According to the communication rate of 200 k bit/s, the calculated frame collision rates of the two priorities are as shown in Table 4 below:
According to the design index, the high priority does not meet the design index, and the low priority meets the design index, so the design index is still not met as a whole. Therefore, a value is selected between [200000 bit/s, 202380.8 bit/s] for calculation again. For example, 201190.4 bit/s is selected by binary search for calculation, and after calculation, it is found that the high priority still does not meet the design index.
Finally, through continuous iteration and search, a minimum communication rate of 202380.8 bit/s that meets the design index can be obtained through calculation. At this communication rate, the frame collision rates of the two priorities are as shown in Table 5 below:
Usually, 1000 bit/s is taken as the minimum unit for the communication rate, so the minimum communication rate of 202380.8 bit/s is output as 203 k bit/s.
Other conditions of this embodiment are the same as those of Embodiment 1, except that the initial communication rate of the CAN bus is set to 250 k bit/s.
When the CAN bus communication rate and the transmission traffic of each priority are fixed, the frame collision rate of a specific priority is calculated. The frame collision rate of the frame of the highest priority is directly calculated using the Erlang B formula, and the frame collision rate of the frame of other priorities is calculated using the Erlang B formula in combination with the cumulative traffic load and the overflow traffic load of the priority. The frame collision rates of the two priorities are calculated respectively as shown in Table 6 below:
According to the design index, the frame collision rate of the frame of the high priority 0 (0x02) needs to be controlled below 3%, and the frame collision rate of the frame of the low priority 1 (0x06) needs to be controlled below 10%. The above results meet the design index, but the value is too high to meet the minimum communication rate requirements of the output CAN bus. Thus, the value of the CAN bus communication rate is re-selected to be 150 k bit/s.
When the value of the CAN bus communication rate is 150 k bit/s, the frame collision rates of the two priorities are as shown in Table 7 below:
According to the design index, it is obvious that the above results do not meet the design index, so the CAN bus communication rate is adjusted again. 200 k bit/s between [150 k bit/s, 250 k bit/s] may be selected by binary search for calculation again. The frame collision rates of the two priorities are the same as those in Table 4.
According to the design index, the frame collision rate of the frame of the high priority is 3.03%, which does not meet the design index; while the frame collision rate of the frame of the low priority is 8.70%, which meets the design index. The design index is still not met as a whole, so binary search may still be continuously performed so as to find out the minimum communication rate that meets the design index.
Finally, the minimum CAN bus resources that meet the design index can be obtained after the calculation, as shown in Table 5 above. At this time, the required CAN bus communication rate is 202380.8 bit/s. The purpose of minimizing CAN bus resources is achieved.
In the present invention, by adopting the Erlang B formula in the queuing theory, and based on data of the fixed sending frequency, the frame length and the given communication rate, the frame collision rate of the frame of each priority is accurately calculated in the descending order of priorities, then the calculated frame collision rate is compared with the preset allowed upper limit of the frame collision rate to determine whether it exceeds the allowed upper limit of the frame collision rate. If it exceeds the allowed upper limit of the frame collision rate, then the communication rate (i.e., the bus bandwidth) is further increased; and if it does not exceed the allowed upper limit of the frame collision rate, then the communication rate is decreased; and then the frame collision rate is recalculated until the minimum communication rate corresponding to not exceeding the frame collision rate upper limit allowed by the frame of each priority is acquired, so that the minimum CAN bus communication rate is calculated and resource configuration optimization of the CAN bus is realized. As can be seen from the Embodiment 2, by using the calculation formula provided in the present invention to calculate the initial communication rate, the calculation amount can be greatly reduced and the calculation efficiency can be improved.
As shall be appreciated by those skilled in the art, the embodiments of the present invention may be provided as methods, systems, or computer program products. For example, the present invention may also provide a readable storage medium on which a computer program is stored, and the computer program, when executed by a processor, can implement the steps of the CAN bus resource minimization method in the aforementioned embodiments. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, a disk storage, a CD-ROM, an optical storage, etc.) having computer-usable program codes included therein.
The present invention is described with reference to flowchart diagrams and/or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present invention. It shall be appreciated that, each process and/or block in the flowchart diagrams and/or block diagrams, and combinations of processes and/or blocks in the flowchart diagrams and/or block diagrams may be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, a special purpose computer, an embedded processor, or other programmable data processing devices to produce a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices produce a device for realizing the functions specified in one or more processes of the flowchart diagrams and/or one or more blocks of the block diagrams.
These computer program instructions may also be stored in a computer-readable storage which can guide a computer or other programmable data processing devices to operate in a particular manner, such that the instructions stored in the computer-readable storage produce an article of manufacture including the instruction means, and the instructions means implements the functions specified in one or more processes of the flowchart diagrams and/or one or more blocks of the block diagrams.
These computer program instructions may also be loaded onto a computer or other programmable data processing devices, so that a series of operating steps are performed on the computer or other programmable devices to produce computer-implemented processing, and thus instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one or more processes of the flowchart diagrams and/or one or more blocks of the block diagrams.
What described above is further detailed description of the present invention with reference to specific/preferred embodiments, and it should not be concluded that the specific embodiments of the present invention are only limited to these descriptions. For those of ordinary skill in the art to which the present invention belongs, several substitutions or modifications to the described embodiments can be made without departing from the concept of the present invention, and all these substitutions or modifications should be regarded as falling within the scope claimed in the present invention. In the description of this specification, descriptions made with reference to terms of “one embodiment,” “some embodiments,” “preferred embodiments,” “examples,” “specific examples,” or “some examples” mean that specific features, structures, materials or characteristics described in combination with the embodiment or the example are included in at least one embodiment or example of the present invention. In this specification, the schematic expressions of the above terms are not necessarily directed to the same embodiment or example. Furthermore, the specific features, structures, materials or characteristics described may be combined in a suitable manner in any one or more embodiments or examples. Different embodiments or examples and the features of different embodiments or examples described in this specification may be incorporated and combined by those skilled in the art without conflicting with each other. Although the embodiments and the advantages of the present invention have been described in detail, it shall be appreciated that, various changes, substitutions and alterations can be made herein without departing from the scope claimed in the patent application.
Number | Date | Country | Kind |
---|---|---|---|
202210567859.5 | May 2022 | CN | national |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2023/095374 | May 2023 | WO |
Child | 18956970 | US |