Wenn man mir den Auftrag gäbe eine Software dafür zu entwickeln, würde ich fragen, ob ein PC per USB angeschlossen ist.
Falls ja, würde ich den Arduino-Code auf das Steuern der Gelenkwinkel beschränken. Diese Winkel würden über Serielle Schnittstelle übertragen.
Das Programm, das die Winkelberechnungen durchführt, würde ich mit Matlab oder falls nicht vorhanden Octave schreiben.
Es gibt dazu eine umfassende Bibliothek von Peter Corke, die wäre die Basis.