Automatic driving deviation correction method and device, storage medium and electronic equipment

By acquiring the angular velocity and acceleration of the electric wheelchair, establishing roll and pitch coordinate systems, and calculating the target angular velocity to control the directional yaw of the electric wheelchair, the problem of poor handling experience of electric wheelchairs on uneven roads is solved, and the stability of straight-line driving is achieved.

CN120871841APending Publication Date: 2025-10-31BEIJING ANDAWELL CONTROL TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510841505.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-23
Publication Date
2025-10-31

AI Technical Summary

Technical Problem

Electric wheelchairs are prone to swaying from side to side and pitching forward and backward when driving on uneven surfaces, resulting in a poor driving experience and difficulty in maintaining a straight line.

Method used

By acquiring the angular velocity and acceleration of the electric wheelchair, its actual pitch and roll angles are determined, roll and pitch coordinate systems are established, the target angular velocity is calculated to control directional yaw, and the electric wheelchair controller is used for driving control.

Benefits of technology

It effectively prevents electric wheelchairs from veering off course, improves the driving experience, and ensures that electric wheelchairs can maintain a straight line when driving on uneven surfaces.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120871841A_ABST
    Figure CN120871841A_ABST
Patent Text Reader

Abstract

The invention relates to an automatic deviation correction method and device for driving, a storage medium and electronic equipment, and relates to the technical field of electric wheelchair control, and the method comprises the steps of determining an actual pitch angle and an actual roll angle corresponding to a target electric wheelchair based on a first acceleration; based on the body coordinate system, the actual pitch angle and the actual roll angle corresponding to the target electric wheelchair, determining a roll ring coordinate system and a pitch ring coordinate system corresponding to the target electric wheelchair; based on the first angular velocity, the actual roll angle, the body coordinate system and the roll ring coordinate system, determining a second angular velocity of the roll ring of the target electric wheelchair, and based on the second angular velocity, the actual pitch angle, the roll ring coordinate system and the pitch ring coordinate system, determining a third angular velocity of the pitch ring of the target electric wheelchair; and based on the third angular velocity and the pitch ring coordinate system, determining a target angular velocity for controlling the direction deflection of the target electric wheelchair. The method has the effect of improving the control experience of the electric wheelchair.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of electric wheelchair control technology, specifically to an automatic steering correction method, device, storage medium, and electronic equipment. Background Technology

[0002] An electric wheelchair is an electrically powered mobility aid designed for people with mobility impairments. It combines the portability of a traditional wheelchair with the power of an electric motor, enabling users to move independently. Electric wheelchairs replace the manual pushing of traditional wheelchairs with electric power, reducing the physical burden on users, and provide functions such as steering, acceleration, and braking. In daily use, people typically control the electric wheelchair using joysticks and buttons. Additionally, the automatic steering correction feature of electric wheelchairs refers to the automatic correction of deviations in the wheelchair's direction of travel, ensuring that the wheelchair travels in a straight line or along a predetermined path.

[0003] When an electric wheelchair is in motion, if it encounters uneven surfaces, obstacles, or inclines / declines, and is controlled by the joystick to move in a straight line, the electric wheelchair will wobble left and right and pitch forward and backward. Ultimately, this causes the electric wheelchair to sway from side to side in its direction of travel, resulting in directional deviation and an inability to move in a straight line, leading to a poor driving experience. Summary of the Invention

[0004] To improve the driving experience of electric wheelchairs, this application provides an automatic steering correction method, device, storage medium, and electronic device.

[0005] The first aspect of this application provides a method for automatic driving correction, specifically including: Obtain the first angular velocity and first acceleration of the target electric wheelchair body while it is in motion; Based on the first acceleration, determine the actual pitch angle and actual roll angle corresponding to the target electric wheelchair; Based on the body coordinate system corresponding to the target electric wheelchair, the actual pitch angle and the actual roll angle, determine the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair; Based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system, the second angular velocity of the roll ring of the target electric wheelchair is determined, and based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system, the third triangular velocity of the pitch ring of the target electric wheelchair is determined. Based on the third angular velocity and the pitch ring coordinate system, the target angular velocity for controlling the directional yaw of the target electric wheelchair is determined, and based on the target angular velocity, the electric wheelchair is driven by the electric wheelchair controller.

[0006] By employing the aforementioned technical solution, the actual pitch and roll angles of the target electric wheelchair are determined based on the first acceleration, thereby determining the degree of lateral swaying and pitching of the target electric wheelchair during operation. Then, based on the body coordinate system, a roll ring coordinate system describing the roll motion and a pitch ring coordinate system describing the pitch motion of the target electric wheelchair are determined. Next, based on the relationship between the body coordinate system, the roll ring coordinate system, and the pitch ring coordinate system, the first angular velocity in the body coordinate system is converted into a second angular velocity in the roll ring coordinate system, thereby determining the third angular velocity of the target electric wheelchair in the pitch ring coordinate system. Finally, combining the pitch ring coordinate system and the third angular velocity, the angle of the target electric wheelchair in the coordinate system describing its yaw motion is derived, thus accurately determining the target angular velocity for controlling the yaw motion of the target electric wheelchair. Controlling the target electric wheelchair with this target angular velocity can effectively prevent directional yaw and improve the driving experience to some extent.

[0007] In one embodiment, determining the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair based on the body coordinate system corresponding to the target electric wheelchair, the actual pitch angle, and the actual roll angle specifically includes: The x-axis of the body coordinate system corresponding to the target electric wheelchair is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated x-axis, and the z-axis of the body coordinate system is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated z-axis. The y-axis of the body coordinate system is determined as the rotated y-axis. Based on the rotated x-axis, the rotated y-axis, and the rotated z-axis, the roll ring coordinate system corresponding to the target electric wheelchair is determined. The actual pitch angle is rotated around the x-axis of the roll ring coordinate system to obtain a new z-axis, and the actual pitch angle is rotated around the x-axis of the roll ring coordinate system to obtain a new y-axis. The x-axis of the roll ring coordinate system is determined as a new x-axis. Based on the new x-axis, the new y-axis, and the new z-axis, the pitch ring coordinate system corresponding to the target electric wheelchair is obtained.

