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

Revision history [back]

click to hide/show revision 1
initial version

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot A robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo Now to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor I cannot help you with the temperature simulation, because I don't have used a sensor in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

Have fun,

Chris

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot A robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo Now to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor I cannot help you with the temperature simulation, because I don't have used a sensor in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

Have I hope I covered your basic questions,

have fun,

Chris

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot

A robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo

Now to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor

I cannot help you with the temperature simulation, because I don't have used a sensor in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

I hope I covered your basic questions,

have fun,

Chris

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot

A virtual robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo

Now to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor

I cannot help you with the temperature simulation, because I don't have used a sensor in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

I hope I covered your basic questions,

have fun,

Chris

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot

A virtual robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo

Now Now, to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor

I cannot help you with the temperature simulation, because I don't have used a sensor in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

I hope I covered your basic questions,

have fun,

Chris

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot

A virtual robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo

Now, to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor

I cannot help you with the temperature simulation, because I don't have used a sensor like that in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

I hope I covered your basic questions,

have fun,

Chris

Ok, I will try to answer your question even if it is too general and I have not used the ready robots you see in the wiki page. I will focus my general explanation on Husky.

The robot

A virtual robot in ROS is the represantation of a urdf code. A structural code in other words, that describes the features of the robot (shapes, connections between the different shapes, mass, other enviromental factors like friction etc). When you want to simulate a robot in gazebo you upload this code in a parameter server which stores all these features and uses them to create your simulation. You can create a robot of your own by following this tutorial. You can find more links and tutorials on your own, but this is the basic tutorial page provided by ROS - read this page even if you don't create your own model to understand how to setup your filesystem and the general features provided.

Now, if you don't want to create a robot of your own and use a ready model, for example Husky, you need to find the description of Husky, which can be found here. In the file husky_custom_description you can find a urdf file which contains the robot structural code - the team that created the robot used a program like meshlab and generated the code from meshes ( the .dae files represent that) to implement difficult shapes - you can add your own elements (other sensors for example) in this structure with joints to the base platform. In the husky_gazebo folder you will find a code written using <gazebo> tags. These tags must always be included in your description because they define some gazebo elements (elements necessary for the gazebo world like a controller for example). As you can see the husky_gazebo is based on the structural code from the husky_description. They seperated the directories for better organization of the project.

Gazebo

Now, to run your robot in gazebo, you need to create a launch file like one described here - I would again suggest to read the tutorials here even if you don't have your own custom robot. To run Husky in gazebo, simply follow this link's instructions. By uploading your urdf to gazebo, the gazebo translates the urdf to sdf and puts it in a world (here the empty_world is used) that you can modify.

As I saw the husky project uses <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">, which will allow you to use all that you read (nodes, topics etc). Simply after you start the simulation, check what topics are being used (published/subscribed by the gazebo node). The gazebo node in a real robot will be your device's driver node. With the data used you can implement almost anything without even having a robot.

Temperature Sensor

I cannot help you with the temperature simulation, because I don't have never used a sensor like that in gazebo, I don't know if this exists. You can buy a sensor though (they are pretty cheap), record data in a rosbag file and use this file to generate this data in your virtual environment. Here is one example and here on how to implement measuring temperature using arduino in ros.

I hope I covered your basic questions,

have fun,

Chris