Systems and methods for robotic knee assembly
The robotic knee joint assembly addresses inefficiencies in existing designs by using a single linear actuator to achieve a wide range of motion, improving efficiency and reducing power consumption, thus enhancing the performance of robotic legs.
Patent Information
- Application Number
- JP2025518461
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-09-30
- Filing Date
- 2023-10-02
- Publication Date
- 2025-10-20
AI Technical Summary
Existing robotic joint designs often result in increased power consumption, limited range of motion, and poor efficiency due to suboptimal geometry and the use of multiple actuators.
A robotic knee joint assembly that mimics the human knee, utilizing a single linear actuator to achieve a wide range of rotation (approximately 150 degrees) for the lower leg, with a compact design and efficient power usage, incorporating a first and second link member and a linear actuator device that allows for translational motion to drive rotational motion.
The design enhances the range of motion and reduces power consumption while maintaining efficiency, allowing for precise and coordinated movements of the robotic leg.
Smart Images

Figure 2025534872000001_ABST
Abstract
Description
[Technical Field]
[0001] [Cross-reference to related patent applications] This application claims priority to U.S. Provisional Application No. 63 / 377,919, filed September 30, 2022, and to U.S. Provisional Application No. 63 / 378,034, filed September 30, 2022, both of which are incorporated by reference in their entirety for all purposes.
[0002] FIELD OF THE DISCLOSURE The present disclosure relates generally to systems and methods for robotic joints, and more particularly to systems and methods for robotic knee joints. [Background technology]
[0003] A robot can be viewed as a chain or collection of joints that allow the robot to achieve desired motion. Each joint allows adjacent structures or elements to move relative to one another. The motion of adjacent elements is driven by one or more actuators associated with the joints. A computer system controls the actuators to achieve the desired motion.
[0004] The design of a joint defines the range of motion of corresponding adjacent elements and can affect the number and / or type of actuators used, as well as the efficiency of the actuators. Summary of the Invention
[0005] The reliability and efficiency of a robot depend heavily on the joint design it employs. A well-designed joint can increase the range of motion of adjacent elements and reduce the amount of power consumed by the robot. This disclosure describes systems and methods for knee joint assemblies configured to mimic the human knee joint. In particular, the knee joint assemblies described herein enable a range of rotation for the lower portion of the robotic leg similar to that seen in humans. Additionally, the knee joint assemblies described herein can be driven by a single linear actuator, minimizing or reducing power usage or maximizing or increasing efficiency while still meeting torque, speed, and range of motion requirements.
[0006] According to at least one aspect, the system can include a knee joint assembly that can include: a first link member mechanically coupled to an upper portion of a robot leg and having a first end configured to rotate about a first pivot relative to the upper portion of the robot leg; a second link member mechanically coupled to a lower portion of the robot leg, the lower portion of the robot leg being mechanically coupled to the upper portion of the robot leg and configured to rotate about a second pivot relative to the upper portion of the robot leg; and a linear actuator device mechanically coupled to the second end of the first link member and the second end of the second link member, the linear actuator device, upon actuation, rotating the first link member about the first pivot relative to the upper portion of the robot leg and rotating the lower portion of the robot leg about the second pivot relative to the upper portion of the robot leg.
[0007] The first link member can be configured to rotate about a third pivot relative to the linear actuator device, and the second link member can be configured to rotate about a fourth pivot relative to the linear actuator device. In some implementations, the fourth pivot can be the same as the third pivot, and the third pivot can 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 implementations, the fourth pivot can be different from the third pivot, and the third pivot can mechanically couple the second end of the first link member to the linear actuator device, and the fourth pivot can mechanically couple the second end of the second link member to the second end of the first link member.
[0008] The lower portion of the robotic leg can be configured to rotate relative to the second link member about a third pivot, the third pivot mechanically coupling a first end of the second link member to the lower portion of the robotic leg.
[0009] The linear actuator device can include a moving structure mechanically coupled to the second end of the first link member and configured to move the second end of the first link member in a translational motion when the linear actuator device is actuated, causing the first link member to rotate about the first pivot relative to the upper portion of the robot leg. The linear actuator device can include a servo motor configured to move the moving structure in a translational motion.
[0010] The first link member can have a rotation angle range of about 60 degrees. In some implementations, the lower part of the robot leg has a rotation angle range of about 150 degrees. In some implementations, the second link member includes a force sensor. In some implementations, the robot can be a humanoid robot.
[0011] The system can include a processing circuit including a memory and a processor configured to control the linear actuator device. The processing circuit can be configured to determine a desired orientation of a lower portion of the robot leg relative to an upper portion of the robot leg, determine a displacement of a moving structure of the linear actuator device using the desired orientation of the lower portion of the robot leg relative to the upper portion of the robot leg, and send a command to the linear actuator device to move the moving structure the determined displacement. In some implementations, the processing circuit is configured to calculate the displacement of the moving structure using the orientation of the lower portion of the robot leg, the velocity of the lower portion of the robot leg, and the desired torque.
[0012] According to at least one embodiment, a method can include: determining, by a processing circuit, an orientation of a lower portion of a robot leg relative to an upper portion of the robot leg, the lower portion of the robot leg being mechanically coupled to the upper portion of the robot leg 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 robot leg relative to the upper portion of the robot leg, 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 a command to the linear actuator device to move the moving structure through the determined displacement; and moving, by the linear actuator device, the moving structure through the determined displacement, resulting in rotation of the lower portion of the robot leg relative to the upper portion of the robot leg to reach a desired orientation. The first link member can have a second end mechanically coupled to the upper portion of the robot leg and configured to rotate about a second pivot relative to the upper portion of the robot leg. The second link member can have a second end mechanically coupled to the lower portion of the robot leg.
[0013] Determining the displacement of the moving structure may include calculating the displacement of the moving structure in real time using the instantaneous orientation of the lower part of the robot leg, the velocity of the lower part of the robot leg, and the desired torque.
[0014] The first link member can be configured to rotate about a third pivot relative to the moving structure of the linear actuator device, and the second link member can be configured to rotate about a fourth pivot relative to the moving structure of the linear actuator device.
[0015] 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, and 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.
[0016] The lower portion of the robotic leg can be configured to rotate relative to the second link member about a third pivot, and the third pivot can mechanically couple a first end of the second link member to the lower portion of the robotic leg.
[0017] The first link member can have a rotation angle range of about 60 degrees. In some implementations, the lower part of the robot leg can have a rotation angle range of about 150 degrees. [Brief explanation of the drawings]
[0018] Non-limiting embodiments of the present disclosure are illustrated by way of example with reference to the accompanying drawings, which are schematic and are not intended to be drawn to scale, and in which, unless indicated as representing background art, the figures represent aspects of the present disclosure.
[0019] [Figure 1] FIG. 1 shows a diagram of an exemplary humanoid robot in which the systems and methods described herein can be integrated, according to one embodiment.
[0020] [Figure 2] FIG. 1 shows a diagram depicting the similarity between the anatomy of the human knee and the high-level design of a robotic knee, according to one embodiment.
[0021] [Figure 3A] FIG. 1 illustrates a diagram of two legs of a humanoid robot, according to one embodiment. [Figure 3B] 1 illustrates a diagram of both legs of a humanoid robot, according to one embodiment.
[0022] [Figure 4] 4 illustrates an exemplary knee joint assembly for the humanoid robot of FIG. 3 , according to one embodiment.
[0023] [Figure 5] 5 shows a flowchart illustrating a method for actuating or controlling the knee joint assembly of FIG. 4 according to one embodiment.
[0024] [Figure 6] 10 shows a graph depicting simulation results for different candidate designs (e.g., using different parameters) of a knee joint assembly, according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0025] Reference will now be made to the exemplary embodiments illustrated in the drawings, and specific language will be used to describe them. It will nevertheless be understood that no limitation of the scope of the claims or the present disclosure is intended. Alterations and further modifications of the features of the invention shown herein, and further applications of the principles of the subject matter shown herein, which will occur to those skilled in the relevant art and in possession of this disclosure, should be considered within the scope of the subject matter disclosed herein. Other embodiments may be utilized and / or other changes may be made without departing from the spirit or scope of the disclosure. The exemplary embodiments described in the detailed description do not limit the presented subject matter.
[0026] A robot can be viewed as a collection of joints designed to enable movement of one or more links or elements adjacent to each joint. The design, structure, and mechanics of the joints can significantly affect the stability, reliability, and efficiency of the robot. For example, poor joint design can lead to poor geometry, an increased number of actuators, increased power consumption by the robot, and / or a limited range of motion for one or more components of the robot. This disclosure describes a joint assembly designed or configured to mimic the human knee joint. In particular, the knee joint assembly described herein allows a relatively wide range of rotation for the robot's lower leg, e.g., approximately 150 degrees (e.g., between 140 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, improving efficiency. Specifically, the range of rotation for the robot's lower leg can be approximately 150 degrees or close to it, while the linear actuator is configured or structured to cause rotation of a link 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.
[0027] FIG. 1 is a diagram of an exemplary humanoid robot 100 that can integrate the systems and methods described herein, according to one illustrative embodiment. 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 multiple actuators 118 associated with multiple joints. The robot 100 can include one or more sensors for sensing parameters of the robot 100 or its surroundings. The robot 100 can include one or more cameras.
[0028] The processor 114 may be realized 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 components, 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 combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some implementations, the controller 108 may include one or more processors 114.
[0029] Memory 116 (e.g., memory units and / or storage devices) may include one or more devices (e.g., RAM, ROM, flash memory, hard disk storage) that store data and / or computer code for completing or facilitating the various processes described in this disclosure. Memory 116 may be communicatively coupled to processor 114 and provide processor 114 with computer code or instructions for executing at least some of the processes described herein. Additionally, memory 116 may be or include tangible, non-transitory, volatile or non-volatile memory. For example, 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.
[0030] The communication interface 112 may include any combination of wired and / or wireless interfaces (e.g., jacks, antennas, transmitters, receivers, transceivers, wired 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) and actuators 118, sensors, or cameras integrated into the robot 100. In some implementations, the communication interface 112 may enable communication with remote systems or devices.
[0031] The processing circuit 110 or processor 114 can be configured to control the joints of the robot 100. The processing circuit 110 or processor 114 can control the joints or the movement associated with the joints by controlling corresponding actuators 118. In particular, each joint can include or be associated with one or more actuators 118 configured to drive the movement of a robot part or element connected via the joint. As described in further detail below, the processing circuit 110 or processor 114 can send commands to the actuators 118 to cause or trigger precise movement of one or more elements or parts of the robot 100. The processing circuit 110 or processor 114 can control multiple joints simultaneously to achieve coordinated movement of the robot 100.
[0032] The processing circuit 110 or processor 114 can receive data from sensors and / or cameras integrated into the robot 100 and make decisions based on the received data, such as regarding which elements of the robot 100 to move and how. For example, the data received from the sensors and / or cameras can indicate an obstacle in the path of the robot 100. The processing circuit 110 or processor 114 can decide to modify the path and, based on the modified path, determine the movement of one or more limbs or parts of the robot 100. In some implementations, the processing circuit 110 or processor 114 can receive data from a remote device or system indicating a task to be performed by the robot 100 and determine a series of movements of the limbs or parts of the robot 100 to perform the task.
[0033] 1 shows the controller 108 being integrated into the chest or upper body of the robot 100, in general, the controller 108 can be located on or integrated into other areas or portions of the robot 100. For example, the robot 100 can include a head, and the controller 108 can be integrated into or in the head. In some implementations, the controller 108 can be located on the back, the lumbar region, and / or one of the limbs of the robot 100.
[0034] FIG. 2 shows diagrams 200A-200C illustrating the similarities between the anatomy of a human knee joint and the high-level design of a robotic knee joint, according to one embodiment. In FIG. 200A, a side view of the knee anatomy is shown with arrows 202-204 indicating some of the forces acting within the knee joint. For example, arrow 202 can be considered to represent the force exerted by the quadriceps muscle or quadriceps tendon on the patella. Arrow 204 can be considered to represent the force exerted by the patellar ligament on the patella. Arrow 206 can be considered to represent the force exerted by the patella on the femur or articular cartilage covering the end of the femur. These forces drive the movement of the knee joint and maintain the structure and shape of the knee joint. Other relevant forces include the forces between the femur and tibia along the anterior cruciate ligament (ACL) and posterior cruciate ligament (PCL), respectively.
[0035] FIG. 200B illustrates a similar mechanical system corresponding to the natural knee joint of FIG. 200A. The similar mechanical system can be considered a four-point or four-node mechanical system. In other words, the mechanical system can include four points or nodes 208-214 representing force points. Point or node 208 can be considered to correspond to the patella. Point or node 210 can be considered to correspond to the connection between the patellar ligament and the tibia. Point or node 212 can be considered to correspond to the connection between the femur and the tibia, for example, via the ACL and / or PCL. Point or node 214 can be considered a point force representing or corresponding to the force exerted by the patella on the femur.
[0036] In a similar mechanical system, the four points or nodes 208-214 may be interconnected or linked via four links or link members. Link 216 may link or connect points 208 and 210. Link 218 may link or connect points 210 and 212. Link 220 may link or connect points 212 and 214. Link 222 may link or connect points 214 and 208.
[0037] FIG. 200C shows an exemplary design of a knee joint assembly for a robot based on the similar mechanical system of FIG. 200B. The knee joint assembly design may include four connection points 224-230 corresponding to points or nodes 208-214, respectively, of the similar mechanical system. The design may include mechanical link or link member 232 corresponding to link 216, mechanical link or link member 234 corresponding to link 220, and mechanical link or link member 236 corresponding to link 222 of the similar mechanical system of FIG. 200B. Connection points 226 and 228 may be located on or mounted to a structure or component representing the lower portion of a robot leg.
[0038] Figure 3A shows a perspective view of both legs of a humanoid robot 300, according to one embodiment. Both legs of the humanoid robot 300 are in an upright position. Each leg may include an upper part 302, a lower part 304, and a knee joint assembly 306. The outer cover or housing of the upper part 302 has been removed from the left leg, exposing the internal components. Figure 3B shows another view of the legs of the humanoid robot 300 with the lower part in a different position, according to one embodiment.
[0039] The upper part 302 corresponds to the thigh and may be referred to herein as the upper leg, thigh, or upper extremity of the robotic leg. The lower part 304 corresponds to the leg between the knee and ankle and may be referred to herein as the lower leg or lower leg. The knee joint assembly 306 may include links (or link members) and / or other components configured or structured to cause movement of the lower part 304 relative to the upper part 302. The knee joint assembly 306 and corresponding components and mechanisms are described in further detail below in connection with Figures 4-5.
[0040] FIG. 4 illustrates an example knee joint assembly 400 for the humanoid robot 300 of FIG. 3 , according to one embodiment. The knee joint assembly 400 can be used with or integrated into a humanoid robot, such as robot 100 or 300, or other types of robots. Although referred to herein as a knee joint assembly, the joint assembly 400 can be used with other types of joints, not necessarily knee joints. 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.
[0041] The first link member 402 may have a first end 408 and a second (or opposite) end 410. The first end 408 of the first link member 402 may be mechanically coupled to the upper leg 302 of the robot 300. The first link member 402 may be configured or structured to rotate about a first pivot 412 relative to the upper leg 302 of the robot 300. The second link member 404 may have a first end 414 and a second (or opposite) end 416. The first end 414 of the second link member 404 may be mechanically coupled to the lower leg 304 of the robot 300. The lower leg 304 of the robot 300 may be mechanically coupled to the upper leg 302 of the robot 304. The lower leg 304 of the robot 300 may be configured or structured to rotate about a second pivot 418 relative to the upper leg 302 of the robot 300.
[0042] The linear actuator device 406 can be mechanically coupled to the second end 408 of the first link member 402 and can be mechanically coupled to the second end 416 of the second link member 404. When actuated, the linear actuator device 406 can rotate the first link member 402 about the first pivot 412 relative to the upper leg 402 of the robot 300. In particular, when actuated, the linear actuator device 406 can exert 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 leg 402 of the robot 300. When actuated, the linear actuator device 406 also rotates the lower leg 302 of the robot 300 about the second pivot 418 relative to the upper leg 402 of the robot 300. In particular, when actuated, the linear actuator device 406 exerts 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.
[0043] The linear actuator device 406 can be mechanically coupled to the first link member 402 and the second link member 404 in a variety of 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 shown in FIG. 4 , 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 may be directly coupled to the first link member 402 , but may be mechanically coupled to the second link member 404 via the first link member 402 .
[0044] In some implementations, 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.
[0045] In some implementations, the lower leg 304 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 leg 402 of the robot 300. The ability of the lower leg 304 of the robot 300 to rotate about the pivot 422 relative to the second link member 404 means that there is flexibility in the angle between the lower leg 304 of the robot 300 and the second link member 404.
[0046] The linear actuator device 406 may include a moving structure 424, such as a rod or shaft, among others. The moving structure 424 may 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 in a translational motion, exerting a force on the second end 410 of the first link member 402 and causing the second end 410 of the first link member 402 to move in a translational motion, for example. The movement of the second end 410 causes the first link member 402 to rotate about the first pivot 412 relative to the upper leg 302 of the robot 300.
[0047] The linear actuator device 406 may include a servo motor configured to move the moving structure 424 according to a translational motion. The servo motor may enable precise displacements or displacement increments of the moving structure 424 of the linear actuator device 406. Each displacement increment may correspond to an increment in angle between the upper 302 and lower 304 legs of the robot 300.
[0048] Comparing the knee joint assembly 400 of FIG. 4 to the similar mechanical system and joint design of FIG. 2, pivots 420a and 420b can be considered to correspond to point 208 and connection point 224 of FIG. 2. Pivot 422 can be considered to correspond to point 210 or connection point 226 of FIG. 2. Pivot 412 can be considered to correspond to point 214 or connection point 230, and pivot 418 can be considered to correspond to point 212 or connection point 228 of FIG. 2. Additionally, first link member 402 can be considered to correspond to links 222 and 236 of FIG. 2, and second link member 404 can be considered to correspond to links 216 and 232 of FIG. 2.
[0049] The knee joint assembly 400 allows for the use of a relatively simple and relatively small actuator, such as a linear actuator 406. In other words, the design of the knee joint assembly 400 allows for the translation of linear motion generated by the linear actuator device 406 into rotational motion relative to the upper part 302 of the lower leg 304 of the robot 300. The lower leg 304 of the robot 300 can have a rotational angular range of approximately 180 degrees. For example, the robot 300 can bend or move the lower leg 304 backward up to 180 degrees, or to angles close to but less than 180 degrees, such as 175 degrees or 170 degrees.
[0050] The knee joint assembly 400 allows for such a wide range of rotational movement of the lower leg part 304 without geometrical defects and with relatively high efficiency. For example, the angular range of rotation of the lower leg part 304 may be approximately 180 degrees, while the corresponding angular range of rotation of the first link member 402, to which the linear actuator device 406 exerts a force, may be approximately 60 degrees (e.g., between 50 and 70 degrees, or between 45 and 75 degrees). In other words, to rotate the lower leg part 302 approximately 180 degrees, the linear actuator device 406 may push or exert a force on the second end 410 of the first link member 402 to rotate the first link member 402 by approximately 60 degrees about the pivot 412. This means that the moving structure 424 of the linear actuator device 406 moves a relatively small distance or displacement in a linear motion.
[0051] In some implementations, the second link member 404 can include a force sensor 426, for example, to measure a force on the second link member 404. The force sensor 426 can be communicatively coupled to the controller 108 or the processing circuit 410. In some implementations, the first link member 402 can be mechanically coupled to a structure 428 of the upper part 402 via a pivot 412, and can be a humanoid robot. The linear actuator device 406 can be installed in or integrated into the upper part 402 of the leg of the robot 300.
[0052] The controller 108 or processing circuitry 110 can control the linear actuator device 406. For example, the processing circuitry 110 or processor 114 can specify the amount of displacement or movement to be performed by the moving structure 424 at any time. The mechanism for actuating the knee joint assembly 400 is described in more detail below in connection with FIG. 5.
[0053] Figure 5 shows a flowchart illustrating a method 500 for actuating or controlling the knee joint assembly 400 of Figure 4, according to one embodiment. Generally, the method 500 may include determining a desired orientation of the robot leg lower portion 304 relative to the robot leg upper portion 302 (step 502) and using the desired orientation to determine a displacement of a moving structure 424 of a linear actuator device 406 (step 504). The method 500 may include sending or transmitting a command to the linear actuator device 406 to move the moving structure the determined displacement (step 506), and moving the moving structure 424 by the linear actuator device 406 the determined displacement, resulting in a rotation of the robot leg lower portion 304 relative to the robot leg upper portion 302 to reach the desired orientation (step 508).
[0054] Method 500 may be performed by processing circuitry 110 or processor 114 in combination with linear actuator device 406. Processing circuitry 110 or processor 114 may execute computer code instructions stored in memory 116, for example, to perform steps 502-506 of method 500.
[0055] The method 500 may include the processing circuit 110 or processor 114 determining a desired orientation of the robot leg lower portion 304 relative to the robot leg upper portion (step 502). In particular, the processing circuit 110 or processor 114 may determine a desired angle between the robot leg lower portion 304 relative to the robot leg upper portion 302. The processing circuit 110 or processor 114 may determine the desired angle or orientation based on, or as part of, a desired task to be performed by the robot (e.g., walking, jumping, kicking a ball, etc.). The processing circuit 110 or processor 114 may divide the task into a series of movements to be performed over a period of time. In some implementations, the processing circuit 110 or processor 114 may determine the instantaneous position or orientation of the robot leg lower portion 304 relative to the robot leg upper portion, the velocity of the robot leg lower portion 304, and the desired torque. The processing circuit 110 or processor 114 may use a function mapping actuator forces to joint torques and / or a function from a linkage force sensor to joint torque.
[0056] The method 500 may include the processing circuit 110 or processor 114 determining (step 504) a displacement of the moving structure 424 of the linear actuator device 406 using the desired orientation. Given the shape and design of the knee joint assembly 400, each angle between the robot leg lower part 304 and the robot leg upper part 302 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, the robot leg lower part 304 is positioned or oriented at a predetermined angle relative to the upper part 302 when the moving structure 424 is at a corresponding particular displacement or position. The processing circuit 110 or processor 114 may maintain, for example in the memory 116, a data structure that stores a correspondence or association between various values of the angle between the robot leg lower part 304 and the robot leg upper part 302 and the corresponding position or displacement values of the moving structure 424 (or the corresponding state of the linear actuator device 406). The processing circuitry 110 or processor 114 can use the data structure and the desired orientation or angle of the robot leg lower portion 302 to determine the desired position or displacement of the mobile structure 424 .
[0057] In some implementations, the processing circuitry 110 or processor 114 can calculate the desired position or displacement of the moving structure 424 in real time, for example, using closed forms or formulas for force, torque, and / or velocity. The processing circuitry 110 or processor 114 can use the instantaneous position of the lower part 304 of the robot leg (e.g., the angle between the lower part 304 and the upper part 302 of the robot leg), the velocity of the lower part 304, and / or the desired torque to determine the position or displacement of the moving structure 424 in real time.
[0058] In some implementations, the processing circuit 110 or processor 114 can track the current angle between the lower part 304 of the robot leg relative to the upper part of the robot leg, as well as the current state of the linear actuator device 406 or the current position of the moving structure 424. The processing circuit 110 or processor 114 can use the data structure, the desired and current orientation of the lower part, and the current position of the moving structure 424 to determine additional displacements or movements to be made by the moving structure 424.
[0059] Method 500 may include processing circuit 110 or processor 114 sending or transmitting commands to linear actuator device 406 to move the moving structure a determined displacement (step 506), and linear actuator device 406 moving moving structure 424 a determined displacement to effect rotation of lower robot leg 304 relative to upper robot leg 302 to reach a desired orientation (step 508). Processing circuit 110 or processor 114 may send or transmit commands to linear actuator device 406 via communication interface 112. The commands may include an indication of a new or desired state of linear actuator device 406, an indication of a new position of moving structure 424, or an indication of a direction and distance to move moving structure 424.
[0060] In some implementations, parameters of the knee joint designs described herein, such as the lengths of the first link member 402 and the second link member 404, can be selected or determined, for example, via computer simulation, to minimize or reduce power usage by the actuator 406. Given a knee joint trajectory for performing a particular task, such as walking or running, a computer system including one or more processors and memory can simulate the knee joint assembly 400 with different parameters to determine the set of parameters that minimizes power consumption by the actuator 406. The knee joint trajectory can include the position or angle (e.g., of the robot leg lower part 304) over time, velocity, and articulated joint torque to accomplish the particular task.
[0061] Referring to FIG. 6 , a graph 600 is shown illustrating simulation results for different candidate designs (e.g., using different parameters) of the knee joint assembly 400, according to one embodiment. The x-axis represents joint angle or position, e.g., the angle of the lower part 304 of the robot leg. Plots 602 and 604 represent the velocity and articulated joint torque over time to accomplish a specific task. Plots 606-610 represent the articulated joint torque for three different designs (e.g., with 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 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 building or manufacturing the knee joint assembly 400, the computer system can determine the desired parameters (e.g., of the lower part 304 of the robot leg) to use.
[0062] 6 shows three candidate designs, the computer system may simulate many more designs to optimize or determine the "best" set of parameter values in terms of reducing or minimizing power usage. In some implementations, the simulations may be iterative, with the set of parameters being modified for each new simulation based on the results of previous simulations.
[0063] In response to the received command, the controller of the linear actuator device 106 can actuate a motor, for example a servo motor, to move or displace the moving structure by a determined displacement or to a new position.
[0064] Although the embodiments described herein are described in the context of a knee joint assembly for a humanoid robot, the embodiments may be used or applied to other types of joints and / or other types of robots.
[0065] The various illustrative logic blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or a combination of both. To clearly illustrate this interchangeability between 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 on the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in various 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.
[0066] Computer software-implemented embodiments may be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and / or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, etc. may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc.
[0067] The actual software code or specialized control hardware used to implement these systems and methods is not a limitation of the claimed features or this disclosure. Thus, although the operation and behavior of the systems and methods have been described without reference to specific software code, it will be understood that software and control hardware can be designed to implement the systems and methods based on the description herein.
[0068] If implemented in software, the functions may be stored as one or more instructions or code on a non-transitory, computer-readable, or processor-readable storage medium. The steps of a method or algorithm disclosed herein may be embodied in a processor-executable software module, which may reside on a computer-readable or processor-readable storage medium. Non-transitory computer-readable or processor-readable media include both computer storage media and tangible storage media that facilitate transfer of a computer program from one place to another. Non-transitory processor-readable storage media may be any available medium that can be accessed by a computer. By way of example, and not limitation, such non-transitory processor-readable media may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage, or any other tangible storage medium that can be used to store 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 disc include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), Blu-ray disc, and floppy disk, where a "disk" typically reproduces data magnetically, while a "disk" reproduces data optically with a laser. Combinations of the above should also be included within the scope of computer-readable media. Furthermore, the operations of a method or algorithm may reside as one or any combination or set of code and / or instructions on a non-transitory, processor-readable medium and / or computer-readable medium, which may be incorporated into a computer program product.
[0069] The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the embodiments described herein and variations thereof. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the principles defined herein may be applied to other embodiments without departing from the spirit or scope of the subject matter disclosed herein. Thus, 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.
[0070] While various aspects and embodiments have been disclosed, other aspects and embodiments are contemplated. The various disclosed aspects and embodiments are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Claims
1. 1. A system comprising a knee joint assembly, the knee joint assembly comprising: a first link member mechanically coupled to an upper portion of the robot leg and having a first end configured to rotate about a first pivot relative to the upper portion of the robot leg; a second link member having a first end mechanically coupled to a lower portion of the robot leg, the lower portion of the robot leg being mechanically coupled to an upper portion of the robot leg and configured to rotate about a second pivot relative to the upper portion of the robot; a linear actuator device mechanically coupled to the second end of the first link member and the second end of the second link member, the linear actuator device, when actuated, causing the first link member to rotate about the first pivot relative to the upper part of the robot leg and the lower part of the robot leg to rotate about the second pivot relative to the upper part of the robot leg; Including, the system.
2. 2. The system of claim 1, wherein the first link member is configured to rotate about a third pivot relative to the linear actuator device and the second link member is configured to rotate about a fourth pivot relative to the linear actuator device.
3. 3. The system of claim 2, wherein the fourth pivot is the same as the third pivot, and the third pivot 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. 3. The system of claim 2, wherein the fourth pivot is different from the third pivot, the third pivot mechanically coupling the second end of the first link member to the linear actuator device, and the fourth pivot mechanically coupling the second end of the second link member to the second end of the first link member.
5. 2. The system of claim 1, wherein the lower portion of the robotic leg is configured to rotate relative to the second link member about a third pivot, the third pivot mechanically coupling the first end of the second link member to the lower portion of the robotic leg.
6. 2. The system of claim 1, wherein the linear actuator device can include a moving structure mechanically coupled to a second end of the first link member and configured to move the second end of the first link member in a translational motion when the linear actuator device is actuated, thereby causing the first link member to rotate about a first pivot relative to an upper portion of the robot leg.
7. The system of claim 6 , wherein the linear actuator device includes a servo motor configured to move the moving structure in a translational motion.
8. The system of claim 1 , wherein the first link member has a rotational angular range of approximately 60 degrees.
9. The system of claim 1 , wherein the lower portion of the robotic leg has a rotational angular range of approximately 150 degrees.
10. The system of claim 1 , wherein the second link member includes a force sensor.
11. The system of claim 1 including a processing circuit configured to control the linear actuator device, the processing circuit including a memory and a processor.
12. The processing circuitry determining a desired orientation of a lower portion of the robot leg relative to an upper portion of the robot leg; determining a displacement of a moving structure of the linear actuator device using a desired orientation of the lower portion of the robot leg relative to the upper portion of the robot leg; sending a command to the linear actuator device to move the moving structure a determined displacement; The system of claim 11 configured to:
13. 13. The system of claim 12, wherein the processing circuitry is configured to calculate displacement of the mobile structure in real time using instantaneous orientation of the lower portion of the robot leg, velocity of the lower portion of the robot leg, and desired torque.
14. The system of claim 1 , wherein the robot is a humanoid robot.
15. determining, by a processing circuit, an orientation of a lower portion of the robot leg relative to an upper portion of the robot leg, the lower portion of the robot leg being mechanically coupled to the upper portion of the robot leg and configured to rotate about a first pivot relative to the upper portion of the robot leg; determining, by the processing circuitry, a displacement of a moving structure of a linear actuator device using an orientation of the lower portion of the robot leg relative to the upper portion of the robot leg, 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 a command to the linear actuator device to move the moving structure a determined displacement; moving a mobile structure by the linear actuator device through a determined displacement to effect rotation of the lower part of the robot leg relative to the upper part of the robot leg to reach the desired orientation; the first link member having a second end mechanically coupled to an upper portion of the robot leg and configured to rotate about a second pivot relative to the upper portion of the robot leg, and the second link member having a second end mechanically coupled to a lower portion of the robot leg; A method comprising:
16. 16. The method of claim 15, wherein determining the displacement of the moving structure comprises calculating the displacement of the moving structure in real time using the instantaneous orientation of the lower part of the robot leg, the velocity of the lower part of the robot leg, and a desired torque.
17. 16. The method of claim 15, wherein the first link member is configured to rotate about a third pivot relative to a moving structure of the linear actuator device, and the second link member is configured to rotate about a fourth pivot relative to a moving structure of the linear actuator device.
18. the fourth pivot is the same as the third pivot, and the third pivot 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 18. The method of claim 17, wherein the fourth pivot is different from the third pivot, the third pivot mechanically coupling the second end of the first link member to the linear actuator device, and the fourth pivot mechanically coupling the second end of the second link member to the second end of the first link member.
19. 16. The method of claim 15, wherein the lower part of the robot leg is configured to rotate relative to the second link member about a third pivot, the third pivot mechanically coupling a first end of the second link member to the lower part of the robot leg.
20. 17. The method of claim 16, wherein the first link member has a rotational angular range of approximately 60 degrees and the lower portion of the robot leg has a rotational angular range of approximately 150 degrees.