[Next] [Previous] [Up] [Top] [Contents] [Index] |
Chapter 7 Controllers
The property sheets of controller objects are not quite as uniform as those of monitors. Therefore, there are only a few characteristics and properties general enough to be discussed in this section. For characteristics and properties common to all objects, see Property Sheets in Chapter 4 .Figure 7-1 shows this submenu with options for the eleven types of controllers:
To create a controller:
Controller objects inherit the following defaults from the Display Attributes window:
There are nine properties we will discuss here:
Figure 7-3 shows the property sheet for a valuator.
Remember from the introduction that the term channel can refer to any record or any record's field in an EPICS database that is accessible via Channel Access. However, since Channel Access was untied from the EPICS database, DM can now monitor and control non-EPICS process variables. Therefore, how you specify a channel name depends on the context you are working. The main thing to remember is that channel names are case sensitive. Also, remember that DM passes to Channel Access the entire name string, including spaces.
Below follows a description of EPICS record names. Though EPICS-specific, it should help even those working with non-EPICS process variables.
Basically, the format for a channel name is the record's name in the database and then the field name. These elements are separated by a period. In addition, the record name may consist of several elements, identifying which database or subsystem it belongs to, as well as the record's particular name within that subsystem or database. However, record naming conventions vary from project to project and from site to site. An example of a channel name might resemble the following:
demo:ao1.SEVRDemo:ao1 is a record's name in a database. Demo is an element of a record name that identifies it as a record in a certain database, in this case the demo database. Ao1 is the record's unique name. Record names must be unique for the same TCP/IP subnet. SEVR, on the other hand, refers to a field name in an EPICS record.
Any channel name must consist of at least a record name. A field name is optional because DM will automatically connect to the VAL field of a channel when no field name is specified as part of the channel name. This goes for channel names with macros. If you do specify the VAL field in a channel name, DM will still connect to the VAL field.
In EDD you can use macros that you can replace at run-time by a real channel name when you run DM. You would do this when you want to use one or more objects in a display to connect to different channels. Instead of specifying specific names of records in specific databases, you can use macros. Thus, the following channel name in the 'channel to control or monitor' property,
$(chan).SEVRcould be used to monitor or control the SEVR field for any EPICS record that contains such a field. All you have to do is expand the macro into a real channel name. The dollar sign and parentheses are characters that DM recognizes as containing a macro, the macro string being any string of characters. For example,
Macros can also be nested; that is, a macro can be placed within another macro. So, for instance, you could use two macros, one within the other, in place of two elements in a record name. An example of nested macros would be:
$(system_name$(subsystem_name).OMSLSee Chapter 9, DM: Run-time Operation, for information about replacing macros at run-time.
The background color is the static part of the monitor; that is, it is the color of the object's background. All values and text are in the foreground color, so anything in the foreground color displays the actual values and text that are meaningful at run-time.
Keep in mind that the colors of these properties may be overridden at run-time when the object's 'color modifier' property is set to rule. When a color rule modifies an controller's color, if the conditions in the expressions of the color rule exist, the foreground color of the controller will turn to the color specified by the color rule. See Color Rules in Chapter 3 for more about color rules and how they affect objects.
When a dynamic object fails to connect to a channel at run-time, for whatever reason, the object will be white and will show an error message.
When a number less than zero is entered into this property, the precision will be determined by the database. Often, the precision is retrieved from the PREC field, or else a global record support routine returns the value for the precision. The precision may be different for different fields in the same record. For versions of EDD/DM prior to 2.3, this is always how the precision is determined. Be aware that the precision affects all numerical values that the object displays, even the display limits.
Note that related display callup objects, execute script objects, and kill display objects do not have a '3-D Borders' property.
Figure 7-2 shows three different objects, one without a 3-D border and the other two with each type of 3-D border.
EDD/DM User's Manual, 2.4 - 27 MARCH 1997 [Next] [Previous] [Up] [Top] [Contents] [Index]
L O S A L A M O S N A T I O N A L
L A B O R A T O R Y