[0008] In one embodiment, determining the second angular velocity of the target electric wheelchair's roll ring based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system specifically includes: Based on the actual roll angle, determine the first rotation matrix of the roll ring coordinate system relative to the body coordinate system, and based on the actual roll angle, determine the first rotational angular velocity of the roll ring coordinate system relative to the body coordinate system. Substituting the first rotation matrix, the first rotational angular velocity, and the first angular velocity into the preset roll ring angular velocity calculation formula, the second angular velocity of the target electric wheelchair's roll ring is obtained, wherein the roll ring angular velocity calculation formula is: In the formula, Indicates the second angular velocity. Denotes the first rotation matrix. Indicates the first angular velocity. denoted by ω, r represents the roll ring coordinate system, and b represents the body coordinate system.

[0009] In one embodiment, determining the third triangular velocity of the pitch ring of the target electric wheelchair based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system specifically includes: Based on the actual pitch angle, determine the second rotation matrix of the pitch ring coordinate system relative to the roll ring coordinate system; based on the actual pitch angle, determine the second rotational angular velocity of the pitch ring coordinate system relative to the roll ring coordinate system; substitute the second rotation matrix, the second rotational angular velocity, and the second angular velocity into a preset pitch ring angular velocity calculation formula to obtain the third triangular velocity of the target electric wheelchair's pitch ring, wherein the pitch ring angular velocity calculation formula is: In the formula, Indicates the third angular velocity. This represents the second rotation matrix. Indicates the second angular velocity. denoted by , where f represents the second rotational angular velocity, and f represents the pitch ring coordinate system.

[0010] In one embodiment, determining the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third angular velocity and the pitch ring coordinate system specifically includes: Based on the actual azimuth angle to be solved for the target electric wheelchair and the pitch ring coordinate system, construct the azimuth ring coordinate system corresponding to the target electric wheelchair; Based on the actual azimuth angle to be solved, the first equation expression for the third rotational angular velocity of the azimuth loop coordinate system relative to the pitch loop coordinate system is determined; Based on the actual azimuth angle to be solved, construct the second equation expression for the third rotation matrix of the azimuth ring coordinate system relative to the pitch ring coordinate system; Substituting the first equation expression, the second equation expression, and the third angular velocity into the preset azimuth ring angular velocity calculation formula, the fourth angular velocity of the target electric wheelchair azimuth ring is obtained, and based on the fourth angular velocity, the third equation expression of the angular velocity around the z-axis of the azimuth ring coordinate system is obtained. Based on the aforementioned third-party expression, the target angular velocity for controlling the directional yaw of the target electric wheelchair is determined, wherein the formula for calculating the azimuth loop angular velocity is: In the formula, This represents the fourth angular velocity of the target electric wheelchair's orientation loop. This represents the third rotation matrix. Indicates the third angular velocity. denoted by 'a', which represents the third rotational angular velocity, and 'a' represents the azimuth ring coordinate system.

[0011] In one implementation, determining the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third-party expression specifically includes: Based on the aforementioned third-party expression, determine the target equation system; Solving the target equations yields the third rotational angular velocity, which is then determined as the target angular velocity for controlling the directional yaw of the target electric wheelchair. The target equations are as follows: In the formula, This represents the angular velocity about the z-axis of the azimuth ring coordinate system. Let denot represent the angular velocity about the z-axis of the pitch ring coordinate system in the third angular velocity, and ψ represent the actual azimuth angle to be solved. This indicates the third rotational angular velocity.

[0012] In one implementation, determining the actual pitch angle and actual roll angle of the target electric wheelchair based on the first acceleration specifically includes: Based on the actual pitch angle, actual roll angle, actual azimuth angle to be solved, and the body coordinate system of the target electric wheelchair, construct the initial roll loop coordinate system, initial pitch loop coordinate system, and initial azimuth loop coordinate system corresponding to the target electric wheelchair. Based on the initial roll ring coordinate system and the initial pitch ring coordinate system, determine the final equation expression of the final transformation matrix from the body coordinate system to the initial azimuth ring coordinate system, and construct a system of equations to solve based on the final equation expression and the first acceleration. Based on the solved equations, the actual pitch angle and actual roll angle of the target electric wheelchair are determined, wherein the solved equations are: In the formula, Represents the final transformation matrix. Indicates the first acceleration. Let a' represent the acceleration of the target electric wheelchair in the initial orientation loop coordinate system, and let a' represent the initial orientation loop coordinate system.

[0013] A second aspect of this application provides an automatic driving correction device, specifically comprising: The data acquisition module is used to acquire the first angular velocity and first acceleration of the target electric wheelchair body in motion; An angle determination module is used to determine the actual pitch angle and actual roll angle of the target electric wheelchair based on the first acceleration. The coordinate system determination module is used to determine the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair based on the body coordinate system corresponding to the target electric wheelchair, the actual pitch angle and the actual roll angle; The speed determination module is used to determine the second angular velocity of the roll ring of the target electric wheelchair based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system, and to determine the third angular velocity of the pitch ring of the target electric wheelchair based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system; the driving correction module is used to determine the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third angular velocity and the pitch ring coordinate system, and to control the driving of the target electric wheelchair through the electric wheelchair controller based on the target angular velocity.

