*SOLVED* Recompiling genhexkins
Someone can read my kinematic file armkins.c and give me some advice?
Please Log in or Create an account to join the conversation.
module that I have written is not completly correct because when I switch on world mode the coordinates x and z drive crazy...
Someone can read my kinematic file armkins.c and give me some advice?
I might get time later, but I have previously looked at a similar kinematics and found it very helpful to set up a spreadsheet that performs the forwards then reverse calculations on a few positions, to see if the same numbers that went in come out again.
Please Log in or Create an account to join the conversation.
can you post a video showing the error etc
and what you expect to happen
Please Log in or Create an account to join the conversation.
You can me explain better what you mean? the values of the links of robot?where are you initializing your default values ?
can you post a video showing the error etc
and what you expect to happen
As soon as I switch on world mode, the values of x and z changing always and never stop. I do nothing, just change mode and I have this strange thing!
Please Log in or Create an account to join the conversation.
I might get time later, but I have previously looked at a similar kinematics and found it very helpful to set up a spreadsheet that performs the forwards then reverse calculations on a few positions, to see if the same numbers that went in come out again.
I have used standard formulas for the forwards and inverse kinematics. So, I think that they aren't the problem. But I haven't specified the possible singularities....this could be it? Or maybe there are something else?
Please Log in or Create an account to join the conversation.
andypugh wrote:
I have used standard formulas for the forwards and inverse kinematics. So, I think that they aren't the problem.?
It is often an issue with precision, where the forwards and inverse kinematics give ever so slightly different answers because of rounding.
It might also be that you have an expression that is being interpreted as an integer when it needs to be a float.
My first thought is that the PM_PI/180 and 180/PM_PI might be causing problems, try 180.0 to make it clear to the compiler that those are a floating-point value. posemath,h defines TO_DEG (180./PM_PI) and TO_RAD (PM_PI/180.) as constants, too, if you prefer. Note that it uses 180. rather than 180 to make is clear how the value is represented.
This is a "feature" of C.
The same is true for the 190 and 245 values (190 is a joint length, presumably, not a 180 that is wrong?)
Please Log in or Create an account to join the conversation.