Multi-source data processing method, system, equipment and product of humanoid robot
By classifying and prioritizing multi-source data from humanoid robots, establishing storage and retrieval lists, and combining them with priority scheduling strategies, the inefficiency caused by static partitioned storage was solved, achieving efficient data processing and optimization of storage resources.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 广州里工实业有限公司
- Filing Date
- 2025-12-23
- Publication Date
- 2026-05-01
AI Technical Summary
In existing technologies, the use of static partitioned storage for humanoid robots results in low data storage and management efficiency, which affects work efficiency.
By classifying and prioritizing multi-source data, storage and retrieval lists are established. Data storage and retrieval are performed in conjunction with priority scheduling strategies. The utilization rate and data timeliness of storage unit groups are monitored in real time, and erase operations are executed.
It improves the data processing efficiency of humanoid robots, ensures that data with high real-time requirements receives priority storage resources, enhances storage resource utilization, and is adaptable to different types of humanoid robot applications.
Smart Images

Figure CN121957481A_ABST
Abstract
Description
A method, system, device and product for multi-source data processing of humanoid robots Technical Field
[0001] This application relates to the field of robotics technology, and in particular to a method, system, device and product for multi-source data processing of humanoid robots. Background Technology
[0002] In related technologies, some robots use static partitioned storage to process data, that is, storing and managing data generated or collected by the robot according to predefined storage areas. However, in practical applications, it has been found that static partitioned storage is prone to excessively long traversal and reading times, resulting in reduced data storage and management efficiency and affecting the working efficiency of humanoid robots.
[0003] In summary, the technical problems existing in the relevant technologies need to be improved. Summary of the Invention
[0004] The main objective of this application is to propose a multi-source data processing method, system, device, and product for humanoid robots, which can improve the data processing efficiency of humanoid robots.
[0005] To achieve the above objectives, one aspect of this application proposes a multi-source data processing method for a humanoid robot. The method includes: classifying the multi-source data of the humanoid robot and setting corresponding priorities to obtain target data; establishing a storage list and a retrieval list corresponding to the target data; the storage list and the retrieval list respectively correspond to the storage unit group of the humanoid robot; in response to the data storage instruction of the humanoid robot, storing the target data in the target storage unit according to a priority scheduling strategy and the storage list; in response to the data retrieval instruction of the humanoid robot, locating the target retrieval unit based on business needs by calling the retrieval list, and obtaining the target data; monitoring the utilization rate and data timeliness of the storage unit group, and performing an erasure operation on the corresponding data area in the storage unit group according to the monitoring results.
[0006] In some embodiments, classifying the multi-source data of the humanoid robot and setting corresponding priorities to obtain target data includes: classifying the multi-source data based on a three-dimensional classification standard to obtain classified data, wherein the classified data includes control command data, sensor data, and interaction data; calculating the priority of the classified data according to data real-time priority, time urgency weight, data size weight, and update frequency weight to obtain a priority; and identifying the classified data according to the priority and data timeliness to obtain the target data.
[0007] In some embodiments, establishing a storage list and a retrieval list corresponding to the target data includes: dividing the data storage space of the humanoid robot according to the category of the target data to obtain a storage unit group; and associating the storage unit group with the storage list and the retrieval list corresponding to the target data.
[0008] In some embodiments, the step of storing the target data in a target storage unit according to a priority scheduling strategy and the storage list in response to the data storage instruction from the humanoid robot includes: determining a target storage unit in the storage unit group according to the priority scheduling strategy of the target data and the first pointer position of the corresponding storage list in response to the data storage instruction from the humanoid robot; the first pointer position is used to locate an idle storage unit; storing the target data in the target storage unit and modifying the identifier corresponding to the target storage unit in the storage list to a preset low-level identifier; and moving the first pointer position according to the rising edge principle based on the preset low-level identifier.
[0009] In some embodiments, the step of responding to the data reading instruction from the humanoid robot, locating the target reading unit based on business requirements by calling the reading list, and obtaining the target data includes: responding to the data reading instruction from the humanoid robot, determining the data reading priority order of different business modules to obtain the business requirement priority; determining the target reading unit in the storage unit group according to the business requirement priority and the corresponding second pointer position of the reading list; the second pointer position is used to locate an idle storage unit; reading the target data from the target reading unit, and modifying the identifier corresponding to the target reading unit in the reading list to a preset low-level identifier; and moving the second pointer position according to the rising edge principle based on the preset low-level identifier.
[0010] In some embodiments, monitoring the utilization rate and data validity of the storage unit group, and performing an erasure operation on the corresponding data area in the storage unit group based on the monitoring results, includes: performing utilization rate calculation on the storage unit group to obtain the storage unit group utilization rate; when the storage unit group utilization rate reaches a preset threshold, or when the stored data in the storage unit group exceeds its preset retention period, performing an erasure operation on the corresponding data area in the storage unit group.
[0011] In some embodiments, the method further includes power failure detection processing of the humanoid robot, including: in response to a power failure signal of the humanoid robot, extracting the first pointer position of the storage list, the second pointer position of the read list, and storage unit data that has not been read and has not exceeded a preset time limit; compressing the storage unit data using a data compression algorithm to obtain compressed data; and storing the compressed data in an independently powered storage area.
[0012] To achieve the above objectives, another aspect of this application proposes a multi-source data processing system for a humanoid robot. The system includes: a data classification module for classifying the multi-source data of the humanoid robot and setting corresponding priorities to obtain target data; a list creation module for establishing a storage list and a retrieval list corresponding to the target data; the storage list and the retrieval list respectively correspond to storage unit groups of the humanoid robot; a data storage module for, in response to a data storage instruction from the humanoid robot, storing the target data in a target storage unit according to a priority scheduling strategy and the storage list; a data retrieval module for, in response to a data retrieval instruction from the humanoid robot, locating a target retrieval unit based on business needs by calling the retrieval list; and a storage management module for monitoring the utilization rate and timeliness of the storage unit group, and performing an erasure operation on the corresponding data area in the storage unit group based on the monitoring results.
[0013] To achieve the above objectives, another aspect of this application provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the method described above.
[0014] To achieve the above objectives, another aspect of the embodiments of this application proposes a computer-readable storage medium storing a computer program that, when executed by a processor, implements the methods described above.
[0015] To achieve the above objectives, another aspect of the embodiments of this application proposes a computer program product, including a computer program that, when executed by a processor, implements the aforementioned method.
[0016] The embodiments of this application include at least the following beneficial effects: This application provides a method, system, device, and product for processing multi-source data of a humanoid robot. This solution classifies the multi-source data of the humanoid robot and sets corresponding priorities to obtain target data. It can classify multi-source data, giving priority to data with high real-time requirements, thereby improving the data processing efficiency of the humanoid robot. In addition, this solution can also store or retrieve target data in response to the humanoid robot's data storage or data retrieval instructions. It can perform fast access scheduling by combining storage lists or retrieval lists, and can also erase data based on the utilization rate of storage unit groups and data timeliness, thereby improving the utilization rate of storage resources. Furthermore, by flexibly adjusting the priority weights and storage unit group ratios, it can be adapted to different types of humanoid robots such as industrial collaboration, service interaction, and medical assistance. Attached Figure Description
[0017] Figure 1 is a schematic diagram of an implementation environment provided by an embodiment of this application; Figure 2 is a flowchart of a multi-source data processing method for a humanoid robot provided by an embodiment of this application; Figure 3 is a flowchart of data classification and priority calculation provided by an embodiment of this application; Figure 4 is a schematic diagram of the correspondence between a list and a storage unit group provided by an embodiment of this application; Figure 5 is a structural schematic diagram of a multi-source data processing system for a humanoid robot provided by an embodiment of this application; Figure 6 is a hardware structure schematic diagram of an electronic device provided by an embodiment of this application. Detailed Implementation
[0018] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit it. In the following description, when referring to the accompanying drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with those of this application; they are merely examples of systems and methods consistent with some aspects of the embodiments of this application as detailed in the appended claims.
[0019] It is understood that the terms “first,” “second,” etc., used in this application may be used herein to describe various concepts, but unless otherwise stated, these concepts are not limited by these terms. These terms are only used to distinguish one concept from another. For example, without departing from the scope of the embodiments of this application, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the words “if,” “when,” or “in response to a determination” as used herein may be interpreted as “when…” or “when…” or “in response to a determination.”
[0020] As used in this application, the terms "at least one", "multiple", "each", "any", etc., "at least one" includes one, two or more, "multiple" includes two or more, "each" refers to each of the corresponding multiples, and "any" refers to any one of the multiples.
[0021] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0022] Before providing a detailed description of the embodiments of this application, some of the nouns and terms involved in the embodiments of this application will be explained first. The nouns and terms involved in the embodiments of this application are subject to the following interpretations.
[0023] Humanoid robots, also known as bionic robots, are robots designed to mimic human appearance and behavior, especially those with human-like physiques. The structural design of humanoid robots represents a remarkable reshaping of the human body, requiring not only interdisciplinary integration but also the culmination of cutting-edge technologies. Their design principles primarily include: the organic integration of bionics and mechanical engineering; breakthroughs in the integration of sensing technology and control theory; and precise coordination between drive mechanisms and execution actions.
[0024] As high-end intelligent equipment, humanoid robots rely on the processing of massive amounts of data generated by the collaboration of multiple modules to achieve their core functions. However, in related technologies, humanoid robots do not manage data according to priority, with high-priority control command data and low-priority interaction logs sharing storage units and read / write channels. For example, some related technologies use static partitioned storage but do not implement priority scheduling, causing joint control commands to need to traverse mixed data when reading, resulting in a delay of 20-40ms. This affects the real-time performance of the robot's gait adjustment and may cause imbalance in extreme scenarios.
[0025] Related technologies often employ fixed-capacity partitioning (e.g., 30% for control data and 30% for sensor data), without considering dynamic data characteristics for adjustment. For example, some commercial humanoid robot storage solutions only categorize data by source, neglecting data timeliness. This results in insufficient storage resources during peak control data periods (such as navigation in complex terrain), while interactive data occupies 20%-30% of the space for extended periods, leading to an overall storage utilization rate of only 60%-70%.
[0026] In view of this, this application provides a method, system, device, and product for multi-source data processing of humanoid robots. This solution relates to the field of humanoid robot technology, specifically to data processing and storage technology for humanoid robots, and is particularly suitable for humanoid robots that need to process multi-source heterogeneous data (sensor data, control command data, interaction data, etc.) in real time. This invention can achieve efficient classification and storage of data, low-latency access, and dynamic optimization of storage resources, ensuring the stable operation of humanoid robots in complex scenarios such as industrial collaboration (material handling, equipment maintenance), service interaction (catering service, family companionship), medical assistance (rehabilitation training guidance, patient care), and autonomous navigation (dynamic obstacle avoidance, path planning). It falls within the scope of intelligent data management technology supporting the core hardware of humanoid robots.
[0027] This application embodiment classifies multi-source data generated by humanoid robots and sets dynamic priorities, establishing storage and retrieval lists for corresponding data categories. These lists are associated with independent storage unit groups within the data storage space. During storage, the target storage unit is located based on a priority scheduling strategy and a first pointer; during retrieval, the target read unit is located based on business needs and a second pointer, with pointers moving synchronously according to the rising edge principle. This application embodiment also monitors the utilization rate of storage unit groups and data timeliness in real time, performing erasure operations according to the principle of "releasing low-value data first"; and configures a power failure protection mechanism based on high-speed compression and independent power supply. This application embodiment can improve the real-time data access efficiency of humanoid robots through an integrated solution of classification, scheduling, and dynamic management, efficiently utilizing storage resources and reliably protecting core data, adapting to humanoid robot applications in multiple scenarios.
[0028] Figure 1 is a schematic diagram of the implementation environment of a method provided in this application embodiment. Referring to Figure 1, the main hardware and software components of this implementation environment include a humanoid robot 101 and a server 102, with the humanoid robot 101 and server 102 communicatively connected. The method can be executed based on the interaction between the humanoid robot 101 and server 102. Furthermore, the humanoid robot 101 and server 102 can be nodes in a blockchain, but this embodiment does not specifically limit this.
[0029] Figure 2 is an optional flowchart of a multi-source data processing method for a humanoid robot provided in an embodiment of this application. The method in Figure 2 may include, but is not limited to, steps S102 to S205.
[0030] Step S201: Classify the multi-source data of the humanoid robot and set corresponding priorities to obtain target data; Step S202: Establish a storage list and a retrieval list corresponding to the target data; the storage list and the retrieval list respectively correspond to the storage unit group of the humanoid robot; Step S203: In response to the data storage instruction of the humanoid robot, store the target data in the target storage unit according to the priority scheduling strategy and the storage list; Step S204: In response to the data retrieval instruction of the humanoid robot, locate the target retrieval unit based on business needs by calling the retrieval list and obtain the target data; Step S205: Monitor the utilization rate and data timeliness of the storage unit group, and perform an erasure operation on the corresponding data area in the storage unit group according to the monitoring results.
[0031] Steps S201 to S205, as illustrated in this embodiment, classify the multi-source data generated by the humanoid robot to obtain at least three types of target data. The multi-source data includes sensor data, control command data, and interaction data. Then, based on the impact of the classified data on the real-time performance of the robot's motion control, a basic priority is set, and the real-time priority is calculated using a quantization formula to obtain the target data. Next, a storage list and a retrieval list corresponding to each target data are established. A first pointer position is configured in the storage list, and a second pointer position is configured in the retrieval list. Both the first and second pointer positions are set based on the rising edge principle, which is the instantaneous change from a low level "0" to a high level "1". The storage list and retrieval list are respectively associated with independent storage unit groups within the humanoid robot's data storage space. Each storage unit group contains multiple storage units matching the data granularity.
[0032] In the data storage system of this application embodiment, the first pointer of the storage list and the second pointer of the read list are used to locate free storage units to perform data storage or read operations. The "free / occupied" state of the storage unit is distinguished by a level indicator, where a low level "0" indicates "occupied" and a high level "1" indicates "free". When the storage unit completes data erasure, release, or other operations, its level indicator will jump from "0" to "1". This "instantaneous change from low to high level" is the rising edge. The pointer positioning logic is strongly correlated with this rising edge—the storage controller will capture the rising edge signal of the storage unit level in real time and use it as the trigger condition for the pointer to switch to the corresponding free storage unit.
[0033] By acquiring data storage instructions from the humanoid robot, storage requests for target data can be detected. Based on the real-time priority scheduling strategy and storage list, the target data is then stored in the target storage unit. Similarly, by acquiring data reading instructions from the humanoid robot, reading requests for target data can be detected. Based on business requirement priority and the corresponding reading list, the target reading unit is located, and the target data is retrieved from it. This embodiment also calculates the utilization rate and data validity of the storage unit group in real time. When the utilization rate of the storage unit group corresponding to the storage list or reading list reaches a preset threshold, or when the stored data exceeds its preset retention period, an erase operation is performed on the corresponding data area in the storage unit group.
[0034] In step S201 of some embodiments, classifying the multi-source data of the humanoid robot and setting corresponding priorities to obtain target data includes: classifying the multi-source data based on a three-dimensional classification standard to obtain classified data, wherein the classified data includes control command data, sensor data, and interaction data; calculating the priority of the classified data according to data real-time priority, time urgency weight, data size weight, and update frequency weight to obtain a priority; and identifying the classified data according to the priority and data timeliness to obtain the target data.
[0035] Specifically, the three-dimensional classification standard includes a source dimension, a real-time dimension, and a timeliness dimension. The source dimension clearly distinguishes between control command data (Category A), sensor data (Category B), and interactive data (Category C), establishing a mapping relationship between data and functional modules. The real-time dimension indicates that Category A data latency requirements are <10ms, Category B <50ms, and Category C has no real-time requirement, allowing for rapid identification through data header identifiers. The timeliness dimension can be set as follows: Category A: joint motor commands ≤30 minutes, gait planning commands ≤1 hour; Category B: visual obstacle data ≤12 hours, tactile pressure data ≤24 hours; Category C: ≤7 days, automatically marked as "pending cleanup" upon exceeding the time limit.
[0036] For example, in this application embodiment, data is categorized by source into: sensor data (including visual sensor obstacle data, tactile sensor pressure data, and joint angle sensor posture data), control command data (including joint motor control commands and gait planning commands), and interaction data (including voice interaction audio data and gesture recognition feature data). The categorized data is then sorted by basic priority: control command data > sensor data > interaction data; wherein, the retention period for joint motor control commands is ≤30 minutes, and for gait planning commands it is ≤1 hour; the retention period for visual obstacle data is ≤12 hours, for tactile pressure data it is ≤24 hours, and for interaction data it is ≤7 days. Within the same data category, real-time priority is calculated using a priority formula, the expression of which is shown below: In the formula, Indicates the real-time priority of the data (value from 0 to 100, the larger the value, the higher the priority). The weights representing the urgency of time are: (0.6 for control command data, 0.4 for sensor data, and 0.2 for interaction data). This indicates the time interval from when the data is generated to when it needs to be stored (unit: ms, value range: 0-100). This indicates the weight of data size (control command data 0.2, sensor data 0.3, interaction data 0.3). Indicates the number of bytes of data (unit: Byte, S / 1024 converted to KB, value range 0-100). This indicates the update frequency weights (0.2 for control command data, 0.3 for sensor data, and 0.5 for interaction data). This indicates the number of times the data is updated per minute (value range 0-100). In this embodiment, the target data is obtained by marking the data using calculated priority and timeliness data as identifiers.
[0037] Referring to Figure 3, this embodiment of the application transmits multi-source data through an interface protocol, classifies the multi-source data into types according to "control commands (Type A) / sensors (Type B) / interactions (Type C)," and configures differentiated timeliness for each type of data (Type A: 30 minutes - 1 hour, Type B: 12 - 24 hours, Type C: 7 days). By obtaining real-time data parameters (T: time interval, S: number of bytes, U: update frequency), the priority is calculated by substituting them into the priority formula, and a 2-byte "priority + timeliness" identifier is written into the data header. The classified target data is then output to the storage scheduling layer.
[0038] One of the above technical solutions has the following advantages or beneficial effects: By configuring each factor in the priority formula according to the data type, the embodiments of this application can enable data with high real-time requirements to obtain priority storage resources, thereby improving the data processing efficiency of humanoid robots.
[0039] In step S202 of some embodiments, establishing a storage list and a retrieval list corresponding to the target data includes: dividing the data storage space of the humanoid robot according to the category of the target data to obtain a storage unit group; and associating the storage unit group with the storage list and the retrieval list corresponding to the target data.
[0040] Specifically, in this embodiment, the data storage space of the humanoid robot is divided into three independent storage unit groups. The first storage unit group (accounting for 40% of the total storage space): each storage unit is 256 bytes, associated with the storage list and read list of control command data; the second storage unit group (accounting for 35% of the total storage space): each storage unit is 256 bytes, associated with the storage list and read list of sensor data; the third storage unit group (accounting for 25% of the total storage space): each storage unit is 1024 bytes, associated with the storage list and read list of interaction data, with 10% reserved as a temporary migration area for medium- and high-priority data. In this embodiment, each storage location in the storage list corresponds one-to-one with a storage unit in the corresponding storage unit group, and each read location in the read list corresponds one-to-one with a storage unit in the corresponding storage unit group.
[0041] Please refer to Figure 4. The storage list group contains Write_List_A (Class A storage list), Write_List_B (Class B storage list), and Write_List_C (Class C storage list). Each list is labeled with an "identification rule": "1" = high level (idle), "0" = low level (occupied). Each list is configured with a first pointer (Write_Ptr_A / B / C) and labeled with a "pointer movement rule": Class A / B moves 1 byte (corresponding to a 256-byte unit), and Class C moves 4 bytes (corresponding to a 1024-byte unit). The read list group contains Read_List_A (Class A read list), Read_List_B (Class B read list), and Read_List_C (Class C read list); its structure is the same as the storage list, and it is configured with a second pointer (Read_Ptr_A / B / C). The pointer movement rule is the same as that of the storage list. The storage unit groups include Group_A (40GB, 256 bytes / unit), Group_B (35GB, 256 bytes / unit), and Group_C (25GB, 1024 bytes / unit, including 2.5GB reserved area); the "list-unit group" correspondence is marked with arrows: Write_List_A / Read_List_A→Group_A, Write_List_B / Read_List_B→Group_B, Write_List_C / Read List_C→Group_C; the capacity ratio and purpose of each unit group are marked (e.g., Group_A: "Stores Class A control instructions, with priority for reading and writing channels").
[0042] One of the above technical solutions has the following advantages or beneficial effects: In this application embodiment, by setting a read list and a storage list, the identifier bit of the storage list can be mapped one-to-one with the storage unit in the independent storage unit group within the data storage space. Therefore, upon receiving a trigger signal, it can directly jump to the storage unit corresponding to the identifier bit of the rising edge of the trigger signal—since the unit identifier is already "1", it can be determined as an "idle storage unit." Simultaneously, the pointer will mark this unit as the "target candidate unit for the next storage / read operation," ensuring that subsequent data operations directly lock onto the idle unit without additional traversal. This application embodiment, through hardware-level "level change—trigger—jump" logic, compresses the "idle unit positioning delay" from the millisecond level of traditional software traversal to the microsecond level, ensuring positioning accuracy (avoiding multiple operations competing for the same unit) and improving the real-time performance of storage / read operations from the underlying layer, thus meeting the low-latency access requirements of humanoid robots.
[0043] In step S203 of some embodiments, the step of storing the target data in the target storage unit according to the priority scheduling strategy and the storage list in response to the data storage instruction of the humanoid robot includes: determining the target storage unit in the storage unit group according to the priority scheduling strategy of the target data and the first pointer position of the corresponding storage list in response to the data storage instruction of the humanoid robot; the first pointer position is used to locate an idle storage unit; storing the target data in the target storage unit and modifying the identifier corresponding to the target storage unit in the storage list to a preset low-level identifier; and moving the first pointer position according to the rising edge principle based on the preset low-level identifier.
[0044] Specifically, when a storage request for target data is detected, the target storage unit in the storage unit group is determined according to the real-time priority scheduling strategy of the target data and the first pointer position of the corresponding storage list. If the utilization rate of the storage unit group corresponding to the target data reaches a preset threshold, the low-priority data area is erased first to release space before the target storage unit is located. The target data is stored in the target storage unit, and the identifier corresponding to the target storage unit in the storage list is modified to a preset low-level identifier (digital logic "0", corresponding to the storage unit being occupied). The first pointer position is moved according to the rising edge principle based on the preset low-level identifier.
[0045] For example, after data is written to the target storage unit, the identifier of that unit in the storage list will be changed from a high level "1" (indicating "idle") to a low level "0" (indicating "occupied"). At this time, the storage controller will execute the movement of the first pointer based on the "level change triggered pointer stepping mechanism". The specific process is as follows: Trigger signal generation: The storage unit identifier completes the state switch from "high level to low level". This level change will generate a hardware trigger signal for pointer movement (response delay < 1μs); Step granularity matching: According to the category of the target data, the byte granularity of pointer movement is matched (Class A and Class B data correspond to 256-byte storage units, and the pointer moves 1 byte; Class C data corresponds to 1024-byte storage units, and the pointer moves 4 bytes); Direction and target positioning: The pointer moves the specified granularity along the "sequential direction of the storage unit group" (such as "unit 1 → unit 2 → ... → unit N" in Group_A), automatically positioning itself to the next storage unit with a high level "1" (i.e., "idle"), thus pre-locking the candidate target unit for the next storage operation.
[0046] One of the above technical solutions has the following advantages or beneficial effects: The embodiments of this application directly trigger the pointer to step towards the "idle unit direction" at a preset granularity, ensuring that subsequent storage requests can quickly and without delay locate the next available unit, compressing storage scheduling latency from the hardware triggering level, and improving the efficiency of humanoid robots in data storage.
[0047] In step S204 of some embodiments, the step of responding to the data reading instruction of the humanoid robot and locating the target reading unit based on business requirements by calling the reading list to obtain the target data includes: responding to the data reading instruction of the humanoid robot, determining the data reading priority order of different business modules to obtain the business requirement priority; determining the target reading unit in the storage unit group according to the business requirement priority and the corresponding second pointer position of the reading list; the second pointer position is used to locate an idle storage unit; reading the target data from the target reading unit and modifying the identifier corresponding to the target reading unit in the reading list to a preset low-level identifier; and moving the second pointer position according to the rising edge principle based on the preset low-level identifier.
[0048] For example, when a read request for target data is detected, the target read unit in the storage unit group is determined according to the priority of business requirements and the position of the second pointer in the corresponding read list; the target data is read from the target read unit, and the identifier corresponding to the target read unit in the read list is modified to a preset low-level identifier, and the position of the second pointer is moved according to the rising edge principle based on the preset low-level identifier.
[0049] For example, during the read request phase, the read priority order of different business modules is determined, using a two-dimensional setting logic of "static module priority + dynamic data priority weighting". Through the pre-definition of static module priorities, priority levels are pre-divided according to the module's impact on the humanoid robot's operation (scores from 0-100, with higher scores indicating higher priority). Specifically: Core level (100 points): Motion control module (directly determines the robot's gait, obstacle avoidance, and other core actions; read latency requirement <10ms); Important level (80 points): Sensor fusion decision module (relies on multi-sensor data for real-time environmental judgment; read latency requirement <30ms); Ordinary level (50 points): Human-computer interaction module (e.g., historical data reading for voice and gesture interactions; no strong real-time requirements); Background level (30 points): Offline analysis module (e.g., motion trajectory optimization, user behavior statistics; tolerates second-level latency). If the same module initiates multiple data read requests (such as the motion control module simultaneously reading "joint control commands" and "visual obstacle data"), then a weighted fusion is performed based on the "real-time priority of the data itself (the P-value calculated in claim 2)". The formula for calculating the priority of business requirements is as follows: In the formula, Predefined priority scores for modules (e.g., 100 for motion control modules). This represents the real-time priority of the data itself; weights of 0.7 (module weight) and 0.3 (data weight) can be dynamically adjusted according to the scenario. The higher the value, the higher the priority of the read request.
[0050] In one feasible embodiment, after a data write request is triggered, the category (e.g., class A, P=117) is quickly identified by the "priority + timeliness" identifier in the data header; the corresponding storage list (e.g., Write_List_A) is called to obtain the current position of the first pointer (Write_Ptr_A) (e.g., unit 100 of Group_A); the utilization rate of Group_A is checked, and if it is <95%, the free unit pointed to by the pointer (identified by "1") is directly matched as the target storage unit; if it is ≥95%, the expired data of class C in Group_C is erased, the space is released, and the target storage unit is relocated; after the data is written, the identifier of the corresponding position in the list is changed to "0", and Write_Ptr_A is moved according to the rising edge principle (moving 1 byte corresponds to 256-byte units for class A / B, and moving 4 bytes corresponds to 1024-byte units for class C), completing one storage cycle (time <10ms).
[0051] One of the above technical solutions has the following advantages or beneficial effects: The embodiments of this application protect core business through static hierarchy and dynamically weighted adapt to fine-grained requirements. This can not only ensure the real-time reading of core business such as motion control, but also flexibly cope with complex reading scheduling in multiple scenarios, and reduce the problem of delay in core business due to low-priority reading preempting resources.
[0052] In step S205 of some embodiments, monitoring the utilization rate and data validity of the storage unit group, and performing an erasure operation on the corresponding data area in the storage unit group based on the monitoring results, includes: performing utilization rate calculation on the storage unit group to obtain the storage unit group utilization rate; when the utilization rate of the storage unit group reaches a preset threshold, or when the stored data in the storage unit group exceeds its preset retention period, performing an erasure operation on the corresponding data area in the storage unit group.
[0053] Specifically, in this embodiment, the utilization rate and data validity of the storage unit group are calculated in real time. When the utilization rate of the storage unit group corresponding to any storage list / read list reaches a preset threshold, or when the stored data exceeds its preset retention period, the corresponding data area in the storage unit group is erased in the order of "low priority expired data → low priority non-expired data (only high priority is stored in urgent situations) → medium priority expired data".
[0054] For example, through the formula The utilization rate of storage unit groups is calculated in real time. Erasure is triggered when Group_A reaches 95%, Group_B reaches 90%, and Group_C reaches 85%. When the data storage duration exceeds a preset timeout (e.g., over 30 minutes for Group A), it is automatically marked as "pending erasure" and scheduled uniformly based on utilization. This embodiment executes the process in the order of "Category C expired data → Category B expired data → Category C unexpired data (only when Group_A is full)," prioritizing the release of low-value space to avoid affecting access to high-priority data. Before erasing unexpired Category B data, it is migrated to the reserved area of Group_C. If the reserved area is insufficient, it is temporarily written to a temporary storage cache partition (1GB independent space), and migrated back to the original group after erasure. After erasure, the erased area identifier in the list is reset to "1", and the pointer is updated to the nearest available unit, quickly restoring storage capacity. The erasure time is ≤300ms.
[0055] In one feasible embodiment, the storage controller monitors the level indicator signals corresponding to each storage cell in the storage list in real time at a sampling frequency of ≥1MHz. When a storage cell completes a "data erase" or "space release" operation, its corresponding indicator bit in the storage list switches from a low level "0" (indicating that the storage cell is "occupied") to a high level "1" (indicating that the storage cell is "free"). When the storage controller detects this sudden change from "low level to high level" (i.e., "rising edge"), it generates a pointer positioning trigger signal within ≤1μs. Upon receiving the trigger signal, it directly jumps to the storage cell corresponding to the indicator bit that triggered the rising edge—since the cell's indicator is already "1", it can be determined that it is a "free storage cell"; at the same time, the pointer marks this cell as the "target candidate cell for the next storage / read operation", ensuring that subsequent data operations directly lock the free cell without additional traversal and search.
[0056] One of the above technical solutions has the following advantages or beneficial effects: The embodiments of this application use hardware-level "level change - trigger - jump" logic to compress the "idle unit positioning delay" from the millisecond level of traditional software traversal to the microsecond level, which not only ensures positioning accuracy (avoids multiple operations competing for the same unit), but also improves the real-time performance of storage / reading operations from the bottom layer, adapting to the low-latency access requirements of humanoid robots.
[0057] In some embodiments, the method further includes power failure detection processing of the humanoid robot, including: in response to a power failure signal of the humanoid robot, extracting the first pointer position of the storage list, the second pointer position of the read list, and storage unit data that has not been read and has not exceeded a preset time limit; compressing the storage unit data using a data compression algorithm to obtain compressed data; and storing the compressed data in an independently powered storage area.
[0058] Specifically, when the power failure signal of the humanoid robot is detected (power supply voltage is lower than 70% of the rated value), new data access is paused within 10ms. The LZ4 high-speed compression algorithm is used to extract the first pointer position of each storage list, the second pointer position of each read list, and the data of the storage unit that has not been read and has not exceeded the preset time limit. After compression, the data is written to the Flash non-volatile storage area configured with an independent power supply module (continuous operation ≥50ms after power failure).
[0059] For example, in this embodiment, the robot's power supply voltage is monitored in real time by a voltage monitoring module. When the voltage drops to 70% of the rated value, it is determined that "power failure is imminent," and a protection process is triggered within 10ms. New data access is immediately suspended, and priority is given to backing up core data (full A-class data, unread B-class data, and list pointer positions). Furthermore, the LZ4 high-speed compression algorithm (compression speed ≥400MB / s) is used to compress the core data to 50%-60% of its original size, ensuring that ≤500MB of data is extracted within 10ms. The compressed data is written to an independently powered Flash storage area (capacity ≥1GB, supporting continuous operation ≥50ms after power failure) to avoid data loss from the storage cache. After the robot is powered back on, the backup data is read from the Flash first, and the data integrity is verified using a CRC32 check algorithm (verification time ≤5ms). If the verification passes, the list pointer positions and unprocessed data are restored; if the verification fails, the 5% redundant backup area of Group_A is used to restore the core control data, ensuring that the robot can continue its working state before the power failure, with a data loss rate of <0.1%.
[0060] One of the above technical solutions has the following advantages or beneficial effects: The embodiments of this application achieve zero loss of core data through a power failure protection mechanism, and the breakpoint recovery capability ensures that the robot can quickly resume its working state after a power failure, thereby improving the operational stability in complex scenarios.
[0061] The following is a detailed description and explanation of the embodiments of the present invention, using specific application examples: The embodiments of this application can be applied to the field of data processing technology for humanoid robots. Taking a material handling scenario using a humanoid robot in an industrial workshop as an example, the humanoid robot is used for material handling in an automotive parts workshop. This humanoid robot includes a vision sensor (30 frames / second, 1MB per frame) to detect material positions and obstacles; a 6-axis joint angle sensor (200Hz sampling) to collect joint posture data; a motion control module to output joint motor control commands (200 times / minute, 8 bytes / time) and gait planning commands (50 times / minute, 512 bytes / time); and a voice module to record interaction logs with workers (5 times / minute, 100KB / time). The humanoid robot in this embodiment requires real-time access to joint control commands and material position data (latency <10ms), efficient storage of interaction logs, dynamic optimization of storage space, and the ability to resume the handling task after a power outage.
[0062] This application embodiment collects and classifies data from a humanoid robot, resulting in the following data categories: Category A (control commands): joint motor commands (8 bytes / time, 200 times / minute, T=5ms, timeframe 30 minutes), gait planning commands (512 bytes / time, 50 times / minute, T=20ms, timeframe 1 hour); Category B (sensor data): visual material position data (500KB / frame, 30 times / minute, T=20ms, timeframe 12 hours), joint angle data (64 bytes / time, 200 times / minute, T=10ms, timeframe 24 hours); Category C (interaction): voice interaction logs (100KB / time, 5 times / minute, T=1200ms, timeframe 7 days).
[0063] Then, priority is calculated for each type of data, and a 2-byte identifier is added to the data header. For example, for a type A joint motor instruction: 0x61_1E, "0x61" corresponds to priority 97, and "1E" corresponds to a 30-minute validity period. Storage lists are created: a type A list, a type B list, and a type C list. Initially, all identifiers are set to a high level "1", and the first pointer points to the beginning of the list (corresponding to the first cell in the storage unit group). A read list is also created, with the initial state consistent with the storage lists, and the second pointer points to the beginning of the list.
[0064] When the vision sensor detects materials on the shelf (outputting type B data), the motion control module generates joint grasping commands (type A data). Both types of data need to be stored simultaneously to support subsequent adjustments to the grasping action. Therefore, the storage scheduling module identifies type A joint motor commands through the data header identifier (0x61_1E) and calls the type A storage list. It obtains the current position and stores unit number 1000 (identified as "1", idle) in the storage list. It also checks the utilization rate of the type A storage space: currently... =80000000, =167772160, =80000000 ÷ 167772160 × 100% = 47.7% (< 95%), no erasure required. Write the 8-byte articulated motor instruction to unit 1000 in the Class A memory space, and change the identifier at position 1000 of the Class A memory list to "0". Following the rising edge principle, move the Class A memory list 1 byte along the storage order direction, pointing to unit 1001 of the Class A memory space.
[0065] By identifying Class B visual material data (identified by 0x29_0C, where "0x29" corresponds to priority 41 and "0C" corresponds to a 12-hour validity period), the Class B storage list is invoked; the current position of the Class B storage pointer is obtained: cell number 5000 in the Class B storage space; 500KB of data requires 500×1024÷256=2000 cells (cells numbered 5000-6999 in the Class B storage space), all of which are free (identified by "1"); data is written in 2000 parts, and the identifiers of cells numbered 5000-6999 in the Class B storage list are changed to "0"; the Class B storage pointer is moved to cell number 7000 in the Class B storage space.
[0066] When the motion control module needs to read Class A joint motor commands and Class B material position data to calculate the gripping angle and force parameters, it receives the motion control module's request (requiring Class A data) through the read scheduling module and calls the Class A read list. It obtains the current position of the Class A read pointer: cell 1000 of the Class A storage space (identified as "0", stored but not yet read). It directly reads the 8-byte joint motor command from cell 1000, verifies its validity (stored for only 5 minutes, not expired); changes the identifier at position 1000 of the read pointer to "0" (marked as read); and moves the read pointer to cell 1001 of the Class A storage space. The system calls the B-class read list to obtain the current position of the B-class read pointer: cell 5000 of the B-class storage space; it then reads 500KB of material data from cells 5000 to 6999 in batches, verifying the validity period (stored for only 2 minutes, not expired); it changes the identifier of the B-class read pointer at positions 5000-6999 to "0"; and moves the B-class read pointer to cell 7000 of the B-class storage space. Within 25ms, the motion control module acquires both types of data, completes the grasping parameter calculation, and the robot successfully grasps the material and transports it to the designated location.
[0067] After the robot ran continuously for 7 days, the dynamic storage management module detected that the utilization rate of the C-class storage space had reached the threshold. 90% of the data (voice interaction logs) in the C-class storage space had exceeded the 7-day validity period and was marked as "to be erased".
[0068] The robot sequentially locks all expired data areas in the C-class storage space through the erasure scheduling submodule; checks through the data migration submodule that expired data does not need to be migrated (it has been backed up to the cloud); performs erasure on the locked areas using parallel erasure technology, which takes 280ms; and resets the erased area identifier in the pointer to "1" through the status monitoring submodule, updating the pointer to the first unit of the storage space.
[0069] When the workshop power supply line fails, the voltage monitoring module detects that the robot's power supply voltage has dropped from 24V to 16.8V (70% of the rated value), triggering the power outage protection. The robot will pause all new data access within 10ms, and the storage scheduling module and read scheduling module will stop working. Then, the first pointer position of each storage list, the second pointer position of each read list, and unread and non-expired data are obtained. The above data is compressed using the LZ4 algorithm. After backup is completed, the storage module's power outage protection is triggered.
[0070] One hour later, power was restored, and the robot powered on, prioritizing the activation of the power failure protection module. Backup data was read from Flash memory, verified using the CRC32 algorithm, and the positions of each list pointer were restored. The backed-up A / B category data was written to the corresponding storage units, completing the restoration. The robot then resumed its material handling tasks as before the power failure, without any data loss or abnormal operation.
[0071] Please refer to Figure 5. This application embodiment also provides a multi-source data processing system for a humanoid robot, which can implement the above-described method. The system includes: a data classification module 501, used to classify the multi-source data of the humanoid robot and set corresponding priorities to obtain target data; a list creation module 502, used to establish a storage list and a reading list corresponding to the target data; the storage list and the reading list respectively correspond to the storage unit group of the humanoid robot; a data storage module 503, used to respond to the data storage instruction of the humanoid robot, and store the target data in the target storage unit according to the priority scheduling strategy and the storage list; a data reading module 504, used to respond to the data reading instruction of the humanoid robot, and locate the target reading unit based on business needs by calling the reading list to obtain the target data; and a storage management module 505, used to monitor the utilization rate and timeliness of the storage unit group, and perform an erasure operation on the corresponding data area in the storage unit group according to the monitoring results.
[0072] It is understood that the content of the above method embodiments is applicable to this system embodiment. The specific functions implemented in this system embodiment are the same as those in the above method embodiments, and the beneficial effects achieved are also the same as those achieved in the above method embodiments.
[0073] This application also provides an electronic device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the above-described method. This electronic device can be any smart terminal, including tablet computers, in-vehicle computers, etc.
[0074] It is understood that the content of the above method embodiments is applicable to this device embodiment. The specific functions implemented by this device embodiment are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.
[0075] Please refer to Figure 6, which illustrates the hardware structure of an electronic device according to another embodiment. The electronic device includes: a processor 601, which can be implemented using a general-purpose CPU (Central Processing Unit), microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits, for executing related programs to implement the technical solutions provided in the embodiments of this application; and a memory 602, which can be implemented using a read-only memory (ROM), static storage device, dynamic storage device, or random access memory (RAM), etc. The memory 602 can store the operating system and other applications. When the technical solutions provided in the embodiments of this specification are implemented by software or firmware, the relevant program code is stored in the memory 602 and is called and executed by the processor 601. The input / output interface 603 is used to implement information input and output. The communication interface 604 is used to realize communication interaction between this device and other devices. Communication can be realized by wired means (e.g., USB, network cable, etc.) or by wireless means (e.g., mobile network, WIFI, Bluetooth, etc.). The bus 605 transmits information between the various components of the device (e.g., processor 601, memory 602, input / output interface 603 and communication interface 604). The processor 601, memory 602, input / output interface 603 and communication interface 604 are connected to each other within the device through the bus 605.
[0076] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described method.
[0077] It is understood that the content of the above method embodiments is applicable to this storage medium embodiment. The specific functions implemented in this storage medium embodiment are the same as those in the above method embodiments, and the beneficial effects achieved are also the same as those achieved in the above method embodiments.
[0078] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0079] It is understood that the content of the above method embodiments is applicable to the embodiments of this program product. The specific functions implemented by the embodiments of this program product are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.
[0080] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs. Furthermore, memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, memory may optionally include memory remotely located relative to the processor, and these remote memories can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0081] This application provides a multi-source data processing method, system, device, and product for humanoid robots. This solution, through categorized storage and direct pointer positioning, can achieve access latency of <10ms for Class A control data and <50ms for Class B sensor data, meeting the real-time requirements of robot motion control. Furthermore, the embodiments of this application employ dynamic priority scheduling and intelligent erasure strategies, increasing storage resource utilization from 60%-70% to 85%-90% and reducing invalid data backlog by over 90%. The embodiments of this application do not rely on specific storage media (such as SSDs, HDDs, Flash, etc.). Through flexible storage unit granularity design and pointer management mechanisms, it can adapt to the characteristics of different types of storage media, exhibiting strong versatility.
[0082] The power outage protection mechanism in this application achieves zero core data loss (loss rate <0.1%), and the breakpoint recovery capability ensures that the robot quickly resumes its working state after a power outage, improving operational stability in complex scenarios. Furthermore, by flexibly adjusting priority weights and storage unit group ratios, it can adapt to different types of humanoid robots, such as those used for industrial collaboration, service interaction, and medical assistance, resulting in low deployment costs and strong compatibility.
[0083] The embodiments described in this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided by the embodiments of this application. As those skilled in the art will know, with the evolution of technology and the emergence of new application scenarios, the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
[0084] Those skilled in the art will understand that the technical solutions shown in the figures do not constitute a limitation on the embodiments of this application, and may include more or fewer steps than shown, or combine certain steps, or different steps.
[0085] The system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0086] Those skilled in the art will understand that all or some of the steps in the methods disclosed above, as well as the functional modules / units in the systems and devices, can be implemented as software, firmware, hardware, or suitable combinations thereof.
[0087] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0088] It should be understood that in this application, "at least one (item)" means one or more, and "more than" means two or more. "And / or" is used to describe the relationship between related objects, indicating that three relationships can exist. For example, "A and / or B" can represent three cases: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0089] In the embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of the units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between systems or units may be electrical, mechanical, or other forms.
[0090] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0091] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0092] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes multiple instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing programs, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0093] The preferred embodiments of the present application have been described above with reference to the accompanying drawings, but this does not limit the scope of the claims of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and substance of the embodiments of the present application shall be within the scope of the claims of the present application.
Claims
1. A method for processing multi-source data of a humanoid robot, characterized in that, The method is applied to a humanoid robot and includes the following steps: classifying the multi-source data of the humanoid robot and setting corresponding priorities to obtain target data; establishing a storage list and a retrieval list corresponding to the target data; the storage list and the retrieval list respectively correspond to the storage unit groups of the humanoid robot; responding to the data storage command of the humanoid robot, storing the target data in the target storage unit according to the priority scheduling strategy and the storage list; responding to the data retrieval command of the humanoid robot, locating the target retrieval unit based on business needs by calling the retrieval list, and obtaining the target data; monitoring the utilization rate and data timeliness of the storage unit group, and performing an erasure operation on the corresponding data area in the storage unit group according to the monitoring results.
2. The method according to claim 1, characterized in that, The process of classifying the multi-source data of the humanoid robot and setting corresponding priorities to obtain target data includes: classifying the multi-source data based on a three-dimensional classification standard to obtain classified data, wherein the classified data includes control command data, sensor data, and interaction data; calculating the priority of the classified data according to the real-time priority, time urgency weight, data size weight, and update frequency weight to obtain a priority; and identifying the classified data according to the priority and data timeliness to obtain the target data.
3. The method according to claim 1, characterized in that, The step of establishing the storage list and retrieval list corresponding to the target data includes: dividing the data storage space of the humanoid robot according to the category of the target data to obtain storage unit groups; and associating the storage units of the storage unit groups with the storage list and retrieval list corresponding to the target data.
4. The method according to claim 1, characterized in that, The step of responding to the data storage instruction from the humanoid robot and storing the target data in the target storage unit according to the priority scheduling strategy and the storage list includes: responding to the data storage instruction from the humanoid robot, determining the target storage unit in the storage unit group according to the priority scheduling strategy of the target data and the first pointer position of the corresponding storage list; the first pointer position is used to locate an idle storage unit; storing the target data in the target storage unit and modifying the identifier corresponding to the target storage unit in the storage list to a preset low-level identifier; and moving the first pointer position according to the rising edge principle based on the preset low-level identifier.
5. The method according to claim 1, characterized in that, The step of responding to the data reading instruction from the humanoid robot, locating the target reading unit based on business requirements by calling the reading list, and obtaining the target data includes: responding to the data reading instruction from the humanoid robot, determining the data reading priority order of different business modules to obtain the business requirement priority; determining the target reading unit in the storage unit group according to the business requirement priority and the corresponding second pointer position of the reading list; the second pointer position is used to locate an idle storage unit; reading the target data from the target reading unit, and modifying the identifier corresponding to the target reading unit in the reading list to a preset low-level identifier; and moving the second pointer position according to the rising edge principle based on the preset low-level identifier.
6. The method according to claim 1, characterized in that, The step of monitoring the utilization rate and data validity of the storage unit group and performing an erasure operation on the corresponding data area in the storage unit group based on the monitoring results includes: performing utilization rate calculation on the storage unit group to obtain the storage unit group utilization rate; when the utilization rate of the storage unit group reaches a preset threshold, or when the stored data in the storage unit group exceeds its preset retention period, performing an erasure operation on the corresponding data area in the storage unit group.
7. The method according to any one of claims 1 to 6, characterized in that, The method further includes power failure detection processing for the humanoid robot, including: in response to the power failure signal of the humanoid robot, extracting the first pointer position of the storage list, the second pointer position of the read list, and the storage unit data that has not been read and has not exceeded the preset time limit; compressing the storage unit data using a data compression algorithm to obtain compressed data; and storing the compressed data in an independently powered storage area.
8. A multi-source data processing system for a humanoid robot, characterized in that, The system includes: a data classification module for classifying multi-source data from the humanoid robot and setting corresponding priorities to obtain target data; a list creation module for establishing a storage list and a retrieval list corresponding to the target data; the storage list and the retrieval list respectively correspond to the storage unit groups of the humanoid robot; a data storage module for responding to the data storage instructions of the humanoid robot and storing the target data in the target storage unit according to the priority scheduling strategy and the storage list; a data retrieval module for responding to the data retrieval instructions of the humanoid robot, locating the target retrieval unit based on business needs by calling the retrieval list, and obtaining the target data; and a storage management module for monitoring the utilization rate and timeliness of the storage unit group and performing an erasure operation on the corresponding data area in the storage unit group according to the monitoring results.
9. An electronic device, characterized in that, The electronic device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the method according to any one of claims 1 to 7.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the method of any one of claims 1 to 7.
Citation Information
Patent Citations
Medical imaging equipment data storage method and device
CN105677587A
Online data storage optimization method based on storage system
CN107193693A
Data storage method and device
CN113064558A
Multi-modal data storage control device and method of intelligent agent
CN120611068A
Big data storage method and system applied to laboratory
CN120669916A