[0014] By adopting the above technical solution, the data acquisition module acquires the first angular velocity and the first acceleration. The angle determination module determines the actual pitch angle and the actual roll angle corresponding to the target electric wheelchair based on the first acceleration. Then, the coordinate system determination module determines the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair. Next, the velocity determination module determines the third triangular velocity of the pitch ring of the target electric wheelchair. Finally, the driving correction module determines the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third angular velocity and the pitch ring coordinate system, and controls the driving of the target electric wheelchair through the electric wheelchair controller.

[0015] A third aspect of this application provides a computer-readable storage medium storing a computer program that, when loaded and executed by a processor, performs the steps of the method described in any one of the first aspects.

[0016] A fourth aspect of this application provides an electronic device, specifically comprising: A processor, a memory, and a computer program stored in the memory and capable of running on the processor, the processor being configured to load and execute the computer program stored in the memory to cause the electronic device to perform the method as described in any one of the first aspects.

[0017] In summary, this application includes at least one of the following beneficial technical effects: Based on a first acceleration, the actual pitch angle and actual roll angle corresponding to the target electric wheelchair are determined, thereby determining the degree of lateral swaying and pitching of the target electric wheelchair during operation. Then, based on the body coordinate system, a roll ring coordinate system describing the roll motion of the target electric wheelchair and a pitch ring coordinate system describing the pitch motion of the target electric wheelchair are determined. Next, based on the correlation between the body coordinate system, the roll ring coordinate system, and the pitch ring coordinate system, the first angular velocity in the body coordinate system is converted into a second angular velocity in the roll ring coordinate system, thereby determining the third angular velocity of the target electric wheelchair in the pitch ring coordinate system. Finally, combining the pitch ring coordinate system and the third angular velocity, the angle of the target electric wheelchair in the coordinate system describing the yaw motion of the target electric wheelchair is derived, thus accurately determining the target angular velocity for controlling the yaw motion of the target electric wheelchair. Controlling the target electric wheelchair with this target angular velocity can effectively prevent directional yaw and improve the driving experience of the electric wheelchair to a certain extent. Attached Figure Description

[0018] Figure 1 This is a flowchart illustrating an automatic driving correction method provided in an embodiment of this application; Figure 2 This is a schematic diagram of a body coordinate system provided in an embodiment of this application; Figure 3 This is a schematic diagram of the structure of an automatic driving correction device provided in an embodiment of this application.

[0019] Explanation of reference numerals in the attached diagram: 11. Data acquisition module; 12. Angle determination module; 13. Coordinate system determination module; 14. Speed ​​determination module; 15. Driving correction module. Detailed Implementation

[0020] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0021] In the description of the embodiments of this application, words such as "exemplarily," "for example," or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily," "for example," or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of words such as "exemplarily," "for example," or "for instance" is intended to present the relevant concepts in a specific manner.

[0022] In the description of the embodiments of this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, B existing alone, or A and B existing simultaneously. Furthermore, unless otherwise stated, the term "multiple" means two or more. For example, multiple systems refer to two or more systems, and multiple screen terminals refer to two or more screen terminals. In addition, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and their variations all mean "including but not limited to," unless otherwise specifically emphasized.

[0023] See Figure 1 This application discloses a flowchart of an automatic driving correction method, which can be implemented using a computer program or run on an automatic driving correction device based on the von Neumann architecture. The computer program can be integrated into an application or run as a standalone utility application, specifically including: S101: Obtain the first angular velocity and first acceleration of the target electric wheelchair body while it is in motion.

[0024] Specifically, in this embodiment, the first angular velocity is the angular velocity of the target electric wheelchair around the x-axis, y-axis, and z-axis of the body coordinate system, and the first acceleration is the rate of change of the angular velocity when the target electric wheelchair rotates around the x-axis, y-axis, and z-axis of the body coordinate system. The body coordinate system, also known as the b-frame, is a coordinate system established with the wheelchair itself as a reference when describing the posture and motion of the target electric wheelchair during travel. For details, please refer to... Figure 2The origin of the body coordinate system is the center of mass of the target electric wheelchair. The x-axis points laterally to the target electric wheelchair, the y-axis points forward, and the z-axis is perpendicular to the ground and points upward. When the target electric wheelchair rotates around the x-axis, it will pitch; when it rotates around the y-axis, it will sway left and right; and when it rotates around the z-axis, it will yaw left and right. The target electric wheelchair is an electric wheelchair with passengers and requires real-time correction control for directional deviation during movement.

[0025] Furthermore, this application discloses an automatic driving correction method in which the executing entity is the target electric wheelchair itself, which includes an electric wheelchair controller, a three-axis gyroscope, and a three-axis accelerometer. The electric wheelchair controller is the core component of the target electric wheelchair, responsible for controlling the motor's movement, speed adjustment, and direction control. The three-axis gyroscope and the three-axis accelerometer are spatially orthogonal. Additionally, a feasible method for obtaining the first angular velocity and the first acceleration is to obtain the angular velocity of the target electric wheelchair around the xyz axes of the body coordinate system in real time using the three-axis gyroscope, ultimately obtaining the first angular velocity, which can be expressed as: This represents the angular velocity of the target electric wheelchair about the x-axis of the body coordinate system. This represents the angular velocity of the target electric wheelchair about the y-axis of the body coordinate system. This represents the angular velocity of the target electric wheelchair about the z-axis of the body coordinate system. This represents the first angular velocity. The acceleration of the target electric wheelchair's rotation around the x, y, and z axes of the body coordinate system is acquired in real time using a three-axis accelerometer, ultimately yielding the first acceleration, which is expressed as: The acceleration of the target electric wheelchair about the x-axis of the body coordinate system. The acceleration of the target electric wheelchair about the y-axis of the body coordinate system. The acceleration of the target electric wheelchair about the z-axis of the body coordinate system. This indicates the first acceleration.

