Systems and methods for robotic knee joint assemblies
By designing knee components that imitate human knee joints, using the combination of connecting rod members and linear actuators, the problems of limited range of motion and high energy consumption in existing robot joint designs are solved, and large-scale rotation and power efficiency of the lower part of the robot leg are improved.
Patent Information
- Application Number
- CN202380077100.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-09-30
- Filing Date
- 2023-10-02
- Publication Date
- 2025-06-13
AI Technical Summary
The existing robot joint design limits the range of motion of adjacent components, increases energy consumption, and affects the overall reliability and efficiency of the robot.
A knee assembly that mimics human knee joint is designed, and the lower rotation range of the robot leg is achieved by a combination of the first link member and the second link member, driven by a single linear actuator, and the actuator is controlled by processing circuits to improve efficiency.
The lower part of the robot legs is rotated in a large range, while reducing power usage and improving the overall efficiency and reliability of the robot.
Smart Images

Figure CN120152903A_ABST
Abstract
Description
[0001] Cross - Reference to Related Applications
[0002] This application claims priority to U.S. Provisional Application No. 63 / 377,919, filed Sep. 30, 2022, and to U.S. Provisional Application No. 63 / 378,034, filed Sep. 30, 2022, both of which are incorporated by reference in their entireties for all purposes. Technical Field
[0003] The present disclosure generally relates to systems and methods for robotic joints. In particular, the present disclosure relates to systems and methods for robotic knee joints. Background Art
[0004] A robot can be viewed as a collection of links or joints that enable the robot to make desired movements. Each joint enables adjacent structures or elements to move relative to one another. The movement of the adjacent elements is driven by one or more actuators associated with the joint. A computer system controls the actuator(s) to achieve the desired movement(s).
[0005] The design of the joint defines the range of motion of the corresponding adjacent elements. In addition, the joint design affects the number and / or type(s) of actuators to be used and the efficiency of the actuator(s). Summary of the Invention
[0006] The reliability and efficiency of a robot depend largely on the joint design employed. A well-designed joint can increase the range of motion of adjacent elements and reduce the energy consumed by the robot. In the present disclosure, systems and methods for a knee joint assembly are described that are configured to mimic the human knee joint. In particular, the knee joint assembly described herein allows a range of rotation for the lower portion of a robot's leg that is similar to the range of rotation seen in humans. In addition, the knee joint assembly described herein can be driven by a single linear actuator and enables minimization or reduction of power usage, or maximization or improvement of efficiency, and still meet torque, speed, and range of motion.
[0007] According to at least one aspect, a system may include a knee joint assembly. The knee joint assembly may include: a first link member having a first end mechanically coupled to an upper portion of a leg of a robot and configured to rotate about a first pivot axis relative to the upper portion of the leg of the robot; a second link member having a first end mechanically coupled to a lower portion of the leg of the robot, the lower portion of the leg of the robot being mechanically coupled to the upper portion of the leg of the robot and configured to rotate about a second pivot axis relative to the upper portion of the robot, and a linear actuator device mechanically coupled to a second end of the first link member and a second end of the second link member, the linear actuator device causing the first link member to rotate about the first pivot axis relative to the upper portion of the leg of the robot and causing the lower portion of the leg of the robot to rotate about the second pivot axis relative to the upper portion of the leg of the robot when actuated.
[0008] The first link member may be configured to rotate about a third pivot axis relative to the linear actuator device, and the second link member may be configured to rotate about a fourth pivot axis relative to the linear actuator device. In some embodiments, the fourth pivot axis may be the same as the third pivot axis, and the third pivot axis may mechanically couple both the second end of the first link member and the second end of the second link member to the linear actuator device. In some embodiments, the fourth pivot axis may be different from the third pivot axis, the third pivot axis may mechanically couple the second end of the first link member to the linear actuator device, and the fourth pivot axis may mechanically couple the second end of the second link member to the second end of the first link member.
[0009] The lower portion of the leg of the robot may be configured to rotate about a third pivot axis relative to the second link member, the third pivot axis mechanically coupling the first end of the second link member to the lower portion of the leg of the robot.
[0010] The linear actuator device may include a moving structure mechanically coupled to the second end of the first link member and configured to cause the second end of the first link member to move according to a translational motion, the linear actuator device causing the first link member to rotate about the first pivot axis relative to the upper portion of the leg of the robot when actuated. The linear actuator device may include a servo motor configured to cause the moving structure to move according to a translational motion.
[0011] The range of rotation angle of the first link member may be about 60 degrees. In some embodiments, the range of rotation angle of the lower portion of the leg of the robot is about 150 degrees. In some embodiments, the second link member includes a force sensor. In some embodiments, the robot may be a humanoid robot.
[0012] The system may include a processing circuit that includes a memory and a processor and is configured to control a linear actuator device. The processing circuit may be configured to determine a desired orientation of a lower portion of a leg of a robot relative to an upper portion of the leg of the robot; use the desired orientation of the lower portion of the leg of the robot relative to the upper portion of the leg of the robot to determine a displacement of a moving structure of the linear actuator device; and send an instruction to the linear actuator device to cause the moving structure to move the determined displacement. In some embodiments, the processing circuit is configured to calculate the displacement of the moving structure using the orientation of the lower portion of the leg of the robot, the speed of the lower portion of the leg of the robot, and a desired torque.
[0013] According to at least one aspect, a method may include: determining, by a processing circuit, an orientation of a lower portion of a leg of a robot relative to an upper portion of the leg of the robot, the lower portion of the leg of the robot being mechanically coupled to the upper portion of the leg of the robot and configured to rotate about a first pivot relative to the upper portion of the robot; determining, by the processing circuit, a displacement of a moving structure of a linear actuator device using the orientation of the lower portion of the leg of the robot relative to the upper portion of the leg of the robot, the moving structure of the linear actuator device being mechanically coupled to a first end of a first link member and a first end of a second link member; sending an instruction to the linear actuator device to cause the moving structure to move the determined displacement; and causing, by the linear actuator device, the moving structure to move the determined displacement, resulting in rotation of the lower portion of the leg of the robot relative to the upper portion of the leg of the robot to reach a desired orientation. The first link member may have a second end mechanically coupled to the upper portion of the leg of the robot and may be configured to rotate about a second pivot relative to the upper portion of the leg of the robot. The second link member may have a second end mechanically coupled to the lower portion of the leg of the robot.
[0014] Determining the displacement of the moving structure may include calculating, in real time, the displacement of the moving structure using the instantaneous orientation of the lower portion of the leg of the robot, the speed of the lower portion of the leg of the robot, and a desired torque.
[0015] The first link member may be configured to rotate about a third pivot relative to the moving structure of the linear actuator device, and the second link member may be configured to rotate about a fourth pivot relative to the moving structure of the linear actuator device.
[0016] The fourth pivot may be the same as the third pivot, and the third pivot may mechanically couple both the second end of the first link member and the second end of the second link member to the linear actuator device; or the fourth pivot may be different from the third pivot, the third pivot may mechanically couple the second end of the first link member to the linear actuator device, and the fourth pivot may mechanically couple the second end of the second link member to the second end of the first link member.
[0017] The lower portion of the leg of the robot can be configured to rotate relative to the second link member about a third pivot axis that mechanically couples a first end of the second link member to the lower portion of the leg of the robot.
[0018] The range of rotation angle of the first link member can be about 60 degrees. In some embodiments, the range of rotation angle of the lower portion of the leg of the robot can be about 150 degrees. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Non-limiting embodiments of the present disclosure are described by way of examples with reference to the accompanying drawings, which are schematic and not intended to be drawn to scale. Unless indicated as representing the background art, the drawings represent aspects of the present disclosure.
[0020] Figure 1 A diagram illustrating an example humanoid robot that can integrate the systems and methods described herein according to one embodiment.
[0021] Figure 2 A diagram illustrating an analogy between the anatomy of the human knee joint and the high-level design of the knee joint for a robot according to one embodiment.
[0022] Figure 3A and Figure 3B Diagrams illustrating two views of the two legs of a humanoid robot according to one embodiment.
[0023] Figure 4 A diagram illustrating an example knee joint assembly of the humanoid robot of FIG. 3 according to one embodiment.
[0024] Figure 5 Illustrates a method for operating or controlling Figure 4 the knee joint assembly according to one embodiment.
[0025] Figure 6 A graph depicting simulation results showing different candidate designs (e.g., with different parameters) of a knee joint assembly according to one embodiment. DETAILED DESCRIPTION
[0026] Reference will now be made to the illustrative embodiments depicted in the accompanying drawings, and specific language will be used to describe these embodiments. However, it should be understood that this is not intended to limit the scope of the claims or the present disclosure. Variations and further modifications of the features of the invention illustrated herein, as well as additional applications of the principles of the subject matter illustrated herein, which would occur to those of ordinary skill in the relevant art and those having the present disclosure, will be considered to be within the scope of the subject matter disclosed herein. Other embodiments may be used and / or other changes may be made without departing from the spirit or scope of the present disclosure. The illustrative embodiments described in the detailed description are not intended to limit the subject matter presented.
[0027] A robot can be regarded as a collection of joints designed such that one or more linkages or elements adjacent each joint are capable of movement. The design, structure, and mechanism of the joints significantly affect the stability, reliability, and efficiency of the robot. For example, poorly designed joints can result in poor geometry, an increased number of actuators used, increased power consumption of the robot, and / or a limited range of motion of one or more components of the robot. In the present disclosure, a joint assembly designed or configured to mimic the human knee joint is described. In particular, the knee joint assembly described herein allows for a relatively wide range of rotation of the lower leg of the robot, such as approximately 150 degrees (e.g., between 140 degrees and 160 degrees). Such a range is similar to the range of rotation seen in humans. Additionally, the joint assembly described herein can be driven by a single linear actuator for increased efficiency. Specifically, while the range of rotation of the lower leg of the robot can be approximately or close to 150 degrees, the linear actuator is configured or constructed to cause rotation of a linkage having a smaller range of rotation (e.g., approximately 60 degrees). This means that a relatively large angle of rotation of the lower leg can be achieved with a relatively small movement of the linear actuator, which allows for a compact design of the knee joint.
[0028] Figure 1 FIG. is a diagram of an exemplary humanoid robot 100 that can incorporate the systems and methods described herein. The humanoid robot 100 can include an upper body 102, two arms 104, and two legs 106. The upper body 102 can include a controller 108 for controlling the robot 100. The controller 108 can include a processing circuit 110 and a communication interface 112. The processing circuit 110 can be communicatively coupled to the communication interface 112. The processing circuit 110 can include a processor 114 and a memory 116. The robot 100 can include a plurality of actuators 118 associated with a plurality of joints. The robot 100 can include one or more sensors for sensing parameters of the robot 100 or the surrounding environment of the robot 100. The robot 100 can include one or more cameras.
[0029] The processor 114 may be implemented as a single-chip or multi-chip processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic, discrete hardware component, or any combination thereof designed to perform the functions described herein. The processor 114 may be a microprocessor. The processor 114 may also be implemented as a combination of computing devices, such as a DSP and a microprocessor, multiple microprocessors, a combination of one or more microprocessors with a DSP core, or any other such configuration. In some embodiments, the controller 108 may include one or more processors 114.
[0030] The memory 116 (e.g., memory cells and / or storage devices) may include one or more devices (e.g., RAM, ROM, flash memory, hard disk storage) for storing data and / or computer code to perform or facilitate the various processes described in this disclosure. The memory 116 may be communicatively coupled to the processor 114 to provide the processor 114 with computer code or instructions for performing at least some of the processes described herein. Additionally, the memory 116 may be or include a tangible non-transitory volatile or non-volatile memory. For example, the memory 116 may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described herein.
[0031] The communication interface 112 may include any combination of wired and / or wireless interfaces (e.g., jacks, antennas, transmitters, receivers, transceivers, terminals) for communicating data with various systems or devices of the robot 100. For example, the communication interface 112 may enable communication between the processing circuit 110 (or processor 114) integrated into the robot 100 and the actuators 118, sensors, or cameras. In some embodiments, the communication interface 112 may enable communication with remote systems or devices.
[0032] The processing circuit 110 or processor 114 may be configured to control the joints of the robot 100. The processing circuit 110 or processor 114 may control the joints or the movement associated with the joints by controlling the corresponding actuator(s) 118. In particular, each joint may include or may be associated with one or more actuators 118 configured to drive the movement of the robot components or elements connected via the joint. As discussed further below in detail, the processing circuit 110 or processor 114 may send instructions to the actuator(s) 118 to cause or trigger precise movement of one or more elements or components of the robot 100. The processing circuit 110 or processor 114 may control multiple joints simultaneously to achieve coordinated movement of the robot 100.
[0033] The processing circuit 110 or the processor 114 may receive data from sensors and / or cameras integrated in the robot 100, and make decisions based on the received data, such as which elements of the robot 100 are to be moved and how to move them. For example, the data received from the sensors and / or cameras may indicate an obstacle in the path of the robot 100. The processing circuit 110 or the processor 114 may decide to modify the path and determine the movement of one or more limbs or components of the robot 100 based on the modified path. In some embodiments, the processing circuit 110 or the processor 114 may receive data indicating a task to be performed by the robot 100 from a remote device or system, and determine the movement sequence of the limbs or components of the robot 100 to perform the task.
[0034] Although Figure 1 a controller integrated into the chest or upper body of the robot 100 is shown, generally, the controller 108 may be placed or integrated into other areas or parts of the robot 100. For example, the robot 100 may include a head, and the controller 108 may be integrated into or on the head. In some embodiments, the controller 108 may be placed in the back, in or on the lumbar region of the robot 100, and / or in or on one of the limbs.
[0035] Figure 2 FIG. 200A-C illustrates diagrams depicting an analogy between the anatomy of the human knee joint and an advanced design of a knee joint for a robot. In FIG. 200A, a side view of the knee anatomy is shown with arrows 202-204 depicting some of the forces applied within the knee joint. For example, arrow 202 may be considered to represent the force applied by the quadriceps or quadriceps tendon on the patella. Arrow 204 may be considered to represent the force applied by the patellar ligament on the patella. Arrow 206 may be considered to represent the force applied by the patella on the femur or the articular cartilage covering the femoral end. These forces drive the movement of the knee joint and maintain the structure and geometry of the knee joint. Other relevant forces include the forces between the femur and the tibia along the anterior cruciate ligament (ACL) and the posterior cruciate ligament (PCL), respectively.
[0036] FIG. 200B shows a similar mechanical system corresponding to the biological knee joint of FIG. 200A. The similar mechanical system may be considered a four-point or four-node mechanical system. In other words, the mechanical system may include four points or nodes 208-214 representing points of force. Point or node 208 may be considered to correspond to the patella. Point or node 210 may be considered to correspond to the connection between the patellar ligament and the tibia. Point or node 212 may be considered to correspond to the connection between the femur and the tibia, such as via the ACL and / or the PCL. Point or node 214 may be considered to represent or correspond to a point force of the force applied by the patella on the femur.
[0037] In a similar mechanical system, four points or nodes 208 - 214 may be interconnected or coupled via four linkages or linkage members. Linkage 216 may couple or connect points 208 and 210. Linkage 218 may couple or connect points 210 and 212. Linkage 220 may couple or connect points 212 and 214. Linkage 222 may couple or connect points 214 and 208.
[0038] FIG. 200C shows an example design of a knee joint assembly of a robot for a similar mechanical system based on FIG. 200B. The design of the knee joint assembly may include four connection points 224 - 230 corresponding respectively to points or nodes 208 - 214 of the similar mechanical system. The design may include a mechanical linkage or linkage member 232 corresponding to linkage 216 of the similar mechanical system of FIG. 200B, a mechanical linkage or linkage member 234 corresponding to linkage 220, and a mechanical linkage or linkage member 236 corresponding to linkage 222. Connection points 226 and 228 may be disposed or implemented in a structure or component representing a lower portion of the leg of the robot.
[0039] Figure 3A A perspective view of two legs of a humanoid robot 300 according to one embodiment is illustrated. The two legs of the humanoid robot 300 are in an upright position. Each leg may include an upper portion 302, a lower portion 304, and a knee joint assembly 306. The housing or shell of the upper portion 302 is removed from the left leg to expose internal components. Figure 3B Another view of a leg of the humanoid robot 300 with a lower portion in a different position according to one embodiment is illustrated.
[0040] The upper portion 302 corresponds to the thigh and may be referred to herein as the upper leg, thigh portion, or upper limb of the robot. The lower portion 304 corresponds to the portion between the knee and ankle of the leg and may be referred to herein as the lower limb or lower leg. The knee joint assembly 306 may include linkages (or linkage members) and / or other components configured or constructed to cause the lower portion 304 to move relative to the upper portion 302. The knee joint assembly 306 and corresponding components and mechanisms will be discussed in further detail below with respect to Figures 4 to 5 Further detailed discussion.
[0041] Figure 4Illustrated is an example of the knee joint assembly 400 of the humanoid robot 300 of FIG. 3 according to one embodiment. The knee joint assembly 400 can be used in or integrated into a humanoid robot, such as robots 100 and 300 or other types of robots. Although referred to herein as a knee joint assembly, the joint assembly 400 can be used for other types of joints, such as not necessarily the knee joint. The knee joint assembly 400 can include a first link member 402 and a second link member 404. The knee joint assembly 400 can include or be associated with a corresponding linear actuator device 406.
[0042] The first link member 402 can have a first end 408 and a second (or opposite) end 410. The first end 408 of the first link member 402 can be mechanically coupled to the upper portion 302 of the leg of the robot 300. The first link member 402 can be configured or constructed to rotate about a first pivot 412 relative to the upper portion 302 of the leg of the robot 300. The second link member 404 can have a first end 414 and a second (or opposite) end 416. The first end 414 of the second link member 404 can be mechanically coupled to the lower portion 304 of the leg of the robot 300. The lower portion 304 of the leg of the robot 300 can be mechanically coupled to the upper portion 302 of the leg of the robot 304. The lower portion 304 of the leg of the robot 300 can be configured or constructed to rotate about a second pivot 418 relative to the upper portion 302 of the leg of the robot 300.
[0043] The linear actuator device 406 can be mechanically coupled to the second end 408 of the first link member 402 and mechanically coupled to the second end 416 of the second link member 404. When actuated, the linear actuator device 406 can cause the first link member 402 to rotate about the first pivot 412 relative to the upper portion 402 of the leg of the robot 300. Specifically, when actuated, the linear actuator device 406 can apply a force on the second end 408 of the first link member 402, causing the first link member 402 to rotate about the first pivot 412 relative to the upper portion 402 of the leg of the robot 300. When actuated, the linear actuator device 406 also causes the lower portion 302 of the leg of the robot 300 to rotate about the second pivot 418 relative to the upper portion 402 of the leg of the robot 300. Specifically, when actuated, the linear actuator device 406 can apply a force on the lower portion 302 via the second link member 404, causing the lower portion 302 of the leg of the robot 300 to rotate about the second pivot 418 relative to the upper portion 402 of the leg of the robot 300.
[0044] The linear actuator device 406 can be mechanically coupled to the first link member 402 and the second link member 404 in various ways. For example, the first link member 402 can be configured to rotate about a third pivot 420a relative to the linear actuator device 406, and the second link member 404 can be configured to rotate about a fourth pivot 420b relative to the linear actuator device 406. As Figure 4 shown, the third pivot 420a can be different from the fourth pivot 420b. The third pivot 420a can mechanically couple the second end 408 of the first link member 402 to the linear actuator device 406, and the fourth pivot 420b can mechanically couple the second end 416 of the second link member 404 to the second end 410 of the first link member 402. In other words, the linear actuator device 406 can be directly coupled to the first link member 402 but is mechanically coupled to the second link member 404 via the first link member 402.
[0045] In some embodiments, the pivots 420a and 420b can be the same pivot that mechanically couples both the second end 410 of the first link member 402 and the second end 416 of the second link member 404 to the linear actuator device 406. In other words, the second end 410 of the first link member 402 can include a single pivot that mechanically couples the linear actuator device 406, the first link member 402, and the second link member 404.
[0046] In some embodiments, the lower portion 304 of the leg of the robot 300 can be configured to rotate about a pivot 422 relative to the second link member 404. The pivot 422 can mechanically couple the first end 414 of the second link member 404 to the lower portion 402 of the leg of the robot 300. The ability of the lower portion 304 of the leg of the robot 300 to rotate about the pivot 422 and relative to the second link member 404 implies flexibility in the angle between the lower portion 304 of the leg of the robot 300 and the second link member 404.
[0047] The linear actuator device 406 can include a moving structure 424, such as a rod or a shaft. The moving structure 424 can be mechanically coupled to the second end 410 of the first link member 402. When the linear actuator device 406 is actuated, the moving structure 424 moves according to a translational motion and applies some force on the second end 410 of the first link member 402, causing the second end 410 of the first link member 402 to move, for example, according to a translational motion. The movement of the second end 410 causes the first link member 402 to rotate about the first pivot 412 relative to the upper portion 302 of the leg of the robot 300.
[0048] The linear actuator device 406 may include a servo motor configured to cause a moving structure 424 to move according to a translational motion. The servo motor may allow for precise displacement or displacement increments of the moving structure 424 of the linear actuator device 406. Each displacement increment may correspond to an angular increment between an upper portion 302 and a lower portion 304 of a leg of the robot 300.
[0049] When Figure 4 the knee joint assembly 400 of Figure 2 is compared with Figure 2 a similar mechanical system and joint design of Figure 2 the pivot points 420a and 420b may be regarded as corresponding to Figure 2 the points 208 and connection point 224 of Figure 2 The pivot point 422 may be regarded as corresponding to Figure 2 the point 210 or connection point 226 of
[0050] The knee joint assembly 400 enables or allows the use of a relatively simple and relatively small actuator, such as the linear actuator 406. In other words, the design of the knee joint assembly 400 allows the linear motion generated by the linear actuator device 406 to be converted into a rotational motion of the lower portion 304 of the leg of the robot 300 relative to the upper portion 302. The lower portion 304 of the leg of the robot 300 may have a rotational angle range of approximately 180 degrees. For example, the robot 300 may bend or move the lower portion 304 of the leg backward until an angle of 180 degrees or an angle close to but less than 180 degrees, such as 175 degrees or 170 degrees.
[0051] The knee joint assembly 400 enables the lower portion 304 to perform such a large range of rotational motion without adverse geometry and with relatively high efficiency. For example, when the rotational angle range of the lower portion 304 of the leg is approximately 180 degrees, the corresponding rotational angle range of the first link member 402 on which the linear actuator device 406 applies a force may be approximately 60 degrees (e.g., between 50 degrees and 70 degrees or between 45 degrees and 75 degrees). In other words, to rotate the lower portion 302 by approximately 180 degrees, the linear actuator device 406 may push or apply a force on the second end 410 of the first link member 402 to cause the first link member 402 to rotate only approximately 60 degrees about the pivot point 412. This means that the moving structure 424 of the linear actuator device 406 is moved a relatively small distance or displacement in the linear motion.
[0052] In some embodiments, the second link member 404 may include, for example, a force sensor 426 to measure the force on the second link member 404. The force sensor 426 may be communicatively coupled to the controller 108 or the processing circuitry 410. In some embodiments, the first link member 402 may be mechanically coupled to the structure 428 of the upper portion 402 via a pivot 412. It may be a humanoid robot. The linear actuator device 406 may be mounted or integrated in the upper portion 402 of the leg of the robot 300.
[0053] The controller 108 or the processing circuitry 110 may control the linear actuator device 406. For example, the processing circuitry 110 or the processor 114 may specify the displacement or amount of movement of the moving structure 424 at any given time. The mechanism for operating the knee joint assembly 400 will be described in more detail below with respect to Figure 5 More detailed description.
[0054] Figure 5 Illustrated is a flowchart 500 depicting a method for operating or controlling Figure 4 the knee joint assembly 400 according to one embodiment. Briefly summarized, the method 500 may include determining a desired orientation of the lower portion 304 of the robot leg relative to the upper portion 302 of the robot leg (step 502), and determining the displacement of the moving structure 424 of the linear actuator device 406 using the desired orientation (step 504). The method 500 may include sending or transmitting an instruction to the linear actuator device 406 to cause the moving structure to move the determined displacement (step 506), and causing the moving structure 424 to move the determined displacement by the linear actuator device 406, resulting in the lower portion 304 of the robot leg rotating relative to the upper portion 302 of the robot leg to reach the desired orientation (step 508).
[0055] The method 500 may be implemented or executed by the processing circuitry 110 or the processor 114 in conjunction with the linear actuator device 406. The processing circuitry 110 or the processor 114 may execute, for example, computer code instructions stored in the memory 116 to implement steps 502 - 506 of the method 500.
[0056] Method 500 may include a processing circuit 110 or a processor 114 determining a desired orientation of a lower portion 304 of a robotic leg relative to an upper portion of the robotic leg (step 502). In particular, the processing circuit 110 or the processor 114 may determine a desired angle between the lower portion 304 of the robotic leg and the upper portion 302 of the robotic leg. The processing circuit 110 or the processor 114 may determine the desired angle or orientation based on or as part of a desired task to be performed by the robot (such as walking, jumping, kicking a ball, etc.). The processing circuit 110 or the processor 114 may break down the task into a series of movements to be performed over a period of time. In some embodiments, the processing circuit 110 or the processor 114 may determine an instantaneous position or orientation of the lower portion 304 of the robotic leg relative to the upper portion of the robotic leg, the speed of the lower portion 304 of the robotic leg, and a desired torque. The processing circuit 110 or the processor 114 may use a function that maps actuator force to joint torque and / or a function from a link force sensor to joint torque.
[0057] Method 500 may include a processing circuit 110 or a processor 114 using the desired orientation to determine a displacement of a moving structure 424 of a linear actuator device 406 (step 504). Given the geometry and design of the knee joint assembly 400, each angle between the lower portion 304 of the robotic leg and the upper portion 302 of the robotic leg corresponds to or maps to a corresponding position of the moving structure 424 (or a corresponding state of the linear actuator device 406). In other words, when the moving structure 424 is in a corresponding specific displacement or position, the lower portion 304 of the robotic leg is positioned or oriented at a given angle relative to the upper portion 302. The processing circuit 110 or the processor 114 may maintain, for example, in a memory 116, a data structure storing a mapping or association between various values of the angle between the lower portion 304 of the robotic leg and the upper portion 302 of the robotic leg and the corresponding position or displacement values of the moving structure 424 (or the corresponding state of the linear actuator device 406). The processing circuit 110 or the processor 114 may use the data structure and the desired orientation or angle of the lower portion 302 of the robotic leg to determine the desired position or displacement of the moving structure 424.
[0058] In some embodiments, the processing circuit 110 or the processor 114 may calculate the desired position or displacement of the moving structure 424 in real time, for example, using a closed - form expression or formula for force, torque, and / or velocity. The processing circuit 110 or the processor 114 may use the instantaneous position of the lower portion 304 of the robotic leg (such as the angle between the lower portion 304 and the upper portion 302 of the robotic leg), the speed of the lower portion 304, and / or the desired torque to determine the position or displacement of the moving structure 424 in real time.
[0059] In some embodiments, processing circuitry 110 or processor 114 may track the current angle between the lower portion 304 of the robotic leg and the upper portion of the robotic leg, as well as the current state of the linear actuator device 406 or the current position of the moving structure 424. The processing circuitry 110 or processor 114 may use a data structure, the desired and current orientation of the lower portion, and the current position of the moving structure 424 to determine an additional displacement or movement to be made by the moving structure 424.
[0060] Method 500 may include the processing circuitry 110 or processor 114 sending or transmitting instructions to the linear actuator device 406 to cause the moving structure to move the determined displacement (step 506), and the linear actuator device 406 causing the moving structure 424 to move the determined displacement, resulting in rotation of the lower portion 304 of the robotic leg relative to the upper portion 302 of the robotic leg to reach the desired orientation (step 508). The processing circuitry 110 or processor 114 may send or transmit instructions to the linear actuator device 406 via the communication interface 112. The instructions may include an indication of a new or desired state of the linear actuator device 406, an indication of a new position of the moving structure 424, or an indication of the direction and distance to move the moving structure 424 therealong.
[0061] In some embodiments, the parameters of the knee joint design described herein, such as the lengths of the first link member 402 and the second link member 404, may be selected or determined, for example, via computer simulation in a manner that minimizes or reduces the power usage of the actuator 406. Given a trajectory of a particular task (such as walking or running) performed by a knee joint, a computer system including one or more processors and memory may simulate knee joint assemblies 400 with different parameters and determine the set of parameters that results in the least power consumption by the actuator 406. The trajectory of the knee joint may include positions or angles over time (such as the position or angle of the lower portion 304 of the robotic leg), velocities, and link joint torques to achieve a particular task.
[0062] Reference Figure 6, illustrates a graph 600 showing simulation results of different candidate designs (e.g., having different parameters) of a knee joint assembly 400 according to one embodiment. The x-axis shows the joint angle or position, such as the angle of the lower portion 304 of the robotic leg. Curves 602 and 604 represent the speed and link joint torque over time to achieve a specific task. Curves 606 - 610 represent the link joint torques of three different designs (e.g., having different parameters) of the knee joint assembly 400 determined by computer simulation. The computer system can determine the power used by the actuator 406 for each design (e.g., using the simulation data), and compare the determined power values. The design with the lowest power usage can be selected as the final model or design of the knee joint assembly 400. In other words, before constructing or manufacturing the knee joint assembly 400, the computer system can determine the desired parameters to use (e.g., parameters of the lower portion 304 of the robotic leg).
[0063] Although Figure 6 three candidate designs are shown, the computer system can simulate a larger number of designs to optimize or determine the "best" set of parameter values based on reducing or minimizing power usage. In some embodiments, the simulation can be iterative, where the parameter set is modified in each new simulation based on the results of the previous simulation.
[0064] In response to the received instructions, the controller of the linear actuator device 106 can actuate a motor, such as a servo motor, to cause the movable structure to move or shift by the determined displacement or to a new position.
[0065] Although the embodiments described herein are discussed with respect to the knee joint assembly of a humanoid robot, the embodiments can be used or applied to other types of joints and / or other types of robots.
[0066] The various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein can be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, the various illustrative components, blocks, modules, circuits, and steps have been described generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure or the claims.
[0067] Embodiments implemented in computer software can be implemented in software, firmware, middleware, microcode, hardware description language, or any combination thereof. A code segment or machine-executable instructions can represent a procedure, function, subroutine, program, routine, subroutine, module, software package, class, or any combination of instructions, data structures, or program statements. By passing and / or receiving information, data, arguments, parameters, or memory contents, a code segment can be coupled to another code segment or hardware circuit. Information, arguments, parameters, data, etc. can be passed, forwarded, or transmitted via any suitable means, including memory sharing, message passing, token passing, network transmission, etc.
[0068] The actual software code or dedicated control hardware used to implement these systems and methods does not limit the claimed features or the present disclosure. Thus, the operation and behavior of the systems and methods have been described without reference to specific software code, and it should be understood that the software and control hardware can be designed to implement the systems and methods based on the description herein.
[0069] When implemented in software, the functions can be stored as one or more instructions or code on a non-transitory, computer-readable, or processor-readable storage medium. The steps of the methods or algorithms disclosed herein can be embodied in a processor-executable software module, which can reside on a computer-readable or processor-readable storage medium. The non-transitory computer-readable or processor-readable medium includes both computer storage media and tangible storage media, facilitating the transfer of a computer program from one place to another. The non-transitory processor-readable storage medium can be any available medium that can be accessed by a computer. By way of example and not limitation, such non-transitory processor-readable media can include RAM, ROM, EEPROM, CD-ROM, or other optical disk storage devices, magnetic disk storage devices, or other magnetic storage devices, or any other tangible storage medium that can be used to store the desired program code in the form of instructions or data structures and that can be accessed by a computer or processor. As used herein, disk and optical disk include compact disk (CD), laser disk, optical disc, digital versatile disk (DVD), Blu-ray disk, and floppy disk, where "disk" generally reproduces data magnetically, while "optical disk" reproduces data optically with a laser. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm can reside as code and / or instructions in one or any combination or collection on a non-transitory processor-readable medium and / or computer-readable medium, which can be incorporated into a computer program product.
[0070] The foregoing description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the embodiments described herein and their variations. Various modifications to these embodiments will be apparent to those skilled in the art, and the principles defined herein can be applied to other embodiments without departing from the spirit or scope of the subject matter disclosed herein. Accordingly, the present disclosure is not intended to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the following claims and the principles and novel features disclosed herein.
[0071] Although various aspects and embodiments have been disclosed, other aspects and embodiments are also contemplated. The disclosed aspects and embodiments are for illustrative purposes and not intended to be limiting, and the true scope and spirit are indicated by the appended claims.
Claims
1. A system, comprising: a knee joint assembly, comprising: a first link member having a first end mechanically coupled to an upper portion of a leg of a robot and configured to rotate about a first pivot axis relative to the upper portion of the leg of the robot; a second link member having a first end mechanically coupled to a lower portion of the leg of the robot, the lower portion of the leg of the robot being mechanically coupled to the upper portion of the leg of the robot and configured to rotate about a second pivot axis relative to the upper portion of the robot; and a linear actuator device mechanically coupled to a second end of the first link member and a second end of the second link member, the linear actuator device causing the first link member to rotate about the first pivot axis relative to the upper portion of the leg of the robot and causing the lower portion of the leg of the robot to rotate about the second pivot axis relative to the upper portion of the leg of the robot when actuated.
2. The system according to claim 1, wherein the first link member is configured to rotate about a third pivot axis relative to the linear actuator device, and the second link member is configured to rotate about a fourth pivot axis relative to the linear actuator device.
3. The system according to claim 2, wherein the fourth pivot axis is the same as the third pivot axis, and the third pivot axis mechanically couples both the second end of the first link member and the second end of the second link member to the linear actuator device.
4. The system according to claim 2, wherein the fourth pivot axis is different from the third pivot axis, the third pivot axis mechanically couples the second end of the first link member to the linear actuator device, and the fourth pivot axis mechanically couples the second end of the second link member to the second end of the first link member.
5. The system according to claim 1, wherein the lower portion of the leg of the robot is configured to rotate about a third pivot axis relative to the second link member, the third pivot axis mechanically coupling the first end of the second link member to the lower portion of the leg of the robot.
6. The system according to claim 1, wherein the linear actuator device includes a moving structure mechanically coupled to the second end of the first link member and configured to cause the second end of the first link member to move according to a translational motion, causing the first link member to rotate about the first pivot axis relative to the upper portion of the leg of the robot when the linear actuator device is actuated.
7. The system according to claim 6, wherein the linear actuator device includes a servo motor configured to cause the moving structure to move according to the translational motion.
8. The system according to claim 1, wherein the rotational angle range of the first link member is about 60 degrees.
9. The system according to claim 1, wherein a range of a rotational angle of the lower portion of the leg of the robot is about 150 degrees.
10. The system according to claim 1, wherein the second link member includes a force sensor.
11. The system according to claim 1, further comprising a processing circuit, the processing circuit including a memory and a processor, and being configured to control the linear actuator device.
12. The system according to claim 11, wherein the processing circuit is configured to: determine a desired orientation of the lower portion of the leg of the robot relative to the upper portion of the leg of the robot; use the desired orientation of the lower portion of the leg of the robot relative to the upper portion of the leg of the robot to determine a displacement of a moving structure of the linear actuator device; and send an instruction to the linear actuator device to cause the moving structure to move the determined displacement.
13. The system according to claim 12, wherein the processing circuit is configured to calculate the displacement of the moving structure in real time using an instantaneous orientation of the lower portion of the leg of the robot, a speed of the lower portion of the leg of the robot, and a desired torque.
14. The system according to claim 1, wherein the robot is a humanoid robot.
15. A method, comprising: determining, by a processing circuit, an orientation of a lower portion of a leg of a robot relative to an upper portion of the leg of the robot, the lower portion of the leg of the robot being mechanically coupled to the upper portion of the leg of the robot and being configured to rotate about a first pivot relative to the upper portion of the robot; determining, by the processing circuit, a displacement of a moving structure of a linear actuator device using the orientation of the lower portion of the leg of the robot relative to the upper portion of the leg of the robot, the moving structure of the linear actuator device being mechanically coupled to a first end of the first link member and a first end of the second link member; sending an instruction to the linear actuator device to cause the moving structure to move the determined displacement; and causing, by the linear actuator device, the moving structure to move the determined displacement, causing the lower portion of the leg of the robot to rotate relative to the upper portion of the leg of the robot to reach a desired orientation, the first link member having a second end mechanically coupled to the upper portion of the leg of the robot and being configured to rotate about a second pivot relative to the upper portion of the leg of the robot, and the second link member having a second end mechanically coupled to the lower portion of the leg of the robot.
16. The method according to claim 15, wherein determining the displacement of the moving structure includes calculating the displacement of the moving structure in real time using an instantaneous orientation of the lower portion of the leg of the robot, a speed of the lower portion of the leg of the robot, and a desired torque.
17. The method according to claim 15, wherein the first link member is configured to rotate about a third pivot axis relative to the moving structure of the linear actuator device, and the second link member is configured to rotate about a fourth pivot axis relative to the moving structure of the linear actuator device.
18. The method according to claim 17, wherein the fourth pivot axis is the same as the third pivot axis, and the third pivot axis mechanically couples both the second end of the first link member and the second end of the second link member to the linear actuator device; or the fourth pivot axis is different from the third pivot axis, the third pivot axis mechanically couples the second end of the first link member to the linear actuator device, and the fourth pivot axis mechanically couples the second end of the second link member to the second end of the first link member.
19. The method according to claim 15, wherein the lower portion of the leg of the robot is configured to rotate about a third pivot axis relative to the second link member, and the third pivot axis mechanically couples the first end of the second link member to the lower portion of the leg of the robot.
20. The method according to claim 16, wherein the rotational angle range of the first link is about 60 degrees, and the rotational angle range of the lower portion of the leg of the robot is about 150 degrees.