Clara Gaspar, May 2008
FSM News
22Clara Gaspar, May 2008
FSM Operation Tips❚ Standard FSM
panel❙ State
Summarizes the states of included children
❙ ActionsAre sent to included children
❙ Also asynchronous automatic actions
❙ ModeTooltip for details
33Clara Gaspar, May 2008
FSM operation tips
❚Symbol Legend❙LockedOut❙Unlocked
❘Excluded❘Manual
❙Locked Included or InLocal❘By You❘By Someone else❘By Nobody
❙Mouse over tooltip for details
❙Incomplete❘Some CUs excluded❘Some Devices
disabled
❙Shared❘By You❘By Someone else
❙Devices:❘Enabled❘Disabled
44Clara Gaspar, May 2008
FSM Operation❚ Take
Will go through the tree and take all components that are not:❙ LockedOut
❙ Or taken by somebody else
❙ Or taken byyou InLocal
❚ New Feature:❙ Message Popup for
not taken components
55Clara Gaspar, May 2008
FSM Operation tips
❚Ownership❙Each User Interface has a unique identifier:
❘<System_name>:<Manager_number>❘This is the owner that gives the color to the locks
❙So if you close a UI manager (the top, for example the DEN or the FSM tree) you will possibly get another identifier❘So the tree may not belong to you anymore
❙There is a trick to get it back❘Right-click on “Modes” Panel❘To be used only if you know what you are doing
66Clara Gaspar, May 2008
FSM Operation tips
❚Parent view of a child can be different from the child mode itself❙Most common example:
❘Parent view: Excluded or LockedOut❘Child: InLocal mode (working in stand alone)
〡Either taken by another user〡Or even by the same user (to do some tests before
including it)❘ Attention! It looks almost as if it is yours but it is
not!
❙For all normal operations❘Always exclude and Include from the Parent
77Clara Gaspar, May 2008
FSM Operation tips
❚Current version: When a domain “dies” it goes into Manual mode:❙Its state is still taken into account❙But commands are not sent to it❙In this case the parent can exclude it❙You can then “RestartFSM”❙And then Include it (or Re-Take it
from any level above)
❚New version: Automatically Include (?)
88Clara Gaspar, May 2008
FSM New Features
❚When a part of the system stays executing (“grey”) forever:❙AbortCommand
❚When an FSM is “DEAD” or if the AbortCommand didn’t work:❙RestartFSM
❚Can now do in one go:❙Exclude&Lockout❙UnLockout&Include
❚Can now exclude/LockOut when not owner
99Clara Gaspar, May 2008
FSM New Features
❚The FSM Tree❙Can navigate through the
whole tree❙Right click - Opens panel❙Left Click – Info❙Can Change Identity
❘Double click on id field
1010Clara Gaspar, May 2008
Customization
❚fwFsmUser.ctl❙ fwFsmUser_nodeTaken(string node)❙ fwFsmUser_nodeReleased(string node)❙ fwFsmUser_nodeIncluded(string parent, string node)❙ fwFsmUser_nodeExcluded(string parent, string node)❙ …
And also:❙ fwFsmUser_nodeClicked(string domain, string obj)❙ fwFsmUser_nodeDoubleClicked(string domain, string obj)❙ fwFsmUser_nodeView(string domain, string obj)
1111Clara Gaspar, May 2008
FSM Libraries
❚Libraries: ❙The library fwDU can be used to add functionality
to Device Units inside their scripts. ❙The library fwCU can be used to operate Control
Units from Panels or Ctrl scripts. ❙The library fwFsmTree can be used to
dynamically create a hierarchy of Control Units and/or DeviceUnits.
❙The library FwFsmUi can be used to tailor the look and feel of FSM top-level panels (experiment specific). -> Display Customization
1212Clara Gaspar, May 2008
More Customization
❚In Device Editor Navigator❙Top-level
❘Settings〡FSM main panel〡FSM main panel size
❘Advanced Settings〡Start FSM at Startup, etc.
❙For Each Control Unit❘Settings
Top Related