[0026] S102: Based on the first acceleration, determine the actual pitch angle and actual roll angle corresponding to the target electric wheelchair.

[0027] Specifically, since the target electric wheelchair will rotate in the roll direction, pitch direction and azimuth direction when it travels on uneven road surfaces, in this embodiment of the application, the rotation directions are defined as roll direction, pitch direction and azimuth direction in sequence. Therefore, it is necessary to determine the actual roll angle (roll angle in the roll direction), actual pitch angle (pitch angle in the pitch direction) and actual azimuth angle (pitch angle in the azimuth direction) of the target electric wheelchair in sequence during the driving process.

[0028] Furthermore, a feasible method for determining the actual roll angle and actual pitch angle is as follows: The actual roll angle, actual pitch angle, and actual azimuth angle to be solved are set as unknown variables y, θ, and ψ, respectively. Combined with the body coordinate system of the target electric wheelchair, an initial roll loop coordinate system, an initial pitch loop coordinate system, and an initial azimuth loop coordinate system corresponding to the target electric wheelchair are constructed. Specifically, the y-axis of the initial roll loop coordinate system points in the same direction as the y-axis of the body coordinate system, and the initial roll loop coordinate system rotates by an angle y around the y-axis of the body coordinate system; the x-axis of the initial pitch loop coordinate system points in the same direction as the x-axis of the initial roll loop coordinate system, and the initial pitch loop coordinate system rotates by an angle θ around the x-axis of the initial roll loop coordinate system; the z-axis of the initial azimuth loop coordinate system points in the same direction as the z-axis of the initial pitch loop coordinate system, and the initial azimuth loop coordinate system rotates by an angle ψ around the z-axis of the initial pitch loop coordinate system.

[0029] Furthermore, the rotation matrices of the initial roll ring coordinate system relative to the body coordinate system are determined respectively. Rotation matrix of the initial pitch circle coordinate system relative to the initial roll circle coordinate system and the rotation matrix of the initial azimuth coordinate system relative to the initial pitch coordinate system Then, the three rotation matrices are multiplied by a dot product to obtain the final equation expression for the transformation matrix from the body coordinate system to the initial orientation ring coordinate system. Combined with the first acceleration, a system of equations is constructed and solved as follows: In the formula, Represents the final transformation matrix. Indicates the first acceleration. This represents the acceleration of the target electric wheelchair in the initial orientation loop coordinate system. a' represents the initial orientation loop coordinate system. Additionally... Finally, by solving this system of equations, the specific values ​​of y and θ can be obtained. That is, the actual roll angle and the actual pitch angle are obtained, where, All parameters are known, and g represents gravitational acceleration. This is existing technology and will not be elaborated further.

[0030] S103: Based on the body coordinate system, actual pitch angle, and actual roll angle corresponding to the target electric wheelchair, determine the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair.

[0031] Specifically, after determining the actual roll angle and actual pitch angle, the x-axis of the target electric wheelchair's body coordinate system is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated x-axis. Simultaneously, the z-axis of the body coordinate system is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated z-axis. Then, the y-axis of the body coordinate system is directly determined as the rotated y-axis. Finally, the coordinate system composed of the rotated x-axis, rotated y-axis, and rotated z-axis is determined as the roll ring coordinate system corresponding to the target electric wheelchair. The roll ring coordinate system is used to analyze the roll motion of the target electric wheelchair. The y-axis of the body coordinate system and the y-axis of the roll ring coordinate system point in the same direction. It should be noted that the rotation direction around the y-axis when obtaining the rotated z-axis is the same as the rotation direction around the y-axis when obtaining the rotated x-axis.

[0032] Furthermore, the z-axis of the roll ring coordinate system is rotated around the x-axis of the roll ring coordinate system by the actual pitch angle to obtain a new z-axis. Similarly, the y-axis of the roll ring coordinate system is rotated around the x-axis of the roll ring coordinate system by the actual pitch angle to obtain a new y-axis. The x-axis of the roll ring coordinate system is then directly defined as the new x-axis. Finally, the coordinate system composed of the new x-axis, new y-axis, and new z-axis is defined as the pitch ring coordinate system corresponding to the target electric wheelchair. The x-axis of the pitch ring coordinate system points in the same direction as the x-axis of the roll ring coordinate system. The pitch ring coordinate system is used to describe the pitch motion of the target electric wheelchair.

[0033] S104: Based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system, determine the second angular velocity of the target electric wheelchair's roll ring, and based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system, determine the third triangular velocity of the target electric wheelchair's pitch ring.

[0034] Specifically, in one feasible implementation, the first rotation matrix of the roll ring coordinate system relative to the body coordinate system is determined based on the actual roll angle, as follows: Where y represents the actual roll angle. Then, differentiating the actual roll angle yields the first angular velocity of rotation of the roll ring coordinate system relative to the body coordinate system, expressed as: Finally, the first rotation matrix, the first rotational angular velocity, and the first angular velocity are substituted into the preset roll ring angular velocity calculation formula to obtain the second angular velocity of the target electric wheelchair's roll ring, i.e., the angular velocity in the roll ring coordinate system. The roll ring angular velocity calculation formula is as follows: In the formula, Indicates the second angular velocity. Denotes the first rotation matrix. Indicates the first angular velocity. Let represent the first rotational angular velocity, r represent the roll ring coordinate system, and b represent the body coordinate system. Further, the detailed process of substituting the first rotation matrix, the first rotational angular velocity, and the first angular velocity is as follows: In addition It can be represented as: and then in, This represents the angular velocity of the target electric wheelchair about the x-axis of the roll ring coordinate system. Let represent the angular velocity of the target electric wheelchair about the y-axis of the roll ring coordinate system. This represents the angular velocity of the target electric wheelchair around the z-axis of the roll ring coordinate system.

