# Presentation: 175972

## Experimental Physics and Industrial Control System (EPICS)Display Manager (EDD/DM)

- Deb Kerstiens, April 21, 1997

## Outline

- EDD/DM - Operation
- EDD - Display Commands
- EDD - Creating New Objects
- EDD - Property Sheet
- DM - Features
- EDD - Aesthetic Features
- Conclusions

## EDD

- Runs Under:
-         SunOS, Solaris
-         HPUX
-         DEC-UNIX
-         SGI-IRIX

- Is written in C and uses:
-     X windows
-     Motif

- Reads a binary or ASCII file
- to edit a display
- WYSIWYG editor
- Produces a binary
- file for DM to execute

## EDD/DM

- Field I/O

- Field I/O

- Field I/O

- Field I/O

- Configure
- Displays

- EDD

- binary files

- Run
- Displays

- dm

- Uses the Channel Access
- Client to connect to data
- available through the
- Channel Access protocol

## Basic Mouse Interactions

- Hold down the right mouse button to get the appropriate menu
- Move the mouse into the drawing area to get the OBJECT menu
- Move the mouse above the drawing area to get the DISPLAY menu
- To select an object
- Click the left mouse button on the perimeter of an object
- Additive select - or deselect is then active using the middle mouse button
- Holding down the left mouse button produces a rubber band select
- To deselect
- Use the deselect item in the menu
- Click the left mouse button in and open space in the drawing area

## EDD Modes

- Using the menu while positioning the mouse in the display command area
- Using the menu while you are in the drawing area and nothing is selected
- Using the menu while you are in the drawing area and one or more object is selected
- Property sheets

**Drawing Area Selected**

**Display Command Area**

*selected oval*

## EDD - Menu outside of the drawing area

- Load Display
- Modify Display
- attributes (defaults)
- color table
- color rules
- edit list
- alarm
- <other color rules>
- Save Display
- Copy Display (rename)
- Report a display (in ASCII)
- Activate Display
- Quit

## EDD - Modify Display - attributes

- Attributes (defaults)
- Horizontal and vertical position of the display
- Foreground/background color
- Object edge, fill style, line width
- Defaults for dynamic objects (channel name, color rule)
- Capability to import a color map

## EDD - Modify Display - colors

- Color Table - add/modify up to 99 colors using RGB values
- Color Rules
- Initially there is only a default rule for ALARM
- Rules can be added or deleted by name
- Define or Modify a rule for a named color rule includes:
- Up to 16 lines in the color rule expression
- Names or constants in the expression
- Connected by operators (“greater than”, “less than”, “equals”)
- Lines of the expression are connected with: “and”,”or”,”not”
- Lines are terminated with “use” and then the color
- The first line that is evaluated to true is used - so this is a “else if”
- Channel names must be macro substitution

## EDD - Exercise 1

- From a UNIX prompt type: edd
- Create a customized color map with 10 - 12 colors (add to the existing ones)    (in the Modify Display submenu - outside the drawing area)
- Save your work in a file named “color.dl”. Copy to “template.dl”
- Edit “template.dl”
- make the external color map be - “color.dl”
- modify the foreground and background color
- Save “template.dl”

## EDD - Menu inside of the drawing areaNo Objects Selected

- Create
- rectangle
- line
- oval
- arc
- text
- monitor
- controller
- plot
- misc.
- Paste
- Undo
- Select All

## EDD - Menu inside of the drawing areaNo Objects Selected - Monitor

- Monitor
- bar
- meter
- indicator
- text update
- byte widget

## EDD - Menu inside of the drawing areaNo Objects Selected - Controller

- Controller
- valuator
- text entry
- choice button
- toggle button
- message button
- menu

## EDD - Menu inside of the drawing areaNo Objects Selected - Plots

- Plots
- strip chart
- xy plot
- smith chart

## EDD - Exercise 2

- Create a new display (Copy template.dl to a new name)
- Create an arc, oval  and rectangle
- Create a monitor - text update
- Create a controller - text entry
- Activate the display - notice that dynamic objects are not resolved

## EDD - Menu inside of the drawing areaObjects Selected

**Modify................**brings up a property sheet
- Modify Channel Name
- Cut
- Copy
- Move
- Resize
- Deselect
- more....

## EDD - Menu inside of the drawing areaObjects Selected - Property Sheet

- Horizontal and vertical position
- Horizontal and vertical size
- Color Rule
- Color - static/dynamic
- Visibility - static/dynamic
- Channel Name
- Conversion
- Precision
- Alignment

## EDD - Exercise 3

- Add channel names to the text update and text controller		(select the item and then use the menu selection - modify)
- Modify the arc so that it is visible when your variable is non-zero
- Create two valuators - connected to the same channel
- make the first send on motion
- make the second change on release
- set the custom increment/decrement on the second
- active display and operate both valuators
- Copy the previous text update and paste - add conversion
- dmCalcIn = A*PI

## EDD - Exercise 4

- Create a message button that sets the variable to 50 when it is pressed and resets the value to 0 when it is released
- Create a choice button and connect it to the .SCAN field of variable
- Create a menu connected to the same field
- Create a line - double click to terminate the creation

## DM -Miscellaneous Features

- Related display call-up
- with macro replacement *your_variable*=123, *your_variable* *_2*=Abc
- Execute UNIX script
- Kill Button
- Printer Button

## EDD - Exercise 5

- Create a new display - main.dl as a copy of template.dl
- Create a related display call-up - with a variable replacement of your variable
- Edit your previous display and change the channel name on all dynamics to the name of the variable in the related display call up - **$(***your_variable***)**
- Also add a text field with a variable replacement in it “**$(***your_variable***)** *is great*”
- Activate main.dl and use the related display call-up
- Edit your main display to add a UNIX execution to bring up stripTool
- Drag and drop your variable into the stipTool (use shift - middle button)
- Resize the display - note: you will loose parts when you go very small

## EDD - Exercise 6

- Define a new color rule that:
- is blue when the value is under 30
- is purple when the value is between 30 and 60
- is yellow when the value is greater than 60
- hint: Use macro replacement in the color rule definition
- Modify the rectangle to use the color rule
- note: there are 3 properties to change
- Create a bar to use color rules

## EDD - Exercise 7 - Edit Features

- Create a new display with one bar - with 3-D borders
- Copy and paste the bar 4 times - space evenly (align and distribute)
- Select all 4 bars and copy them
- Change the new bars into valuators (from property sheet change element type)

## Conclusions

- Files can be produced using EDD or some program producing ASCII
- All events come into the operator interface based on monitors
- Changes are sent immediately
- Files can be imported from MEDM
- EDD/DM Provide a high performance, real-time interface to data stores which are available over channel access