World model based simulation data synthesis method and system for embodied robots
Patent Information
- Application Number
- CN202611000417.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-07
- Publication Date
- 2026-08-18
AI Technical Summary
[0005]本申请的目的在于克服现有仿真方法对外壳接触面液体覆盖工况建模不足的问题,提供一种基于世界模型的具身机器人仿真数据合成方法及系统,通过融合外壳接触面实测电气信号与环境湿度数据,实现液体蔓延速度的动态修正和积水深度的精确估算,进而生成物理真实性更高的仿真数据
其一,通过将实测局部接触电流信号与环境湿度数据融合,动态修正液体蔓延速度的估算精度,使仿真数据中的液体覆盖状态更贴合真实工况,克服了现有方法仅依赖全局湿度标量导致分布偏差的问题。
Smart Images

Figure CN122595232A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot simulation technology, and in particular to a method and system for synthesizing embodied robot simulation data based on a world model. Background Technology
[0002] With the continuous growth in demand for intelligent operation and maintenance of industrial facilities, wall-climbing embodied robots are widely used in scenarios such as tank exteriors, ship hulls, bridge steel structures, and oil pipelines. These robots rely on magnetic or vacuum adsorption mechanisms to directly attach their outer shell to the wall surface being inspected. The outer shell's underside is the walking contact surface directly in contact with the wall, hereinafter referred to as the outer shell contact surface. In outdoor operations or industrial sites, factors such as rainfall, condensation, and washing operations can cause liquid to accumulate between the outer shell contact surface and the wall surface being inspected. A liquid water film lies directly between the two, altering the frictional characteristics of the contact surface and affecting the robot's adhesion stability and motion control accuracy during crawling. Therefore, detailed modeling of the liquid-covered contact surface conditions and generating training data during the simulation phase are crucial for improving the success rate of motion strategies in real, damp wall environments.
[0003] Existing embodied robot simulation methods suffer from two main shortcomings when handling liquid-covered conditions. First, relying on pre-calibrated fixed friction coefficient attenuation tables treats the impact of liquid coverage on friction as a static parameter directly applied to the entire simulation environment. This fails to respond to dynamic changes in local liquid distribution on the shell contact surface, leading to a significant decrease in simulation accuracy under conditions of large local water accumulation variations. Second, while some methods incorporate ambient humidity as an input parameter, humidity is uniformly applied to the simulation scene as a global scalar. Differences in liquid distribution at different locations on the shell contact surface are averaged during modeling, resulting in significant deviations between simulation results and real-world conditions.
[0004] Since none of the above methods establish a dynamic correlation between the liquid spread rate on the shell contact surface and the measured electrical signal, the continuous influence of the liquid coverage evolution over time on the contact friction boundary is difficult to be effectively reflected in the simulation data, which restricts the robustness of the motion strategy in a real wet wall environment. Summary of the Invention
[0005] The purpose of this application is to overcome the problem that existing simulation methods are insufficient in modeling liquid coverage conditions on the shell contact surface, and to provide a method and system for synthesizing embodied robot simulation data based on a world model. By integrating measured electrical signals from the shell contact surface with environmental humidity data, dynamic correction of liquid spread rate and accurate estimation of water depth can be achieved, thereby generating simulation data with higher physical realism.
[0006] The objective of this application is achieved through the following technical solution: Firstly, this application provides a method for synthesizing embodied robot simulation data based on a world model, including: The humidity of the environment in which the target embodied robot is located, the initial distribution of liquid coverage on the outer shell contact surface, and the local contact current detected by each electrode node on the outer shell contact surface are obtained. Based on the ambient humidity and the initial distribution state, calculate the theoretical spread rate of the liquid on the contact surface of the outer shell; The actual coverage area of the liquid on the contact surface of the outer shell is determined based on the local contact current, and the local contact current is converted into the cumulative voltage across the water film. The theoretical spread rate is corrected based on the accumulated voltage and the actual coverage area to obtain the corrected spread rate; The time interval between adjacent pulses is extracted from the accumulated voltage as a time step, and the corrected spread rate is accumulated according to the time step to obtain the actual water depth on the outer shell contact surface; The frictional attenuation parameters of the outer shell contact surface are determined based on the actual water depth. The actual water depth, the frictional attenuation parameters, and the intended action sequence of the target embodied robot are input into the world model. The world model then outputs simulation data of the target embodied robot executing the intended action sequence.
[0007] Optionally, the actual water depth, the frictional attenuation parameter, and the sequence of actions to be executed are concatenated into an input vector; the input vector is fed into the encoding network of the world model to compress and extract state features representing the current physical state and action features representing the action sequence; the state features and action features are fed into the dynamic prediction network of the world model to progressively deduce the predicted state sequence for each future moment according to time steps, the predicted state sequence reflecting the changing trends of water depth and liquid coverage at the shell contact area; the predicted state sequence is fed into the decoding network of the world model to restore observable measurements and output simulation data.
[0008] Optionally, based on the actual water depth, a pre-calibrated water depth-friction coefficient lookup table can be consulted to directly obtain the corresponding frictional force attenuation parameter.
[0009] Optionally, the dry friction coefficient of the outer shell contact surface and the water absorption rate of the outer shell material are obtained; the actual water depth is multiplied by the water absorption rate of the material to obtain the effective water film thickness that can actually adhere to the contact surface; the effective water film thickness is multiplied by a preset liquid slip constant to obtain the lubricity of the water film on the contact surface; the friction loss ratio is calculated based on the lubricity and the dry friction coefficient; and the friction attenuation parameter is calculated based on the dry friction coefficient and the loss ratio.
[0010] Optionally, the area and perimeter of the current liquid-covered area are read from the initial distribution state; the current area is subtracted from the historical area recorded in the previous collection cycle to obtain the area increment, and the area increment is divided by the perimeter to obtain the theoretical expansion step of the covered area boundary; the ambient humidity is converted into a surface resistance coefficient through a preset humidity-resistance mapping table, and the theoretical expansion step is divided by the surface resistance coefficient to obtain the theoretical spread rate.
[0011] Optionally, the contact voltage that should theoretically be generated in the covered area is obtained by multiplying the standard voltage of the shell material under a water film per unit area by the area of the actual covered area; the accumulated voltage is subtracted from the theoretical contact voltage to obtain a voltage deviation value reflecting the actual water volume deviation; the voltage deviation value is converted into a speed compensation amount through a preset compensation function, and the theoretical spread speed is added to the speed compensation amount to obtain the corrected spread speed.
[0012] Optionally, electrode nodes where the local contact current exceeds a preset leakage threshold are marked as conducting nodes; the outermost node among all conducting nodes is taken as a boundary node, and the closed area enclosed by connecting all the boundary nodes in sequence is determined as the actual liquid coverage area.
[0013] Optionally, the equivalent resistance of the water film in the actual coverage area is calculated based on the area of the actual coverage area and the fixed surface resistivity of the shell material; the total current is obtained by summing the local contact currents of all electrode nodes in the actual coverage area, and the cumulative voltage across the water film is obtained by multiplying the total current by the equivalent resistance.
[0014] Optionally, voltage-controlled oscillator logic is used to convert the accumulated voltage into a pulse signal whose frequency increases with the voltage; the time difference between two adjacent peaks in the pulse signal is taken as the time step.
[0015] Secondly, this application provides a world model-based embodied robot simulation data synthesis system, including an acquisition module, a calculation module, an analysis module, a correction module, an extraction module, and a determination module, each module corresponding to a step of the above method.
[0016] The technical solution provided in this application has the following beneficial effects: Firstly, by fusing the measured local contact current signal with the ambient humidity data, the estimation accuracy of the liquid spread rate is dynamically corrected, making the liquid coverage state in the simulation data more consistent with the real working conditions, thus overcoming the problem of distribution deviation caused by existing methods relying solely on global humidity scalars.
[0017] Secondly, by extracting the adaptive time step from the accumulated voltage, the integration step is automatically adjusted according to the dynamic changes of the liquid, which significantly improves the timing accuracy of water depth calculation during the stage of severe liquid spread and enhances the timing consistency of friction modeling.
[0018] Third, by jointly inputting the actual water depth and friction attenuation parameters with the sequence of actions to be executed into the world model for joint simulation, the generated simulation data can continuously reflect the impact of liquid coverage on the robot's dynamic boundary, ultimately improving the physical realism of the simulation data and the transfer robustness of the motion strategy. Attached Figure Description
[0019] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 This is an overall flowchart of the embodied robot simulation data synthesis method based on a world model disclosed in this application; Figure 2 This is a schematic diagram of the grid occupancy of the outer shell contact surface disclosed in this application; Figure 3 This is a schematic diagram showing the distribution of electrode nodes on the outer shell contact surface and the identification of the liquid-covered area disclosed in this application. Figures 4a-4b This is a schematic diagram showing the distribution of electrode nodes on the outer shell contact surface and the identification of the liquid-covered area in a specific embodiment of this application. Figure 5 This is a schematic diagram of the internal network architecture of the world model disclosed in this application; Figure 6 This is a schematic diagram illustrating the entire process of simulation data synthesis disclosed in this application. Detailed Implementation
[0021] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. The described embodiments are only some embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the protection scope of this application.
[0022] When performing wall inspection tasks on the outer walls of storage tanks, ship hulls, or pipeline surfaces, the ventral side of the robot's outer shell directly adheres to the surface being inspected, forming the outer shell contact surface. Factors such as rainfall, condensation, or flushing operations can cause liquid to accumulate between the outer shell contact surface and the wall surface. This liquid film directly alters the frictional characteristics of the contact surface, affecting the robot's adhesion stability. Existing simulation methods are insufficient for modeling such dynamic liquid-covered conditions, limiting the robustness of motion strategy transfer. Therefore, this application provides a world model-based simulation data synthesis method for embodied robots. The overall process is as follows: Figure 1 As shown, Figure 1 S1 to S6 are the six execution steps of the method, and the specific implementation process of each step is as follows: S1: Obtain the humidity of the environment where the target embodied robot is located, the initial distribution of liquid coverage on the outer shell contact surface, and the local contact current detected by each electrode node on the outer shell contact surface.
[0023] This step collects three types of basic data from the physical environment of the target embodied robot and the sensor array on its outer shell contact surface. These data serve as the initial inputs for subsequent estimation of liquid spread rate and calculation of water depth. The three types of data complement each other: ambient humidity reflects external evaporation conditions, the initial distribution state describes the macroscopic geometric contour, and the local contact current verifies the existence of microscopic liquids.
[0024] Ambient humidity refers to the relative humidity of the environment in which the target embodied robot is located. It is obtained by temperature and humidity sensors deployed on the top of the robot's shell or inside the robot body, with a fixed sampling period, for example, 500 milliseconds. The specific value can be adjusted according to actual needs. Ambient humidity directly affects the evaporation or condensation rate of liquid on the shell contact surface. The higher the humidity, the slower the evaporation, and the easier it is for the liquid to accumulate and spread. It is an important input parameter for subsequent calculations of the theoretical spread rate.
[0025] The initial distribution state is the geometric description of the liquid-covered area on the shell contact surface at the current acquisition moment, including the area and perimeter of the current liquid-covered area. For example... Figure 2 As shown, Figure 2 The discretization of the outer shell contact surface is represented by a row and column grid, where 101 is the liquid-occupied grid, indicating that there is liquid covering at the grid location; 102 is the non-occupied grid, indicating that there is no liquid covering at the grid location; and 103 is the boundary contour formed after the liquid-occupied areas are connected.
[0026] Figure 2 The dark-colored grid represents the 101 liquid-occupied grid, the white grid represents the 102 non-occupied grid, and the bottom label 103 indicates the boundary outline. The initial distribution state is updated in each acquisition cycle by an electrode array deployed on the outer shell contact surface. The electrode array determines the presence of liquid by detecting the conductivity state at each grid location, and the output result is mapped as follows: Figure 2The grid occupancy diagram is shown. The processing module calculates the sum of the areas of all 101 grids to obtain the initial spread area, extracts the boundary edges between 101 and 102 grids and sums them to obtain the initial spread perimeter.
[0027] Local contact current is a weak current value detected at each electrode node on the contact surface of the outer casing, measured in microamps. When liquid covers the area of an electrode node, the water film forms a conductive path between adjacent electrodes, generating a current signal in the microamp to milliamp range. The initial distribution provides the macroscopic geometric profile, while the local contact current verifies the actual state of the liquid at each local location at the microscopic level. The two complement each other, jointly providing accurate liquid distribution information for subsequent steps.
[0028] Taking a specific set of values as an example: the processing module discretizes the outer shell contact surface into 400 grids of 20 rows by 20 columns, with each grid having a side length of 10 mm; at a certain acquisition time, the temperature and humidity sensor reading is 78.5%; 32 grids on the outer shell contact surface are marked as liquid-occupied, corresponding to an initial spread area of 3200 square millimeters, and the total length of the boundary grid is 280 mm, which is the initial spread perimeter; each of the 400 electrode nodes outputs a microampere-level current sampling value as the local contact current.
[0029] S2: Calculate the theoretical spread rate of the liquid on the contact surface of the outer shell based on the ambient humidity and the initial distribution state.
[0030] After obtaining the ambient humidity data and initial liquid spread state data in step S1, since the initial liquid spread state data only reflects the static geometric information of the liquid coverage at the current moment, but the spread of liquid on the shell surface is a continuously changing dynamic process, it is necessary to combine the ambient humidity data to estimate the liquid spread rate so that the liquid volume depth can be calculated in a time-series manner in subsequent steps.
[0031] The specific implementation process for this step is as follows: S21: The processing module reads the area and perimeter of the current liquid-covered area from the initial distribution state.
[0032] Specifically, the processing module traverses Figure 2 The initial spread area is obtained by summing the areas occupied by all liquids marked as 101 within the grid. The initial spread perimeter is obtained by scanning the boundary between grids 101 and 102 and summing the boundary. Since the liquid mainly spreads outward along the boundary of the covered area, the initial spread perimeter directly determines the length of the channel through which the liquid spreads outward.
[0033] S22: The processing module subtracts the historical area recorded in the previous collection cycle from the current area to obtain the area increment, and then divides the area increment by the boundary perimeter to obtain the theoretical expansion step size of the coverage area boundary.
[0034] The historical spread area is the total liquid coverage area recorded and cached by the processing module at the end of the previous acquisition cycle. The area increment reflects the net change in liquid coverage area within the most recent acquisition cycle. Dividing the area increment by the boundary perimeter is equivalent to distributing the newly added area evenly across the entire boundary length, thus obtaining the average advance distance of the boundary in the normal direction, i.e., the theoretical expansion step size. Taking the values in step S1 as an example: the historical spread area is 2800 square millimeters, the current initial spread area is 3200 square millimeters, then the area increment is 400 square millimeters; by calculating the initial spread perimeter of 280 millimeters, the theoretical expansion step size is approximately 400 / 280 = 1.43 millimeters.
[0035] Specifically, for boundary cases where the historical area from the previous collection cycle is missing during the initial execution or system initialization phase, the processing module initializes as follows: In the first collection cycle after system startup, the historical spread area is initialized to zero, and the area increment and theoretical expansion step size are not calculated. That is, the theoretical spread rate is not output in the first collection cycle; only the currently collected initial spread area is recorded and cached as the historical spread area. From the second collection cycle onwards, the historical spread area already exists, and the processing module calculates the area increment, theoretical expansion step size, and theoretical spread rate normally as described in S22 above. Through the above initialization strategy, the logical breakpoint of being unable to calculate due to the lack of historical area in the first collection cycle is avoided, ensuring the executability of the algorithm at the initial moment.
[0036] S23: The processing module converts the ambient humidity into a surface resistance coefficient using a preset humidity-resistance mapping table, and divides the theoretical expansion step size by the surface resistance coefficient to obtain the theoretical propagation speed.
[0037] The humidity-resistance mapping table is a pre-calibrated reference table based on the physical properties of the shell material. The construction method is as follows: In a controlled laboratory environment, droplets of the same area are applied to a test panel made of the same material as the shell contact surface. The changes in droplet expansion rate are recorded under different relative humidity conditions, and the attenuation ratio of the expansion rate under each humidity condition is normalized to a surface resistance coefficient value between 0 and 1. The humidity-resistance mapping table used in this embodiment is shown in Table 1 below: Table 1 Humidity-Resistance Mapping Table
[0038] The surface resistance coefficient reaches its maximum value of 1.0 when the humidity is 0%, indicating maximum resistance to liquid spread; it reaches its minimum value of 0.12 when the humidity is 100%, indicating extremely slow evaporation and almost no resistance to liquid spread. Values in the intermediate range are determined by linear interpolation, and the specific values are adjusted according to the shell material.
[0039] The formula for calculating the theoretical propagation rate is: ; in For the theoretical propagation speed, To theoretically expand the step size, This is the surface resistance coefficient. Taking the value from step S1 as an example: the ambient humidity of 78.5% falls within the 60% to 80% range. Looking up the mapping table, we get... =0.34, .
[0040] S3: Analyze the local contact current data to determine the actual liquid contact area on the shell surface, and accumulate and convert the local contact current data to obtain the cumulative contact voltage data.
[0041] After the theoretical liquid spread rate has been calculated based on geometric information and ambient humidity data in step S2, since the theoretical liquid spread rate depends only on the macroscopic area change and ambient humidity parameters, but the liquid distribution on the shell surface may be uneven at the microscopic level, it is necessary to use the local contact current data collected in step S1 to determine the actual distribution area of the liquid on the shell surface and convert the current data into a cumulative value in the dimension of voltage so that subsequent steps can correct the theoretical liquid spread rate.
[0042] The specific implementation process of "determining the actual liquid contact area on the outer casing surface" includes the following operations: S31: The processing module marks electrode nodes whose local contact current exceeds the preset leakage threshold as conducting nodes.
[0043] The leakage current threshold is a pre-calibrated current limit value based on the insulation characteristics of the casing material and the ambient noise level. For example, it can be set to 5 microamps, and the specific value is calibrated according to the actual casing material and ambient noise level. When the local contact current of a certain electrode node exceeds the leakage current threshold, the processing module determines that there is liquid coverage at the node location and marks it as the 401 conducting node in Figure 4.
[0044] The local contact current is generated using an active excitation method: In addition to the aforementioned grid-like electrode nodes, a common reference electrode, electrically isolated from all electrode nodes, is set on the contact surface of the casing. This common reference electrode is connected to the excitation source and maintained at a fixed reference potential. The excitation source applies a sinusoidal AC excitation signal with an amplitude of 1 to 3 volts and a frequency of 1 kHz to the common reference electrode. AC excitation is used instead of DC excitation to avoid electrolytic polarization on the electrode surface, which could lead to measurement drift. When the area where an electrode node is located is covered by liquid, the water film forms a conductive path between the electrode node and the common reference electrode, generating an AC current in the microamp to milliamp range under the excitation voltage. The amplitude of this current is extracted by the detection circuit described below, which is the local contact current of that electrode node. Electrode nodes not covered by liquid generate only a background leakage current much smaller than the leakage threshold due to the electrical isolation of the casing substrate.
[0045] The local contact current detection circuit for each electrode node sequentially includes a transimpedance amplifier, a bandpass filter, a programmable gain amplifier, and an analog-to-digital converter (ADC). The transimpedance amplifier converts the weak microampere current signal into a voltage signal, achieving current-to-voltage conversion. The bandpass filter, centered at the excitation signal frequency of 1 kHz, filters out power frequency interference and high-frequency noise. The programmable gain amplifier amplifies the filtered voltage signal to the full-scale range of the ADC. The ADC samples and quantizes the amplified signal at a sampling rate no less than ten times the excitation frequency, and outputs a digital current sample value after envelope detection to obtain its amplitude. The processing module uses a multiplexer to time-division multiplex all electrode nodes, sequentially reading the digital current sample value of each node as the local contact current. The current resolution of the detection circuit is no less than 1 microampere to ensure reliable detection of the 5 microampere leakage current threshold.
[0046] The leakage current threshold is set based on a multiple of the background leakage current when there is no liquid coverage. It requires comprehensive consideration of environmental noise levels, electrode size, and the insulation characteristics of the casing material: the greater the environmental electromagnetic noise, the smaller the effective electrode area, or the lower the insulation resistance of the casing substrate, the greater the background leakage current when there is no liquid coverage, and the higher the leakage current threshold should be to avoid false alarms. In this embodiment, under the conditions that the effective electrode area is approximately 1 square millimeter, the surface insulation resistance of the casing substrate is greater than 1 megohm, and the background leakage current caused by environmental electromagnetic noise is approximately 1 to 2 microamps, the leakage current threshold is set to approximately 3 times this background leakage current, i.e., 5 microamps. This can effectively suppress false alarms while ensuring detection sensitivity. When applied to scenarios with poorer insulation or stronger noise, the leakage current threshold can be recalibrated to approximately 3 times the aforementioned background leakage current.
[0047] Among them, the electrode nodes on the outer shell surface refer to a set of miniature conductive contacts that are pre-embedded or attached to the surface of the robot's outer shell. The electrode nodes are distributed in a grid pattern, with one electrode node arranged at the center of each grid unit. Each electrode node is electrically isolated from its adjacent electrode nodes through the outer shell substrate. When liquid covers the area where a certain electrode node is located, the liquid water film forms a conductive path between the electrode node and its adjacent electrode nodes, thereby generating a weak current, which is the local contact current data.
[0048] The process of identifying electrode node distribution and coverage area is as follows: Figure 3 As shown, Figure 3 In the diagram, 401 is a conducting node, which is an electrode node where the local contact current exceeds the preset leakage current threshold; 402 is a non-conducting node, which is an electrode node where the local contact current does not exceed the leakage current threshold; 403 is a boundary node, which is the outermost node among all 401 conducting nodes; and 404 is the actual coverage area enclosed by connecting all 403 boundary nodes in sequence.
[0049] S32: The processing module takes the outermost node among all the conductive nodes as the boundary node, and determines the closed area enclosed by connecting all the boundary nodes in sequence as the actual coverage area of the liquid.
[0050] The outermost connected node is found using the convex hull algorithm. The convex hull algorithm is a classic algorithm in computational geometry. Given a set of points on a plane, this algorithm finds the smallest convex polygon that can enclose all the points. The vertices of this polygon are the outermost points in the set of points.
[0051] The processing module takes the two-dimensional coordinates of all 401 connected nodes as input, and the convex hull algorithm outputs the set of nodes that constitute the boundary of the convex hull, i.e. Figure 3 In the context of boundary nodes 403, the closed region 404 formed by connecting all 403 boundary nodes in sequence is the actual liquid coverage area. In the case of a three-dimensional surface, the processing module first projects the electrode node coordinates onto a two-dimensional plane through surface unfolding and mapping. After performing convex hull operations on the two-dimensional plane, the boundary results are mapped back to the three-dimensional surface.
[0052] Considering that the actual liquid distribution may be non-convex, such as multiple separate droplets, rings, or C-shaped liquid films, directly calculating a single convex hull for all connected nodes would incorrectly include concave or cavitary regions between nodes into the coverage area, thus overestimating the actual coverage area. Therefore, before executing the convex hull algorithm, the processing module first performs connectivity clustering on all connected nodes: setting an adjacency distance threshold based on the grid spacing of the electrode nodes, and grouping connected nodes whose distance does not exceed this threshold into the same connected cluster, thereby obtaining one or more unconnected connected clusters.
[0053] When the clustering result is multiple connected clusters, the processing module performs a convex hull algorithm on each connected cluster to obtain its own closed sub-region. The area and perimeter of each sub-region are summed and used as the total area and total perimeter of the actual covered area, respectively, thus correctly handling the situation where multiple separated droplets coexist. When the ratio of the convex hull area of a connected cluster to the actual area occupied by the conductive nodes in the cluster exceeds a preset concavity threshold, such as 1.3, it indicates that there is a significant concavity inside the cluster. The processing module then replaces the convex hull algorithm with a concave hull algorithm (also known as the alpha-shape algorithm) for the connected cluster. The concave hull algorithm controls the degree of concavity of the boundary with a radius parameter. By eliminating boundary triangles whose circumscribed circle radius is greater than the radius parameter, the generated boundary can fit non-convex contours such as rings and C-shapes. The radius parameter is taken as 1 to 2 times the electrode node grid spacing.
[0054] Therefore, for conventional liquid film coverage conditions that are continuous and approximately convex, the processing module adopts the convex hull algorithm to ensure computational efficiency; for liquid film coverage conditions that are separated or non-convex, the processing module automatically switches to the clustered convex hull or concave hull algorithm to ensure the accuracy of area and boundary identification, so that this method can obtain accurate actual coverage areas in various liquid distribution scenarios.
[0055] The following combination Figure 4a and Figure 4b The execution process of the convex hull algorithm and the methods for calculating its area and perimeter are explained in detail: Suppose the processing module discretizes the housing contact surface into 400 grids (20 rows x 20 columns) with a grid spacing of 6 mm. At a certain acquisition moment, the processing module detects that the local contact current of 28 electrode nodes exceeds the 5 microamp leakage current threshold and marks them as 401 conducting nodes. Figure 4a As shown, 401 conductive nodes are distributed in the central region of the grid, while 402 non-conductive nodes are distributed in the outer region.
[0056] The processing module performs the convex hull algorithm on all 28 401 connected nodes. The algorithm consists of four stages: sorting, constructing the lower convex hull, constructing the upper convex hull, and merging.
[0057] In the first stage, the processing module sorts the 28 connected nodes by their horizontal coordinates from smallest to largest, and if the horizontal coordinates are the same, sorts them by their vertical coordinates from smallest to largest.
[0058] In the second stage, the processing module starts from the leftmost node after sorting and scans each node sequentially along the increasing horizontal coordinate direction to construct the lower convex hull. Each time a new node is added, the processing module checks the three-point turning relationship formed by the last two nodes of the current lower convex hull and the new node.
[0059] The turning relationship is determined by the cross product of vectors: Let the two last nodes be P1 and P2, and the new node be P3. ,in This represents the x-coordinate of the previous node. This represents the y-coordinate of the previous node. This represents the x-coordinate of the current last node. This represents the y-coordinate of the current last node. This represents the x-coordinate of the new node. This represents the y-coordinate of the new node. When the cross product is greater than zero, the three points form a counter-clockwise rotation, indicating that P2 is located on the outer edge of the convex hull. The processing module retains P2 and continues scanning. When the cross product is less than or equal to zero, the three points form a clockwise rotation or are collinear, indicating that P2 deviates from the outer edge of the convex hull. The processing module pops P2 out. After popping, the processing module continues to backtrack and check until no more clockwise rotations occur or the number of nodes in the lower convex hull is less than two.
[0060] like Figure 4b As shown in Case 1 on the left, when the processing module scans the new node (51, 39), assuming the current end of the lower convex shell is (45, 27) → (45, 75), the processing module calculates the cross product = (45-45) × (39-27) - (75-27) × (51-45) = 0 - 288 = -288. Since the cross product is less than zero, it is determined to be a clockwise rotation. (45, 75) deviates from the outer edge of the convex shell, and the processing module pops (45, 75) and directly connects (45, 27) → (51, 39).
[0061] like Figure 4b As shown in Case 2 on the right, when the processing module scans the new node (51, 39), assuming the current end of the lower convex hull is (33, 51) → (45, 27), the processing module calculates the cross product = (45-33) × (39-51) - (27-51) × (51-33) = -144 + 432 = 288. Since the cross product is greater than zero, it is determined to be a counterclockwise rotation. (45, 27) is located on the outer edge of the convex hull, and the processing module retains it.
[0062] In the third stage, the processing module starts from the rightmost node after sorting and scans each node sequentially along the decreasing direction of the horizontal coordinate, constructing an upper convex hull using the same turning judgment rules.
[0063] In the fourth stage, the processing module merges the node sequences of the lower and upper convex hulls, removes the first and last duplicate nodes, and obtains all vertices on the convex hull boundary.
[0064] After the above four-stage processing, the processing module extracts 12 nodes located on the convex hull boundary from the 28 conducting nodes as 403 boundary nodes, such as... Figure 4a As shown in B1 to B12, their coordinates are listed in... Figure 4a Right panel. The remaining 16 conductive nodes are located inside the convex hull, maintaining the 401 mark.
[0065] The processing module connects the 12 boundary nodes (403) sequentially according to the output order of the convex hull algorithm, forming a closed polygonal region (404), which is the actual liquid coverage area. The calculation process for the area and perimeter of this region is also listed below. Figure 4a The area of the right panel is calculated using the Shoelace Formula, which involves multiplying each term one by one, summing the results, and dividing the absolute value by 2 to obtain an area of 2664 square millimeters. The perimeter is calculated by summing the Euclidean distances between adjacent 403 boundary nodes, resulting in a perimeter of 186.2 millimeters.
[0066] Furthermore, the specific implementation process of "accumulating and converting local contact current data to obtain cumulative contact voltage data" includes the following operations: S33: The processing module calculates the equivalent resistance of the water film in the actual coverage area based on the area of the actual coverage area and the fixed surface resistivity of the shell material.
[0067] The fixed surface resistivity is a physical property parameter of the shell material, obtained through material testing and calibration before the robot leaves the factory, and is measured in ohms-millimeters. The equivalent resistance of the water film is calculated using a simplified model under the assumption of uniform thin-film conductivity. The simplified model refers to a modeling method that, under the assumption of uniform thin-film conductivity, equates the conductive behavior of the liquid water film in the actual liquid contact area to a lumped-parameter resistor, thereby simplifying the complex distributed current path into a single equivalent resistance and reducing computational complexity.
[0068] The simplified model is constructed as follows: First, the fixed surface resistivity of the shell material is obtained through material testing. Then, the equivalent path length is calculated based on the area of the actual liquid contact region. Finally, the equivalent resistance of the water film is obtained by substituting the equivalent resistance formula. The training or calibration process of this simplified model involves measuring the actual equivalent resistance values under water films of different areas in a standard testing environment and comparing them with the calculated results. If the error is within an acceptable range, the calibration is complete. The specific formula corresponding to this model is: ; in Equivalent resistance To fix the surface resistivity, This refers to the actual coverage area. The equivalent path length is the square root of the area. Using the example above: =2650 square millimeters =0.08 ohms·mm , =0.00156 ohms.
[0069] The physical basis of the above equivalent resistance formula lies in the fact that an irregularly shaped actual coverage area is equivalent to a region with a side length of [missing information - likely a number]. A square water film, with the side length of the square... The characteristic path length for lateral current conduction, in order to cover the area. The ratio of the two represents the total size of the conductive paths connected in parallel along the direction of conduction. / This is the geometric factor of the equivalent square relative unit resistivity, and the fixed surface resistivity. Multiplying them yields the lumped equivalent resistance; to ensure the equivalent resistance has ohmic dimensions, the surface resistivity is fixed. In this model, the unit is taken as ohm-millimeter. This formula is an empirically simplified model under the assumption of uniform thin film conductivity. Its physical meaning is to approximate the overall conductivity of the distributed water film with a single lumped resistance, rather than a precise solution for the actual three-dimensional current path. Its accuracy is guaranteed by the calibration and verification process described below.
[0070] The simplified model is applicable when the liquid spreads approximately uniformly and continuously as a single-layer water film within the actual coverage area, and the coverage area is a single-connected, approximately convex region. Within this applicable range, by measuring the actual equivalent resistance of multiple uniform water films with coverage areas ranging from 100 square millimeters to 5000 square millimeters in a standard test environment and comparing them one by one with the calculated value, the relative error between the calculated value and the measured value does not exceed 15%, which meets the accuracy requirements for subsequent cumulative voltage calculation. When the coverage area is strongly non-convex or has multiple separated clusters, the processing module first performs clustering as described in S32, calculates the equivalent resistance of each connected sub-region using this formula, and then synthesizes the total equivalent resistance according to the parallel relationship of the resistances of each sub-region to maintain the above accuracy.
[0071] S34: The processing module sums up the local contact currents of all electrode nodes in the actual coverage area to obtain the total current, and multiplies the total current by the equivalent resistance to obtain the cumulative voltage across the water film.
[0072] When summing the values of all electrode nodes within the actual coverage area, the processing module includes 402 non-conductive nodes. This is because although the weak current from these non-conductive nodes does not exceed the leakage current threshold, it still contributes to the total current of the water film. Including them in the summation improves the accuracy of the total current estimation. The formula for calculating the accumulated voltage is: ; in For accumulated voltage, This represents the sum of local contact currents at all electrode nodes within the region. The cumulative voltage is physically represented as the equivalent potential difference across the water film across the entire liquid-covered area; this value is positively correlated with the liquid coverage area and water volume. Taking the above example: , .
[0073] This step transforms distributed local contact current data into centralized cumulative contact voltage data, enabling an electrified quantitative characterization of the liquid coverage volume. This provides a unified voltage dimension input for subsequent steps to correct the theoretical liquid spread rate and extract the pulse time interval.
[0074] S4: Based on the accumulated voltage and the actual coverage area, the theoretical spread rate is corrected to obtain the corrected spread rate.
[0075] After the theoretical liquid spread rate has been calculated in step S2 and the actual liquid contact area has been determined and the cumulative contact voltage data has been obtained in step S3, the theoretical liquid spread rate needs to be corrected using the cumulative contact voltage data because the theoretical liquid spread rate is only estimated based on macroscopic area changes and ambient humidity. However, the current signal detected by the electrode node can reflect the actual amount of water covered by the liquid.
[0076] The specific implementation process for this step is as follows: S41: The processing module multiplies the standard voltage of the shell material under a water film per unit area by the area of the actual covered area to obtain the theoretically required contact voltage for the covered area.
[0077] The standard contact voltage of the shell material under a unit area of water film is a material property constant. This constant is obtained through standardized testing before the robot leaves the factory. The testing method is to apply a uniform water film of known thickness to the surface of the shell material sample in a controlled laboratory environment, and measure the steady-state voltage value corresponding to the unit area of water film under a standard excitation voltage. The theoretical contact voltage characterizes the voltage value that should be generated in the actual liquid contact area under the ideal uniform water film coverage conditions.
[0078] S42: The processing module subtracts the theoretical contact voltage from the accumulated voltage to obtain a voltage deviation value reflecting the actual water volume deviation. A positive voltage deviation value indicates that the actual water volume is greater than the theoretical estimate, and the liquid spread rate may be underestimated; a negative voltage deviation value indicates that the actual water volume is less than the theoretical estimate, and the liquid spread rate may be overestimated.
[0079] S43: The processing module converts the voltage deviation value into a speed compensation amount through a preset compensation function, and adds the speed compensation amount to the theoretical propagation speed to obtain the corrected propagation speed.
[0080] In this embodiment, the compensation function adopts a linear mapping form, and the formula is: ; ; in For speed compensation amount, To compensate for the gain coefficient, This is the voltage deviation value. To correct for the spread rate, a compensation gain coefficient is applied. The following method was determined by least-squares fitting of multiple sets of experimental data: Water films of different areas and thicknesses were applied in a controlled environment, and the cumulative voltage deviation and the actual liquid spread rate deviation were recorded simultaneously. A linear regression was performed with voltage deviation as the independent variable and velocity deviation as the dependent variable; the resulting regression slope is the [value / slope]. For example, it can be set to 50 mm per sampling cycle per microvolt, with the specific value calibrated based on the housing material and sensor characteristics. To prevent outliers, the processing module sets an upper limit cutoff value for the correction propagation rate, for example, it can be set to 10 mm per sampling cycle.
[0081] Taking the value in step S3 as an example: the standard voltage is 0.0001 microvolts per square millimeter. ; ; ; Since the value does not exceed the upper limit truncation value, no truncation is required.
[0082] This step, by using accumulated contact voltage data to correct the theoretical liquid spread rate, achieves data fusion between macroscopic geometric estimation and microscopic current detection, thus improving the accuracy of liquid spread rate estimation.
[0083] S5: Extract the time interval between adjacent pulses from the accumulated voltage as the time step, and accumulate the corrected spread rate according to the time step to obtain the actual water depth on the outer shell contact surface.
[0084] Step S4 yields the corrected spread rate, an instantaneous velocity that needs to be integrated over time to obtain the water depth. Traditional uniform time-step integration methods cannot adaptively respond to dynamic changes in the liquid spread rate: when liquid spread is rapid, an excessively large uniform step leads to insufficient accuracy; when liquid changes are gradual, unnecessary computational overhead occurs. This step utilizes the accumulated voltage signal calculated in step S3, automatically generating an adaptive time step through a voltage-controlled oscillation mechanism, allowing the integration accuracy and computational efficiency to automatically adjust with dynamic changes in the liquid.
[0085] S51: The processing module uses voltage-controlled oscillator logic to convert the accumulated voltage into a pulse signal whose frequency increases as the voltage rises.
[0086] The voltage-controlled oscillator (VCO) logic is a software-implemented voltage-frequency mapping mechanism. Its principle is the same as that of a hardware VCO, but in this solution, it is implemented by a processing module using a digital algorithm. The mapping formula is: ; in The pulse frequency, This represents the gain coefficient of the voltage-controlled oscillator. This refers to the accumulated voltage. The accumulated voltage increases as the liquid coverage increases. Increase pulse frequency As the liquid level rises, the time interval between adjacent pulses automatically shortens, and the integration step size automatically decreases during the liquid spread acceleration phase, thereby improving integration accuracy; conversely, as the liquid level decreases, the pulse frequency decreases, the time interval lengthens, and computational overhead is reduced. The pulse frequency is typically maintained between 0.1 and 10 Hz, calibrated according to the required pulse frequency range and the typical magnitude of the accumulated voltage.
[0087] S52: The processing module takes the time difference between two adjacent peaks in the pulse signal as the time step: ; Taking the value in step S3 as an example: =3,460,000 Hertz per Volt =0.29 microvolts = 0.00000029 volts , .
[0088] S53: The processing module accumulates the corrected spread rate according to the time step to obtain the actual water depth on the outer shell contact surface.
[0089] The specific operation is as follows: The processing module multiplies the corrected spread rate by the time step and converts it into the number of acquisition cycles to obtain the spread distance of the liquid along the boundary normal direction within a single time step.
[0090] Taking the above example: a sampling period of 0.5 seconds and a time step of 1.0 second correspond to 2 sampling periods, with a spread distance of 5.45. 2 = 10.9 mm. The processing module multiplies the spread distance by the perimeter of the actual coverage area, and then by the average liquid film thickness at the spread front, to obtain the increase in liquid volume within a single time step.
[0091] The average thickness of the liquid film at the spread front is the typical thickness of the newly unfolded film when the liquid advances at the boundary. It is determined by the surface energy of the shell material and the surface tension of the liquid. It can be obtained by measuring the average thickness of the liquid film at the spread edge on the test panel. For example, it can be set to 0.001 mm. The specific value is calibrated according to the actual material.
[0092] The specific method for determining the average liquid film thickness at the spread front is as follows: In a standard laboratory environment, take a test panel with the same material and surface treatment process as the contact surface of the shell. Under the temperature and relative humidity conditions consistent with the actual working conditions, drop the target liquid onto the test panel and let it spread freely. After the spread front stabilizes, use a white light interferometer or a laser confocal thickness gauge to measure the liquid film thickness point by point in the area adjacent to the spread front along the direction perpendicular to the boundary. Take the arithmetic mean of the thickness at no less than 20 measurement points as the average liquid film thickness at the spread front under the combination of shell material and liquid.
[0093] Physically, the average liquid film thickness at the spread front is approximately equal to the equilibrium film thickness when the liquid reaches spreading equilibrium on the surface of the casing material. This thickness decreases with increasing surface energy of the casing material and increases with increasing surface tension of the liquid. Therefore, this thickness can vary by orders of magnitude depending on the combination of liquid and casing material. For example, the average liquid film thickness of pure water on a low-surface-energy plastic casing is approximately 0.001 mm, while the average liquid film thickness of a detergent liquid containing surfactants on a metal casing can be reduced to the order of 0.0001 mm. In practical applications, the processing module pre-calibrates and stores the corresponding average liquid film thickness values at the spread front for each specific casing material and the various types of liquids that may appear in the working environment, using the method described above. During runtime, it retrieves the corresponding thickness value based on the currently identified liquid type and substitutes it into the calculation of the accumulated water volume.
[0094] Taking the above example: with an edge perimeter of 245 mm, the increase in volume is 10.9. 245 0.001 = 2.67 cubic millimeters. The processing module divides the volume by the actual area covered to obtain the water accumulation thickness within a single time step. In the example above: water accumulation thickness = 2.67 / 2650 = 0.001 millimeters. The processing module then sums the water accumulation thicknesses across multiple consecutive time steps to obtain the actual water depth at the outer casing contact surface. Assuming the water accumulation thicknesses for three consecutive time steps are 0.0018 millimeters, 0.0017 millimeters, and 0.0015 millimeters, the actual water depth = 0.005 millimeters.
[0095] This step utilizes an adaptive time step mechanism based on accumulated contact voltage data to automatically improve integration accuracy when liquid spread changes drastically and reduce computational overhead when changes are gradual, thereby improving computational efficiency while ensuring the accuracy of water depth calculation.
[0096] S6: Determine the frictional attenuation parameter of the outer shell contact surface based on the actual water depth, and input the actual water depth, the frictional attenuation parameter, and the intended action sequence of the target embodied robot into the world model. The world model then outputs simulation data of the target embodied robot executing the intended action sequence.
[0097] Step S5 yields the actual water depth at the outer casing contact surface. This value directly determines the degree of lubrication of the water film, thus affecting the magnitude of the friction between the outer casing contact surface and the tested wall surface. Therefore, this step first determines the friction attenuation parameter based on the actual water depth, and then inputs the friction attenuation parameter, along with the actual water depth and the sequence of actions to be executed, into the world model. The world model then deduces and outputs simulation data reflecting the influence of liquid coverage.
[0098] One method for determining the frictional attenuation parameter is the table lookup method. The processing module consults a pre-calibrated water depth-friction coefficient lookup table based on the actual water depth to directly obtain the corresponding frictional attenuation parameter. The water depth-friction coefficient lookup table was obtained before the robot left the factory by measuring the friction coefficient of the outer shell contact surface under different water depth conditions. The lookup table used in this embodiment is shown in Table 2 below: Table 2 Comparison of Water Depth and Friction Coefficient
[0099] The processing module finds the nearest neighbor interval based on the actual water depth and reads the corresponding frictional attenuation parameters. This method is highly efficient and suitable for scenarios with high real-time requirements.
[0100] The second method for determining the frictional attenuation parameter is the calculation method, which includes the following steps: The processing module obtains the dry friction coefficient of the outer casing contact surface and the material moisture content of the outer casing. The dry friction coefficient is the static friction coefficient of the outer casing contact surface in a completely dry state, obtained through standard friction testing; for example, it is taken as 0.65 in this embodiment. The material moisture content is a dimensionless coefficient between 0 and 1, characterizing the ability of the outer casing material surface to adhere to liquids. The greater the surface roughness or the greater the contact angle hysteresis, the higher the material moisture content; for example, it is taken as 0.72 in this embodiment.
[0101] The processing module multiplies the actual water depth by the material's water absorption rate to obtain the effective water film thickness that can actually adhere to the contact surface. The effective water film thickness characterizes the thickness of the liquid layer in the actual water that can be effectively adhered to and participate in lubrication by the outer casing contact surface. Some water may be lost due to gravity or vibration, resulting in an effective water film thickness that is less than or equal to the actual water depth. For example, in step S5: effective water film thickness = 0.005. 0.72 = 0.0036 millimeters.
[0102] The processing module multiplies the effective water film thickness by a preset liquid slip constant to obtain the lubricity of the water film on the contact surface. The liquid slip constant is a proportionality coefficient that converts the effective water film thickness into a dimensionless lubricity index. Its physical prototype comes from the reciprocal of the boundary slip length in the Navier slip boundary model. It is calibrated by measuring the change in the coefficient of friction under different water film thicknesses. For example, in this embodiment, the value is taken as 120 per millimeter, and the specific value is adjusted according to the shell material. In the above example: Lubricity = 0.0036 120 = 0.432.
[0103] The processing module calculates the friction loss ratio based on the lubrication level and the dry friction coefficient. When the calculated loss ratio is greater than 1, the processing module truncates it to 1, indicating complete lubrication. In the example above: the loss ratio = 0.432 / 0.65 = 0.665, which does not exceed 1, so no truncation is needed.
[0104] The processing module calculates the friction attenuation parameter based on the dry friction coefficient and the wear ratio. When the wear ratio is 0, the friction attenuation parameter equals the dry friction coefficient, indicating no water film lubrication; when the wear ratio is 1, the friction attenuation parameter is 0, indicating complete lubrication. In the example above: friction attenuation parameter = 0.65 (1-0.665)=0.218.
[0105] The summary formula for the above calculation methods is as follows: ; ; ; ; Where D is the actual water depth. For the water absorption rate of the material, For effective water film thickness, Let L be the slip constant of the liquid, and L be the lubricity. The coefficient of friction during drying. This is the percentage of loss. This is the parameter for frictional force attenuation.
[0106] After determining the frictional attenuation parameters, the processing module inputs the actual water depth, the frictional attenuation parameters, and the intended action sequence of the target android into the world model. The world model then outputs simulation data of the target android executing the intended action sequence. The specific process is as follows: A world model is a sequence prediction model based on hidden state space. It can deduce future state sequences from the current state and planned actions without interacting with the real environment, thus synthesizing physically meaningful simulation data. The world model in this application adopts a Recurrent State Space Model (RSSM) architecture, as follows: Figure 5 As shown. Figure 5 In the diagram, 501 is the input vector, 502 is the encoding network, 503 is the dynamics prediction network, 504 is the decoding network, 505 is the state feature output by the encoding network, 506 is the action feature output by the encoding network, 507 is the predicted state sequence output by the dynamics prediction network, and 508 is the simulation data output by the decoding network.
[0107] The changes in data dimensions at each stage are shown in Table 3 below:
[0108] Where T is the number of time steps of the action sequence to be executed, and in this embodiment, T=10; J is the joint angle dimension per time step, and in this embodiment, J=6; F is the number of filters output by Conv1D, and in this embodiment, F=16.
[0109] Figure 5 In the diagram, 501 is the input vector, composed of the actual water depth, frictional attenuation parameters, and the sequence of actions to be executed; 502 is the encoding network, containing a multi-layer perceptron (MLP) and a one-dimensional convolutional layer (Conv1D); 503 is the dynamic prediction network, containing a gated recurrent unit (GRU); 504 is the decoding network, containing a deconvolutional layer and a multi-layer perceptron; 505 is the state feature; 506 is the action feature; 507 is the predicted state sequence; and 508 is the simulation data output.
[0110] S61: The processing module concatenates the actual water depth, the frictional attenuation parameter, and the sequence of actions to be executed into an input vector, forming... Figure 5 The 501 in the diagram represents the planned sequence of joint angle commands for the next T time steps, as planned by the target embodied robot controller. For example, given an actual water depth of 0.005 mm and a frictional attenuation parameter of 0.218, the planned sequence consists of joint angle commands for the next 10 time steps, with 6 joint angle values per time step, totaling 60 dimensions. These are then concatenated to obtain a 62-dimensional input vector, 501.
[0111] S62: The processing module sends the input vector into the encoding network 502 of the world model, and extracts the state features representing the current physical state and the action features representing the action sequence.
[0112] The coding network 502 contains two parallel paths: an MLP branch and a Conv1D branch, which process different parts of the input vector respectively.
[0113] The MLP branch receives two scalar values from the input vector: the actual water depth and the frictional attenuation parameter. These are then passed through two fully connected layers for nonlinear feature extraction. The first fully connected layer contains 64 neurons, with ReLU (Rectified Linear Unit) activation function. The calculation formula is as follows: ); in The weight matrix is 2×64. The first layer is a 64-dimensional bias vector, and x is a 2-dimensional input. The second fully connected layer maps the 64-dimensional features to a 32-dimensional output, with the activation function also being ReLU, resulting in 505 state features. The 505 state features are a 32-dimensional vector that represents the physical boundary state of the current shell contact surface in a compressed form.
[0114] The Conv1D branch receives the sequence of actions to be executed from the input vector. This sequence is a T×J (10×6) two-dimensional matrix, where each row corresponds to 6 joint angle values for one time step. The Conv1D branch uses one-dimensional convolution to extract local temporal features along the time axis. The kernel size is set to 3, the stride to 1, and padding is of the same length to maintain the number of time steps. The number of filters is F=16. The one-dimensional convolution calculation process is as follows: for each time step t, the convolution kernel slides within the range of one time step before and after it. The joint angle values of three adjacent time steps are weighted and summed by the convolution kernel, then activated by ReLU, outputting 16-dimensional features for that time step. After convolution processing, 506 action features are output, with a shape of 10×16, meaning each time step corresponds to a 16-dimensional action feature vector. The role of Conv1D is to capture the change patterns of joint angles between adjacent time steps, enabling the subsequent dynamics prediction network to perceive the local temporal structure of the action sequence.
[0115] S63: The processing module sends the state features and the action features into the dynamic prediction network 503 of the world model, and gradually deduces the predicted state sequence at each future moment according to the time step. The predicted state sequence reflects the changing trend of water depth and liquid coverage in the shell contact area.
[0116] The dynamic prediction network 503 employs a gated recurrent unit (GRU). A GRU is a recurrent neural network structure that controls the retention and updating of information through a gating mechanism, making it suitable for step-by-step deduction of time-series data. The hidden state dimension of the GRU is set to 32, consistent with the dimension of the 505 state features. At the start of the deduction, the processing module uses the 505 state features as the initial hidden state h_0 of the GRU. At each deduction time step t (t ranges from 1 to T), the GRU receives the 506 action features of the current time step. (16-dimensional vector) and the hidden state of the previous time step (32-dimensional vector), calculate the hidden state of the current time step in sequence according to the following four formulas. : ); ; ; .
[0117] Where sigmoid is the sigmoid activation function, which maps the input to real numbers between 0 and 1; tanh is the hyperbolic tangent activation function, which maps the input to real numbers between -1 and 1; This indicates that 32-dimensional And 16-dimensional Concatenate them into a 48-dimensional vector; , , These are the weight matrices for the update gate, reset gate, and candidate hidden states, each with a dimension of 32×48; , , For the corresponding 32-dimensional bias vector; symbol exist The expression represents the element-wise multiplication of a 32-dimensional vector.
[0118] The physical meaning of the above four formulas is as follows: The first formula calculates the update gate. , Each element takes a value between 0 and 1, controlling the proportion of new information in the current hidden state. When the value approaches 0, retain the old state from the previous time step. , When the value approaches 1, update it to the candidate hidden state h_tilde. The second formula calculates the reset gate. Controlling the degree of dependence of candidate hidden states on the previous hidden state during calculation — When the value is close to 0, the old state is ignored, allowing the network to learn entirely new state representations; When the value is close to 1, the old state information is completely preserved. The third formula uses a reset gate to selectively forget the old state and then calculates the candidate hidden state h_tilde based on the current action features. The fourth formula uses an update gate to proportionally mix the old state and the candidate hidden state to obtain the final hidden state at the current time step. .
[0119] The GRU iterates from t=1 to t=T=10, executing 10 time steps and outputting 10 hidden states. Up to h_{10}, forming a 507-state prediction sequence. Each hidden state in the prediction state sequence... It is a 32-dimensional vector that encodes the physical boundary state prediction at the t-th future time step, including a compressed representation of the changing trends of the water depth and liquid coverage area in the shell contact area.
[0120] S64: The processing module sends the predicted state sequence into the decoding network 504 of the world model to restore it into observables and outputs simulation data.
[0121] Decoding network 504 predicts each hidden state in the state sequence of 507. The decoding network independently performs the decoding operation, restoring the 32-dimensional hidden state to observable physical quantities. The decoding network employs a two-layer fully connected structure symmetrical to the MLP branch of the encoding network: the first fully connected layer expands the 32-dimensional hidden state into 64-dimensional intermediate features using ReLU activation; the second fully connected layer maps the 64-dimensional intermediate features into a 9-dimensional output vector without using an activation function to preserve the numerical range of the original physical quantities. The nine dimensions of the output vector correspond to: six predicted joint angles (aligned with the joint dimensions of the input action sequence), one predicted water depth, one predicted frictional attenuation parameter, and one predicted liquid coverage area. After decoding the hidden states at T=10 time steps, the decoding network 504 outputs 508 simulation data, a 10×9 matrix where each row corresponds to a predicted observable physical quantity for a future time step, which can be directly used for offline training of motion control strategies.
[0122] The world model is trained using a self-supervised learning paradigm. The training dataset consists of observation-action pair sequences collected from historical inspection tasks. Each sequence contains actual observations and corresponding action commands for N consecutive time steps, where N ranges from 10 to 50. During training, the processing module inputs the observation from the first time step of the sequence into the encoding network 502 to obtain the initial hidden state, and then progressively inputs the action commands from the first to the (N-1)th time steps into the dynamic prediction network 503 for deduction. The decoding network 504 outputs the predicted observations from the second to the Nth time steps. The loss function is the mean squared error, and the formula is: ; in To decode the 9-dimensional predicted observation vector output by network 504 at time step t, Let ||·||^2 be the 9-dimensional true observation vector at time step t, and ||·||^2 represent the sum of squares of the differences between the elements of the vector. This represents the value of the loss function. This indicates the total number of time steps.
[0123] The optimizer employs the Adam algorithm (Adaptive Moment Estimation), which maintains an independent adaptive learning rate for each parameter and combines first-order and second-order momentum estimation for gradient updates. This algorithm is widely used in deep learning training. The initial learning rate is set to 0.001, and a cosine annealing strategy is used to gradually decrease the learning rate from its initial value to 1% (0.00001) during training, following a cosine curve. The training dataset contains at least 1000 sequences, with 32 sequences randomly selected in each batch to calculate gradients and update parameters. The training run is for at least 200 epochs. Training is terminated early when the loss on the validation set no longer decreases after 10 consecutive epochs to prevent overfitting. All weight parameters of the encoding network 502, dynamic prediction network 503, and decoding network 504 are initialized using the Xavier uniform initialization method. This method automatically determines the initialization range based on the input and output dimensions, ensuring consistent variance across layers and facilitating stable gradient propagation. Bias parameters are uniformly initialized to zero.
[0124] It should be noted that the actual observation vectors at each time step in the above training dataset are not derived by the method itself, but are directly measured through independent reference measurement methods during the offline data acquisition phase. Therefore, they are independent of the method's prediction of the above physical quantities during the inference phase and there is no circular dependency. Specifically, when constructing the training dataset, on a real inspection operation or experimental testing platform: joint angles are directly read by the angle encoders of each joint; the water depth on the outer shell contact surface is directly measured by an independently installed laser displacement thickness gauge or ultrasonic thickness gauge; the frictional force attenuation parameter is obtained by measuring the tangential force and normal force by a force sensor installed between the outer shell and the wall and converting it according to their ratio, or by measuring the same material and the same water accumulation condition on a standard friction test bench.
[0125] The aforementioned reference measurement methods are used only when constructing the training dataset offline to provide supervised labels for the world model. After the world model is trained, it is no longer necessary to rely on these reference measurement methods during the simulation inference stage. Simulation data can be deduced and output solely based on the actual water depth, friction attenuation parameters, and the sequence of actions to be executed. Therefore, the acquisition of initial training data relies on mature, independent measurement instruments, which are decoupled from the simulation prediction function of this method. Those skilled in the art can use this to acquire training data and complete the training of the world model.
[0126] Figure 6 The entire interactive process of simulation data synthesis is shown. Figure 6 601 is the sensor module, 602 is the processing module, and 603 is the world model. The data flow relationship between the three is as follows: In each acquisition cycle, the sensor module 601 provides two types of data to the processing module 602: one is the ambient humidity, and the other is the initial distribution of liquid coverage on the outer shell contact surface and the local contact current detected by each electrode node.
[0127] After receiving the above data, the processing module 602 performs five internal processing steps in sequence: First, it calculates the theoretical spread rate based on the ambient humidity and initial distribution state; then, it determines the actual coverage area based on the local contact current; subsequently, it converts the local contact current into a cumulative voltage; then, it uses the cumulative voltage and the actual coverage area to correct the theoretical spread rate to obtain the corrected spread rate; finally, it extracts the time step from the cumulative voltage, accumulates the corrected spread rate according to the time step to obtain the actual water depth, and determines the frictional attenuation parameter based on the actual water depth.
[0128] After completing the above calculations, the processing module 602 concatenates the actual water depth, friction attenuation parameters, and the sequence of actions to be executed into an input vector 501, which is then passed to the world model 603. Upon receiving the input vector 501, the world model 603 sequentially performs three stages of processing: encoding, deduction, and decoding. Finally, it returns the generated simulation data 508 to the processing module 602 for subsequent offline training of the motion control strategy.
[0129] This step involves jointly inputting the actual water depth and frictional attenuation parameters with the sequence of actions to be executed into the world model for simulation. This allows the generated simulation data to reflect the continuous impact of liquid coverage on the dynamic boundary of the embodied robot. Compared to the traditional method of applying liquid coverage as a static parameter, this application can reflect the dynamic characteristics of the continuous change of frictional force over time during the liquid spread process, thereby improving the physical realism of the simulation data.
[0130] To suppress the cumulative errors introduced by approximations and assumptions in each step of the multi-step calculation process S1 to S6, and to improve the robustness of the method, the processing module further introduces an error analysis and feedback correction mechanism. In terms of error analysis, the processing module quantifies and tracks the main sources of error in each step: the error in the theoretical propagation rate in S2 mainly comes from the interpolation error of the humidity-resistance mapping table; the error in the equivalent resistance in S33 mainly comes from the assumption of uniform thin-film conductivity; and the error in the water depth in S53 mainly comes from the calibration deviation of the average liquid film thickness. During the calibration phase, the upper bound of the relative error of each step is determined, and the cumulative error range of the final water depth is estimated according to the error propagation law, serving as the basis for evaluating the reliability of the simulation data.
[0131] In terms of feedback correction, when the actual measured values of water depth or friction force on the outer casing contact area can be obtained intermittently during the inspection process, the processing module uses Kalman filtering to fuse the water depth obtained by the method step by step with the actual measured value: the water depth obtained by the method is used as the state prediction value, and the intermittently obtained actual measured value is used as the observation value. The data is fused by weighting the prediction error covariance and the observation noise covariance, and the accumulated deviation is corrected online to prevent the single-step deviation from being amplified step by step along the link. The processing module also sets a reasonable range for the intermediate results of each step, and removes or truncates outliers that exceed the range (such as setting an upper limit cutoff value for the correction spread rate in S43). It also recalibrates the humidity-resistance mapping table, compensation gain coefficient, and pressure-controlled oscillation gain coefficient using newly collected calibration data at a preset cycle to adapt to the aging of the outer casing material and sensor drift.
[0132] It should be noted that the calibration of the compensation gain coefficient and the voltage-controlled oscillation (VCO) gain coefficient were both completed in an offline controlled environment using independent measurement methods: the deviation of the actual liquid propagation velocity required for the calibration of the compensation gain coefficient was obtained by independently measuring the actual propagation distance of the liquid boundary using a high-speed camera or laser displacement sensor and then converting the result; the correspondence between the pulse frequency and the accumulated voltage required for the calibration of the VCO gain coefficient was measured by an independent frequency meter and voltmeter. Both are independent of the estimation of propagation velocity and time step during the operation of this method and do not constitute a cyclic dependency. Those skilled in the art can calibrate the above coefficients accordingly.
[0133] This application also provides a world model-based embodied robot simulation data synthesis system, including: The acquisition module is used to acquire the humidity of the environment in which the target embodied robot is located, the initial distribution of liquid coverage on the outer shell contact surface, and the local contact current detected by each electrode node on the outer shell contact surface. The calculation module is used to calculate the theoretical spread rate of the liquid on the contact surface of the outer shell based on the ambient humidity and the initial distribution state. The analysis module is used to determine the actual coverage area of the liquid on the contact surface of the outer shell based on the local contact current, and to convert the local contact current into the cumulative voltage across the water film. The correction module is used to correct the theoretical spread rate based on the accumulated voltage and the actual coverage area to obtain the corrected spread rate; An extraction module is used to extract the time interval between adjacent pulses from the accumulated voltage as a time step, and to accumulate the corrected spread rate according to the time step to obtain the actual water depth on the outer shell contact surface; The determination module is used to determine the frictional attenuation parameter of the outer shell contact surface based on the actual water depth, and input the actual water depth, the frictional attenuation parameter and the intended action sequence of the target embodied robot into the world model, and output the simulation data of the target embodied robot when executing the intended action sequence from the world model.
[0134] The specific functions of each module in the above system correspond one-to-one with the steps of the aforementioned method, and will not be repeated here.
[0135] The above provides a detailed description of the method and system for synthesizing embodied robot simulation data based on a world model, as provided in this application. The descriptions of the embodiments above are only for the purpose of helping to understand the method and its core ideas. For those skilled in the art, various improvements and modifications can be made to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of this application.
Claims
1. A method for synthesizing embodied robot simulation data based on a world model, characterized in that, include: The humidity of the environment in which the target embodied robot is located, the initial distribution of liquid coverage on the outer shell contact surface, and the local contact current detected by each electrode node on the outer shell contact surface are obtained. Based on the ambient humidity and the initial distribution state, calculate the theoretical spread rate of the liquid on the contact surface of the outer shell; The actual coverage area of the liquid on the contact surface of the outer shell is determined based on the local contact current, and the local contact current is converted into the cumulative voltage across the water film. The theoretical spread rate is corrected based on the accumulated voltage and the actual coverage area to obtain the corrected spread rate; The time interval between adjacent pulses is extracted from the accumulated voltage as a time step, and the corrected spread rate is accumulated according to the time step to obtain the actual water depth on the outer shell contact surface; The frictional attenuation parameters of the outer shell contact surface are determined based on the actual water depth. The actual water depth, the frictional attenuation parameters, and the intended action sequence of the target embodied robot are input into the world model. The world model then outputs simulation data of the target embodied robot executing the intended action sequence.
2. The method according to claim 1, characterized in that, The process involves inputting the actual water depth, the frictional attenuation parameters, and the intended action sequence of the target android into the world model. The world model then outputs simulation data of the target android executing the intended action sequence, including: The actual water depth, the frictional attenuation parameter, and the sequence of actions to be executed are concatenated into an input vector. The input vector is fed into the encoding network of the world model, and the state features representing the current physical state and the action features representing the action sequence are compressed and extracted. The state features and motion features are fed into the dynamic prediction network of the world model, and the predicted state sequence at each future moment is deduced step by step according to time steps. The predicted state sequence reflects the changing trend of water depth and liquid coverage in the shell contact area. The predicted state sequence is fed into the decoding network of the world model to be restored into observables, and simulation data is output.
3. The method according to claim 1, characterized in that, The step of determining the frictional attenuation parameters of the outer casing contact surface based on the actual water depth includes: Based on the actual water depth, consult the pre-calibrated water depth-friction coefficient lookup table to obtain the corresponding frictional attenuation parameters.
4. The method according to claim 1, characterized in that, The method of determining the frictional attenuation parameter of the outer shell contact surface based on the actual water depth also includes: Obtain the dry friction coefficient of the outer shell contact surface and the water absorption rate of the outer shell material; Multiply the actual water depth by the material's water absorption rate to obtain the actual effective water film thickness that can adhere to the contact surface. Multiply the effective water film thickness by a preset liquid slip constant to obtain the lubricity of the water film on the contact surface; The friction loss ratio is calculated based on the lubricity and the dry friction coefficient. The frictional attenuation parameter is calculated based on the drying friction coefficient and the loss ratio.
5. The method according to claim 1, characterized in that, The step of calculating the theoretical propagation rate of the liquid on the contact surface of the outer shell based on the ambient humidity and the initial distribution state includes: Read the area and perimeter of the current liquid-covered area from the initial distribution state; Subtract the historical area recorded in the previous collection cycle from the current area to obtain the area increment. Then divide the area increment by the boundary perimeter to obtain the theoretical expansion step size of the coverage area boundary. The ambient humidity is converted into a surface resistance coefficient using a preset humidity-resistance mapping table. The theoretical expansion step size is then divided by the surface resistance coefficient to obtain the theoretical propagation rate.
6. The method according to claim 1, characterized in that, The step of correcting the theoretical spread rate based on the accumulated voltage and the actual coverage area to obtain the corrected spread rate includes: Multiply the standard voltage of the outer shell material under a water film per unit area by the area of the actual covered area to obtain the theoretically required contact voltage of the covered area. Subtracting the theoretical contact voltage from the accumulated voltage yields a voltage deviation value that reflects the actual water volume deviation. The voltage deviation value is converted into a speed compensation amount by a preset compensation function, and the corrected propagation speed is obtained by adding the speed compensation amount to the theoretical propagation speed.
7. The method according to claim 1, characterized in that, The step of determining the actual coverage area of the liquid on the contact surface of the outer casing based on the local contact current includes: Electrode nodes whose local contact current exceeds a preset leakage current threshold are marked as conducting nodes; The outermost node among all conductive nodes is taken as the boundary node, and the closed area enclosed by connecting all the boundary nodes in sequence is determined as the actual coverage area of the liquid.
8. The method according to claim 1, characterized in that, The step of converting the local contact current into the cumulative voltage across the water film includes: Based on the area of the actual coverage area and the fixed surface resistivity of the shell material, calculate the equivalent resistance of the water film in that area; The total current is obtained by summing the local contact currents of all electrode nodes within the actual coverage area, and the total current is multiplied by the equivalent resistance to obtain the cumulative voltage across the water film.
9. The method according to claim 1, characterized in that, The step of extracting the time interval between adjacent pulses from the accumulated voltage as the time step includes: The accumulated voltage is converted into a pulse signal whose frequency increases as the voltage increases by using voltage-controlled oscillator logic. The time difference between two adjacent peaks in the pulse signal is taken as the time step.
10. A simulation data synthesis system for embodied robots based on a world model, characterized in that, include: The acquisition module is used to acquire the humidity of the environment in which the target embodied robot is located, the initial distribution of liquid coverage on the outer shell contact surface, and the local contact current detected by each electrode node on the outer shell contact surface. The calculation module is used to calculate the theoretical spread rate of the liquid on the contact surface of the outer shell based on the ambient humidity and the initial distribution state. The analysis module is used to determine the actual coverage area of the liquid on the contact surface of the outer shell based on the local contact current, and to convert the local contact current into the cumulative voltage across the water film. The correction module is used to correct the theoretical spread rate based on the accumulated voltage and the actual coverage area to obtain the corrected spread rate; An extraction module is used to extract the time interval between adjacent pulses from the accumulated voltage as a time step, and to accumulate the corrected spread rate according to the time step to obtain the actual water depth on the outer shell contact surface; The determination module is used to determine the frictional attenuation parameter of the outer shell contact surface based on the actual water depth, and input the actual water depth, the frictional attenuation parameter and the intended action sequence of the target embodied robot into the world model, and output the simulation data of the target embodied robot when executing the intended action sequence from the world model.