[0035] After determining the second angular velocity of the roll ring of the target electric wheelchair, the third triangular velocity of the pitch ring of the target electric wheelchair is determined based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system. One feasible implementation method is as follows: Based on the actual pitch angle, the second rotation matrix of the pitch ring coordinate system relative to the roll ring coordinate system is determined, specifically as follows: Where θ represents the actual pitch angle. Next, the derivative of the actual pitch angle is calculated to obtain the second rotational angular velocity of the pitch ring coordinate system relative to the roll ring coordinate system. The second rotational angular velocity is expressed as: Finally, substituting the second rotation matrix, the second rotational angular velocity, and the second angular velocity into the preset pitch ring angular velocity calculation formula, we obtain the third triangular velocity of the target electric wheelchair's pitch ring, that is, the angular velocity of the target electric wheelchair in the pitch ring coordinate system. The pitch ring angular velocity calculation formula is as follows: In the formula, Indicates the third angular velocity. This represents the second rotation matrix. Indicates the second angular velocity. Let f represent the second rotational angular velocity, and let f represent the pitch ring coordinate system. Further, the detailed process of substituting the second rotation matrix, the second rotational angular velocity, and the second angular velocity is as follows: because It can be represented as: Therefore, the solution can be obtained. Let x represent the angular velocity of the target electric wheelchair about the x-axis of the pitch ring coordinate system. Let represent the angular velocity of the target electric wheelchair about the y-axis of the pitch ring coordinate system. This represents the angular velocity of the target electric wheelchair about the z-axis of the pitch ring coordinate system.

[0036] S105: Based on the third angular velocity and the pitch loop coordinate system, determine the target angular velocity of the directional yaw of the target electric wheelchair, and based on the target angular velocity, control the driving of the target electric wheelchair through the electric wheelchair controller.

[0037] Specifically, after determining the third angular velocity, since the actual azimuth angle of the target electric wheelchair during its movement is still unknown, the actual azimuth angle to be solved is set as an unknown variable ψ. Based on this ψ and the pitch loop coordinate system, an azimuth loop coordinate system corresponding to the target electric wheelchair is constructed. The specific construction process is as follows: the x-axis of the pitch loop coordinate system is rotated by an angle ψ around the z-axis of the pitch loop coordinate system, and the y-axis of the pitch loop coordinate system is rotated by an angle ψ around the z-axis of the pitch loop coordinate system. The resulting new coordinate system is determined as the azimuth loop coordinate system, and the z-axis of the azimuth loop coordinate system points in the same direction as the z-axis of the pitch loop coordinate system. The azimuth loop coordinate system is used to describe and analyze the orientation changes of the target electric wheelchair in the horizontal plane.

[0038] Furthermore, based on the unknown variable ψ, the first equation expression for the third rotational angular velocity of the azimuth loop coordinate system relative to the pitch loop coordinate system is determined, namely, Then, based on the actual azimuth angle to be solved, the second equation expression for the third rotation matrix of the azimuth ring coordinate system relative to the pitch ring coordinate system is constructed, that is, Next, substituting the expressions for the first equation, the second equation, and the third angular velocity into the preset azimuth loop angular velocity calculation formula, we obtain the fourth angular velocity of the target electric wheelchair's azimuth loop, that is, the angular velocity of the target electric wheelchair in the azimuth loop coordinate system. The azimuth loop angular velocity calculation formula is as follows: In the formula, This represents the fourth angular velocity of the target electric wheelchair's orientation loop. This represents the third rotation matrix. Indicates the third angular velocity. Let represent the third rotational angular velocity, and 'a' represent the azimuth ring coordinate system. Further, the detailed process of substituting the first equation, the second equation, and the third angular velocity is as follows: because This can be expressed as: This represents the angular velocity of the target electric wheelchair around the x-axis of the orientation loop coordinate system. This represents the angular velocity of the target electric wheelchair around the y-axis of the orientation loop coordinate system. Let represent the angular velocity of the target electric wheelchair around the z-axis of the azimuth coordinate system. Therefore, the third equation expression for the angular velocity of the target electric wheelchair around the z-axis of the azimuth coordinate system can be determined as follows:

[0039] Furthermore, to prevent the target electric wheelchair from veering off course and failing to travel in a straight line when traversing uneven surfaces, the angular velocity of the target electric wheelchair around the z-axis of the orientation loop coordinate system needs to be 0. Therefore, we have... Combined with third-party program expressions A system of objective equations can be constructed: In the formula, This represents the angular velocity about the z-axis of the azimuth ring coordinate system. Let denot represent the angular velocity about the z-axis of the pitch ring coordinate system in the third angular velocity, and ψ represent the actual azimuth angle to be solved. This represents the third rotational angular velocity. Further, according to step S104 above, Therefore, we can obtain Among them Since both the pitch angle θ and the actual pitch angle are known, the third rotational angular velocity can be obtained by solving the objective equations. The third rotational angular velocity is then determined as the target angular velocity for controlling the directional yaw of the target electric wheelchair. Furthermore, the electric wheelchair controller uses this target angular velocity to control the movement of the target electric wheelchair, ensuring that the angular velocity of the target electric wheelchair around the z-axis of the azimuth coordinate system is 0. This prevents the target electric wheelchair from veering off course when traversing uneven surfaces, thus avoiding its inability to travel in a straight line effectively.

