As it becomes the norm, smart industry is affecting the rate of change in the industrial world, to become faster than it has ever been. Now, production machines and handling equipment can be highly integrated mechatronic systems with a major portion of embedded software.
Piece written by Philipp H. F. Wallner, Industry Manager at MathWorks and Seth DeLand, Product Manager at MathWorks.
To reach the required level of functionality and quality, several domains, including software engineering, IT, mechanical engineering, and electrical engineering, must work together and change the way machine software is designed, tested and verified.
The increasing amount of data is a major driver of smart industry. Vision sensors, electric and hydraulic drives, production machines, and power plants all gather growing levels of measured data during production operation. This data contains information that can be turned into business value by developing predictive models and algorithms. Machine learning techniques may be used to train a model to historical sensor data – the model can then be used to predict future equipment failures and prevent production downtimes.
A large amount of data is needed to build such a model. Many businesses have been collecting this data for a long time, 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 most appropriate 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 allowed 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 the model should be implemented. It may run on the machine itself, so that decisions can be made in real-time on the attached PLC or industrial PC. Or it may be in business IT systems (perhaps 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 elements.
Analytics and Business IT Systems
Business IT systems are regularly the first considered location for predictive models. Model maintenance is straightforward – if a better model is discovered it is far easier to update a model in such a 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 need tools for integrating with a range 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 can integrate into these environments so that the costly and inefficient process of recoding models can be avoided.
With the evolution of smart industry, software components provide a major 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 optimised movement trajectories are all implemented in embedded software.
There are a few advantages to implementing predictive models in embedded systems. Response times are faster as data does not have to be transmitted over a network and back and they are deterministic, running on a real-time system. This is particularly important in controls applications where the result of the predictive model is used to calculate the next actions taken by the machine. Another 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. This concern is eliminated by implementing predictive models directly on the embedded systems.
Implementing predictive models on equipment is part of a wider trend to increase the size and complexity of the code base on production machinery. For classically trained machine builders, this poses software development challenges. Many machine builders tend to be mechanically focused and have to maintain experience with elaborate workflows and toolchains for mechanical construction.
With 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 commonly used by their engineering peers in aerospace and automotive industries. These tools are combined into a toolchain for analysing 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.
Embedded systems are increasingly being designed using model-based design, which is changing the way engineers and scientists work by moving design tasks from the lab and field to the desktop. When software and hardware implementation requirements are included, such as fixed-point and timing behavior, code can be automatically generated for embedded deployment and test benches created for system verification, saving time and avoiding the introduction of manually coded errors.
Providing sophisticated sensor networks presents one of the essentials for realising the efficiency, cost, and competitive advantages promised by smart industry. Equipment manufacturers need to rapidly develop skills and expertise in these new design approaches and technologies if they are to become innovative leaders in their market.
Using Model-Based Design tools like MATLAB and Simulink helps increase the design productivity and system reliability of such an approach. 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. Design flaws are corrected early on, which considerably shortens design cycles. Next, the algorithms must be implemented, which can be challenging using traditional methods. In the past, algorithms typically had to be developed by experts in IEC 61131-3, C/C++, VHDL, or Verilog.
This practice is time-consuming and 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, might contain errors, and therefore can cause missed deadlines and problems that are only noticed on-site.
On the other hand, real-time functionality is directly generated from simulation models using automatic code generation, avoiding the sources of errors mentioned above. The tested algorithm is directly translated into real-time code. This saves time and enables the creation of innovative solutions in small development teams. Model-Based Design with automatic code generation allows engineers to fully leverage their expertise in construction to build a machine or plant without the concern around programming language details.
Getting to a smart industry
Companies must offer increasingly efficient and cost-effective products, while being open-minded to the new business opportunities presented by smart industry and Industrial IoT. The collection and availability of machine data is key to these opportunities.
Although machine sales used to be their primary business, innovative machine builders have already begun to offer predictive maintenance service contracts to their customers to decrease production line standstills. An increasing amount of players in this industry are switching their focus towards service revenue. It promises continuous business over the entire lifespan of their production equipment of 20 years and more.
Smart industry is about the growing complexity of software and an ever-increasing amount of data. The evolving trend will challenge engineers to become proficient in using new methods and tools to embrace this complexity. Companies will need to rethink their business models and focus more towards services based revenue, for example for predictive maintenance contracts. Industrial companies who manage to shift their focus towards interdisciplinary design thinking, instead of production thinking, will rise from the transformation as leaders in their areas and with new business models for their market. Meanwhile, those who don’t will run the risk of falling behind.