Alexey Ivanov

## 815 Reputation

8 years, 258 days
Russian Federation

## All tasks directly in Maple...

I think that the whole complex of tasks related to the solution of the manipulator's inverse problem can be performed directly in Maple. It will be faster and even more convenient than in specialized CAD. Some known schemes of manipulators are ready for testing; it remains only to perform the formalities associated with the recording of control programs.

Because:
1,  It is clear how to make a mathematical model of a manipulator. And for this there are several examples.
2.  The problem of finding the starting points of motion is conveniently to perform using Maple graphics  and with solve or fsolve functions, for example, in a separate program.
3.  The solution of the direct problem is simply routine programming.

Of course, I may be wrong, but for some reason it so seems to me.

## Check the number of branches of the curv...

@rlewis  for example  CURVES.mw  Number of system solutions = 2

## It is necessary to solve the system of e...

First we need to finding all the branches of the curve. To do this, we must solve this system of equations for only one t when 0< t <4.

## Just other examples of the inverse probl...

To avoid ambiguity in motion, we impose additional restrictions on the points of the manipulator, thereby reducing the number of degrees of freedom to one.

3d three-link manipulator with four degrees of freedom.  Movement in a spiral.
MAN_4S.mw

An example of an inverse problem for the 3d two-link manipulator with four degrees of freedom. The movement occurs along a straight line between the red and green points. The fourth degree of freedom is formed due to the possibility of the first link to move along the axis oX1 (oX).
The angles of the first link with respect to the coordinate axes are printed by numbers, the angle between the links is represented by an arc, and the change in x1 is simply visible.
Any movement of the extreme point of the manipulator can be specified by a finite set of motions along straight lines, which means that on the basis of such a mathematical model it is possible to calculate any working trajectories.

The inverse problem for a four-link manipulator with five degrees of freedom.

## solution and picture...

@herclau  If you want a solution for your system of equations, it is very simple, for example:
sistema9_2.mw

If you want to get this picture, then I can tell you where to look for the author, this is the participant  of  https://en.smath.info/forum/  uni.  Believe me, this drawing does not have any relation to the method of Draghilev. It's just a uni's  fantasy.
For example:
picture_of_uni.mw

## By the way,...

this manipulator can not connect points from the first post (here these points are blue) in a straight line. The technical data of the manipulator and its position allow to reach only the black point.

## Thank you...

@tomleslie  Thank you very much for your explanations.

## corrections...

@Ronan  I'm sorry if something does not work, it's actually a working code. I think you already used the changes from
I had hoped that all will be clear by a preliminary description.
As for the explanations, they are most likely here
https://www.maplesoft.com/applications/view.aspx?SID=154228

Such explanations are difficult for me to insert into the code.

Text with corrections

MAN_2.mw

## If I understood correctly, then...

@David1 one (first) line, if it is rotated, can cross another fixed line in an infinite number of points. Because the first line has two degrees of freedom, and the intersection point of the lines has one degree of freedom. Then your system of equations must have two free variables.
The task is to calculate the manipulator?

@David1
You acknowledge that your variables are the angles of rotation, these angles are only three, then the variable is not 15, but 9.
Look at the definition of what is called a polynomial system of equations. It does not depend on our desire.

I think it would be great to show colleagues your whole task.

## What is "a weary road"?...

@fereydoon_shekofte  Sorry, I know English worse than I know Maple.

## Tangent cube...

A small addition to the text, and we have a tangent cube.
One face of the cube belongs to the tangent plane.

Tangent_cube.mw

## Also works....

Thank you, Yuri Nikolaevich, r: = sqrt (add (d [i] ^ 2, i = 1..nops (d))) is already available to my understanding.

## Many thanks...

@vv
r: = sqrt (`+` (`~` [`^`] (d, 2) [])); Instead of r: = sqrt (add (`~` [`^`] (d, 2))); ?
(I'll never understand this.)
Many thanks, now everything works.

## What's wrong?...

I do not know how to use the "proc" function. I wanted, at least formally, to master this function also for another task.
But your  text is reproduced with an error. (My max available version is Maple 17)