![]() |
Mechanism Never Stops Slewing |
|
In all the following instructions, all references to a "command line" or "a waimea window" refer to entering commands at the prompt, in a terminal window of some kind that is logged into the NIRSPEC host computer waimea in the account "nirspec". If you are in front of a computer in Remote Ops 2 that is logged in as "nirspec", you can open a window on waimea by putting the mouse pointer on the blue background, holding down the right button, going into the Login Windows menu, and letting up on xgterm 'waimea' (NIRSPEC).
A motor move has been commanded, and it starts, but it never finishes. There is no message that the move failed or timed out, but the XNIRSPEC GUI reports that the mechanism is "slewing" forever.
There are 3 steps to fixing this problem. Carry out all three of the following steps, in order:
You can halt the move by modifying one keyword (per mechanism, if more than one seems to be involved). There are keywords of the format [stage]abort, so in a waimea window issue the command:
m [stage]abort=1
The legal values for the [stage]abort keyword are:
So for example to halt the Echelle grating, the command would be:
m echlabort=1
Aborting a move causes the server to lose knowledge of where the mechanism is, so it now must be initialized before it can be moved again. You can initialize any mechanism by modifying one keyword (per mechanism, if more than one seems to be involved). There are keywords of the format [stage]init, so in a waimea window issue the command:
m [stage]init=1
The legal values for the [stage]init keyword are:
So for example to initialize the Echelle grating, the command would be:
m echlinit=1
If you happen to be sitting in front of the observer's console, you can also initialize a single stage through the XNIRSPEC GUI. On XNIRSPEC, left-click on "Engineer" then on "Motors", then on "Init" to get the "Init" menu. Then left-click on the stage you want to initialize, left-click on "Init", and left-click on "Dismiss". The stage begins initializing immediately, but the popup menu will not go away nor will the rest of XNIRSPEC update until you click "Dismiss", so click it right away.
Please note that there is one instance where initializing via the XNIRSPEC GUI is less flexible than initializing via the command line: the filter wheels. The two filter wheels can be initialized only simultaneously and in parallel through the GUI, but either one can be independently initialized from the command line. Thus if you need to initialize only one, it can be quicker to do that from the command line.
From the XNIRSPEC GUI, command the motor move that just failed (ie, select the filter, grating angle or whatever) and see if it works. It should now complete without incident.
This problem comes up infrequently, but it can be very disconcerting when it happens. Since NIRSPEC arrived, it has been observed to happen perhaps 5 to 10 times on the Echelle grating, and at least once each on Filter Wheel 1 and Filter Wheel 2.
This is more likely a software problem than a true hardware problem. It probably results from some glitch in the communication between the server and the transputers that causes the server to believe that the motor has never stopped moving, when in fact, it probably never started moving.
If it ever happens that the procedure outlined above does not resolve the problem, the next step would be to stop and restart the server. That solution is much more drastic and time-consuming, so try the keyword-level abort first.