If cmr() is called from exp_ini.exp, the user is not prompted for directives. Instead cmr() decides what to do according to the following table:
The preceding Online session did not terminate by a crash (no /online_dir/online.lock):
->
no action
->
trust device list
->
trust device list
->
trust controllers
->
image exit
The preceding Online session did terminate by a crash ( found /online_dir/online.lock):
->
load device list and execute vme_recover.gra
->
load device list and execute vme_recover.gra
->
use controller
->
load device list and execute vme_recover.gra
->
image exit
Examples:
->
no action
->
use device list
->
use controllers
->
Device list
->
vme_recover.gra
Experts may edit /online_dir/exp_ini.exp to comment load/nocon and call cmr() from the command line.
Cmr() writes a record to online.log which describes what has been done.
SPECTRA creates a log file on /online_dir when it resets the
registers. The file name is check_motor_registers.log.
Mind that the files /online_dir/motor_positions*.bck may be
used for a post mortem analysis of the motor positions.
e.g.:
say " check motor registers returns "cmr()
This function is useful, if the controller and
the internal register do not have the same values.
Maybe because the crate wasn't powered for some
time.
This function allows you to decide who is right.
See page for more details.
e.g.:
rmsp(mot1) = gmsri(mot1)
The position is calculated from the internal value.