Saturday, June 23, 2007

Software Engineering For Plant Control

The IICA (Institute of Instrumentation, Control and Automation) hosted the IT4PC symposium on IT for Plant Control last Wednesday and I was privileged to be invited, speaking first up about Software Engineering for Plant Control.

Thomas Fox from WA Water Corporation spoke about SCADA System Management after me. Following a break for morning tea Greg Belcher from Honeywell Australia spoke about Securing your Control Systems in a Windows World; followed by Bob Erickson of Matrikon Australia talking about Practical OPC Applications for your plant. After lunch, Vincent Tsang of Dimension Data gave in introductory talk called Networking 101 and Jeff Alexander gave a general talk about Microsoft's Perspective for your Critical System. We had a stimulating Panel Discussion and afternoon tea before the symposium closed.

Having never before given a talk on this subject matter to this kind of audience I worked quite hard beforehand with the conference organisers to hone my presentation so that it would be of interest to the target audience. To my delight I received some great feedback about the relevance of the systematic approach taken in software and systems engineering to the practice of control systems engineering, the design and implementation of plant controls. My original background is in electronic engineering, control systems and communications so I felt an immediate affinity with my audience and was already familiar with the problem domain.

This talk allowed me to explore more deeply some of the processes that contribute to quality outcomes in systems design in the context of plant control and how some of the usual work practices can be improved. My approach resonated with at least a portion of the audience because I received immediate feedback in direct questions and afterwards in discussion including potentially several invitations to consult with attending organisations. One question pointedly asked about security issues and I confessed to skirting issues related to HMI(*), SCADA(*), security and DR(*) in deference to other speakers who, as it turned out, covered relevant aspects of these topics very competently.

The scale of the Water Corporation's network across the state of Western Australia is breathtaking; over 200 towns serviced, several major and many secondary water and waste water treatment plants. The plan to extend the current SCADA network to the entire service area and all plant is an enormously complex exercise. Of the budgetted capital spend to average $1B per annum over the next 20 years some $40M+ per annum will be spent on control and IT systems. The innovative control centres being built to supervise the network and work with major SCADA suppliers ABB and Serck on these upgrades is impressive, as reported by Thomas Fox. I will avoid going into details about security except to pass comment that Water Corp is a world leader and as a result was invited to represent Australia at the Idaho conference organised by the US Department of Homeland Security. The talk by Greg Belcher about Honeywell's integrated security and plant control systems offered quite a few insights into the complexity of the planning process and the richness of the integrated solution provided by vendors such as Honeywell.

The talk about OPC(*), was interesting insofar as a standard is emerging to replace the mutiplicity of FieldBus-type communications protocols that are prevalent in current plant deployment of DCS(*) and PLC(*) systems. There are several problems with OPC: 1) It is based on OLE(*), that is based on COM(*) and DCOM(*); 2) Complex set of open connectivity standards that are slowly emerging from the shadow of Microsoft; 3) uses many ports, like DCOM; 4) security issues; 5) performance issues; 6) not comprehensive; 7) not unified standard but it is getting there with OPC Unified Architecture. The networking talk and the evangelical presentation from Microsoft may have filled in a few gaps in knowledge for the less-IT aware members of the audience, primarily of control systems engineers and others involved in plant control.

Some of the most interesting discussion of the day centred around issues and breaking down barriers between plant control engineers and IT practitioners. While the high-level objectives of the organisation may be common to both groups their own distinct subgoals often seem to lead a lack of cohesion and alignment in achieving those shared objectives. The willingness of members of both groups to cooperate and to communicate efectively is sometimes uncertain however with management support the reality is that engineers can crossover from one discipline to the other. As with any change process it is possible to make progress but only if senior management buys in and is supportive; often plant control lacks a seat or even a voice at the executive table.

(*) Glossary of Terms:
COM = Common Object Model; Microsoft's component model based on DCS-RPC
DCOM = Distributed COM; Microsoft's distributed component model based on DCS-RPC
DCS = Distributed Control System; for networking PLCs
DCS-RPC = Distributed Computer Systems-Remote Procedure Call (not to be confused with control DCS)
DR = Disaster Recovery; practices for recovering from system failures
HMI = Human Machine Interface; the front end for SCADA and DCS.
OLE = Object Linking and Embedding; Microsoft's document embedding model
PID = Proportional-Integral-Differential loop controller
PLC = Programmable Logic Controller; often includes PID regulator
SCADA = Supervisory Control and Data Acquisition; step up in abstraction from DCS.