ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

3473f's profile - activity

2022-05-20 09:28:53 -0500 received badge  Famous Question (source)
2022-03-25 05:00:44 -0500 received badge  Taxonomist
2022-03-19 08:08:10 -0500 received badge  Notable Question (source)
2021-12-10 22:46:22 -0500 commented question How to use the gmapping SLAM Algorithm correctly?

Gmapping works by estimating the transform map -> odom. This is used to correct the error in the odom->base_link t

2021-12-10 04:22:30 -0500 commented answer How to merge two LaserScans to one LaserScan with different frame_ids

Which algorithm are you using? Most algorithms will allow you to set the reference frame as a parameter in the launch fi

2021-12-09 06:54:23 -0500 commented answer How to merge two LaserScans to one LaserScan with different frame_ids

why don't you create a new frame at the mid-point between the two laser scanners and use it as a reference for the merge

2021-12-09 05:30:18 -0500 answered a question How to merge two LaserScans to one LaserScan with different frame_ids

This can be achieved using the Laserscan_merger from the ira_laser_tools package. This will allow you to merge the two s

2021-12-09 05:30:18 -0500 received badge  Rapid Responder (source)
2021-12-07 05:18:44 -0500 received badge  Popular Question (source)
2021-11-22 03:41:41 -0500 commented question Mapping in slam_toolbox using bag files (ros2)

The fact that slam_toolbox wouldn't integrate this functionality as it is useless totally flew over my head. Glad you ma

2021-11-22 03:41:41 -0500 received badge  Commentator
2021-11-21 20:53:47 -0500 commented question Mapping in slam_toolbox using bag files (ros2)

I interpret from the above image, that slam_toolbox is publishing the map->odom transformation with the curr

2021-11-21 20:51:14 -0500 commented question Mapping in slam_toolbox using bag files (ros2)

I interpret from the above image, that slam_toolbox is publishing the map->odom transformation with the curr

2021-11-21 05:17:10 -0500 received badge  Enthusiast
2021-11-20 13:45:45 -0500 answered a question turtlebot2,gazebo and 3D SLAM

I am basing my answer on this turtlebot repo and this RGBDSLAMv2 repo. All you need to do is to subscribe to the rgb an

2021-11-20 13:25:23 -0500 commented answer What difference between SLAM locating and AMCL locating

@wyfeng2013 that's corrent. restarting your SLAM algorithm will start mapping from the beginning. Yes, I was referring t

2021-11-20 13:25:07 -0500 commented answer What difference between SLAM locating and AMCL locating

@wyfeng2013 that's corrent. restarting your SLAM algorithm will start mapping from the beginning. Yes, I was referring t

2021-11-20 03:25:44 -0500 commented answer What difference between SLAM locating and AMCL locating

A SLAM algorithm will keep updating its map until you kill the node. The saved map (using the map server) can later be u

2021-11-20 02:40:04 -0500 answered a question What difference between SLAM locating and AMCL locating

SLAM is simultaneously localizing and creating a map of the environment. AMCL is localizing based on a prior map. Moving

2021-11-20 02:40:04 -0500 received badge  Rapid Responder (source)
2021-11-19 07:56:01 -0500 commented question Transformation from A to B frame problems

Can you share your rqt_tf_tree output, code for transformation as well as the visualization in rviz?

2021-11-19 07:55:33 -0500 commented question Transformation from A to B frame problems

Can you share your rqt_tf_tree output as well as the visualization in rviz?

2021-11-19 07:31:10 -0500 commented question turtlebot2,gazebo and 3D SLAM

Do you have your simulation up an running with the rgb-d camera mounted to the robot?

2021-11-19 06:25:29 -0500 commented question turtlebot2,gazebo and 3D SLAM

If you have the robot up and running in gazebo, you can subscribe to the camera topic in your SLAM node and it will work

2021-11-18 18:11:09 -0500 received badge  Supporter (source)
2021-11-17 14:10:09 -0500 edited answer convert std_msgs/Time to float

You can access the individual members of the time data structure and convert the result into seconds as follows time_se

2021-11-17 14:09:45 -0500 received badge  Rapid Responder (source)
2021-11-17 14:09:45 -0500 answered a question convert std_msgs/Time to float

You can access the individual members of the time data structure and convert the result into seconds as follows time_se

2021-11-17 13:59:09 -0500 answered a question Setting up odometry on physical bot

Depends on the robot's kinematics. For a differential drive robot model, the odometry frame should be set at the mid poi

2021-11-17 13:59:09 -0500 received badge  Rapid Responder (source)
2021-11-17 09:04:16 -0500 marked best answer [Gazebo] child link "base_link" not found (World -> UR5)

I am working on a Gazebo simulation of a UR5 with a Robotiq 2f gripper (ROS Melodic + Ubuntu 18.04) and created my xacro file by loading the ur5 description, creating a world link and attaching the world link to the base_link of the robot as follows:

<?xml version="1.0" ?>
<robot name="ur5_2f85" xmlns:xacro="http://ros.org/wiki/xacro">
<xacro:arg name="kinematics_config" default="$(find ur_description)/config/ur5/default_kinematics.yaml"/>

