New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support for Katana300 with old firmware #6
Comments
This seems to be caused by the fact that the old firmware on the Katana300 isn't fully compatible with the version of the KNI that we're using, and it doesn't support following spline trajectories via The story so far:
What (I think that) the commits do
What you can do to help If you own a Katana 300 6m180 and would like to get it working with katana_driver, please do the following:
Since the Katana we have is a 450 6m90A, this is the only way for me to debug this. NB: I've also extracted all other changes from fivef/katana_driver and sorted them into the following branches, all for Groovy right now. Should not be relevant here, just listing them for completenesses sake.
|
Hi! I managed to rosmake the groovy_katana300 with some difficulties. For one ar_pose can not be found and I don't know how to install it.
More testing: I ran speedTest(), everything worked. After the end of speed test the Katana was not left in home position. I re-ran the client trajectory and the Katana moved to the home position quite nicely (multiple motors moved at the same time), however after it got to the home position the same error was displayed.
Now I chaged the console to display debug messages, no other changes were made. I ran clien trajectory and the error doesn't appear. But the Katana doesn't move besides a small twitch (for a second). It is supposed to move as it moves in the simulation, right? Motor status is all 8.
|
Hi @JakaCikac,
That's only required by About the MotorTimeoutException: I can't really help a lot, because I don't have a Katana 300 for testing. So it's more or less up to you guys to find a solution. But I guess this could be fixed by making sure that the https://github.com/mintar/katana_driver/blob/groovy_katana300/katana/src/Katana300.cpp#L250 The idea of |
I am no longer getting this error, I am not able to reproduce it. I don't know why it happened before. Meanwhile @mintar : Do you have any ideas about no movement when executing trajectory? The weirdest part is that the Katana is able to "trajectory"-itself into home position using multiple motors at once but after it's in home position there is no movement. Also, the nodes print out as if trajectory is successful despite the fact that it wasn't.
To further explain what happens, I took two videos. Is there any documentation for the Katana 300 available online or offline? I haven't been able to find it. I am completely lost when it comes to KNI, because I have nowhere to look for explanation. |
Hey all, I'll answer inline directly to the individual commits. 2014-01-24 Martin Günther notifications@github.com:
The solution with moveToEnc() worked reasonably for fivef with his MoveIt
Correct, very smooth but also very risky. This was a dirty hack for a very
This did belong to the same use case as above.
I don't remember exactly why I commented out this line in allMotorsReady,
For my trajectories (generated by a Learning from Demonstration node and I have had the MotorTimeoutExceptions also several times but don't know Greetings Benny |
Thanks @BennyRe for the heads up! I like the |
@JakaCikac wrote:
Yes, that's weird. Can you try @BennyRe's branch instead (see my last comment)?
Unfortunately, I don't have any (I'd be grateful for anything other people might have!). All I have is pretty specific to our Katana 450 6M90A. I've uploaded everything I scraped off the Neuronics website before it went offline here. |
Hi! I am happy to report that @BennyRe 's branch works! The katana executes the movement as it should, when launching client trajectory. I will do further testing but so far everything seems to work. @mintar Thank you for sharing those files, I hope they will help for further work with katana 300, despite the fact that it's for katana 450. |
@JakaCikac: That's great! I've just sorted through the code there and created a nice and tidy branch that should have everything we need: groovy_katana300_v2 Can you test that branch? If it works for you, I'll merge it into the official katana_driver repo. |
@mintar Tested. It works nicely. Teleoperation with keyboard also works.
|
This implementation is based on kni->sendSplineToMotor(), which is supported by the Katana 300 (in contrast to the setAndStartPolyMovement() used with the Katana450). closes #6 original author: Benjamin Reiner <reinerbe@hs-weingarten.de>
This implementation is based on kni->sendSplineToMotor(), which is supported by the Katana 300 (in contrast to the setAndStartPolyMovement() used with the Katana450). closes #6 original author: Benjamin Reiner <reinerbe@hs-weingarten.de>
Great! I've pushed the solution in (P.S.: This means that the mintar/*_katana300 branches shouldn't be used any more and will be deleted in the future.) |
Several people have had problems with executing trajectories on a Katana 300 6m180 with an old firmware. The error log looks similar to this:
It fails in the
kni->setAndStartPolyMovement()
call, atjoint_trajectory_action_controller.cpp
. (See e.g. this answers.ros.org post ).The text was updated successfully, but these errors were encountered: