As part of a team of developers at ASTRON the Netherlands, I was involved in designing and developing the control system for the new APERTIF upgrade to the Westerbork Radio Synthesis Telescope (shown right). My role in the project has been focused on orchestrating the variety of sub-systems/boards that manipulate the signal from the phased array feed to the data correlator and writer. For more information about what APERTIF is and how it will improve the current Westerbork telescope click here.
Over the past couple of years working at Science and Technology Corporation I have led and participated in several research and development projects in the area of system health and performance monitoring. While non-disclosure agreements limit the amount of detail I can go into, below I discuss some of the general aspects of these projects.
There are a variety of affordable sensors on the market that are able to give data on processes and environments. Most factory machines are automated by a Programmable Logic Controller (PLC). This is the computer which is responsible for controlling the machine and ensuring that it operates accurately and safely. What makes PLCs different from regular computers is that they are a lot more robust and have a much longer life span (20-30 years). By default, most PLCs will have several sensors that allow them to perform their basic functions. The data from these sensors can be used beyond the basic functions for monitoring nominal/non-nominal behaviour as well as optimisation of the production process. In addition to these built in sensors, it is also possible to add additional sensors to the PLC and/or additional monitoring systems. Each sensor and/or PLC will have its own communication protocol to interface with in order to get the data for analysis. This makes it very difficult for a standardised system design.
There are a variety of approaches that can be taken when it comes to the data analysis. Machine learning is a very hot topic in this regard as it allows you to distinguish between nominal and non-nominal behaviour without (or with very little) modelling of the system. In most cases supervised learning is required to qualify what is causing the non-nominal behaviour. It is sometimes weeks or months between machine faults so it is important to collect and classify sufficient amounts of data before implementing a test system with machine operators. Despite the appeal of novelty detection, in most cases it is still necessary to understand the specifics of how a machine works. This can in principle be done by studying the behaviour of key parameters and discussion with engineers.
While getting the data and parameterising its behaviour are necessary and important components of a good health monitoring system, they don't count for anything if they aren't useful tools to the operators and engineers of the machines. Having a system that streams data to a machine operater, but doesn't help him use the machine better or minimize its downtime is not much use at all. Careful thought needs to be given to which information is useful when. The ultimate goal of a health monitoring system is to simplify and identify key behaviour in a machine to make it more productive for the firm. A few ways that data analytics can be used to do this are; minimising machine down time through fault identification, minimising wasted resources by identifying faults on parts before they reach post processing steps, smarter resource management through predictive maintainence intervals and improved product quality through process optimisation. All of these can be achieved through a combination real-time monitoring and historical data analysis.
In my free time I dabble a little with applications for home automation. I currently have a cubietruck. What's a cubietruck you ask...
A cubietruck is like a raspberry-pi, but is a bit bigger and more powerful (shown on the left). My cubietruck is currently acting as my home server. It runs headless, but I have remote desktop access on my phone. It is often hosting this website as well as a git code repository. My current project is to control my Roomba using an LED transmitter (see image right). However, I would eventually like to control/automate things like lights, plant watering and the heating system.