Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Commissioning dialogues are used to commission and decommission Control Loop Type definitions and to set the values of Common Parameters.

Commissioning a Control Loop Type is a three-step process

  1. The Control Loop Type must be created, that is the Control Loop Type definition must be loaded and stored in the database. This step may be carried out over the REST interface or using SDC distribution.
  2. The Common Properties of the Control Loop type must be assigned values and those values must be stored in the database. This step is optional only if all mandatory common properties have default values. The Common Property values may be set and amended over and over again in multiple sessions until the Control Loop Type is primed.
  3. The Control Loop Type Definition and the Common Property values must be primed, that is sent to the concerned participants. Once a Control Loop Type is primed, its Common Property values can no longer be changed. To change Common Properties on a primed Control Loop Type, all instances of the Control Loop Type must be removed and the Control Loop Type must be de-primed.

1.1 Commissioning a Control Loop Type Definition using the CLAMP GUI

...

1.4 Priming a Control Loop Type Definition on Participants

The Priming operation sends Control Loop Type definitions and common property values to participants. Once a Control Loop Type definition is primed, its property values can on longer be changed until it is de-primed.

PlantUML Macro
@startuml
participant CLAMP_GUI
participant CLAMP_Runtime
participant Participant
database Commissioned_CL_Inventory

CLAMP_GUI -> CLAMP_Runtime: [REST] Read Control Loop Type Definitions
CLAMP_Runtime -> Commissioned_CL_Inventory: Read Control Loop Type Definitions
CLAMP_Runtime -> CLAMP_GUI: [REST] Type Definitions returned
CLAMP_GUI -> CLAMP_GUI: Select Control Loop Type Definition for Priming on Participants
CLAMP_GUI -> CLAMP_Runtime: [REST] Prime Control Loop Type Definition on Participants

alt Control Loop Type Definition not Primed on Participants
  CLAMP_Runtime -> Commissioned_CL_Inventory: Read Control Loop Type Definition
  CLAMP_Runtime -> Commissioned_CL_Inventory: Read Common Parameter Values for Control Loop Type Definition
  alt Common Parameter values set for Control Loop Type Definition
    CLAMP_Runtime -> Participants: [DMaaP] Update Participants with Control Loop Type Definition and values for Common Parameters
    CLAMP_Runtime -> CLAMP_GUI: [REST] Control Loop Type Definition priming ordered on participants
  else Control Loop Type Definition already primed on Participants
    CLAMP_Runtime -> CLAMP_GUI: [REST] Common Parameters not set\non Control Loop Type Definition
  end
else Control Loop Type Definition already primed on Participants
  CLAMP_Runtime -> CLAMP_GUI: [REST] Cannot set Common Parameters on\nControl Loop Type Definition that has\nbeen primed on participants
end

== Participant Responses ==
Participants -> CLAMP_Runtime: [DMaaP] Result of Update with Control Loop Type Definition and values for Common Parameters
CLAMP_Runtime -> Commissioned_CL_Inventory: Store result of Control Loop Type Definition Update on Participant

== Supervision ==
loop forever
  CLAMP_Runtime -> Commissioned_CL_Inventory: Read Control Loop Type Definitions
  loop over each Control Loop Type Definition
    alt Control Loop Type Definition Participant priming underway
	  CLAMP_Runtime -> Commissioned_CL_Inventory: read result of Control Loop Type Definition Updates from participants
      alt Updates completed on all participants
	    CLAMP_Runtime -> Commissioned_CL_Inventory: set Control Loop Type Definition as primed on Participants
      else Updates not completed
        alt Priming of Control Loop Type Definition on participants timed out
	      CLAMP_Runtime -> Commissioned_CL_Inventory: set Control Loop Type Definition priming as timed out on Participants
	      CLAMP_Runtime -> CLAMP_Runtime: Log error
        else Wait for updates to complete
        end
      end 
    else Control Loop Type Definition Participant priming not underway
    end
  end
end
@enduml

...