-
Notifications
You must be signed in to change notification settings - Fork 158
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
ROSPlan to Coppeliasim #299
Comments
Hi Erfan, Therefore, the tutorial removes the action interfaces to add new interfaces for the same actions that have an executor and can move the robot. If you follow the tutorial, all the necessary changes to the CMakelists and other files are detailed there. |
Hi Gerad,
|
Hi Gerad, My second question is: How I can extract the information of each action in my C++ file. Thank you for your help in advance, |
Hi Erfan, If the plan executes at the same moment, this means that all the actions start at the same time. This means your domain allows for it to happen, and you should fix it. Basically, it means there are no preconditions that prevent those actions to execute. If you look at the plan string, you will see the actions start at the same time. For the second question, the tutorial shows how to create an action interface. The action interface callback will receive the dispatcher message, and this message contains all the information for the dispatched action (name and grounded parameters). The duration and dispatch time parameters are also included in that message (ActionDispatch). The action executing will be the one that receives the message from the dispatcher, but you can also subscribe to the action_dispatch topic to see which actions are being dispatched and when. Regarding the rest, I am not sure what is a distention but where is the robot will depend on your implementation. You should be able to get the robot location from your move_base system and then you can try to find which is the closest waypoint to it. You can also look at the sensing interface where there are examples to achieve that. I am not sure what it means that there is a function embedded in the action, but all you need should be covered in the tutorials. If you need function values used on your domain, the Knowledge Base should have the updated values and you can query it as explained in the corresponding tutorials to get those values. Best, |
Dear Gerard, |
Hi Erfan, |
Hello, |
Hi Erfan, To specify action duration manually to a value X for each simulated action you can add the following parameter: Please try that in some actions to see if this changes the duration of the execution. |
Hello, |
Can you show the esterel graph as shown in tutorial 5? |
Hello,
|
Hi Erfan, This is not the esterel graph, this is the definition of the message. What I meant was to show the plot of the plan for the esterel dispatcher, as shown in the tutorials. |
Hello |
Is there any example for connecting ROSPlan to Gazebo? |
Is there any example for connecting ROSPlan to Gazebo? There is anything special to connect ROSPlan to Gazebo. The approach is the same as any connection to Gazebo from ROS, but you should call them inside ROSPlan actions instead of doing in a specific node. Therefore, you could check any ROS to Gazebo example, for example this. Let me do a brief explanation of how ROS to Gazebo connection is done. To connect them you should convert Gazebo topics and other of its mechanisms to ROS infrastructure. For doing that there are two approaches: (1) create a Gazebo plugin that convert Gazebo information to ROS, or (2) create a ROS node that reads Gazebo information using Gazebo infrastructure and converts it to ROS infrastructure: topics, services and actions. However, it could be possible that the plugins that you need are ready depending on what information you would like to use from Gazebo, see this repository. My experience is with Gazebo Classic version, so I don't know if this approach could be follow in new ones. |
Hello, Is there any example of connecting the ROSPlan actions to ros moveit motion planner? Thanks and regards, |
I don't know but it is not complex. In my case I use python so I do the connection using moveit_commander, see here an example. For a C++ example you could see here. Assuming that you are using C++, what you have to do is to implement a ROSPlan action of RPActionInterface and call MovetIt! inside the concreteCallback() method. And to know how to call MoveIt! you could check the tutorials above. |
Hello,
My goal is to develop a plan to run a simulation of a manipulator in Coppeliasim.
On this basis, I am following the tutorial_10. As you can see on tutorial_10, the two actions (undock , localise), are removed from the launch file.
If I add these two actions Would you please let me know what I should do with Action Interface and CmakeLists.txt?
How can I find the complete tutorial for my objective?
Thanks and regards,
Erfan
The text was updated successfully, but these errors were encountered: