Autonomous machine and control method thereof
By expressing the pose as quaternion and using general transformation and mathematical addition operations, the transformation of autonomous machines between different coordinate systems is simplified, solving the problems of high complexity and error rate in existing technologies and achieving efficient and accurate coordinate system transformation.
Patent Information
- Application Number
- CN202080099595.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-04-27
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2040-04-27
AI Technical Summary
Existing technologies suffer from complexity and high error rates when transforming between different coordinate systems of autonomous machines, especially when using transformation matrices and dual quaternion methods.
A unified pose and transformation approach is adopted to simplify the transformation process between coordinate systems by expressing the pose as a quaternion and using general transformations and mathematical addition operations.
This achieves simplified and accurate coordinate system transformation in autonomous machines, reduces error rates, and improves computational efficiency and transformation reliability.
Smart Images

Figure CN115427909B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to an autonomous machine and a method for controlling the autonomous machine. The present application also relates to a computing system for controlling the actions of the autonomous machine. Background Art
[0002] Autonomous machines, such as robots and self-driving vehicles, operate across many coordinate systems. Tracking coordinate system and pose transformations within autonomous machines is critical for autonomous control, as the positions of two objects (such as the autonomous machine and a target it's approaching) can only be compared within the same coordinate system. Currently, transformation matrices are commonly used between different coordinate systems. However, due to the complexity of these transformation matrices, tracking coordinate system and pose transformations is a common pain point for developers. Furthermore, errors often occur when developers improperly apply transformation matrices.
[0003] Several methods for transforming between different coordinate systems have recently been proposed as an alternative to transformation matrices. For example, in "Dual Quaternions for Multi-Domain Autonomous Vehicle Platoon Control" (IEEE, June 13, 2017, pp. 723–730, XP033131723), Mas Ignacio et al. proposed a dual quaternion representation method for unmanned networked multi-robot systems. However, dual quaternions are very complex, resulting in low computational efficiency and prone to errors during coordinate transformation. In their article "Modal Motion of a Multi-Segment Continuous Arm Based on Dual Quaternions" (IEEE, May 26, 2015, pp. 1416-1422, XP033168590), and in their article "Dynamics and Control Modeling of Spacecraft-borne Robots Using Dual Quaternions" (IEEE, June 27, 2018, pp. 670-675, XP033387281), GODAGE ISURU S et al. also addressed the dual quaternion (DQ) kinematics of robotic arms. Therefore, their studies share similar flaws to MAS IGNACIO et al. Furthermore, in their article "Three-Dimensional Transformations Between Robots" (IEEE, April 1, 2010, pp. 226-243, XP011332974), TRAWNY N et al. proposed an algebraic method for three-dimensional transformations between robots to compute the relative translation and rotation between two robots. However, this algebraic method is also complicated and does not specify the order of position and orientation transformations. Summary of the Invention
[0004] This invention provides a simple and easy method for transforming the pose of an autonomous machine between coordinate systems by unifying its pose and transformation, rather than relying on transformation matrices or other recently proposed methods. Specifically, it discloses a computational system for manipulating pose transformations to control the motion of the autonomous machine. Thus, the kinematics of the autonomous machine are demonstrated for applications in robotic arms and pose estimation for autonomous vehicles.
[0005] As a first aspect, the present application discloses an autonomous machine comprising one or more movable parts, a representation unit, a transformation unit communicatively coupled to the representation unit, one or more drive mechanisms coupled to the movable parts, and the transformation unit for moving the movable parts.
[0006] Each component / object of the autonomous machine or each component / object in the environment has a pose (x, y, z; ψ, θ, φ) in a coordinate system (xoyz) having three axes (i.e., X, Y, and Z) and a coordinate origin (i.e., point o). The pose (x, y, z; ψ, θ, φ) is further divided into position (x, y, z) and orientation (ψ, θ, φ). The projections of the position (x, y, z) on the X-axis, Y-axis, and Z-axis are x, y, and z, respectively; while the orientation (ψ, θ, φ) represents the Euler angles ψ, θ, and φ around the Z-axis, Y-axis, and X-axis, respectively. The orientation can be expressed in other rotation orders, such as (φ, θ, ψ) expressed as the Euler angles of the φX-axis, θY-axis, and ψZ-axis, respectively. The orientation can be expressed in other forms. In some embodiments, the orientation is expressed as a unit vector (x u ,y u ,z u In other embodiments, the orientation is represented by other forms of Euler angles, such as a 3x3 rotation matrix or a quaternion.
[0007] In the representation unit, the pose (x, y, z; ψ, θ, φ) is represented as the pose (x, y, z; q w ,q x ,q y ,q z ). Therefore, the orientation (ψ,θ,φ) is represented by the orientation (q w ,q x ,q y ,q z ).
[0008] In the application of autonomous machines, the first pose (x1, y1 z1; ψ1, θ1, φ1) of an object in a coordinate system (xoyz) needs to be transformed into a second pose of another object in the same coordinate system (xoyz). The object may include a component of the autonomous machine (such as a sensor) or a component in the external environment of the autonomous machine (such as an obstacle). Similarly, the other object refers to a different object, which may include another component of the autonomous machine or another component in the external environment of the autonomous machine. Alternatively, the first pose of the object needs to be transformed into a new pose of the same object in the same coordinate system (xoyz) after moving. Similarly, the second pose or new pose (x2, y2, z2; ψ2, θ2, φ2) has a second position (x2, y2, z2) and a second orientation (ψ2, θ2, φ2). In the representation unit, the first pose (x1, y1, z1; ψ1, θ1, φ1) is also represented as the first pose (x1, y1, z1; q w1 ,q x1 ,q y1 ,q z1 ). In the representation unit, the second pose (x2, y2, z2; ψ2, θ2, φ2) is also represented as the second pose (x2, y2, z2; q2) represented in the quaternion. w2 ,q x2 ,q y2 ,q z2 ).
[0009] Conventionally, a series of translations and rotations are applied to the first pose in an arbitrary order through a series of matrix multiplication operations, which makes the transformation very complex and, therefore, may introduce errors in the transformation process.
[0010] To simplify the transformation process from the first pose (x1, y1, z1, ψ1, θ1, φ1) to the second pose (x2, y2, z2; ψ2, θ2, φ2), the transformation unit includes a general transformation, which defines (x i ,y i ,z i ,ψ i ,θ i ,φ i ) and is unified with the pose (x, y, z; ψ, θ, φ), so a simpler addition operation can be performed on the overall pose during the transformation to convert the pose from the first pose (x1, y1, z1; ψ1, θ1, φ1) to the second pose (x2, y2, z2; ψ2, θ2, φ2) instead of using matrix multiplication operations.
[0011] Due to the position (x, y, z) in the pose and the translation (x i ,y i ,z i) can be expressed as a vector (x, y, z), so the position (x, y, z) in the pose can be regarded as the translation (x i ,y i ,z i ), while the translation (x i ,y i ,z i ) can also be regarded as the position (x, y, z) in the pose. Therefore, in order to meet the mathematical addition requirements, the position (x, y, z) in the pose and the translation (x i ,y i ,z i ) to unify.
[0012] If the Euler angle orientation (ψ1, θ1, φ1) is expressed as a fixed order of the ZYX axes (yaw angle - pitch angle - roll angle), that is, rotating the first pose (x1, y1, z1, ψ1, θ1, φ1) and the coordinate system (xoyz) to obtain ψ around the Z axis i radians, and generate Z-axis rotation pose (x 1z ,y 1z ,z 1z ,ψ 1z ,θ 1z ,φ 1z ) and the Z-axis rotation coordinate system (x z -oy z -z z ); then rotate the Z-axis rotation pose (x 1z ,y 1z ,z 1z ψ 1z ,θ 1z ,φ 1z ) and the Z-axis rotation coordinate system (x z -oy z -z z ) to obtain theta around the new Y axis i radians, and generates a Y-axis rotation pose (x 1zy ,y 1zy ,z 1zy ,ψ 1zy ,θ 1zy ,φ 1zy ) and the Y-axis rotation coordinate system (x zy -oy zy -z zy ); Finally, rotate the Y-axis to rotate the pose (x 1zy ,y 1zy ,z 1zy ψ 1zy ,θ 1zy ,φ 1zy ) and the Y-axis rotation coordinate system (xzy -oy zy -Z zy ) to obtain φ around the new X axis i radians, thus completing the rotation (ψ i ,θ i ,φ i ), the rotation has the following characteristics, namely, it has an X-axis rotation posture (x 1zyx ,y 1zyx ,z 1zyx ,ψ 1zyx ,θ 1zyx ,φ 1zyx ) and the X-axis rotation coordinate system (x zyx -oy zyx -Z zyx ). However, all Z-axis rotations, Y-axis rotations, and X-axis rotations do not satisfy the mathematical addition requirement. Therefore, the first orientation (ψ1,θ1,φ1) is expressed by the quaternion expression (q w1 ,q x1 ,q y1 ,q z1 ) indicates that it is calculated based on the Euler angle. Similarly, the rotation (ψ i ,θ i ,φ i ) can also be expressed in quaternion expressions as the rotation represented (q wi ,q xi ,q yi ,q zi Since the mathematical addition can be defined as a traditional polymatrix on quaternions and is applicable to quaternion expressions, the orientation represented in the pose (q w ,q x ,q y ,q z ) and the rotation represented in the general transformation (q wi ,q xi ,q yi ,q zi ) to meet the mathematical addition requirements. Finally, the translation order in the general transformation (x i ,y i ,z i ) and the rotation (q wi ,q xi ,q yi ,q zi ) is defined as the rotation (q wi ,q xi ,q yi ,q zi ) in translation (x i ,y i ,z i). Therefore, the pose (x, y, z; q w ,q x ,q y ,q z ) and the general transformation (x i ,y i ,z i ,q wi ,q xi ,q yi ,q zi ) are unified to meet the requirements of mathematical addition.
[0013] In particular, the first pose (x1, y1, z1; ψ1, θ1, φ1) in the coordinate system (xoyz) is transformed into the second pose (x2, y2, z2; ψ2, θ2, φ2) in the coordinate system (xoyz), and the new pose (x i ,y i ,z i ψ i ,θ i ,φ i ) is added to the first pose (x1,y1,z1;ψ1,θ1,φ1), where the coordinate system (x'-o'-y'-z') is defined by the first pose (x1,y1,z1,ψ1,θ1,φ1). i ,y i ,z i ψ i ,θ i ,φ i ) is another representation of the second pose (x2, y2, z2; ψ2, θ2, φ2) in the coordinate system (x'-o'-y'-z'). i ,y i ,z i ψ i ,θ i ,φ i ) is also a general transformation from the first pose (x1, y1, z1; ψ1, θ1, φ1) in the coordinate system (xoyz) to the second pose (x2, y2, z2; ψ2, θ2, φ2) in the coordinate system (xoyz).
[0014] The driving mechanism is transformed according to the expression (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) moves the active part. As mentioned above, the active part is first used to translate (xi ,y i ,z i ) to translate the movable object, and then rotate it according to the indicated rotation (q wi ,q xi ,q yi ,q zi ) to rotate the movable object to complete the represented transformation (x i ,y i ,z i ,q wi ,q xi ,q yi ,q zi ).
[0015] The movable part optionally includes a mobile object employed in a coordinate system (xoyz); a robotic arm mounted on the mobile object, wherein the robotic arm is arranged in a robotic arm coordinate system (x'-o'-y'-z'). Depending on the specific application of the robotic arm, the robotic arm may have various end effectors to interact with its surrounding environment. The end effectors may include impact grippers that physically grasp the target by directly impacting it (such as claws or calipers), invasive grippers that physically penetrate the target surface (such as pins, pins, or needle strips), retractive grippers that are applied to the target surface by vacuum, magnetism, or electrostatic attraction, continuous grippers that require direct contact for adhesion (such as glue, surface tension, or freezing), or any combination of the above grippers. Because the mobile object and the robotic arm can only be compared in the same coordinate system, the coordinate system of the mobile object (xoyz) and the robotic arm coordinate system (x'-o'-y'-z') of the robotic arm should be convertible into each other. Existing transformation methods typically involve mathematical multiplication of transformation matrices, which is complex for developers and prone to errors. Instead, the mobile object and the manipulator are coupled to a representation unit for representing the coordinate system of the mobile object (xoyz) and the manipulator coordinate system of the manipulator (x'-o'-y'-z') as represented coordinate systems (x, y, z; q w ,q x ,q y ,q z ) and the manipulator coordinate system (x', y', z'; q' w ,q' x ,q' y ,q' z ). General transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi) is used to transform the coordinate system (xoyz) into the robot coordinate system (x'-o'-y'-z') by first transforming the coordinate system (xoyz) into the robot coordinate system (x'-o'-y'-z') according to the translation (x i ,y i ,z i ) translates the coordinate system represented by (xoyz), and then rotates (q w i,q xi ,q yi ,q zi ) represents the rotation of the coordinate system (xoyz). The translation represented by (x i ,y i ,z i ) represents the origin of the manipulator coordinate system (x'-o'-y'-z') in the coordinate system (xoyz); the rotation (q wi ,q xi ,q yi ,q zi ) represents the orientation of the X-axis of the robot coordinate system (x'-o'-y'-z') relative to the X-axis of the coordinate system (xoyz). Therefore, by converting the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) is mathematically added to the coordinate system represented by (x, y, z; q w ,qw,q x ,q y ,q z ) to obtain the represented robot coordinate system (x', y', z'; q' w ,q' x ,q' y ,q' z ).
[0016] Therefore, the pose in the expression represented by (such as the first pose represented by (x1, y1, z1; q w1 ,q x1 ,q y1 ,q z1 ) and the second pose represented by the second one (x2, y2, z2; q w2 ,q x2 ,q y2 ,q z2 )), the coordinates in the expression represented (such as the coordinate system represented by (x, y, z; q w ,q x ,q y ,q z) and the manipulator coordinate system (x', y', z'; q' w ,q' x ,q' y ,q' z )) and general transformations (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) are unified through mathematical addition, making the process of transforming poses or coordinate systems convenient and error-free. In particular, mathematical addition does not obey the commutative law, that is, A + B does not equal B + A, where A and B represent the represented pose, the represented coordinate system, a general transformation, or any combination thereof.
[0017] As is well known, the mathematical abstraction of a positive number is equal to the mathematical addition of negative numbers. Similarly, the mathematical abstraction of a represented pose, a represented coordinate system, a general transformation, or any combination thereof, is equal to the mathematical addition of the negative represented pose, the negative represented coordinate system, the negative general transformation, or any combination thereof.
[0018] The mobile object optionally includes an autonomous vehicle for automatically moving the robotic arm to a predetermined position. The autonomous vehicle may include a global navigation satellite system (GNSS) receiver for positioning the autonomous vehicle in a local tangent plane (LTP) coordinate system or a local vertical-local horizontal (LVLH) coordinate system, which may be a right-handed system or a left-handed coordinate system. Two commonly used right-handed coordinate systems are the North-East Celestial (ENU) coordinate system with coordinates (E, N, U) and the North-East Earth (NED) coordinate system with coordinates (N, E, D). The local tangent plane (LTP) coordinate system or the local vertical-local horizontal (LVLH) coordinate system can be converted into a geographic coordinate system, such as the Earth-Centered Earth Fixed (ECEF) coordinate system with coordinates (x, y, z), and the Earth-Centered Earth Fixed (ECEF) coordinate system with longitude λ. g ,latitude Height a g The geographic coordinate system is associated with the World Geodetic System (WGS), a standard for the Global Navigation Satellite System (GNSS). In other words, moving objects can be guided by satellite navigation based on the WGS standard, such as the Global Positioning System (GPS).
[0019] By general transformation and mathematical addition, longitude λg, latitude and height a g The GPS coordinates at can be converted to the pose in the local Northeastern Universe (ENU) coordinates more easily than the traditional matrix multiplication, which is only the pose and posture 0,0;π / 2,0,π / 2), where is the distance from the center of the Earth to sea level at latitude, That is, if the geodetic standard of the World Geodetic System 1984 (WGS 84) is used,
[0020]
[0021] For robotics applications, the manipulator includes multiple degrees of freedom to freely move the manipulator toward a target. For example, the manipulator optionally includes six degrees of freedom in six coordinate systems (x'1-o'1-y'1-z'1) to (x'6-o'6-y'6-z'6). In particular, the six degrees of freedom are represented as six coordinate systems (x'1-o'1-y'1-z'1) to (x'6-o'6-y'6-z'6) to six represented coordinate systems (x'1, y'1, z'1; q' w1 ,q' x1 ,q' y1 ,q' z1 ) to (x'6,y'6,z'6;q' w6 ,q' x6 ,q' y6 ,q' z6 ). At the same time, the general transformation (x i ,y i ,z i ,q wi ,q xi ,q yi ,q zi ) includes five general transformations (x' 12 ,y' 12 ,z' 12 ;q' w12 ,q' x12 ,q' y12 ,q' z12 ) to (x' 56 ,y' 56 ,z' 56 ;q' w56 ,q' x56 ,q' y56 ,q' z56 ), used to sequentially transform the six represented coordinate systems (x'1, y'1, z'1; q' w1 ,q' x1 ,q' y1 ,q' z1 ) to (x'6,y'6,z'6,q' w6 ,q' x6 ,q' y6 ,q' z6). Therefore, any two of the six coordinate systems (x'1-o'1-y'1-z'1) to (x'6-o'6-y'6-z'6) can be easily transformed into each other by applying the five general transformations (x' 12 ,y' 12 ,z' 12 ;q' w12 ,q' x12 ,q' y12 ,q' z12 ) to (x' 56 ,y' 56 ,z' 56 ;q' w56 ,q' x56 ,q' y56 ,q' z56 ) and related general transformations to perform mathematical addition operations.
[0022] The drive mechanism optionally includes an interpretation unit for interpreting the general transformation (xi, yi, zi; q wi ,q xi ,q yi ,q zi ), thereby guiding the autonomous vehicle to perform translational and rotational movements in the geographic coordinate system. As mentioned above, the geographic coordinate system is associated with the World Geodetic System (WGS), which is the standard of the Global Navigation Satellite System (GNSS); therefore, the autonomous vehicle can be guided by satellite navigation under the World Geodetic System (WGS) standard, such as the Global Positioning System (GPS).
[0023] As a second aspect, the present application discloses a computing system for controlling the action of the autonomous machine of the first aspect of the present application to reach a target. The computing system includes a memory for storing a series of instructions; a detection mechanism (such as a sensor) for detecting an initial position (x, y, z; ψ, θ, φ) of the autonomous machine in an initial coordinate system (xoyz) and a final position (x', y', z'; ψ', θ', φ') of the autonomous machine in a final coordinate system (x'-o'-y'-z'); one or more processors operably coupled to the memory and the detection mechanism; and a controller for activating the autonomous machine to move according to a general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi) is an activation mechanism for movement. The initial pose (x, y, z; ψ, θ, φ) includes the final position (x, y, z) and the initial orientation (ψ, θ, φ); and the final pose (x', y', z'; ψ', θ', φ') includes the final position (x', y', z') and the final orientation (ψ', θ', φ').
[0024] This process has several functions: First, it transforms the initial pose (x, y, z; ψ, θ, φ) into the initial transformation (x, y, z; q w ,q x ,q y ,q z ); Secondly, the process converts the final pose (x', y', z'; ψ', θ', φ') into the final transformation (x', y', z'; q') in the final coordinate system (x'-o'-y'-z') w ,q' x ,q' y ,q' z ); Finally, the processor performs the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) is used for planning, transforming the initial coordinate system (xoyz) to the final coordinate system (x'-o'-y'-z') so that the initial transformation (x, y, z; q w ,q x ,q y ,q z ) is changed to the final transformation (x',y',z';q' w ,q' x ,q' y ,q' z ). General transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) includes a translational movement that transforms an initial position (x, y, z) into a final position and a rotational movement that transforms an initial orientation (ψ, θ, φ) into a final orientation (ψ', θ', φ'), and wherein the translational movement is performed first and then the rotational movement is performed according to a series of instructions stored in a memory; in particular, the series of instructions includes only mathematical addition operations for calculating the translational movement and the rotational movement.
[0025] The autonomous machine optionally includes a base for providing an initial pose (x, y, z; ψ, θ, φ) in an initial coordinate system (xoyz); a robotic arm coupled to the base for reaching a final pose (x', y', z'; ψ', θ', φ') in a final coordinate system (x'-o'-y'-z'). The robotic arm is configured to transform the initial pose (x, y, z; ψ, θ, φ) in accordance with the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) performs translation and rotation in sequence to transform the initial coordinate system (xoyz) to the final coordinate system (x'-o'-y'-z'); at the same time, the initial transformation (x, y, z; q w ,q x ,q y ,q z ) is changed to the final transformation (x', y', z'; q' w ,q' x ,q' y ,q' z ).
[0026] The robotic arm optionally includes a manipulator for achieving any desired function of a target. The robotic arm may have six degrees of freedom to freely move the manipulator toward the target. In some embodiments, the robotic arm includes six motors for respectively activating the six degrees of freedom. In some embodiments, each of the six motors has six linear axes for independently rotating the robotic arm about the six axes.
[0027] The initial coordinate system (xoyz) and the final coordinate system (x'-o'-y'-z') are used to transform between the joint coordinate system and the Cartesian coordinate system. In the joint coordinate system, each degree of freedom has its own coordinate system (x i -o i -y i -z i ), with the origin of the coordinates located on its axes; each degree of freedom translates and rotates along its axes. For example, the first degree of freedom has the first coordinate system (x 1 -o 1 -y 1 -z 1 ), coordinate origin o 1 lies on the first axis; the first degree of freedom will rotate about the first axis. In particular, if the origin o 1 Located at the lower end of the first axis, the first coordinate system (x 1 -o 1 -y 1 -z 1) overlaps with the initial coordinate system (xoyz). If the coordinate origin o 6 Located at the upper end of the sixth axis, the sixth coordinate system (x 1 -o 1 -y 1 -z 1 ) overlaps with the final coordinate system (x'-o'-y'-z'). Instead, all six degrees of freedom share a single coordinate system (x s -o s -y s -z s ), and the single coordinate system (x s -o s -y s -z s ) is usually located at the lower end of the robotic arm coupled to the base. i -o i -y i -z i ) can be transformed by its general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) is converted to the initial coordinate system (x 1 -o 1 -y 1 -z 1 ), the initial coordinate system (xoyz) and the final coordinate system (x'-o'-y'-z) can be transformed by the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) Transform between joint coordinate system and Cartesian coordinate system
[0028] The robotic arm optionally also includes seven links coupling the base to the manipulator. In some embodiments, the links are rigid and cannot be extended or shortened, but the robotic arm still has six degrees of freedom, allowing it to flexibly reach targets anywhere within a certain range. In other embodiments, each link can be extended or shortened along its own axis to allow the robotic arm to translate upward or downward. For example, each link includes an inner shell and an outer shell that movably encloses the inner shell. When the inner shell moves out of the outer shell, the link extends; when the inner shell moves into the outer shell, the link shortens. This provides the robotic arm with greater flexibility and allows it to reach targets over a wider range of locations.
[0029] The autonomous machine may optionally include an autonomous vehicle, and the detection mechanism may optionally include at least one sensor mounted on top of the autonomous vehicle. The sensor is used to detect the target position, and the horizontal angle of the ray in the sensor coordinate system is ψ0, the vertical angle is θ0, and the distance is d0. Similarly, the coordinate system of the sensor can be transformed by the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) to another coordinate system, thereby expressing the target position in any other coordinate system.
[0030] The autonomous machine may also include a Global Navigation Satellite System (GNSS) receiver for providing autonomous geospatial positioning in a geographic coordinate system. For example, a sensor has longitude λ in a GNSS coordinate system. gs ,latitude and height a gs , the GPS coordinate system is then converted to any other coordinate system (such as the sensor's coordinate system) for use in comparing the position of the sensor and any other object (such as a sensor). A GNSS receiver can be mounted on an autonomous vehicle to move with the vehicle. For example, a GNSS receiver can be mounted on top of an autonomous vehicle. In particular, a GNSS receiver is used to locate the sensor away from the sensor to reduce errors in geospatial positioning.
[0031] The GNSS receiver may further include an active GNSS antenna and a slave GNSS antenna spaced apart from each other. ga ,latitude Height a ga The active GNSS antenna provides its position in the GPS coordinate system, while the slave GNSS antenna provides the orientation of the active GNSS antenna using the yaw angle ψ, pitch angle θ, and roll angle φ relative to the local North-East-Sky (ENU) coordinate system. Therefore, the GNSS receiver is precisely located in the GPS coordinate system. For example, the sensor is mounted on the front left corner of the roof of an autonomous vehicle, and the active GNSS antenna and the slave GNSS antenna are mounted on the rear right corner and the front right corner of the roof of the autonomous vehicle, respectively.
[0032] As a third aspect, the present application discloses a method for improving the efficiency of coordinate transformation so that an autonomous machine can automatically move toward a target. The method comprises: a first step of providing an initial pose (x, y, z; ψ, θ, φ) of the autonomous machine, wherein the initial pose comprises an initial position (x, y, z) and an initial orientation (ψ, θ, φ) in an initial coordinate system (xoyz); a second step of transforming the initial pose (x, y, z; ψ, θ, φ) into an initial transformation (x, y, z; q w ,q x ,q y ,q z ); thirdly, detecting the final pose (x', y', z'; ψ', θ', φ') to which the autonomous machine moves, wherein the final pose comprises a final position (x', y', z') and a final orientation (ψ', θ', φ') in a final coordinate system (x'-o'-y'-z'); fourthly, transforming the final pose (x', y', z'; ψ', θ', φ') into a final transformation (x', y', z'; q') in the final coordinate system (x'-o'-y'-z'). w ,q' x ,q' y ,q' z ); Step 5: Plan the general transformation (x) that transforms the initial coordinate system (xoyz) into the final coordinate system (x'-o'-y'-z') i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ), where the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) includes a translation movement that transforms the initial position (x, y, z) to the final position (x', y', z') and a rotation movement that transforms the initial orientation (ψ, θ, φ) to the final orientation (ψ', θ', φ'), and wherein the translation movement is performed first and then the rotation movement is performed; the sixth step is to activate the autonomous machine according to the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi) moves. In particular, the planning step consists only of calculating the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) is a mathematical addition operation of translational and rotational motion.
[0033] The method optionally includes the step of coupling the base and the robotic arm to the autonomous machine before providing the initial pose in the first step, and the initial pose (x, y, z; ψ, θ, φ) of the autonomous machine is used for the base.
[0034] The coupling step may further include the step of assembling seven links to a robotic arm, wherein a first link of the robotic arm is coupled to the base. The method may further include the step of coupling a manipulator at a distal end of the robotic arm opposite the base to reach a target distal to the base.
[0035] The method may also optionally include the step of mounting one or more sensors on top of an autonomous vehicle for use as an autonomous machine.
[0036] The method also optionally includes the step of mounting a Global Navigation Satellite System (GNSS) receiver on top of the autonomous vehicle to provide automatic geospatial positioning, wherein the GNSS receiver is used for positioning separately from the at least one sensor.
[0037] The step of installing the global navigation satellite system receiver may further include the steps of installing an active GNSS antenna on the right rear corner of the roof of the autonomous vehicle; and installing a slave GNSS antenna on the right front corner of the roof of the autonomous vehicle. The sensor is installed on the left front corner of the roof of the autonomous vehicle. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The accompanying drawings illustrate embodiments and serve to explain the principles of the disclosed embodiments. However, it should be understood that these drawings are only intended for illustrative purposes and are not intended to define the limits of the relevant application.
[0039] Figure 1 shows the mathematical addition of two poses in a two-dimensional coordinate system;
[0040] Figure 2 The unification of pose, coordinate system and general transformation in 2D configuration is shown;
[0041] Figure 3 shows the mathematical addition of two poses in a two-dimensional coordinate system;
[0042] Figure 4 Shown Figure 3 The inverse pose in the two-dimensional coordinate system of ;
[0043] Figure 5 shows the mathematical subtraction of two poses in a two-dimensional coordinate system;
[0044] Figure 6 Shown Figure 5 The distribution of two inverse poses in the coordinate system;
[0045] Figure 7 The application of kinematics in robotics is shown;
[0046] Figure 8 The additive chain of kinematics used by the robot is shown;
[0047] Figure 9 Applications for autonomous vehicles are shown;
[0048] Figure 10 The Northeast Celestial (ENU) coordinate system in the Earth-Centered Earth-Fixed (ECEF) coordinate system is shown;
[0049] Figure 11 An addition chain for an autonomous vehicle is shown.
[0050] Reference numerals:
[0051] 100-2D coordinate system; 102-1st pose (a); 104-2nd pose (b); 106-3rd pose (a+b); 108-Coordinate origin; 110-1st point; 112-2nd point; 114-3rd point; 116-1st position; 118-2nd position; 120-3rd position; 122-X axis; 124-Y axis; 126-1st angle; 128-2nd angle; 130-3rd angle; 132-1st orientation; 134-2nd orientation; 136-3rd orientation; 138-General transformation; 200-2D coordinate system; 202-pose; 204-Coordinate system; 206-General transformation; 208-Curve; 210-Arrow; 212-1st coordinate system; 214-Coordinate pose; 216-Coordinate origin; 218-Second coordinate system; 300-Two-dimensional coordinate system; 302-First pose; 304-Second pose; 306-Curve A; 308-Curve B; 312-Third pose; 314-Curve C; 320-Inverse pose; 322-Curve (-A); 324-Pose 0; 326-Coordinate origin; 328-Transformation 0; 400-Two-dimensional coordinate system; 402-First pose; 404-Second pose; 406-Curve A; 408-Curve B; 410-Third pose; 412-Curve C; 414-First inverse pose; 416-Second inverse pose; 418-Third inverse pose; 420-Curve D; 500-Robot; 502- Chassis; 504-manipulator; 506-first link; 508-second link; 510-third link; 512-fourth link; 514-fifth link; 516-sixth link; 518-seventh link; 520-control device; 522-first coordinate system; 524-second coordinate system; 526-first represented position; 528-second represented position; 530-third represented position; 532-fourth represented position; 534-fifth represented position; 536-sixth represented position; 538-seventh represented position; 544-position (P) represented by the control device; 600-autonomous driving vehicle; 602-target; 604-sensor; 606-main Active GNSS antenna; 608-Slave GNSS antenna; 610-Vehicle pose; 612-Vehicle coordinate system; 614-GNSS antenna pose; 616-GNSS antenna coordinate system; 618-Coordinate origin; 620-ENU coordinate system; 622-Sensor pose; 624-Sensor coordinate system; 626-Coordinate origin; 628-ECEF coordinate system; 630-Point P; 632-Earth center; 634-Earth; 700-Map; 701-Autonomous driving vehicle position; 702-Target position; 703-ECEF origin (Earth center); 704-ENU origin; 705-Active GNSS antenna orientation; 706-Active GNSS antenna position; 707-Sensor position. DETAILED DESCRIPTION
[0052] Figure 1 The mathematical addition of two poses, a first pose (a) 102 and a second pose (b) 104, in vector form (x, y, z) in a two-dimensional (2D) coordinate system 100 is shown. A third pose (a+b) 106, also in vector form, represents the mathematical addition of the first pose 102 and the second pose 104. The first pose 102 begins at the coordinate origin 108 of the coordinate system 100 and ends at a first point 110, while the second pose 106 begins at the first point 110 and ends at a second point 112. The second pose 106 can be repositioned so that it also begins at the coordinate origin 108 and ends at a third point 114. With respect to the coordinate origin 108, the first point 110 and the third point 114 represent a first position 116 of the first pose 102 and a second position 118 of the second pose 104, respectively, in the coordinate system 100. The third pose 106 begins at the coordinate 108 and ends at the second point 112. Similarly, the second position 112 represents a third position 120 of the third pose 106 relative to the coordinate origin 108 in the coordinate system 100. The coordinate system 100 also has an X-axis 122 and a Y-axis 124. The first pose 102, the second pose 104, and the third pose 106 have a first angle 126, a second angle 128, and a third angle 130 with the X-axis 122, which represent a first orientation 132, a second orientation 134, and a third orientation 136 of the first pose 102, the second pose 104, and the third pose 106 in the coordinate system 100, respectively.
[0053] The first orientation 132, the second orientation 134, and the third orientation 136 may be represented in other forms, such as Euler angles, rotation matrices, and quaternions. In a three-dimensional (3D) coordinate system, when a 3x3 rotation matrix and a quaternion (q w ,q x ,q y ,q z ), orientation can be expressed using Euler angles (ψ, θ, φ) in the order zyx (yaw angle - pitch angle - roll angle). For Euler angles (ψ, θ, φ), after a Z-axis rotation, ψ radians rotate around the Z axis, θ radians rotate around the new Y axis, and after a Y-axis rotation, φ radians rotate around the new X axis. Different forms can be converted to each other. For example, quaternion (q w ,q x ,q y ,q z ) form is obtained from the Euler angles (ψ,θ,φ) as follows:
[0054] (q w ,q x ,q y ,q z)=(cos(ψ / 2)cos(θ / 2)cos(φ / 2)+sin(ψ / 2)sin(θ / 2)sin(φ / 2),
[0055] cos(ψ / 2)cos(θ / 2)sin(φ / 2)-sin(ψ / 2)sin(θ / 2)cos(φ / 2),
[0056] sin(ψ / 2)cos(θ / 2)sin(φ / 2)+cos(ψ / 2)sin(θ / 2)cos(φ / 2),
[0057] sin(ψ / 2)cos(θ / 2)cos(φ / 2)-cos(ψ / 2)sin(θ / 2)sin(φ / 2))) Formula (1)
[0058] Where,
[0059] Therefore, the pose in the three-dimensional (3D) coordinate system is represented as (x, y, z; q w ,q x ,q y ,q z ), where (x,y,z) and (q w ,q x ,q y ,q z ) represent the position and rotation of the pose relative to the origin of the three-dimensional coordinate system.
[0060] Therefore, the first pose 102 is represented as (x a ,y a ,z a ;q wa ,q xa ,q ya ,q za ), the second pose 104 is represented by (x b ,y b ,z b ;q wb ,q xb ,q yb ,q zb ), and the third pose 106 is represented as (x c ,y c ,z c ;q wc ,q xc ,q yc ,q zc If the second pose 104 is considered as a general transformation 138, then by a ,y a ,z a ;qwa ,q xa ,q ya ,q za ) and general transformation 138(x b ,y b ,z b ;q wb ,q xb ,q yb ,q zb ) are mathematically added to transform the first pose 102 into the third pose 106, which is equal to the third pose 106 (x c ,y c ,z c ;q wc ,q xc ,q yc ,qz c ).
[0061] If the pose in the first coordinate system is regarded as its coordinate origin; then the first coordinate system can also be expressed as (x, y, z; q w ,q x ,q y ,q z ), where (x,y,z) and (q w ,q x ,q y ,q z ) indicates that the first coordinate system is in (x', y', z'; q' w ,q' x ,q' y ,q' z ) represents the position and rotation in the second coordinate system. Similarly, general transformations also use (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi ) in the form of the first coordinate system (x, y, z; q w ,q x ,q y ,qz) is transformed into the second coordinate system (x',y',z';q' w ,q' x ,q' y ,q' z ), which is done by transforming the general transformation (x i ,y i ,z i ;q wi ,q xi ,q yi ,q zi) and the first coordinate system (x, y, z; q w ,q x ,q y ,q z ) to perform mathematical addition.
[0062] Figure 2 The unification of pose 202, coordinate system 204 and general transformation 206 into two-dimensional coordinate system 200 is shown. Figure 1 compared to,
[0063] Pose 202 is not a vector, but rather is represented as a curve 208 with an arrow 210 relative to a first coordinate system 212, designated (xoy). Alternatively, curve 208 can be considered as pose 202 relative to a coordinate pose 214, which is the origin 216 (o) of first coordinate system 212. Curve 208 can also be considered as relative to a second coordinate system 218 (x'-o'-y') relative to first coordinate system 212 (xoy) or relative to coordinate pose 214 (o). Curve 208 can also be considered as a general transformation 206 used to transform first coordinate system 212 (xoy) into second coordinate system 218 (x'-o'-y'). Thus, pose 202, coordinate system 204 (either first coordinate system 212 or second coordinate system 218), and general transformation 206 are unified in a single expression for easy mathematical addition.
[0064] Figure 3 The mathematical addition of two poses (i.e., a first pose 302 and a second pose 304) in a two-dimensional coordinate system 300 (xoy) is shown. The first pose 302 and the second pose 304 are represented by curve A 306 and curve B 308, respectively. The mathematical addition (A+B) of the first pose 302 and the second pose 304 equals a third pose 312, which is represented by curve C 314 in the coordinate system 300 (xoy). The mathematical addition is calculated as follows:
[0065]
[0066] Where A is represented by (x, y, z; q w ,q x ,q y ,q z ), B is represented by (x', y', z'; q' w ,q' x ,q' y ,q' z ), C is similarly expressed as (x", y", z"; q" w ,q" x ,q" y ,q" z). Similarly, if curves A, B, and C represent three coordinate systems or three transformations, the above mathematical addition also applies to these coordinate systems or transformations. Compared to ordinary algebraic addition, the above mathematical addition does not conform to the commutative law, that is, A+B≠B+A in equation (2).
[0067] Figure 4 The inverse pose 320 of the first pose 302 represented by curve A 306 in the coordinate system 300 is shown. The inverse pose 320 is represented by curve (-A) 322, which forms a closed loop with curve A 306. The inverse pose 320 is calculated based on the first pose 302 as follows:
[0068]
[0069] Where A is represented by (x, y, z; q w ,q x ,q y ,q z ), (-A) is expressed as (x', y', z'; q' w ,q' x ,q' y ,q' z ). Therefore, by converting the first pose 302 into the inverse pose 320, the mathematical subtraction of the first pose 302 can be converted into a mathematical addition. If the pose O 324 is used to represent the special zero pose at the coordinate origin 326 of the coordinate system 310, the following equations can be derived from the closed loop: A+(-A)=O; (-A)+A=O; O+A=A, and A+O=A. The pose O 324 is expressed as (0,0,0; 1,0,0,0). Mathematical subtraction also applies to transformations; and, similarly, the special transformation O 328 is used to indicate that the transformation has no translation and rotation.
[0070] Figure 5 The mathematical subtraction of two poses (i.e., a first pose 402 and a second pose 404) in a two-dimensional coordinate system 400 is shown. The first pose 402 and the second pose 404 are represented by curve A 406 and curve B 408, respectively. A third pose 410 is equal to the mathematical addition of the first pose 402 and the second pose 404 and is represented by curve C. This mathematical addition is represented as C = A + B. Therefore, the first pose 410 is equal to the mathematical subtraction of the third pose 410 and the second pose 404, which is represented as A = CB; and the second pose 404 is equal to the mathematical subtraction of the third pose 410 and the first pose 402, which is represented in the coordinate system 400 as B = -A + C.
[0071] Figure 6The distribution of two inverse poses in the coordinate system 400 is shown, namely, a first inverse pose 414 opposite to the first pose 402 and a second inverse pose 416 opposite to the second pose 404. The third inverse pose 418 shown is also opposite to the third pose 410 represented by curve D. Therefore, the third inverse pose 418 is represented by D = -(A + B), and its distribution is D = -BA instead of D = -AB because:
[0072] -(A+B)+(A+B)=0
[0073] -(A+B)+A+B=O
[0074] -(A+B)+A=-B
[0075] -(A+B)=-BA≠-AB
[0076] Different expressions of pose, coordinate system or general transformation can be converted to each other. For example, the expression (x, y, z; q w ,q x ,q y ,q z ) can be converted into an expression (x, y, z; ψ, θ, φ) by the following conversion method:
[0077]
[0078] θ=sin -1 (2(q w q y -q x q z ))
[0079]
[0080] Formula (4)
[0081] Figure 7The application of kinematics to a robot 500 is shown; the robot 500 has a chassis 502 and a robotic arm 504 mounted on the chassis 502. The robotic arm 504 has seven links 506-518 coupled in sequence, i.e., a first link 506 coupled to the chassis 502, and other links 508-518 coupled in sequence. The robotic arm also includes a manipulator 520 coupled to the seventh link 518. The chassis 502 and the seven links 506-518 are all located in a first coordinate system (xoyz) 522; while the manipulator 520 is located in a second coordinate system (x'-o'-y'-z') 524. Specifically, the seven links 506-518 are thus expressed as seven postures in the first coordinate system (xoyz) 522, which have different heights and rotations along the Z-axis direction (except the seventh link 518): the first link 506 has a first height I1 and a first rotation α1 around the X-axis; the second link 508 has a second height I2 and a second rotation α2 around the Z-axis; the third link 510 has a third height I3 and a third rotation α3 around the Z-axis; the fourth link 512 has a fourth height I4 and a fourth rotation α4 around the X-axis; the fifth link 514 has a fifth height I5 and a fifth rotation α5 around the Z-axis; the third link 516 has a sixth height I6 and a sixth rotation α6 around the X-axis; the seventh link 518 has a seventh height I7, but the seventh link 518 cannot rotate.
[0082] Figure 8 0) 530 , a fourth represented pose (0,0,I4; α4,0,0) 532 , a fifth represented pose (0,0,I5; 0,0,α5) 534 , a sixth represented pose (0,0,I6; α6,0,0) 536 , and a seventh represented pose (0,0,I7; 0,0,0) 538 . The manipulator 520 has a pose (P) 544 represented by the manipulator, which can be conveniently calculated from the seven represented poses 526-538 according to the following equation:
[0083] P=(0,0,l1;α1,0,0)+(0,0,l2;0,0,α2)+(0,0,l3;0,0,α3)+(0,0,l4;α4,0,0)+
[0084] (0,0,l5;0,0,α5)+(0,0,l6;α6,0,0)+(0,0,l7;0,0,0)
[0085] Formula (5)
[0086] Meanwhile, regarding the first coordinate, the second coordinate system 524 of the manipulation device 520 can also be calculated according to the above formula.
[0087] Figure 9 6. The application of an autonomous vehicle 600 to automatically reach a target 602 is shown. The autonomous vehicle 600 has a sensor 604 mounted at a top left front position of the autonomous vehicle 600, an active GNSS antenna 606 mounted at a top right front position, and a slave GNSS antenna 608 mounted at a top right rear position. The autonomous vehicle 600 has a vehicle pose 610, which defines a vehicle coordinate system 612 (xoyz) centered horizontally on the autonomous vehicle 600 and perpendicular to the ground. Therefore, the active GNSS antenna 606 has a GNSS antenna pose 614, which defines a GNSS antenna coordinate system 616 (x'-o'-y'-z'), whose coordinate origin 618 is located at (x'-o'-y'-z') of the vehicle coordinate system 612 (xoyz). g ,y g ,h g ; 0,0,0). The slave GNSS antenna 608 is used together with the active GNSS antenna 606 to provide the orientation of the autonomous vehicle 600 in the North-East-Universe (ENU) coordinate system 620 (not shown). The sensor 604 has a sensor pose 622, which defines a sensor coordinate system 624 (x"-o"-y"-z"), the coordinate origin 626 of which is located at (x"-o"-y"-z) in the vehicle coordinate system 612 (xoyz). l ,y l ,h l ;π / 2,0,φ l ).
[0088] Figure 10 The East-North-Ultimate (ENU) coordinate system 620 is shown in the Earth-Centered Earth-Fixed (ECEF) coordinate system 628. For example, point P 630 has longitude λ, latitude and height a, then point P 630 has a pose relative to the center of the earth 632 in the ENU coordinate system 620 in, The distance from the sea level at the representative point P 630 to the center 632 of the earth 634 is calculated based on the latitude according to the geodetic standard of the World Geodetic System (eg, WGS84). It can be calculated.
[0089] Figure 11 An additive chain graph 700 of an autonomous vehicle 600 is shown. Coordinates of the autonomous vehicle 600, such as the center of the autonomous vehicle 600, are located at autonomous vehicle position 701. The graph 700 generally uses an ENU coordinate system, where an ENU origin 704 in the graph 700 is located at longitude λ in the ECEF coordinate system with an ECEF origin 703. m ,latitude and height a m Active GNSS antenna 606 provides a longitude λ g ,latitude and height a g and the slave GNSS antenna 605 is oriented at a yaw angle ψ relative to the ENU coordinate system. g , pitch angle θ g and roll angle φ g The sensor 604 at the sensor location 707 uses a horizontal angle ψ in the sensor coordinate system to provide the orientation 705 of the active GNSS antenna. o , the vertical angle is θ o and the distance d o The position of the target 702 is detected by the ray, and then the position of the target 702 in the map 700 is calculated as follows:
[0090] P o =P v +(x l ,y l , h l ;π / 2,0,φ l )+(0,0,0;ψ o ,θ o ,0)+(d o , 0, 0; 0, 0, 0) Formula (6)
[0091] Among them, the vehicle pose P in the map coordinates v as follows
[0092] Pv=P g -(x g ,y g ,h g ;0,0,0),
[0093] And the active GNSS antenna pose in the map coordinates is
[0094]
[0095] in, From the center of the earth to the latitude Distance to sea level.
[0096] In the present invention, certain embodiments may be disclosed in interval format. The description in interval format is for convenience and brevity only and should not be interpreted as a rigid limitation on the disclosed intervals. Accordingly, the description of an interval should be considered to have specifically disclosed all possible subintervals and the values within the interval. For example, the description of an interval (e.g., from 1 to 6) should be considered to have specifically disclosed subintervals (e.g., from 1 to 3, from 1 to 4, from 1 to 5, from 2 to 4, from 2 to 6, from 3 to 6, etc.) and individual numbers within the interval, such as 1, 2, 3, 4, 5, and 6. Regardless of the magnitude of the interval, this principle applies.
[0097] Obviously, after reading the above disclosure, various other modifications and adaptations of the present application will be obvious to those skilled in the art without departing from the spirit and scope of the application, and all such modifications and adaptations are within the scope of the appended claims.
Claims
1. An autonomous machine comprising: at least one connecting rod (506-518); a representation unit coupled to at least one of the connecting rods; a transformation unit communicatively coupled to the representation unit; At least one driving mechanism (α1-α6) is coupled to at least one of the connecting rods and the transformation unit, and is used to move at least one of the connecting rods (506-518); characterized in that at least one of the connecting rods (506-518) has a posture ( ) (526-538), the posture ( ) (526-538) is used to divide into position (x, y, z) and orientation ( ); and the posture ( ) (526-538) is a position expressed as a quaternion in the coordinate system (xoyz) (522) ( ); One of the connecting rods (506-518) includes Links (506-518) configured in the coordinate system (xoyz) (522); The robot arm (504) has seven connecting rods (506-518) coupled in sequence, wherein the robot arm (504) is arranged in a robot arm coordinate system ( (524) The connecting rods (506-518) and the robotic arm (504) are coupled to the representation unit for representing the coordinate system (xoyz) (522) and the robotic arm coordinate system ( )(524)are respectively expressed as the pose expressed in the form of quaternion ( ) and the robot arm pose expressed in quaternion form ( ); The transformation unit includes a general transformation, which includes a translation ( ) (138) and rotation ( ) (206), the coordinate system (xoyz) (522) is used for the general transformation ( ) is transformed into the robot arm coordinate system through the following steps ( )(524):First, according to the translation ( ) translates the coordinate system (xoyz) (522), and then rotates ( ) rotates the coordinate system (xoyz) (522), wherein both the translation process and the rotation process are performed by mathematical addition.
2. The autonomous machine according to claim 1, characterized in that: The links (506-518) include a first pose ( ) (526), and the first link (506) is used to move to a second pose ( )(528),wherein, the first posture ( )(526)and the second posture ( ) (528) The first position represented by the representation unit in the form of quaternion ( ) and the second pose represented by quaternion ( ).
3. The autonomous machine according to claim 1, characterized in that: The links (506-518) include a first pose ( ) (526) and the first link (506) having the second posture ( ) (528) of the second link (508), and the first posture of the first link (506) ( ) (526) is used to transform into the second posture ( )(528),wherein, the first posture ( )(526)and the second posture ( ) (528) The first position represented by the representation unit in the form of quaternion ( ) and the second pose expressed in quaternion form ( ).
4. Autonomous machine according to any one of the preceding claims, characterized in that: The general transformation ( ) is used to compare with the pose ( )(526-538), by combining the general transformation ( ) is expressed as a general transformation in quaternion form ( ) to conform to the posture ( ) (526-538) and the general transformation ( ) is the mathematical addition of .
5. The autonomous machine according to claim 4, characterized in that: The general transformation ( ) includes a translation ( ), wherein the translation ( ) is used to unify with the position (x, y, z) to satisfy the translation ( ) and the mathematical addition of the position (x,y,z).
6. The autonomous machine according to claim 5, characterized in that: The general transformation ( ) includes a method for transforming the orientation ( )'s rotation ( ), wherein the rotation ( ) is used to match the orientation ( ) is unified by the rotation ( ) is expressed as a rotation in quaternion form ( ) to match the rotation ( ) and the orientation ( ), where, in translation ( ) is completed and the quaternion form of rotation is performed ( ).
7. The autonomous machine according to claim 1, characterized in that: The links (506-518) include an autonomous vehicle (600) for automatically moving the robotic arm (504) to a predetermined position, wherein the autonomous vehicle includes a global navigation satellite system receiver (606, 608) for positioning the autonomous vehicle (600) according to a geographic coordinate system.
8. The autonomous machine according to claim 7, characterized in that: The robotic arm (504) includes six coordinate systems ( )to( ), wherein the six coordinate systems ( )to( ) are represented as six coordinate systems ( )to( ); The general transformation of the quaternion form ( ) includes five general transformations ( )to( ), used to transform the six coordinate systems represented in turn ( )to( ).
9. The autonomous machine according to claim 7, characterized in that: The driving mechanism (α1-α6) includes an interpretation unit for interpreting the general transformation of the quaternion form in the geographic coordinate system ( ), thereby directing the autonomous driving vehicle (600) to perform translation and rotation movements in the geographic coordinate system.
10. A computing system for controlling an autonomous machine to move to a target (602), characterized in that The computing system includes: a memory for storing a sequence of instructions; A detection mechanism for detecting the position and posture of the autonomous machine in the coordinate system (xoyz) (522) ( ) (526-538) and the autonomous machine in the final manipulator coordinate system ( ) (524) in the final pose ( )(538),wherein, the posture ( ) (526-538) including position (x, y, z) and orientation ( ), and the final pose ( ) (538) includes the final position (x', y', z') and the final orientation ( ); at least one processor operatively coupled to the memory and the detection mechanism, configured to: i. The posture ( ) is transformed into a pose expressed in quaternion form in the coordinate system (xoyz) (522) ( ); ii. The final pose ( ) (538) is transformed into the final robotic arm coordinate system ( )(524)The robot arm posture expressed in quaternion form ( ); iii. Plan to transform the coordinate system (xoyz) (522) into the final robot coordinate system ( )(524)General transformation expressed in quaternion form ( ), thereby converting the pose ( ) is changed to the manipulator pose expressed in quaternion form ( ), where the general transformation of the quaternion form ( ) includes a translation motion to transform the position (x, y, z) to the final position and a translation motion to transform the orientation ( ) is transformed to the final orientation ( ), and wherein the translation movement is performed first and then the rotation movement is performed according to a series of instructions stored in the memory; An activation mechanism for activating the autonomous machine and causing it to transform according to the general transformation represented by the quaternion form ( ) moving toward the target; The series of instructions include only general transformations for calculating the quaternion form representation ( ) of the translational motion and the rotational motion; Wherein, the autonomous machine includes: Provide the pose ( ) chassis (502) (526-538); A robotic arm (504) coupled to the chassis is used to position the autonomous machine in a final robotic arm coordinate system ( ) (524) to reach the final pose ( ) (538), wherein the manipulator (504) is transformed according to the general transformation represented by the quaternion form ( ) performs the translation movement and the rotation movement in sequence.
11. The computing system according to claim 10, wherein: The robotic arm (504) includes a manipulator (520), wherein the robotic arm (504) has six degrees of freedom to freely move the manipulator (520) toward the target (602).
12. The computing system according to claim 10, wherein: The coordinate system (xoyz) (522) and the final manipulator coordinate system ( ) (524) is used to transform between the joint coordinate system and the Cartesian coordinate system.
13. The computing system according to claim 11, wherein: The robotic arm (504) also includes seven links coupling the chassis (502) and the manipulation device (520).
14. The computing system according to claim 10, wherein: The autonomous machine comprises an autonomous vehicle (600), wherein the detection mechanism comprises at least one sensor (604) mounted on top of the autonomous vehicle (600).
15. The computing system according to claim 14, wherein: The autonomous machine also includes a global navigation satellite system receiver (606, 608) for providing automatic geospatial positioning, wherein the global navigation satellite system receiver (606, 608) is mounted on top of the autonomous vehicle (600) and remote from the sensor (604).
16. The computing system according to claim 15, wherein: The global navigation satellite system receiver (606, 608) further includes an active GNSS antenna (606) and a slave GNSS antenna (608) spaced apart from each other, wherein the sensor (604) is mounted on the left front corner of the top of the autonomous driving vehicle (600), and the active GNSS antenna (606) and the slave GNSS antenna (608) are mounted on the right rear corner and the right front corner of the top of the autonomous driving vehicle (600), respectively.
17. A method for improving the efficiency of posture transformation of an autonomous machine during automatic movement, characterized in that: This includes the following methods: coupling a chassis (502) and a robotic arm (504) to the autonomous machine; The first step is to provide the pose of the autonomous machine ( ) (526-538), wherein the posture of the autonomous machine is set according to the chassis (502) ( )(526), the pose ( ) (526-538) include the position (x, y, z) and orientation ( ); In the second step, the pose ( ) (526-538) is transformed into the quaternion form in the coordinate system (xoyz) (522) ( ); The third step is to detect the final pose to which the autonomous machine moves ( )(538),wherein, the final pose ( )(538)Including the robot arm coordinate system ( ) (524) in the final position ( ) and the final orientation ( ); The fourth step is to convert the final pose ( ) (538) is transformed into the final robotic arm coordinate system ( )(524)The robot arm posture expressed in quaternion form ( ); The fifth step is to plan and transform the coordinate system (xoyz) (522) into the final robot arm coordinate system ( )(524)General transformation of quaternion form ( ), where the general transformation of the quaternion form ( ) includes transforming the position (x, y, z) to the final position ) translational movement and the orientation ( ) is transformed to the final orientation ( ), and wherein the translational movement is performed first and then the rotational movement; The sixth step is to activate the autonomous machine according to the general transformation of the quaternion form ( )move, The planning step includes only the general transformation for calculating the quaternion form ( ) is a mathematical addition operation of the translational motion and the rotational motion.
18. The method according to claim 17, wherein: The coupling step further includes the step of assembling links (506-518) to the robotic arm (504), wherein a first link (506) of the robotic arm (504) is coupled to the chassis (502).
19. The method according to claim 18, further comprising: A distal end of the robotic arm (504) opposite the chassis (502) is coupled to a manipulation device (520).
20. The method of claim 17, further comprising: At least one sensor (604) is installed on the top of the autonomous vehicle (600) as the autonomous machine.
21. The method according to claim 20, further comprising: A global navigation satellite system receiver (606, 608) is mounted on top of the autonomous vehicle (600) to provide automatic geospatial positioning, wherein the global navigation satellite system receiver (606, 608) is remote from the sensor (604).
22. The method according to claim 21, characterized in that: The global navigation satellite system receiver (606, 608) further includes an active GNSS antenna (606) and a slave GNSS antenna (608) spaced apart from each other, and the step of installing the global navigation satellite system receiver (606, 608) further includes: An active GNSS antenna (606) is installed at the right rear corner of the top of the autonomous vehicle (600); A slave GNSS antenna (608) is installed at the right front corner of the top of the autonomous driving vehicle (600). Wherein, the at least one sensor (604) is mounted on the left front corner of the top of the autonomous driving vehicle (600).
Citation Information
Patent Citations
Composite component manipulator scanning pose quaternion converting method
CN104237380A
Work vehicle
JP2018087752A