[0040] The implementation principle of the automatic steering correction method in this application is as follows: Based on the first acceleration, the actual pitch angle and actual roll angle corresponding to the target electric wheelchair are determined, thereby determining the degree of left-right swaying and forward-backward pitching of the target electric wheelchair during driving. Then, based on the body coordinate system, a roll ring coordinate system and a pitch ring coordinate system describing the roll motion of the target electric wheelchair are determined. Next, based on the relationship between the body coordinate system, the roll ring coordinate system, and the pitch ring coordinate system, the first angular velocity in the body coordinate system is converted into the second angular velocity in the roll ring coordinate system, thereby determining the third angular velocity of the target electric wheelchair in the pitch ring coordinate system. Finally, combining the pitch ring coordinate system and the third angular velocity, the angle of the target electric wheelchair in the coordinate system describing the yaw motion of the target electric wheelchair is derived, thereby accurately determining the target angular velocity for controlling the yaw motion of the target electric wheelchair. Controlling the target electric wheelchair with this target angular velocity can effectively prevent the target electric wheelchair from yawing and improve the driving experience of the electric wheelchair to a certain extent.

[0041] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.

[0042] Please see Figure 3 This is a schematic diagram of the automatic driving correction device provided in an embodiment of this application. This automatic driving correction device can be implemented as all or part of the device through software, hardware, or a combination of both. The device includes a data acquisition module 11, an angle determination module 12, a coordinate system determination module 13, a speed determination module 14, and a driving correction module 15.

[0043] Data acquisition module 11 is used to acquire the first angular velocity and first acceleration of the target electric wheelchair body in motion; angle determination module 12 is used to determine the actual pitch angle and actual roll angle of the target electric wheelchair based on the first acceleration. The coordinate system determination module 13 is used to determine the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair based on the body coordinate system, actual pitch angle and actual roll angle corresponding to the target electric wheelchair. The velocity determination module 14 is used to determine the second angular velocity of the target electric wheelchair's roll ring based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system, and to determine the third angular velocity of the target electric wheelchair's pitch ring based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system. The driving correction module 15 is used to determine the target angular velocity of the directional yaw of the target electric wheelchair based on the third angular velocity and the pitch ring coordinate system, and to control the driving of the target electric wheelchair through the electric wheelchair controller based on the target angular velocity.

[0044] Optional, coordinate system determination module 13, specifically used for: The x-axis of the target electric wheelchair's body coordinate system is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated x-axis, and the z-axis of the body coordinate system is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated z-axis. The y-axis of the body coordinate system is determined as the rotated y-axis. Based on the rotated x-axis, rotated y-axis, and rotated z-axis, the roll ring coordinate system corresponding to the target electric wheelchair is determined. Rotate the z-axis of the roll ring coordinate system around the x-axis of the roll ring coordinate system by the actual pitch angle to obtain a new z-axis, and rotate the y-axis of the roll ring coordinate system around the x-axis of the roll ring coordinate system by the actual pitch angle to obtain a new y-axis. The x-axis of the roll ring coordinate system is defined as the new x-axis. Based on the new x-axis, the new y-axis, and the new z-axis, the pitch ring coordinate system corresponding to the target electric wheelchair is obtained.

[0045] Optional, speed determination module 14, specifically used for: Based on the actual roll angle, determine the first rotation matrix of the roll ring coordinate system relative to the body coordinate system, and based on the actual roll angle, determine the first rotational angular velocity of the roll ring coordinate system relative to the body coordinate system. Substituting the first rotation matrix, the first rotational angular velocity, and the first angular velocity into the preset roll ring angular velocity calculation formula, the second angular velocity of the target electric wheelchair's roll ring is obtained. The roll ring angular velocity calculation formula is as follows: In the formula, Indicates the second angular velocity. Denotes the first rotation matrix. Indicates the first angular velocity. denoted by ω, r represents the roll ring coordinate system, and b represents the body coordinate system.

[0046] Optional, speed determination module 14, specifically used for: Based on the actual pitch angle, determine the second rotation matrix of the pitch ring coordinate system relative to the roll ring coordinate system; Determine the second rotational angular velocity of the pitch ring coordinate system relative to the roll ring coordinate system based on the actual pitch angle; Substituting the second rotation matrix, the second rotational angular velocity, and the second angular velocity into the preset pitch ring angular velocity calculation formula, the third triangular velocity of the target electric wheelchair's pitch ring is obtained. The pitch ring angular velocity calculation formula is as follows: In the formula, Indicates the third angular velocity. This represents the second rotation matrix. Indicates the second angular velocity. denoted by , where f represents the second rotational angular velocity, and f represents the pitch ring coordinate system.

[0047] Optional, the driving correction module 15 is specifically used for: Based on the actual azimuth and pitch loop coordinate system of the target electric wheelchair, construct the azimuth loop coordinate system corresponding to the target electric wheelchair; Based on the actual azimuth angle to be solved, the first equation expression for the third rotational angular velocity of the azimuth loop coordinate system relative to the pitch loop coordinate system is determined; Based on the actual azimuth angle to be solved, the second equation expression of the third rotation matrix of the azimuth ring coordinate system relative to the pitch ring coordinate system is constructed; Substituting the expressions for the first equation, the second equation, and the third angular velocity into the preset formula for calculating the angular velocity of the azimuth ring, the fourth angular velocity of the target electric wheelchair's azimuth ring is obtained. Based on the fourth angular velocity, the third equation expression for the angular velocity around the z-axis of the azimuth ring coordinate system is obtained. Based on the third-party program expression, the target angular velocity of the controlled electric wheelchair's directional yaw is determined, wherein the formula for calculating the azimuth loop angular velocity is: In the formula, This represents the fourth angular velocity of the target electric wheelchair's orientation loop. This represents the third rotation matrix. Indicates the third angular velocity. denoted by 'a', which represents the third rotational angular velocity, and 'a' represents the azimuth ring coordinate system.

