<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jack Haskell, Author at DMC, Inc.</title>
	<atom:link href="https://static.dmcinfo.com/blog/author/jackh/feed/index.xml" rel="self" type="application/rss+xml" />
	<link></link>
	<description></description>
	<lastBuildDate>Fri, 04 Sep 2026 18:33:09 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.2</generator>

<image>
	<url>https://static.dmcinfo.com/wp-content/uploads/2025/04/site-icon-150x150.png</url>
	<title>Jack Haskell, Author at DMC, Inc.</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>MagneMotion Guide Part 12: Track Graphics and .mmtrk Files</title>
		<link>https://static.dmcinfo.com/blog/40640/magnemotion-guide-part-12-track-graphics-and-mmtrk-files/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Tue, 17 Feb 2026 13:00:00 +0000</pubDate>
				<category><![CDATA[Allen Bradley PLC]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/?p=40640</guid>

					<description><![CDATA[<p>In the&#160;previous&#160;installment,&#160;MagneMotion&#160;Blog Part 11:&#160;Tuning,&#160;we discussed how to&#160;modify&#160;a system for better performance and efficiency.&#160;In this article,&#160;we’ll&#160;share&#160;details on the&#160;track&#160;graphics used by NC Host to visualize&#160;MagneMotion&#160;systems and how you can customize those graphics for your&#160;particular application.&#160; A quick reminder: NC host is used to monitor the status of MagneMotion controllers, motors, and movers. The NC host IP address [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/40640/magnemotion-guide-part-12-track-graphics-and-mmtrk-files/">MagneMotion Guide Part 12: Track Graphics and .mmtrk Files</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In the&nbsp;previous&nbsp;installment,&nbsp;<a href="https://static.dmcinfo.com/?p=40486&amp;preview=true">MagneMotion&nbsp;Blog Part 11:&nbsp;Tuning</a>,&nbsp;we discussed how to&nbsp;modify&nbsp;a system for better performance and efficiency.&nbsp;In this article,&nbsp;we’ll&nbsp;share&nbsp;details on the&nbsp;track&nbsp;graphics used by NC Host to visualize&nbsp;MagneMotion&nbsp;systems and how you can customize those graphics for your&nbsp;particular application.&nbsp;</p>



<p class="wp-block-paragraph">A quick reminder: NC host is used to monitor the status of MagneMotion controllers, motors, and movers. The NC host IP address should be the node controller.</p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI’s</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>



<li><a href="https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/">MagneMotion&nbsp;Guide&nbsp;Part 10: Moving Track</a></li>



<li><a href="https://static.dmcinfo.com/?p=40486&amp;preview=true">MagneMotion&nbsp;Blog Part 11:&nbsp;Tuning</a></li>
</ul>



<h2 id="h-track-graphic-files" class="wp-block-heading">Track Graphic Files</h2>



<p class="wp-block-paragraph">Track graphics are files with&nbsp;the .mmtrk&nbsp;extension that are used to help visualize a&nbsp;MagneMotion&nbsp;system when using NC Host. <em>For general information, see&nbsp;<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a>.</em></p>



<p class="wp-block-paragraph">Typically for&nbsp;MagneMotion&nbsp;Lite systems,&nbsp;track graphics are generated in the&nbsp;Magnemotion&nbsp;Configurator tool by going to File -&gt; Export -&gt; Create MMTRK File&nbsp;From&nbsp;Config&nbsp;</p>



<p class="wp-block-paragraph">Below&nbsp;is an example of a track layout file.&nbsp;</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="624" height="140" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-1.png" alt="MagneMotion track interface" class="wp-image-40657" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-1.png 624w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-1-300x67.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">Here is that same&nbsp;track’s&nbsp;corresponding .mmtrk&nbsp;file visualized in NC Host.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="628" height="200" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-2.png" alt="MagneMotion track interface" class="wp-image-40659" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-2.png 628w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-2-300x96.png 300w" sizes="(max-width: 628px) 100vw, 628px" /></figure>



<p class="wp-block-paragraph">When&nbsp;monitoring&nbsp;the track&nbsp;graphic&nbsp;in NC&nbsp;Host,&nbsp;you can easily see where each vehicle is on the track. By hovering over track&nbsp;segments,&nbsp;you can also see which path of the track you are hovering over.&nbsp;</p>



<p class="wp-block-paragraph">These .mmtrk&nbsp;files are&nbsp;simple text&nbsp;files which can be opened in the text editor of your choice. If&nbsp;needed,&nbsp;you can also&nbsp;modify&nbsp;the track file to better fit your system.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="244" height="264" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-3.png" alt="MagneMotion code" class="wp-image-40660"/></figure>



<p class="wp-block-paragraph">The track file components are simple. Each section starts with a comment describing the path that&nbsp;the&nbsp;section of the text file is defining.&nbsp;If you are making changes to a track&nbsp;file,&nbsp;it is&nbsp;advisable&nbsp;to include&nbsp;additional&nbsp;comments on whatever change is being made.&nbsp;&nbsp;</p>



<p class="wp-block-paragraph">Next,&nbsp;the track file defines the path connection. The&nbsp;path_start&nbsp;#a #b line&nbsp;indicates&nbsp;that you are defining path #a that has&nbsp;a previous&nbsp;path of path #b. Note that some paths have multiple&nbsp;previous&nbsp;paths defined in the configuration file,&nbsp;but only one&nbsp;previous&nbsp;path needs to be defined in the track file. This is because the track file is only concerned with the physical location of the path,&nbsp;not how it links to the rest of the system.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="290" height="128" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-4.png" alt="MagneMotion code" class="wp-image-40661"/></figure>



<p class="wp-block-paragraph">Following the path&nbsp;definition,&nbsp;the file will&nbsp;contain&nbsp;information on each motor in the path.&nbsp;Starting from the first&nbsp;motor,&nbsp;there&nbsp;will be a line that&nbsp;contains&nbsp;the motor type and the motor’s direction. This direction corresponds to the orientation of the motor in the track graphic file. Everywhere the track turns, this direction should change for the next motor.&nbsp;</p>



<p class="wp-block-paragraph">In the&nbsp;examples below,&nbsp;note that the direction changes from “left” to “right” after the “motor_r_curve” entry to ensure that the track graphic follows the actual track layout from the configuration file.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="286" height="140" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-5.png" alt="MagneMotion code" class="wp-image-40662"/></figure>



<p class="wp-block-paragraph">In track layout&nbsp;files,&nbsp;there are no separate definitions for switches. Instead of having a single entry for a switch on the track,&nbsp;there will be an entry for each path that the switch is on for both the straight and curved section of the switch.&nbsp;</p>



<p class="wp-block-paragraph">For&nbsp;example,&nbsp;for a right switch that merges paths 3 and 4,&nbsp;one path will have a “motor_q_meter” entry for the straight section of the&nbsp;switch,&nbsp;and the other path will have a “motor_r_curve” entry for the curved&nbsp;portion&nbsp;of the switch.&nbsp;</p>



<p class="wp-block-paragraph">In addition to defining the track,&nbsp;you can also&nbsp;modify&nbsp;the track graphic to change how vehicles are displayed in NC host. Adding a line&nbsp;setting&nbsp;the&nbsp;vehicle_size&nbsp;will change the size of the vehicle graphic displayed in NC Host to better match your system.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="324" height="190" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-6.png" alt="MagneMotion code" class="wp-image-40663" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-6.png 324w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-6-300x176.png 300w" sizes="(max-width: 324px) 100vw, 324px" /></figure>



<p class="wp-block-paragraph">Note that NC Host&nbsp;doesn’t&nbsp;do any verification that the track graphic you are using lines up with the configuration file of your system. If you end up using the&nbsp;wrong .mmtrk&nbsp;file,&nbsp;NC Host will still display the graphic and&nbsp;attempt&nbsp;to display where vehicles would be on the track even if path lengths and orientations do not match&nbsp;up.&nbsp;</p>



<h2 id="h-disjointed-tracks" class="wp-block-heading">Disjointed Tracks</h2>



<p class="wp-block-paragraph">There are unfortunately some limits in the track graphics that can be created by the&nbsp;MagneMotion&nbsp;configurator tool. If any track is “disjointed” (i.e.&nbsp;completely separated from the rest of the track),&nbsp;then&nbsp;the configurator tool will be unable to generate the track file for that system. However, you are still able to create the track file for that system manually.&nbsp;</p>



<p class="wp-block-paragraph">Let’s say we have a&nbsp;MagneMotion&nbsp;Lite track where&nbsp;the majority of&nbsp;the track is in a loop on the ground. A part of this loop is a section of track that can be raised to connect to a stretch of track that is suspended by the ceiling.&nbsp;So,&nbsp;we have one track system that is split into different sections.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="296" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-7.png" alt="MagneMotion track interface" class="wp-image-40664" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-7.png 624w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-7-300x142.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">You&nbsp;can’t&nbsp;get this track file directly from the&nbsp;configurator,&nbsp;but you can start by&nbsp;making the paths of just the ground track and creating&nbsp;a .mmtrk&nbsp;file from that partial section of track.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="376" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-8.png" alt="MagneMotion code" class="wp-image-40665" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-8.png 624w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-8-300x181.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">Now,&nbsp;to&nbsp;add&nbsp;additional&nbsp;track segments to this file,&nbsp;we need to create a disjointed track section. We do this by adding another line that starts with “track_start” followed by parameters that&nbsp;determine&nbsp;where in your graphic the disjointed track will appear. For each new disjointed track added,&nbsp;you need to input the distance and angle from the very start of&nbsp;the track file to the start of your disjointed track. Then you simply need to add paths/motors to the file to match your system.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="420" height="116" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-9.png" alt="MagneMotion code" class="wp-image-40666" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-9.png 420w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-9-300x83.png 300w" sizes="(max-width: 420px) 100vw, 420px" /></figure>



<p class="wp-block-paragraph">If&nbsp;you’re&nbsp;having trouble calculating the position&nbsp;your added track can be&nbsp;in,&nbsp;you can always just display the track graphic to check the position and adjust as needed.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="516" height="224" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-10.png" alt="MagneMotion track interface" class="wp-image-40667" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-10.png 516w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-10-300x130.png 300w" sizes="(max-width: 516px) 100vw, 516px" /></figure>



<p class="wp-block-paragraph">Now,&nbsp;it’s&nbsp;a simple matter of repeating that same process to add the ceiling track.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="236" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-11.png" alt="MagneMotion track interface" class="wp-image-40668" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-11.png 624w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-11-300x113.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">Note that there are other ways you can arrange your track. If you wanted to have your elevator track show up in line with the ground track&nbsp;loop&nbsp;you can tell the track graphic file to consider path 2 to&nbsp;immediately&nbsp;follow path 1 by just manually adding path 2 as a following path for path 1.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="392" height="456" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-12.png" alt="MagneMotion code" class="wp-image-40669" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-12.png 392w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-12-258x300.png 258w" sizes="(max-width: 392px) 100vw, 392px" /></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="312" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-13.png" alt="MagneMotion track interface" class="wp-image-40670" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-13.png 624w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-13-300x150.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<h2 id="h-quickstick-nbsp-track-graphics-nbsp" class="wp-block-heading">Quickstick&nbsp;Track Graphics&nbsp;</h2>



<p class="wp-block-paragraph">You can also manually create track graphics for&nbsp;Quickstick&nbsp;systems&nbsp;similar to&nbsp;how you’d create them for a disjointed track. The formatting of&nbsp;Quickstick&nbsp;.mmtrk&nbsp;files is a little different from&nbsp;MMLite&nbsp;track.&nbsp;</p>



<p class="wp-block-paragraph">Instead of being given a cardinal direction with each motor,&nbsp;Quickstick&nbsp;motors are each assigned an angle. This allows a track graphic to properly display the curved motors sections that&nbsp;Quickstick&nbsp;can allow. After each&nbsp;Quickstick&nbsp;motor&nbsp;entry,&nbsp;you can also enter a gap distance and angle to display the larger motor gaps allowed between&nbsp;Quickstick&nbsp;motors.&nbsp;</p>



<p class="wp-block-paragraph">Below is a straightforward example with a linear track.&nbsp;</p>



<figure class="wp-block-image size-large"><img decoding="async" width="298" height="164" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-14.png" alt="MagneMotion code" class="wp-image-40672"/></figure>



<figure class="wp-block-image size-large"><img decoding="async" width="318" height="112" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-15.png" alt="MagneMotion track interface" class="wp-image-40671" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-15.png 318w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-15-300x106.png 300w" sizes="(max-width: 318px) 100vw, 318px" /></figure>



<p class="wp-block-paragraph">If the&nbsp;Quickstick&nbsp;angles are&nbsp;adjusted,&nbsp;you can also display a nice track curve.&nbsp;</p>



<figure class="wp-block-image size-large"><img decoding="async" width="228" height="504" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-16.png" alt="MagneMotion code" class="wp-image-40674" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-16.png 228w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-16-136x300.png 136w" sizes="(max-width: 228px) 100vw, 228px" /></figure>



<figure class="wp-block-image size-large"><img decoding="async" width="352" height="288" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-17.png" alt="MagneMotion track interface" class="wp-image-40673" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-17.png 352w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-17-300x245.png 300w" sizes="(max-width: 352px) 100vw, 352px" /></figure>



<p class="wp-block-paragraph">You can even combine methods to create disjointed tracks&nbsp;with&nbsp;Quickstick&nbsp;graphics to create&nbsp;complicated&nbsp;layouts&nbsp;involving things like rotary tables and moving path nodes.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="384" src="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-18.png" alt="MagneMotion track interface" class="wp-image-40675" srcset="https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-18.png 624w, https://static.dmcinfo.com/wp-content/uploads/2026/01/MagneMotion-Graphics-18-300x185.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<div class="wp-block-group alignwide has-custom-light-blue-background-color has-background is-layout-flow wp-container-core-group-is-layout-dbd34961 wp-block-group-is-layout-flow" style="border-radius:20px;margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50);padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0">
<div class="wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-43efaee5 wp-block-columns-is-layout-flex" style="padding-right:var(--wp--preset--spacing--60);padding-left:var(--wp--preset--spacing--60)">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:85%">
<h3 class="wp-block-heading has-text-align-left" id="h-have-an-upcoming-project-dmc-can-help-you-take-the-next-step"><strong>Need support for a high-performance motion control application? DMC can help.</strong></h3>



<p class="has-text-align-left wp-block-paragraph" id="h-need-help-turning-ideas-into-outcomes-automation-project-to-the-next-level-contact-us-today-to-learn-more-about-our-solutions-and-how-we-can-help-you-achieve-your-goals">Learn more about DMC’s <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/magnemotion-programming">MagneMotion programming expertise</a> and find out how we can help you get started on your next <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/" id="420">Manufacturing &amp; Automation</a> project. </p>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:15%">
<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-2236275c wp-block-buttons-is-layout-flex">
<div class="wp-block-button is-style-fill"><a class="wp-block-button__link has-base-contrast-color has-text-color has-link-color wp-element-button" href="https://static.dmcinfo.com/contact/">Contact Us</a></div>
</div>
</div>
</div>
</div>
<p>The post <a href="https://static.dmcinfo.com/blog/40640/magnemotion-guide-part-12-track-graphics-and-mmtrk-files/">MagneMotion Guide Part 12: Track Graphics and .mmtrk Files</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 11: Tuning</title>
		<link>https://static.dmcinfo.com/blog/40486/magnemotion-guide-part-11-tuning/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Wed, 28 Jan 2026 13:36:00 +0000</pubDate>
				<category><![CDATA[Allen Bradley PLC]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/?p=40486</guid>

					<description><![CDATA[<p>In the&#160;previous&#160;article&#160;in this series,&#160;MagneMotion&#160;Guide&#160;Part 10: Moving Track,&#160;we discussed handling moving path nodes for&#160;MagneMotion&#160;Quickstick&#160;systems. In this article,&#160;we’ll&#160;discuss the advantages of tuning your&#160;MagneMotion&#160;system and general good practices for tuning&#160;MagneMotion.&#160; MagneMotion Guide Series What is Tuning? Tuning is the process of adjusting the parameters of your system that control the motion profiles used to turn motion commands (i.e.,&#160;move [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/40486/magnemotion-guide-part-11-tuning/">MagneMotion Guide Part 11: Tuning</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In the&nbsp;previous&nbsp;article&nbsp;in this series,&nbsp;<a href="https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/">MagneMotion&nbsp;Guide&nbsp;Part 10: Moving Track</a>,&nbsp;we discussed handling moving path nodes for&nbsp;MagneMotion&nbsp;Quickstick&nbsp;systems. In this article,&nbsp;we’ll&nbsp;discuss the advantages of tuning your&nbsp;MagneMotion&nbsp;system and general good practices for tuning&nbsp;MagneMotion.&nbsp;</p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI’s</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>



<li><a href="https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/">MagneMotion&nbsp;Guide&nbsp;Part 10: Moving Track</a></li>
</ul>



<h2 id="h-what-is-tuning" class="wp-block-heading">What is Tuning?</h2>



<p class="wp-block-paragraph">Tuning is the process of adjusting the parameters of your system that control the motion profiles used to turn motion commands (i.e.,&nbsp;move this vehicle to this position) into mechanical movement. In the case of&nbsp;MagneMotion,&nbsp;tuning usually involves adjusting the Control Loop Parameters in the configuration file along with other advanced parameters that handle the system response to vehicles being out of position.&nbsp;</p>



<p class="wp-block-paragraph">While some systems have automatic tuning processes,&nbsp;MagneMotion&nbsp;tuning is a very iterative process. Typically,&nbsp;you’ll&nbsp;adjust tuning parameters before running your track, make observations about the current track behavior, and then&nbsp;iterate on&nbsp;the parameters again&nbsp;until system performance meets application requirements.&nbsp;</p>



<h2 id="h-benefits-of-tuning" class="wp-block-heading">Benefits of Tuning</h2>



<p class="wp-block-paragraph">There can be several&nbsp;different reasons&nbsp;why you would want to&nbsp;tune&nbsp;your system. The first is to ensure that vehicle motion is smooth.&nbsp;A properly tuned&nbsp;system will reduce vibrations and jerky movements from vehicle motion.&nbsp;</p>



<p class="wp-block-paragraph">Tuning can also be useful in increasing the overall throughput of your system. Mistuned vehicles can take longer to get up to speed or might slightly overshoot their&nbsp;targets,&nbsp;causing delays as they need to correct their positions.&nbsp;</p>



<p class="wp-block-paragraph">Similarly,&nbsp;tuning can also considerably reduce the current draw and thermal load on your&nbsp;MagneMotion&nbsp;motors. When a vehicle is moving smoothly and&nbsp;precisely,&nbsp;there is less need for the motors to draw an excessive amount of current to correct the vehicle’s positioning.&nbsp;</p>



<p class="wp-block-paragraph">Before you begin&nbsp;tuning&nbsp;your&nbsp;system,&nbsp;it is important to consider what your priorities are in tuning.&nbsp;A&nbsp;system tuned to&nbsp;optimize&nbsp;speed and responsiveness may look different from a system tuned to reduce thermal load.&nbsp;</p>



<h2 id="h-configuration-file-adjustments" class="wp-block-heading">Configuration File Adjustments</h2>



<p class="wp-block-paragraph"><em>See&nbsp;<a href="https://static.dmcinfo.com/blog/19352/magnemotion-guide-part-1-creating-configuration-files/">MagneMotion&nbsp;Guide Part 1: Creating Configuration Files</a> for&nbsp;additional&nbsp;details.</em></p>



<p class="wp-block-paragraph">The relevant parameters for&nbsp;MagneMotion&nbsp;tuning are found in the motor defaults section of the track. While you can adjust these parameters on a per motor&nbsp;basis,&nbsp;it’s&nbsp;usually&nbsp;a good idea&nbsp;to adjust them on a per path basis to keep vehicle motion consistent across your track.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="120" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-1.png" alt="MagneMotion parameters interface" class="wp-image-40525" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-1.png 624w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-1-300x58.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">Here&nbsp;you can set up different sets of control parameters. To make use of a new set simply fill out the parameters and click the Enable check box. When commanding a vehicle to move (through NC Host or a controller) you can set the command to run at one of the PID sets configured here. Typically, it is&nbsp;a good idea&nbsp;to have a PID set for unloaded vehicles and another for vehicles that are loaded. Additional PID sets can be added, either to account for different load types or&nbsp;different types&nbsp;of moves along the track.&nbsp;</p>



<p class="wp-block-paragraph">Below is a quick description of each parameter used in a control set:&nbsp;</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td><strong>Parameter</strong></td><td><strong>Description</strong></td><td><strong>Increase Effect</strong></td><td><strong>Decrease Effect</strong></td></tr><tr><td>Mass (kg)</td><td>This is the mass in kilograms of the vehicle. This mass should include the mass of the puck, and nest/fixture on the vehicle, and any load placed on the vehicle.&nbsp;</td><td></td><td></td></tr><tr><td>Kp</td><td>This is&nbsp;the proportional&nbsp;gain. This controls the amount of force applied to the vehicle in response to the position error.</td><td>Can cause overshooting. Increases system responsiveness.</td><td>Reduces&nbsp;overshoot. Reduces steady-state error.&nbsp;Slows&nbsp;system responsiveness.&nbsp;</td></tr><tr><td>Ki</td><td>This is&nbsp;the&nbsp;integral gain. This controls the amount of force applied based on past values of the position error.</td><td>Can&nbsp;cause overshooting and oscillation. Makes the system more responsive to errors over time.</td><td>Reduces&nbsp;overshoot&nbsp;and oscillation.</td></tr><tr><td>Kd</td><td>This is the derivative gain. This controls the amount of force applied based on the velocity error of the vehicle.</td><td>Reduces settling time. Decreases&nbsp;overshoot. Large values can cause stability issues.</td><td>Increases&nbsp;settling time. Increases&nbsp;overshoot.</td></tr><tr><td>Kff(%)</td><td>This is the&nbsp;feedforward scale. This controls the force used to achieve the desired acceleration based on the given mass.</td><td>Increases from 100% can cause the system to excessively accelerate the vehicle.</td><td>Decreases from 100% can cause the system to not accelerate quickly enough.&nbsp;</td></tr></tbody></table></figure>



<h2 id="h-tuning-nbsp-process" class="wp-block-heading">Tuning&nbsp;Process</h2>



<h3 id="h-using-virtual-scope" class="wp-block-heading">Using Virtual Scope</h3>



<p class="wp-block-paragraph">To&nbsp;properly tune&nbsp;a system, you will need to run a vehicle around your track while&nbsp;assessing&nbsp;whether&nbsp;the vehicle’s behavior is improved after each adjustment to the system’s control parameters&nbsp;</p>



<p class="wp-block-paragraph">While you can certainly do this by just&nbsp;monitoring&nbsp;the system,&nbsp;MagneMotion&nbsp;has created a tool to help gather more specific motion data called Virtual Scope.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="556" height="348" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-2.png" alt="MagneMotion Virtual Scope tool" class="wp-image-40526" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-2.png 556w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-2-300x188.png 300w" sizes="(max-width: 556px) 100vw, 556px" /></figure>



<p class="wp-block-paragraph">The Virtual Scope tool gathers data about a vehicle’s position error, velocity, and current use as it moves along a motor of your track.&nbsp;</p>



<p class="wp-block-paragraph">To use Virtual Scope in your tuning process simply hit the setup button and input the IP address of your HLC controller along with the vehicle ID you are planning on tracking and the path and motor you are running your tuning tests over.&nbsp;</p>



<p class="wp-block-paragraph">Note that for a running system it can be tricky to line up a scope of a specific vehicle crossing a specific motor. Make use of NC Host’s ability to track vehicle positions to&nbsp;setup&nbsp;a trace before the vehicle approaches the motor you are&nbsp;monitoring.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="629" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-3.png" alt="MagneMotion interface" class="wp-image-40527" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-3.png 800w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-3-300x236.png 300w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-3-768x604.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p class="wp-block-paragraph">When a profile is&nbsp;captured,&nbsp;you can select which parameters you wish to display. You can also choose to&nbsp;set&nbsp;up&nbsp;a data capture to record the data from the scope into a .csv file for&nbsp;additional&nbsp;analysis.&nbsp;</p>



<h2 id="h-data-streams" class="wp-block-heading">Data Streams</h2>



<p class="wp-block-paragraph">The Virtual Scope tools make use of data stream files to&nbsp;determine&nbsp;which data it is capturing from the&nbsp;MagneMotion&nbsp;motor. By default, virtual scope uses a data set that includes information on the&nbsp;vehicle&nbsp;position, error, and velocity.&nbsp;&nbsp;</p>



<p class="wp-block-paragraph">The virtual scope tool can gather&nbsp;additional&nbsp;information on things like motor temperature, power&nbsp;specifics&nbsp;or other details if the scope tool is loaded with different data streams by going to “Advanced” -&gt; “Load Data Stream.”&nbsp;Rockwell does not publish these data stream&nbsp;files,&nbsp;but you can reach Rockwell ICT’s support team for alternative data streams if needed.&nbsp;</p>



<h2 id="h-using-nc-host" class="wp-block-heading">Using NC Host</h2>



<p class="wp-block-paragraph">While you can certainly run your tuning by setting up a PLC program to run&nbsp;tests,&nbsp;it is often easier to use NC Host to control a singular mover instead of spinning up a whole PLC program or&nbsp;modifying&nbsp;your production code.&nbsp;</p>



<p class="wp-block-paragraph"><em>For more details on NC Host see&nbsp;<a href="https://static.dmcinfo.com/blog/19187/magnemotion-guide-part-2-starting-up-and-commissioning-a-track/">MagneMotion&nbsp;Guide Part 2:&nbsp;Starting up and Commissioning&nbsp;a Track</a>.</em></p>



<p class="wp-block-paragraph">NC Host also has a tool that allows you to use a temporary set of PID parameters to reduce the&nbsp;number&nbsp;of&nbsp;times&nbsp;you’ll&nbsp;need to change the configuration file of your system. This means you can try out PID values without needing to restart your system. (Note that any parameters changed through NC Host will be reset the next time the system&nbsp;restarts&nbsp;or the relevant path is reset).&nbsp;</p>



<h2 id="h-other-tuning-considerations" class="wp-block-heading">Other Tuning Considerations</h2>



<p class="wp-block-paragraph">On top of the typical&nbsp;PID-based&nbsp;configuration&nbsp;adjustments,&nbsp;there are also several&nbsp;additional&nbsp;configuration&nbsp;modifications&nbsp;that can be made to improve your system’s behavior.&nbsp;</p>



<h3 id="h-disable-control-thrust" class="wp-block-heading">Disable Control Thrust</h3>



<p class="wp-block-paragraph">&nbsp;If a vehicle is having trouble settling into&nbsp;position,&nbsp;the configuration file can be adjusted to disable the control thrust on a vehicle when it is within a certain tolerance of its target. This comes at a cost to how closely the vehicle will hold to its destination but removes any oscillation or&nbsp;additional&nbsp;thrust from a vehicle that is within tolerance of its position.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="352" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-4.png" alt="MagneMotion advanced parameters interface" class="wp-image-40528" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-4.png 624w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-4-300x169.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<h3 id="h-motion-limits" class="wp-block-heading">Motion Limits</h3>



<p class="wp-block-paragraph">If you are having trouble ensuring smooth motion on your&nbsp;vehicles,&nbsp;configuring a stricter velocity limit or acceleration limit can prevent the&nbsp;vehicle&nbsp;motion from overshooting its target too aggressively at the cost of overall system speed.&nbsp;Importantly,&nbsp;this&nbsp;also is&nbsp;the easiest way to reduce temperature issues on a motor.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="100" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-5.png" alt="MagneMotion motor parameters interface" class="wp-image-40529" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-5.png 624w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-5-300x48.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<h3 id="h-arrival-tolerance-nbsp" class="wp-block-heading">Arrival Tolerance&nbsp;</h3>



<p class="wp-block-paragraph">Similarly, if a station has too large of a settling time where vehicles are adjusting themselves to get into a station&nbsp;position,&nbsp;you can adjust the arrival position and velocity targets. This&nbsp;way,&nbsp;if on that&nbsp;particular path&nbsp;vehicle tolerance is not too&nbsp;strict,&nbsp;you can reduce the delay between when a vehicle arrives at its destination and when&nbsp;MagneMotion&nbsp;indicates that the vehicle is in position.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="284" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-6.png" alt="MagneMotion motor parameters interface" class="wp-image-40533" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-6.png 624w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-6-300x137.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">This parameter only affects when&nbsp;MagneMotion&nbsp;considers a&nbsp;vehicle&nbsp;‘in position’&nbsp;and does not change the motion profile of a vehicle.&nbsp;</p>



<h3 id="h-host-controller-nbsp-communication-nbsp" class="wp-block-heading">Host Controller&nbsp;Communication&nbsp;</h3>



<p class="wp-block-paragraph">You can also potentially reduce settling time by adjusting the&nbsp;system’s&nbsp;communication with its host controller. For high throughput&nbsp;systems,&nbsp;changing the Send Vehicle Status Period or the Vehicle Records/Status Period values can reduce the delay&nbsp;caused&nbsp;while&nbsp;waiting for the Node&nbsp;Controller to tell the host controller that the vehicle has arrived. Care should be taken when adjusting these values to ensure that you are not overloading the communication resources of the Node Controller or the Host Controller.&nbsp;</p>



<p class="wp-block-paragraph">On a host&nbsp;controller,&nbsp;this update frequency also depends on the cycle time of the&nbsp;MagneMotion&nbsp;device handler.&nbsp;</p>



<p class="wp-block-paragraph"><em>Also note that these settings are specifically for systems that make use of Rockwell’s ICT library, see&nbsp;<a href="https://static.dmcinfo.com/blog/18983/magnemotion-guide-part-3-controlling-a-system-with-a-plc/">MagneMotion&nbsp;Guide Part 3: Controlling a System with a PLC</a>.&nbsp;</em></p>



<figure class="wp-block-image size-full"><img decoding="async" width="624" height="268" src="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-7.png" alt="MagneMotion ethernet/ip interface" class="wp-image-40534" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-7.png 624w, https://static.dmcinfo.com/wp-content/uploads/2025/12/magnemotion-tuning-7-300x129.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<div class="wp-block-group alignwide has-custom-light-blue-background-color has-background is-layout-flow wp-container-core-group-is-layout-dbd34961 wp-block-group-is-layout-flow" style="border-radius:20px;margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50);padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0">
<div class="wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-43efaee5 wp-block-columns-is-layout-flex" style="padding-right:var(--wp--preset--spacing--60);padding-left:var(--wp--preset--spacing--60)">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:85%">
<h3 class="wp-block-heading has-text-align-left" id="h-have-an-upcoming-project-dmc-can-help-you-take-the-next-step"><strong><strong>Need help in advanced motion control and machine automation? DMC can help.</strong></strong></h3>



<p class="has-text-align-left wp-block-paragraph" id="h-need-help-turning-ideas-into-outcomes-automation-project-to-the-next-level-contact-us-today-to-learn-more-about-our-solutions-and-how-we-can-help-you-achieve-your-goals">Learn more about how DMC&#8217;s capabilities in <a href="https://static.dmcinfo.com/our-work/category/service/manufacturing-automation-and-intelligence/magnemotion/" id="1291">MagneMotion</a> Programming can advance your next <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/" id="420">Manufacturing &amp; Automation</a> project.</p>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:15%">
<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-2236275c wp-block-buttons-is-layout-flex">
<div class="wp-block-button is-style-fill"><a class="wp-block-button__link has-base-contrast-color has-text-color has-link-color wp-element-button" href="https://static.dmcinfo.com/contact/">Contact Us</a></div>
</div>
</div>
</div>
</div>
<p>The post <a href="https://static.dmcinfo.com/blog/40486/magnemotion-guide-part-11-tuning/">MagneMotion Guide Part 11: Tuning</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 10: Moving Track</title>
		<link>https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Tue, 10 Dec 2024 16:35:08 +0000</pubDate>
				<category><![CDATA[Allen Bradley PLC]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/</guid>

					<description><![CDATA[<p>Typically, a MagneMotion track is designed to fit a 2D&#160;profile, the track might turn left or right but not up or down. While this is sufficient for most MagneMotion applications, sometimes systems are designed to lift or move MagneMotion track out of its typical 2D&#160;plane.&#160;&#160; Whether this is to move MagneMotion closer to tooling&#160;or to [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/">MagneMotion Guide Part 10: Moving Track</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><p paraeid="{16ab24bf-dfc2-4897-8a57-cd4fe6fb9858}{71}" paraid="375415873">Typically, a MagneMotion track is designed to fit a 2D&nbsp;profile, the track might turn left or right but not up or down. While this is sufficient for most MagneMotion applications, sometimes systems are designed to lift or move MagneMotion track out of its typical 2D&nbsp;plane.&nbsp;&nbsp;</p></p>



<p class="wp-block-paragraph"><p paraeid="{16ab24bf-dfc2-4897-8a57-cd4fe6fb9858}{81}" paraid="807419308">Whether this is to move MagneMotion closer to tooling&nbsp;or to transport MagneMotion vehicles from one level of track to another, configuring this type of track involves careful modifications to the typical MagneMotion system. In this blog we’ll review general guidelines on how to handle these situations.&nbsp;</p></p>



<p class="wp-block-paragraph"><p paraeid="{16ab24bf-dfc2-4897-8a57-cd4fe6fb9858}{81}" paraid="807419308"><em>Note: This blog is for MagneMover Lite systems only. QuickStick systems have a built-in feature of linking and unlinking paths which is a preferred way to handle this issue.</em></p></p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/blog/19352/magnemotion-guide-part-1-creating-configuration-files/" type="post" id="19352">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/blog/19187/magnemotion-guide-part-2-starting-up-and-commissioning-a-track/" type="post" id="19187">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI’s</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/blog/18181/magnemotion-guide-part-7-traffic-lights/" type="post" id="18181">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>
</ul>



<h2 id="h-step-1-creating-the-track-layout-nbsp" class="wp-block-heading">Step 1: Creating the Track Layout&nbsp;</h2>



<p class="wp-block-paragraph">When laying out track, any moving segments of track should be carefully considered. You will need to account for any moving track in your system configuration, but different tracks have different considerations.&nbsp;</p>



<h3 id="h-terminus-nodes-vs-relay-nodes-nbsp" class="wp-block-heading">Terminus Nodes vs. Relay Nodes&nbsp;</h3>



<p class="wp-block-paragraph">Regardless of how the track is set up it is often a good idea to define any moving track as its own specific path. This allows the host controller to suspend or start that track section independently and makes it much easier to follow if there are any vehicles on the track.&nbsp;</p>



<p class="wp-block-paragraph">If the track is simple, you can usually add relay nodes to your system to break out your lifting path. In the below example, a single meter of track would be used to raise carriers from a ground section of track to a raised section of track.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-lift-track.png" alt="magnemotion raised track"/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-track-set-up.png" alt="magnemotion simple track set up"/></figure>



<p class="wp-block-paragraph">Here, you can maintain a simple track setup. Vehicles can still be sent from the ground track to the lift track or from the lift track to the ceiling track&nbsp;using the same typical motion commands that you’d use in other parts of your MagneMotion System.&nbsp;</p>



<p class="wp-block-paragraph">However, some tracks are more complicated to set up. Since MagneMotion is constrained to 2D systems any track that requires having multiple motors in the same two-dimensional position will require more a complicated track configuration to set up.&nbsp;</p>



<p class="wp-block-paragraph">In the example below, the track has been set up with a lift that can move vehicles to any one of three different levels of track.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-track-with-lift.png" alt="magnemotion track with lift"/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-levels-of-track.png" alt="magnemotion with different track levels"/></figure>



<p class="wp-block-paragraph">In this example, the track must be configured so that the different levels of track are considered separate from the rest. While regular vehicle commands can still be used to pass vehicles from the left ground track to the lift track, any vehicles sent from the lift track to one of the right-side tracks will need to be done with a terminus node handoff.&nbsp;</p>



<h3 id="h-terminus-node-considerations-nbsp" class="wp-block-heading">Terminus Node Considerations&nbsp;</h3>



<p class="wp-block-paragraph">In general, this terminus node-based configuration should be reserved for tracks where alternate configurations are not possible. While these terminus nodes will function, they come with some additional caveats.&nbsp;</p>



<p class="wp-block-paragraph">While terminus nodes can be properly simulated, you will need to add additional simulation logic to your PLC to properly run a simulation test of your system. Since MagneMotion will not know that the track on either side of the terminus node spot is next to each other when a vehicle exits through one terminus node it will not automatically appear on the other track section. Spoofing logic will be required to create an additional vehicle to receive it on the other track.&nbsp;</p>



<p class="wp-block-paragraph">Also, while MagneMotion supports disjointed tracks, many of the MagneMotion tools used in generating files will not work for non-contiguous tracks. For example, the “walk the paths” action will only create a configuration file with the paths of one disjointed section, any additional paths and nodes will need to be added manually. Similarly, the configurator tool cannot generate an .mmrtk file from the configuration of a disjointed track (though you can manually create an .mmtk file on your own using any text editor).&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-terminus-nodes.png" alt="Magnemotion Terminus Nodes"/></figure>



<p class="wp-block-paragraph">Terminus nodes also require more programming overhead to control and manage. Moving vehicles across a terminus node is more complicated than regular MagneMotion motion commands.&nbsp;</p>



<h2 id="h-step-2-controlling-motion-across-your-lift-nbsp" class="wp-block-heading">Step 2: Controlling Motion Across Your Lift&nbsp;</h2>



<p class="wp-block-paragraph">Once you have your track laid out, you need to consider how to best control the movement of vehicles across your track. &nbsp;</p>



<p class="wp-block-paragraph">Having moving track in your system adds another considerable risk to your project. If a vehicle is commanded off the lift track at the wrong time it can&nbsp;fly off the lift into empty air and hurt anyone nearby. While you could theoretically control your lift track the same exact way you control all your other track, it is always a good idea to add some extra precautions when dealing with moving track. &nbsp;</p>



<p class="wp-block-paragraph">It is also worth noting that MagneMover Lite is not a safety-rated system so including reasonable mechanical constraints in your system is also a good idea. Ideally, any system would be set up so that no matter what, a vehicle wouldn’t fall off the track.&nbsp;</p>



<h3 id="h-mechanical-restrictions-nbsp" class="wp-block-heading">Mechanical Restrictions&nbsp;</h3>



<p class="wp-block-paragraph">Implementing&nbsp;simple solutions like mechanical guarding around your track can help prevent incidents. Alternatively, adding cylinders to the end of a track that actuate to restrict vehicle motion can help ensure system reliability even if power is lost to the MagneMotion track.&nbsp;</p>



<p class="wp-block-paragraph">There are countless ways to design a system to prevent issues with moving track. It is important to consider the possible failure modes of the system and ensure that they are accounted for in the design.&nbsp;</p>



<h3 id="h-traffic-lights-nbsp" class="wp-block-heading">Traffic Lights&nbsp;</h3>



<p class="wp-block-paragraph">Traffic lights are used in MagneMotion systems to stop vehicles in certain spots of the track. For more information see <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights" type="link" id="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Blog Part 7: Traffic Lights</a>. </p>



<p class="wp-block-paragraph">Where moving track is used, it can be useful to keep traffic lights on either side of the track.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-traffic-lights.png" alt="magnemotion traffice light"/></figure>



<p class="wp-block-paragraph">To help ensure that no vehicles are commanded off the end of the track, the lights will be set to turn red when it is not safe for a vehicle to cross.&nbsp;</p>



<p class="wp-block-paragraph">It is important to note that the traffic light setting is not instantaneous. Not only is there a slight delay in a command for a traffic light being sent from the host controller, but any incoming vehicle will need time to decelerate before the traffic light.&nbsp;This means that when using traffic lights, they should be set to red before the moving track starts to get out of position to ensure there are no issues with incoming vehicles as the track is moving.&nbsp;</p>



<p class="wp-block-paragraph">Another consideration is that while traffic lights are defined as a single point on a track, they can take up a fair amount of space. When a vehicle is approaching a traffic light it will maintain a distance between itself and the traffic light based on its configured vehicle length.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-traffic-light-distance.png" alt="magnemotion traffic light distance"/></figure>



<p class="wp-block-paragraph">This means that track lifts can run into situations where there is insufficient space to have traffic lights and move vehicles onto the lift track.&nbsp;</p>



<h3 id="h-keepout-areas-nbsp" class="wp-block-heading">Keepout Areas&nbsp;</h3>



<p class="wp-block-paragraph">Another tool MagneMotion has for controlling vehicle flow is the creation of keepout areas. &nbsp;</p>



<p class="wp-block-paragraph">Keepout areas are configured spots on the track that are set up to make it less likely for vehicles to come to a stop in those spots. When a vehicle approaches a keepout area it will only continue into the area if it has permission to move through the entire area.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-keepout-area.png" alt="magnemotion keepout area"/></figure>



<p class="wp-block-paragraph">This means that vehicles will not get stuck in a keepout area when they’re backed up, but they will still be able to move through them if the track is clear. Similarly, any vehicles in the keepout area when the track suspends will continue moving until they are outside of the area.&nbsp;</p>



<p class="wp-block-paragraph">Unlike traffic lights, keepout areas cannot simply be turned on and off. They are defined in the MagneMotion configuration file and require updating that file and rebooting the system to change.&nbsp;</p>



<h3 id="h-defining-keepout-areas-nbsp" class="wp-block-heading">Defining Keepout Areas&nbsp;</h3>



<p class="wp-block-paragraph">Keepout areas are defined in the configuration file on a per motor basis. Each keepout area only applies to upstream or downstream motion. If vehicles will be moving across the keepout area from either direction make sure that both are configured correctly. &nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-define-keepout-areas.png" alt="magnemotion define keepout areas"/></figure>



<p class="wp-block-paragraph">For setting up a keepout area for moving downstream, the “No Move Permission After” parameters need to be set for each motor in the keepout area. The value should correspond to the distance between the start of the motor and the beginning of the keepout area (a value of 5 meters means this parameter is ignored).&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-keepout-area-parameters.png" alt="magnemotion keepout areas"/></figure>



<p class="wp-block-paragraph">In a keepout area that extends several motors, the first motor in the chain may have a positive value for where the keepout area begins but each motor after it needs to indicate that the keepout area began upstream of it. This means that each downstream keepout area needs to end on the endpoint of a motor.&nbsp;</p>



<p class="wp-block-paragraph">Similarly, for defining keepout areas moving upstream simply reverse this process using the “No Move Permission Before” parameter. Here the value means the distance from the start of the motor to the end of the keepout area (a value of -1m means that the motor is not in a keepout area).&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-no-keepout-area.png" alt="magnemotion no keepout area"/></figure>



<h3 id="h-using-keepout-areas-nbsp" class="wp-block-heading">Using Keepout Areas&nbsp;</h3>



<p class="wp-block-paragraph">For the use case of a lift or other moving track, a keepout area can be used to ensure that a vehicle does not stop halfway on the moving track during normal track operation.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-using-keepout-areas_1.png" alt="Using keepout areas in magnemotion"/></figure>



<p class="wp-block-paragraph">This will reduce the chance of a mechanical failure where the lift tries to move while a vehicle is in the way.&nbsp;</p>



<p class="wp-block-paragraph"><strong>Learn&nbsp;more about DMC&#8217;s MagneMotion programming <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/magnemotion-programming">expertise</a>&nbsp;and <a href="https://static.dmcinfo.com/contact">contact us</a> today to get started on your next project.&nbsp;</strong></p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://static.dmcinfo.com/blog/15796/magnemotion-guide-part-10-moving-track/">MagneMotion Guide Part 10: Moving Track</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 9: Traffic Jam Prevention</title>
		<link>https://static.dmcinfo.com/blog/16698/magnemotion-guide-part-9-traffic-jam-prevention/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Tue, 30 Jan 2024 18:30:33 +0000</pubDate>
				<category><![CDATA[Allen Bradley PLC]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[MagneMotion]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/16698/magnemotion-guide-part-9-traffic-jam-prevention/</guid>

					<description><![CDATA[<p>In my&#160;previous blog,&#160;MagneMotion Blog&#160;Part 8: Simulation, we discussed track simulation, a valuable tool MagneMotion offers to help test out MagneMotion controls before a track is even assembled. In this blog, we’ll discuss in detail how to manage traffic in your MagneMotion systems to prevent traffic jams and optimize your track’s efficiency. MagneMotion Guide Series Typical [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/16698/magnemotion-guide-part-9-traffic-jam-prevention/">MagneMotion Guide Part 9: Traffic Jam Prevention</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In my&nbsp;previous blog,&nbsp;<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Blog&nbsp;Part 8: Simulation</a>, we discussed track simulation, a valuable tool MagneMotion offers to help test out MagneMotion controls before a track is even assembled.</p>



<p class="wp-block-paragraph">In this blog, we’ll discuss in detail how to manage traffic in your MagneMotion systems to prevent traffic jams and optimize your track’s efficiency.</p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI’s</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/13686/magnemotion-guide-part-10-moving-track">MagneMotion Guide Part 10: Moving Track</a></li>
</ul>



<h2 id="h-typical-traffic-issues" class="wp-block-heading">Typical Traffic Issues</h2>



<p class="wp-block-paragraph">There are a few typical sources of traffic jams in a MagneMotion track:</p>



<p class="wp-block-paragraph"><u><strong>Source 1</strong></u></p>



<p class="wp-block-paragraph">The first, and often most frequent traffic jam, occurs when too many vehicles are sent to a branch of track. This&nbsp;causes the branch to overflow with vehicles and blocks off the rest of the track.</p>



<figure class="wp-block-image"><img decoding="async" alt="a traffic jam on a magnemotion track" height="438" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/traffic-source-1.png" width="900" /></figure>



<p class="wp-block-paragraph"><u><strong>Source 2</strong></u></p>



<p class="wp-block-paragraph">Another less frequent but problematic jam can occur when too many vehicles are trying to circulate through a central loop of track in the system. This can create&nbsp;a situation where no vehicles can pass through.</p>



<figure class="wp-block-image"><img decoding="async" alt="A traffic jam on a Magnemotion track" height="247" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/traffic-source-2.png" width="900" /></figure>



<p class="wp-block-paragraph"><u><strong>Source 3</strong></u></p>



<p class="wp-block-paragraph">The final common case occurs when vehicles need to be sent backwards on your track. When not done carefully, this can result in deadlocked vehicles that get in each other’s way.</p>



<figure class="wp-block-image"><img decoding="async" alt="A traffic jam on a Magnemotion Track" height="351" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/traffic-source-3.png" width="900" /></figure>



<p class="wp-block-paragraph">Below, we’ll go through a way to organize your PLC program to prevent any such traffic jams from occurring.</p>



<h2 id="h-step-1-monitoring-stations" class="wp-block-heading">Step 1: Monitoring Stations</h2>



<p class="wp-block-paragraph">The first step is to organize how the PLC program handles calls of the Station AOI.</p>



<p class="wp-block-paragraph">First, create a data type that will contain the station AOI instance along with the following information:</p>



<ul class="wp-block-list">
<li>A Boolean tag to enable the station</li>



<li>A Boolean command to send vehicles from the station</li>



<li>A dint to store the next station vehicles will be sent to</li>



<li>A dint to store the number of vehicles headed to the station</li>



<li>A dint to define the number of vehicles allowed to go to the station at a time</li>
</ul>



<p class="wp-block-paragraph">Now, create an arrayed tag that will store all of this information for each station on your track.</p>



<figure class="wp-block-image"><img decoding="async" alt="MagneMotion arrayed tag" height="310" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-arrayed-tag.png" width="900" /></figure>



<p class="wp-block-paragraph">Keeping all of the station information in a single centralized location will make it much easier to handle any complex routing logic.</p>



<p class="wp-block-paragraph">Next, you need to create some structured text logic to monitor each station for incoming vehicles.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-structured-text-logic.png" alt="structured text logic"/></figure>



<p class="wp-block-paragraph">By looping through the mover array in the MagneMotion device handler, you can check how many vehicles are headed to any given station. This will give you valuable insight into which sections of your track might be in danger of developing traffic jams without having to deal with the tricky logic of manually keeping track of all of the vehicles sent to a station.</p>



<h2 id="h-step-2-monitoring-paths" class="wp-block-heading">Step 2: Monitoring Paths</h2>



<p class="wp-block-paragraph">The second step in this setup is to create a similar udt to the one you made for stations. This path udt will contain the following information:</p>



<ul class="wp-block-list">
<li>A variable for the contents of a path</li>



<li>The size of the path</li>



<li>A Boolean for whether or not the path is full</li>
</ul>



<figure class="wp-block-image"><img decoding="async" alt="Path UDT in Magnemotion" height="213" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-path-udt.png" width="900" /></figure>



<p class="wp-block-paragraph">Next, you’ll create another structured text code for monitoring the contents of each path.</p>



<figure class="wp-block-image"><img decoding="async" alt="Structured text code for monitoring path contents." height="276" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-structured-text-code-for-monitoring.png" width="900" /></figure>



<p class="wp-block-paragraph">The above code will determine how many vehicles are currently on each path, allowing you to determine which sections of your track are already filled with vehicles.</p>



<p class="wp-block-paragraph">For efficiency’s sake, you can combine the path monitoring and station monitoring code into a single for loop.</p>



<h2 id="h-step-3-check-if-a-station-is-full" class="wp-block-heading">Step 3: Check if a Station is Full</h2>



<p class="wp-block-paragraph">So now that your PLC code is monitoring the status of all your stations and paths, how do you use that information to robustly manage your MagneMotion track?</p>



<p class="wp-block-paragraph">If you populate iPathSize and iNumAllowedIncoming values for your paths and stations, you can use some fairly simple logic to determine when a station is able to accept any new material.</p>



<p class="wp-block-paragraph">First, create a simple for loop to determine whether any paths are filled with vehicles.</p>



<figure class="wp-block-image"><img decoding="async" alt="Structured text for MagneMotion loop" height="156" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-structured-text-for-loop_1.png" width="900" /></figure>



<p class="wp-block-paragraph">Next, create some complimentary logic for determining whether any stations have too many vehicles being sent to them.</p>



<figure class="wp-block-image"><img decoding="async" alt="Loop logic for Magnemotion track." height="134" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-loop-logic.png" width="900" /></figure>



<p class="wp-block-paragraph">Note that, to check if a station is full, we must also check to see whether the path it’s on is full. This way, we will account for cases when a station is being backed up by vehicles that are going to another station.</p>



<p class="wp-block-paragraph">Also note that, if a path’s size or a station’s number of allowed incoming vehicles is 0, we will assume that the station/path is not full. This allows us to ignore paths and stations that will never cause traffic issues and reduce some of the overhead in setting up your track’s program.</p>



<h2 id="h-step-4-sending-vehicles" class="wp-block-heading">Step 4: Sending Vehicles</h2>



<p class="wp-block-paragraph">Since you have information on each station,&nbsp;you can use this information to check a station’s availability before you send another vehicle to it. You can do this piecemeal by just checking the bStationIsFull bit before directing vehicles to particularly problematic stations, but I find it’s usually better to integrate this check into your station logic for a more robust solution.</p>



<figure class="wp-block-image"><img decoding="async" alt="Station logic overview in MagneMotion" height="353" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-station-logic.png" width="900" /></figure>



<p class="wp-block-paragraph">Compare the above logic to the station logic in <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOIs</a>. Here, we will check whether the target destination is full before we send the current vehicle at this station to any destination. This way we can be confident that we won’t cause any traffic jams with the vehicles that are leaving this station.</p>



<p class="wp-block-paragraph">Also note how we latch the bit for checking if the destination station is full as we send a vehicle to it. This ensures that a station will only be sent one vehicle in a single PLC scan so&nbsp;that we don’t send multiple vehicles to one station before it&#8217;s&nbsp;capacity can be re-evaluated. If the station has room for multiple vehicles the bStationIsFull bit will be reset in the next&nbsp;scan, allowing another station to send its vehicle.</p>



<h2 id="h-step-5-preventing-loop-blockage" class="wp-block-heading">Step 5: Preventing Loop Blockage</h2>



<p class="wp-block-paragraph">The issue of too many vehicles stopping up a loop of track was also brought up in <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide Part 7: Traffic Lights</a>. Here we will go into more detail about how to actually develop the logic to trigger traffic lights.</p>



<figure class="wp-block-image"><img decoding="async" alt="Traffic jam on a Magnemotion Track" height="245" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-path-info.png"  width="900" /></figure>



<p class="wp-block-paragraph">Using the path information compiled in Step 2, we can easily determine how many vehicles are in the loop of track.</p>



<p class="wp-block-paragraph">From here, it is fairly straightforward to set up a basic system where&nbsp;when the number of vehicles in the loop exceeds a set value, we turn on traffic lights at each entrance to the loop. At this point, no more vehicles will be able to enter the loop while vehicles will still be able to exit the loop freely.</p>



<figure class="wp-block-image"><img decoding="async" alt="Structured text code. " hieght="167" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-structured-text-code-2.png"  width="900" /></figure>



<h2 id="h-step-6-backup-permissions" class="wp-block-heading">Step 6: Backup Permissions</h2>



<p class="wp-block-paragraph">If you find you need to send a vehicle in reverse direction down your track, you can also safely do this by monitoring path contents.</p>



<p class="wp-block-paragraph">For example, say you have a vehicle on a branch of your track that needs to back up back onto your main loop of track before continuing along.</p>



<p class="wp-block-paragraph">If you set up a traffic light on the main section of track and turn it red while there are no vehicles on the path you need to back up onto, you can be confident that you can back up your vehicle without causing a deadlock with a vehicle headed the other way.</p>



<figure class="wp-block-image"><img decoding="async" alt="MagneMotion track Overview" height="338" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-overview.png"  width="900" /></figure>



<h2 id="h-overview" class="wp-block-heading">Overview</h2>



<p class="wp-block-paragraph">Now that your PLC program is set up to monitor paths and stations, you are ready to further develop your MagneMotion track for maximum efficiency. These station and path checks are not meant to compose an entire routing system, but they are valuable building blocks for defining your own routing system.</p>



<p class="wp-block-paragraph">While only a few use cases for station and path monitoring have been shown here, the general tools these tactics provide can be used in a variety of ways and different systems to help guarantee that your track runs smoothly.</p>



<div class="wp-block-group alignwide has-custom-light-blue-background-color has-background is-layout-flow wp-container-core-group-is-layout-dbd34961 wp-block-group-is-layout-flow" style="border-radius:20px;margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50);padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0">
<div class="wp-block-columns alignwide are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-43efaee5 wp-block-columns-is-layout-flex" style="padding-right:var(--wp--preset--spacing--60);padding-left:var(--wp--preset--spacing--60)">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:85%">
<h3 class="wp-block-heading has-text-align-left" id="h-have-an-upcoming-project-dmc-can-help-you-take-the-next-step"><strong>Keep MagneMotion Traffic Moving Efficiently</strong>.</h3>



<p class="has-text-align-left wp-block-paragraph" id="h-need-help-turning-ideas-into-outcomes-automation-project-to-the-next-level-contact-us-today-to-learn-more-about-our-solutions-and-how-we-can-help-you-achieve-your-goals">Explore our <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/" data-type="page" data-id="420">Automation</a> expertise in <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/motion-control-engineering-and-servo-systems/independent-cart-technology-programming/" data-type="page" data-id="578">MagneMotion programming</a>, vehicle routing, path monitoring, and PLC-based traffic control.</p>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:15%">
<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-2236275c wp-block-buttons-is-layout-flex">
<div class="wp-block-button is-style-fill"><a class="wp-block-button__link has-base-contrast-color has-text-color has-link-color wp-element-button" href="https://static.dmcinfo.com/contact/">Contact Us</a></div>
</div>
</div>
</div>
</div>
<p>The post <a href="https://static.dmcinfo.com/blog/16698/magnemotion-guide-part-9-traffic-jam-prevention/">MagneMotion Guide Part 9: Traffic Jam Prevention</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to Configure a SuperTrak System</title>
		<link>https://static.dmcinfo.com/blog/16943/how-to-configure-a-supertrak-system/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Thu, 28 Dec 2023 15:23:52 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/16943/how-to-configure-a-supertrak-system/</guid>

					<description><![CDATA[<p>SuperTrak is a smart conveyance system that uses electromagnets to move pallets around a track with very fine precision. The nature of SuperTrak’s magnet-based controls offers several benefits over a more typical conveyance system by allowing each pallet to move independently of the rest of the pallets and providing real-time, precise location data for each [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/16943/how-to-configure-a-supertrak-system/">How to Configure a SuperTrak System</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">SuperTrak is a smart conveyance system that uses electromagnets to move pallets around a track with very fine precision. The nature of SuperTrak’s magnet-based controls offers several benefits over a more typical conveyance system by allowing each pallet to move independently of the rest of the pallets and providing real-time, precise location data for each pallet on the track.</p>



<p class="wp-block-paragraph">In this blog, we will walk through the basics of configuring a SuperTrak system.</p>



<h2 class="wp-block-heading" id="h-step-1-trakmaster-and-supertrak-simulation">Step 1: TrakMaster and SuperTrak Simulation</h2>



<p class="wp-block-paragraph">To begin working with SuperTrak, you will need to get the TrakMaster and SuperTrak Simulation tools from <a href="http://supertrakconveyance.com/products/trakmaster-software/" target="_blank">SuperTrak support</a>.</p>



<p class="wp-block-paragraph">To run the SuperTrak Simulation, simply run the program after installing. The simulation will start running, and you should see this window.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-1-resized.png" alt="Photo 1"/></figure>



<p class="wp-block-paragraph">After installing and running the TrakMaster software, you should see an option to connect to a system with the IP address used by the simulator (127.0.0.1). Click on the system and hit “Connect” to get to TrakMaster’s main window.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-2-resized.png" alt="Photo 2"/></figure>



<p class="wp-block-paragraph">TrakMaster will ask you if you want to get started with a tutorial. For now, click “close” to continue to TrakMaster.&nbsp;</p>



<p class="wp-block-paragraph">Note: if you want more information on SuperTrak configuration after reading this blog, you can return to the default tutorial the next time you connect to the simulator with TrakMaster.</p>



<p class="wp-block-paragraph">From TrakMaster, go to “Setup” &gt; “Quick Start” to initialize your system to a common default loop.&nbsp;</p>



<p class="wp-block-paragraph">To provide a more thorough understanding of the process, we’re going to start our track from scratch.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-3-resized.png" alt="Photo 3"/></figure>



<h2 class="wp-block-heading" id="h-step-2-define-the-track-layout">Step 2: Define the Track Layout</h2>



<p class="wp-block-paragraph">In TrakMaster, expand the “Advanced” tab and go to system layout. Here you can define the layout of your track.&nbsp;</p>



<p class="wp-block-paragraph">For this example, we are using a 3-meter-long loop with wide curves, but you can add/remove additional tracks to fit your system using the Append/Insert/Remove buttons at the bottom of the screen. You can also select* if your track is a loop or not and determine the standard flow of direction. </p>



<p class="wp-block-paragraph">Note: For loop tracks, the direction&nbsp;“Right” means that pallets will move to the right on the bottom half of the loop,&nbsp;a counterclockwise movement if you are looking at the track from above.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-4-resized.png" alt="Photo 4"/></figure>



<p class="wp-block-paragraph">Next, hit the “Save” button at the top of the screen. You will get a prompt about what you want to save. Make sure at minimum “System Layout” is checked, but also feel free to select all and then hit ok.&nbsp;</p>



<p class="wp-block-paragraph">Next, you’ll be asked if you want to reset the system. Feel free to hit “Yes”.</p>



<p class="wp-block-paragraph">Now if you go back to the “System Dashboard” window you should be able to see your track layout.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-5-resized.png" alt="Photo 5"/></figure>



<h2 class="wp-block-heading" id="h-step-3-configure-track-parameters">Step 3: Configure Track Parameters</h2>



<p class="wp-block-paragraph">Now that your track layout is configured, it is time to define the details of your track motion.&nbsp;</p>



<p class="wp-block-paragraph">Navigate to the “Global Parameters” section and look through the various details listed.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-6-resized.png" alt="Photo 6"/></figure>



<p class="wp-block-paragraph">These parameters affect all sorts of things about the track, but most importantly, set the basic motion parameters for how pallets will move.</p>



<p class="wp-block-paragraph">Note: We won’t go into every parameter listed, but make sure you adjust the maximum velocity and acceleration for your system to an appropriate level. Also, set the pallet length and pallet shelf offset to match the tooling you are going to install on your pallets.</p>



<p class="wp-block-paragraph">It is often a good idea to lower maximum velocity and acceleration during commissioning while the status of the track/system is still in flux.</p>



<h2 class="wp-block-heading" id="h-step-4-define-regions">Step 4: Define Regions</h2>



<p class="wp-block-paragraph">One of the most versatile tools that SuperTrak has is its regions.&nbsp;</p>



<p class="wp-block-paragraph">Regions are defined sections of track where the parameters of the track are changed.</p>



<p class="wp-block-paragraph">To begin making regions, go to the “Global Parameters” section and navigate to the “Regions” tab. Here, double-click on an empty region ID to begin configuring. </p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-7-resized.png" alt="Photo 7"/></figure>



<p class="wp-block-paragraph">In the above example, I created a region with a larger pallet gap than the rest of the track. </p>



<p class="wp-block-paragraph">Regions like this can be useful if you are loading large objects onto your pallets that would collide if the pallet gap distance was not increased.</p>



<p class="wp-block-paragraph">Take some time to think about what regions your system might need. A common region type requires you&nbsp;to define an area where pallets must move more slowly to allow something to interact with the pallet. Such as a burst of air that might clean the pallet of any lingering dust.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-8-resized.png" alt="Photo 8"/></figure>



<p class="wp-block-paragraph">Once you have created your regions, you can go back to the “System Dashboard” to see them laid out on the track. </p>



<p class="wp-block-paragraph">From the “Regions” tab on the right, you can also adjust the positions of any regions to ensure they match up with the desired region locations for your system.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-9-resized.png" alt="Photo 9"/></figure>



<p class="wp-block-paragraph">Note: Regions cannot overlap, if you need to create overlapping region effects, you will need to divide your regions into pieces and set them all up independently of each other.&nbsp;</p>



<h2 class="wp-block-heading" id="h-step-5-set-up-targets">Step 5: Set up Targets</h2>



<p class="wp-block-paragraph">Targets are the primary way SuperTrak controls which&nbsp;pallets go where. Typically, when a pallet needs to move from one location to another, the target it is located at is told to forward its pallet to the next target.</p>



<p class="wp-block-paragraph">A target should be placed at each location where a pallet will need to stop. To create targets, go to the“Targets” tab under the “Global Parameters” section. Here, you can enter the section and position you want each target to be in.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-10-resized.png" alt="Photo 10"/></figure>



<p class="wp-block-paragraph">Here I’ve created a few targets around my track and given them some basic descriptions to make it clear which target is which.</p>



<p class="wp-block-paragraph">Notice that when you go back to the System dashboard, you will see your targets represented on the screen.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-11-resized.png" alt="Photo 11"/></figure>



<h2 class="wp-block-heading" id="h-step-6-simulate-your-track">Step 6: Simulate Your Track</h2>



<p class="wp-block-paragraph">Now that we have our track set up, we can start simulating the track. Simulation will not only allow us to verify that we’ve set up the system correctly, but will also allow us to begin running tests on our system to determine roughly how long it will take for pallets to cross our track.</p>



<h3 class="wp-block-heading" id="h-step-6-a-change-track-settings-for-simulation">Step 6-a: Change Track Settings for Simulation</h3>



<p class="wp-block-paragraph">There are a few settings we’ll need to adjust to get your track running in Simulation properly.<br>
First, go to the “System Layout” page under the “Advanced” section. From there, set the “Enable Control” option to “TrakMaster”</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-12-resized.png" alt="Photo 12"/></figure>



<p class="wp-block-paragraph">Next, go to the “Sections” tab and set the “Load Target” for each section.&nbsp;</p>



<p class="wp-block-paragraph">The “Load Target” is the target ID that pallets on each section will head to on system startup. You can select “Copy to all Sections” to give&nbsp;all sections&nbsp;the same load target, or you can set it individually for each section.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-13-resized.png" alt="Photo 13"/></figure>



<p class="wp-block-paragraph"><strong>Now go back to “Global Parameters” and set “Assign ID to new pallets” to true</strong>. This will cause SuperTrak to assign a number to each pallet to help you keep track of them as they move&nbsp;around the system.&nbsp;</p>



<p class="wp-block-paragraph">If your system uses an IR reader to assign pallet IDs&nbsp;you will want to change this later, but for simulation, you&nbsp;will want this feature. <strong>Also make sure the “Enabled Simulation” box is set to true</strong>.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-14-resized.png" alt="Photo 14"/></figure>



<p class="wp-block-paragraph">Finally, in the “Advanced” section, go to “Simulation Configuration” and define the positions you will want vehicles to start in for Simulation.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-15-resized.png" alt="Photo 15"/></figure>



<p class="wp-block-paragraph">Here, I’ve just created two pallets in random spots of the track.</p>



<h3 class="wp-block-heading" id="h-step-6-b-run-your-simulation">Step 6-b: Run your Simulation</h3>



<p class="wp-block-paragraph">To begin running your Simulation, press the “Save” button at the top and confirm the parameters you want to save. </p>



<p class="wp-block-paragraph">Then, when prompted, specify&nbsp;that you <strong>do want to restart the system</strong>. If you go to the systems dashboard, you should see the pallets you defined earlier appear on the track.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-16-resized.png" alt="Photo 16"/></figure>



<p class="wp-block-paragraph">Now, when you press the “Enable System” button at the top of the screen, the pallets should be directed to whatever you set as your load target.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-17-resized.png" alt="Photo 17"/></figure>



<p class="wp-block-paragraph">Now, you can select a pallet in the “Pallets” tab on the right and direct it to a target by giving it a target ID and pressing “Go”.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-18-resized.png" alt="Photo 18"/></figure>



<p class="wp-block-paragraph">Note: Make sure you watch the pallets as they cross targets to ensure that they’re reacting appropriately.</p>



<h3 class="wp-block-heading" id="h-step-6-c-auto-release-pallets">Step 6-c: Auto Release Pallets</h3>



<p class="wp-block-paragraph">Now that you have your simulation moving pallets around the track, you can take advantage of another SuperTrak feature. This feature allows to have your pallets move around the track using simple automation.</p>



<p class="wp-block-paragraph">Simply go to the “Targets” section in the left-hand tab and expand the “Auto-release” section.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-19-resized.png" alt="Photo 19"/></figure>



<p class="wp-block-paragraph">Note: Here you can set a target to auto-release a pallet by selecting “After a minimum” and inputting a time in milliseconds that the target will wait before sending the pallet. </p>



<p class="wp-block-paragraph">On its own, though, that won’t do anything; you still need to tell the target where to send the pallet. </p>



<p class="wp-block-paragraph">Further down in the auto release tab, set the “Use move configuration” option to “Local” and set the ID to 1.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-20-resized.png" alt="Photo 20"/></figure>



<p class="wp-block-paragraph">Now go back to the “Global Parameters” section and under the “Move Configurations” tab, scroll down to the bottom where you should see options to create “Move Configurations” for each target.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-21-resized.png" alt="Photo 21"/></figure>



<p class="wp-block-paragraph">Create a configuration in Target 1 to move to Target 2.&nbsp;</p>



<p class="wp-block-paragraph">Now when your track is running, Target 1 will wait 400ms and then automatically forward its pallet to Target 2.</p>



<p class="wp-block-paragraph">Redo this process so that each Target in your system forwards pallets to the next target and press the “Save” button. Now you should be able to go back to the “System Dashboard” and monitor your pallets as they continuously circle around the track.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-22-resized.png" alt="Photo 22"/></figure>



<p class="wp-block-paragraph">This automatic releasing of pallets can be a useful tool for estimating the throughput of your system if you know roughly how long each process on your track will take.&nbsp;</p>



<p class="wp-block-paragraph">If you go to the “Statistics” page, you can even see useful information about the time spent heading to each target.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-23-resized.png" alt="Photo 23"/></figure>



<h2 class="wp-block-heading" id="h-step-7-setup-your-system-for-plc-control">Step 7: Setup your System for PLC Control</h2>



<p class="wp-block-paragraph">While controlling your track through TrakMaster is useful for setting up and testing your configuration, typically, systems will ultimately want their SuperTrak system controlled by a PLC.&nbsp;</p>



<p class="wp-block-paragraph">SuperTrak has built-in functions for communicating with a variety of PLCs. For this blog we’re going to go through configuring the system to talk to a Rockwell PLC over Ethernet/IP, but much of the process for connecting to other PLCs is similar.</p>



<p class="wp-block-paragraph">First, go to the “System Layout” page under “Advanced” and from “Enable Control” select either “Section Control” or “System Control”. These are both for controlling from an external system. The difference is whether you enable sections individually or all at once.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-24-resized.png" alt="Photo 24"/></figure>



<p class="wp-block-paragraph">Now go to the “Control Interfaces” section. Here you can configure an EtherNet/IP interface.&nbsp;</p>



<p class="wp-block-paragraph">Modify one of the configurations by entering its IP settings. Note that these settings are not the IP address of your PLC, they are for the network card in the SuperTrak system that the PLC communicates with. <strong>This is also a different IP address than the one you connect to via TrakMaster</strong>.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-25-resized.png" alt="Photo 25"/></figure>



<p class="wp-block-paragraph">Next, go to the “Data Layout” tab. Here you can set up what data gets sent to/from the PLC.&nbsp;</p>



<p class="wp-block-paragraph">Feel free to select “Defaults” &gt; “Ethernet/IP” to use the recommended default values. But if your system uses a lot of targets or network IO, you can increase/decrease the amount of space used by each type of message.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/picture-26-resized.png" alt="Photo 26"/></figure>



<p class="wp-block-paragraph">Now select “Save”, restart your system, and you should be all set to start setting up your PLC to control the SuperTrak system!</p>



<p class="wp-block-paragraph"><strong>Learn more about our <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence">Manufacturing Automation and Intelligence</a> expertise and our <a href="https://static.dmcinfo.com/careers#openpositions">open positions</a>!</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/16943/how-to-configure-a-supertrak-system/">How to Configure a SuperTrak System</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 8: Simulation</title>
		<link>https://static.dmcinfo.com/blog/18064/magnemotion-guide-part-8-simulation/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Tue, 22 Nov 2022 18:46:07 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[MagneMotion]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/18064/magnemotion-guide-part-8-simulation/</guid>

					<description><![CDATA[<p>In our previous blog (MagneMotion Blog Part 7: Traffic Lights) we discussed how to best make use of MagneMotion&#8217;s traffic light feature to control the flow of vehicles around your track. In this blog, we&#8217;ll discuss how to simulate a MagneMotion track. Simulation can be a powerful tool for testing things out on your system, [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/18064/magnemotion-guide-part-8-simulation/">MagneMotion Guide Part 8: Simulation</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">In our previous blog (<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Blog Part 7: Traffic Lights</a>) we discussed how to best make use of MagneMotion&rsquo;s traffic light feature to control the flow of vehicles around your track. In this blog, we&rsquo;ll discuss how to simulate a MagneMotion track.</p>

<p class="wp-block-paragraph">Simulation can be a powerful tool for testing things out on your system, especially if you&rsquo;re waiting on long lead time hardware to actually commission your system. Fortunately, MagneMotion has a very simple Simulation setup that works very reliably.</p>

<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>

<ul class="wp-block-list">
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI&rsquo;s</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/13686/magnemotion-guide-part-10-moving-track">MagneMotion Guide Part 10: Moving Track</a></li>
</ul>

<h2 class="wp-block-heading">Requirements</h2>

<p class="wp-block-paragraph">To simulate a MagneMotion track, you will need a physical Node Controller that will run the actual simulation. Even if your system will need multiple Node Controllers, you typically only need a single Node Controller to run that track in simulation mode as long as your entire track can fit on a single High Level Control group.</p>

<p class="wp-block-paragraph">While you can get some value out of a simulation of just a Node Controller and an NC Host, you will also likely want to have a physical PLC to run your controls software on so that you can more fully test out your routing logic.</p>

<p class="wp-block-paragraph">For the purposes of this blog, we&rsquo;ll assume you already have a configuration file for your Node Controller (<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a>) and a PLC project to use for simulation (<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a>).</p>

<h2 class="wp-block-heading">Updating the Configuration Files</h2>

<p class="wp-block-paragraph">The first step in simulating your track is to update your configuration file to include simulated vehicles.</p>

<p class="wp-block-paragraph">If you cannot see the simulated vehicles under the Paths of your system, go to Options &gt; Show Simulated Vehicles to display them.</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion Configurator options menu" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-part-8-options-menu-1.png"  /></figure>

<p class="wp-block-paragraph">Now, open whichever path you want to place your simulated vehicles on, right click on Simulated Vehicles, and select &ldquo;Add To End.&rdquo;&nbsp;This will create a simulated vehicle that will appear on that path on startup in the specified location.</p>

<figure class="wp-block-image"><img decoding="async" alt="MagneMotion configurator window" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-part-8-configurator-window-2.png"  /></figure>

<p class="wp-block-paragraph">Repeat the above steps to create as many vehicles as you want for your simulation. Make sure to separate the vehicle locations so that they are not all in the same spot, and&nbsp;do not add more vehicles than what&nbsp;can fit on the path.</p>

<h2 class="wp-block-heading">Simulate the Node Controller</h2>

<p class="wp-block-paragraph">Now that you have an updated configuration file, go to the Node Controller web page and upload the new configuration file.</p>

<p class="wp-block-paragraph">Once that is done, go to the IP Settings page of the Node Controller and check the box that says &ldquo;This box is a High Level Controller Simulator&rdquo; under Configured Functions. Make sure that the other two boxes are unchecked.</p>

<figure class="wp-block-image"><img decoding="async" alt="IP Settings window" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-part-8-node-controller-ip-settings-3.png"  /></figure>

<p class="wp-block-paragraph">Next, hit the Apply Changes button and reboot the Node Controller. When that is done, you should be all set to run your simulation.</p>

<p class="wp-block-paragraph">To verify that it worked, openNC Host (<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a>), attempt to reset, and then startup the paths on your simulated Node Controller. If everything is working properly, you should be able to see the simulated vehicles you added to the configuration file.</p>

<h2 class="wp-block-heading">PLC Simulation</h2>

<p class="wp-block-paragraph">There should not be a need for PLC code changes to get your PLC to work with a simulated Node Controller. As far as the PLC is concerned, a simulated Node Controller and a Node Controller running an actual line of MagneMotion track are the same thing. The logic for connecting to the controller, sending commands to it, and interpreting messages from it should all be the same in a simulated environment.</p>

<p class="wp-block-paragraph">This does not mean it is impossible for new issues to arise once the PLC program is moved to work with a non-simulated Node Controller, however. The time it takes the Controller to run various instructions will be different in a simulated Controller, so watch out for race conditions.</p>

<p class="wp-block-paragraph">It is also entirely possible that the Node Controller will pass back slightly different messages to the PLC while it is being simulated, and there are numerous errors and fault conditions that can only appear when using actual MagneMotion track that a simulation will not catch.</p>

<h2 class="wp-block-heading">Simulation Tips</h2>

<p class="wp-block-paragraph">While you are simulating your system, there are several important things to keep in mind.</p>

<p class="wp-block-paragraph">First, always remember that&nbsp;&mdash;&nbsp;while the MagneMotion simulation does a great job simulating routing vehicles along a representation of your track&nbsp;&mdash;&nbsp;there will always be additional considerations with a physical system. Any physical considerations like vehicle nest collisions, unbalanced vehicles, or devices interacting with the MagneMotion track will not be accounted for in the Simulation.</p>

<p class="wp-block-paragraph">Second, it is also important to attempt to simulate a variety of conditions in your system. Typically, the easiest way to do this is to regularly modify your configuration file to have different amounts of vehicles and change where vehicles are positioned on the track, but additional variety should be added by manually redirecting vehicles around the track to ensure that all the routing edge conditions are checked.</p>

<p class="wp-block-paragraph">A physical environment is much less predictable than a simulated environment, so it is important to make sure that the routing software is not only tested for a single, ideal set of conditions.</p>

<h2 class="wp-block-heading">Positive Things to Verify Through Simulation</h2>

<ol class="wp-block-list">
 <li><strong>Station Layout</strong></li>
</ol>

<p class="wp-block-paragraph">Having your track simulated is a good opportunity to verify your overall track layout. While you cannot fully verify that your track layout is ok in simulation, you can make sure that the Node Controller is able to send vehicles from point A to point B without issue. This will allow you to catch various errors that can stem from configuration file issues</p>

<ol class="wp-block-list">
 <li value="2"><strong>General PLC and Node Controller communication</strong></li>
</ol>

<p class="wp-block-paragraph">Since the Node Controller communicates to the PLC in the same way, regardless of whether it is a simulated controller, simulation offers a great chance to test PLC communications. The configured connection to the Node Controller, along with all of the array lengths used in the MMI tags passed between the Controller and the PLC, can all be verified in simulation</p>

<ol class="wp-block-list">
 <li value="3"><strong>Routing Logic</strong></li>
</ol>

<p class="wp-block-paragraph">The main thing to test in any track simulation is whether the PLC logic works. All logic surrounding whether the PLC is telling which vehicles to move, the location to which they should move, and at what time, can typically be very robustly simulated.</p>

<p class="wp-block-paragraph">This is a great chance to test if vehicles are being told to go to the right stations and to verify that the PLC is appropriately tracking any information associated with each vehicle. Keep in mind that there will potentially be some differences with the various reactions the Node Controller has to PLC commands that could affect the functionality of the PLC logic.</p>

<ol class="wp-block-list">
 <li value="4"><strong>Traffic Light Operation</strong></li>
</ol>

<p class="wp-block-paragraph">Traffic lights can be fairly reliably simulated; however, keep in mind that, since the timing of Node Controller actions will vary between a simulated controller and running actual track, any time sensitive traffic light operations cannot be tested (ex. if you want to set a traffic light red before a vehicle gets to the end of a path, you would not be able to properly test the timing of the traffic light in simulation.)</p>

<p class="wp-block-paragraph">Also, keep in mind that the ICT library blocks for handling traffic lights are relatively new, so they are liable to have fault messages pop up when running on an actual track that might not show up during simulation.</p>

<ol class="wp-block-list">
 <li value="5"><strong>System Throughput Estimations</strong></li>
</ol>

<p class="wp-block-paragraph">While simulation is not suited for calculating exact throughput calculations, it can be a very useful way to get a rough benchmark of your system&rsquo;s throughput. It is fairly easy to modify your PLC code to use a variety of timers to test how quickly your system can run and to see how long it will take vehicles to cross your track.</p>

<figure class="wp-block-image"><img decoding="async" alt="MagneMotion track" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-part-8-track-4_1.png"  /></figure>

<ol class="wp-block-list">
 <li value="6"><strong>Traffic Jam Analysis</strong></li>
</ol>

<p class="wp-block-paragraph">Simulation can also be a valuable tool for testing whether your system has any concerning traffic jams that might need to be addressed. Simulation is a great time to answer questions like: Does sending too many vehicles to Station A block off Station B? If vehicles leave Stations C and D at similar times, do they get in each other&rsquo;s way?</p>

<p class="wp-block-paragraph">By varying the number of simulated vehicles on your track and the starting locations of those vehicles, you can robustly test routing vehicles across your system to get an early diagnosis of any lingering traffic considerations.</p>

<h2 class="wp-block-heading">Negative&nbsp;Things to Verify Through Simulation</h2>

<ol class="wp-block-list">
 <li><strong>Vehicle spacing and collision avoidance</strong></li>
</ol>

<p class="wp-block-paragraph">Theoretically, the vehicle length set in the MagneMotion configuration file will prevent any vehicle collisions, but, in practice, it is always a good idea to thoroughly verify that vehicles placed close to each other will not collide when going through switches or when going around hairpin turns. Take special care if your vehicles are notably wider than the MagneMotion pucks.</p>

<p class="wp-block-paragraph">It is likely you will also need to fine-tune the positions of many of the stations and traffic lights of your system; while a first pass of this can be done in simulation, the final values for these positions should be set during the commissioning of the physical track.</p>

<ol class="wp-block-list">
 <li value="2"><strong>Track Startup</strong></li>
</ol>

<p class="wp-block-paragraph">The general function of any startup logic can be tested in simulation (configuring MM communication, resetting paths, creating traffic lights, etc.); however, since one of the main purposes of startup logic is to recover from faults, it is very difficult to verify that it recovers from issues. This is because&nbsp;simulated tracks will always start from an ideal clean slate.</p>

<p class="wp-block-paragraph">Feel free to run some tests on startup logic for simulation, but do not assume a startup sequence that works in simulation will also work with a physical track.</p>

<ol class="wp-block-list">
 <li value="3"><strong>Station Positions</strong></li>
</ol>

<p class="wp-block-paragraph">Since station positions are generally affected by physical factors like robot arms, device positions, or Operator preference, it is generally best to hold off on fine-tuning station positions&nbsp;until you are working on the physical tracks.</p>

<ol class="wp-block-list">
 <li value="4"><strong>Node Controller Load</strong></li>
</ol>

<p class="wp-block-paragraph">In the General Status page of the Node Controller webpage, there is a value for the load average of the Node Controller. These values should always be less than 1 (ideally less than 0.8). If the values for this get too high, it is an indication that your Node Controller is overloaded. Simulation will typically have very low Load Averages, but this is not an indication that the actual implementation of the track will have similarly low load averages.</p>

<figure class="wp-block-image"><img decoding="async" alt="General status web page of node controller website. " src="https://static.dmcinfo.com/wp-content/uploads/2025/05/magnemotion-guide-part-8-node-controller-general-status-5.png"  /></figure>

<ol class="wp-block-list">
 <li value="5"><strong>Networking</strong></li>
</ol>

<p class="wp-block-paragraph">Since a simulated Node Controller will not be networked to the various MagneMotion motors, do not assume that the PLC and the Node Controller networking is fully functional from simulated tests alone.</p>

<ol class="wp-block-list">
 <li value="6"><strong>MICS File</strong></li>
</ol>

<p class="wp-block-paragraph">Simulation testing will not verify whether the MICs file has the correct MAC addresses or the correct orientations for motors.</p>

<ol class="wp-block-list">
 <li value="7"><strong>Terminus Node Handling</strong></li>
</ol>

<p class="wp-block-paragraph">There have been issues simulating Terminus Nodes and having vehicles enter and leave through them. While there have been some recent MagneMotion firmware updates that should improve this issue, you should still be extra careful when testing Terminus Node behavior after simulation.</p>

<p class="wp-block-paragraph"><strong>Topics to look forward to in this series:&nbsp;</strong></p>

<ul class="wp-block-list">
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>
</ul>

<p class="wp-block-paragraph"><strong>Learn more about DMC&apos;s&nbsp;<a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/magnemotion-programming">MagneMotion expertise</a>&nbsp;and&nbsp;<a href="https://static.dmcinfo.com/contact">contact us</a>&nbsp;to get started on your next project.&nbsp;</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/18064/magnemotion-guide-part-8-simulation/">MagneMotion Guide Part 8: Simulation</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 7: Traffic Lights</title>
		<link>https://static.dmcinfo.com/blog/18181/magnemotion-guide-part-7-traffic-lights/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Fri, 21 Oct 2022 13:10:12 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/18181/magnemotion-guide-part-7-traffic-lights/</guid>

					<description><![CDATA[<p>In our previous blog (MagneMotion Blog Part 6: Track Recovery Considerations), we discussed the best way to startup your MagneMotion system or recover your routing system after a stop or a fault condition. In this blog we’ll discuss an important MagneMotion tool for controlling your system—the Traffic Light. MagneMotion Guide Series What are Traffic Lights? [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/18181/magnemotion-guide-part-7-traffic-lights/">MagneMotion Guide Part 7: Traffic Lights</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In our previous blog (<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Blog Part 6: Track Recovery Considerations</a>), we discussed the best way to startup your MagneMotion system or recover your routing system after a stop or a fault condition. In this blog we’ll discuss an important MagneMotion tool for controlling your system—the Traffic Light.</p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI’s</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/13686/magnemotion-guide-part-10-moving-track">MagneMotion Guide Part 10: Moving Track</a></li>
</ul>



<h2 id="h-what-are-traffic-lights" class="wp-block-heading">What are Traffic Lights?</h2>



<p class="wp-block-paragraph">In a MagneMotion track, traffic lights are simply defined points on your track that can either be set to Green to allow vehicles to pass through or set to Red to prevent any vehicle from passing that point (there is no yellow light in a MagneMotion traffic light).</p>



<p class="wp-block-paragraph">As you can imagine, as MagneMotion systems get increasingly large and complex, traffic lights are an important tool in directing the flow of vehicles throughout your system to make sure they arrive in a timely fashion.</p>



<h2 id="h-traffic-light-uses" class="wp-block-heading">Traffic Light Uses</h2>



<h3 id="h-1-completely-blocking-off-a-section-of-track" class="wp-block-heading">1. Completely Blocking off a Section of Track</h3>



<p class="wp-block-paragraph"><p style="margin-left:.5in;">Traffic lights can be used to block off a section of track where it wouldn’t be safe or smart to move a vehicle. For example, if there is a segment of your track that lifts out of position, traffic lights can be positioned on either end of the track to make sure no vehicles can move from it while it is not in position</p></p>



<h3 id="h-2-controlling-traffic-flow" class="wp-block-heading">2. Controlling Traffic Flow</h3>



<p class="wp-block-paragraph"><p style="margin-left:.5in;">If your track has any branches off sections of track that experience high throughput of vehicles, any vehicles trying to leave that branch might get stuck waiting for an opportunity to move. A traffic light placed right before that branch can be used to create a break in a line of vehicles</p></p>



<p class="wp-block-paragraph"><p style="margin-left:.5in;"></p></p>



<h3 id="h-3-traffic-jam-prevention" class="wp-block-heading">3.Traffic Jam Prevention</h3>



<p class="wp-block-paragraph"><p style="margin-left:.5in;">You might find that your track has one or more places where having too many vehicles can cause a full-on traffic jam&nbsp;—&nbsp;causing your whole line to get backed up and stuck. Adding traffic lights before any of these choke points can ensure that your line never gets into unrecoverable situations.</p></p>



<p class="wp-block-paragraph"><p style="margin-left:.5in;"></p></p>



<p class="wp-block-paragraph"><p style="margin-left:.5in;">Note how none of these vehicles will be able to leave this loop of track.</p></p>



<h2 id="h-nc-host-control" class="wp-block-heading">NC Host Control</h2>



<p class="wp-block-paragraph">A good tool to familiarize yourself with traffic light operation is <a href="https://compatibility.rockwellautomation.com/Pages/MultiProductFindDownloads.aspx?crumb=112&amp;mode=3&amp;refSoft=1&amp;versions=59134" type="link" id="https://compatibility.rockwellautomation.com/Pages/MultiProductFindDownloads.aspx?crumb=112&amp;mode=3&amp;refSoft=1&amp;versions=59134">MagneMotion’s NC Host tool</a>.</p>



<p class="wp-block-paragraph">To create a traffic light In NC Host, go to the <strong>Traffic Light</strong> tab under <strong>Host Commands</strong>. Then, enter a path and position for the traffic light and hit <strong>Create</strong></p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-3.png" alt="Graphical user interface, applicationDescription automatically generated"/></figure>



<p class="wp-block-paragraph">Once the light has been created, you can change its state between red and green by entering the traffic light’s ID by the <strong>TL ID</strong> entry and press the nearby green and red button to change the color.</p>



<p class="wp-block-paragraph">If you press the <strong>Traffic Lights</strong> button in the <strong>Launch Status Windows</strong> section, you can pull up an image showing the status of the traffic lights in your system.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-4.png" alt=""/></figure>



<h2 id="h-system-configuration" class="wp-block-heading">System Configuration</h2>



<p class="wp-block-paragraph">If you are planning on using a PLC to control your traffic lights, the first thing to do is to make sure that the MagneMotion device handler was properly configured within Application Code Manager (for information on how to set up a project through Application Code Manager see <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a>).</p>



<p class="wp-block-paragraph">Since traffic light controls are not a part of the default AOIs that are included in the ICT library,&nbsp;first in Application Code Manager, right click the MagneMotion device handler and select <strong>Add New.</strong></p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-5.png" alt="Graphical user interface, applicationDescription automatically generated"/></figure>



<p class="wp-block-paragraph">In the wizard that pops up, type “raM_Opr_MM” in the filter box. You should see the <strong>Asynchronous Motion</strong> category that contains three AOIs for managing traffic lights. One by one, add the three traffic light AOIs to your project.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-6.png" alt=""/></figure>



<p class="wp-block-paragraph">Once this is done, you can generate the new controller to create a MagneMotion device handler that is capable of controlling traffic lights.</p>



<p class="wp-block-paragraph">If you want to update the MagneMotion device handler in an existing program, you can export the MagneMotion program (raM_Dvc_DH_MM)&nbsp;in from your newly generated project and re-import it in to your existing program along with the traffic light AOIs that you want to use. Note that it is not enough to just import the traffic light AOIs since Application Code Manager also has to modify the MagneMotion device handler to support traffic lights</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-7.png" alt=""/></figure>



<p class="wp-block-paragraph">Now that the PLC program is set up, the next step is to update the Node Controller to allow PLC controlled traffic lights.</p>



<p class="wp-block-paragraph">In the MagneMotion Configurator tool pull up your Node Controller configuration file. Under <strong>PLC EthernNet/IP</strong>, click the box for <strong>Enable Traffic Lights</strong> and fill out the <strong>Maximum Traffic Light ID</strong> value.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-8.png" alt=""/></figure>



<p class="wp-block-paragraph">Once the new configuration file is uploaded to the Node Controller in the PLC tags, make sure that the traffic light arrays are the right size. Once that’s done you should be all set to use your PLC to control the traffic light<br>
</p>



<h2 id="h-creating-traffic-lights" class="wp-block-heading">Creating Traffic Lights</h2>



<p class="wp-block-paragraph">To create a traffic light from the PLC, you have to make use of the Create Traffic Light AOI.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-10.png" alt=""/></figure>



<p class="wp-block-paragraph">Setting this AOI up is simple. First, create an instance of the AOI raM_Opr_MM_CreateTrafficLight in your program and put the Hndl tag from the device handler into the Ref_Handle input. Next, populate the Cfg_PathID and Cfg_Position tags for your traffic light (the position value should be the distance in mm from the start of your path to the traffic light position).</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-11.png" alt=""/></figure>



<p class="wp-block-paragraph">Toggling bCreateTrafficLight in the above code will command the PLC to send a message to the Node Controller to create a traffic light. Note that you do not define what the ID of the new traffic light will be;&nbsp;the Node Controller simply assigns it the next available ID. It is usually a good idea to store the Sts_TrafficLightId returned by the AOI so that you can use the traffic light later.</p>



<h2 id="h-setting-traffic-lights" class="wp-block-heading">Setting Traffic Lights</h2>



<p class="wp-block-paragraph">The Set Traffic Light AOI is used to send messages to the Node Controller to change the color of a traffic light.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-12.png" alt=""/></figure>



<p class="wp-block-paragraph">To use this AOI, create an instance of it and add the <strong>Device Handler Hndl</strong> tag. Then, just set the ID of the traffic light you wish to set, the color you want to set the traffic light (0 is Green, 1 is Red), and run the AOI.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-13.png" alt=""/></figure>



<p class="wp-block-paragraph">Toggling bSetTrafficLightGreen in the above code will command the PLC to send a message to the traffic light created earlier to change it green.</p>



<h2 id="h-deleting-traffic-lights" class="wp-block-heading">Deleting Traffic Lights</h2>



<p class="wp-block-paragraph">Traffic lights will be deleted whenever the path they are on is reset. This means that it is important to include logic to recreate your traffic lights in your track startup logic.</p>



<p class="wp-block-paragraph">You can do this by triggering a command to create traffic lights into whatever sequence you use to reset paths. However, a useful tactic can also be to check the status of the path the traffic light is on and triggering a creation command whenever the path becomes Operational</p>



<p class="wp-block-paragraph">If you are planning on using traffic lights to restrict movement of vehicles to areas where machinery might collide with a vehicle, make sure to verify that the traffic lights have been created before sending any vehicle commands. Information on existing traffic lights can be found in the MMI_traffic_light_status controller tag.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-13_1.png" alt=""/></figure>



<p class="wp-block-paragraph">If you want to delete a traffic light, there is an AOI similar to the Set Traffic Light AOI that can be used basically the same way.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/MagneMotion-Traffic-Lights-14.png" alt=""/></figure>



<p class="wp-block-paragraph"><strong><span id="cke_bm_192C" style="display: none;">&nbsp;</span>Topics to look forward to in this series:&nbsp;</strong></p>



<p class="wp-block-paragraph"><strong>Topics to look forward to in this series:&nbsp;</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Blog Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>
</ul>



<p class="wp-block-paragraph"><strong>Learn more about DMC&#8217;s&nbsp;<a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/magnemotion-programming">MagneMotion expertise</a>&nbsp;and&nbsp;<a href="https://static.dmcinfo.com/contact">contact us</a>&nbsp;to get started on your next project.&nbsp;</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/18181/magnemotion-guide-part-7-traffic-lights/">MagneMotion Guide Part 7: Traffic Lights</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 6: Track Recovery Considerations</title>
		<link>https://static.dmcinfo.com/blog/18736/magnemotion-guide-part-6-track-recovery-considerations/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Mon, 14 Feb 2022 16:13:07 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[PLC]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/18736/magnemotion-guide-part-6-track-recovery-considerations/</guid>

					<description><![CDATA[<p>In the last blog (MagneMotion Blog Part 5: Advanced Vehicle Controls) &#160;we discussed using additional PLC commands to send vehicles around a track. Here we&#8217;ll discuss general strategy for reinitializing and startup up your MagneMotion system. MagneMotion Guide Series Track Recovery Overview One of the difficulties of managing a MagneMotion system is learning how to [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/18736/magnemotion-guide-part-6-track-recovery-considerations/">MagneMotion Guide Part 6: Track Recovery Considerations</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">In the last blog (<a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Blog Part 5: Advanced Vehicle Controls</a>) &nbsp;we discussed using additional PLC commands to send vehicles around a track. Here we&rsquo;ll discuss general strategy for reinitializing and startup up your MagneMotion system.</p>

<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>

<ul class="wp-block-list">
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI&rsquo;s</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/13686/magnemotion-guide-part-10-moving-track">MagneMotion Guide Part 10: Moving Track</a></li>
</ul>

<h2 class="wp-block-heading">Track Recovery Overview</h2>

<p class="wp-block-paragraph">One of the difficulties of managing a MagneMotion system is learning how to properly startup the track and get things running. Whether you&rsquo;re starting up the track for the first time or recovering after a major fault or a power cycle, there is a single sequence you should take your system through to get everything operational again.</p>

<p class="wp-block-paragraph">Here is a short list of the various reasons you might need to re-startup your MagneMotion track:</p>

<p class="wp-block-paragraph" style="margin-left: 40px;">&bull;&nbsp; &nbsp; There was a power cycler of motors or node controllers<br />
&bull;&nbsp;&nbsp; &nbsp;A communication/network issue between the node controllers and the motors<br />
&bull;&nbsp;&nbsp; &nbsp;A communication fault between the node controllers and the PLC<br />
&bull;&nbsp;&nbsp; &nbsp;Motor faults that stop movement on the track<br />
&bull;&nbsp;&nbsp; &nbsp;Vehicles have been pushed out of position and are now &ldquo;suspect&rdquo;<br />
&bull;&nbsp;&nbsp; &nbsp;Configuration file changes</p>

<p class="wp-block-paragraph">While all these issues have potentially different resolutions, it is generally preferred to take care of all of these issues in a single startup sequence to make sure that all edge cases are handled on recovery and to make the operator interaction of the line as easy as possible.</p>

<p class="wp-block-paragraph">In this article, we&rsquo;ll look into each of the steps this sequence has to take to fully recover the track and what each step does for the overall MagneMotion system.</p>

<h2 class="wp-block-heading">Step 1: &nbsp;Reinitialization</h2>

<p class="wp-block-paragraph">Among the list of useful ICT library AOIs is the Device Status AOI. This AOI is mainly used to check on the current status of the MagneMotion system and its connection to the PLC.</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6.png"  /></figure>

<p class="wp-block-paragraph">When you&rsquo;re recovering your MagneMotion track, the first thing that should be done is triggering the Inp_Reinitialize bit of the Device Status AOI. This will cause the PLC to get rid of the current connection to the High Level Node Controller (HLC) ensuring that whatever you do next will be happening from a clean slae.</p>

<p class="wp-block-paragraph"><figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_2.png"  /></figure>&nbsp;</p>

<p class="wp-block-paragraph">After triggering the reinitialize bit you should check the connection statuses from the Device Status AOI. Once the AOI is back to being Connected and Idle the reinitialization process is complete.</p>

<h2 class="wp-block-heading">Step 2: Configuration</h2>

<p class="wp-block-paragraph">The next step in our sequence is to use the Configuration AOI to re-configure the PLC to HLC communication. (Learn more about the Configuration AOI in <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a>)</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_3.png"  /></figure>

<p class="wp-block-paragraph">Using the Configuration AOI will direct the PLC to connect to the right IP address for the System&rsquo;s High Level Controller. This step help to ensure that the PLC and HLC are communicating properly. If there is an issue with the communication, the Configure AOI should throw a fault to indicate its inability to connect. Once this instruction completes the sequence can proceed to the next step.</p>

<h2 class="wp-block-heading">Step 3: Disable Stations</h2>

<p class="wp-block-paragraph">Typically, MagneMotion systems controlled by a PLC will have several Stations created to help control where vehicles are sent to. (Learn more about stations in <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI&rsquo;s</a>)</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_4.png"  /></figure>

<p class="wp-block-paragraph">If at any point a station encounters a problem it will throw an error and stop working until that error is cleared. This means that any vehicles directed to this station will remain stationary on the track and any vehicles at this station will be stuck. Typically, this happens when a vehicle that cannot reach a station is told to move there.<br />
To clear station errors the Station AOI needs to temporarily stop receiving calls, so in this step we disable the station call.</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_5.png"  /></figure>

<h2 class="wp-block-heading">Step 4: Reset Paths</h2>

<p class="wp-block-paragraph">If there have been any sort of errors with MagneMotion motors or with vehicles on the track, the paths of the system will need to be reset using the Path AOI (Learn more about paths in <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI&rsquo;s</a>)</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_6.png"  /></figure>

<p class="wp-block-paragraph">Resetting the paths will cause the MagneMotion system to lose track of which vehicles are where. If in your system you do any sort of internal tracking of what is on each vehicle, you will want to clear that information out before resetting paths so that your PLC will not have outdated/incorrect information about the contents of each vehicle.<br />
This is generally the most important step in the Startup Sequence. At this point any track issues should be resolved, all that is left is to finish starting the track back up and get vehicles moving again.</p>

<h2 class="wp-block-heading">Step 5: Enable Stations</h2>

<p class="wp-block-paragraph">Now that paths are reset it is safe to re-enable stations. If stations are re-enabled before the resetting step any ongoing faults in the track could re-trigger the station faults requiring them to be disabled again before they can be operational.<br />
For example, if a station was faulted by a vehicle being improperly directed to it, that station fault will not be able to be cleared until the paths have been reset removing that vehicle from the track.</p>

<p class="wp-block-paragraph">&nbsp;<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_7.png"  /></figure><br />
This will allow the station AOIs to be called again, clearing any errors they had and allowing them to operate normally again.</p>

<h2 class="wp-block-heading">Step 6: Startup the Track</h2>

<p class="wp-block-paragraph">This step is a complement to the previous one. Here we send a startup command to all the paths in the system which will make the track operational again and assign vehicle IDs to everything on the track.</p>

<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_8.png"  /></figure>

<p class="wp-block-paragraph">Every once in a while, the Startup AOI will briefly set the STS_PC output to indicate that it is done before it sets the STS_ER output to indicate that a path has faulted. To make sure everything is properly started up, I usually like to add in a brief delay before proceeding to the next step.</p>

<h2 class="wp-block-heading">Step 7: Vehicle Homing</h2>

<p class="wp-block-paragraph">Now that the track has been successfully started up, the next step is to tell all of the vehicles on your track where to go. There are several different ways to do this, and each system will have different requirements about what needs to happen to vehicles on a startup. I typically like to go with sending every vehicle to a single startup location that then decides where each vehicle can go as they show up.</p>

<p class="wp-block-paragraph"><figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_9.png"  /></figure>&nbsp;<br />
&nbsp;<figure class="wp-block-image"><img decoding="async" alt="Magnemotion interface" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_10.png"  /></figure><br />
In the above example we simply iterate through the Mover array from the ICT Library programs and direct each vehicle to a defined station. We also have a quick check to make sure that vehicles on one particular path (which can&rsquo;t reach the home station) are not directed to the home station.<br />
For your system you can also fairly easily decide to direct vehicles to different locations based on their location on startup with some additional checks to vehicle position before you set their target station ID.</p>

<h2 class="wp-block-heading">Step 8: Data Tracking Recovery</h2>

<p class="wp-block-paragraph">So far, the startup sequence works for a system that doesn&rsquo;t require tracking the information on vehicles, or a system that would clear vehicle contents out before the track has started up. But what should you do if you want your system to remember what is on each vehicle even after a complete restart of the track?</p>

<p class="wp-block-paragraph">Since MagneMotion itself loses track of which vehicle is which during startup there is no direct way to correlate old tracked vehicle data to whichever new vehicle IDs MagneMotion produces on startup.&nbsp;</p>

<p class="wp-block-paragraph">One way to solve this problem would be to develop a complicated vehicle tracking program to try and determine what vehicle contents belong to which vehicle after a startup based on the positioning of the vehicle before and after a full startup of the track. Putting aside the considerable complexity of this plan, there are several added complications where vehicles can be moved while the system is powered down and can drift after power loss in ways that could quickly make any recovery logic very hairy and unreliable.</p>

<p class="wp-block-paragraph">Another more robust solution to this problem is to affix a unique barcode to each MagneMotion vehicle. Then once the system is reset you can direct each vehicle to a barcode scanner positioned near the track that will scan each vehicle and report to the PLC what its barcode is. Then with this barcode you can create a more robust system for assigning tracked vehicle contents with MagneMotion vehicle IDs.</p>

<h2 class="wp-block-heading">Additional Considerations</h2>

<p class="wp-block-paragraph">While the above sequence is generally sufficient in restoring a MagneMotion track, there are some important additional things to take into account when commissioning a MagneMotion system.</p>

<p class="wp-block-paragraph">1.&nbsp;&nbsp; &nbsp;Some rare MagneMotion faults might require a full reboot or power cycle of the Node Controllers of the system. This is not done through PLC commands but is typically done manually through the Node Controller web page.<br />
2.&nbsp;&nbsp; &nbsp;Each MagneMotion AOI has its own error code and extended error code output (STS_ER and STS_EXERR). Documentation for these error codes can be found in the help files for the ICT library or in the help section of the AOI properties.&nbsp;</p>

<figure class="wp-block-image"><img decoding="async" alt="" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion_Guide_Part-6_11.png"  /></figure>

<p class="wp-block-paragraph">3..&nbsp;&nbsp; &nbsp;Additional Error information can be found in the log files of the node controllers, but these error codes are often fairly difficult to read.<br />
4.&nbsp;&nbsp; &nbsp;If you are building a system that attempts to recover vehicle information after a restart, it is generally useful to include an alternative startup that will default to assuming that every vehicle is empty.<br />
5.&nbsp;&nbsp; &nbsp;If your system involves vehicles travelling at different speeds based on their contents, remember to lower the speeds of all vehicles until the system can determine what is on the vehicle.<br />
6.&nbsp;&nbsp; &nbsp;If your system has traffic lights, they will be deleted every time the paths of your system reset.</p>

<p class="wp-block-paragraph"><strong>Topics to look forward to in this series:&nbsp;</strong></p>

<ul class="wp-block-list">
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Blog Part 7: Traffic Lights</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Blog Part 8: Simulation</a></li>
 <li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>
</ul>

<p class="wp-block-paragraph"><strong>Learn more about DMC&apos;s&nbsp;<a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/magnemotion-programming">MagneMotion expertise</a>&nbsp;and&nbsp;<a href="https://static.dmcinfo.com/contact">contact us</a>&nbsp;to get started on your next project.&nbsp;</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/18736/magnemotion-guide-part-6-track-recovery-considerations/">MagneMotion Guide Part 6: Track Recovery Considerations</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 5: Alternative Routing Controls</title>
		<link>https://static.dmcinfo.com/blog/18808/magnemotion-guide-part-5-alternative-routing-controls/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Mon, 10 Jan 2022 17:05:31 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[MagneMotion]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/18808/magnemotion-guide-part-5-alternative-routing-controls/</guid>

					<description><![CDATA[<p>In our previous blog &#160;we covered using two of the ICT library AOIs that form the backbone of most MagneMotion applications. In this blog we are going to cover alternative methods for controlling how vehicles move along your MagneMotion track using utilities found in the ICT library. MagneMotion Guide Series Step 1: Using the MPM [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/18808/magnemotion-guide-part-5-alternative-routing-controls/">MagneMotion Guide Part 5: Alternative Routing Controls</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In our <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">previous blog</a> &nbsp;we covered using two of the ICT library AOIs that form the backbone of most MagneMotion applications.</p>



<p class="wp-block-paragraph">In this blog we are going to cover alternative methods for controlling how vehicles move along your MagneMotion track using utilities found in the <a href="https://compatibility.rockwellautomation.com/Pages/MultiProductFindDownloads.aspx?crumb=112&amp;mode=3&amp;refSoft=1&amp;versions=57229" type="link" id="https://compatibility.rockwellautomation.com/Pages/MultiProductFindDownloads.aspx?crumb=112&amp;mode=3&amp;refSoft=1&amp;versions=57229">ICT library</a>.</p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10289/magnemotion-guide-part-4-using-path-and-station-aois">MagneMotion Guide Part 4: Using Path and Station AOI’s</a></li>



<li><a href="https://static.dmcinfo.com/blog/18736/magnemotion-guide-part-6-track-recovery-considerations/">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/blog/18181/magnemotion-guide-part-7-traffic-lights/">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/13686/magnemotion-guide-part-10-moving-track">MagneMotion Guide Part 10: Moving Track</a></li>
</ul>



<h2 id="h-step-1-using-the-mpm-aoi" class="wp-block-heading">Step 1: Using the MPM AOI</h2>



<p class="wp-block-paragraph">While the Station AOI is typically how you should route vehicles, the MPM AOI is actually the simplest way to have a PLC move a MagneMotion vehicle.&nbsp;</p>



<p class="wp-block-paragraph">A call of the MPM AOI sends a position command to the Node Controllers to move a particular vehicle to a specified position on the track. Conversely, the Station AOI sends position commands to move particular vehicles to specified positions with some additional handling logic to facilitate moving vehicles between several commonly used positions, along with some additional checking to determine when a vehicle reaches a station.<br>
&nbsp;<img decoding="async" alt="Magnemotion Motion Position Move" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-five-6.png"><br>
Like the Station and Path AOIs from the previous blog, the MPM AOI requires inputs from the \raM_Dvc_DH_MM program that was imported from the ICT Library.</p>



<p class="wp-block-paragraph">The MPM AOI also needs the following information along with the Handler and Mover tags:<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_MoverID:</strong> The ID of the vehicle you wish to move.<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_MoveType:</strong> The direction vehicles take when leaving the station to go to their next destination: 0 = Shortest Direction, 1 = Positive Direction, 2 = Negative Direction (It is usually a good idea to use Positive or Negative direction to make your station more predictable and avoid traffic issues.)<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_Path:</strong> The ID of the path you want to move the vehicle to.<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_Position:</strong> The distance in mm from the start of the path that you want to move the vehicle to.<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_Velocity:</strong> The speed in mm/s that you want to move the vehicle.<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_AccelDecel:</strong> The acceleration in mm/s^2 for the vehicle.<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_PID:</strong> This will determine which PID settings the vehicle uses to move if you defined separate PID controls in the configuration file.</p>



<p class="wp-block-paragraph">Once the MPM AOI is called, it will trigger the vehicle to move to the desired position and the output status <strong>Sts_IP</strong> will go high for the duration of the move. When the move completes, <strong>Sts_IP</strong> will go low and be replaced with <strong>Sts_PC</strong> to indicate that the move has finished.</p>



<p class="wp-block-paragraph">One important thing to note is that if a vehicle is re-routed before it reaches its destination (ex. You redirect the mover to a station after it has begun its move) the MPM AOI will throw an error. However, this doesn’t indicate a problem in your code, it’s just an indication that the vehicle was not able to complete the move that the MPM AOI commanded it to do.</p>



<p class="wp-block-paragraph">While most of your system’s routing should be handled by the Station AOIs, the MPM AOI is valuable for filling in any gaps in routing that the Station AOI doesn’t cover.</p>



<h2 id="h-step-2-changing-vehicle-destination-on-the-fly" class="wp-block-heading">Step 2: Changing Vehicle Destination on the Fly</h2>



<p class="wp-block-paragraph">When designing your system, it’s entirely possible that you will want to redirect a vehicle that is already headed to a particular position or station. Maybe you want a button that will send all vehicles to some sort of home position no matter what. Or maybe you want to be able to divert incoming vehicles to a different route if your code detects a potential traffic jam. Or maybe you just think it would look cool if vehicles didn’t have to stop at certain stations before going to their next destinations.</p>



<p class="wp-block-paragraph">On the surface, changing vehicle destinations mid-move is pretty simple, you can change the TargetID of the vehicle in the Mover array in the ICT library raM_Dvc_DH_MM program.&nbsp;<br>
&nbsp;<img decoding="async" alt="MagneMotion Program Parameters and Local Tags" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-five-5.png"></p>



<p class="wp-block-paragraph"><br>
You can update the TargetID of Mover 3 to Station 4 from Station 3 and the Mover will update its destination and redirect itself to Station 4. Similarly, you could&nbsp;trigger an MPM AOI call to redirect Mover 3 to an entirely different position. However, redirecting vehicles like this comes with some additional risks and considerations.&nbsp;</p>



<p class="wp-block-paragraph">The first thing to note is that the Node Controllers will not allow for changing the speed or acceleration of a vehicle while it is already moving. Sending an MPM command to a moving vehicle that has a different acceleration than the vehicle’s current acceleration will often result in the vehicle being labeled “Suspect” and unable to move.</p>



<p class="wp-block-paragraph">Another important thing to consider is that when you command a vehicle to go from Station A to Station B ,the vehicle’s acceleration, velocity, and move type come from Station A’s parameters. This means that if you want to change these parameters for a vehicle you should&nbsp;do so while the vehicle is stopped at a station.&nbsp;</p>



<p class="wp-block-paragraph">The final thing to consider before redirecting a vehicle mid-move is that it can increase the likelihood that you will command a vehicle to perform a move that is impossible for it to finish, or one that will result in a traffic jam.</p>



<p class="wp-block-paragraph"><br>
<img decoding="async" alt="MagneMotion Stations one, two, and three" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-five-4.png">&nbsp;</p>



<p class="wp-block-paragraph"><br>
For example, if you try to redirect a vehicle that is going to Station 2 to Station 3, it’s possible that the vehicle will have already passed the point of no return and will have no valid path to reach Station 3 when it is redirected. This will cause the vehicle to stop at Station 2 without Station 2 registering that there is a vehicle there, which will cause Station 3 to fault out.&nbsp;</p>



<p class="wp-block-paragraph">Similarly, if you command a vehicle to go from Station 1 to Station 2 in the positive direction, when you try to move that same vehicle back to Station 1 it will be unable to complete the move since it will be going in the wrong direction.</p>



<h2 id="h-step-3-controlling-vehicles-through-nodes" class="wp-block-heading">Step 3: Controlling Vehicles Through Nodes</h2>



<p class="wp-block-paragraph">Since it is fairly easy to cause problems when redirecting moving vehicles, the question that arises is: what is a good way to tell when it is ok to redirect a vehicle to a different station? Of course, there is no single answer to this question, each system has its own quirks and needs. While it is possible to monitor the path and position status of every vehicle and make decisions based on that, those calculations can get intensive in terms of how long they take to program and the amount of PLC resources they take up. One method that is often useful in determining what to do with a moving vehicle is monitoring the status of a node.</p>



<p class="wp-block-paragraph">In the MMI_node_status tag you can find a status returned from the Node Controller of which vehicle is currently passing through that node.&nbsp;</p>



<p class="wp-block-paragraph"><br>
<img decoding="async" alt="MagneMotion Node Status" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-five-3.png"></p>



<p class="wp-block-paragraph">This Vehicle_ID value will be 0 when there is no vehicle in the node and will match the ID of the vehicle passing through the node until that vehicle has fully passed through.</p>



<p class="wp-block-paragraph"><br>
<img decoding="async" alt="Magnemotion Station 1, Station 2, and Node 2" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-five-2.png"></p>



<p class="wp-block-paragraph">Say for example you wanted to redirect any vehicles that were about to reach Station 1 to Station 2 (maybe because Station 1 already had several vehicles queue up at it, or it was temporarily disabled). By monitoring Node 2’s status, we can see which vehicles are on the way and modify their target station when they are in a controlled position to make sure we can redirect any incoming movers without causing any issues with our system.</p>



<p class="wp-block-paragraph"><br>
<img decoding="async" alt="Magnemotion Motion Interfaces" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-five.png"></p>



<p class="wp-block-paragraph">The above snippet of code will monitor any vehicles passing through Node 2. If it sees a vehicle heading to Station 1, it will verify that it has the correct move type to go to Station 2 and then update its target ID to redirect it. This is a fairly simple robust way to redirect vehicles in a way that we know will not fault out Station 2 or lead to a vehicle being stuck on the track.</p>



<p class="wp-block-paragraph"><strong>Topics to look forward to in this series:&nbsp;</strong></p>



<ul class="wp-block-list">
<li><a href="/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Blog Part 7: Traffic Lights</a></li>



<li>MagneMotion Blog Part 8: Simulation</li>
</ul>



<p class="wp-block-paragraph"><strong>Learn more about DMC&#8217;s <a href="/services/manufacturing-automation-and-intelligence/magnemotion-programming">MagneMotion expertise</a> and <a href="/contact">contact us</a> to get started on your next project.</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/18808/magnemotion-guide-part-5-alternative-routing-controls/">MagneMotion Guide Part 5: Alternative Routing Controls</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MagneMotion Guide Part 4: Using Path and Station AOIs</title>
		<link>https://static.dmcinfo.com/blog/18867/magnemotion-guide-part-4-using-path-and-station-aois/</link>
		
		<dc:creator><![CDATA[Jack Haskell]]></dc:creator>
		<pubDate>Thu, 16 Dec 2021 17:48:21 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[MagneMotion]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/18867/magnemotion-guide-part-4-using-path-and-station-aois/</guid>

					<description><![CDATA[<p>In our previous blog, we covered how to set up a Node Controller to be controlled by a Rockwell PLC using Rockwell’s ICT library. Now that your PLC and Node Controller are set up, we’re going to cover using the Path and Station AOIs from the ICT library to control your system. You can find the [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/18867/magnemotion-guide-part-4-using-path-and-station-aois/">MagneMotion Guide Part 4: Using Path and Station AOIs</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In our <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">previous blog</a>, we covered how to set up a Node Controller to be controlled by a Rockwell PLC using Rockwell’s ICT library. Now that your PLC and Node Controller are set up, we’re going to cover using the Path and Station AOIs from the ICT library to control your system. You can find the <a href="https://compatibility.rockwellautomation.com/Pages/MultiProductFindDownloads.aspx?crumb=112&amp;mode=3&amp;refSoft=1&amp;versions=57229" type="link" id="https://compatibility.rockwellautomation.com/Pages/MultiProductFindDownloads.aspx?crumb=112&amp;mode=3&amp;refSoft=1&amp;versions=57229">ICT Library</a> here. For either of these AOIs to function properly, make sure that your PLC to Node Controller communication is properly set up and configured.</p>



<p class="wp-block-paragraph"><strong>MagneMotion Guide Series</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10220/magnemotion-guide-part-one-creating-configuration-files">MagneMotion Guide Part 1: Creating Configuration Files</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10270/magnemotion-guide-part-three-controlling-a-system-with-a-plc">MagneMotion Guide Part 3: Controlling a System with a PLC</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Guide&nbsp;Part 7: Traffic Lights</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10387/magnemotion-guide-part-8-simulation">MagneMotion Guide Part 8: Simulation</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10558/magnemotion-guide-part-9-traffic-jam-prevention">MagneMotion Guide Part 9: Traffic Jam Prevention</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/13686/magnemotion-guide-part-10-moving-track">MagneMotion Guide Part 10: Moving Track</a></li>
</ul>



<h2 id="h-step-1-using-the-path-aoi" class="wp-block-heading">Step 1: Using the Path AOI</h2>



<p class="wp-block-paragraph">One of the backbones of the ICT library structure is the Path AOI. This AOI allows you to command paths from the PLC in a similar manner to the way paths can be controlled from NC Host (For details on how to use NC Host see <a href="https://static.dmcinfo.com/latest-thinking/blog/id/10244/magnemotion-guide-part-two-starting-up-and-commissioning-a-track">MagneMotion Guide Part 2: Starting up and Commissioning a Track</a>).</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-Prt-1-Image-1.png" alt="Path commands for MagneMotion"/></figure>



<p class="wp-block-paragraph">To setup the AOI, make sure that the Ref_Handle input is set to \raM_Dvc_DH_MM.Hndl and that Ref_Paths is set to \raM_Dvc_DH_MM.Hndl .\raM_Dvc_DH_MM.Hndl is a reference to the main ICT device handler task we generated in the last blog. If you have re-named your task, be sure to use that name instead.</p>



<p class="wp-block-paragraph">Set the Cfg_TargetPath input to the path you want to send a command to. If you would like to command every path at once, leave Cfg_TargetPath as 0.&nbsp;</p>



<p class="wp-block-paragraph">Cfg_Command will be different depending on which command you want to send to the Path:</p>



<p class="wp-block-paragraph"><br>
</p>



<p class="wp-block-paragraph">In the example below, once bCmdPath is triggered the Path AOI will begin sending a command to the Node Controller. You will see the Sts_IP output of the AOI turn true while the command is being executed by the Node Controller. You can watch the path status change in NC Host to follow along. When the command is done you will either see the Sts_PC bit turn on, indicating that the command is done, or you will see the Sts_ER bit to indicate that there was an issue completing the command.</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph"><br>
If the command fails and an Error code is returned, look at the tags Sts_ERR and STS_EXERR of your AOI for the error code and extended error code. Then, look up what they mean in the AOI help file.</p>



<p class="wp-block-paragraph">&nbsp;</p>



<h2 id="h-step-2-understanding-magnemotion-stations" class="wp-block-heading"><br>
Step 2: Understanding MagneMotion Stations</h2>



<p class="wp-block-paragraph">In a MagneMotion system, a Station is a defined position on a path. Since Node Controllers typically control vehicles through a command that includes a vehicle ID, a Path ID, and a position value, Stations are a useful way to handle vehicle commands. You can simply tell a Vehicle to go to Station A without knowing exactly where Station A is positioned, or tell the vehicle at Station A to go to Station B without knowing which vehicle is in that exact position.</p>



<p class="wp-block-paragraph"><br>
Before you start using the ICT Station AOI, it is important to know that Stations used by the PLC and Stations established in the Node Controller Configuration are two different things.</p>



<p class="wp-block-paragraph">In the Configuration file you can define stations as points on paths with a specified ID. These stations are hard coded and cannot be modified without changing the configuration files. They are also not included in the information that is sent between the Node Controller and the PLC, so they are not a very useful tool for PLC controlled systems.</p>



<p class="wp-block-paragraph"><br>
&nbsp;<br>
The stations used in the ICT library on the PLC are also defined as a position on a particular path but they are more flexible to use. These stations are defined by using the Station AOI and are only used by the PLC code. The Node Controller will have no knowledge of what these stations are or that they even exist.&nbsp;</p>



<p class="wp-block-paragraph"><br>
For example, if station 4 is 500 mms down path 5 and the PLC tells vehicle 12 to go to station 4, the MagneMotion device handler on the PLC will send a command to the Node Controller to send vehicle 12 to 0.5 meters down path 5.&nbsp;</p>



<p class="wp-block-paragraph"><br>
Another important thing to note is that a vehicle is only considered to be at a station when its target ID is that station and the Node Controller has confirmed that the vehicle has reached its destination. The PLC does not run any checks for vehicles near the position of a station. This means that a vehicle can be in the exact position of a station, but the station will think there is nothing there. This can be a very useful way to prevent the station from thinking it has a vehicle in the event a vehicle is routing through where a station is located but not stopping there.</p>



<p class="wp-block-paragraph"><br>
Unfortunately, this also means that the Station AOI does not actually verify that the vehicle it thinks is present is actually at the station.<strong> If a vehicle is on its way to a station and you command it to go to another location via NC Host, the Station AOI will think the vehicle has arrived at its station once it has stopped, even if it is in an entirely different location.</strong> This is because it will receive a “move finished” acknowledgement from the Node Controller.</p>



<p class="wp-block-paragraph"><br>
The good news is that as long as you do not command vehicles through NC host while the PLC is trying to control them through Station AOIs, the PLC device handler is sophisticated enough to keep things neat and tidy. However, be wary of using NC host commands while the PLC is controlling the Node Controller.</p>



<h2 id="h-step-3-using-the-station-aoi" class="wp-block-heading">Step 3: Using the Station AOI</h2>



<p class="wp-block-paragraph">Much like the Path AOI, the station AOI needs the device handler tag from the \raM_DVC_DH_MM program along with the Mover tag from that same program as inputs.<br>
Other Station AOI Inputs:<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_Station ID:</strong> The numerical ID of the station (make sure no two stations have the same ID)<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_Path ID:</strong> The ID of the path that the station is on<br>
•&nbsp;&nbsp; &nbsp;<strong>Cfg_Position:</strong> The distance in mm of the station position from the beginning of the path (Make sure you do not put in a position that is longer than the actual path)<br>
•&nbsp;&nbsp; &nbsp;<strong>Set_MoveType:</strong> The direction vehicles take when leaving the station to go to their next destination: 0 = Shortest Direction, 1 = Positive Direction, 2 = Negative Direction (It is usually a good idea to use Positive or Negative direction to make your station more predictable and avoid traffic issues)<br>
•&nbsp;&nbsp; &nbsp;<strong>Set_Velocity:</strong> The target velocity of vehicles that leave the station in mm/s<br>
•&nbsp;&nbsp; &nbsp;<strong>Set_AccelDecel:</strong> The acceleration of vehicles that leave the station in mm/s^2<br>
•&nbsp;&nbsp; &nbsp;<strong>Set_PID:</strong> The PID controls for the vehicle leaving the station. PID controls are defined in the configuration file. If is fine to leave this as 0.<br>
•&nbsp;&nbsp; &nbsp;<strong>Set_NextTargetID:</strong> The ID of the station the vehicle will go to after this one<br>
•&nbsp;&nbsp; &nbsp;<strong>Cmd_ProccessCompleted:</strong> A command to tell the station to forward a mover onto the next station</p>



<p class="wp-block-paragraph"><br>
&nbsp;<br>
While using the Station AOI the configuration inputs to the AOI can be changed while the system is running, but you should be careful when doing so. Changes to the station will only affect vehicles that leave the station after the change is made.</p>



<p class="wp-block-paragraph"><br>
For example, if Vehicle 10 is told to go to from Station 4 to Station 5 at 500 mm/s but then the Set_Velocity of Station 4 changes to 250 mm/s before it arrives, Vehicle 10 will keep moving at 500 mm/s until it arrives at Station 5.</p>



<p class="wp-block-paragraph"><br>
Additionally, if Vehicle 11 is on its way to Station 4 and the Cfg_Path of Station 4 is changed from Path 6 to Path 7, then Vehicle 11 will still go to Path 6 and <strong>Station 4 will still consider Vehicle 11 to be at its station even though they are on different paths.</strong></p>



<h2 id="h-step-4-moving-vehicles-to-stations" class="wp-block-heading">Step 4: Moving Vehicles to Stations</h2>



<p class="wp-block-paragraph">In order to get vehicles to move between stations, you must get a vehicle to a station first. Fortunately, this is fairly simple.</p>



<p class="wp-block-paragraph">Expand the Mover tag in the raM_Dvc_DH_MM program. In the tag for TargetID, set the value to the station you want the vehicle to go to and the Device Handler will automatically send a command the Node Controller to move the vehicle to the desired station.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Magnemotion-guide-part-four-program-parameters-and-local-tags.png" alt="Magnemotion program parameters and local tags"/></figure>



<p class="wp-block-paragraph">Now that the Station is set up and you can send vehicles there, you can start moving vehicles from one station to the next. As you can see in the snippet of code below, when bSendFromStation is toggled, whichever vehicle is at Station 1 will be sent to Station 2.</p>



<p class="wp-block-paragraph"><br>
&nbsp;<br>
Note that Station 2 must also be configured and properly set up for this to work. There must also be a valid path that a vehicle can take to get from Station 1 to Station 2.</p>



<p class="wp-block-paragraph">At this point, you must also call the station that the mover is being sent to. In the code above, if bDisableStation was on a station trying to send a vehicle to Station 1, it would make that vehicle wait in place while the station was disabled.</p>



<p class="wp-block-paragraph">When moving vehicles to stations, it is very important to make sure that the vehicle has a valid route to the target station. If it does not, the target station will fault out and any other vehicles that get sent to that station will be unable to move there until the fault is clear.</p>



<p class="wp-block-paragraph">To reset the error of a faulted station, go into the mover array and clear out the target ID of whichever mover caused the fault. Then stop calling the station for at least one scan, after which you can resume calling the station. This re-initializes the station and clears out the fault. In the code snippet above, toggling bDisableStation will effectively reset any path faults.</p>



<p class="wp-block-paragraph"><strong>Topics to look forward to in this series:&nbsp;</strong></p>



<ul class="wp-block-list">
<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10293/magnemotion-guide-part-5-alternative-routing-controls">MagneMotion Guide Part 5: Alternative Routing Controls</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10304/magnemotion-guide-part-6-track-recovery-considerations">MagneMotion Guide Part 6: Track Recovery Considerations</a></li>



<li><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10371/magnemotion-blog-part-7-traffic-lights">MagneMotion Blog Part 7: Traffic Lights</a></li>



<li>MagneMotion Blog Part 8: Simulation</li>
</ul>



<p class="wp-block-paragraph"><strong>Learn more about DMC&#8217;s <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/magnemotion-programming">MagneMotion expertise</a> and <a href="https://static.dmcinfo.com/contact">contact us</a> to get started on your next project.&nbsp;</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/18867/magnemotion-guide-part-4-using-path-and-station-aois/">MagneMotion Guide Part 4: Using Path and Station AOIs</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
