esrf

Beamline Instrument Software Support
SPEC Macro documentation: [ Macro Index | BCU Home ]

TAB3.MAC
See other macros in category: All
Description:
    Macros to control three leg table(s) with logical motors xtilt, ytilt and height
Documentation:
    DESCRIPTION
    A table with three legs in triangle. One in the front and two in the back is a common positioning element in ESRF beamlines. This macros implement tilts and height for this kind of table as pseudomotors. This macros can use different geometries. More than one table can be defined in this way in the same spec application.
    For geometry 0 (standard):
    Xtilt is the angle defined by the two back legs. Fixed a middle point B between the two back legs. The height in the middle point between B and the front leg gives the value for the motor height. The motor Ytilt is defined as the angle existing between B and front leg. Two parameters must be input to the system: the distance between the two back legs and the distance between B and the front leg. In this geometry distances are given in mm. Angles in mrad.
    For geometry 1 (side front leg):
    The front leg is on the same side and aligned with the first motor. The fixed point is in the middle of the mirror. For positive x tilt is motor 1 higher up then motor 2. For positive y tilt is the front motor higher up then the two back motors.
    For geometry 2 (ID22 mirror):
    Xtilt is the angle defined by the two back legs, but only leg2 moves when a xtilt is requested. Ytilt and Height are defined in the line defined by leg1 and front. For the two movements leg2 follows leg1.
    For geometry 3 (ID21 mirror):
    Xtilt is the angle defined by the two back legs. Fixed a middle point B between the two back legs. The value of this point gives the value for the motor Height. The motor Ytilt is defined as the angle existing between B and front leg. Two parameters must be input to the system: the distance between the two back legs and the distance between B and the front leg. In this geometry distances are given in mm. Angles in mrad.
    For geometry 4 (ID20):
    For geometry 5 (ID29 mirror):
    Xtilt is the angle defined by the two back legs. B is the middle distance point between the two back legs. C is at fixed distance between B and the front leg, used to calculate the height. The Ytilt is defined as the angle between B and the front leg. Three parameters needed: the distance between the two back legs, between B and the front leg and between C and the front leg (all given in mm). Calculated angles in mrad.
    For geometry 6 (ID30):
    All motors must be defined in config. global tab3prefix tab3prefix = "tab3"

    DEPENDENCIES


Macros:
Internal Macros:
    tab3_method
    Usage: tab3_method(id, method, par1)


    tab3_config
    Usage: tab3_config(motormne, type, par1,par2)


    tab3_calc
    Usage: tab3_calc(mne, mode)


    tab3_ctrlconfig
    Usage: tab3_ctrlconfig(unit)


    tab3_motconfig
    Usage: tab3_motconfig(mne,unit,chan)


    tab3_tf
    Usage: tab3_tf (calcidx , tbl1, tbl2, front, xti, yti, z, mode , d1, d2,d3)
    calcidx gives the index of the value to be calculated. Indexes are starting from 0 (tbl1) and go to 5 (z). The 3 leg motors and the 3 pseudo motors are all the time given. Depending on calcidx only 3 of them are used in the calculation. The mode allows for different geometries. d1 and d2 are the distances between the legs. d3 is the distance between the front leg and the center of the rotation.

Filename: tab3_mh.mac
Author: Vicente Rey. June 1995 $Revision: 1.1 $, $Date: 2011/06/11 07:42:26 $
Last mod.: 23/09/2011 09:13 by domingue