OptoBlog

Outside-in Journal: Training Day Part 3

Posted by Josh Eastburn on Sep 23, 2019, 3:54:52 PM

See what the final day of Opto 22's factory training looks like from the inside.

As the resident engineer-in-training, I’ve taken on the job of communicating to the outside world what it looks like inside of Opto 22. I’ve started off by giving you a look into the mindset and technologies at work here through the lens of our on-site training. Follow these links if you missed part 1 or part 2 of the series.

Last time I left you hanging right when we were about to get into CODESYS® near the end of Day 2. Today I make good on that teaser, as well as looking at Day 3 content (including Node-RED, MQTT, and the groov View™ graphics library) before Ben and Norma wrap up the class with a lesson on design fundamentals.

Day 3 of 3 - The end... or the beginning?

Let’s make some code!

Garrick Reichert is part of Opto 22’s team of dedicated applications engineers. He’s a barbecue connoisseur and has a voice that makes me think of bluegrass music. He’s wrapping up Day 2 by teaching us about CODESYS, for which I am super jazzed. (I have major Stockholm syndrome when it comes to ladder logic.)

The immediate response from the class is, “What is CODESYS? Does anyone use this?” Not precisely unenthusiastic, but…😕 Unfazed, Garrick explains, “We’re trying to give you tools that are fit for your purpose.” That includes your industry, region, and skill set. If you’re operating in Europe, or are coming from a traditional Siemens/A-B PLC background (like me) CODESYS is probably way more in your wheelhouse than PAC Control™. The interface is immediately familiar: layers of nodes forming a device network definition, stacks of control object types, and lots of cryptic buttons in gray-clad window dressing. Naturally, device setup also involves clicking through more configuration windows than in PAC Control, but I’m still excited (remember, this is par for the PLC course).

CODESYS Development


Garrick explains that CODESYS has an expansive library of prebuilt functions, including over 500 essential building blocks in the OSCAT basic library. And did someone say UDTs (user-defined types)? 🤩I’ve gotten a lot of mileage out of those in the past when it comes to defining intuitive and reusable software components. I’ll definitely want to play with this more in the future, but right now, that’s it for Day 2.

We start off Day 3 with a comparison of CODESYS ladder logic and structured text. Garrick shows us how to create two tiny programs, just some simple calculations and toggling a couple outputs. They play nicely together, and look, online editing!—something everyone loves about PLCs, which I’m especially loving in CODESYS because it has a slick way of overlaying live values into the runtime window. For being kind of heavyweight, this IDE feels correspondingly more powerful.

Getting in the flow

The next segment of class is on Node-RED, but I have no idea what to expect. Ben mentioned it a couple times during his lunch demo on Day 2, and it’s clear that a few other students have used it extensively. I have no other context for it, though, so when Terry Orchard starts doing his thing, it takes me a second to grok what’s really going on. He’s talking about flowchart programming and JSON, which I’m familiar with, but then he clicks on this little colored pill a few times and suddenly he’s showing us live weather data pulled from the net through an HTTP request. I kind of do a double-take. Just like that? Where’s all the code?

Terry shows us how to create our own flows, connecting “nodes” together to request data via web APIs and pass it to groov View and PAC Control. Pretty soon it looks like some kind of cyberpunk candy store with all these colored jelly beans giving us data just by asking for it and then sending that data off to other jelly beans. When did data flow become so easy? How do I get hooked up to this thing? Can it teach me how to fly a B-212 helicopter? There is no spoon!

In all seriousness, though, once I catch the vision, I’m genuinely impressed and excited. This kind of connectivity would be tedious or impossible for a traditional PLC without another system acting as the web service gateway. Node-RED on groov EPIC makes it dead simple.

Developing with Node-RED

Your network is your net worth

This isn’t my last mind trip for the day. In the middle of my reverie, Terry’s plowing into the next topic, MQTT. Again, only a buzzword to me at this point. He’s talking about an open publish/subscribe communication model, and I’m thinking, “Like that producer-consumer thing that Allen-Bradley does?” No! Not even close. This is not just a convenient programming feature. It’s a completely different way of thinking about communication for industrial applications. The highlights:

  • More efficient than OPC by orders of magnitude, not to mention scalable and fault-tolerant.
  • Baked-in, client-managed security with only a single outgoing port, access control list, and complete anonymity between clients.

More to come after lunch!

Made to order

Today, lunch is a relaxed affair. We enjoy some Chinese food and ice cream for a treat. Everyone seems to be feeling pretty accomplished for having made it this far; the feeling of drinking from the firehose is mutual. While we’re taking our places, one of the other students grabs the A/V controls and exposes us to MIT’s Moral Machine. You thought you felt bad about your choices before…

For a demo, one of Opto’s illustrators, John Garrett, takes the floor. He’s the creative talent behind groov View’s SVG library. He’s also built a few tools to make View more customizable for the end user, which goes some way toward answering my question from Day 2. He demos how to give library images a custom color palette and orientation, then shows off a custom button maker and a simple drawing tool for rolling your own SVGs without using Illustrator or Inkscape. For me, though, this presentation is really about what a nice guy John is—as a final note, he mentions how he eagerly accepts customer requests to create new sets of images for the library.

groov SVG Image Library

Come on, baby, light my fire

Back in class, Terry adds another level to our MQTT knowledge with the Sparkplug B standard. He’s so knowledgeable and enthusiastic that I’ll basically believe anything he says at this point. “Did you notice all the weaknesses in MQTT?” he asks. I nod my head. “Sparkplug makes them all better.” I nod my head some more.

Truthfully, what I pick up is that, because MQTT is so flexible, it can also be the rope you hang yourself with. Basic MQTT requires a lot of planning to ensure that, for example, clients don’t publish over each other’s data. The Sparkplug standard adds some structure to correct for this without significantly impacting overall efficiency. This includes the use of birth/death/last-will messages for critical client events, which is a totally new concept to me when it comes to industrial communications.

“When does it make sense to use OPC, then?” I ask.

“Only when you have to,” replies Terry.😂

The home stretch

We’re through the meat now, it seems. We have some students that need to catch a plane, so Norma reorganizes the last few hours to accommodate them.

Ben’s not done with us yet, though. By this point, I’ve come to see him as the authority figure on all that is technical at Opto, so I’m surprised when he begins half-apologetically. He wants to talk to us about firmware updates and maintenance, but he starts with, “This is painful, and it takes way too long.” Indeed, the process that he outlines is multi-part and very manual. On the up-side, it makes me feel a little more willing to accept all the technical wonders I’ve seen in the last few days knowing that he’s willing to be so open about the current state of play.

The last segment of class, according to Ben, is by popular request, and goes over control system design. If you’re picking up a controller for the first time, particularly if you’re taking on your first professional project, or frankly, if you’ve been in the business for a while but want a good reminder about best practice, this part is worth it. We go through thirteen major steps (with an accompanying detailed checklist) from initial concept to final hand-off of an industrial grade automation project. At the end, one of the veteran engineers in class gives his blessing, saying, “Experience has taught me what you just said.”

With that, Norma gives us a final orientation to Opto 22’s product support resources, and we’re off and running!

Day 3 wrap-up and overall conclusions

Opto is straddling a few different worlds. Rarely have I had to wrap my head around so many new technologies in one training course, let alone in the same product. It’s a little painful, but I can also see so many new possibilities. I find myself sketching out old system architectures and re-imagining them built on EPIC. 

That said, your experience will almost definitely depend on your level of familiarity with PAC Control and PAC Display, which took up about ⅓ - ½ of the time. Even the SNAP PAC veterans learned a few good tricks from that portion, though.

Likewise, if you’re approaching groov EPIC from the IT integration side, day 3 might be retreading familiar ground. For me, that cross-pollination was important, though. I didn’t know what my OT could do for IT, and I didn’t know how easy it could be to bring IT into my OT. 

Ultimately, the biggest benefit I saw of hands-on training was the chance to get all my questions answered by the folks who knew best. Based on the discussion going on throughout class, most students came away with new approaches to solving their problems back home. If they came in with plans to use groov EPIC for one thing, they left with even more ideas of what they could do. And the staff were very willing to go into extra innings talking through specific applications.

One last thing

groov EPIC Learning Center Most attendees had taken advantage of the groov EPIC Learning Center discount, but a couple hadn’t; so I’ll reiterate it here: If you buy a groov EPIC LC, you get two seats to the factory training. At $2,895, this bundle will save you over $2000 compared to paying for the system and the two seats at list price. The LC ships in a rugged Pelican case for easy transport to demos or internal training.

Also, for customers in the eastern USA and Canada, groov EPIC training recently opened in Atlanta, Georgia through our partner ACS. And of course, we continue to add to the free content available through Opto U (42 mini-courses and counting).

See you next time!

 

 

What would you be interested in learning from the Opto 22 staff? We’re always discussing new options that could help our customers achieve their goals. Leave a comment, and let us know what you’re looking for.

Topics: Training, Node-RED, MQTT, Codesys, groov View, groov EPIC, groov EPIC Learning Center, Factory Training

Written by Josh Eastburn

Josh built his career in industrial automation on being a great guy to work with and by applying software engineering processes and design techniques to deliver automation more consistently. His hobbies include books, music, tabletop games, and raising his five kids.
Find me on:

Subscribe to Email Updates

Recent Posts

Posts by Topic

see all