Skip to content

Overview

Collection of function blocks implementing I_ComponentBase. All components follow the pattern laid out in HMI DUT Pattern.

PackML is not required to be used alongside these components, but they are made to fit directly into FB_PackML_BaseModule.

Design Notes

HMI DUT Pattern

If a function block is intended to be controlled via HMI, a DUT should be created to contain:

  • Configuration Variables
  • Commands
  • Status Information
  • A wrapper DUT should also be created to aggregate these data (see class diagram).

Function blocks inheriting FB_ComponentBase will automatically include basic functions (including a Reset command)--see ComponentBaseHMI in FB_ComponentBase. Similarly, inheriting FB_PackML_BaseModule will give you basic mode/state commands, etc. in PackMLModuleBaseHMI.

The idea is to give all components/PackML modules the same basic capabilities. Component or Equipment Module-specific functions should be exposed through their own group of DUTs. This pattern makes the development of User Controls on the HMI side much smoother.