The industrial world is rapidly changing with the emergence of smart industry. Today’s production machines and handling equipment have become highly integrated mechatronic systems with a significant portion of embedded software. This fact requires several domains, including software engineering, IT, mechanical engineering, and electrical engineering, to work together concurrently and evolve the way of designing, testing, and verifying machine software to reach the expected level of functionality and quality.
Data proliferation ― Extracting valuable insight
A major driver of smart industry is the growing amount of data. Vision sensors, electric and hydraulic drives, production machines, and power plants all collect a growing amount of measured data during production operation. This data contains information that can be transformed into business value through the development of predictive models and algorithms. For example, machine learning techniques may be used to train a model to historical sensor data, so that the model can be used to predict future equipment failures and prevent production downtimes.
Building such a model requires a significant amount of historical data. Many businesses have been collecting this data for years, giving them a head start for applying predictive modeling techniques. For them, the focus is more on preprocessing data into a format suitable for machine learning, and applying several machine learning approaches to find the best one. In a recent example, a machine sensor dataset was merged with a quality control dataset so that the quality state could be predicted from raw sensor data. This enabled the manufacturer to identify bad batches earlier in the process, saving tens of thousands of dollars per machine per month.
In implementing such a system, one large design question is, where should the model be implemented? Should it run on the machine itself, so that decisions can be made in real-time on the attached PLC or industrial PC? Or should it be in business IT systems (possibly off-site servers, or in the cloud), where computational power is readily available and models can be easily updated? Each approach has its advantages and disadvantages, and the answer depends on several factors.
Integrating analytics with business IT systems
Business IT systems are often the first considered location for predictive models. Model maintenance is easy: if a better model is discovered, it is much easier to update a model in a business IT system than it is to update models in embedded systems. This allows for continual research and improvement of models as more data becomes available. Some server software allows for “hot swaps” so that new models are instantly used without requiring any changes to client software running on the machinery.
Another advantage of placing models in business IT systems is the wealth of available data sources that can be integrated together to come up with a model. For example, other data sources from the supply chain or operations at other plants could be integrated to come up with higher-level decisions that could result in substantial savings.
A final benefit is that business IT systems are typically the location where reports and dashboards are located, so having predictive models in this environment allows them to easily be incorporated into existing reporting tools.
Integrating predictive models with such systems requires tools for integrating with a variety of programming languages and APIs. Business systems are often implemented in programming languages such as java, .net, C++, and visual basic. Other common data transfer methods such as RESTful APIs and JSON are used. It is important that the generated predictive models be able to integrate into these environments so that the costly and inefficient process of recoding models can be avoided.
Deploying analytics to embedded systems
As smart industry evolves, software components provide a significant part of the entire added value of machine or production plants. Embedded software running on PLCs, industrial PCs, or FPGAs involves closed-loop control functionality, which ensures product quality as well as predictive maintenance algorithms for increased uptime without service intervention. Furthermore, supervisory logic for (in many cases even safety critical) state machine handling and automatic generation of optimized movement trajectories are all implemented in embedded software.
Implementing predictive models in embedded systems has several advantages. For one, response times are faster since data does not need to be transmitted over a network and back and they are deterministic, running on a real-time system. This is especially important in controls applications where the result of the predictive model is used to calculate the next actions taken by the machine. An additional benefit is the privacy that goes along with having all (or most) of the processing happen on the equipment. Machine operators are sensitive of data coming from their machines, and may not be comfortable with it being transmitted to off-site servers of the cloud. Implementing predictive models directly on the embedded systems eliminates this concern.
The concept of implementing predictive models on equipment is part of a larger trend to increase the size and complexity of the code base on production machinery. This poses software development challenges for classically trained machine builders. Many machine builders are mechanically focused and need to maintain experience with elaborate workflows and toolchains for mechanical construction. When it comes to software design, machine builders rely on traditional methods for programming and testing on hardware, but are often unaware of tools for modeling, simulation, automatic testing, and code generation which are widely used by their engineering peers in aerospace and automotive industries. These tools are combined into a toolchain for analyzing historical machine data, developing predictive models using machine learning approaches, generating code for embedded systems on the machines, and testing and validating the resulting code.
The use of model-based design
Providing sophisticated sensor networks presents one of the essential prerequisites for realizing the efficiency, cost, and, therefore, competitive advantages that smart industry promises. To become innovative leaders in their market, equipment manufacturers need to rapidly develop skills and expertise in these new design approaches and technologies.
The design productivity and system reliability of such an approach can be increased by using model-based design tools. These tools facilitate modular development of automation components, hardware independent testing, and automatic code generation, which can implement algorithms for specific hardware platforms at the touch of a button.
Models enable the intuitive and clear construction from predefined building blocks and continuous verification. With this approach, design flaws are corrected early on, which considerably shortens design cycles. Next, the algorithms need to be implemented, which can be considerably challenging using traditional methods. Historically, algorithms typically had to be developed by experts in IEC 61131-3, C/C++, VHDL, or Verilog. This practice is not only time consuming, but is also prone to errors with the ever-increasing complexity of the algorithms used in machinery. Manually implemented functions that have already been verified through simulations potentially do not behave the way they were intended to, may contain errors, and therefore can cause missed deadlines and problems that are only noticed on-site.
In contrast, real-time functionality is directly generated from simulation models using automatic code generation. This avoids the aforementioned sources of errors. The tested algorithm is directly translated into real-time code. Doing so not only saves time, but also enables the creation of innovative solutions in small development teams. Model-based design with automatic code generation enables engineers to fully leverage their expertise in construction to build a machine or plant without worrying about programming language details.
The race to smart industry realization
Keeping up with and being a leader in the worldwide smart industry requires companies to offer increasingly efficient and cost effective products, as well as keeping an open mind to the new business opportunities that smart industry and Industrial Internet-of-Things present. Central to these opportunities is the collection and availability of machine data.
While machine sales used to be their primary business in the past, innovative machine builders have already started to offer predictive maintenance service contracts to their customers to reduce production line standstills. More and more players in this industry are switching their focus towards service revenue, which promises continuous business over the entire lifespan of their production equipment of 20 years and more.
Smart industry encompasses the growing complexity of software and an ever-increasing amount of data. In the long term, the evolving trend will challenge engineers to become proficient in using new methods and tools in order to embrace this complexity. Companies will have to rethink their business models and focus more towards services based revenue, for instance for predictive maintenance contracts. For now, industrial companies who manage to shift their focus towards interdisciplinary design thinking (rather than production thinking) will emerge from the transformation as leaders in their areas and with new business models for their market. Those who do not will likely not make it through this transformation and risk being left behind.