Detals.

Powe ron soul-luciDX

OK

Ocam OK

Fabio connected.

making a small changes in the script.

It launches from scripts/python reset_ocam.py.

The reset goes sccesful in open loop, it changes the mode back and forward.

Check whrn loop state is close loop.

The logic:

- get loop status, if loop status is closed.

-loop pause.

reset_ocam

-restore values and

resume

Oeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closeing
Traceback (most recent call last):
File "reset_ocam.py", line 60, in
pyr.resumeLoop()
File "/home/AOeng/live/aoroot/lib/python/PyramidWFS_ice.py", line 2633, in resumeLoop
return _M_FLAO.PyramidWFS._op_resumeLoop.invoke(self, ((), _ctx))
AODefs.AOException: exception ::AODefs::AOException
{
code = -1
what = Reading shared buffer. (-5001) TIMEOUT_ERROR

WfsArbitrator_4852 |INF| 162|2024-04-10 16:57:46.533071| ALERT-NOTIFIER > ArbitratorInterface to wfscontrol1.R succesfully created!
^[[A^[[A^[[A^[[BWfsArbitrator_4852 |INF| 163|2024-04-10 16:58:24.019857| MASTDIAGN > Setting master diagnostic in open loop mode
WfsArbitrator_4852 |ERR| 164|2024-04-10 16:59:00.461704| WFS > Command returns error : Reading shared buffer. (-5001) TIMEOUT_ERROR
WfsArbitrator_4852 |INF| 165|2024-04-10 17:01:08.233918| MASTDIAGN > Setting master diagnostic in open loop mode
WfsArbitrator_4852 |INF| 166|2024-04-10 17:01:08.335516| ADSEC > Executing openLoop...
WfsArbitrator_4852 |INF| 167|2024-04-10 17:01:08.335573| ADSEC > Requesting StopAo to AdSecArbitrator...


test close loop gain zero.

All good.

fsArbitrator_4852 |INF| 173|2024-04-10 17:04:56.556367| ADSEC > Requesting RunAO to AdSecArbitrator...
WfsArbitrator_4852 |INF| 174|2024-04-10 17:04:57.967030| MASTDIAGN > Setting master diagnostic in closed loop mode
WfsArbitrator_4852 |INF| 175|2024-04-10 17:05:23.239743| MASTDIAGN > Setting master diagnostic in open loop mode
WfsArbitrator_4852 |WAR| 176|2024-04-10 17:05:27.584460| MAIN > OCAM Bad Frames/Slopes Warning events detected during LoopPaused, code -1
WfsArbitrator_4852 |INF| 177|2024-04-10 17:05:27.584509| MAIN > OCAM Bad Frames/Slopes Info events detected during LoopPaused, code 1
WfsArbitrator_4852 |WAR| 178|2024-04-10 17:05:27.584527| MAIN > OCAM bad frame description: Code 1 - Pixels are all 0
WfsArbitrator_4852 |WAR| 179|2024-04-10 17:05:27.584538| MAIN > OCAM suggested action to recover: Change Bin back and forth via WFS control GUI; if required, power cycle BCU2k
WfsArbitrator_4852 |WAR| 180|2024-04-10 17:05:27.584546| MAIN > OCAM bad frame description: Code 2 - Slopes are all 0
WfsArbitrator_4852 |WAR| 181|2024-04-10 17:05:27.584553| MAIN > OCAM suggested action to recover: Change Bin back and forth via WFS control GUI; if required, power cycle BCU2k
WfsArbitrator_4852 |WAR| 182|2024-04-10 17:05:27.584560| MAIN > OCAM bad frame description: Code 4 - Some Slopes are Nan
WfsArbitrator_4852 |WAR| 183|2024-04-10 17:05:27.584569| MAIN > OCAM suggested action to recover: Change Bin back and forth via WFS control GUI; if required, power cycle BCU2k
WfsArbitrator_4852 |WAR| 184|2024-04-10 17:05:27.584577| MAIN > OCAM bad frame description: Code 8 - Some Pixels are Nan
WfsArbitrator_4852 |WAR| 185|2024-04-10 17:05:27.584598| MAIN > OCAM suggested action to recover: Change Bin back and forth via WFS control GUI; if required, power cycle BCU2k
WfsArbitrator_4852 |WAR| 186|2024-04-10 17:05:27.584606| MAIN > OCAM bad frame description: Code 16 - High RMS Pixels
WfsArbitrator_4852 |WAR| 187|2024-04-10 17:05:27.584613| MAIN > OCAM suggested action to recover: No Action required; check Ao loop performances
WfsArbitrator_4852 |WAR| 188|2024-04-10 17:05:27.584620| MAIN > OCAM bad frame description: Code 32 - High RMS Slopes
WfsArbitrator_4852 |WAR| 189|2024-04-10 17:05:27.584628| MAIN > OCAM suggested action to recover: No Action required; check Ao loop performances
WfsArbitrator_4852 |WAR| 190|2024-04-10 17:05:27.584637| MAIN > OCAM bad frame description: Code 64 - Ocam Flame: noise pattern compromise pixel data
WfsArbitrator_4852 |WAR| 191|2024-04-10 17:05:27.584645| MAIN > OCAM suggested action to recover: Check OCAM viewer to confirm; if required, change Bin back and forth via WFS control GUI
WfsArbitrator_4852 |WAR| 192|2024-04-10 17:05:27.584654| MAIN > OCAM bad frame description: Code 128 - Noisy Octants: Pixel RMS in external octants is high
WfsArbitrator_4852 |WAR| 193|2024-04-10 17:05:27.584662| MAIN > OCAM suggested action to recover: No action required; no impact on performance is expected
WfsArbitrator_4852 |WAR| 194|2024-04-10 17:05:27.584679| MAIN > OCAM bad frame description: Code 256 - Zero Octant
WfsArbitrator_4852 |WAR| 195|2024-04-10 17:05:27.584687| MAIN > OCAM suggested action to recover: Verify that OCAM2k is at ambient temperature, then power cycle OCAM2k
WfsArbitrator_4852 |WAR| 196|2024-04-10 17:05:27.584695| MAIN > OCAM bad frame description: Code 512 - Negative Octant
WfsArbitrator_4852 |WAR| 197|2024-04-10 17:05:27.584715| MAIN > OCAM suggested action to recover: Verify that OCAM2k is at ambient temperature, then power cycle OCAM2k
WfsArbitrator_4852 |INF| 198|2024-04-10 17:05:28.533671| MAIN > Camera lens tracking: waiting for data from pupilcheck process
WfsArbitrator_4852 |INF| 199|2024-04-10 17:05:41.871593| MAIN > Camera lens tracking: waiting for data from pupilcheck process
WfsArbitrator_4852 |INF| 200|2024-04-10 17:05:53.966695| MASTDIAGN > Setting master diagnostic in closed loop mode


But the ocam monitor catchs the reset of ocam.

Fabio including the variable for the ocam monitor to get notice when the mode is changes, so at this point the ocam monitor will not detect the change of mode.

Done.

OK

loop closed and it gave s an

[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Traceback (most recent call last):
File "reset_ocam.py", line 38, in
pyr.pauseLoop()
File "/home/AOeng/live/aoroot/lib/python/PyramidWFS_ice.py", line 2588, in pauseLoop
return _M_FLAO.PyramidWFS._op_pauseLoop.invoke(self, ((), _ctx))
AODefs.AOException: exception ::AODefs::AOException
{
code = -1
what = RETRY: Magnitude calculation cannot take place with negative counts (-5002) VALUE_OUT_OF_RANGE_ERROR

Understood; the issues is the load of backgrounds. When a new background was taken, the system script went well.

Reduced all the sleeps to 200ms and it is really fast the change of the mode, almost not notced in the ocam viewer.

10:55AM

Done from Fabio.

Fabio will do a pull request and update the changes. (tomorrow)

wrap up.

shell rest.

Requested to Doug if we can use the DX in close loop wth the Argos?.

Test

open loop state aoset

bin1

ok

bin2

ok

bn3

ok

bin4

ok

11:22

deploy argos cal unit.

test close loop.

ocam warm state.

test, the background not too good.

[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
Traceback (most recent call last):
File "reset_ocam.py", line 67, in
pyr.resumeLoop()
File "/home/AOeng/live/aoroot/lib/python/PyramidWFS_ice.py", line 2633, in resumeLoop
return _M_FLAO.PyramidWFS._op_resumeLoop.invoke(self, ((), _ctx))
AODefs.AOException: exception ::AODefs::AOException
{
code = -1
what = RETRY: Magnitude calculation cannot take place with negative counts (-5002) VALUE_OUT_OF_RANGE_ERROR

cool down ocam.

same error? with skip frames.

debug.

change to sleep to 1 before to execute the change mode.

fsArbitrator_4852 |INF| 390|2024-04-10 19:33:04.719312| MAIN > Received cmd: applySettings()
WfsArbitrator_4852 |INF| 391|2024-04-10 19:33:31.216929| MASTDIAGN > Setting master diagnostic in closed loop mode
WfsArbitrator_4852 |INF| 392|2024-04-10 19:33:53.588050| MASTDIAGN > Setting master diagnostic in open loop mode
WfsArbitrator_4852 |INF| 393|2024-04-10 19:33:59.700768| MASTDIAGN > Setting master diagnostic in closed loop mode
WfsArbitrator_4852 |INF| 394|2024-04-10 19:34:11.291345| MAIN > Camera lens tracking: moving by x= -2.1 y= -1.3 (um)

Success.[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
Traceback (most recent call last):
File "reset_ocam.py", line 67, in
pyr.resumeLoop()
File "/home/AOeng/live/aoroot/lib/python/PyramidWFS_ice.py", line 2633, in resumeLoop
return _M_FLAO.PyramidWFS._op_resumeLoop.invoke(self, ((), _ctx))
AODefs.AOException: exception ::AODefs::AOException
{
code = -1
what = RETRY: Star not found - loop still paused (-20002) WFSARB_STAR_WRONGFLUX

wth frequencies lower than 1700 seems that the apply of gains and pause/resume is not optimal.

cam2 interface loaded
Traceback (most recent call last):
File "reset_ocam.py", line 51, in
app.camera.set_mode(newmode)
File "/home/AOeng/live/aoroot/lib/python/AdOpt/hwctrl/ccd.py", line 465, in set_mode
self.app.WaitVarValue( self.v_curmode, int_v, timeout = self._timeout_s)
File "/home/AOeng/live/aoroot/lib/python/AdOpt/thAOApp.py", line 564, in WaitVarValue
self.WaitVarFunc(var, lambda x: x==value, timeout=timeout)
File "/home/AOeng/live/aoroot/lib/python/AdOpt/thAOApp.py", line 604, in WaitVarFunc
raise AdOptError, (AOErrCode['TIMEOUT_ERROR'], errstr)
AdOpt.AOExcept.AdOptError: Timeout waiting for ocam2.R.MODE.CUR - TIMEOUT_ERROR
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
Traceback (most recent call last):
File "reset_ocam.py", line 68, in
pyr.resumeLoop()
File "/home/AOeng/live/aoroot/lib/python/PyramidWFS_ice.py", line 2633, in resumeLoop
return _M_FLAO.PyramidWFS._op_resumeLoop.invoke(self, ((), _ctx))
AODefs.AOException: exception ::AODefs::AOException
{
code = -1
what = RETRY: Star not found - loop still paused (-20002) WFSARB_STAR_WRONGFLUX
}
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py
ocam2 interface loaded
Loop is Closed, Pausing
Loop was Closed, Re-Closing
Traceback (most recent call last):
File "reset_ocam.py", line 68, in
pyr.resumeLoop()
File "/home/AOeng/live/aoroot/lib/python/PyramidWFS_ice.py", line 2633, in resumeLoop
return _M_FLAO.PyramidWFS._op_resumeLoop.invoke(self, ((), _ctx))
AODefs.AOException: exception ::AODefs::AOException
{
code = -1
what = RETRY: Star not found - loop still paused (-20002) WFSARB_STAR_WRONGFLUX
}
[AOeng@soul-dxwfs scripts]$ python reset_ocam.py

BCU stuck.
ocam2 interface loaded
Traceback (most recent call last):
File "reset_ocam.py", line 51, in
app.camera.set_mode(newmode)
File "/home/AOeng/live/aoroot/lib/python/AdOpt/hwctrl/ccd.py", line 465, in set_mode
self.app.WaitVarValue( self.v_curmode, int_v, timeout = self._timeout_s)
File "/home/AOeng/live/aoroot/lib/python/AdOpt/thAOApp.py", line 564, in WaitVarValue
self.WaitVarFunc(var, lambda x: x==value, timeout=timeout)
File "/home/AOeng/live/aoroot/lib/python/AdOpt/thAOApp.py", line 604, in WaitVarFunc
raise AdOptError, (AOErrCode['TIMEOUT_ERROR'], errstr)
AdOpt.AOExcept.AdOptError: Timeout waiting for ocam2.R.MODE.CUR - TIMEOUT_ERROR
[AOeng@soul-dxwfs scripts]$ startProcessByName(): starting process /home/AOeng/live/aoroot/bin/wfshw.py -i wfshwgui

1:12PM

power off

Adsec rest.

-- JuanCarlosGuerra - 10 Apr 2024
Topic revision: r1 - 10 Apr 2024, JuanCarlosGuerra
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback