Sunday, 5 June 2011
Where should the boundary be between Procedural Control and Basic Control?
A current question is "Where should the boundary be between Procedural Control and Basic Control?"
I think we should start from an operational viewpoint and consider where the Operator interacts with Procedures.
Clearly, when a procedure is being run by an operator it would be unfriendly to say the least if the system had no tolerance of delays in the operators response
Now, that to me implies that the Process should be in a stable state whenever an operator input is requested.
And I think it should apply even if the Procedure is running automatically, in effect replacing the operator.
So I propose that the following apply
Procedures steps that interface with Equipment should do so by via Persistent Process States - Where a Persistent Process State:
Is a State that is set entirely by Basic Control and that can be maintained without operator intervention
Can persist for a time, for example longer than the slowest operator response or until some resource runs out
When procedure steps request equipment to do something they can do so by sending a State Request
A State Request is much like a control loop's Set Point. The PID controller (a type of Basic Control) then adjusts control valves etc to keep a Measurement at the Set Point, or within some limits.
With higher levels such as Equipment Modules or Units, Basic Control Loops and Logic can run to move the process in the desired state and then keep it there, indicating so via an interface back to the procedure.
Procedures could set State Request in peer or lower level physical model entities
So, a Unit level Procedure may set the state of the Unit
Or it may set the state of Equipment in the Unit or of Control Modules in the Unit
They should never set the state of higher level entities
So a Unit level procedure should never set a Plant Area State or set the State of another Unit or an EM or CM that is outside the unit.
And for designing the Procedures it would provide a simple view without the complexity of showing the Module Logic
This shows how a procedure might look as a PFC
Friday, 3 June 2011
ISA106 procedures
Let’s look at the second, asking equipment do something and setting equipment states.
Saturday, 10 July 2010
Suggestion for ISA 106 - The Production Run
A Production Run is a suggested new Term that covers the operation of a Unit or Process Cell from shutdown through Starting, Producing to Stopping and back to ShutdownThe Production Run
Click the diagram to see it full size
Wednesday, 5 May 2010
ISA106: Procedural Automation for Continuous Process Operations
The WBF website provides a description of the forthcoming effort.
In the very early days of S88 Part 1, in October 1995 I presented a paper at the EBF in Dublin titled “Extending SP88 into continuous and semi-continuous processes.”
One point I made was that the Recipe operations for a continuous process are distributed in Space rather than time. So the sequence of process operations to make stuff happens continuously in a stream of equipment.
The essence of this is exactly the same as defined in part 1 for batch, so a continuous operation still carries out a process operation - A major processing activity that usually results in a chemical or physical change in the material being processed .
And in a continuous plant the ‘sequence’ is achieved continuously as the material passes through the equipment, whereas a batch plant carries out the sequence of actions batch by batch and may carry out many of the sequence of operations in the same equipment.
Since then I have further developed my understanding this to encompass how to make continuous processes (or discrete ones) exactly the same as batch..
The essence here is that the procedures needed to make a quantity of stuff or things as from the operation viewpoint can be identical for both batch and continuous.
This is predicated on the idea that the procedural operation of plants, whether batch, continuous or discrete can be the same. And that these procedures do not need to work real time – or at least in the time domain needed to control equipment.
Unfortunately (from an s88 purist’s point of view like mine) the procedural aspects of part 1 have been taken by many to prescribe a means of controlling equipment.
Now the concept of combining sequential control with state orientated control is a very powerful one, capable of controlling highly complex processes. But in my view these equipment sequences are not the same as the procedural level that puts together product independent equipment control to make stuff.
And I have never agreed that the procedural level as described in the original Part 1 was intended for equipment control. It was intended to provide the means to map equipment control to the operational procedures needed to make stuff. And no more.
But practise has not been that, and what we now have is a lot of systems which use recipe managers to perform equipment control - and I am convinced that this has been detrimental to many projects.
Now, referring to the Dow/ABB State based Control architecture I know it very well and I have in fact worked with Dow and Yahya to develop ControlDraw to support it even better than it used to.
But I do not believe that it is really S88 based, apart from the division of units into equipment modules (which by the way are not recipe aware) and control modules. The entire procedural level in the examples of this approach is missing, yes there are sequences to start up and shut down the equipment, but they are not in my opinion even phases as they do not perform process actions. For example, a sequence to start a distillation column is not a phase because it does not perform a process action, it just sets the column into the state where it can perform the distil process.
There is much more to say, for example about equipment requirements and routing etc. But I do ask that the ISA106 group consider what I am saying about the procedural level being an operational level rather than a control level.
Wednesday, 30 September 2009
S88 and Continuous plants
S88 Batch procedures carry out an ordered set of process operations on a finite quantity of stuff, batch by batch.
This ordered set is called by Part 1 a Recipe Procedure. It can be represented as a sequence of operations in time, typically by PFC/SFC logic .
A sequence of operations may take place in one place (or Unit) or different stages may take place in different units.
Note – this implies transfers, which S88 carefully does not attempt to explain.
Thus, the recipe procedure for a continuous process may well be represented as a process flow sheet - without the need for a PFC. And, actually the transfers are then implicitly described.
By the way, yes, PFC’s or SFC’s may be a good way to describe startup and shutdown and grade changes, that does not mean they are Recipe Procedures!
I also suggest that the recipe equipment requirements are best described by a process flow sheet. This works with both batch and continuous.
The recipe view of the equipment should be generic, in terms of types of equipment, whereas the physical model must contain one or more of each of the types required by the recipe.
Where I seem to disagree with the work being done to “improve” Part 1 though (and this is compounded by the emerging Part 5) is that the procedural model is not a good model for actually controlling equipment. I think that State Based Control (check the tags on this blog) is a good example, it simply does not fit conventional S88.
In fact it is quite easy.
Tuesday, 19 May 2009
Automation objects and State Based Control
It is an excellent way of describing the required behaviour of an Automation Object, or at least what I think of as an automation object. But I cannot relate it to Part 5 as it stands.
In essence designing a state controlled automation object involves in a large part determining all the required states that you need to set that object to. Please note that these States are not comparable to the Part 1 or 5 'Procedural States', they are things like Open, Closed, Ready to Fill, Filling, Reacting etc.
ControlDraw has long supported this method because it provides a very efficient method of representing functional requirements. And consequently over the 10+ years of designing systems with ControlDraw I now have designs for hundreds of these. You can read more here and here.
They range from basic control modules like motors and valves to highly intricate units, such as BioReactors, semi continuous sterilizers etc.
And looking at these, they have never needed to contain Resource Management. Yes they may have properties that relate to Resource Management, but always the actual Resource Manager is outside them. The lower level ones such as PID Controllers, are contained in Equipment Modules or Units, and the Resource Manager does not look at them, it only deals with the higher levels.
This is one reason for my objections to Part 5 as it stands. But please understand that I don't want to spend my time complaining about Part 5, I want to contribute positively.
Wednesday, 1 April 2009
Equipment Modules or Control Modules, which are cheaper?
But another aspect was that they get charged more for more equipment modules.
Now, I have been looking into the complexity of systems, and hence the time it should take to program them. And part of the point of using Em's is to reduce complexity.
So I suggested that as they do not have to run phases ( just like those in the SBC paper) call them Control Modules!
Monday, 30 March 2009
More on State Based Control
- Complex formatting, which while it may make table look pretty actually makes it very difficult to extract the data, for example to help with generating the application.
- Multiple lines in the same cell are often a problem
- If a tagname changes then there is a lot of work to correct the spreadsheet
- You need a spreadsheet for each Unit, and there is nothing to handle higher levels like process cells