< PreviousField Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2 , Ed. 1.2.0, 27 Jun 2019 Page 139 of 145 FDI ServerFDI Client Update(ActionStateNodeId, XMLstring) Click OK Button Display Dialog with Message Text and OK buton <ActionRequest> <ActionState> WaitingForFeedback </ActionState> <AcknowledgementRequest> <Message> Please hit OK to acknowledge the start of this method </Message> </AcknowledgementRequest> </ActionRequest> CallResponse() Call(MyDevice.ActionSet.RespondAction, XMLString) <ActionResponse><AcknowledgementResponse /></ActionResponse> Figure B.3 – Action example (step 3) In the next step of the example the method has just executed the “ACKNOWLEDGE” statement and is about to execute the two “PUT_MESSAGE” statements and the “DELAY” statement. The FDI Server processes these statements by setting the ActionNodeID value to indicate the notifications. Each statement will generate a value change and be delivered to the FDI Client. The FDI Client reacts by showing the message text in an appropriate user interface component. The sequence of this step is illustrated in Figure B.4. Field Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2, Ed. 1.2.0, 27 Jun 2019 Page 140 of 145 FDI ServerFDI Client Update(ActionStateNodeId, XMLstring) Display Message Text <ActionRequest> <ActionState>Running</ActionState> <InfoRequest> <Message>i = 5</Message> </InfoRequest> </ActionRequest> Update(ActionStateNodeId, XMLstring) Display Delay Message Text Update(ActionStateNodeId, XMLstring) Display Message Text <ActionRequest> <ActionState>Running</ActionState> <InfoRequest> <Message>j = 10</Message> </InfoRequest> </ActionRequest> <ActionRequest> <ActionState>Running</ActionState> <DelayMessageRequest> <Message>k = 15</Message> <SecondsToWait>5</SecondsToWait> </DelayMessageRequest> </ActionRequest> Figure B.4 – Action example (step 4) In the next step of the example the method requests the user to input a value for the (device_var1) variable. The FDI Server processes this statement by setting the ActionNodeID value to indicate the data input request. The FDI Client reacts to the value update by opening a dialog, showing the message text and preparing to accept user input. The sequence of this step is illustrated in Figure B.5. Field Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2 , Ed. 1.2.0, 27 Jun 2019 Page 141 of 145 FDI ServerFDI Client Update(ActionStateNodeId, XMLstring) <ActionRequest> <ActionState>WaitingForFeedback</ActionState> <InputRequest> <Prompt>Enter new value for the device var1 constUnit</Prompt> <InputValue> <Label>device var1</Label> <InitialValue><Integer>123</Integer></InitialValue> <Type> <NumericType> <DataType>SignedInteger</DataType> <Units>constUnit</Units> <ListOfRanges> <Range> <MinimumValue> <Integer>-127</Integer> </MinimumValue> <MaximumValue> <Integer>127</Integer> </MaximumValue> </Range> </ListOfRanges> <ListOfPresetValues> <PresetValue> <Value> <Integer>123</Integer> </Value> <Label>label</Label> </PresetValue> </ListOfPresetValues> </NumericType> </Type> </InputValue> </InputRequest> </ActionRequest> Display Input Dialog <ActionResponse> <InputResponse> <InputValue> <Integer>42</Integer> </InputValue> </InputResponse> </ActionResponse> Enter Data and Click OK Button CallResponse() Call(MyDevice.ActionSet.RespondAction, XMLString) Figure B.5 – Action example (step 5) Field Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2, Ed. 1.2.0, 27 Jun 2019 Page 142 of 145 In the next step of the example the method requests the user to verify the value that was inputted for the (device_var1) variable. The FDI Server processes this statement by setting the ActionNodeID value to indicate a response is needed. The FDI Client reacts to the value update by opening a dialog, showing the message text and preparing to accept a response from the user. The sequence of this step is illustrated in Figure B.6. FDI ServerFDI Client Update(ActionStateNodeId, XMLstring) <ActionRequest> <ActionState>WaitingForFeedback</ActionState> <SelectionRequest> <Prompt>Is the value entered, correct? </Prompt> <ListOfOptions> <Option> <Identifier>0</Identifier> <Label>Yes</Label> </Option> <Option> <Identifier>1</Identifier> <Label>No</Label> </Option> </ListOfOptions> </SelectionRequest> </ActionRequest> Display Input Dialog <ActionResponse> <SelectionResponse> <Identifier>1</Identifier> </SelectionResponse> </ActionResponse> Click Yes Button CallResponse() Call(MyDevice.ActionSet.RespondAction, XMLString) Figure B.6 – Action example (step 6) Field Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2 , Ed. 1.2.0, 27 Jun 2019 Page 143 of 145 Annex C (informative) Typical FDI Client use cases C.1 General Annex C describes how typical FDI Client use cases could be implemented. C.2 Bulk operations In Clause C.2 the term bulk operation is understood as applying the same operation iteratively to a group of Devices. If the group of Devices consists of Devices of different Device Types, a precondition is the clarification of what the “same” operations are with respect to the different Device Types. Bulk operations can be performed by an FDI Client or by a UIP. In case of a UIP the group of devices shall be a subset of the Device and its sub-devices because a UIP has only access to these. NOTE The following description only refers to an FDI Client. The algorithm is the same for a UIP besides the above mentioned restriction. First of all an FDI Client has to give the user the ability to define a group of Devices. This is implementation specific and outside the scope of this document. The FDI Client can then use the OPC UA services to apply the same operation to these Devices. For that, OPC UA supports reading and writing of multiple parameters in one service call as well as invoking several methods in one service call. See IEC 62541-4 for details. C.3 Progress bar support The following is an example of a UIP using the Progress Bar functionality provided by the FDI Client (see Figure C.1). In this example the user initiates some operations by interacting with the UIP’s user interface. The UIP initiates the operation and uses the progress bar functionality to keep the user informed of the progress (see 5.2.2.10 and 5.2.2.11). In this example the FDI Client opens a small dialog window to present the progress information to the user. Once the UIP informs the FDI Client that the operation is complete, via the EndShowProgressBar service (see 5.2.2.12), the FDI Client prompts the user before closing the dialog to ensure the user has seen the 100 % completion of the operations. Field Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2, Ed. 1.2.0, 27 Jun 2019 Page 144 of 145 Display Progress Bar ShowProgressBar(“Starting”) UIP FDI Client Initiate some operation via interaction with UIP’s user interface UpdateShowProgressBar(“Running”, 5%)Update Progress Bar UpdateShowProgressBar(“Finishing”, 95%) UpdateShowProgressBar(“Running”, 10%) ... Update Progress Bar EndShowProgressBar(“Complete”, 100%) Update Progress Bar Prompt User Close Prompt Close Progress Bar Display Figure C.1 – Progress bar support Field Device Integration (FDI) – Part 2: Client RELEASED FCG TS62769-2 , Ed. 1.2.0, 27 Jun 2019 Page 145 of 145 Bibliography ISO/IEC 10646-1, Information technology – Universal Multiple-Octet Coded Character Set (UCS) – Part 1: Architecture and Basic Multilingual Plane ISO/IEC 2375, Information technology – Procedure for registration of escape sequences and coded character sets _____________ Next >