Comments (12)
Does this really work in the Gazebo simulation? It works with the mimic tag on Rviz but it doesn't on Gazebo for me.
Ryan
from urdfdom.
Yes it would be awesome to have mimic joins that support non-linear relationship, in most of the applications, it is nonlinear.
👍 for this feature
from urdfdom.
Does this really work in the Gazebo simulation? It works with the mimic tag on Rviz but it doesn't on Gazebo for me.
Ryan
https://github.com/roboticsgroup/roboticsgroup_gazebo_plugins
This repo has a gazebo plugin that you can use for mimic joints in gazebo. I had commented on this issue to see if I can get it merged into gazebo_ros_pkgs; no response.
from urdfdom.
May I ask if URDF has realized this function?
from urdfdom.
May I ask if URDF has realized this function?
If you really need it, I had done something to add parsing non linear functions with numexpr
in the joint_state_publisher
, https://github.com/torydebra/joint_state_publisher/tree/kinetic-devel-rosee
where you can add non linear relationship like:
<mimic joint="motor_thumb" nlFunPos="0.3378*x^4 + -1.179*x^3 + 1.103*x^2 + 0.7363*x + 0.01468"/>
from urdfdom.
May I ask if URDF has realized this function?
If you really need it, I had done something to add parsing non linear functions with
numexpr
in thejoint_state_publisher
, https://github.com/torydebra/joint_state_publisher/tree/kinetic-devel-roseewhere you can add non linear relationship like:
<mimic joint="motor_thumb" nlFunPos="0.3378*x^4 + -1.179*x^3 + 1.103*x^2 + 0.7363*x + 0.01468"/>
Thank you very much. This has been very useful for my work.
Also, I would like to ask if using your modified JointStatePublisher can adapt to MoveIt Setup Assistant.Or it can only be used in the GUI demo.
from urdfdom.
Sorry but I do not know if moveit setup assistant use the joint state publisher and how, by the way the addition I made is just a simple parsing and probably can be added anywhere (torydebra/joint_state_publisher@9767eab)
Just come in my mind that I also had forked the roboticsgroup_gazebo_plugins linked above to accept these non linear relationship as well:
https://github.com/torydebra/roboticsgroup_gazebo_plugins/tree/devel-rosee
from urdfdom.
I believe it might work, because MoveIt uses the topic /joint_states
to update the state of the robot. As this is solved by @torydebra's joint state publisher, I think it should be fine.
from urdfdom.
Sorry but I do not know if moveit setup assistant use the joint state publisher and how, by the way the addition I made is just a simple parsing and probably can be added anywhere (torydebra/joint_state_publisher@9767eab)
Just come in my mind that I also had forked the roboticsgroup_gazebo_plugins linked above to accept these non linear relationship as well: https://github.com/torydebra/roboticsgroup_gazebo_plugins/tree/devel-rosee
Well, if it can be used in gazebo, moveit should also be adapted. Thank you very much for your solution.
from urdfdom.
I believe it might work, because MoveIt uses the topic
/joint_states
to update the state of the robot. As this is solved by @torydebra's joint state publisher, I think it should be fine.
Updating the robot state is certainly possible, and this is already implemented in the repository of @torydebra .
My question is whether it isadapted by other plugins of moveit, such as kinematics solvers, motion planning, etc. Does the plugins take into account the added non-linear relationships.
from urdfdom.
My question is whether it isadapted by other plugins of moveit, such as kinematics solvers, motion planning, etc. Does the plugins take into account the added non-linear relationships.
There are more limitations in that area. May be it's not possible if you have closed linkages.On the other hand, It is certainly possible to set passive joints in the MoveIt configuration. Try it out. Moreover, the MoveIt specific thing has nothing to do with the changes in this repository. In case it doesn't work, open an issue in MoveIt repository.
Good luck
from urdfdom.
My question is whether it isadapted by other plugins of moveit, such as kinematics solvers, motion planning, etc. Does the plugins take into account the added non-linear relationships.
There are more limitations in that area. May be it's not possible if you have closed linkages.On the other hand, It is certainly possible to set passive joints in the MoveIt configuration. Try it out. Moreover, the MoveIt specific thing has nothing to do with the changes in this repository. In case it doesn't work, open an issue in MoveIt repository.
Good luck
☺️
Thank you for your reply. I will give it a try.
This does not seem to be an easy task, as multiple plugins in the moveit need to be modified.
Also I'll do some more investigation into other tech routes, maybe moveit isn't the best fit for me. 🤣
from urdfdom.
Related Issues (20)
- Using wrong headers HOT 2
- Deprecation warning on urdfdom_parser with Clang HOT 2
- check_urdf: no loop detection
- Branch urdfdom for Galactic HOT 5
- Usage of `version` attribute in `robot` xml-node HOT 2
- [cmake] urdf_LIBRARIES is still wrong HOT 2
- Feature request: check_urdf should be able to read from std_in HOT 2
- parseJointLimits() does not parse acceleration limits
- Joint limits (vel, effort) are checked even when the joint is continuous type.
- Build Status link in README.md is broken HOT 2
- Use tinyxml2 instead of tinyxml HOT 3
- Remove tinyxml2 from public API HOT 2
- Cannot parse capsule error HOT 1
- Fixed joints parse limits but not axis
- Add support for quaternion in URDF HOT 3
- Removing console_bridge for Logging HOT 4
- support export URDF HOT 1
- Don't use (outdated) self-provided gtest version (especially if another version is installed already) HOT 7
- libtinyxml absolute path in the cmake export target files HOT 1
- CMake 3.30: urdfdom_parser fails to build HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from urdfdom.