← Projects
Robotics · Controls · 2025

Tendon-Driven Robotic Finger

Built the actuation and control system for a backdrivable, four-DOF tendon-driven robotic finger with force control.

Research Tendon-driven robotic finger mounted on motor assembly

[Finger in Custom Motor Mount]

Motivation

Tendon-driven robotic fingers are central to dexterous design. By remotizing force, they can achieve human-like motions in a compact form factor. This is done by utilizing the space available lower in the hand or forearm to store more complex systems and larger motors. This REU project at the NSF Human AugmentatioN via Dexterity Engineering Research Center focused on building a finger that is not only position-controlled but also backdrivable, allowing compliant interaction with objects.

Approach

The finger uses an n+1 underactuated tendon routing scheme with a four-bar coupling on two of its flexion joints, giving it four degrees of freedom, or three independant degree of freedom. The proximal and medial joints form a four-bar linkage, approximated as linear for proximal angles up to ~70°. I was responsible for the full actuation and control pipeline:

  • Built the control system around four ODrive Pro motor controllers driving Maxon ECX Torque XL motors with AS5147 magnetic encoders, communicating over CAN bus via a Teensy 4.1
  • Implemented PID and gravity feedforward control using center-of-mass data from OnShape, with torque balancing and motor torques bounded between 5–25 mNm to manage heating
  • Used motor torques and Jacobians to drive the finger to commanded joint positions
  • Designed and fabricated custom motor mounts in OnShape
  • Managed CAN bus wiring (twisted pairs, 120 Ω terminators, common ground) and debugged signal integrity with an oscilloscope
  • Wired and soldered the full electronics system
  • Built a Python serial UI (Tkinter/Matplotlib) for real-time monitoring, PID tuning, and control
Four-bar coupling mathematical model

[Four-bar coupling mathematical model]

Finger control mathematical model

[Finger control derivation]

Outcome

The completed finger achieves reliable position tracking across its four degrees of freedom while maintaining backdrivability, meaning external forces can move the joints without damaging the mechanism. The combination of feedforward compensation and PID feedback proved effective for managing the nonlinear tendon-joint coupling common in underactuated designs.

Notably, this project was limited by the hardware and time available. The Maxon motors were ungeared, allowing for high mechanical backdrivabiliity, but required the motors to generate large amounts of heat, and have a larger footprint to deliver the torque required. The heat generated was enough to soften the PLA mounts, causing the calibrations to drift. In addition, the open source ODrive code frequently encountered errors or calibration drifts, complicating testing. Future recomendations include eximining options for the motors, motor controllers, and mount material. Additionally, the program should be optimized to reduce run time and increase frequency of the controller updates.

Read more on the GitHub page linked below.

← All projects View on GitHub →