Five-bar linkages multi-dof robotic hand design and impedance control
This is a collaborative project between The University of Texas at Austin and Sony Group Corporation.
The Sony PLATO project at UT Austin focuses on developing remote telemanipulation interfaces and framkeworks to grasp and manipulate tools in the human enviroments. Using the Maestro Hand Exokeleton, we can estimate the joint angles of the human hand provide force feedback via bowden cables and series elastic actuators. We developed a 3 fingered robotic hand HT2205 motors, ESP32 microcontroller, SimpleFOC Mini, and CAN bus based on our SocketCAN Motor Control.
Due to time limit, we didn’t implement PCB board, so we used wires to connect all electrical components. Detail design of the PLATO Hand will be posted in the future. We adopted collocated direct driven motor to achieve proximal actuation with high force transprancey and high bandwidth control. While MCP joints (A/A and F/E) are direct driven, PIP joint (F/E) includes a cable transmission with 1:1 ratio. One of the unique feature of the hand is that fingertip matierals are made of soft resin while the fingernail made of hard resin is connected to 6-dof miniature force-torque sensors.
The low-level hardware interface for the PLATO Hand was implemented using ros2_control
which allows seamless integration of the hardware to ROS 2 framework.
We made a first prototype of the PLATO hand with Roboligent. Then we teleoperated the PLATO hand and Optimo arm with the Maestro Hand Exoskeleton and 3D SpaceMouse. As a conclusion, we verified our teleoperation pipeline, we found several problems to address:
Limitied Torque Output: The HT2205 motor’s rated torque according to the datasheet is 0.04 Nm which is enough to grab a light object such as a jenga block. However, it turns out that the actual torque output was much lower (about 10 times) than 0.04 Nm.
Overheating: Due to the motor’s low rated torque, the motor pulled a lot of current to achieve the desired motion. This caused the motor to overheat and damaging the wires and some electrical compoenets glued to the base frame of the hand.
Latency: With the SocketCAN and the USB-CAN Converter, we experienced a lot of latency in communication. Although the PLATO Hand is running on real-time kernel, USB is not supported in real-time because of its packed oriented nature. In addtion, since one ESP32 controls three motors, there may have been latency in motor control algorithm.
Control : We only received the current motor position from the CAN bus, and the motor velocity was computed on the host computer. With the latnecy mentioned above, the velocity reading contaied a lot of noise leading to instability in impedance control. Therefore, we ended up implementing PD control loop inside the ESP32 embedded system.
To address these problems, we have designed PLATO Hand V2 (PLATO2 Hand) with off-the-shelf quasi-direct drive actuator with on-board motor driver to increase the load capacity, decrease the control instability, and add more versatility in motion by greater range of motion to safetly achieve the desired task in the human enviroment.
Actuators are the cornerstone of robotic design, particularly when utilizing off-the-shelf motors. While custom actuators offer greater design flexibility, their development is a time-consuming and costly endeavor, especially for robotic hand applications. These actuators must be compact, lightweight, and powerful—a challenging combination considering that motor torque is proportional to both power and mechanical reduction ratio. Miniaturizing such designs proves difficult as high power ratings and reduction ratios require significant space and weight.
Torque density, a metric that evaluates an actuator’s mass (kg) relative to its power (W), offers a valuable perspective on actuator performance. Wensing’s work on proprioceptive actuator design for the Patrick Wensing’s Proprioceptive Actuator Design in MIT Cheetah [1] highlights key principles for legged robots, including reducing ground reaction forces, improving impact mitigation (backdrivability), increasing force transparency, and achieving high-bandwidth force control. Although robotic hand design may have less stringent requirements compared to legged robots, adopting these design principles can enable robotic hands to perform more versatile tasks beyond simple pick-and-place or in-hand manipulation of small, lightweight objects.
High control bandwidth, transparency, and backdrivability can be achieved by employing a low reduction ratio, typically under 10, in a configuration known as a quasi-direct drive (QDD) actuator. The low gear ratio reduces the reflected rotor inertia, which improves control bandwidth, while the reduced friction enhances transparency and backdrivability. Among the off-the-shelf QDDs, GIM3505-8 stands out as the most compact one with a 8:1 gear ratio with a rated torque of 0.43 Nm, and dimensions of 43 mm D x 30 mm H In addition, it provides integrated motor driver module with CAN bus communication. Because of these features, we have selected the GIM3505-8 for MCP and PIP joint actuators for PLATO2 Hand.
Robotic finger modeling often assumes that the finger is an open-chain mechanism, with each joint capable of producing torque independently. However, placing an actuator at every joint is not a practical design choice due to its weight, bulkiness and resulting inertia during motion. Robot design often locates heavy and bulky actuators near the base (body) of the robot to achieve proximal actuation [2] and reduce the inertia of the distal links, and we have adopted same design principle for the finger of PLATO2 Hand.
Among various transmission options, cable-driven mechanisms offer the highest transparency and minimal backlash [3], making them a popular choice for robotic hand designs. The flexibility of cables allows for efficient power transmission over long and curved paths, enabling more compact and anatomically accurate hand configurations by placing actuators near the wrist or forearm of the robotic hand. However, cable-driven mechanism require careful design to ensure proper tensioning, alignment, and termination of cables. In our application where frequent maintenance will be required due to tasks involving high-speed collision with the environment.
Based on the requirements for collision resilience and durability, we have opted for a linkage transmission mechanism in our robotic hand design. While linkage mechanisms introduce complexities in kinematics, such as potential non-linearity in mechanical advantage and limited range of motion due to transmission angle and singularity, these challenges can be effectively addressed through careful design. One approach to mitigate the non-linear reduction issue is to employ a parallelogram-style four-bar linkage, where the input and output linkages are parallel to each other. This configuration results in simplified kinematics, as the mechanical advantage remains constant throughout the range of motion. Since we will be estimating the joint angles based on the motor encoder readings without employing additional sensors on the distal joints, simplifying the kinematics is crucial for PLATO2 Hand for accurate state estimation.
Due to the increased thickness of the actuators and the requirement for co-axial rotational output to maintain linearity in the linkage kinematics, collocating two motors, as in the previous PLATO Hand design, is not a viable option for the PLATO2 Hand. To address this challenge, we introduced an additional linkage transmission for the metacarpophalangeal (MCP) motor to drive the proximal interphalangeal (PIP) motor, which is directly connected to the proximal phalanx and drives the PIP joint through a four-bar linkage. However, this design presented limited range of motion in flexion/extension (F/E) due to the restricted space available for the two four-bar linkages. The range of motion was further constrained by mechanical interference and tight clearances between the independent linkages and the large diameter of the actuators. Increasing the size of the linkages to accommodate a larger range of motion would result in an undesirably bulky design.
Range of motion of linkages were limited by the mechanical interference and tight clearances between the two independant linkages and actuator’s large diameter. Increasing the size of the linkages would increase the size of the fingers making the hand bulkier. As a resolution, we have decided to change to adopt five-bar linkage mechanism and convert to a finger design with 2 active actuation.
As an alternative, we explored the use of a five-bar linkage mechanism, which is commonly employed in parallel manipulators and has been used in robotic fingers with underactuated mechanisms, springs, and finger exoskeletons. The five-bar linkage reduces the number of linkages and space requirements compared to the double four-bar linkage design. However, this simplification comes at the cost of increased complexity in the kinematics. In a five-bar linkage, the PIP joint angle is determined by both the MCP and PIP motors, resulting in a non-linear mechanical advantage. To address this non-linearity, we modeled the mechanism and ran optimization to minimize the deviation from a linear mechanical advantage.
To reduce the bulkiness of the PLATO2 Hand, we removed the metacarpophalangeal (MCP) adduction/abduction (A/A) motion, also known as yaw, for the index and middle fingers. This decision was based on the premise that the dexterity required for in-hand manipulation can be sufficiently achieved without the MCP A/A motion in these fingers, provided that the thumb is equipped with an additional yaw motion. By eliminating the MCP A/A motion, we significantly reduced the complexity and size of the actuation mechanism for the index and middle fingers, leading to a more compact overall design. Since compliance less matters for thumb Roll and Yaw motion, we decided to use Dynamixel XL430-W250-T for those joint actuation.
We have changed our CAN device to PCAN devices to increase the performance of the real-time control loop of the PLATO2 Hand. We are testing the PCAN-USB FD and PCAN-PCIe FD devices. Although the USB-CAN adapter only supports a single CAN channel and is limited by the polling rate of the USB interface, it provides a easy-to-use interface for debugging and testing. And surprisingly, we were able to achieve real time impedance control at 500 Hz with PCAN-USB FD. Due to the single bus limit, the control loop was limited to 500 Hz maximum. However, the PCAN-PCIe FD device supports up to 4 CAN channels and can achieve 1 kHz control loop and allocate CAN bus for other sensors such as force-torque sensors and tactile sensors in the future.
We have implemented the hardware interface for the PLATO2 Hand using the ros2_control
framework. The hardware interface is responsible for reading the joint states (position, velocity, and effort) from the hardware and sending the joint commands to the hardware. ros2_control hardware interface brings the impedance controller and updates joint states and commands to the hand object which converts the joint states/commands to motor states/commands using five-bar linkage kinematics and motor position offsets and direction. Hand has 8 instances of actuator objects which have shared memory access to the PCAN interface to read and write CAN messages based on the given CAN protocol.
Since the hardware interfaces handle kinematic calculation and control of five-bar linkages. High level controller can assume that the fingers are open-chained without kinematic constraints.
Mass matrix term, bias term, and gravity term are calculated using pinocchio library, and these terms are fed as feed-forward torque. Stiffness K and damping D are determined by the joint PD cotnrol gains to achieve the desired impedance.
Using the pre-defined joint position (open/close) and impedance control, we can achieve various grasping strategies.
[1] Wensing, P.M., Wang, A., Seok, S., Otten, D.M., Lang, J.H., & Kim, S. (2017). Proprioceptive Actuator Design in the MIT Cheetah: Impact Mitigation and High-Bandwidth Physical Interaction for Dynamic Legged Robots. IEEE Transactions on Robotics, 33, 509-522.
[2] Bang, S.H., Gonzalez, C., Ahn, J., Paine, N., & Sentis, L. (2023). Control and evaluation of a humanoid robot with rolling contact joints on its lower body. Frontiers in Robotics and AI, 10.
[3] Hwangbo, J., Tsounis, V., Kolvenbach, H., & Hutter, M. (2018). Cable-Driven Actuation for Highly Dynamic Robotic Systems. 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 8543-8550.