{"id":1619,"date":"2026-04-21T15:04:13","date_gmt":"2026-04-21T19:04:13","guid":{"rendered":"https:\/\/blogs.mathworks.com\/autonomous-systems\/?p=1619"},"modified":"2026-04-21T15:04:13","modified_gmt":"2026-04-21T19:04:13","slug":"robots-that-adapt-at-run-time-across-changing-configurations","status":"publish","type":"post","link":"https:\/\/blogs.mathworks.com\/autonomous-systems\/2026\/04\/21\/robots-that-adapt-at-run-time-across-changing-configurations\/","title":{"rendered":"Robots That Adapt at Run Time Across Changing Configurations"},"content":{"rendered":"<p>Robotic systems are often required to operate in environments that change during operation. This may include switching tools, updating workspace layouts, or handling new tasks. To support this, developers need a software structure that allows changes without stopping the system or rebuilding code.<\/p>\n<p>A recent customer project from <strong>MinMaxMedical<\/strong>, a surgical robotics company in France, demonstrates how this can be achieved using <strong>Robotics System Toolbox\u2122<\/strong> together with Simulink\u00ae, Stateflow\u00ae, and Embedded Coder\u00ae. \u00a0In their system, the robot model itself can be modified at run time, enabling a level of flexibility that is difficult to achieve with traditional workflows.<\/p>\n<p><strong><img decoding=\"async\" loading=\"lazy\" width=\"1095\" height=\"1017\" class=\"aligncenter size-full wp-image-1616\" src=\"http:\/\/blogs.mathworks.com\/autonomous-systems\/files\/2026\/04\/MinMaxMedical.png\" alt=\"\" \/>\u00a0<\/strong><\/p>\n<p><strong>Runtime reconfiguration using Rigid Body Tree<\/strong><\/p>\n<p>In many robotics applications, the robot\u2019s kinematic structure is defined when the software is built. Changing the robot configuration often requires regenerating code and redeploying the controller.<\/p>\n<p>MinMaxMedical used <strong>Robotics System Toolbox<\/strong> to represent their robot using the Rigid Body Tree model, which defines the links, joints, and geometry of the manipulator in software. Because this representation exists as a model rather than fixed code, the system can update the robot structure while the controller is running.<\/p>\n<p>This allows the software to:<\/p>\n<ul>\n<li>Attach or remove tools without rebuilding the application<\/li>\n<li>Update kinematics dynamically<\/li>\n<li>Modify collision geometry at run time<\/li>\n<li>Reuse the same controller across different robot configurations<\/li>\n<\/ul>\n<p>This approach removes the need to rebuild the application for each configuration.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Maintaining safety while the robot changes<\/strong><\/p>\n<p>In surgical robotics, any change to the robot must still meet strict safety requirements.<\/p>\n<p>Using Robotics System Toolbox, collision objects and environment geometry can also be updated during execution. This allows collision checking to remain accurate even when tools or workspace layouts change.<\/p>\n<p>Because these updates occur within the same framework, the system can maintain real-time performance while applying changes.<\/p>\n<p><strong><img decoding=\"async\" loading=\"lazy\" width=\"482\" height=\"428\" class=\"aligncenter size-full wp-image-1617\" src=\"http:\/\/blogs.mathworks.com\/autonomous-systems\/files\/2026\/04\/Staff-collaborating-on-future-technologies.jpg\" alt=\"MinMaxMedical-Robotics System Toolbox\" \/>\u00a0<\/strong><\/p>\n<p><strong>Not limited to surgical robotics<\/strong><\/p>\n<p>Although this example comes from surgical robotics, the same requirement appears in many other robotic applications.<\/p>\n<p>Robots today are often expected to handle multiple configurations, different tools, and changing environments. This is common in:<\/p>\n<ul>\n<li>Industrial robots used in flexible manufacturing<\/li>\n<li>Research robots with interchangeable end effectors<\/li>\n<li>Service robots working around people<\/li>\n<li>Autonomous machines operating in unstructured environments<\/li>\n<li>Medical, aerospace, and defense robotics platforms<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>In all of these cases, representing the robot using Rigid Body Tree in Robotics System Toolbox allows developers to build software that can adapt without rewriting the entire system.<\/p>\n<p>Instead of creating a new application for every robot configuration, the same architecture can support multiple robots, tools, and layouts.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" width=\"1092\" height=\"433\" class=\"aligncenter size-full wp-image-1618\" src=\"http:\/\/blogs.mathworks.com\/autonomous-systems\/files\/2026\/04\/RigidBodyTree.png\" alt=\"\" \/><\/p>\n<p><strong>Learn more<\/strong><\/p>\n<p>This post highlights one aspect of the workflow \u2014 runtime robot reconfiguration using Rigid Body Tree in Robotics System Toolbox.<br \/>\nThe full user story describes how this capability was used in the development of a surgical robotic platform, but the same approach can be applied to many types of robotic systems.<\/p>\n<p> Read the full story to learn more:<br \/>\n<a href=\"https:\/\/www.mathworks.com\/company\/mathworks-stories\/real-time-model-based-design-for-surgical-robotics.html\"><em>Powering Next-Generation Surgical Robotics \u2013 Model-Based Design Enables Development of Adaptive Surgical Robots<\/em><\/a><\/p>\n<p>If you are developing robotic systems that need to support multiple configurations, changing tools, or dynamic environments, this example shows how a model-based approach with Robotics System Toolbox can help build more flexible and reusable robot software.<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"overview-image\"><img decoding=\"async\"  class=\"img-responsive\" src=\"http:\/\/blogs.mathworks.com\/autonomous-systems\/files\/2026\/04\/MinMaxMedical.png\" onError=\"this.style.display ='none';\" \/><\/div>\n<p>Robotic systems are often required to operate in environments that change during operation. This may include switching tools, updating workspace layouts, or handling new tasks. To support this,&#8230; <a class=\"read-more\" href=\"https:\/\/blogs.mathworks.com\/autonomous-systems\/2026\/04\/21\/robots-that-adapt-at-run-time-across-changing-configurations\/\">read more >><\/a><\/p>\n","protected":false},"author":191,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[234],"tags":[],"_links":{"self":[{"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/posts\/1619"}],"collection":[{"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/users\/191"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/comments?post=1619"}],"version-history":[{"count":2,"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/posts\/1619\/revisions"}],"predecessor-version":[{"id":1621,"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/posts\/1619\/revisions\/1621"}],"wp:attachment":[{"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/media?parent=1619"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/categories?post=1619"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/autonomous-systems\/wp-json\/wp\/v2\/tags?post=1619"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}