Thursday, 14 February 2013
Loop and Logic Diagrams and P&ID’s
Among the comments are
....Adding logic functions to a P&ID clutters it, is prone to add further unnecessary revisions to the P&ID every time a logic is changed ...
...agree that the complexity that we can configure into the DCS, PLc, and SIS cannot be represented adequately on the P&IDs...
...No, detail logic does not belong to PIDs. A PID is a construction document, as such it must show:
1-Hardwired input to logic interlock, complex loop or DCS/SIS
2-Hardwired output from logic interlock, complex loop or DCS/SIS to Final Control Element FCE
3-Identification of logic interlock, complex loop or DCS/SIS. Separate documents are generated for interlocks and complex loops...
So, how much can reasonably be shown on the P&ID depends on the type of process and previous practise but at the end of the day there are nearly always extra diagrams, typically with a cross reference on the P&ID. This blog post provides an explanation of how you can use ControlDraw to draw all those extra diagrams and relate them to the P&ID's
Top level diagram contains an object for each P&ID and child pages then provide a graphical list of the relevant loop and logic diagrams which are then diagrams under each object.
Here is a diagram that explains this (click to see full size)
This can even be extended to cover such things as State based control Matrices and Cause and Effect Matrices
Note - if you have a list of the P&ID's (which is normal) you can copy the list to create the P&ID Overview diagrams using Paste Special as Rows. And you can create all the P&ID Overview diagrams with a couple of clicks from the Group Menu >Create/Link Child diagrams.
Monday, 18 May 2009
Programming Equipment States Efficiently
When it comes to programming this in a Process Control System it is possible to make highly efficient and fast code by deploying the State Matrix as a data table, with the phase steps simply setting a index into the matrix. This really is far more efficient than having each step in a sequence contain all the required device settings and it becomes more efficient the more states and steps there are. The software diagram below shows how this might be done.
So, to help PLC/DCS programmers with this, the latest version of ControlDraw has added a function to generate the data table in a form that is compact and can be easily entered into a PLC or similar. It compacts all the values in the rows into as small a memory block as possible.
(Note - if PCS's had a language that supported such multi-dimensional arrays this would not be needed, however that is not something that I have in practise seen.)
View > Matrix Data Table >Matrix as Boolean for example generates the following text that you can copy to the clipboard:
Row Bool Name
0 00100 'Shutdown
1 00001 'Ready
2 01100 'Fast Fill
3 10100 'Slow Fill
4 00000 'Mix
5 00110 'Transfer
---- Mapping:
Bits required = 5
Bits 0 to 1 set EM02
Bit 2 sets em Fixed Speed Agitator
Bits 3 to 4 set em Feed
You can also generate the table as integers, hex or octal
Note - this is now part of the standard S88 Reference model library that comes with ControlDraw
