<?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>Jon Carson, Author at DMC, Inc.</title>
	<atom:link href="https://static.dmcinfo.com/blog/author/jonc/feed/index.xml" rel="self" type="application/rss+xml" />
	<link></link>
	<description></description>
	<lastBuildDate>Mon, 27 Jul 2026 17:46:52 +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>Jon Carson, Author at DMC, Inc.</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Celebrate DMC New York&#8217;s Grand Opening on Oct. 20</title>
		<link>https://static.dmcinfo.com/blog/25277/celebrate-dmc-new-yorks-grand-opening-on-oct-20/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Tue, 16 Aug 2016 15:07:04 +0000</pubDate>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[New York]]></category>
		<category><![CDATA[Special Events]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/25277/celebrate-dmc-new-yorks-grand-opening-on-oct-20/</guid>

					<description><![CDATA[<p>DMC has been doing business in our New York office since last spring, but now that our pool table is installed, we&apos;re excited to invite you inside. You&apos;re cordially invited to join us for DMC New York&apos;s Grand Opening party on October 20, 2016! &#160; DMC New York&apos;s Grand Opening Party 4 &#8211; 10 p.m. [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/25277/celebrate-dmc-new-yorks-grand-opening-on-oct-20/">Celebrate DMC New York&#8217;s Grand Opening on Oct. 20</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">DMC has been doing business in our <a href="https://static.dmcinfo.com/latest-thinking/blog/id/8995/dmc-is-expanding-to-houston">N</a><a href="https://static.dmcinfo.com/latest-thinking/blog/id/8996/dmc-is-expanding-to-new-york-city">ew York office</a> since last spring, but now that our pool table is installed, we&apos;re excited to invite you inside. You&apos;re cordially invited to join us for DMC New York&apos;s Grand Opening party on <b>October 20, 2016!</b></p>

<p class="wp-block-paragraph">&nbsp;</p>

<p class="wp-block-paragraph"><strong>DMC New York&apos;s Grand Opening Party</strong></p>

<p class="wp-block-paragraph">4 &#8211; 10 p.m.<br />
141 W 36th St;,&nbsp;Suite 20N<br />
New York, NY 10018<br />
<a href="https://static.dmcinfo.com/contact/dmc-new-york">[Directions]</a></p>

<p class="wp-block-paragraph"><strong>About the Party</strong><br />
Join us in celebrating our Grand Opening with some Big Apple-sized fun! We will also be commemorating DMC&apos;s 20th anniversary.&nbsp;Stop by any time throughout the evening for food, drinks, and fun. Feel free to bring along significant or insignificant others (spouses, colleagues, girlfriends, college roommates, etc.).</p>

<p class="wp-block-paragraph">If this is your first DMC event, check out highlights from some of our past parties: <a href="https://static.dmcinfo.com/latest-thinking/blog/id/9224/dmc-chicagos-20th-anniversary-party">Chicago 20th Anniversary Party</a>, <a href="https://static.dmcinfo.com/latest-thinking/blog/id/9246/dmc-bostons-20th-anniversary-party">Boston 20th Anniversary Party</a>, <a href="https://static.dmcinfo.com/latest-thinking/blog/id/9222/the-2016-houston-grand-opening-party">Houston Grand Opening</a>, and <a href="https://static.dmcinfo.com/latest-thinking/blog/id/9014/dmc-denver-opening-day-opening-day">Denver Opening Day Opening Day</a>.</p>

<p class="wp-block-paragraph"><strong>RSVP</strong><br />
RSVP&nbsp;using the following quick links: <a href="mailto:jessica.mlinaric@localhost?subject=Yes%20I%20Am%20Coming%20NYC">RSVP Yes</a>, <a href="mailto:jessica.mlinaric@localhost?subject=I%20Cannot%20Make%20It%20NYC">RSVP No</a>, <a href="mailto:jessica.mlinaric@localhost?subject=I%20Might%20Attend%20NYC">RSVP Maybe</a> or contact Jessica Mlinaric at 312.255.8757 or <a href="mailto:jessica.mlinaric@localhost?subject=DMC%20Houston's%20Grand%20Opening">jessica.mlinaric@localhost</a>.</p>

<p class="wp-block-paragraph"><iframe allowfullscreen="" frameborder="0" height="360" src="https://www.youtube.com/embed/3n1xihMunMk" width="640"></iframe></p>
<p>The post <a href="https://static.dmcinfo.com/blog/25277/celebrate-dmc-new-yorks-grand-opening-on-oct-20/">Celebrate DMC New York&#8217;s Grand Opening on Oct. 20</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Connecting Custom Applications to the Factory Floor</title>
		<link>https://static.dmcinfo.com/blog/26086/connecting-custom-applications-to-the-factory-floor/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Fri, 18 Dec 2015 10:31:29 +0000</pubDate>
				<category><![CDATA[PC Application Development]]></category>
		<category><![CDATA[PLC]]></category>
		<category><![CDATA[Siemens PLC]]></category>
		<category><![CDATA[Web Application Development]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[C# .NET Application Development]]></category>
		<category><![CDATA[Custom Applications]]></category>
		<category><![CDATA[MS Visual Studio/.NET]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/26086/connecting-custom-applications-to-the-factory-floor/</guid>

					<description><![CDATA[<p>DMC has expertise in both industrial and PC-based software development. In other words, we do a great deal of projects involving PLCs; but we also write plenty of complex PC-based apps. But my personal favorites are projects that combine the two. We’re seeing them more and more. Don’t get me wrong, off the shelf solutions [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/26086/connecting-custom-applications-to-the-factory-floor/">Connecting Custom Applications to the Factory Floor</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">DMC has expertise in both industrial and PC-based software development. In other words, we do a great deal of projects involving PLCs; but we also write plenty of complex PC-based apps. But my personal favorites are projects that combine the two.</p>



<p class="wp-block-paragraph">We’re seeing them more and more. Don’t get me wrong, off the shelf solutions are great, and should be used wherever they make sense. But sometimes they don’t fit all of the requirements our customers need. Here are some examples I’ve encountered over the past few months where a custom PC app made the most sense in an industrial setting:</p>



<p class="wp-block-paragraph">1.&nbsp;&nbsp; &nbsp;A program that automatically parses CAD drawings of a part, and then sends the resulting data to a PLC.<br>
2.&nbsp;&nbsp; &nbsp;Multiple offsite PLCs sending Ethernet packets over a cellular modem, to a server-side application that received, parsed, and logged the data.<br>
3.&nbsp;&nbsp; &nbsp;A web-based interface that translate data back and forth between a custom SQL server and multiple PLCs.</p>



<p class="wp-block-paragraph">So we’ve established there are situations where a custom app makes sense. But how does one write this type of program? What tools are out there to connect the dots? As it turns out, there are plenty! Here are some of my favorites:</p>



<p class="wp-block-paragraph"><strong><a href="https://github.com/dotnetprojects/DotNetSiemensPLCToolBoxLibrary" target="_blank">Dot Net PLC Toolbox&nbsp;</a></strong><br>
Believe it or not, there’s actually a pretty strong community of .NET developers interested in interfacing to PLCs. One of my favorite open-source libraries is the Dot Net PLC Toolbox. This in-depth, free library allows .NET apps to parse PLC projects, as well as communicate, read tags, and go online. Last year I personally was involved with using this toolbox to create an open-source <a href="https://github.com/boriz/s7-diff-merge" target="_blank">S7 Source Control Utility</a>.</p>



<p class="wp-block-paragraph"><strong>InGear Drivers </strong><br>The guys over at InGear have created easy-to-use .NET drivers for Siemens, OPC, and more. Sure, there are free tools available, but sometimes it’s nice to pay for a product just so you have a support team to rely on when you need them.</p>



<p class="wp-block-paragraph"><a href="http://jamod.sourceforge.net/" target="_blank"><strong>Jamod</strong></a><br>
Most of our development is built on .NET, but sometimes client requirements dictate another language like Java. This is where a library like Jamod can be handy. Jamod is a Java library written for Modbus (serial, TCP, or UDP). Since Modbus is such an open protocol, this library makes it easy to connect your Java application to PLCs, drives, smart IO, and more.</p>



<p class="wp-block-paragraph"><a href="https://support.industry.siemens.com/cs/document/108716692/tia-portal-openness%3A-introduction-and-demo-application?dti=0&amp;lc=en-WW" target="_blank"><strong>TIA Portal Openness</strong></a>&nbsp;<br>
For Siemens PLCs in particular, there are official tools available to the interested programmer. With the latest version of TIA Portal, Siemens released an API used to interface with PLC programs. This code library allows developers to “automate” their code development by exporting, modifying, and importing TIA projects. I was pretty familiar with their old software, the <a href="/latest-thinking/blog/id/8446/automating-siemens-s7-and-simotion-tasks-using-c-net">Command Interface</a>, and was excited to see them release a tool for Portal as well.</p>



<p class="wp-block-paragraph">Learn more about DMC&#8217;s <a href="/services/embedded-development-and-embedded-programming"><strong>.NET and automation intelligence capabilities</strong></a>.&nbsp;</p>
<p>The post <a href="https://static.dmcinfo.com/blog/26086/connecting-custom-applications-to-the-factory-floor/">Connecting Custom Applications to the Factory Floor</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>New York Office Update</title>
		<link>https://static.dmcinfo.com/blog/26114/new-york-office-update/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Mon, 30 Nov 2015 15:43:07 +0000</pubDate>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[New York]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/26114/new-york-office-update/</guid>

					<description><![CDATA[<p>Live from New York, it&#8217;s DMC!&#160;We expanded to the Empire State this year, along with&#160;opening an office in Houston,&#160;to create growth opportunities and to better serve our customers.&#160;Although I actually&#160;moved from the Chicago office in April, the office really started to feel up-and-running when the rest of the team joined me over the summer. We’ve [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/26114/new-york-office-update/">New York Office Update</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Live from New York, it&#8217;s DMC!&nbsp;We <a href="https://static.dmcinfo.com/latest-thinking/blog/id/8996/dmc-is-expanding-to-new-york-city">expanded to the Empire State</a> this year, a<span style="line-height: 20.8px;">long with&nbsp;</span><a href="https://static.dmcinfo.com/latest-thinking/blog/id/8995/dmc-is-expanding-to-houston" style="line-height: 20.8px;">opening an office in Houston</a>,&nbsp;to create growth opportunities and to better serve our customers.&nbsp;Although I actually&nbsp;moved from the Chicago office in April, the office really started to feel up-and-running when the rest of the team joined me over the summer.</p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;">We’ve had two office locations so far – the first at 5th Ave and 27th St, and our new space at 8th Ave and 36th St. Exploring each neighborhood has been great. The first was right in between Madison Square and Herald Square. We frequented them for lunch quite a bit, as both beautiful squares have outdoor booths in the summer featuring famous New York restaurants.</p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;">Our first office was a pretty tight fit. We had to get pretty creative to find room for our daily chess matches:</p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;"></p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;">&nbsp;</p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;">The new office is just a little bit&nbsp;bigger, and the neighborhood here is great as well. It’s incredibly easy to get to from anywhere in the city&nbsp;as&nbsp;it’s steps away from Penn Station.&nbsp;<span style="line-height: 20.8px;">Yusif likes the location because it&#8217;s close to the exciting 34th street and just blocks away from Madison Square Garden. The office space itself is also great, boasting a sprawling lounge area and a</span><span style="line-height: 1.6;">&nbsp;keg of Lagunitas&nbsp;beer on tap.</span></p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;"><span style="line-height: 1.6;"></span></p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;">&nbsp;</p></p>



<p class="wp-block-paragraph">One of the perks of New York City is the endless restaurant options. We’ve been scoping out lunch locations from Simon’s favorite bagels at <a href="http://www.ess-a-bagel.com/" target="_blank" rel="noreferrer noopener">Ess-a-Bagel</a> to Italian sandwiches favored by Yusif at <em>Sergimmo Salumeria</em>. A great kosher deli called <a href="http://www.mrbroadwaykosher.com/" target="_blank" rel="noreferrer noopener">Mister Broadway</a> offers everything from kosher sushi to beef tongue sandwiches.</p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;"><span style="line-height: 1.6;"></span></p></p>



<p class="wp-block-paragraph"><p style="line-height: 20.8px;">&nbsp;</p></p>



<p class="wp-block-paragraph"><span style="line-height: 1.6;">We&#8217;ve been taking advantage of DMC&#8217;s Activity Fund to explore NYC together. One of our favorite outings was to an amazing sushi place called </span><a style="line-height: 1.6;" href="http://www.momoyanyc.com/" target="_blank">Momoya</a><span style="line-height: 1.6;">. We also attended a unique show called </span><em style="line-height: 1.6;">Sleep No More</em><span style="line-height: 1.6;">, which combines elements of Shakespeare, Hitchcock into&nbsp;an interactive theater performance.&nbsp;</span></p>



<p class="wp-block-paragraph"><span style="line-height: 1.6;"></span></p>



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



<p class="wp-block-paragraph">We&#8217;re even attended a few hockey games and are on our way to becoming Rangers fans!</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/nyc-rangers-dmc.jpg" alt=""/></figure>



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



<p class="wp-block-paragraph"><span style="line-height: 1.6;">Recruiting season is in full swing for DMC New York and we&#8217;ve attended career fairs at&nbsp;Rensselaer Polytechnic Institute, Cooper Union, and Columbia University looking for new members to add to the team. We&#8217;re looking forward to growing our office in the next several months!</span></p>



<p class="wp-block-paragraph"><span style="line-height: 1.6;"></span></p>



<p class="wp-block-paragraph"><span style="line-height: 1.6;">Simon and Yusif at RPI.</span></p>



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



<p class="wp-block-paragraph"><span style="line-height: 20.8px;">DMC New York has spotted a few celebrities out on the town, from Peter Dinklage in the subway to Michael J. Fox at a hockey game! Our favorite sightings, though, are the familiar faces of DMC employees from other offices, like Ashley, Jessica, Lauren, Sam, and Liz, who all came to work out of our office for a bit in the spirit of&nbsp;</span><a href="/latest-thinking/blog/id/9037/one-dmc-raps" style="line-height: 20.8px;">OneDMC</a>.</p>



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



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



<p class="wp-block-paragraph">New York may live up to its reputation as gritt<span style="line-height: 20.8px;">y, dirty, and rat-infested, but there&#8217;s so much to appreciate about living here.&nbsp;</span><span style="line-height: 1.6;">There is so much to do – shows, museums, parks, and restaurants. I love how easy it is to get around without my car. The city itself is diverse, massive, beautiful, and even overwhelming at times,&nbsp;</span><span style="line-height: 20.8px;">which is crazy considering I lived in Chicago (a pretty big city itself!) for seven years.</span></p>



<p class="wp-block-paragraph"><span style="line-height: 20.8px;"></span></p>



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



<p class="wp-block-paragraph"><span style="line-height: 1.6;">It&#8217;s been an exciting several months adjusting to a different city and launching a new DMC office. We&#8217;re looking forward to having some new faces join us next year and finding a more permanent space that we can really turn into our own.&nbsp;</span></p>



<p class="wp-block-paragraph">If you&#8217;re ever in Manhattan, pay us a visit. If you know an incredible New York engineer, direct them to our <a href="https://static.dmcinfo.com/careers">available positions</a>.&nbsp;</p>



<p class="wp-block-paragraph"><a href="/about">Learn more about DMC&#8217;s company culture</a>, or <a href="https://static.dmcinfo.com/contact/dmc-new-york">contact our New York office</a>.</p>
<p>The post <a href="https://static.dmcinfo.com/blog/26114/new-york-office-update/">New York Office Update</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>DMC is Expanding to New York City</title>
		<link>https://static.dmcinfo.com/blog/26747/dmc-is-expanding-to-new-york-city/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Tue, 24 Mar 2015 16:32:37 +0000</pubDate>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[New York]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/26747/dmc-is-expanding-to-new-york-city/</guid>

					<description><![CDATA[<p>DMC is proud to announce the opening of a new office in New York City! As a central hub to the metro area, New Jersey, Connecticut, and upstate markets, we view this new location as a wonderful opportunity for growth in all of our service offerings. While we will be officially opening the doors in [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/26747/dmc-is-expanding-to-new-york-city/">DMC is Expanding to New York City</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">DMC is proud to announce the opening of a new office in New York City! As a central hub to the metro area, New Jersey, Connecticut, and upstate markets, we view this new location as a wonderful opportunity for growth in all of our service offerings. While we will be officially opening the doors in late April, we are already working to support customers in the area.&nbsp;</p>



<p class="wp-block-paragraph">For this latest office expansion, DMC is targeting the <a href="http://en.wikipedia.org/wiki/Flatiron_District">Flatiron neighborhood</a> in Manhattan. Our address will be centrally located at 141 W 36th St, Suite 20N. Upon opening, the New York office will accommodate a team of three to five engineers, with room for expected expansion. This initiative will offer these DMC employees an opportunity for even more professional growth as we work together to make the new office a success. I will personally be relocating from the Chicago headquarters to lead the New York office as its Project Manager.&nbsp;</p>



<p class="wp-block-paragraph"><iframe frameborder="0" height="450" scrolling="no" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3022.455855827494!2d-73.99067818501221!3d40.75199747932757!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x89c259abf381e7cb%3A0xfac03abf9cbbb079!2s141+W+36th+St+%2320n%2C+New+York%2C+NY+10018!5e0!3m2!1sen!2sus!4v1519772887788" style="border: 0px currentColor; border-image: none;" width="600"></iframe></p>



<p class="wp-block-paragraph">We are extremely excited to expand to such a large and varied market, and of course thrilled to begin enjoying everything the diverse city has to offer.</p>



<p class="wp-block-paragraph">With our headquarters in Chicago, Illinois, and successful expansions in Boston and Denver, opening an office in New York is part of DMC&#8217;s long-range strategic plan for expansion. Our increased workload and client base in this area has resulted in this vision becoming a reality, and it is with great pride that we make this announcement.</p>



<p class="wp-block-paragraph">For career opportunities, please visit DMC&#8217;s <a href="https://static.dmcinfo.com/careers">employment page</a>.</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6abf2146ade98&quot;}" data-wp-interactive="core/image" data-wp-key="6abf2146ade98" class="wp-block-image size-full wp-lightbox-container"><img fetchpriority="high" decoding="async" width="925" height="400" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/NYC-skyline-banner.png" alt="NYC-skyline-banner" class="wp-image-20768" srcset="https://static.dmcinfo.com/wp-content/uploads/2025/05/NYC-skyline-banner.png 925w, https://static.dmcinfo.com/wp-content/uploads/2025/05/NYC-skyline-banner-300x130.png 300w, https://static.dmcinfo.com/wp-content/uploads/2025/05/NYC-skyline-banner-768x332.png 768w" sizes="(max-width: 925px) 100vw, 925px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>
<p>The post <a href="https://static.dmcinfo.com/blog/26747/dmc-is-expanding-to-new-york-city/">DMC is Expanding to New York City</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Automating Siemens S7 and SiMotion Tasks Using C# .NET</title>
		<link>https://static.dmcinfo.com/blog/28573/automating-siemens-s7-and-simotion-tasks-using-c-net/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Thu, 21 Feb 2013 13:53:52 +0000</pubDate>
				<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[Motion Control]]></category>
		<category><![CDATA[PC Application Development]]></category>
		<category><![CDATA[PLC]]></category>
		<category><![CDATA[Siemens PLC]]></category>
		<category><![CDATA[C# .NET Application Development]]></category>
		<category><![CDATA[MS Visual Studio/.NET]]></category>
		<category><![CDATA[SiMotion]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/28573/automating-siemens-s7-and-simotion-tasks-using-c-net/</guid>

					<description><![CDATA[<p>Siemens offers useful tools for accessing both Simatic and SiMotion projects programmatically, in the form of registered COM Type Library DLLs. These tools offer many exciting possibilities (well, it does if you&#8217;re like me, and get excited by things like automating automation tools). If you have Simatic Manager installed, the following DLLs are registered with [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/28573/automating-siemens-s7-and-simotion-tasks-using-c-net/">Automating Siemens S7 and SiMotion Tasks Using C# .NET</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Siemens offers useful tools for accessing both <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/plc-programming/siemens-s7-plc-programming/">Simatic</a> and <a href="/services/manufacturing-automation-and-intelligence/motion-control-engineering-and-servo-systems">SiMotion</a> projects programmatically, in the form of registered COM Type Library DLLs. These tools offer many exciting possibilities (well, it does if you&#8217;re like me, and get excited by things like automating automation tools). If you have Simatic Manager installed, the following DLLs are registered with it:</p>



<p class="wp-block-paragraph"><strong>S7hcom_x 1.0 Type Library &#8211;</strong> The default location on my laptop is C:\Program Files (x86)\Siemens\Step7\S7BIN\S7HCOM_X.DLL)</p>



<p class="wp-block-paragraph"><strong style="text-indent: -0.25in;">Simatic 1.0 Type Library</strong><span style="text-indent: -0.25in;"> &#8211; C:\Program Files (x86)\Siemens\Step7\S7BIN\S7ABATCX.dll</span></p>



<p class="wp-block-paragraph"><p class="MsoListParagraphCxSpFirst" style="text-indent: -0.25in;"><o:o:p></o:o:p></p></p>



<p class="MsoNormal wp-block-paragraph">Likewise, if you have SiMotion installed, the following DLL is registered with it:</p>



<p class="MsoNormal wp-block-paragraph"><strong>SiMotion 1.0 Type Library &#8211; </strong>C:\Program Files (x86)\Siemens\Step7\S7BIN\U7WSCOAX.dll<o:o:p></o:o:p></p>



<p class="MsoNormal wp-block-paragraph">With these libraries, PLC and SiMotion programmers can automate repetitive or difficult tasks in the familiar .NET development environment using the off-the-shelf Microsoft COM&nbsp;Interop tool.</p>



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



<p class="MsoNormal wp-block-paragraph"><strong>Working withSimatic Manager <o:o:p></o:o:p></strong></p>



<p class="MsoNormal wp-block-paragraph">Using these DLL’s to mimic Simatic Manager is called using the Command Interface, and &nbsp;the object reference manual can be found on CD 2 of the Step 7 installation CD. After adding the DLLs as references in your project, getting started is as easy as the following:<o:o:p></o:o:p></p>



<pre class="wp-block-code"><code>
 Simatic Sim = new Simatic(); Project Proj = Sim.Projects.Add(@“C:\MyProject\MyProject.s7p”); Console.WriteLine("Project created on: “ + Proj.Created); </code></pre>



<p class="wp-block-paragraph"><p class="MsoNormal" style="margin-bottom: 0pt;">&nbsp;</p></p>



<p class="MsoNormal wp-block-paragraph"><strong>Working with SiMotion Scout<o:o:p></o:o:p></strong></p>



<p class="MsoNormal wp-block-paragraph">The parallel tool in SiMotion scout is simply called external scripting, and its object reference is in the standard Scout help interface. It’s pretty straightforward as well:</p>



<div class="wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers" data-code-block-pro-font-family="Code-Pro-JetBrains-Mono" style="font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)"><span style="display:flex;align-items:center;padding:16px 0 0 16px;width:100%;text-align:left;background-color:#1e1e1e"><span style="background:#c7c7c7;padding:0.3rem 0.5rem 0.2rem;border-radius:1rem;font-size:0.8em;line-height:1;height:1.25rem;text-align:center;display:inline-flex;align-items:center;justify-content:center;color:#1e1e1e">C#</span></span><span role="button" tabindex="0" style="color:#D4D4D4;display:none" aria-label="Copy" class="code-block-pro-copy-button"><pre class="code-block-pro-copy-button-pre" aria-hidden="true"><textarea class="code-block-pro-copy-button-textarea" tabindex="-1" aria-hidden="true" readonly>Application app = new Application();

Project proj = app.Projects&#91;
    @"C:\MyProject\MyProject.s7p"
&#93;;

Console.WriteLine("Compiling Project");

proj.Build();</textarea></pre><svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path class="with-check" stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"></path><path class="without-check" stroke-linecap="round" stroke-linejoin="round" d="M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6"></path></svg></span><pre class="shiki dark-plus" style="background-color: #1E1E1E" tabindex="0"><code><span class="line"><span style="color: #4EC9B0">Application</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">app</span><span style="color: #D4D4D4"> = </span><span style="color: #569CD6">new</span><span style="color: #D4D4D4"> </span><span style="color: #4EC9B0">Application</span><span style="color: #D4D4D4">();</span></span>
<span class="line"></span>
<span class="line"><span style="color: #4EC9B0">Project</span><span style="color: #D4D4D4"> </span><span style="color: #9CDCFE">proj</span><span style="color: #D4D4D4"> = </span><span style="color: #9CDCFE">app</span><span style="color: #D4D4D4">.</span><span style="color: #9CDCFE">Projects</span><span style="color: #D4D4D4">&#91;</span></span>
<span class="line"><span style="color: #D4D4D4">    </span><span style="color: #CE9178">@&quot;C:\MyProject\MyProject.s7p&quot;</span></span>
<span class="line"><span style="color: #D4D4D4">&#93;;</span></span>
<span class="line"></span>
<span class="line"><span style="color: #9CDCFE">Console</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">WriteLine</span><span style="color: #D4D4D4">(</span><span style="color: #CE9178">&quot;Compiling Project&quot;</span><span style="color: #D4D4D4">);</span></span>
<span class="line"></span>
<span class="line"><span style="color: #9CDCFE">proj</span><span style="color: #D4D4D4">.</span><span style="color: #DCDCAA">Build</span><span style="color: #D4D4D4">();</span></span></code></pre></div>



<p class="wp-block-paragraph"><p class="MsoNormal" style="margin: 5pt 0in;">There it is. You can see how easy it is to access project data and remotely send commands to projects.</p></p>



<p class="MsoNormal wp-block-paragraph"><strong>Implementation Ideas</strong></p>



<p class="MsoNormal wp-block-paragraph">As someone who works with Simatic Manager and SiMotion Scout on a daily basis, there are some interesting possibilities for automation using these tools. Here are a few ideas I am throwing around:<o:o:p></o:o:p></p>



<ol class="wp-block-list">
<li><span style="line-height: 1.5;">Source control integration using SVN or similar tools. Currently Siemens does not offer a comprehensive source control solution for code, and third party tools are prohibitively expensive and do not offer the same merging, branching, and traceability features that are common in text-based programming languages. I could see DMC using these DLLs to automate exporting &nbsp;code source files into an SVN repo, and also importing them back into projects in order to have more sophisticated diff, merge, and trace capabilities in our Siemens projects.</span></li>



<li><span style="line-height: 1.5;">Automating repetitive programming tasks. For instance, oftentimes customers supply huge IO lists that need to be entered into a Siemens program, whether into the Symbol Table, data blocks, or code itself. These tools would let us automate these tasks to save a great deal of time, and reduce human error.</span></li>



<li><span style="line-height: 1.5;">Improving connectivity with other applications. We often have to export tag information from a Siemens data block to a CSV file in order to import it into some other company’s tool- an OPC server for instance. These DLLs give us a straightforward way to move data in and out of Siemens projects.</span></li>



<li><span style="line-height: 1.5;">Data acquisition from online data. Simatic Manager does not have a great trace feature like SiMotion does. These DLLs would allow a custom DAQ tool to collect data from the PLC without the need of an intermediary party’s driver, OPC server, etc.</span></li>
</ol>



<p class="MsoNormal wp-block-paragraph"><span style="line-height: 1.5;">I’m sure there are many more possibilities (and of course many may have been done already). Thanks for giving us these great tools, Siemens! And&nbsp;if anyone have any other insights or implementation ideas, be sure to let me know in the comments below</span><span style="line-height: 1.5;">.</span></p>



<p class="MsoNormal wp-block-paragraph"><strong><a href="/services/application-development/web-application-development"><span style="line-height: 1.5;">Learn more about DMC&#8217;s software and web development services.</span></a></strong></p>



<p class="MsoNormal wp-block-paragraph"><o:o:p></o:o:p></p>



<p class="MsoNormal wp-block-paragraph"><o:o:p></o:o:p></p>
<p>The post <a href="https://static.dmcinfo.com/blog/28573/automating-siemens-s7-and-simotion-tasks-using-c-net/">Automating Siemens S7 and SiMotion Tasks Using C# .NET</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Automation Redundancy Using ICONICS WebHMI Solutions</title>
		<link>https://static.dmcinfo.com/blog/28626/automation-redundancy-using-iconics-webhmi-solutions/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Thu, 21 Feb 2013 12:53:56 +0000</pubDate>
				<category><![CDATA[HMI and SCADA]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[PLC]]></category>
		<category><![CDATA[Iconics]]></category>
		<category><![CDATA[PC]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/28626/automation-redundancy-using-iconics-webhmi-solutions/</guid>

					<description><![CDATA[<p>There are many good options for automation and controls redundancy out there. Here is an example we just recently used in the field. The customer specified a requirement of complete redundancy for all IT, networking, and HMI components of one of a large-scale manufacturing line. The system architecture we chose incorporated thin-client HMIs with server [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/28626/automation-redundancy-using-iconics-webhmi-solutions/">Automation Redundancy Using ICONICS WebHMI Solutions</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">There are many good options for automation and controls redundancy out there. Here is an example we just recently used in the field. The customer specified a requirement of complete redundancy for all IT, networking, and HMI components of one of a large-scale manufacturing line. The system architecture we chose incorporated thin-client HMIs with server virtualization, off-the-shelf ICONICS redundancy solutions, dual KEPware OPC servers, a custom .NET service, and automatically backed-up SQL data storage. A diagram may help demonstrate our solution:<br />
<o:o:o:o:o:p></o:o:o:o:o:p></p>

<p class="wp-block-paragraph"><o:o:o:o:o:p>&nbsp;</o:o:o:o:o:p></p>

<p class="wp-block-paragraph"><o:o:o:o:o:p><img decoding="async" alt="" height="382" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/network-architecture.png" width="450" /></o:o:o:o:o:p></p>

<p class="MsoNormal wp-block-paragraph">&nbsp;</p>

<p class="MsoNormal wp-block-paragraph">Starting from the bottom, we can see that our operator-side HMI is exposed anywhere on the internal company network (with the correct login information) via Internet Explorer. This provides a reduction in downtime, because if HMI hardware fails, any other computer can be put in its place right away. Technology used for this implementation was ICONICS WebHMI, which easily converts between local HMI projects and HTML ActiveX Web pages.<o:o:o:o:o:p></o:o:o:o:o:p></p>

<p class="MsoNormal wp-block-paragraph">Via the production network, the thin client speaks to one of two ICONICS DataWorx servers to send and receive production tags. ICONICS DataWorx has built-in redundancy and failover options which determine which of two OPC servers should be used to communicate to production devices such as PLCs. <o:o:o:o:o:p></o:o:o:o:o:p></p>

<p class="MsoNormal wp-block-paragraph">Recipe data as well as data acquisition and reporting are stored in SQL Server 2008 R2. SQL has built-in features for customizable back-up and storage, which we are using to minimize the possibility of data loss. The SQL server communicates with our OPC server via a custom, configurable .NET service we have written, deployed and tested on several previous systems.<o:o:o:o:o:p></o:o:o:o:o:p></p>

<p class="MsoNormal wp-block-paragraph">The last important step in reducing downtime is virtualization. Each of our three servers is virtualized using VMWare. This allows us to save backups of entire servers on independent storage devices, preserving all program installations and configurations in the event of a total meltdown of the physical servers.</p>

<p class="MsoNormal wp-block-paragraph">Complete redundancy is not a simple task. A lot of thought has to go into specific requirements, hardware/software architecture, network layouts, and program configurations. Testing is also key (for us, simulation off-site of various failure modes provided insight into software configuration requirements). After working on this and previous redundant systems, I would recommend repeating the fundamentals described above:<o:o:o:o:o:p></o:o:o:o:o:p></p>

<ol class="wp-block-list">
 <li>Server-centric solutions with thin-client operation<o:o:o:o:o:p></o:o:o:o:o:p></li>
 <li>Off-the-shelf solutions where available<o:o:o:o:o:p></o:o:o:o:o:p></li>
 <li>Virtualization with independent back-ups of all servers <o:o:o:o:o:p></o:o:o:o:o:p></li>
</ol>

<p class="MsoNormal wp-block-paragraph">Happy programming!</p>

<p class="MsoNormal wp-block-paragraph"><o:o:o:o:o:p><a href="/services/manufacturing-automation-and-intelligence/hmi-and-scada-programming/iconics-programming">Learn more about DMC&apos;s Iconics programming services.</a></o:o:o:o:o:p></p>
<p>The post <a href="https://static.dmcinfo.com/blog/28626/automation-redundancy-using-iconics-webhmi-solutions/">Automation Redundancy Using ICONICS WebHMI Solutions</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Siemens PLCS, Networking, and More&#8211;DMC at the SITEC 2011 Conference</title>
		<link>https://static.dmcinfo.com/blog/29475/siemens-plcs-networking-and-more-dmc-at-the-sitec-2011-conference/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Thu, 16 Jun 2011 07:31:07 +0000</pubDate>
				<category><![CDATA[HMI and SCADA]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[PLC]]></category>
		<category><![CDATA[Siemens PLC]]></category>
		<category><![CDATA[WinCC]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/29475/siemens-plcs-networking-and-more-dmc-at-the-sitec-2011-conference/</guid>

					<description><![CDATA[<p>I recently had the opportunity to attend my first Siemens technical conference. The conference, called SITEC, took place May 16-20 in Atlanta, GA, and Kristie Shea and I represented DMC. SITEC is Siemens&#8217; technical conference where solution partners like DMC, distributors, and internal Siemens staff learn about the latest Siemens software and hardware technology solutions. [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/29475/siemens-plcs-networking-and-more-dmc-at-the-sitec-2011-conference/">Siemens PLCS, Networking, and More&#8211;DMC at the SITEC 2011 Conference</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">I recently had the opportunity to attend my first Siemens technical conference. The conference, called SITEC, took place May 16-20 in Atlanta, GA, and Kristie Shea and I represented DMC. SITEC is Siemens&rsquo; technical conference where solution partners like DMC, distributors, and internal Siemens staff learn about the latest Siemens software and hardware technology solutions. I had a great time seeing what&apos;s new and upcoming in the automation world, as well as meeting the people behind the scenes at Siemens.&nbsp;Conferences such as SITEC help&nbsp;keep DMC engineers current with the latest and greatest technologies, as well as maintain relationships with the people we get to work with.</p>

<p class="wp-block-paragraph">We had the opportunity to take three courses each at the conference. The &lsquo;Remote Connectivity,&rsquo; course was an opportunity to learn about the multitude of options Siemens offers for remotely connecting to, viewing, and programming their systems, whether through connected subnets, WLAN/Internet, or phone modems and teleservice adapters. This was perhaps my favorite course of the week; we had a great instructor, it was fast paced, and I had the opportunity to work with some very cool hardware including the SINAUT cellular modem, the SCALANCE S series of routers and VPN servers and clients, and the teleservice adapter modem.</p>

<p class="wp-block-paragraph">My second course was an introduction to the TIA Portal v11 software &ndash; the latest and greatest programming environment for <a href="/services/manufacturing-automation-and-intelligence/plc-programming/siemens-s7-plc-programming">Siemens PLCs</a>, HMIs, and industrial PCs. This is a huge software release for Siemens, with a remarkable amount of new features. The programming environment now integrates<a href="/services/manufacturing-automation-and-intelligence/plc-programming"> PLC programming</a>, HMI development, as well as features previously only available with the <a href="/services/manufacturing-automation-and-intelligence/hmi-and-scada-programming">WinCC SCADA software</a>, into one piece of software. As a result, the TIA portal 11 is going to significantly decrease the time it takes to develop software for our customers&rsquo; automation solutions&mdash;as well as make it more enjoyable to program.</p>

<p class="wp-block-paragraph">Lastly, Kristie and I both took the Advanced Safety Concepts course. We enjoyed the lab-based teaching style along with the self-paced course structure. I got to experiment with various safety hardware systems including the Mobile Panel 277F wireless HMI, safety communications with iDevice and shared devices, the WinAC RTX-F safety-rated industrial PC, and much more.</p>

<p class="wp-block-paragraph">Not only did Kristie and I walk away with our Siemen&rsquo;s technology certificates, but with a significant amount of applicable project knowledge that I now get to pass along here at DMC. I am very thankful for the opportunity, and very much hope I get to attend next year&rsquo;s event.</p>

<p class="wp-block-paragraph"><strong><a href="/services/manufacturing-automation-and-intelligence/plc-programming/siemens-s7-plc-programming">Learn more about DMC&apos;s Siemens PLC programming services.</a></strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/29475/siemens-plcs-networking-and-more-dmc-at-the-sitec-2011-conference/">Siemens PLCS, Networking, and More&#8211;DMC at the SITEC 2011 Conference</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Using Siemens S7-300 PLCs to Report System Errors</title>
		<link>https://static.dmcinfo.com/blog/29646/using-siemens-s7-300-plcs-to-report-system-errors/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Thu, 20 Jan 2011 14:44:41 +0000</pubDate>
				<category><![CDATA[HMI and SCADA]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[PLC]]></category>
		<category><![CDATA[Siemens PLC]]></category>
		<category><![CDATA[Test and Measurement Automation]]></category>
		<category><![CDATA[Data Analysis]]></category>
		<category><![CDATA[WinCC]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/29646/using-siemens-s7-300-plcs-to-report-system-errors/</guid>

					<description><![CDATA[<p>The Siemens S7-300 line of PLCs has about a million great features integrated into the programming environment. After I recently inherited a PLC project where some (many) of these were not implemented, I thought it might be a good idea to do a recap on some of the more useful functions Step7 has to offer [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/29646/using-siemens-s7-300-plcs-to-report-system-errors/">Using Siemens S7-300 PLCs to Report System Errors</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">The Siemens S7-300 line of PLCs has about a million great features integrated into the programming environment. After I recently inherited a PLC project where some (many) of these were not implemented, I thought it might be a good idea to do a recap on some of the more useful functions Step7 has to offer us.</p>

<p class="wp-block-paragraph">By far one of the most useful, and sadly underutilized, capabilities available to us from the Step7 environment is the &ldquo;Report System Errors&rdquo; utility. This utility, when activated, generates pre-built function blocks and adds them to your project. These FBs capture all diagnostic data and CPU messages, and spit it out in a human readable form perfectly compatible with the Siemens line of WinCC or WinCC Flex HMIs (though actually in fact, if you are particularly ambitious you can even use them on non-Siemens HMIs).</p>

<p class="wp-block-paragraph">How much downtime has been wasted in your facility, while your maintenance team tracked down the cause of that annoying red &ldquo;System Fault&rdquo; light in the panel? Only to give up and pay for a programmer to come to your facility to plug in and see what the problem is? If this has happened to you, your programmer has not done his job. The RSE utility can give maintenance detailed diagnostics right on the HMI, sometimes more detailed than you might have thought possible. Instead of a blank &ldquo;system fault&rdquo; light and a line down for hours, imagine seeing the following on your HMI alarm log:</p>

<blockquote class="is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><b>Name: IM151-3PN &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dosing Station 1 I/O Rack &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SLOT 3 &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Module: Port 2</b></p>

<p class="wp-block-paragraph"><b>Part Order number: 6ES7 151-3BA23-0AB0<o:p></o:p></b></p>

<p class="wp-block-paragraph"><b>Digital Input wire break</b></p>
</blockquote>

<p class="wp-block-paragraph">This is just one of thousands of possible custom error messages that get automatically added to your alarm list. You should be able to see right away why this should be in every <span style="line-height: 20.7999992370605px;">S7-300</span> project. This is the kind of thing that changes downtime from &ldquo;hours&rdquo; to &ldquo;minutes&rdquo;.</p>

<p class="wp-block-paragraph">So why do I find PLC projects that are not using the RSE utility? Is it because system integrators don&rsquo;t know about it, or because they don&rsquo;t understand how it works? This blog solves the first problem. Stay tuned for the next blog, where I talk about how it works, and specifically how to use it on WinCC and WinCC Flex HMIs.</p>

<p class="wp-block-paragraph"><strong><a href="/services/manufacturing-automation-and-intelligence/plc-programming/siemens-s7-plc-programming">Learn more about DMC&apos;s Siemens S7 PLC programming services.</a></strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/29646/using-siemens-s7-300-plcs-to-report-system-errors/">Using Siemens S7-300 PLCs to Report System Errors</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Object Oriented Programming in Siemens and Allen Bradley PLCs</title>
		<link>https://static.dmcinfo.com/blog/29943/object-oriented-programming-in-siemens-and-allen-bradley-plcs/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Mon, 15 Mar 2010 13:29:05 +0000</pubDate>
				<category><![CDATA[Allen Bradley PLC]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<category><![CDATA[PLC]]></category>
		<category><![CDATA[Siemens PLC]]></category>
		<category><![CDATA[Hardware]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/29943/object-oriented-programming-in-siemens-and-allen-bradley-plcs/</guid>

					<description><![CDATA[<p>Since their conception PLC programs have been founded on simple programs. RLL (Relay Ladder Logic) and IL (Instruction List) commands have dominated PLC programs since PLCs first came to market in the 1970s. However in the past few years automation requirements have grown more complex and demanding. This has in turn led to PLC manufacturers [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/29943/object-oriented-programming-in-siemens-and-allen-bradley-plcs/">Object Oriented Programming in Siemens and Allen Bradley PLCs</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Since their conception PLC programs have been founded on simple programs. RLL (Relay Ladder Logic) and IL (Instruction List) commands have dominated PLC programs since PLCs first came to market in the 1970s. However in the past few years automation requirements have grown more complex and demanding. This has in turn led to PLC manufacturers beginning to include some higher level programming concepts in their software packages. What exactly have they added? And what does it mean for your manufacturing processes? Answers to all of these questions will be answered…right now.</p>



<p class="wp-block-paragraph">Object-oriented programming (OOP) is a complicated beast, but in essence it is based on a few simple concepts:</p>



<ol class="wp-block-list">
<li>Classes. The big one. A class is a definition of a group functions and attributes that are all related in some way.</li>



<li>Encapsulation. OOP pushes forward the practice of hiding data and class definitions except where it is needed.</li>



<li>Inheritance. Building classes based on other classes is one of the foundations of most modern OOP languages.</li>
</ol>



<p class="wp-block-paragraph">These concepts have helped speed up software development and testing time by several orders of magnitude compared to programming 30 years ago. Why then, up until a few years ago, were none of these concepts available in PLCs? The answer is simply that most PLC programmers were not software engineers or computer scientists. Luckily that has started to change. Let’s talk about each one of the OOP concepts above, how it has been added to the PLC repertoire, and how it can help YOU make gains on software development time, machine commissioning, and safety standards.</p>



<ol class="wp-block-list">
<li>Classes. The direct correlation to classes in the PLC world is the function block. A function block, like a class, is a definition of actions and attributes. For instance, a valve function block has actions, such as opening, closing, or throwing an alarm, and attributes, such as a timeout length or open/closed status. By creating a single valve function block, you have created the correct actions and attributes for every single similar valve in your system. See Tim’s article about <a href="/latest-thinking/blog/id/117/iec-61131-3-function-blocks--unleash-the-power">IEC 61131-3 Function Blocks</a> for more information about the vast power of this concept.</li>



<li>Encapsulation. This is a little trickier to establish in PLCs, however, you can make it work. The easiest way to establish encapsulation is to use a combination of user-defined types (UDTs) and function blocks. UDTs group like-minded data together in a hierarchy. In our valve example, we might have a UDT for all valve data and inside it a UDT for all valve errors. We can then declare one of these for each of our valves, and then our function block will know to access all data from within the UDT. A timeout error in a water valve, for example, would be something extraordinarily clear and readable—something like “HotWaterValve.Errors.TimeoutFault”. Once again my coworker Tim Jager has written a great article about this topic. See <a href="/latest-thinking/blog/id/124/iec61131-3-data-structures-encapsulation-domination">IEC 61131-3 Data Structures</a> for more information.</li>



<li>Inheritance. Here is the one area central to OOP that simply hasn’t made it to PLCs yet. Inheritance means that you can define classes starting from a baseline (i.e. starting from other classes). You could have a Bar Chart class, for instance, that hardly requires any code whatsoever, because it inherits from a Chart class where most of the work is performed. Unfortunately if you want this kind of capability in PLCs you will probably have to wait a few years. Inheritance could mean some pretty cool stuff in the industrial controls field. For instance, we could define a base motor class with all common motor functionality, then create custom inherited classes, like a Profibus motor versus a Modbus motor, with minimal code effort.</li>
</ol>



<p class="wp-block-paragraph">Well, there you have it. OOP, the most widely adopted programming structure in the world, is slowly but surely making its way into the industrial controls space. As controls demands become more and more demanding, leveraging these new techniques becomes vital in order to decrease development costs and test time, while increasing program robustness.</p>



<p class="wp-block-paragraph"><strong>Learn more about DMC&#8217;s <a href="/services/manufacturing-automation-and-intelligence/plc-programming/siemens-s7-plc-programming">Siemens PLC</a> and <a href="/services/manufacturing-automation-and-intelligence/plc-programming/allen-bradley-plc-programming">Allen-Bradley PLC</a> programming expertise.</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/29943/object-oriented-programming-in-siemens-and-allen-bradley-plcs/">Object Oriented Programming in Siemens and Allen Bradley PLCs</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Winter Fun At DMC</title>
		<link>https://static.dmcinfo.com/blog/30026/winter-fun-at-dmc/</link>
		
		<dc:creator><![CDATA[Jon Carson]]></dc:creator>
		<pubDate>Fri, 15 Jan 2010 13:36:57 +0000</pubDate>
				<category><![CDATA[Chicago]]></category>
		<category><![CDATA[Culture]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/30026/winter-fun-at-dmc/</guid>

					<description><![CDATA[<p>A lot of us here at DMC like to get outdoors and stay active, even during these brutal Midwestern winters. This Saturday, five DMC employees, including myself, braved the cold to spend a great day out at Alpine Valley ski resort.&#160; Jody Koplo, Jesse Batsche, Jessica Mlinaric, Eric Nielsen, and I all had a blast [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/30026/winter-fun-at-dmc/">Winter Fun At DMC</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">A lot of us here at DMC like to get outdoors and stay active, even during these brutal Midwestern winters. This Saturday, five DMC employees, including myself, braved the cold to spend a great day out at Alpine Valley ski resort.&nbsp;</p>

<p class="wp-block-paragraph">Jody Koplo, Jesse Batsche, Jessica Mlinaric, Eric Nielsen, and I all had a blast learning how to snowboard, even though some were more successful than others!&nbsp;</p>

<p class="wp-block-paragraph">Here is our own Jesse Batsche, tearing up the terrain park:</p>

<figure class="wp-block-image"><img decoding="async" alt="Jesse Batsche Ski Jump" height="450" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/IMG_0844.jpg" width="600" /></figure>

<p class="wp-block-paragraph">Eric Nielsen wisely opted to avoid the physical pain of newbie snowboarding. Here he is out showing us all with his skiing expertise:</p>

<figure class="wp-block-image"><img decoding="async" alt="Eric Nielsen Ski Jump" height="450" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/IMG_0846.jpg" width="600" /></figure>

<p class="wp-block-paragraph">Lastly here I am&#8211; note that this is only the beginning of the jump. With my personally estimated speed of 50 mph, I must have cleared at least 50 feet.</p>

<figure class="wp-block-image"><img decoding="async" alt="Jon Carson Ski Jump" height="494" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/IMG_0847-1.jpg" width="600" /></figure>

<p class="wp-block-paragraph">After a hard day of winter sports, we all met up in the lodge for some cooldown/warm up. Thanks, Jody for helping to organize the great trip!</p>

<figure class="wp-block-image"><img decoding="async" alt="DMC Ski Trip Group Picture" height="450" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/P1030849.jpg" width="600" /></figure>

<p class="wp-block-paragraph">Learn more about&nbsp;<a href="https://static.dmcinfo.com/about">DMC&apos;s Company Culture.</a></p>
<p>The post <a href="https://static.dmcinfo.com/blog/30026/winter-fun-at-dmc/">Winter Fun At DMC</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
