Phase request codes
The following table is a reference for programming requests from phases. Use these codes in programming the phase logic to send information to the operator, to other phases, to the batch journal, and so on.
The phase request codes are also used in the Phase Configuration dialog in Recipe Simulator to simulate the phase logic request programming and controller registers.
|
Purpose |
Request |
|
|---|---|---|
|
Download Parameters: |
Requests the DeltaV Batch Executive to download phase parameter values. |
|
|
All phase parameters |
1000 |
|
|
Range of parameters |
11nn |
nn = size of range, REQDATA1 = ID of 1st |
|
Range, indirect |
1100 |
REQDATA1 = ID of 1st, REQDATA2 = size of range |
|
Single parameter |
12xx |
xx = ID of parameter |
|
Single parameter, indirect |
1200 |
REQDATA1 = ID of parameter |
|
Upload Report Values: |
Requests the DeltaV Batch Executive to upload report values. |
|
|
All phase report values |
2000 |
|
|
Range of report values |
21nn |
nn = size of range, REQDATA1 = ID of 1st |
|
Range, indirect |
2100 |
REQDATA1 = ID of 1st, REQDATA2 = size of range |
|
Single report value |
22xx |
xx = ID of report value |
|
Single report value, indirect |
2200 |
REQDATA1 = ID of report value |
|
Send Message to the Operator: |
Requests controlling display of pre-configured phase messages at the phase summary view. |
|
|
Send message |
30nn |
nn = ID of message |
|
Send message, indirect |
3000 |
REQDATA1 = ID of message |
|
Clear message |
3100 |
REQDATA1 = ID of message |
|
Send Operator Prompt, Integer |
32nn |
nn = ID of message REQDATA1 = confirm enabled (0= False, 1= True)1 REQDATA2 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, Integer indirect |
3200 |
REQDATA1 = ID of message REQDATA2 = confirm enabled (0= False, 1= True)1 REQDATA3 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, Floating Point |
33nn |
nn = ID of message REQDATA1 = confirm enabled (0= False, 1= True)1 REQDATA2 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, Floating Point indirect |
3300 |
REQDATA1 = ID of message REQDATA2 = confirm enabled (0= False, 1= True)1 REQDATA3 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, Boolean |
34nn |
nn = ID of message REQDATA1 = confirm enabled (0= False, 1= True)1 REQDATA2 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, Boolean indirect |
3400 |
REQDATA1 = ID of message REQDATA2 = confirm enabled (0= False, 1= True)1 REQDATA3 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, String |
35nn |
nn = ID of message REQDATA1 = confirm enabled (0= False, 1= True)1 REQDATA2 = verify enabled (0= False, 1= True)1 |
|
Send Operator Prompt, String indirect |
3500 |
REQDATA1 = ID of message REQDATA2 = confirm enabled (0= False, 1= True)1 REQDATA3 = verify enabled (0= False, 1= True)1 |
|
Acquire Resources: |
Requests the DeltaV Batch Executive to allow the phase to acquire a resource. |
|
|
Single resource |
40xx |
xx = ID of resource |
|
Single, indirect |
4000 |
REQDATA1 = ID of resource |
|
Multiple resources |
41nn |
nn = number of resources, REQDATA1-argnn = ID of resources |
|
Release Resources: |
Requests the DeltaV Batch Executive to release a resource for a phase. |
|
|
Single resource |
42xx |
xx = ID of resource |
|
Single, indirect |
4200 |
REQDATA1 = ID of resource |
|
Multiple resources |
43nn |
nn = number of resources, REQDATA1-argnn = ID of resources |
|
All resources |
4400 |
|
|
Acquire and Hold Resources: |
Requests the DeltaV Batch Executive to allow the phase's batch to acquire and hold a resource. That is, the phase issues the command to acquire and hold the resource for the entire batch. The acquire and hold remains until the batch that now owns the resource completes or when a Release Held request is issued by a phase in that same batch. If the batch is stopped or aborted, the batch retains the resource until removed from the Batch List; the resource can be revoked with the batch has been stopped or aborted. |
|
|
Single resource |
45xx |
xx = ID of resource |
|
Single, indirect |
4500 |
REQDATA1 = ID of resource |
|
Release Held Resources: |
Requests the DeltaV Batch Executive to release a held resource for a batch. That is, the phase issues the command to release the resource that was held for the batch. |
|
|
Single resource |
46xx |
xx = ID of resource |
|
Single, indirect |
4600 |
REQDATA1 = ID of resource |
|
Messages to other phases: |
Requests the DeltaV Batch Executive to send a message ID and value(s) to linked phase(s). |
|
|
Send message |
50nn |
nn-ID of message, REQDATA1 = #of receivers, REQDATA2-argnn = message value |
|
Send message, indirect |
5000 |
REQDATA1 = message ID, REQDATA2 = #of receivers, REQDATA3 - argnn = message value |
|
Send & Wait |
51nn |
nn-ID of message, REQDATA1 = #of receivers, REQDATA2 - argnn = message value |
|
Send & Wait, indirect |
5100 |
REQDATA1 = message ID, REQDATA2 = #of receivers, REQDATA3 - argnn = message value |
|
Send & Wait for 1 receiver |
52nn |
nn = message ID, REQDATA1-argnn = message value |
|
Send & Wait for 1, indirect |
5200 |
REQDATA1 = message ID, REQDATA2-argnn = message value |
|
Cancel Message: |
Requests the DeltaV Batch Executive to cancel send of a message ID to linked phase(s). When canceling all messages, it cancels pending requests in the phase from where the requests originated. |
|
|
Cancel message |
53nn |
nn = ID of message |
|
Cancel, indirect |
5300 |
REQDATA1 = ID of message |
|
Cancel all messages |
5400 |
|
|
Waiting for a Message: |
Requests the DeltaV Batch Executive to wait for a message ID between linked phase(s). |
|
|
Wait for a message |
55nn |
nn = message ID, REQDATA1 - argnn = message value |
|
Wait, indirect |
5500 |
REQDATA1 = message ID, REQDATA2 - argnn = message value |
|
Abort Request: |
Requests abort of any outstanding phase request. |
|
|
Abort Request |
6000 |
|
|
Download DeltaV Parameters: |
||
|
Download Customer Batch ID |
71xx |
xx = ID of (string) parameter |
|
Download Unique Batch ID |
72xx |
xx = ID of (string) parameter |
|
Download Phase ID |
73xx |
xx = ID of (integer) parameter |
|
Download Formula Name |
74xx |
xx = ID of (string) parameter |
|
Abort Batch: |
Requests the Batch Executive to ABORT the batch that this phase is running in. Caution All other phases that are part of the same batch will also be aborted. |
|
|
Abort Batch |
8100 |
Note To cause an ABORT of a batch that is under External control, write to the XCOMMAND parameter from another module. |
|
Stop Batch: |
Requests the Batch Executive to STOP the batch that this phase is running in. Caution All other phases that are part of the same batch will also be stopped. |
|
|
Stop Batch |
8200 |
Note To cause a STOP of a batch that is under External control, write to the XCOMMAND parameter from another module. |
All phase requests will only work if the phase is running under the control of the Batch Executive. If the phase is running under External control, the phase request will be ignored and the phase logic will stop waiting for the REQUEST parameter to be set to zero (0), specifically because the REQUEST parameter will never be set when the phase is in External control.
Specific requests may require additional data such as parameters and arguments. Some examples of these data items are outlined below.
Direct vs. Indirect Requests
Direct requests embed the first request argument (number or ID), as the last two digits, together with the request call. Therefore, the number or ID cannot exceed 99. For example, REQUEST = 3001 is the request to send message ID 1 to the operator.
Indirect requests use an allocated location (REQDATA1...5) to contain the request argument (number or ID) so that the value's limit is not 99. You can manipulate this value by code that is separate from the communication code. For example, REQUEST = 3000 and REQDATA1 = 100 is sending message ID 100 to the operator.
Upload Report Values - Journal Entries
The report values combine other batch event information and then are written as journal entries in the batch journal.
Send Phase Messages to an Operator
An example of using phase requests is to create a message for the operator. This is done using the 3000 and 3100 series requests (refer to the Phase Request Codes table). These messages are also logged in the event journal.
Send Phase Messages to Other Phases
Phases that are members of a link group communicate with each other, defining the role of the link group. You can use this communication for the purposes listed in the following table.
|
Purpose |
Description |
|---|---|
|
Synchronization |
Performed to ensure that multiple phases are in exactly the proper state before they proceed. Since the phases can execute synchronization through this messaging function, there is no additional phase synchronization implementation in the phase, unit or Batch Executive. |
|
Permissive |
Performed to ensure that one phase of the link group has passed a certain point before other phases can proceed. |
|
Data Transfer |
Performed to move data from one phase to another. |