The initial requirement of the customer sounded pretty simple: ‘We’d just like to know whether our manufacturing equipment is producing or not’. When standing in front of a machine this can be detected within seconds by combining a few factors: If the machine is switched on, a program is loaded (1) and running (2) not interrupted or stopped and there are no errors shown at the operator panel (3) then one can safely assume that the device currently produces parts.
As it doesn’t make sense to have employees run around at the shop-floor making notes of the state of every machine once a minute other ways had to be found. The question now was: ‘Can this check be automatically performed by an external device?’
Devices for machine-data-acquisition that have to be wired with analog and digital signal outputs of the machines never were an option because the devices themselves are costly, an additional network connection is needed at every machine and the effort for setup in terms of time and money was foreseeable astronomic for 240 machines. In addition the customer strictly wanted to avoid any modification of machines that could have an impact on warranty.
The customer’s first ‘software-only’ approach looked simple and effective: Use an OPC Server! There are several affordable products available that claim to be able to read data from ‘myriads’ of different devices. With Kepware’s product KEPSERVER for the 140 Programmable Logic Controller (PLC) controlled devices that perform more simple tasks like sealing or packaging it was, apart from the effort to communicate with the PLCs, not too difficult to get a useable machine state once a minute and store it at a server.
After some research the customer finally found Inventcom’s solution CNCnetPDM. This approach was completely different. Instead of requiring a specific communication protocol at the machine side this technique is able to access the controller via its built in standard communication interface and query data by using commands that are natively understood by the machine’s internal components, comparable to the machine’s own ‘language’. By doing so it was possible to read and combine the data needed to form ‘mutually exclusive machine states’, translate them into comparable data packets and store them at the data acquisition server.
Although this was perfect for the CNC’s for devices controlled by a PC such as Laser Markers and Molding machines an alternate solution had to be found as their architecture again is different. As the name implies, these machines use standard PC’s as operator panels. The PC’s typically have an expansion card installed that directly communicates with the machine’s internal components which cannot be accessed from the ‘outside world’. However, due to the fact that the PC itself is accessible and the machine operator uses a normal program to control the machine it should be possible to get data from there without the need for any modifications at the device. To accomplish this, again CNCnetPDM could be used. But instead of exchanging machine specific commands now the service’s ability to read log files was employed to get the required data. By analyzing the content of the log files it again was possible to combine data into ‘mutually exclusive machine states’ followed by translation and transmission to the server.