<!-- ROBOT -->
<xacro:include filename="$(find ur_description)/urdf/common.gazebo.xacro"/>
<xacro:include filename="$(find ur_description)/urdf/ur5.urdf.xacro"/>
<xacro:ur5_robot prefix="" joint_limited="true"/>

<!-- WORLD -->
<link name="world"/>

<joint name="world_joint" type="fixed">
    <parent link="world"/>
    <child link="base_link"/>
    <origin xyz="0 0 0" rpy="0 0 0"/>
</joint>

<!-- GRIPPER COUPLING -->
<xacro:include filename="$(find ur5_description)/urdf/common/2f_coupling.urdf.xacro"/>
<xacro:coupling_robotiq_2f prefix="" parent="tool0">
    <origin xyz="0 0 -0.0045" rpy="0 0 -1.5708"/>
</xacro:coupling_robotiq_2f>

<!-- GRIPPER -->
<xacro:include filename="$(find robotiq_85_description)/urdf/robotiq_85_gripper.urdf.xacro"/>
<xacro:robotiq_85_gripper prefix="" parent="coupling_gripper_fix">
    <origin xyz="0 0 0" rpy="0 -1.5708 0"/>
</xacro:robotiq_85_gripper>

<link name="tcp"/>

<joint name="tcp_to_gripper" type="fixed">
    <parent link="tool0"/>
    <child link="tcp"/>
    <origin xyz="0 0 0.19" rpy="0 0 0"/>
</joint>

<!-- GAZEBO -->
<gazebo>
        <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">
            <robotNamespace>/</robotNamespace>
            <robotSimType>gazebo_ros_control/DefaultRobotHWSim</robotSimType>
        </plugin>
</gazebo>

</robot>

I then used moveit to create custom configuration and whenever I try to launch the gazebo simulation (gazebo.launch) I get the following error:

Failed to build tree: parent link [tool0] of joint [tcp_to_gripper] not found.  This is not valid according to the URDF spec. Every link you refer to from a joint needs to be explicitly defined in the robot description. To fix this problem you can either remove this joint [tcp_to_gripper] from your urdf file, or add "<link name="tool0" />" to your urdf file.

I tried removing the tcp link and rerunning the configuration, but again I end up with another error connecting to the robot itself:

Failed to build tree: child link [base_link] of joint [world_to_robot] not found.

In order to debug this problem, I checked my xacro file with the check_urdf command and the result looks fine

 name is: ur5_2f85
---------- Successfully Parsed XML ---------------
root Link: world has 1 child(ren)
    child(1):  base_link
        child(1):  base
        child(2):  shoulder_link
            child(1):  upper_arm_link
                child(1):  forearm_link
                    child(1):  wrist_1_link
                        child(1):  wrist_2_link
                            child(1):  wrist_3_link
                                child(1):  ee_link
                                child(2):  tool0
                                    child(1):  2f_coupling
                                        child(1):  coupling_gripper_fix
                                            child(1):  gripper_base_link
                                                child(1):  gripper_finger1_inner_knuckle_link
                                                    child(1):  gripper_finger1_finger_tip_link
                                                child(2):  gripper_finger1_knuckle_link
                                                    child(1):  gripper_finger1_finger_link
                                                child(3):  gripper_finger2_inner_knuckle_link
                                                    child(1):  gripper_finger2_finger_tip_link
                                                child(4):  gripper_finger2_knuckle_link
                                                    child(1):  gripper_finger2_finger_link
                                    child(2):  tcp

Finally, I ran rviz and the robot is correctly visualized and fully controllable

image description

Any leads on how to ... (more)

2021-11-17 09:04:16 -0500 received badge  Scholar (source)
2021-11-17 09:00:43 -0500 received badge  Self-Learner (source)
2021-11-17 09:00:43 -0500 received badge  Teacher (source)
2021-11-17 09:00:10 -0500 received badge  Student (source)
2021-11-17 08:33:19 -0500 commented answer [Gazebo] child link "base_link" not found (World -> UR5)

Thank you for your help! you definitely pushed me to disect my xacro file a bit more. :) I cannot accept my own answer a

2021-11-17 05:30:46 -0500 answered a question [Gazebo] child link "base_link" not found (World -> UR5)

So I figured out the problem in case anyone is facing the same issue. Inside the launch file genereated by moveit I had

2021-11-17 05:30:46 -0500 received badge  Rapid Responder (source)
2021-11-17 05:21:23 -0500 commented question [Gazebo] child link "base_link" not found (World -> UR5)

Doesn't seem to be the problem. I stripped down my model and only kept this part <xacro:include filename="$(find ur_

2021-11-17 05:20:42 -0500 commented question [Gazebo] child link "base_link" not found (World -> UR5)

Doesn't seem to be the problem. I stripped down my model and only kept this part <xacro:include filename="$(find ur_

2021-11-17 02:23:25 -0500 commented question [Gazebo] child link "base_link" not found (World -> UR5)

I had a look through the source code and it seems he is calling ur_upload.launch to spawn the robot which in turn is cal

2021-11-16 19:15:55 -0500 asked a question [Gazebo] child link "base_link" not found (World -> UR5)

[Gazebo] child link "base_link" not found (World -> UR5) I am working on a Gazebo simulation of a UR5 with a Robotiq

2021-11-16 11:51:36 -0500 received badge  Rapid Responder (source)