Removing bad actuators from list

General info about GUIs

log into adsecdx (or adsecsx) machine:
obs2% ssh -X AOeng@adsecdx

To start the AdSec GUIs GUI enter
adsecdx% adsceng &

To start specific GUIs:

Start -> AdSec Control GUI to check the status of the mirror Start -> AdSec Mirror GUI shows the actuator with position and applied forces Start -> System processes opens a status GUI of all the software processes

How to find out which actuator has problems?

adsecdx% cd $ADOPT_LOG
adsecdx% less fastdiagn.L.log  (for SX or R for DX) 
   or
adsecdx% grep "FUNCTEMERGENCYST > CHDISTAVERAGE" fastdiagn.L.log

look for lines with the string FUNCTEMERGENCYST > CHDISTAVERAGE-0125 = 2.6... where 125 is the actuator in DSP numbering and 2.6 is the reading in meters.

To show where this actuator is located:
adsecdx% aoidl
IDL>@startup
IDL> print, find_act(125, /show)

or

IDL> mostra, 125

The find_act() output information about the crate which controls this actuator. What do the colors of the mean?

try Recover Fail from AdSec Control GUI it will give a message like \x91it is better to check...\x92 if Recover Fail fails then you might want to consider removing the incriminated actautor from the list of valid actuators

How to remove an actuator from the list of valid actuators?

Step 1

ADSECDX
adsecdx% cd $ADOPT_SOURCE/conf/adsec/672a/TS4/
adsecdx% vi elec.txt

TS3 is still in the lab
adsecdx% cd $ADOPT_SOURCE/conf/adsec/672a/TS3/
adsecdx% vi elec.txt

ADSECSX
adsecsx% cd $ADOPT_SOURCE/conf/adsec/672b/TS5/
adsecdx% vi elec.txt

do the following:
  • change the date and time in the tracking number
  • add the actuator number to the list of act_wo_pos (if the problem is in the position reading)
  • act_wo_icc if the problem is in high forces or (volcano case)
  • BOTH act_wo_curr AND act_wo_pos should be used in case the forces appear to be wandering.
  • increase by 1 the total number (following the int statement).

Position eg. adding two bad actuators (Actuators #260, and #261) to the position list. increment the number by two; from "int 27" to "int 29"

act_wo_pos         array        ;actuators that cannot read position (act_wo_pos=[-2] means all act
uators can read position) il 114 va e viene...
    int 29
    1   3   13  17  39  114 118 121 125 138 
    167 210 222 262 263 277 290 328 443 504 
    533 544 550 552 553 671 374 260 261
end

Current eg. adding one actuator (acturator #374) to the current list. increment the number by one; "int 8" to "int 9"

act_wo_curr        array         ;actuators that cannot apply current (act_wo_curr=[-2] means all actuators can apply current)
    int 9
    4 45 129 159 167 222 358 465 374
end

AND adding the SAME actuator to the position list.:
act_wo_pos         array        ;actuators that cannot read position (act_wo_pos=[-2] means all act
uators can read position) il 114 va e viene...
    int 27
    1   3   13  17  39  114 118 121 125 138 
    167 210 222 262 263 277 290 328 443 504 
    533 544 550 552 553 671 374 
end

Step 2

ADSECDX
adsecdx% cd $ADOPT_SOURCE/conf/adsec/672a/processConf/fastdiagn/
adsec% vi fastdiagn.param

ADSECSX
adsecsx% > cd $ADOPT_SOURCE/conf/adsec/672b/processConf/fastdiagn/
adsecsx%>  vi fastdiagn.param

do the following:
  • Position: copy and paste the two lines containing CHDISTRMS and CHDISTAVERAGE ( eg. for actuator 260, 261)
  • Current: copy and paste the two lines containing CHCURRRMS and CHCURRAVERAGE ( eg. for actuator 374) AND two lines containing CHDISTRMS and CHDISTAVERAGE.
Example:
Added two actuators (#260 and #261) to the list of bad position:

#removed on 19 Mar 2011
CHDISTRMS                260   260   -2e-14      -2e-14      5           5         0       0       dis   fast
CHDISTAVERAGE            260   260   -2e-14      -2e-14      5           5         0       0       dis   fast
CHDISTRMS                261   261   -2e-14      -2e-14      5           5         0       0       dis   fast
CHDISTAVERAGE            261   261   -2e-14      -2e-14      5           5         0       0       dis   fast


Added one actuator (#374) to the list of bad current and position actuators:

#removed on 30 Nov 2011
CHCURRRMS                374   374   -2e-14      -2e-14      5           5         0       0       dis   fast
CHCURRAVERAGE            374   374   -2e-14      -2e-14      5           5         0       0       dis   fast
CHDISTRMS                374   374   -2e-14      -2e-14      5           5         0       0       dis   fast
CHDISTAVERAGE            374   374   -2e-14      -2e-14      5           5         0       0       dis   fast

  • replace the two fields containing the actuator # with the defective actuator, no modification is needed for ICC case.

To apply these changes

adsecdx% cd $ADOPT_SOURCE
adsecdx% make install-conf       (type * yes * at prompt)

NOTE: The stop/start of IDL and Fast Diagnostic steps listed below do not seem to work.

Instead, do
  • Rest Shell
  • Power Off AdSec from AOSGUI
  • adsc_stop
  • adsc_start
  • Power On AdSec from AOSGUI (includes load program)
  • Status on AdSec Control GUI should be Ready and Shell can be "Set"

NOTE, These step do not work

Now, be sure that the Shell is RIPPED and from the System Process GUI
  • stop IDL controller process
  • stop Fast diagnostics
  • start IDL controller (wait for it to re-start)
  • start Fast diagnostics

Finally, go to !AdSec Control GUI and click LoadProgram. The LoadProgram button my be grayed out, so an alternative is on the System Process GUI click IDL terminal
IDL> print, fsm_load_program(/auto)

-- Main.GBrusa - 13 Sep 2011 Modified by Juan Carlos Guerra 03/19/2012 -- MarcoXompero - 04 Sep 2012
Topic revision: r8 - 20 Mar 2014, 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