element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Robotics
  • Technologies
  • More
Robotics
Blog Building a Robot! (Simulated)
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Robotics to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: shabaz
  • Date Created: 12 Nov 2015 6:33 PM Date Created
  • Views 2718 views
  • Likes 9 likes
  • Comments 24 comments
  • simulation
  • robotics
  • gazebo
Related
Recommended

Building a Robot! (Simulated)

shabaz
shabaz
12 Nov 2015

After having built a couple of small wheeled platforms (a crude attempt called XMP-1 and a slightly better one called XMP-2) I was curious what simulation tools were out there specifically geared toward robotics design.

This is just a quick summary of one of the simulation tools that are available, called Gazebo.

 

Gazebo was incredibly easy to get going – a single command line will install it onto Linux, and when run it is easy to add bits and pieces from the toolbar and get going.

I’ve yet to work through the tutorials but I’m hoping to eventually simulate XMP-2 so I can write better code easily.

 

Here is a screenshot of Gazebo, and a quick video showing some basic physics, pushing the robot into coke cans.

image

 

Video:

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

More complex movements are possible too. Here is a robot gripper with torque being applied to part of it:

image

Video:

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

The simulation includes gravity and friction and many attributes are configurable.

The models can be created in XML files, and the tutorials look comprehensive.

The example below from a tutorial shows a snippet of a robot, where a box-shaped chassis is needed. The <pose> element contains the position (xyz, and orientation in three dimensions). The <collision> and <geometry> elements contain a <box> element which defines a box of size 0.4x0.2x0.1m in this example.

Usually they are the same; one element is used for the graphics, and the other is for the collision-detection algorithm to use.

image

 

The simulation can be connected up to real hardware or software through the use of an application programming interface (API), so it is possible to test robotics software before you've built the hardware, or you can interface your sensors and start programming movements.

It all looks extremely interesting!

Check out the second part by clicking here, which goes into detail about how to construct a model (based on a real hardware robot called XMP-2) and how to control it using external stimulus.

  • Sign in to reply

Top Comments

  • DAB
    DAB over 10 years ago +1
    I agree. I was not aware that Gazebo existed, but it definitely looks interesting to look at mechanical designs. I will add it to my list of tools to check out. Thanks, DAB
  • shabaz
    shabaz over 10 years ago +1
    Hi Shabaz! Really, thank you to point on this. It seems very good. At the moment I am working on the following "robotizations" Camera slider with controller and horizontal programmable movement; camera…
  • balearicdynamics
    balearicdynamics over 10 years ago in reply to shabaz +1
    Hello Shabaz! Many thanks for the update. In the meantime I am installing the software that is really intriguing. I'm going to try and understand how to produce a simple single mechanical movement or linkage…
  • shabaz
    shabaz over 9 years ago in reply to balearicdynamics

    Hi Enrico!

    I tried getting the API to work, so it could be possible to connect to external hardware to move the robot simulation. It did function, but I did not get around to connecting to external hardware so instead I just modified the code so that it would check a file, and if the file had been modified the robot simulation would act on the instructions in the file and move the robot in the simulation forward. This worked well, so it would be straightforward to have code that would read from real hardware and write an instruction to the file.

    The video in the blog post shows the file method, it was a very basic demo though just to see if this could work.

     

    It is nice that the Gazebo software automatically takes control of all the physics, i.e. mass, forces etc provided the model contains these, so in theory it should show if motors etc are powerful enough, and the effect of (say) accelerating towards an object to push it away, compared to being close to the object and then trying to push it, etc.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • balearicdynamics
    balearicdynamics over 9 years ago

    Hey Shabaz! Am I wrong or this is not the first time you work on this platform? In past (when I read the first article) I remember I installed it and explored the power of this tool. Now something has changed in software of the it is remained always the same?

    Enrico

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • shabaz
    shabaz over 10 years ago in reply to dpushkashu

    Hi Dumitru,

     

    Excellent, thanks for for providing the feedback!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • dpushkashu
    dpushkashu over 10 years ago

    Just installed Gazebo v 6.1. All works fine. Thanks.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • balearicdynamics
    balearicdynamics over 10 years ago in reply to shabaz

    Hi Shabaz!

     

    We should keep this post alive...

     

    The project I am working on are also partially work, so I will use it asap. What I should explore is if the program can accept external cad drawings in some formats. Not essential but useful in some cases.

     

    Enrico

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
<>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube