Transitions in automation control programming over the years from relay ladder logic, to PLC ladder logic, to even today's use of IEC 61131-3 PLC languages have maintained a fundamental connection with ladder logic programming and the use of graphical circuit diagrams from its relay logic roots.
Even with modern programming methods taking center stage, ladder diagram (LD) still has its place as one of the six IEC 61131-3 programming languages. LD has a significant user base, especially among plant service and support personnel who understand how ladder technology works and how to use its tools to troubleshoot sophisticated systems on the plant floor.
But now, new programming technology called mapp (for "modular application"), which emphasizes the configurability of automation software objects and requires less structured programming than in the past, is putting ladder programming more into the forefront. Following a mantra of "configure more and program less," the goal is to reduce the need for service engineers to delve into PLC code. They can deploy diagnostics remotely with simple connectivity tools like onboard web servers and VNC connections.
"One of the big design philosophies behind the mapp technology from the beginning was its ease-of-use with ladder programming," Marcel Voigt, senior solutions engineer at B&R Industrial Automation, told Design News. "The function block interface is designed to work and display well in ladder, so that technicians and engineers familiar with ladder logic would be comfortable just by looking at it. The interfaces are straightforward and, in general, provide Boolean interfaces that work well with ladder."
With the current automation skills gap, there are many career opportunities where manufacturing companies cannot fill the positions required for designing, integrating, operating, and maintaining systems. One way to bridge this gap, according to B&R, which has spent thousands of development hours investing in mapp technology, is to develop more powerful software functionality inside readily-configurable software objects that are compatible with standard IEC 61131-3 function blocks. The end-goal is to reduce programming time and enhance the ability of plant-level personnel to change code to troubleshoot and modify recipes.
"This technology is a game-changer because now there is no longer a need to convince people that they should be using programming languages such as structured text or sequential function chart to implement automation solutions," said John Kowal, director of business development for B&R.
Web Browser Interface
Another basic innovation integral to mapp is a web interface that enables use of a web browser to view the same function blocks and status information that a user would see in B&R's Automation Studio development tools at a specific web address for a controller.
With software development focused on both the needs of personnel servicing the machines in the plant and the control engineers or OEMs developing new machines, the web browser interface creates an intuitive tool that promotes remote connectivity and ease of use. The logic is that, if you can't convince the service people, you won't be able to convince the control engineers to use the technology. And in some plant environments, the service engineers are more important in the decision-making process because support personnel know ladders and are the primary support group for machines in production.
"It is a huge advantage for users to be able to diagnose all mapp components down to the function block level using a web browser," Voigt said. "There are also software modules associated with each mapp component that is automatically populated, so all of the system software interacts with each other without the user having to do the work to connect them."
MORE FROM DESIGN NEWS: Graphical Programming Allows Small Staff to Design Big Machine
Basics of mapp Technology
Since any automation software project starts with the system configuration, there is a general trend to tools that allow engineers to configure more and program less to make a system operational. Using mapp, each component is represented by a mapp link, which can be used to configure that single component, but normally a set of default parameters work immediately out-of-the-box.
With a regular axis, for example, a normal configuration can be dropped into the project, the user connects three variables to the MpAxisBasic function block, and the axis will be up and running. For a robot, it's the same process, and there are default configurations, including a set of predetermined mechanical parameters. Earlier this year, a B&R workshop called "Configure a Robot in Eight Minutes" illustrated for attendees how quickly a robot can be configured.
The technology includes motion function blocks for indexing, electronic gearing, camming, and other motion requirements for implementing master/slave functionality. But it also adds in technologies such as advanced kinematics, CNC, and tools for connectivity, plus data and file handling. New components are added on a regular basis, according to B&R. For example, two upcoming components are mapp Teach, for teaching points for a robot path, and mapp Energy for energy consumption analysis.
"The strength of the technology is not just ease-of-use but also that it provides a consistent approach to modularity," Voigt said. "The developer can reuse code, and function blocks only require limited programming between the ladders, so troubleshooting will be much easier in the future. Opening up the market by providing a solution for busy plant personnel that don't have the time to learn something new was an objective."
One additional goal is to increase modularity. With a master-slave system using a cam, for example, there is a requirement for three function blocks, two of which cover the basics of axis handling. Imagine a pump system with a motor, a coupling, and the pump itself. The motor is master axis and a coupling block is used to connect to the second axis or the pump. Between the two axes, the user can pick a simple gear or cam functionality, or the axis-coupling block can be used to add additional built-in options, such as recovery, offset, and phase handling.
Typical mapp Functions
Single- and multi-axis synchronized motion are provided through single function blocks instead of the dozen or more user-defined function blocks that users may be used to. It provides 25 built-in functions, such as gearing, camming, offset, phase handling, recovery, error, and recipe handling.
Robotic features offer users an ability to directly configure the mechanical properties of a robot and each joint for each robotic component. A unique faceplate is used to configure popular robot types, and the kinematic transformations for various types of robots are handled automatically.
A ready-to-use CNC interface can handle G code commands and execute them in function blocks. Functionalities include single step, interrupt, continue, and the ability to restart the program.
A function called mapp Audit was originally designed for implementing FDA CFR 21 Part 11 requirements, but is well suited to any kind of event-logging requirement.
Mechatronic functions are connected use the mapp link element, which is how information is shared between function blocks. The technology provides a logical method for automation programming using function blocks that makes it intuitive about how to connect elements and configure them into a system. The goal is to make it obvious both for the programmer and support personnel to see the relationship between an axis, the coupling in between, and the control of the slave device.
In addition to designing the function blocks to be easy to use in ladder, the ability to edit the function blocks in structured text makes it easier to use because it is one line of code. If an application requires additional functionality, other PLCopen function blocks can be added.
Implementing Packaging Machine Language requires a minimum of two function blocks. One provides the core functionality handling mode transitions, and the other is a function block per mode where, for example, one block handles all production state transitions. For other modes such as manual, the user drops in another block that can be defined either through tools in Automation Studio using the link configuration, or using the web browser interface. The web browser is simpler to use because the interface is graphical, and the user can easily uncheck the states they don't need and the function block will handle any transitions automatically.
"For packaging applications, it has always been very difficult to find an effective way to easily configure the state machine, especially in both Codesys and our environment which don't provide a UML (Unified Modeling Language) diagram. Using the graphical tools in the browser makes the configuration very simple," Voigt said.
Al Presher is a veteran contributing writer for Design News, covering automation and control, motion control, power transmission, robotics, and fluid power.