[MoveIt!] Help converting the World Coordinates to Joint Coordinates
Hello Everyone,
I have a query regarding implementing a Hardware Interface for Toshiba TH650 SCARA. I am looking to provide the Robot Trajectory points through ROS MoveIt! and have already made the packages for that.
I went through the link which is a good introduction to writing a Hardware Interface and I understand most of it.
The article in very clear terms states that, "In this case, your robot should provide the standard JointPositionInterface
and the JointStateInterface
, so it can re-use all controllers that are already written to work with the JointPositionInterface
and the JointStateInterface
"
Unfortunately, the Robot I am working on cannot provide me the feedback required for the 'JointStateInterface' in terms of the Joint Coordinates. It can only give me a feedback in terms of the World Co-ordinates.
I was doing some digging in and I found about the IKFast Plugin through this post
Can I somehow use the IKFast Plugin to solve my problem ? Kindly Note, mine is a 4 DOF Robot
If not this, could someone please guide me through if there are any other Plugins already present in ROS, or in MoveIt! which I could use to convert the World Coordinates to the Joint Coordinates as then it is pointless proceeding with work on the Hardware Interface.
Any help would be deeply appreciated,
Thanks in advance
Asked by Jalashwa on 2017-08-30 13:28:05 UTC
Comments
What do you mean it can only give you a reference in terms of world coordinates? More particularly, what exactly is the robot giving you feedback for?
Asked by malcolmwatt on 2017-08-30 13:45:44 UTC
Most likely that the robot controller does not provide access to joint angles for the individual axes.
@Jalashwa: how are you currently interfacing with the controller? Can you link us to a programming manual? Most industrial robot ctrlrs are alike, and not having joint space joint angles ..
Asked by gvdhoorn on 2017-08-30 13:49:23 UTC
.. is rather rare. It is typically the lowest level of control that is offered.
Asked by gvdhoorn on 2017-08-30 13:49:46 UTC
@gvdhoorn: PFA the Github link to get the files I have. This particular Robot is a very old one. It doesn't provide the Joint States feedback,as told to me by me Colleague.
Could there be aother way to transform the world to Joint coordinates? TY
Asked by Jalashwa on 2017-08-30 15:31:16 UTC
@malcolmwatt: I need the joint states feedback so that the Joint Trajectory Action Controller can use the data for actuating the Robot
Asked by Jalashwa on 2017-08-30 15:32:23 UTC
I don't know anything about these robots, or how fast you could get this data, but
STE71289.pdf
, section 4.3.3 (Details of Commands) under the File subsection, and then5-III
(Current Value) mentions "Joint coordinate value" (4 *float
). That would seem to be joint states.Asked by gvdhoorn on 2017-08-31 01:18:39 UTC
Seeing as the maximum baudrate for your controller is 38400, it's not going to be fast in any case most likely.
Asked by gvdhoorn on 2017-08-31 01:20:01 UTC
@gvdhoorn: Thanks for your input :) I have also written to Toshiba Machine about this issue. In the meanwhile, any workaround that comes to your mind to mitigate this problem ?
Writing an Hardware Interface is pointless if this problem can't be solved
Asked by Jalashwa on 2017-08-31 04:09:00 UTC
Have you tried accessing the "Joint coordinate value" that is mentioned in the manual? I would just experiment a bit first before concluding that it's not useful.
Asked by gvdhoorn on 2017-08-31 04:10:21 UTC
Yes, I have taken a note of that. I need to discuss it with my Supervisor before I can procced with it. For the moment he is convinced that I won't get the data I am looking for.
Asked by Jalashwa on 2017-08-31 04:14:00 UTC