Listen to this article
|
Every roboticist needs an arsenal of software tools to ensure their robot is running smoothly and they can visualize everything happening within the robot and around it. And we’ll be honest, it’s not always easy to find them, especially if you’re new to robotics.
To help you best prepare for 2023, we’ve compiled a list of the top tools roboticists should add to their arsenal.
ROS-based Tools
Of course, we can’t go without first mentioning popular ROS tools such as RVIZ and Gazebo that are used by plenty of robotics and robotics companies. These tools are provided to help software developers build robot applications. At wiki.ros.org/Tools, you can browse other tools, find tutorials, and get support when you need it.
MoveIt Studio
MoveIt Studio comes from a power player in the ROS Library universe, PickNik. They’ve created MoveIt Studio to bring everything from robot application programming down to motion control within reach. MoveIt Studio leverages the widely popular MoveIt motion planning library and the Behavior Trees library, BehaviorTree.CPP, that’s been gaining quick adoption in the industry.
PlotJuggler
If you need a tool to help quickly visualize a time series, PlotJuggler is a great choice. Known for being powerful and intuitive, it provides an easy drag-and-drop user interface and can connect to a live stream of data. As a bonus, it’s also compatible with both ROS and ROS 2 thanks to its plugin architecture.
CAD Tools
When working with URDFs and 3D models, CAD Tools is an excellent option. Often used for modeling a 3D version of a robot, users can easily view the model from all angles to ensure they align with the provided geometrical parameters and customize the robot to their exact specifications. CAD Tools is accessible via Adobe Illustrator and even offers live chat support for any issues.
MeshLab
Another tool to be considered when working with 3D models is MeshLab, an open-source system for processing and editing 3D triangular meshes. One of the most notable features it offers is the ability to process raw data produced by 3D models.
NVIDIA Isaac Sim & Isaac ROS
NVIDIA’s Isaac Sim, powered by NVIDIA Omniverse, is a scalable robotics simulation application that creates a photorealistic virtual environment where AI-based robots can be developed, tested, and managed in environments such as warehouses and healthcare settings. To see NVIDIA Isaac Sim in action, head over to our free simulator that uses Isaac Sim to recreate the teleoperation experience in a realistic environment. NVIDIA also provides Isaac ROS to help ROS developers build high-performance solutions on NVIDIA hardware.
Unity 3D
You may know Unity as a game studio and engine. Did you know they also publish and maintain a suite of tools for connecting your robot application to their game engine to produce realistic-looking simulations and visualizations? If you have any kind of background in game development, you’ll feel right at home creating impressive worlds in Unity.
ngrok
Widely used by developers, ngrok is a programmable network that enables users to expose a local development server to the internet. offers features including connectivity, security, and observability. When it comes to robotics, ngrok is particularly helpful by allowing users to expose specific ports from a robot.
A favorite developer tool: Docker
If you’ve ever shared your codebase with a colleague only to see the build fail on their computer because of some out-of-date or missing dependency, Docker is here for you. No matter what’s on your local development computer, Docker lets you keep the packages, dependencies, and general environment configuration the same between the robot and all of your developers, enabling everyone to build and run the code with no issues, knowing it’ll run just as well on the actual robot itself.
Editor’s Note: This article was first published by Formant’s and was republished with permission.
David Bader says
I think there is a miss here. Many of these software tools become easier and certainly more saleable by incorporating them into a cloud infrastructure. AWs for Robotics works with many of these companies to allow for quick adoption and wide spread scalability. I would love to include a follow-up call-out highlighting how AWs for Robotics can enhance the capabilities that are presented here.