Add HWP Sequencer app - #234
Conversation
|
Testing works fine using a non-threaded blocking |
|
This is tested working on exao1
|
|
Actually, one question to resolve is whether we should be triggering obs_on or triggering the fxngensync output. Triggering obs_on is noisy on maggieo_x and leads to an explosion of folders, so it might be better to turn the trigger off instead, but this conflicts with the lab rules I just wrote for #228 |
|
New behavior using fxngensync output to pause acquisition during HWP movement is tested and working |
|
Final piece of logic to implement is some kind of block to wait for the current frame to readout before moving HWP--I think I can just wait for a semaphore from the SHM for one of the camscis. |
|
I've moved the app to run on ICC so the SHMs are as fresh as possible. The semaphore waits are tested to work with both fast exposure times (5 Hz) and slow exposure times (10s). Long exposures have little to no observing efficiency loss because we turn the external trigger off and then wait for the semaphore, which means there are no intermediate exposures that lock us up for a full exposure time before continuing saving. I think this is ready to go now! |
3a95574 to
c450bcc
Compare
|
depends on #244 now but otherwise should be ready to go |
669406a to
6e99490
Compare
|
new features as of 2025/12/09
|
|
@jaredmales this is the block of code that is screwed up--the sympton is that regardlesss of camera readout time, on the first iteration of the sequence the It is crazy bizarre that the same exact code has different behavior. The MagAOX/apps/hwpSequencer/hwpSequencer.hpp Lines 434 to 469 in 6e99490 |
| return -1; | ||
| } | ||
|
|
||
| mx::sys::sleep(m_timePerPos); |
There was a problem hiding this comment.
the sleep function takes an unsigned as argument, so it's integer seconds. You probably want to use mx::sys::microSleep(m_timePerPos*1e6);
| m_doMoveHwp = false; | ||
| } | ||
|
|
||
| mx::sys::sleep(0.1); |
There was a problem hiding this comment.
same as above. In this case it's not sleeping at all.
dfd2f83 to
a3f34d4
Compare
…ing data acquisition
8cb7739 to
039e3c9
Compare
039e3c9 to
70ce66d
Compare
HWP sequencer manages the state machine for the polarimeter, which moves the HWP stage and toggles data acquistion on and off.
To be tested.