{"id":969,"date":"2019-04-03T11:36:46","date_gmt":"2019-04-03T15:36:46","guid":{"rendered":"https:\/\/robodk.com\/blog\/?p=969"},"modified":"2025-09-19T06:05:10","modified_gmt":"2025-09-19T10:05:10","slug":"program-robot-conveyor","status":"publish","type":"post","link":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/","title":{"rendered":"How to Program a Robot Conveyor Without Going Crazy"},"content":{"rendered":"\n<p><strong>Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?<\/strong><\/p>\n\n\n\n<!--more-->\n\n\n\n<p>Conveyor belts are an easy way to move products to your robot, right?<\/p>\n\n\n\n<p>Well\u2026 not really. We often think of conveyors as a simple solution but, in actual fact, they are one of the more complicated methods of workpiece delivery. They require the robot to detect and track objects moving on the conveyor. They need to be controlled via the robot program. They also suffer from various mechanical issues over their lifetime, like poor tracking, belt wear, and slipping. All these mean that conveyors can drive you a little crazy.<\/p>\n\n\n\n<p>Instead of being simple, they can be tricky to use.<\/p>\n\n\n\n<p>We can&#8217;t solve the mechanical issues of your conveyors \u2014 for that, you need a good maintenance schedule <a href=\"http:\/\/www.cisco-eagle.com\/uploads\/White-Papers\/ConveyorMaintenanceChecklist.pdf\" target=\"_blank\" rel=\"noopener\">like the one shown in this handy checklist from Cisco-Eagle<\/a>. However, we <em>can<\/em> help you to simulate the conveyor easily so that you can test it and integrate it with your robot programming.<\/p>\n\n\n\n<p>Here&#8217;s how to program your robot conveyor without going crazy.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The 5 Tricky Moving Parts of a Robot Conveyor<\/h2>\n\n\n\n<p>First, it&#8217;s important to understand why programming a conveyor is challenging.<\/p>\n\n\n\n<p>There are 5 &#8220;moving parts&#8221; which make it hard to integrate robot programming with conveyors.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Control of the conveyor itself<\/h3>\n\n\n\n<p>It might look like conveyor control is just an &#8220;on\/off &#8221; deal but it is usually a bit more complex than that. Conveyors have a <a aria-label=\" (opens in a new tab)\" href=\"https:\/\/www.orientalmotor.com\/applications\/conveyor-belt.html\" target=\"_blank\" rel=\"noreferrer noopener\">variety of control options<\/a>, depending on the model. Some have a fixed speed whilst others can be controlled with variable speeds. Some have a reverse mode, active braking, or fast switching. Then there are different control methods, the three most common being pulse control, velocity control, and distributed control.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"577\" src=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Controlled-Conveyor-1024x577.jpg\" alt=\"\" class=\"wp-image-1761\" srcset=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Controlled-Conveyor-1024x577.jpg 1024w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Controlled-Conveyor-300x169.jpg 300w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Controlled-Conveyor-768x432.jpg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>You may have to control the conveyor inside the robot program itself. If not, you may have to interface with the conveyor through a network. Both of these options add programming complexity.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Tracking and detection of objects<\/h3>\n\n\n\n<p>In order to pick up objects from a moving conveyor, the robot must be able to reliably locate them. This means you need some sort of sensor to detect when an object arrives in front of the robot. What&#8217;s more, the robot may need some way to track the objects as the conveyor moves.<\/p>\n\n\n\n<p>The most common sensors for this are vision sensors (e.g. 2D or 3D cameras) and part detection sensors (e.g. light beams, magnetic sensors, inductive sensors, etc). Some are simpler to integrate than others but all of them add extra complexity to your program.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Handling moving objects<\/h3>\n\n\n\n<p>A moving target is always harder to handle than a static one. This introduces complexity when grasping from a conveyor belt. The robot must be able to move into position, grasp the object firmly, and move away while new objects keep arriving.<\/p>\n\n\n\n<p>The speed of the conveyor must be precisely tuned to the speed of the robot, otherwise objects may be missed. If you have seen the famous &#8220;chocolate scene&#8221; from the 1950&#8217;s comedy I Love Lucy, you&#8217;ll know what I mean (and <a href=\"https:\/\/www.youtube.com\/watch?v=8NPzLBSBzPI\" target=\"_blank\" rel=\"noopener\">here it is if you haven&#8217;t seen it yet<\/a>).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. End effector choice<\/h3>\n\n\n\n<p>The robot arm is not the only part of the system which needs to keep up to speed. The end effector can have a significant effect on the cycle time and, thus, the speed of the conveyor. Some types of end effector are faster than others.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Choice-of-End-Effector-1024x576.jpg\" alt=\"\" class=\"wp-image-1760\" srcset=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Choice-of-End-Effector-1024x576.jpg 1024w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Choice-of-End-Effector-300x169.jpg 300w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Choice-of-End-Effector-768x432.jpg 768w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Choice-of-End-Effector.jpg 1194w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>This means that we now have to control and coordinate 3 independent speeds simultaneously: the conveyor speed, the robot arm velocity, and the end effector grasping speed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Use of fixtures<\/h3>\n\n\n\n<p>The final moving part is, actually, not a moving part at all. Fixtures are static mechanical parts which are fixed to the conveyor to move the objects into position. They are a reliable way to order the objects on the conveyor without using sensors.<\/p>\n\n\n\n<p>For example, you can use a fixture as an alternative to using a vision sensor. With specially formed sheet metal, you can funnel objects into a static queue, allowing the robot to pick them up without extra sensors. They make programming simpler, but they increase the complexity of the mechanical design.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Simulate a Conveyor With RoboDK<\/h2>\n\n\n\n<p>You can overcome the five challenges above by simulating your robotic system and testing it thoroughly before you use the physical system. This is not always easy with robot simulators, many of which do not have a simple capability for adding conveyors.<\/p>\n\n\n\n<p>Thankfully, conveyors are pretty simple in RoboDK. There are even two options for adding them, depending on how much control you need.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"575\" src=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Conveyor-Simulation-1024x575.jpg\" alt=\"\" class=\"wp-image-1758\" srcset=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Conveyor-Simulation-1024x575.jpg 1024w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Conveyor-Simulation-300x169.jpg 300w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Conveyor-Simulation-768x431.jpg 768w, https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/Conveyor-Simulation.jpg 1182w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The two types of conveyor in RoboDK are:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Option 1: Python programming<\/h3>\n\n\n\n<p>The most flexible method of creating a conveyor in RoboDK is to program it in Python. You can see this in action in the example video <a name=\"https:\/\/robodk.com\/blog\/conveyor-simulation-with-robodk\/\"><\/a><a href=\"https:\/\/robodk.com\/blog\/conveyor-simulation-with-robodk\/\" target=\"_blank\" rel=\"noopener\">Conveyor Simulation with RoboDK<\/a>.<\/p>\n\n\n\n<p>Advantages of python programming are:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>It is very flexible.<\/strong> The movement of the conveyor is only limited by your programming skill. You can program the simulated conveyor to match the properties of your real belt.<\/li>\n\n\n\n<li><strong>It is completely customizable.<\/strong> You can program the conveyor to move in whichever way you want. You have complete control over its movements and how it handles objects.<\/li>\n\n\n\n<li><strong>It allows for more complex conveyors.<\/strong>&nbsp;If your conveyor has advanced control modes, these can be included in the python code. Also, if you have placed a fixture to move objects to the side of the belt, for example, this can be programmed into the code.<\/li>\n<\/ol>\n\n\n\n<p>Disadvantages of python programming are:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>It requires programming skill<\/strong>. You have to be able to program in python. This is one of the easier languages to learn, but it still requires a learning curve if you have only used RoboDK&#8217;s graphical interface up to now.<\/li>\n\n\n\n<li><strong>It takes a bit longer<\/strong>. Compared to the linear mechanism option, python programming does take time. Plus, the more complex your conveyor the longer it will take to program.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Option 2: Linear mechanism<\/h3>\n\n\n\n<p>The other option is to create a linear mechanism using the &#8220;Model Mechanism&#8221; wizard. This allows you to create a simple conveyor with a single linear axis.<\/p>\n\n\n\n<p>Advantages of the linear mechanism are:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>It&#8217;s quick.<\/strong> You can create a linear mechanism in a matter of minutes and add the conveyor to your robot simulation very quickly.<\/li>\n\n\n\n<li><strong>It uses the graphical wizard.<\/strong> You can create the mechanism using the wizard using only reference frames and targets.<\/li>\n\n\n\n<li><strong>It requires little to no programming.<\/strong> You don&#8217;t have to do any python programming to create the conveyor. However, be aware that you will probably have to do some programming to detect objects on the conveyor.<\/li>\n<\/ol>\n\n\n\n<p>Disadvantages of the linear mechanism are:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>It is limited.<\/strong> The simple nature of the mechanism means that you can only model a single axis conveyor.<\/li>\n\n\n\n<li><strong>It is inflexible.<\/strong> This option&nbsp;makes it hard to model the more advanced control options of your conveyor. It also makes it hard to detect when objects fall from the conveyor.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">How to Get Started<\/h2>\n\n\n\n<p>Which option you choose largely depends on much you want to avoid python programming. Unless you have a good reason to choose the linear mechanism, we would usually recommend picking the python option. It is far more flexible and \u2014 I think (though I am a programmer) \u2014 it is easier to understand and implement.<\/p>\n\n\n\n<p>Whichever option you choose, you don&#8217;t have to create the conveyor simulation from scratch.<\/p>\n\n\n\n<p>We have both options available for download in our <a name=\"https:\/\/robodk.com\/library\"><\/a><a href=\"https:\/\/robodk.com\/library\" target=\"_blank\" rel=\"noopener\">Robot Library<\/a>. Just pick &#8220;Object&#8221; from the &#8220;Type&#8221; menu and you will see the two options: &#8220;Model Python&#8221; for the python option; and &#8220;Model Mechanism&#8221; for the linear mechanism option.<\/p>\n\n\n\n<p>If you get stuck, you can always post a comment on the <a name=\"https:\/\/robodk.com\/forum\/\"><\/a><a href=\"https:\/\/robodk.com\/forum\/\" target=\"_blank\" rel=\"noopener\">RoboDK Forum<\/a> and we&#8217;ll do our best to help you out. <!--EndFragment--><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do [&hellip;]<\/p>\n","protected":false},"author":753,"featured_media":1777,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[21,24],"tags":[15,8,14,30,12,13,43],"class_list":["post-969","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-offline-programming","category-robot-manufacturing","tag-industrial-automation","tag-industrial-robotics","tag-offline-programming","tag-robot-machining","tag-robot-programming","tag-robot-simulation","tag-robot-software"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to Program a Robot Conveyor Without Going Crazy - RoboDK blog<\/title>\n<meta name=\"description\" content=\"Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Program a Robot Conveyor Without Going Crazy - RoboDK blog\" \/>\n<meta property=\"og:description\" content=\"Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\" \/>\n<meta property=\"og:site_name\" content=\"RoboDK blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/robodkinc\" \/>\n<meta property=\"article:published_time\" content=\"2019-04-03T15:36:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-19T10:05:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor-1024x683.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"683\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Alex Owen-Hill\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@AlexOwenHill\" \/>\n<meta name=\"twitter:site\" content=\"@robodkinc\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alex Owen-Hill\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\"},\"author\":{\"name\":\"Alex Owen-Hill\",\"@id\":\"https:\/\/robodk.com\/blog\/#\/schema\/person\/3ca2d3b921633adceba2740817765638\"},\"headline\":\"How to Program a Robot Conveyor Without Going Crazy\",\"datePublished\":\"2019-04-03T15:36:46+00:00\",\"dateModified\":\"2025-09-19T10:05:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\"},\"wordCount\":1322,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/robodk.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg\",\"keywords\":[\"industrial automation\",\"industrial robotics\",\"offline programming\",\"robot machining\",\"robot programming\",\"robot simulation\",\"robot software\"],\"articleSection\":[\"offline programming\",\"Robot Manufacturing\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\",\"url\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\",\"name\":\"How to Program a Robot Conveyor Without Going Crazy - RoboDK blog\",\"isPartOf\":{\"@id\":\"https:\/\/robodk.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg\",\"datePublished\":\"2019-04-03T15:36:46+00:00\",\"dateModified\":\"2025-09-19T10:05:10+00:00\",\"description\":\"Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?\",\"breadcrumb\":{\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage\",\"url\":\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg\",\"contentUrl\":\"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg\",\"width\":3864,\"height\":2576,\"caption\":\"Automatic warehouse with robotic arms, 3D rendering\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/robodk.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Program a Robot Conveyor Without Going Crazy\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/robodk.com\/blog\/#website\",\"url\":\"https:\/\/robodk.com\/blog\/\",\"name\":\"RoboDK blog\",\"description\":\"News about RoboDK, Industrial Robots, Simulation and Robot Programming\",\"publisher\":{\"@id\":\"https:\/\/robodk.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/robodk.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/robodk.com\/blog\/#organization\",\"name\":\"RoboDK\",\"url\":\"https:\/\/robodk.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/robodk.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/mlhiwltxy5pk.i.optimole.com\/w:1920\/h:613\/q:mauto\/f:best\/https:\/\/robodk.com\/blog\/wp-content\/uploads\/2017\/12\/RoboDK-PNG.png\",\"contentUrl\":\"https:\/\/mlhiwltxy5pk.i.optimole.com\/w:1920\/h:613\/q:mauto\/f:best\/https:\/\/robodk.com\/blog\/wp-content\/uploads\/2017\/12\/RoboDK-PNG.png\",\"width\":2128,\"height\":680,\"caption\":\"RoboDK\"},\"image\":{\"@id\":\"https:\/\/robodk.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/robodkinc\",\"https:\/\/x.com\/robodkinc\",\"https:\/\/www.instagram.com\/robodk\/\",\"https:\/\/www.linkedin.com\/company\/robodk\",\"https:\/\/www.youtube.com\/c\/RoboDK3D\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/robodk.com\/blog\/#\/schema\/person\/3ca2d3b921633adceba2740817765638\",\"name\":\"Alex Owen-Hill\",\"description\":\"Alex Owen-Hill is a freelance writer and public speaker who blogs about a large range of topics, including science, presentation skills at CreateClarifyArticulate.com, storytelling and (of course) robotics. He completed a PhD in Telerobotics from Universidad Politecnica de Madrid as part of the PURESAFE project, in collaboration with CERN. As a recovering academic, he maintains a firm foot in the robotics world by blogging about industrial robotics.\",\"sameAs\":[\"https:\/\/x.com\/AlexOwenHill\"],\"url\":\"https:\/\/robodk.com\/blog\/author\/alex-owen-hill\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Program a Robot Conveyor Without Going Crazy - RoboDK blog","description":"Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/","og_locale":"en_US","og_type":"article","og_title":"How to Program a Robot Conveyor Without Going Crazy - RoboDK blog","og_description":"Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?","og_url":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/","og_site_name":"RoboDK blog","article_publisher":"https:\/\/www.facebook.com\/robodkinc","article_published_time":"2019-04-03T15:36:46+00:00","article_modified_time":"2025-09-19T10:05:10+00:00","og_image":[{"width":1024,"height":683,"url":"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor-1024x683.jpg","type":"image\/jpeg"}],"author":"Alex Owen-Hill","twitter_card":"summary_large_image","twitter_creator":"@AlexOwenHill","twitter_site":"@robodkinc","twitter_misc":{"Written by":"Alex Owen-Hill","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#article","isPartOf":{"@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/"},"author":{"name":"Alex Owen-Hill","@id":"https:\/\/robodk.com\/blog\/#\/schema\/person\/3ca2d3b921633adceba2740817765638"},"headline":"How to Program a Robot Conveyor Without Going Crazy","datePublished":"2019-04-03T15:36:46+00:00","dateModified":"2025-09-19T10:05:10+00:00","mainEntityOfPage":{"@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/"},"wordCount":1322,"commentCount":0,"publisher":{"@id":"https:\/\/robodk.com\/blog\/#organization"},"image":{"@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage"},"thumbnailUrl":"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg","keywords":["industrial automation","industrial robotics","offline programming","robot machining","robot programming","robot simulation","robot software"],"articleSection":["offline programming","Robot Manufacturing"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/robodk.com\/blog\/program-robot-conveyor\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/","url":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/","name":"How to Program a Robot Conveyor Without Going Crazy - RoboDK blog","isPartOf":{"@id":"https:\/\/robodk.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage"},"image":{"@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage"},"thumbnailUrl":"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg","datePublished":"2019-04-03T15:36:46+00:00","dateModified":"2025-09-19T10:05:10+00:00","description":"Programming a robot conveyor is trickier than many people imagine. Good simulation is the key to success, but how do you do it without going crazy?","breadcrumb":{"@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/robodk.com\/blog\/program-robot-conveyor\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#primaryimage","url":"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg","contentUrl":"https:\/\/robodk.com\/blog\/wp-content\/uploads\/2019\/04\/program-robot-conveyor.jpg","width":3864,"height":2576,"caption":"Automatic warehouse with robotic arms, 3D rendering"},{"@type":"BreadcrumbList","@id":"https:\/\/robodk.com\/blog\/program-robot-conveyor\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/robodk.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Program a Robot Conveyor Without Going Crazy"}]},{"@type":"WebSite","@id":"https:\/\/robodk.com\/blog\/#website","url":"https:\/\/robodk.com\/blog\/","name":"RoboDK blog","description":"News about RoboDK, Industrial Robots, Simulation and Robot Programming","publisher":{"@id":"https:\/\/robodk.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/robodk.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/robodk.com\/blog\/#organization","name":"RoboDK","url":"https:\/\/robodk.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/robodk.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/mlhiwltxy5pk.i.optimole.com\/w:1920\/h:613\/q:mauto\/f:best\/https:\/\/robodk.com\/blog\/wp-content\/uploads\/2017\/12\/RoboDK-PNG.png","contentUrl":"https:\/\/mlhiwltxy5pk.i.optimole.com\/w:1920\/h:613\/q:mauto\/f:best\/https:\/\/robodk.com\/blog\/wp-content\/uploads\/2017\/12\/RoboDK-PNG.png","width":2128,"height":680,"caption":"RoboDK"},"image":{"@id":"https:\/\/robodk.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/robodkinc","https:\/\/x.com\/robodkinc","https:\/\/www.instagram.com\/robodk\/","https:\/\/www.linkedin.com\/company\/robodk","https:\/\/www.youtube.com\/c\/RoboDK3D"]},{"@type":"Person","@id":"https:\/\/robodk.com\/blog\/#\/schema\/person\/3ca2d3b921633adceba2740817765638","name":"Alex Owen-Hill","description":"Alex Owen-Hill is a freelance writer and public speaker who blogs about a large range of topics, including science, presentation skills at CreateClarifyArticulate.com, storytelling and (of course) robotics. He completed a PhD in Telerobotics from Universidad Politecnica de Madrid as part of the PURESAFE project, in collaboration with CERN. As a recovering academic, he maintains a firm foot in the robotics world by blogging about industrial robotics.","sameAs":["https:\/\/x.com\/AlexOwenHill"],"url":"https:\/\/robodk.com\/blog\/author\/alex-owen-hill\/"}]}},"_links":{"self":[{"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/posts\/969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/users\/753"}],"replies":[{"embeddable":true,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/comments?post=969"}],"version-history":[{"count":10,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/posts\/969\/revisions"}],"predecessor-version":[{"id":9758,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/posts\/969\/revisions\/9758"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/media\/1777"}],"wp:attachment":[{"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/media?parent=969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/categories?post=969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/robodk.com\/blog\/wp-json\/wp\/v2\/tags?post=969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}