This System Configuration implements the layered Model+View testing architecture for the Drilling example.
The MODEL
Device
encapsulates the functionality of both the Model and View
layers. Its INPUT_VIEW
and OUTPUT_VIEW
Resources are configured identically to the INPUT
and OUTPUT
Devices, respectively, of the VIEW
Resource in the DRILL_VIEWL
System configuration.
Each of the major sections of the View (SUPPLY, etc.)
is assigned its own Model Resource (SUPPLY_MDL,
etc. - instances of EMB_RES
).
These Resources contain the appropriate Model elements
(instances of the XBAR_MDLL
,
SOL_MDLL
, and XSLIDE_MDLL
types) and the
logic for their interactions. Each of these elements communicates
its state to the corresponding View element via the same local multicast
channels as were used by the HMI in the DRILL_VIEWL
configuration.
Each of the modeling Resources ( SUPPLY_MDL
, etc.) in
the MODEL
Device is
assigned its own pair of Resources ( SUPPLY_SENSORS,
SUPPLY_ACTUATORS
, etc.) in the HMI
Device for the input of actuator values to and display of sensor
values from the corresponding Model element. The same local multicast
channels as are used for communication between the HMI
elements and their corresponding Model elements in this
configuration will be used for communication of sensor and actuator
values between Model and Controller elements in the next step of the methodology.
This System Configuration uses the Local Multicast design pattern for the communication of data and events among Resources. The FBDK uses the Tagged Data design pattern to ensure consistency of the communicated events and data, as shown in the table below.
- Each tag name has a navigation link to a Resource configuration that makes use of the associated Local Multicast channel.
-
There are other Local Multicast channels in this System
configuration that do not appear in this table. These channels are
created by component function blocks within Model and View
function blocks. For instance, rendering data is carried from the
MODEL.DRILL_MDL.DRILL
FB to theMODEL.INPUT_VIEW.DRILL
FB by a channel namedDRILL_REND
.
Tag Name | Type(s) | Description |
---|---|---|
DRILL_ACT
|
BOOL,BOOL,BOOL
|
FWD, REV, SPINDLE_MOTOR
|
DRILL_SENSE
|
BOOL,BOOL,BOOL
|
HOME, END, SPINDLE_ON
|
LOAD_SOL_ACT
|
BOOL
|
LOAD
|
LOAD_SOL_SENSE
|
BOOL,BOOL
|
LOADER_HOME, LOADER_AT_END
|
SIM_CLK
|
|
Simulation Clock
|
SLIDE_ACT
|
BOOL,BOOL,BOOL
|
FWD, REV, CLAMP
|
SLIDE_SENSE
|
BOOL,BOOL,BOOL,BOOL,BOOL
|
HOME, END, LOADED, FREE, CLAMPED
|
SUPPLY_ACT
|
BOOL,BOOL
|
FWD, REV
|
SUPPLY_SENSE
|
BOOL,BOOL,BOOL
|
HOME, END, LOADED
|
TAKEOFF_ACT
|
BOOL,BOOL
|
FWD, REV
|
TAKEOFF_SENSE
|
BOOL,BOOL,BOOL
|
HOME, END, LOADED
|
UNLOAD_ACT
|
BOOL
|
UNLOAD
|
UNLOAD_SENSE
|
BOOL,BOOL
|
HOME, END
|