-
Type:
Task
-
Status: Done (View Workflow)
-
Priority:
Normal
-
Resolution: Done
-
Component/s: ics_fpsActor
-
Labels:None
In order to run at Subaru, the FPS commands which take exposures take their visit id from IIC. See INSTRM-1296. The proposed command list is currently:
('moveToPfsDesign', '<visit>', ), ('movePhiToAngle', '<visit> <angle> <iteration>', ), ('moveToHome', '<visit> @(phi|theta|all)', ), ('moveToSafePosition', '<visit>', ), ('gotoVerticalFromPhi60', '<visit>', ), ('makeMotorMap', '<visit> @(phi|theta) <stepsize> <repeat> [@slowOnly]', ), ('makeOntimeMap', '<visit> @(phi|theta)', ), ('angleConvergenceTest', '<visit> @(phi|theta) <angleTargets>', ), ('targetConvergenceTest', '<visit> @(ontime|speed) <totalTargets> <maxsteps>', ), ('motorOntimeSearch', '<visit> @(phi|theta)', ),
- blocks
-
INSTRM-1296 Add IIC commands for main FPS routines.
-
- Done
-
This will require some changes to the fps/cobraCharmer commands in order to follow the current id conventions: within a visit we can have up to 100 mcs frames, and that the visit generally comes from iic.
I think that for most of the main operations (simple tests, real target convergence, single motor maps) we are fine. But some of the current fps commands can easily run past 100 frames. In particular, the testConverge command can make an arbitrary number of ~10 frame tests, and the motorMap commands can generate up to N*four motormaps (always forward and reverse; always slow and optionally also fast. All multiplied by a arbitrary repeat count.). I think repeats and fast can (and should!) be pulled out into the fps caller, but am wondering how often a single motormap or fwd/rev motormap pair takes more than 100 frames? 50 frames for the standard max theta range of 10000 steps limits us to 200 steps/iteration, which seems high.
chihyi? chyan, how often would that be a real issue? For 2021 I see the following directories with >100 frames:
Also, the primitive fps (cobraCharmer) operations each create a directory inside which they aggregate logs, images, and both intermediate and final data files. This is very convenient and, I think, still desirable. I'll write a separate ticket to rephrase that, but the mcsActor now saves raw files in /data/raw/$date/mcs/ without any of the additional structure. They can be symlinked to.
Finally, I'm inclined to leave many engineering commands in fps, and do not feel the need to require going through iic for those.