[0048] Optional, the driving correction module 15 is specifically used for: Based on the expression of the third-party program, determine the objective equation system; The third rotational angular velocity is obtained by solving the objective equations, and this third rotational angular velocity is determined as the target angular velocity for controlling the directional yaw of the target electric wheelchair. The objective equations are as follows: In the formula, This represents the angular velocity about the z-axis of the azimuth ring coordinate system. Let denot represent the angular velocity about the z-axis of the pitch ring coordinate system in the third angular velocity, and ψ represent the actual azimuth angle to be solved. This indicates the third rotational angular velocity.

[0049] Optional, angle determination module 12, specifically used for: Based on the actual pitch angle, actual roll angle, actual azimuth angle to be solved, and the body coordinate system of the target electric wheelchair, construct the initial roll loop coordinate system, initial pitch loop coordinate system, and initial azimuth loop coordinate system corresponding to the target electric wheelchair. Based on the initial roll ring coordinate system and the initial pitch ring coordinate system, determine the final equation expression of the final transformation matrix from the body coordinate system to the initial azimuth ring coordinate system. Based on the final equation expression and the first acceleration, construct a system of equations to solve. Based on solving the system of equations, the actual pitch angle and actual roll angle corresponding to the target electric wheelchair are determined. The system of equations is as follows: In the formula, Represents the final transformation matrix. Indicates the first acceleration. Let a' represent the acceleration of the target electric wheelchair in the initial orientation loop coordinate system, and let a' represent the initial orientation loop coordinate system.

[0050] It should be noted that the above embodiments of the automatic driving correction device, when executing the automatic driving correction method, are only illustrative examples of the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. Furthermore, the automatic driving correction device and the automatic driving correction method embodiments provided above belong to the same concept, and their implementation process is detailed in the method embodiments, which will not be repeated here.

[0051] This application also discloses a computer-readable storage medium, which stores a computer program, wherein when the computer program is executed by a processor, it implements a driving automatic correction method of the above embodiments.

[0052] The computer program can be stored in a computer-readable medium. The computer program includes computer program code, which can be in the form of source code, object code, executable file, or certain middleware. The computer-readable medium includes any entity or device capable of carrying computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the computer-readable medium includes, but is not limited to, the above-mentioned components.

[0053] The above-described automatic driving correction method is stored in the computer-readable storage medium and loaded and executed on the processor to facilitate the storage and application of the method.

[0054] This application also discloses an electronic device in which a computer program is stored in a computer-readable storage medium. When the computer program is loaded and executed by a processor, it implements the above-mentioned automatic driving correction method.

[0055] The electronic device can be a desktop computer, a laptop computer, or a cloud server, and includes, but is not limited to, a processor and a memory. For example, the electronic device may also include input / output devices, network access devices, and buses.

[0056] The processor can be a central processing unit (CPU). Of course, depending on the actual use, it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc., and this application does not limit it in this regard.

[0057] The memory can be an internal storage unit of an electronic device, such as a hard disk or RAM, or an external storage device, such as a plug-in hard disk, smart memory card (SMC), secure digital card (SD), or flash memory card (FC) equipped on the electronic device. Furthermore, the memory can be a combination of an internal storage unit and an external storage device of the electronic device. The memory is used to store computer programs and other programs and data required by the electronic device. The memory can also be used to temporarily store data that has been output or will be output. This application does not limit this.

[0058] In this electronic device, the automatic driving correction method of the above embodiment is stored in the memory of the electronic device and loaded and executed on the processor of the electronic device for convenient use.

[0059] The foregoing description is merely an exemplary embodiment of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described in this disclosure. The specification and embodiments are considered exemplary only, and the scope and spirit of this disclosure are defined by the claims.

Claims

1. A method for automatic lane correction during driving, characterized in that, The method includes: Obtain the first angular velocity and first acceleration of the target electric wheelchair body while it is in motion; Based on the first acceleration, determine the actual pitch angle and actual roll angle corresponding to the target electric wheelchair; Based on the body coordinate system corresponding to the target electric wheelchair, the actual pitch angle and the actual roll angle, determine the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair; Based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system, the second angular velocity of the roll ring of the target electric wheelchair is determined, and based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system, the third triangular velocity of the pitch ring of the target electric wheelchair is determined. Based on the third angular velocity and the pitch ring coordinate system, the target angular velocity for controlling the directional yaw of the target electric wheelchair is determined, and based on the target angular velocity, the electric wheelchair is driven by the electric wheelchair controller.

2. The automatic driving correction method according to claim 1, characterized in that, The determination of the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair based on the body coordinate system corresponding to the target electric wheelchair, the actual pitch angle, and the actual roll angle specifically includes: The x-axis of the body coordinate system corresponding to the target electric wheelchair is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated x-axis, and the z-axis of the body coordinate system is rotated around the y-axis of the body coordinate system by the actual roll angle to obtain the rotated z-axis. The y-axis of the body coordinate system is determined as the rotated y-axis. Based on the rotated x-axis, the rotated y-axis, and the rotated z-axis, the roll ring coordinate system corresponding to the target electric wheelchair is determined. The actual pitch angle is rotated around the x-axis of the roll ring coordinate system to obtain a new z-axis, and the actual pitch angle is rotated around the x-axis of the roll ring coordinate system to obtain a new y-axis. The x-axis of the roll ring coordinate system is determined as a new x-axis. Based on the new x-axis, the new y-axis, and the new z-axis, the pitch ring coordinate system corresponding to the target electric wheelchair is obtained.

