All projects

02 · Controls and Data Analysis

Actuator Performance Analyzer

Independent Engineering Project · August 2026

A reproducible Python and MATLAB workflow that turns measured PID encoder data into step-response metrics and shows the tradeoff between integral gain, overshoot, and steady-state error.

10
measured steps
0.22%
minimum mean error
5
Ki settings
First measured positive step at each integral gain, compared with the 1,000-count setpoint.
First measured positive step at each integral gain, compared with the 1,000-count setpoint.
Measured gain tradeoff: integral action reduced steady-state error while increasing overshoot.
Measured gain tradeoff: integral action reduced steady-state error while increasing overshoot.

What

  • A repeatable analysis pipeline for measured responses from a two-degree-of-freedom torsional control apparatus.
  • Extends the original hardware tests with portable data, automated metrics, plots, tests, and a short engineering report.

How

  • Exported MATLAB measurements to CSV, isolated positive steps, and calculated overshoot, 2% settling time, steady-state error, RMS error, and control effort in Python.
  • Processed five PID files containing two positive steps each at about 1 kHz. Kp remained 0.204 and Kd remained 0.014 while Ki increased from 0.001 to 0.3.
  • Kept a separate 240-run simplified simulation and its stability classifier clearly separated from the measured hardware conclusions.

Results

  • Across ten measured steps, raising Ki from 0.001 to 0.3 reduced mean steady-state error from 38.4% to 0.22%.
  • The same gain change increased mean overshoot from 0% to 61.1%, making the controller tradeoff visible in the measured data.
  • Published the source code, derived results, plots, tests, and engineering brief in a standalone public repository.

Tools & methods

  • Python
  • MATLAB
  • NumPy
  • pandas
  • Matplotlib
  • PID control
  • Data analysis

Next project

Cantilever FEA Validation