Thursday, 12 November 2009
Equipment Modules in Equipment Modules
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.
Thursday, 11 June 2009
AutomationML and ISA88 Part 5
Monday, 25 May 2009
DCS or PLC and Systems Integrators
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.
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
Tuesday, 24 March 2009
State Based Control
Monday, 2 March 2009
Who needs the Transient Procedural States
I always work on the principle that the recipe controller (that handles the control recipe) is a transaction based sequencing and data handling system. It can tolerate short delays. It is in effect the process operator; it cares little about the equipment provided it can do what the recipe asks of it. It can request the equipment to do some process action, then wait until it has.
The original Part 1 provides a lot of suggestions and some basic models that help to specify both the recipe and the basic control. And it shows how they can meet, via Procedural Entities.
If something happens that requires a quick response then it should not have to require data to propagate up and down the procedural levels of the Control Recipe, that will be slow (and I have seen this cause problems,) and anyway it complicates the recipe procedure.
Yes the Control Recipe may need to know whether an Equipment phase is running or complete but why does it need to know about Pausing, Starting etc?
Why do these transient states need to be exposed to the recipe?
Wednesday, 25 February 2009
There are Simultaneous Equipment and Recipe procedural elements
"In some cases it may be sufficient to allow the recipe phase to directly control the equipment modules. In other systems where complex equipment modules exist, it may be necessary to implement some level of state model based procedural control in the equipment between the recipe phase and equipment modules in order to better deal with the underlying equipment complexity. Again, it’s an implementation decision left to the developer and thus does not restrict creative efforts."
I don't agree. The Equipment Phase must exist 'in' the equipment. Allowing "the recipe phase to directly control the equipment modules" is not a concept I can subscribe to.
I am assuming in the following a phase level interface for simplicity, but it could be Operations or higher.
The Recipe Phase is that procedural control that speaks to the Equipment Phase, it may just be one step in an operation, which interfaces with the Equipment Phase but does not actually control the equipment module (or Unit) - that is the job of the Equipment Phase. But in my view (and others) both the recipe phase and it's corresponding Equipment phase exist
To further illustrate, suppose we have a PC based batch manager executing the Recipe Procedure (so the PC is the recipe controller) and it speaks to the equipment controller (eg PLC or DCS controller) then the Operation and its steps and Transitions are coded PC, whilst the steps and transitions in the Equipment Phase are coded in the Controller.
These corresponding phases speak to each other via a Phase Logic interface and some data transfer such as recipe parameters
Now, it may be that there are applications of PC Batch managers where some of the equipment control steps and transitions are coded in the PC. That just means that the recipe and equipment control are not nicely separated in the implementation, but they still both exist.
And the S88 standards are not supposed to be about actual implementations, just the concepts and models.
Wednesday, 4 February 2009
S88 Working Draft 5 Version 4
Why do Automation objects need to contain Functional Manager or a Resource Manager?
A PID controller (a good example of an automation object) is something that has been in existence for around about a century, and it never needed such things, what is the reasoning behind making it so complicated?
Tuesday, 2 September 2008
Will S88 improve - or should it?
I am far from sure, in fact I think they will not.
I think it is arguable that even the original Part 1, for all the applause it has received, has actually had the effect of damaging the development of innovative automation products.
Why do I say that?
For a start, the ‘Procedural State Transition’ model given in the original Part 1 (which does not need updating imho) as an example is but one of many possible alternatives, and certainly not the ‘best’. And it may well have constrained product evolution. There are plenty of other similar issues, not least the handling of common resources that the same could apply to.
And now, in the Part 1 update and Part 5 the standards committee is further limiting opportunities for designers to come up with something much better, by refining that which did not need refining.
Standards have their place, we would hardly be able to function without standards such as the metric one for measuring, but S88 is not in that domain at all, there is no science behind it yet, and no sign of one emerging.
Monday, 28 July 2008
Common Resources
If more than one unit can acquire or request the services of a single resource, the resource is
designated as a common resource. Common resources are often present with complex batch
processes. Common resources are often implemented as either equipment modules or control
modules. A common resource may be either exclusive-use or shared-use.
That definition is pretty good for me, but there is still disagreement, and to a degree I think that they are the bits where the original S88 parties could not agree. For example, some give the example of Storage Tanks, but in an alternative perspective (not just mine) Storage Tanks are Units.
Another good example is transfer systems. Surely these are common resources?
Actually some of the best batch implementations I have seen treat them as units. They call them X units, but as far as controlling them they are exactly the same as 'normal' Units, including having Equipment Procedural Elements.
The viewpoint once described to me was that if contains even part of the batch it then it is a unit.
Something like steam supply or other utilities are for sure common resources aren't they?
Can a resource be a Unit and a Common Resource?
So, is there any prospect of the revised part 1 coming up with an improved wording that will stop the divergent interpretations, of things like storage tanks, transfer systems?
Of course, the definition that CR's may be made as equipment modules implies that they can have EPE's, and take part in recipes.
To be continued
Wednesday, 18 June 2008
S88 Control System Designs
That does not mean that S88.01 is a design for a control system. And that is clearly stated in the original standard.
Part 5 as it stands appears to be attempting to go into areas (such as a generic model for equipment and control modules) that are explicitly excluded in the introduction to Part 1.
Most worryingly the Part 5 fans are now trying to change Part 1 by introducing their models into Part 1. It is bad idea that would undermine the beauty of Part 1.
Now, Part 5 fans, please understand that I do realise that you may have some very good Control System designs (tho mine may be better) but that is not the point, Part 1 is not at all about designs for Control Systems.
If the objective is have a standard design for re-usable Control System Objects, then it should have a major input from the suppliers just as the development of FieldBus and the like has had.
They are notable by their absense from the Part 5 - where are ABB, Emerson, Yokagawa, Siemens etc. Mostly they are lurking - they are on the mailing lists but rarely take part.
Wednesday, 11 June 2008
Sequences are not Recipes
I completely disagree with a heck of a lot of what you say part 5 blog.
The latest is
Is that a Sequence or is that a Recipe? The answer is - You say Yes
I say no, in fact I say do not even compare them. To do so undermines the great concept that S88 provides, - separation of Recipes and Equipment.
S88. 01 is not actually about Control, it is about how to describe recipes and the physical equipment they have to run with. The cookbook and the kitchen.
Chop with knife number 42, turn on the power for the cooker, rotate knob 3 to set the temperature on the oven, etc is in the equipment sequence.
Chop the carrots, put in preheated oven is in the recipe.
These are not the same, they interface but are not equivalent.
The formula in a packing machine, just like the temperature of the oven in the recipe and the set point for the mixing tank are local copies of the recipe formula - part of the control recipe and derived from the master recipe.
Your statements on this blog are potentially damaging to the value of S88 Part 1.
Part 1 by the way should be left unchanged, if I had a vote I would vote against the update and for the original.
Saturday, 1 March 2008
S88 Part 5 - Standard Profits - ?
The part 5 ‘blog’ has a couple of new entries , will they help?
A Device is a Device is a Device; But what if it is not? Now, I was at an early S88 meeting where device were seriously being considered for inclusion as standard terms. There was much discussion and it was agreed that the more generic term Control Module handles them perfectly within the Batch domain of the standard.
Now can anyone explain this statement?
“In many other implementations outside of where the ISA88 standard is applied the term Device is used such that the Device also contains the control that in the ISA88 the Control Module contains.”
OK, a few typo’s maybe, but the rest of the post make little more sense, and then goes on to refer to the MaketoPack report, which in no way helps to define devices.
Then we have
Replace babble of Control Components with understandable language, OPC help Dave believes “that the babble of internal proprietary communications between control components will be replaced by a universal method of communication”. And I hope one day that telepathy will be the normal means of communication, not least because my ears are failing. (No, it was not the Rock concerts, see cookie bite!)
Do we really need this - us the control system designers, plc programmers, systems integrators, and even the automation project managers?
Dave also says
“Until then a way to translate to the world outside the language of the proprietary environment is necessary . ”
Hey Dave, we have had those since the first pneumatic controls 60 or so years ago, not so much the pneumatics as the diagrams. And those diagrams have succeeded representing control for example loops (pneumatic then electonic then DCS) , relay logic, sequences etc
The diagrams have developed and improved over the decades. But I have a dread that someone in Part 5 is driving the standard towards using Ugly, Mangled Logic, or UML as it is known here.
Saturday, 16 February 2008
Control modules
Control modules know nothing about the stuff you are making. They do not even know how stuff might be made. Part 1 is clear about that, as the recipe has no interface with control modules.
That does not mean that they cannot do a lot, in fact they are the bedrock of any application. The better they are, the easier the rest is.
'Primitive' Control Modules handle the Inputs and Outputs, from the plant and the operator and from higher levels in the system. They then make sense of it, setting and monitoring the state of the physical equipment that is connected the to IO and driving things like Faceplates.
Primitive Control Modules can be quite intricate, and supposedly simple things like motors can have a surprising number of states and parameters. They are little models in theselves.
Higher level Control Modules such as a PID loop or a one that handles a valve cluster also have states and parameters etc. They may even have sequences to move from one state to another or to perform a cyclic function. Some S88 practitioners choose to all these sequences 'Phases'.
I don't like to, but that is another story that I will return to.
I also use Control Modules for things like resource management - take a look at this Cyclic Request Handler . This is a small simple module to share a common resource among a number of users. These request the resource via a boolean flag, like holding your hand up in class.
They remove that flag when their demand no longer exists. The Module just looks at each in turn, and supplies if the 'hand is up'
The method guarantees First come at most Nth Served where N is the number of users. It is easy state control and avoids needing any form of queue and could easily be implemented in a PLC. Is it a Control Module? If not what is it? I hope Part 5 will find a space for it, and not a procedural one, as it does not need to know anything about making stuff!