Data Flow Predefined Stages

Top  Previous  Next

PMDOData flow between the instrument and the system proceeds according to the stages defined in the connection's physical layer. Stages are depicted as circles in the Protocol Designer - Physical Layer window's working pane. The read-only predefined elements (either stages or actions) can be distinguished by the absence of a red "X" button near them. You can add necessary states to your connection diagram by yourself and define the stages properties, as depicted in sub-section Building the Physical Layer's connection diagram below. However, the following stages are predefined and cannot be altered by the user:

 

INITIALIZER - This stage, in itself, does not do any active action, but only represents the beginning of the data flow sequence. After its associated Initialize action is being executed, it progresses the execution flow to the READY stage.

 

clip0003NOTE Clicking on this stage or its associated action will display the State Configuration tab, which contains the stage and the action settings unique to each stage/action. Most of these settings can be modified as necessary.

 

READY -- When this stage is reached, it initiates a connection sequence, consistent with the user defined settings defined for that stage. These settings are exclusive to the READY stage and cannot be applied (or added) to other stages. The READY stage settings contain connectors defined for communication between the instrument and the system: one predefined connector -- STARLIMS, and some other connectors that can be changed/added by the user. The visible parameters of each connector can be changed by the user, and are directly related to the connection type being specified (hence, different connection types have different parameters attached to them; however, some might be common).
 
Each user added connector contains a name parameter, which can be modified by the user, as long as it adheres to the following constraints: connector names must be unique, and a connector name cannot be empty.

 

clip0003NOTE You can add connectors to the READY stage by clicking the Add Connection link on the stage's properties pane, and selecting the relevant connection type from the Connection type drop-down list. The connection types are predefined by the system configuration. After you add the connector, specify its properties as necessary. Each connector's properties are unique to that connector only and therefore differ from each other. The default value which is assigned to a connector name is internally managed by the system in a manner which will prevent name  repetition (for example, if a connector with the name of RS-232 exists, and user creates a connector of the same type, its default name will be RS-232[2]).

 

The READY stage has two actions attached to it that are predefined and cannot be modified by the user:

 

oError - In cases when a connection cannot be successfully established, the flow will be promptly redirected to the INIT ERROR stage, the settings of which will determine the appropriate course of action to be taken.
oProceed - This action will be executed in cases where all the defined connectors were successfully executed (in other words, all connections have been successfully established). The flow will then commence from the IDLE stage.

 

INIT ERROR - This stage is activated when there is a connection error between the system and one of the several connectors defined for the READY stage. It contains two properties:

 

oRetry Count - specifies the number of times a connection reattempt is to be initiated (redirecting the flow back to the READY stage).
oRetry Interval - specifies the amount of time (in seconds), after which a connection retry will be initiated. This pause is required so that the attached devices have sufficient time to be brought to a functional state (in the case of errors).

 

The INIT ERROR stage has two actions attached to it that are pre-defined and are not user-modifiable:

 

oRetry - When a connection reattempt is required, the attached Retry action is executed.
oTerminate - When the threshold of retries is reached, the Terminate action is executed, thereby terminating the protocol (by redirecting the execution to the SHUTDOWN stage).

 

DISCONNECTION - This stage will be activated, should any disconnection occur during operation. That disconnection must be initiated by the remote party for this state to be activated. The user is to create an action which will be executed upon the activation of this state, thereby selecting the appropriate action to be taken under these circumstances (for example, Revert to Idle, Shutdown and so on).

 

COMM ERROR - This stage will be activated, should a communication error or an out-of-order disconnection occur during operation. Normal remote-party disconnection requests will not trigger an activation of this stage. The user is to create an action which will be executed upon the activation of this state, thereby selecting the appropriate action to be taken under these circumstances (for example, Revert to Idle, Shutdown, and so on).

 

FALLBACK - This stage can specify multiple data receive commands, which will be activated when the format of the received data cannot be handled by either of the commands specified by the currently activated state. Yet, the FALLBACK state specifies commands which do handle them. The FALLBACK state will return to the previously activated state upon completion; however, the user may override this behavior by explicitly specifying an action which is to be executed after the fallback operation has taken place.

 

SHUTDOWN - This stage is self-explanatory. Usually, one of the default actions that lead to that stage is Timeout. The Timeout action is an action which is executed by default after a predefined period of time.