3. The automatic driving correction method according to claim 1, characterized in that, The determination of the second angular velocity of the roll ring of the target electric wheelchair based on the first angular velocity, the actual roll angle, the body coordinate system, and the roll ring coordinate system specifically includes: Based on the actual roll angle, determine the first rotation matrix of the roll ring coordinate system relative to the body coordinate system, and based on the actual roll angle, determine the first rotational angular velocity of the roll ring coordinate system relative to the body coordinate system. Substituting the first rotation matrix, the first rotational angular velocity, and the first angular velocity into the preset roll ring angular velocity calculation formula, the second angular velocity of the target electric wheelchair's roll ring is obtained, wherein the roll ring angular velocity calculation formula is: In the formula, Indicates the second angular velocity. Denotes the first rotation matrix. Indicates the first angular velocity, denoted by ω, r represents the roll ring coordinate system, and b represents the body coordinate system.

4. The automatic driving correction method according to claim 1, characterized in that, The determination of the third triangular velocity of the pitch ring of the target electric wheelchair based on the second angular velocity, the actual pitch angle, the roll ring coordinate system, and the pitch ring coordinate system specifically includes: Based on the actual pitch angle, determine the second rotation matrix of the pitch ring coordinate system relative to the roll ring coordinate system; Based on the actual pitch angle, determine the second rotational angular velocity of the pitch ring coordinate system relative to the roll ring coordinate system; Substituting the second rotation matrix, the second rotational angular velocity, and the second angular velocity into the preset pitch ring angular velocity calculation formula, the third triangular velocity of the pitch ring of the target electric wheelchair is obtained, wherein the pitch ring angular velocity calculation formula is: In the formula, Indicates the third angular velocity. This represents the second rotation matrix. Indicates the second angular velocity. denoted by , where f represents the second rotational angular velocity, and f represents the pitch ring coordinate system.

5. The automatic driving correction method according to claim 1, characterized in that, The determination of the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third angular velocity and the pitch ring coordinate system specifically includes: Based on the actual azimuth angle to be solved for the target electric wheelchair and the pitch ring coordinate system, construct the azimuth ring coordinate system corresponding to the target electric wheelchair; Based on the actual azimuth angle to be solved, the first equation expression for the third rotational angular velocity of the azimuth loop coordinate system relative to the pitch loop coordinate system is determined; Based on the actual azimuth angle to be solved, construct the second equation expression for the third rotation matrix of the azimuth ring coordinate system relative to the pitch ring coordinate system; Substituting the first equation expression, the second equation expression, and the third angular velocity into the preset azimuth ring angular velocity calculation formula, the fourth angular velocity of the target electric wheelchair azimuth ring is obtained, and based on the fourth angular velocity, the third equation expression of the angular velocity around the z-axis of the azimuth ring coordinate system is obtained. Based on the aforementioned third-party expression, the target angular velocity for controlling the directional yaw of the target electric wheelchair is determined, wherein the formula for calculating the azimuth loop angular velocity is: In the formula, This represents the fourth angular velocity of the target electric wheelchair's orientation loop. Indicates the third rotation matrix. Indicates the third angular velocity. denoted by 'a', which represents the third rotational angular velocity, and 'a' represents the azimuth ring coordinate system.

6. The automatic driving correction method according to claim 5, characterized in that, The determination of the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third-party program expression specifically includes: Based on the aforementioned third-party expression, determine the target equation system; Solving the target equations yields the third rotational angular velocity, which is then determined as the target angular velocity for controlling the directional yaw of the target electric wheelchair. The target equations are as follows: In the formula, This represents the angular velocity about the z-axis of the azimuth ring coordinate system. Let denot represent the angular velocity about the z-axis of the pitch ring coordinate system in the third angular velocity, and ψ represent the actual azimuth angle to be solved. This indicates the third rotational angular velocity.

7. The automatic driving correction method according to claim 1, characterized in that, The determination of the actual pitch angle and actual roll angle of the target electric wheelchair based on the first acceleration specifically includes: Based on the actual pitch angle, actual roll angle, actual azimuth angle to be solved, and the body coordinate system of the target electric wheelchair, construct the initial roll loop coordinate system, initial pitch loop coordinate system, and initial azimuth loop coordinate system corresponding to the target electric wheelchair. Based on the initial roll ring coordinate system and the initial pitch ring coordinate system, determine the final equation expression of the final transformation matrix from the body coordinate system to the initial azimuth ring coordinate system, and construct a system of equations to solve based on the final equation expression and the first acceleration. Based on the solved equations, the actual pitch angle and actual roll angle of the target electric wheelchair are determined, wherein the solved equations are: In the formula, Represents the final transformation matrix. Indicates the first acceleration. Let a' represent the acceleration of the target electric wheelchair in the initial orientation loop coordinate system, and let a' represent the initial orientation loop coordinate system.

8. An automatic steering correction device, characterized in that, include: The data acquisition module (11) is used to acquire the first angular velocity and first acceleration of the target electric wheelchair body in motion; Angle determination module (12) is used to determine the actual pitch angle and actual roll angle of the target electric wheelchair based on the first acceleration; The coordinate system determination module (13) is used to determine the roll ring coordinate system and pitch ring coordinate system corresponding to the target electric wheelchair based on the body coordinate system corresponding to the target electric wheelchair, the actual pitch angle and the actual roll angle; The velocity determination module (14) is used to determine the second angular velocity of the roll ring of the target electric wheelchair based on the first angular velocity, the actual roll angle, the body coordinate system and the roll ring coordinate system, and to determine the third triangular velocity of the pitch ring of the target electric wheelchair based on the second angular velocity, the actual pitch angle, the roll ring coordinate system and the pitch ring coordinate system. The driving correction module (15) is used to determine the target angular velocity for controlling the directional yaw of the target electric wheelchair based on the third angular velocity and the pitch ring coordinate system, and to control the driving of the target electric wheelchair through the electric wheelchair controller based on the target angular velocity.

9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is loaded and executed by the processor, it implements the method of any one of claims 1-7.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and capable of running on the processor, characterized in that, When the processor loads and executes the computer program, it implements the method of any one of claims 1-7.