Automatic detection method of rotation direction of axial flow cooling fan
Automatically determine the rotation direction of the axial flow fan through computer processing systems, solving the errors and cost-increasing problems caused by manual inspection, and achieving more efficient fluid simulation and product design.
Patent Information
- Application Number
- CN202011111217.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-03-25
- Filing Date
- 2020-10-16
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2040-10-16
AI Technical Summary
The prior art requires manual visual inspection when determining the rotation direction of the axial flow fan, which is prone to errors, increases the number and cost of simulation reruns, and may lead to product design delays.
The computer processing system receives axial flow fan data represented by three-dimensionally, performs two-dimensional projection, determines the center line of a single blade, calculates the slope of the blade, sets the actual fan rotation direction, automates the fluid simulation process, and reduces manual intervention.
Improves the accuracy of rotation direction determination, reduces the number of simulation reruns, reduces costs, and meets product design deadline requirements.
Smart Images

Figure CN112682340B_ABST
Abstract
Description
[0001] Priority Claim
[0002] This application claims priority under 35 USC §119(e) to U.S. Provisional Patent Application Serial No. 62 / 916,313, filed on October 17, 2019, entitled “Method for Automatic Detection of Axial Cooling Fan Rotation Direction,” the entire contents of which are incorporated herein by reference. Background Art
[0003] This specification relates to computer simulations of physical processes, such as physical fluid flows.
[0004] Discretized solutions to the Navier-Stokes differential equations are generated by performing high-precision floating-point arithmetic operations on variables representing macroscopic quantities (e.g., density, temperature, flow velocity) at each of many discrete spatial locations, thereby simulating high Reynolds number flows. Another approach replaces the differential equations with what is commonly referred to as a lattice gas (or cellular) automaton, in which the macroscopic level simulation provided by solving the Navier-Stokes equations is replaced by a microscopic level model that performs operations on particles moving between sites on the lattice.
[0005] Some fluid simulations involve simulating the fluid flow caused by an axial cooling fan having blades and a motor, which together move the surrounding fluid for cooling or ventilation. Determining the direction of rotation of an axial fan in a numerical fluid simulation can be an important process. Conventional determination of the direction of rotation of an axial fan for numerical simulations typically requires visual inspection of the fan in a 3D simulation domain by a person with relevant expertise. This manual approach can introduce errors, especially considering the many variations in axial fan design. The consequences of such errors can include performing a large number of simulation reruns, which increases the cost of simulation execution and leads to missed product design deadlines, etc., because such errors can usually only be discovered after the simulation is completed. Summary of the invention
[0006] According to one aspect, a computer-implemented method includes: receiving, by a computer processing system, digital data of a three-dimensional representation of an axial flow fan having a plurality of fan blades; determining, by the computer processing system, at least a single centerline of a single blade of the axial flow fan from a two-dimensional projection of the axial flow fan based on the data of the three-dimensional representation of the axial flow fan; and calculating, by the computer processing system, an actual value of a fan rotation direction based on an initial value of the fan rotation.
[0007] The following are some of the features described herein which are within the scope of the above aspects.
[0008] Calculating the actual value of the fan rotation direction includes dividing the received data into a first partition corresponding to the fan blade segment and a second partition corresponding to the motor segment by the computer processing system. Calculating the actual value of the fan rotation direction includes: determining the target blade segment based on the observation angle according to the partitioned data by the computer processing system, extracting the center line from the target blade segment by the computer processing system, calculating the slope of the edge of the blade by the computer processing system to determine the leading side area and the trailing side area of the center line, and setting the actual fan rotation direction by the computer processing system according to the calculated slope.
[0009] Determining fan blade sections includes calculating an axial fan diameter to normalize parameters, generating a ring based on the calculated axial fan diameter, identifying overlapping portions of the axial fan by applying a Boolean function to the ring and the calculated fan diameter, and performing a Boolean operation on the ring and the fan geometry to isolate the overlapping portions.
[0010] Calculating the actual fan rotation direction includes: causing the system to project multiple rays radially from the center of the axial flow fan. Calculating the actual fan rotation direction also includes: for each instance where the projected rays intersect the solid surface of the two-dimensional representation of the axial flow fan, the system records a non-zero signal. Calculating the actual fan rotation direction also includes: calculating the centerline of the blade based on the non-zero signal; performing a slope calculation on each blade to determine the trailing edge and the leading edge of the blade; and determining the fan rotation direction based on the determined trailing edge and the leading edge.
[0011] This aspect also includes: based on the determined fan rotation direction, simulating the physical fluid flow process in the fluid volume representing the axial flow fan, and wherein the actual fan rotation direction is determined by setting the rotation direction to the direction in which the leading side region enters the fluid first or the rotation direction in which the trailing side region enters the fluid last.
[0012] According to another aspect, a computer system includes: one or more processors and a memory operatively coupled to the one or more processors. The system also includes a computer readable storage medium storing executable computer instructions, the executable computer instructions causing the computer system to: receive digital data of a three-dimensional representation of an axial flow fan having a plurality of fan blades; determine at least a single centerline of a single blade of the axial flow fan from a two-dimensional projection of the axial flow fan based on the data of the three-dimensional representation of the axial flow fan; and calculate an actual value of the fan rotation direction based on an initial value of the fan rotation.
[0013] The following are some of the features described herein which are within the scope of the above aspects.
[0014] The computer system instructions for calculating the actual value include instructions for the following operations: dividing the received data into a first partition corresponding to the fan blade section and a second partition corresponding to the motor section. The computer system instructions for calculating the fan rotation direction also include instructions for the following operations: determining a target blade section based on the observation angle according to the partitioned data; extracting a centerline from the target blade section; calculating the slope of the edge of the blade to determine the leading side area and the trailing side area of the centerline; and setting the actual fan rotation direction according to the calculated slope.
[0015] Instructions for determining the centerline of a single blade include instructions for: calculating an axial fan diameter to normalize parameters; generating a ring based on the calculated axial fan diameter; identifying overlapping portions of the axial fan by applying a Boolean function to the ring and the calculated fan diameter; and performing Boolean operations on the ring and fan geometry to isolate the overlapping portions.
[0016] The instructions for calculating the direction of rotation of the fan also include instructions for the following operations: causing the system to project multiple rays radially from the center of the axial flow fan. The instructions for calculating the direction of rotation of the fan also include instructions for the following operations: for each instance where the projected rays intersect the solid surface of the two-dimensional representation of the axial flow fan, record a non-zero signal. The instructions for calculating the direction of rotation of the fan also include instructions for the following operations: the system calculates the centerline of the blade based on the non-zero signal; performs a slope calculation on each blade to determine the trailing edge and leading edge of the blade; and determines the direction of rotation of the fan based on the determined trailing edge and leading edge.
[0017] According to another aspect, a computer program product is stored on a non-transitory computer-readable medium and includes instructions for causing a computer system to: receive digital data of a three-dimensional representation of an axial fan having a plurality of fan blades; determine at least a single centerline of a single blade of the axial fan from a two-dimensional projection of the axial fan based on the data of the three-dimensional representation of the axial fan; and calculate an actual value of a direction of rotation of the fan based on an initial value of the fan rotation.
[0018] The following are some of the features described herein which are within the scope of the above aspects.
[0019] The instructions for calculating the actual value include instructions for the following operations: dividing the received data into a first partition corresponding to the fan blade section and a second partition corresponding to the motor section. The instructions for calculating the fan rotation direction also include instructions for the following operations: determining the target blade section based on the observation angle according to the partitioned data by instructions for the following operations: generating a ring according to the calculated axial fan diameter, identifying the overlapping portion of the axial fan by applying a Boolean function to the ring and the calculated fan diameter, and performing a Boolean operation on the ring and the fan geometry to isolate the overlapping portion; extracting the centerline from the target blade section; calculating the slope of the edge of the blade to determine the leading side area or the trailing side area of the centerline; and setting the actual fan rotation direction according to the calculated slope.
[0020] The instructions for determining the centerline of the single blade include instructions for causing the system to project a plurality of rays radially from the center of the axial flow fan. The instructions for determining the centerline of the single blade include instructions for recording a non-zero signal for each instance where the projected ray intersects a solid surface of the two-dimensional representation of the axial flow fan.
[0021] Other aspects include methods, computer systems, and computer program products for performing a fluid simulation using an automatically calculated fan rotation direction process.
[0022] The techniques disclosed herein avoid many of the problems that may arise in conventional determination of the direction of rotation of an axial fan. These techniques avoid the need for visual inspection of the axial fan in a 3D simulation domain, and therefore may avoid the need for the user to have the specialized skills required for known manual techniques. The disclosed techniques avoid errors that may occur with manual techniques. The disclosed techniques may be used with a considerable number of variations of axial fan designs. These disclosed techniques may reduce the number of simulation reruns, and along with this, may significantly reduce the cost of simulation execution, and may help meet product design deadlines. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 A system for simulation of fluid flow including a process for determining a direction of rotation of an axial flow fan is depicted, wherein the simulation example uses a turbulent boundary layer model for compressible flow.
[0024] Figure 2 A flow chart showing operations for developing a lattice Boltzmann model simulation utilizing a determined fan orientation and a turbulent boundary layer model is depicted.
[0025] Figure 3 The change in flow direction when experiencing a shock front is shown (prior art).
[0026] Figure 4 The pressure gradient decomposed into components in three orthogonal directions is shown (prior art).
[0027] Figure 5 A flow chart showing aspects of a turbulent boundary layer model is described (prior art).
[0028] Figure 6 and Figure 7 The velocity components of two LBM models (prior art) are shown.
[0029] Figure 8 It is a flow chart of the axial fan rotation direction process followed by the physical process simulation system.
[0030] Fig. 9 is a perspective view of a microblock (prior art).
[0031] Fig. 10A and Fig. 10B is a diagram of a lattice structure (prior art).
[0032] Fig.11 and Fig.12 Variable resolution technology (prior art) is shown.
[0033] Fig.13 The area affected by the facets of the surface is shown (prior art).
[0034] Fig.14 is a flow chart illustrating an automated process for determining the direction of rotation of an axial flow fan.
[0035] Figures 15A-15F It is used to understand Fig.14 Diagram of the automation process.
[0036] The following is an example application of an automated process for determining the direction of fan rotation, as applied in an LBM fluid simulation example using a turbulent boundary layer model for compressible flow. However, the use of an LBM fluid simulation and the use of a turbulent boundary layer model are merely illustrative examples of the use of an automated process for determining the direction of fan rotation. Other simulation techniques may be used, such as computational fluid dynamics techniques, such as a shear stress transport formulation of a k-Omega turbulence model may be used. DETAILED DESCRIPTION
[0037] An automated process for determining fan rotation direction may be used in fluid flow simulations performed by simulation engine 34, as described, for example, in U.S. Patent Application No. 11 / 463,673, entitled “COMPUTER SIMULATION OF PHYSICAL PROCESS” (now issued as U.S. Patent 7,558,714), which is incorporated herein by reference in its entirety.
[0038] In the following Fig. 9 In the process discussed in , the flow simulation process is described using an automated process for determining the direction of fan rotation to configure the simulation space. In subsequent figures, such as Figure 10- Fig.14 In the patent referenced above, each of these figures is marked as prior art because these figures appear in the above-referenced patents. However, these figures appearing in the above-referenced patents do not take into account any modifications to the flow simulation using the automated process discussed herein for determining the direction of fan rotation in order to configure the simulation space, because the automated process described herein is not described in the above-referenced patents.
[0039] In the physical process simulation system based on LBM, the fluid flow can be represented by a set of discrete velocities c i The distribution function value f to be evaluated i The dynamics of the distribution function is governed by the following equation, where f i (0) is known as the equilibrium distribution function, which is defined as:
[0040]
[0041] This equation describes the distribution function f iThe well-known lattice Boltzmann equation for the time evolution of . The left-hand side shows the changes in the distribution due to the so-called "fluidization process". A fluidization process is when a piece of fluid starts at a grid location and moves along one of the velocity vectors to the next grid location. At that point, the "collision operator" is calculated, i.e., the influence of the nearby fluid pieces on the starting fluid piece. The fluid can only move to one other grid location, so an appropriate choice of the velocity vectors is necessary so that all components of all velocities are multiples of a common speed.
[0042] The right hand side of the first equation is the "collision operator" mentioned above, which represents the change in the distribution function due to collisions between fluid blocks. The specific form of the collision operator used here is due to Bhatnagar, Gross and Krook (BGK). It forces the distribution function to go to a prescribed value given by the second equation, which is in "equilibrium" form.
[0043] According to this simulation, conventional fluid variables, such as mass ρ and fluid velocity u, are obtained as simple sums. Here, c i and w i The LBM model can be efficiently implemented on scalable computer platforms and runs with maximum robustness for time-invariant flows and complex boundary conditions.
[0044] A standard technique for obtaining the macroscopic equations of motion for a fluid system from the Boltzmann equation is the Chapman-Enskog method, in which successive approximations of the full Boltzmann equation are taken.
[0045] In a fluid system, small perturbations in density travel at the speed of sound. In a gas system, the speed of sound is generally determined by the temperature. The importance of the effects of compressibility in a fluid is measured by the ratio of the characteristic velocity to the speed of sound, which is called the Mach number.
[0046] Reference now Figure 1 , describes a system 10 including a turbulent boundary layer model that incorporates pressure gradient directional effects 34b for high-speed and compressible flows. In this implementation, the system 10 is based on a client-server or cloud-based architecture and includes a server system 12 and a client system 14 implemented as a massively parallel computing system 12 (standalone or cloud-based). The server system 12 includes a memory 18, a bus system 11, an interface 20 (e.g., a user interface / network interface / display or monitor interface, etc.), and a processing device 24. In the memory 18 is a grid preparation engine 32 and a simulation engine 34.
[0047] Although Figure 1A grid preparation engine 32 in the memory 18 is shown, but the grid preparation engine may be a third-party application executed on a different system than the server 12. Regardless of whether the grid preparation engine 32 is executed in the memory 18 or on a different system than the server 12, the grid preparation engine 32 receives the grid definition 30 provided by the user, and the grid preparation engine 32 prepares the grid according to the physical object being simulated and sends (and / or stores) the prepared grid to the simulation engine 34 for simulation by the simulation engine 34. The simulation engine 34 includes a collision interaction module 34a, a boundary module 34b, and an advection particle collision interaction module 34c.
[0048] In the examples discussed herein, the physical object is a ventilation system including an axial fan. However, the use of a ventilation system is merely illustrative, as the physical object including the axial fan can be of any shape, and in particular can have (one or more) flat and / or curved surfaces. In addition, in some embodiments, the fluid flow can be in a fluid environment in which the axial fan is located. The system 10 accesses a data repository 38 storing 2D and / or 3D grids (Cartesian and / or curvilinear) (e.g., a grid 32a for a ventilation system and a grid 32b for an axial fan), coordinate systems, and libraries.
[0049] Also included is an automated process 55 for determining the direction of rotation of the axial fan. This process can be part of the grid preparation process, a separate process, or included in the simulation process. Figures 15A-15F A full discussion of the process 55 is set forth in . As with the grid preparation engine 32, the automatic process 55 for determining the direction of rotation of the axial flow fan (direction determination process 55) can be executed in the memory 18, or can be executed on a system different from the server 12, and the server receives (and / or stores) the results of the direction determination process 55 for use by the simulation engine 34 (or can be used for other applications that require determination of the direction of rotation of the fan). Use with the simulation engine 34 is merely an exemplary use.
[0050] Reference now Figure 2, a process 40 for simulating fluid flow represented by a mesh representation 32b and a ventilation mesh 32a around an axial fan as a physical object is shown. The process 40 receives 42 from the client system 14 or retrieves a mesh 32a (or grid) for the physical object being simulated (e.g., a ventilation system) from a data repository 38, for example. In other embodiments, the external system or server 12 generates a mesh 32a for the simulated physical object based on user input. The process 40 also receives 42 from the client system 14 or retrieves a three-dimensional representation for the axial fan from a data repository 38, for example, and determines 41 the axial fan rotation direction by calling a direction determination process 55 for determining the axial fan rotation direction or by being supplied with the calculated axial fan rotation direction from another system / process that performs the automated process 55. That is, in some embodiments, the external system or server 12 performs a direction determination process 55 for determining the axial fan rotation direction, and provides the determined direction as input to the simulation process 40.
[0051] The simulation process 46 simulates the evolution of the particle distribution according to the lattice Boltzmann equation (LBE). The process pre-computes 44 geometric quantities from the retrieved grid, and uses the pre-computed geometric quantities corresponding to the retrieved grid to perform a dynamic lattice Boltzmann model simulation 46. The process 46 performs collision operations 46a (and collects incoming distribution sets from adjacent grid locations from the collision operations), evaluates 46b the flow at the physical boundary according to boundary modeling, scalar processing can be performed by applying a scalar solver 46c when the flow hits the physical surface, and performs advection 46d of the particle to the next cell in the LBM grid.
[0052] Boundary Modeling
[0053] Reference now Figure 3 , showing the change in direction of the flow when experiencing a shock front. In order to correctly simulate the interaction with the surface, each panel element satisfies four boundary conditions. First, the combined mass of the particles received by the panel element should be equal to the combined mass of the particles transmitted by the panel element (i.e., the net mass flux to the panel element must be equal to zero). Second, the combined energy of the particles received by the panel element should be equal to the combined energy of the particles transmitted by the panel element (i.e., the net energy flux to the panel element is equal to zero). These two conditions can be met by requiring the net mass flux at each energy level (i.e., energy levels one and two) to be equal to zero.
[0054] Boundary layer models can model the wall shear stress (friction) corresponding to the usual no-slip boundary condition that governs the momentum flux occurring at the solid wall.
[0055]
[0056] The gradient value is taken from the wall (y = 0), u * is the so-called friction velocity (= square root of the wall shear stress and ρ is the fluid mass density), and v0 is the molecular kinematic viscosity of the flow. An accurate calculation of this gradient requires decomposing the velocity field into very small scales up to the wall, which is impractical. A central task in turbulence modeling is to approximate the wall shear stress without directly calculating the velocity gradient at the wall. This is called turbulent boundary layer modeling (or wall modeling) in the field of turbulence and computational fluid dynamics.
[0057] The formulation of turbulent boundary layer models is based on a fundamental phenomenon of turbulence known as the "wall law." That is, if a solid wall is sufficiently flat and the turbulence is completely attached along it over a wide range of locations measured in terms of distance from the wall, then the time-averaged velocity distribution of the turbulence has a known specific (i.e., "universal") form.
[0058] This "universal" form is preserved under scaling by certain local intrinsic physical properties (e.g., wall shear stress). Thus, the following expression can be used for the velocity distribution,
[0059]
[0060] where U(y) is the value of the average fluid velocity along the solid wall measured at a distance y from the wall, and B is a constant (empirically found to have a value of about 5). + is the dimensionless distance to the wall and is defined as:
[0061]
[0062] The constant κ is the so-called von Karman constant (empirically found to have a value of about 0.41). The logarithmic function form is good for a wide range of y from about 50 to several hundred or more. + The basic wall model function form (Equation 1) can be extended to cover a wider range of y + Value range, including sticky and transition sublayers 0 <y + <50. The expanded form is given below,
[0063] U(y)=u * F(y + ) (Equation 2)
[0064] It is generally believed that: for 0 <y + ≤5, F(y + )=y + ; for y + ≥50, And for 5 <y + <50 uses transitional distribution form.
[0065] However, this "wall law" generally only applies when the boundary layer flow is perfectly adherent along a perfectly flat solid wall (so that the velocity changes parallel to the wall are negligible compared to the velocity changes perpendicular to the wall, which is known as the equilibrium condition). The equation (Equation 1) defines the relationship between the velocity profile (velocity as a function of distance from the wall) and the surface skin friction. This provides a basis for determining the skin friction without requiring (unresolvable) velocity gradient information at the wall, which is an observation relevant to the physics of modeling turbulent boundary layers. The wall shear stress vector defines the effective force acting on the fluid at the solid surface in a direction opposite to the direction of the flow velocity:
[0066]
[0067] Among them here is a unit vector in the direction 900 of the flow velocity.
[0068] However, a solid wall (shock front 902) is not usually flat. Therefore, it is desirable to extend the "wall law" to non-equilibrium situations where there are flow variations along the flow direction caused by, for example, wall curvature. It is known that the leading order effect of the curvature of a turbulent boundary layer profile is the presence of a pressure gradient. Various extensions have been made to the basic wall model, which are generally modifications of the equation (Equation 1) to include a term proportional to the pressure gradient.
[0069] One such extension is described in U.S. Pat. No. 5,910,902A, which is hereby incorporated by reference in its entirety, which describes an advanced extension to the basic wall model (Equation 1) that uses a specific approach to include the pressure gradient effect as an independent variable based on the self-similarity of the boundary layer profile under the influence of the pressure gradient. The general form of this extension is written as:
[0070]
[0071] where ξ(x) is a dimensionless positive function of x, dp / ds represents the downstream (parallel to the local fluid velocity) pressure gradient component,
[0072]
[0073] in is a unit vector in the downstream direction. The method is able to accurately simulate the flow around objects of arbitrary shape, including accurate prediction of boundary layer flow separation.
[0074] Existing turbulent boundary layer modeling (including that described in the aforementioned U.S. Patent US5910902A) assumes that the direction of the pressure gradient is parallel to the direction of velocity in the boundary layer. That is, the extension of equation (2), such as equation (4), only considers the contribution of the pressure gradient component in the downstream direction, while ignoring the perpendicular pressure component. Although this is reasonable to address the effects of geometric curvature in the direction of flow, the flow along the solid surface is not always in the same direction as the curvature. For example, consider a cylinder whose main axis forms an angle (0<θ<90) with respect to the flow direction. Due to this geometry, the resulting pressure gradient is neither parallel nor perpendicular to the flow direction. Therefore, a generalization of existing turbulent boundary layer modeling is needed to properly capture the effects of curvature on non-parallel boundary layer flows.
[0075] refer to Figure 4 As shown above, the pressure gradient can be decomposed into components along three orthogonal directions 70, one direction perpendicular to the wall, two directions tangential to the wall, but one direction is "stream-wise" parallel to the average velocity in the boundary layer, and another direction is "span-wise" perpendicular to the wall. Typically, conventional extended wall models include contributions from the stream-wise pressure gradient component, while the span-wise components are ignored or not identified.
[0076] The turbulent boundary layer modeling described here starts with a different approach to the relationship between the direction of the pressure gradient and the direction of the flow velocity. Instead of decomposing the pressure gradient into the three directions described above (perpendicular to the wall and two tangential directions, i.e., "streamwise" and "spanwise"), the procedure decomposes the boundary layer flow velocity into three directions.
[0077] Since the velocity is tangential to the wall, the velocity component perpendicular to the wall is zero, so there are actually only two velocity directions, namely a first direction parallel to the wall tangential part of the pressure gradient and a second direction perpendicular to the wall tangential part of the pressure gradient.
[0078] Therefore, the velocity vector U can be expressed as:
[0079]
[0080] in 904 and are the wall tangent unit vectors of the wall tangent parts parallel and perpendicular to the pressure gradient direction, respectively. The velocity components are expressed by:
[0081]
[0082] After decomposing the boundary layer velocity into these two components, it is straightforward to apply appropriate wall modeling based on their two different directions. For the velocity component perpendicular to the pressure gradient, the basic law of the wall model as in (Equation 2) is employed, namely:
[0083] U b (y) = u *b F(y + ) (Equation 7a)
[0084] The friction speed u *b corresponds to the skin friction perpendicular to the pressure gradient. In contrast, the extended wall model form (Eq. (4)) is used for the velocity component parallel to the pressure gradient:
[0085]
[0086] Therefore, the pressure gradient effect is applied only to the parallel component of the boundary layer velocity. *p Corresponds to the skin friction parallel to the direction of the pressure gradient.
[0087] In addition, a more careful definition of the downstream pressure gradient dp / ds 904 is provided than has been previously defined and understood. As described above, in conventional understanding, dp / ds is the downstream pressure gradient component, i.e., the projection of the pressure gradient in the direction of the boundary layer velocity:
[0088]
[0089] Contrary to the conventional understanding, dp / ds is defined here as the component of the pressure gradient tangential to the solid surface, which is usually in the opposite direction to the velocity. Specifically, according to this interpretation, dp / ds is defined as:
[0090]
[0091] in is a unit vector perpendicular to the solid surface, and the unit vector In the direction of the projected pressure gradient tangential to the surface (equal to the unit vector defined in (Eq. 5) ).
[0092] Usually, the absolute value of the new dp / ds is larger than the conventionally defined absolute value, because
[0093]
[0094] Therefore, in the new extended wall model, the resulting pressure gradient effect is slightly stronger. Most importantly, since in general the boundary layer velocity is not parallel to (the tangential part of) the pressure gradient, the resulting skin friction is no longer parallel to the velocity direction.
[0095] Combining all of the above, a new representation for the wall shear stress is obtained as given below:
[0096]
[0097] It can be seen that u *p Since it is usually not equal to u *b ,, the wall shear stress direction is not parallel to the flow velocity direction. This feature is believed to be lacking in all previous turbulent boundary layer models. Therefore, it is expected that the described extended wall model will show significant improvements for non-flat solid wall surfaces, thereby extending the "wall law" to non-equilibrium situations where there are flow variations along the flow direction caused by, for example, wall curvature, beyond conventional wall models. The non-parallel skin friction effects of the disclosed wall model can provide more accurate predictions of boundary layer turning phenomena caused by the presence of near-wall impacts on curved surfaces.
[0098] Reference Figure 5 , evaluate the turbulent boundary layer model. The turbulent boundary layer model determines the boundary layer flow velocity 82. Although there are three directions, the velocity component perpendicular to the wall is considered to be zero, so only two velocity directions are actually determined, namely, a first direction parallel to the wall tangential portion of the pressure gradient and a second direction perpendicular to the wall tangential portion of the pressure gradient, see Equation 6a and Equation 6b (above).
[0099] In the case of the two components of the boundary layer velocity using Equation 6a and Equation 6b (described above), the turbulent boundary layer model calculates the pressure gradient 84 as a wall shear stress based on these velocity components by applying velocity components parallel to the pressure gradient given above in Equation 9 in an extended wall model form, where the direction of the wall shear stress is not parallel to the flow velocity direction.
[0100] refer to Figure 6 , the first model (2D-1) 100 is a two-dimensional model including 21 velocities. Among the 21 velocities, one velocity (105) represents a particle that does not move; three sets of four velocities represent particles that move at a normalized velocity (r) (110-113), twice the normalized velocity (2r) (120-123), or three times the normalized velocity (3r) (130-133) in the positive or negative direction along the x or y axis of the lattice; and two sets of four velocities represent particles that move at a normalized velocity (r) (140-143) or twice the normalized velocity (2r) (150-153) relative to both the x and y lattice axes.
[0101] Also like Figure 7 As shown, a second model (3D-1) 200 is shown, which is a three-dimensional model including 39 speeds, each of which is represented by Figure 7Of the 39 velocities, one velocity represents a particle that is not moving; three sets of six velocities represent particles that move at a normalized velocity (r), twice the normalized velocity (2r), or three times the normalized velocity (3r) in the positive or negative direction along the x, y, or z axis of the lattice; eight velocities represent particles that move at a normalized velocity (r) relative to all three of the x, y, and z lattice axes; and twelve velocities represent particles that move at twice the normalized velocity (2r) relative to two of the x, y, and z lattice axes.
[0102] More complex models may also be used, such as a 3D-2 model including 101 velocities and a 2D-2 model including 37 velocities.
[0103] For the three-dimensional model 3D-2, among the 101 velocities, one velocity represents a particle that does not move (group 1); three groups of six velocities represent particles that move at a normalized velocity (r), twice the normalized velocity (2r), or three times the normalized velocity (3r) in the positive or negative direction along the x, y, or z axis of the lattice (groups 2, 4, and 7); three groups of eight velocities represent particles that move at a normalized velocity (r), twice the normalized velocity (2r), or three times the normalized velocity (3r) relative to all three lattice axes among the x, y, and z lattice axes (groups 3, 8, and 10); Twelve velocities represent particles moving at twice the normalized rate (2r) relative to two of the x, y, z lattice axes (Group 6); twenty-four velocities represent particles moving at a normalized rate (r) and twice the normalized rate (2r) relative to two of the x, y, z lattice axes and not moving relative to the remaining axes (Group 5); and twenty-four velocities represent particles moving at a normalized rate (r) relative to two of the x, y, z lattice axes and at three times the normalized rate (3r) relative to the remaining axes (Group 9).
[0104] For the two-dimensional model 2D-2, among the 37 velocities, one velocity represents a particle that does not move (Group 1); three groups of four velocities represent particles that move at a normalized rate (r), twice the normalized rate (2r), or three times the normalized rate (3r) in the positive or negative direction along the x or y axis of the lattice (Groups 2, 4, and 7); two groups of four velocities represent particles that move at a normalized rate (r) or twice the normalized rate (2r) relative to both the x lattice axis and the y lattice axis; eight velocities represent particles that move at a normalized rate (r) relative to one of the x lattice axis and the y lattice axis and at twice the normalized rate (2r) relative to the other axis; and eight velocities represent particles that move at a normalized rate (r) relative to one of the x lattice axis and the y lattice axis and at three times the normalized rate (3r) relative to the other axis.
[0105] The LBM models described above provide a specific class of efficient and robust discrete velocity dynamic models for numerical simulation of flows in two and three dimensions. This type of model includes a specific set of discrete velocities and weights associated with those velocities. These velocities correspond to grid points of Cartesian coordinates in velocity space (in non-Euclidean space), which facilitates accurate and efficient implementation of discrete velocity models (especially the class known as lattice Boltzmann models). Using such models, flows can be simulated with high fidelity.
[0106] refer to Figure 8 The physical process simulation system operates according to process 300 to simulate a physical process, such as a fluid flow in which an axial flow fan is set. Prior to simulation, the automatic calculation (such as Fig.14 and 15A - Fig.15F The execution of the process of determining the rotation direction of the axial cooling fan in the fluid simulation receives the determined axial fan rotation direction and applies it 301 to the fluid simulation. As part of the fluid simulation, the simulation space is modeled as a collection of voxels (step 302). Typically, a computer-aided design (CAD) program is used to generate the simulation space. For example, a CAD program can be used to draw an axial fan positioned in a ventilation system. Thereafter, the data generated by the CAD program is processed to increase the mesh structure with an appropriate resolution and illustrate the objects and surfaces within the simulation space.
[0107] The resolution of the lattice can be chosen based on the Reynolds number of the system being simulated. The Reynolds number is related to the viscosity of the flow (v), the characteristic length of objects in the flow (L), and the characteristic velocity of the flow (u):
[0108] Re=uL / v Equation (I-3)
[0109] The characteristic length of an object represents a large-scale feature of the object. For example, if the flow around a microdevice is being simulated, the height of the microdevice can be considered the characteristic length. For the flow around an axial fan, the diameter of the fan can be considered the characteristic length. When the flow around a small area of the object (e.g., the gap between the fan and the shroud) is of interest, the resolution of the simulation can be increased, or a region of increased resolution can be employed around the area of interest. The dimensionality of the voxel decreases as the resolution of the lattice increases.
[0110] The state space is represented as f i (x,t), where f i represents the number of elements or particles per unit volume in state i at the lattice site represented by the three-dimensional vector x at time t (i.e., the density of particles in state i). For a known time increment, the number of particles is simply referred to as f i(x). The combination of all states of the lattice site is denoted f(x).
[0111] The number of states is determined by the number of possible velocity vectors within each energy level. The velocity vectors consist of integer linear rates in a space with three dimensions x, y, and z. For multi-genus simulations, the number of states increases.
[0112] Each state i represents a different velocity vector at a particular energy level (i.e., energy level zero, one, or two). The velocity c of each state i The "velocity" in each of the three dimensions is indicated as follows:
[0113] c i =(c ix ,c iy ,c iz ,). Equation (I-4)
[0114] The zero energy state represents a stationary particle that does not move in any dimension, i.e., c stopped =(0,0,0). The one state represents a particle with a velocity of ±1 in one of the three dimensions and zero velocity in the other two dimensions. The two state represents a particle with a velocity of ±1 in all three dimensions, or a velocity of ±2 in one of the three dimensions and zero velocity in the other two dimensions.
[0115] Generating all possible permutations of the three energy levels gives a total of 39 possible states (one energy zero state, 6 energy one states, 8 energy three states, 6 energy four states, 12 energy eight states, and 6 energy nine states).
[0116] Each voxel (i.e., each lattice site) is represented by a state vector f(x). This state vector completely defines the state of the voxel and includes 39 entries. These 39 entries correspond to one energy zero state, 6 energy one states, 8 energy three states, 6 energy four states, 12 energy eight states, and 6 energy nine states. By using this set of velocities, the system can generate Maxwell-Boltzmann statistics for the achieved equilibrium state vector.
[0117] During the simulation, when the process encounters a location in the grid corresponding to a surface of a physical object or device, the process performs the above functions by evaluating it under a turbulent boundary layer model that resolves the pressure gradient into boundary layer flow velocities (as described above).
[0118] Reference now Fig. 9, showing a microblock. For processing efficiency, voxels are grouped in 2x2x2 volumes called microblocks. Microblocks are organized to allow parallel processing of voxels and minimize the overhead associated with data structures. The shorthand notation for a voxel in a microblock is defined as Ni(n), where n represents the relative position of the lattice site in the microblock and n∈{0,1,2,...,7}.
[0119] refer to Fig. 10A and 10B , surface S( Fig. 10A ) in the simulation space ( Fig. 10B ) is represented as a facet F α A collection of:
[0120] S={F α Equation (I-5)
[0121] Where α is an index that enumerates a particular facet. Facets are not restricted to the boundaries of voxels, but typically have a size that is on the order of the size of the voxels adjacent to the facet, or has a size that is slightly smaller than the size of the voxels adjacent to the facet, so that the facet affects a relatively small number of voxels. To implement surface dynamics, attributes are assigned to facets. Specifically, each facet F α With unit normal (n α ), surface area (A α )、Center position(x α ) and the surface element distribution function (f i (α)).
[0122] refer to Fig.11 , different resolution levels can be used in different regions of the simulation space to improve processing efficiency. Typically, the region 650 surrounding the object 655 is of greatest concern and is therefore simulated using the highest resolution. Because the effect of viscosity decreases with distance from the object, reduced resolution levels (i.e., enlarged voxel volumes) are used to simulate regions 350, 354 spaced at increasing distances from the object 352.
[0123] Similarly, if Fig.12 As shown in , lower resolution levels can be used to simulate regions 370 around less prominent features of object 372, while the highest resolution level is used to simulate regions 374 around the most prominent features (e.g., leading and trailing edge surfaces) of object 372. Outlying regions 376 are simulated using the lowest resolution level and the largest voxels.
[0124] Identify voxels affected by surfels
[0125] Reference again Fig. 9Once the simulation space has been modeled (step 302), the voxels affected by one or more facets are identified (step 304). Voxels can be affected by facets in a number of ways. First, a voxel intersected by one or more facets is affected in that the voxel has a reduced volume relative to non-intersecting voxels. This occurs because the facet and the material beneath the surface represented by the facet occupy a portion of the voxel. The fractional factor P f (x) indicates the portion of the voxel that is not affected by the facet (i.e., the portion that can be occupied by fluid or other material for which flow is simulated). For non-intersecting voxels, P f (x) is equal to 1.
[0126] Voxels that intersect one or more panels by transmitting particles to or receiving particles from the panels are also identified as voxels affected by the panels. All voxels intersected by a panel will include at least one state for receiving particles from the panel and at least one state for transmitting particles to the panel. In most cases, additional voxels will also include such states.
[0127] refer to Fig.13 , for a non-zero velocity vector c i For each state i, the face F α From the parallelepiped G iα The area defined by G receives particles or transmits particles to it, where the parallelepiped G iα With the velocity vector c i and facets (|c i n i |)'s unit normal n α The height is defined by the magnitude of the vector dot product and the surface area A of the bin α Define the base so that the parallelepiped G iα The volume V iα equal:
[0128] V ia =|c i n a |A a Equation (I-6)
[0129] When the velocity vector of the state points to the surface element (|c i n i |<0), facet F α From the volume V iα Receive particles, and when the velocity vector of the state points away from the surface element (|c i n i |>0), and transmit particles to this region. As will be discussed below, when another facet occupies the parallelepiped G iα, i.e., a condition that occurs near non-convex features such as interior corners, this expression must be modified.
[0130] Panel F α The parallelepiped G iα Part or all of a plurality of voxels may be overlapped. The number of voxels or portions thereof depends on the size of the bin relative to the size of the voxel, the energy of the state, and the orientation of the bin relative to the lattice structure. The number of voxels affected increases with the size of the bin. Thus, as noted above, the size of a bin is typically selected to be of the order of magnitude of or smaller than the size of a voxel located near the bin.
[0131] Parallelepiped G iα The portion of the voxel N(x) that overlaps is defined as V iα (x). Using this term, in voxel V iα (x) and panel F α The flux of particles moving between states i is Γ iα (x) is equal to the density of particles in state i in the voxel (N i (x)) multiplied by the volume of the region overlapping the voxel (V iα (x)):
[0132] Γ iα (x) = N i (x)V iα (x). Equation (I-7)
[0133] When the parallelepiped G iα When intersected by one or more polygons, the following conditions are true:
[0134] V ia =ΣV a (x)+ΣV ia (β) Equation (I-8)
[0135] The first summation indicates that G iα All voxels overlap and the second term describes the iα All the face elements intersecting. When the parallelepiped G iα When not intersected by another face, this expression simplifies to:
[0136] V ia =∑V ia (x) Equation (I-9)
[0137] Execute simulation
[0138] Once the voxels affected by one or more facets are identified (step 304), a timer is initialized to begin the simulation (step 306). During each time increment of the simulation, the movement of particles from voxel to voxel is simulated by an advection phase that accounts for the interaction of particles with surface facets (steps 308-316). Next, a collision phase (step 318) simulates the interaction of particles within each voxel. Thereafter, the timer is incremented (step 320). If the incremented timer does not indicate that the simulation is complete (step 322), the advection phase and the collision phase (steps 308-320) are repeated. If the incremented timer indicates that the simulation is complete (step 322), the results of the simulation are stored and / or displayed (step 324).
[0139] Process for automatically determining the rotation direction of an axial flow fan
[0140] Fig.14 An exemplary embodiment of a direction determination process 55 is shown, and Figures 15A-15F A diagram showing aspects of an axial flow fan derived from the direction determination process 55 will aid in understanding the direction determination process 55 .
[0141] Axial fan characteristics
[0142] Temporary reference Fig.15A , which schematically shows a typical axial flow cooling fan 440. Fig.15A in Fig.15A The left side of the figure shows a front view of the axial flow cooling fan, and the right side shows a top view of the axial flow cooling fan. Fig.15A Left side) and top view ( Fig.15A 444 and a motor (part) 444 of an axial cooling fan are shown in FIG. 45. Similar to an airfoil, the fan blade has a leading edge 446 that first contacts the fluid and a trailing edge 448 where the fluid separates. As the fan rotates along a center plane 450, the fluid flows from the leading edge 446 to the trailing edge 448. The fluid mass moves in the direction indicated by 452.
[0143] Fig.15A It shows how the fluid flow moves from the axial flow fan leading edge of the fan blade to the axial flow fan trailing edge. The axial flow fan rotates in such a direction that the leading edge encounters the fluid flow before the trailing edge (i.e., the leading edge encounters the fluid flow first). The following discussion hopes to determine which side of the fan blade is the leading side of the fan blade. Once the leading side of the fan blade is determined, the direction of rotation of the axial flow fan will be the direction in which the leading side first contacts the fluid. (Alternatively, this process can be used to determine the trailing side region of the centerline, and the actual fan rotation direction will be the direction of rotation in which the trailing side region enters the fluid last).
[0144] Reference now Fig.14 , shows an embodiment of a direction determination process 55 for automatically determining the rotation direction of an axial cooling fan. Process 55 uses an image processing method that is "projected" onto a 2D (two-dimensional) domain representation of the axial fan (see Fig.15A ) is used to analyze the complex 3D geometry of an axial fan in Figure 1, whose 2D domain representation includes a profile view of a single blade (see Fig. 15B ). To automatically generate an image containing a profile view of only one single blade, and to automatically perform the profile analysis, the orientation process 55 imports 402 a 3D digital axial fan geometry representation, such as from a computer-aided design (CAD) application (not shown), having predetermined identifiers (e.g., names, etc.) for the fan blades and the fan motor. The orientation process 55 divides 404 the imported representation into the fan blades and the fan motor, and assigns the fan blades and the motor to corresponding sections.
[0145] The direction determination process 55 receives 406 an assumed initial fan rotation direction (clockwise or counterclockwise), which is used as an initial rotation direction value for the process 55. The direction determination process 55 includes a normalization process, which includes calculating 408 a fan diameter expressed in physical units (e.g., measurement units). The direction determination process 55 normalization encloses the fan in a water-tight cylindrical rotating body. The fan diameter expressed in physical units is calculated 408 by measuring the size of the enclosed water-tight cylindrical rotating body. The calculated fan diameter value is used to normalize other parameters so that the process does not depend on the size of the fan.
[0146] The direction determination process 55 generates 410 a cut ring, such as a hollow cylindrical ring 502. Fig.15E ) and the fan geometry (e.g., the 3D representation of the CAD representation discussed above) to obtain overlaps 504. Typically, to find these overlaps, a Boolean AND operation can be performed on the ring 502 and the fan geometry. These overlaps are the remaining portions of the outer region of the fan blades. The purpose is to isolate a single blade ( Fig. 15B) of only the outer area 506. To achieve this, these remaining parts are automatically divided in step 414 so that each remaining part slice has a unique ID. The process shows one remaining part slice of the automatically divided remaining parts and hides all other remaining part slices. For those axial fans that have a ring attached to the fan blades by the manufacturer for performance purposes, the cutting position used by the cutting ring (e.g., hollow cylindrical ring 502) is adjusted accordingly so that the ring attached to the fan blade will not affect the blade shape view.
[0147] The system calculates 416 the remaining slice closest to the "observer" and isolates the selected fan blade from the other remaining slices 418. Alternative embodiments include picking the farthest blade rather than the closest blade relative to the "observer", picking the leftmost or rightmost blade, or specifying an angle relative to a reference vector (e.g., an assumed fan rotation axis vector) as a filter for selecting a target blade.
[0148] Direction determination process 55 calculates 420 a virtual viewing position and viewing direction as a function of fan diameter and orientation such that viewing target blade profile 508 ( Fig.15E ) of the desired angle. Fig.14 Like at least some other items in , the order of items 418 and 420 is interchangeable. In any case, an image is output in step 422 that shows only the outline of one blade with an optimized viewing angle.
[0149] refer to Fig. 15C , the system extracts the centerline as shown. The centerline extraction technique 470 obtains data representing the positioning of the isolated blade 442a (upper and lower edges, leading and trailing edges, and angles relative to a reference (e.g., horizontal plane / line)) and determines the centerline 472 from the data as a line that is equidistant from the edges in view and equidistantly crosses the leading region 472a and the trailing region 472b. The numerical analysis process for analyzing the profile of a single axial fan blade is simplified ( Fig.14 ).
[0150] To further simplify the numerical analysis process, the centerline extraction technique 440 extracts the centerline 472 of the blade profile view 424 from the representation of the blade of the axial fan. The slopes of the centerline 472 at the leading side region 472a and the trailing side region 472b of the centerline 472 can be compared. To determine the direction of fan rotation and fluid movement. That is, the side of the blade profile view with a lower slope value (e.g., more "flat") is designated as the leading side of the fan blade view. The axial fan will rotate in a specific direction (clockwise or counterclockwise) so that the determined leading side first "contacts" the fluid. The calculated direction is the actual result from the direction determination process 55.
[0151] In some cases, a check step 426 is performed. If the calculated result from 424 is the same as the initial value of rotation received at 406, the process can terminate at step 428. If the result is different from the inferred value of rotation, the inferred value is incorrect, the fan rotation direction is opposite to the inferred value, and the system can "flip", that is, change the rotation direction in step 430. In other words, the system provides the calculated rotation direction as the actual result from the direction determination process 55, as described above. At the same time, the fluid movement direction can also be determined in the local coordinate system. The calculated fluid movement vector can be converted to any other coordinate system as needed. This method is independent of the orientation of the blade profile. The direction determination process 55 is therefore based on the centerline 510 ( Fig.15E ) is used to calculate the direction of rotation by calculating the average of the upper portion 510a and the lower portion 510b of the fan blade edge. Therefore, the calculation is simplified by analyzing only the shape of the centerline 510 rather than the entire blade profile.
[0152] Fig. 15B The leading and trailing edge characteristics of a typical axial cooling fan blade are shown. To maximize efficiency and optimize performance, as Fig. 15B The typical axial cooling fan blade 442a shown is designed so that its leading side 443a is "flatter" relative to the fan rotation plane 443b than the trailing side 443c. That is, angle 443e is less than angle 443f. Angle 443e is defined as the angle between the average blade profile centerline at the leading side 443a and an imaginary line 462 parallel to the rotation plane 464. Similarly, 443f is defined by the angle between the average blade profile centerline 466 at the trailing edge and an imaginary line 460 parallel to the rotation plane 464. In this configuration, the leading edge will receive less fluid resistance when cutting through the fluid, and the trailing edge will guide the flow toward the designed flow direction.
[0153] Remaining methods for blade isolation
[0154] Fig.15D Shown from the fan image ( Fig.15A ) produces a hollow cylindrical ring 502. As described above, the size of the hollow cylindrical ring 502 is a function of the fan diameter. Fig.15DAlso shown is the result of performing a Boolean operation between the ring 502 and the fan geometry (e.g., the CAD representation discussed above) to obtain overlaps 504. Typically, to find these overlaps, a Boolean AND operation can be performed on the ring 502 and the fan geometry. These overlaps are the remaining portions of the outer regions of the fan blades. The goal is to isolate only the outer region 506 ( Fig.15E ). Thus, the center line 510a is calculated as a line equidistant between the top edge 510a and the bottom edge 510b and the leading edge and the trailing edge, as shown.
[0155] As above Fig.14 As discussed in , in order to isolate an outer region of a fan blade, the remaining parts are automatically divided in step 474 so that each remaining part slice has a unique ID. The process shows a remaining part slice in the automatically divided remaining parts and hides all other remaining part slices.
[0156] Ray tracing method
[0157] refer to Fig.15E , shows an alternative embodiment of obtaining an image of a single axial cooling fan blade using a ray tracing process 520. The ray tracing process 520 for obtaining the fan blade profile involves the system emitting a plurality of rays 522 (as used herein, one or more rays are geometric concepts, such as a line extending infinitely in one direction with a single endpoint (or origin)) through a representation of the axial fan from a center 524 of the fan 528, such as Fig.15F These rays form a circular wave 530 that propagates in the radial direction. The tracking process causes the system to record a zero value or signal when the wave does not hit a solid part (such as a fan blade), and causes the system to record a non-zero value or signal when the wave hits a solid object (such as a blade). The resulting signal is Fig.15F Shown in.
[0158] refer to Fig.15F , the example image generated by the ray tracing process 500 shows the profiles of all blades of an axial fan. In this process, all blade profiles are recorded and the center lines of the blades are automatically calculated. For example, 532 represents the center line of blade 530. Fig. 15C The slope calculation described in is performed on each single blade. By evaluating the results from all blades, the trailing and leading sides are determined. The direction of rotation is determined by using a voting method (e.g., determining the maximum value of the number of blade profiles that agree with the direction of rotation). This maximum value is used to evaluate whether the initial direction of rotation is correct or incorrect, similar to Fig.15D As discussed in .
[0159] The disclosed embodiments may provide one or more of the following advantages over existing solutions: The process is automated, whereas existing solutions are typically manual processes. The automated process may have a relatively high accuracy rate compared to manual visual estimation methods, which may be highly dependent on the skills of the person performing the estimation. The process may determine the direction of rotation relatively quickly compared to a manual process, which may take longer, depending on the expertise of the inspector and the complexity of the fan. The disclosed embodiments may use the detected direction of rotation to automatically calculate the airflow direction in a local coordinate system and pass that information to a numerical simulation. Manual estimation methods similarly require manual input of the airflow direction for numerical simulation.
[0160] Embodiments of the subject matter and operations described in this specification may be implemented in digital electronic circuits, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in a combination of one or more of them. Embodiments of the subject matter described in this specification may be implemented as one or more computer programs (also referred to as data processing programs) (i.e., one or more modules of computer program instructions encoded on a computer storage medium for execution by a data processing device or for controlling the operation of a data processing device). A computer storage medium may be a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory array or device, or a combination of one or more of them.
[0161] The term "data processing apparatus" includes all kinds of apparatus, devices and machines for processing data, including, for example: a programmable processor, a computer, a system on a chip, or a plurality or combination of the foregoing. The apparatus may include dedicated logic circuits (e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit)). In addition to hardware, the apparatus may also include code that creates an execution environment for the computer program in question (e.g., code constituting processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or a combination of one or more of them).
[0162] A computer program (also referred to as a program, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program may be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple collaborative files (e.g., files storing one or more modules, subroutines, or code portions). A computer program may be deployed to execute on one computer, or on multiple computers located in one location or distributed in multiple locations and interconnected by a communication network.
[0163] The processes and logic flows described in this specification can be performed by one or more programmable processors that execute one or more computer programs to perform actions by operating on input data and generating output. These processes and logic flows can also be performed by special-purpose logic circuits (e.g., FPGAs (field programmable gate arrays) or ASICs (application-specific integrated circuits)), and the apparatus can also be implemented as special-purpose logic circuits (e.g., FPGAs (field programmable gate arrays) or ASICs (application-specific integrated circuits)).
[0164] Processors suitable for executing computer programs include, for example, general-purpose and special-purpose microprocessors, and any one or more processors of any type of digital computer. Typically, the processor will receive instructions and data from a read-only memory or a random access memory or both. The basic elements of a computer are a processor for performing actions according to instructions and one or more memory devices for storing instructions and data. Typically, a computer will also include one or more mass storage devices (e.g., magnetic disks, magneto-optical disks, or optical disks) for storing data, or operably coupled to receive data from or transmit data to one or more mass storage devices for storing data, or both; however, a computer does not need to have such a device. In addition, a computer can be embedded in another device (e.g., a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device (e.g., a universal serial bus (USB) flash drive)).
[0165] Devices suitable for storing computer program instructions and data include all forms of non-volatile memory, media and storage devices, including, for example, semiconductor memory devices (e.g., EPROM, EEPROM and flash memory devices), magnetic disks (e.g., internal hard disks or removable disks), magneto-optical disks, and CD ROM and DVD-ROM disks. The processor and memory may be supplemented by, or incorporated in, special purpose logic circuitry.
[0166] To provide interaction with a user, embodiments of the subject matter described in this specification may be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user, and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other kinds of devices may also be used to provide interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback), and input from the user may be received in any form, including sound, speech, or tactile input. In addition, a computer may interact with a user by sending documents to and receiving documents from a device used by a user (e.g., by sending a web page to a web browser in response to a request received from a web browser on a user device of the user).
[0167] Embodiments of the subject matter described in this specification may be implemented in a computing system that includes a back-end component (e.g., as a data server), or includes a middleware component (e.g., an application server), or includes a front-end component (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with an implementation of the subject matter described in this specification), or any combination of one or more such back-end, middleware, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communications network). Examples of communications networks include local area networks ("LANs") and wide area networks ("WANs"), internetworks (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks).
[0168] A computing system may include a user and a server. The user and the server are usually remote from each other and usually interact through a communication network. The relationship between the user and the server is due to computer programs running on respective computers and having a user-server relationship with each other. In some embodiments, the server sends data (e.g., an HTML page) to a user device (e.g., in order to display data to a user interacting with the user device and to receive user input from the user). Data generated at the user device (e.g., the result of the user interaction) can be received from the user device at the server.
[0169] Although this specification contains many specific implementation details, these should not be interpreted as limitations on the scope of any invention or the scope that can be claimed, but as descriptions of features peculiar to the specific embodiments of specific inventions. Certain features described in the context of separate embodiments in this specification may also be implemented in combination in a single embodiment. On the contrary, the various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments. In addition, although features may be described above as working in certain combinations and even initially claimed as such, one or more features from the claimed combination may be removed from the combination in some cases, and the claimed combination may be directed to a variation of a sub-combination or a sub-combination.
[0170] Similarly, although operations are depicted in a particular order in the accompanying drawings, this should not be understood as requiring that such operations be performed in the particular order shown or in a continuous order, or that all of the operations shown be performed to achieve the desired results. In some cases, multitasking and parallel processing may be advantageous. In addition, the separation of various system components in the above-described embodiments should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
[0171] Thus, specific embodiments of the present subject matter have been described. Other embodiments are also within the scope of the appended claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve the desired results. As an example, the processes described in the accompanying drawings do not necessarily require the specific order or sequential order shown to achieve the desired results. In some cases, multitasking and parallel processing can be advantageous.
Claims
1. A computer-implemented method for determining a rotation direction of a fan using image processing, comprising: receiving, by a computer processing system, digital data of a three-dimensional representation of an axial flow fan having a plurality of fan blades; Calculating a virtual observation position and an observation direction based on the fan diameter and orientation to achieve a desired angle of observation of the target blade relative to a reference vector; generating, by the computer processing system, a digital image of at least a target blade of the plurality of fan blades of the axial flow fan as viewed from the virtual viewing position, the digital image representing a two-dimensional projection of the three-dimensional representation of the axial flow fan; processing the digital image by the computer processing system to extract data representing the profile of the target blade; identifying, by the computer processing system, a leading edge and a trailing edge based on the profile of the target blade represented by the extracted data; as well as The fan rotation direction is determined by the computer processing system based on the leading edge and the trailing edge.
2. The method according to claim 1, wherein: Determining the fan rotation direction includes: The received data is divided by the computer processing system into a first partition corresponding to the fan blade section and a second partition corresponding to the motor section.
3. The method according to claim 2, wherein: Determining the fan rotation direction also includes: determining, by the computer processing system, a target blade section based on the observation angle according to the partitioned data; extracting, by the computer processing system, a centerline from the target blade section; calculating, by the computer processing system, a slope of an edge of the blade to determine a leading side area and a trailing side area of the centerline; and The fan rotation direction is determined by the computer processing system based on the calculated slope.
4. The method according to claim 3, wherein: Generating the digital image of the target blade comprises: Calculate the diameter of an axial fan; Generate a cutting ring based on the calculated axial fan diameter; identifying an overlapping portion of the axial flow fan by applying a Boolean function to the cut ring and the calculated fan diameter to isolate the overlapping portion and provide a remaining portion of the plurality of fan blades and isolate an outer region of the target blade; and The remaining part is divided so that each remaining part is assigned a unique identifier.
5. The method according to claim 1, wherein: Determining the fan rotation direction includes: The computer processing system is caused to project a plurality of rays radially from a center of the axial flow fan.
6. The method according to claim 5, wherein: Determining the fan rotation direction also includes: For each instance where the projected ray intersects a solid surface of the two-dimensional representation of the axial fan, a non-zero signal is recorded by the computer processing system.
7. The method according to claim 6, wherein: Determining the fan rotation direction also includes: Calculating, by the computer processing system, a centerline of the blade based on the non-zero signal; performing a slope calculation for each blade to determine the trailing edge and the leading edge of the blade; and Based on the determined trailing edge and leading edge, the fan rotation direction is determined.
8. The method according to claim 1, further comprising: simulating a physical fluid flow process in the represented fluid volume including the axial flow fan based on the determined direction of fan rotation; as well as The fan rotation direction is determined by setting the rotation direction to be a direction in which the leading edge first enters the fluid or a rotation direction in which the trailing edge last enters the fluid.
9. A computer system comprising: one or more processors; as well as a memory operatively coupled to the one or more processors; A computer readable storage medium storing executable computer instructions for determining a fan rotation direction using image processing, the executable computer instructions causing the computer system to: receiving digital data of a three-dimensional representation of an axial flow fan having a plurality of fan blades; Calculating a virtual observation position and an observation direction based on the fan diameter and orientation to achieve a desired angle of observation of the target blade relative to a reference vector; generating a digital image of at least a target blade of the plurality of fan blades of the axial flow fan as viewed from the virtual observation position, the digital image representing a two-dimensional projection of the three-dimensional representation of the axial flow fan; processing the digital image to extract data representing a profile of the target blade; identifying a leading edge and a trailing edge based on the profile of the target blade represented by the extracted data; as well as Based on the leading and trailing edges, the fan rotation direction is determined.
10. The computer system according to claim 9, wherein: The instructions for determining the direction of fan rotation include instructions for the following operations: The received data is divided into a first partition corresponding to the fan blade section and a second partition corresponding to the motor section.
11. The computer system according to claim 10, wherein: The instructions for determining the direction of fan rotation also include instructions for: determining a target blade section based on the observation angle according to the partitioned data; extracting a centerline from the target blade section; calculating the slope of the edge of the blade to determine the leading side area and the trailing side area of the centerline; as well as The fan rotation direction is determined based on the calculated slope.
12. The computer system according to claim 9, wherein: The instructions for generating a digital image of the target blade include instructions for: Calculate the diameter of an axial fan; Generate a cutting ring based on the calculated axial fan diameter; identifying an overlapping portion of the axial flow fan by applying a Boolean function to the cut ring and the calculated fan diameter to isolate the overlapping portion and provide a remaining portion of the plurality of fan blades and isolate an outer region of the target blade; as well as The remaining part is divided so that each remaining part is assigned a unique identifier.
13. The computer system according to claim 9, wherein: The instructions for determining the direction of fan rotation also include instructions for: The computer system is caused to project a plurality of rays radially from a center of the axial flow fan.
14. The computer system of claim 13, wherein: The instructions for determining the direction of fan rotation also include instructions for: For each instance where a projected ray intersects a solid surface of the two-dimensional representation of the axial fan, a non-zero signal is recorded.
15. The computer system of claim 14, wherein: The instructions for determining the direction of fan rotation also include instructions for: Calculating, by the computer system, a centerline of the blade according to the non-zero signal; performing a slope calculation for each blade to determine the trailing edge and the leading edge of the blade; as well as Based on the determined trailing edge and leading edge, the fan rotation direction is determined.
16. A computer program product stored on a non-transitory computer readable medium storing executable computer instructions for determining a rotational direction of an axial flow fan using image processing, the instructions causing a computer system to: receiving digital data of a three-dimensional representation of an axial flow fan having a plurality of fan blades; Calculating a virtual observation position and an observation direction based on the fan diameter and orientation to achieve a desired angle of observation of the target blade relative to a reference vector; generating a digital image of at least a target blade of the plurality of fan blades of the axial flow fan as viewed from the virtual observation position, the digital image representing a two-dimensional projection of the three-dimensional representation of the axial flow fan; processing the digital image to extract data representing a profile of the target blade; identifying a leading edge and a trailing edge based on the profile of the target blade represented by the extracted data; as well as Based on the leading and trailing edges, the fan rotation direction is determined.
17. The computer program product of claim 16, wherein: The instructions for determining the direction of fan rotation include instructions for the following operations: The received data is divided into a first partition corresponding to the fan blade section and a second partition corresponding to the motor section.
18. The computer program product of claim 17, wherein: The instructions for determining the direction of fan rotation also include instructions for: Determining a target blade section based on an observation angle from the partitioned data, via instructions for: Generate a cutting ring based on the calculated axial fan diameter; identifying an overlapping portion of the axial flow fan by applying a Boolean function to the cut ring and the calculated fan diameter to isolate the overlapping portion and provide a remaining portion of the plurality of fan blades and isolate an outer region of the target blade; Dividing the remaining part so that each remaining part is assigned a unique identifier; extracting a centerline from the target blade section; calculating the slope of the edge of the target blade to determine the leading side area and the trailing side area of the centerline; as well as The fan rotation direction is determined based on the calculated slope.
19. The computer program product of claim 16, wherein: The instructions for determining the direction of fan rotation include instructions for the following operations: The computer system is caused to project a plurality of rays radially from a center of the axial flow fan.
20. The computer program product of claim 19, wherein: The instructions for determining the direction of fan rotation include instructions for the following operations: for each instance where the projected ray intersects a solid surface of the two-dimensional representation of the axial fan, recording a non-zero signal; Calculating, by the computer system, a centerline of the blade according to the non-zero signal; performing a slope calculation for each blade to determine the trailing edge and the leading edge of the blade; as well as Based on the determined trailing edge and leading edge, the fan rotation direction is determined.
Citation Information
Patent Citations
Computer simulation of physical processes
US5910902A
Computer simulation of physical processes
US7558714B2
A high efficiency axial fan
CN1993556A
Axial fan analysis method, analysis device, and analysis program
JP2017072922A
Axial flow fan and air-conditioning apparatus having the same
US20150044058A1