fieldbus_tnail
fieldbus_tnail
fieldbus_tnail
fieldbus_tnail
fieldbus_tnail

The house that function blocks built

Dec. 20, 2005
Ian Verhappen, Chair of the Foundation Fieldbus User Group and Vice President of Standards for ISA, offers his perspective and experience on what’s happening in the world of industrial fieldbus.
By Ian Verhappen, CONTROL ColumnistFOUNDATION FIELDBUS technology relies on software-based function blocks to provide the control system capabilities in both field devices and hosts. This month we will discuss how function blocks meet this need while also providing manufacturers the ability to differentiate themselves from each other with their offerings. One of the ways the Foundation allow manufacturers to differentiate their products from each other is by defining three types of function blocks for each of the available function blocks such as AI (Analog Input), AO (Analog Output), PID, etc. These blocks are defined as:
  • Basic – Minimum level of functionality required by any block. Basic blocks must be supported by all manufacturers.
  • Enhanced – Defined by the Fieldbus Foundation but with more capabilities added to the Basic block.
  • Extended – Manufacturer specific extensions to the block that as a result can impact a User’s ability to exchange one manufacturer’s devices for another and have everything work the same way. The Basic or Enhanced parts of the Function Block will work for every such device.
The Device Description and Capabilities file that comes with fully defines all the functionality to a host so that selection of Basic, Enhanced or Extended is “hidden” from the end user unless they wish to view the Capabilities file themselves using a text editor to read this information.The figure below shows the parts of a function block defined by the Fieldbus specifications.FUNCTION BLOCK MODEL

AS CAN be seen the specifications describe the inputs, outputs, and ‘event’ handling responses of the block. What is not defined is the algorithm or algorithms used within or inside the function block itself to convert the inputs to outputs and the methods to handle event exceptions.An analogy to function blocks is to compare a function block to a software subroutine. The main program in the Fieldbus Environment is the Link Active Scheduler and Device master program while the function block is a called subroutine. The main program is not concerned with what happens in a subroutine or function call, provided the input/output variables are defined in both the calling and responding program and that the calculated values are associated with the correct variables so they can be used by other routines and functions in the program.Continuing with this analogy, those passed parameters that are defined in the “Basic” function block are similar to global parameters, (Sorry I am an old Fortran coder) or as variables defined and passed via the subroutine if they are unique to the Enhanced function block.Like subroutines, manufacturers are working to not only add new capabilities to their offerings, they are also doing so more efficiently so that the devices are requiring less power than in the past. The moral of this column therefore is that if you are going to use Extended function blocks in your control system, be sure they are fully supported by the host and if you do not need the extensions, prepare your system configuration using the Basic or Enhanced blocks so that you have maximum interoperability for those inevitable “middle of the night” problems.If there is a topic you would like to see discussed in this column please contact me at the information below so we can start a “conversation” to include it in the development calendar.
  About the Author
Ian Verhappen is an ISA Fellow and Director of ICE-Pros Inc. an independent Instrumentation and Systems Engineering firm focused on Fieldbus technology, process analyzer systems and oil sands technology. Verhappen can be reached at [email protected]or via the web atwww.ICE-Pros.com.