File Descriptions - maro-michailidou/BME-Medical-Robotics-Team-A GitHub Wiki

MATLAB Scripts and Functions

  • check_valid_angles.m: Checks if the given joint angles are within the operational limits of the robotic finger. Performs validation check for all four angles, ensuring they are inside the valid ranges specified.

  • dynamics_torques.mlx: Calculates the torques symbolic expressions, using the forward transformation matrix and the Jacobian.

  • forward_kinematics.mlx: Computes the position and orientation of the robotic finger's end-effector given specific joint angles. Using a predetermined modified DH parameters table and a given transformation matrix between consecutive links, solves the forward kinematics problem for the 4DOF robotic finger for the three joints, for user-specified theta angles and phalanges lengths. Usually this script is used for verifying (sanity check) the results of the inverse kinematics script.

  • get_forward_transformation_matrix.m: Returns as symbolic expression the complete transformation matrix for a 4DOF robotic finger, for a predetermined modified DH parameters table and a given general transformation matrix between two consecutive links.

  • get_jacobian.m: Computes the Jacobian matrix, relating joint velocities to the end-effector's linear and angular velocities. Calculates and returns the jacobian matrix for the positions and angles of a 4DOF robotic finger's fingertip (end effector), which are the linear and angular velocities, depending on the passed argument 'option' ("linear" or "angular"). The positions of the fingertip are extracted from the total transformation matrix denotes as Q, which is passed as argument.

  • inverse_kinematics_equations.mlx: Derives and solves the inverse kinematics equations to calculate the joint angles required to reach a desired position and orientation of the end-effector. This script solves the inverse kinematics problem for a 4DOF robotic finger and calculates the angles of the four joints, using the closed-form equations derived from geometric analysis, given the fingertip's end position (x, y, z) and orientation (angle).

  • velocities.mlx: Given the transformation matrix (extracts position), this script forms the full Jacobian matrix and calculates the linear and angular velocities of the fingertip (of a 4DOF robotic finger), in symbolic expressions.