esrf

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

kepco_bop_mm.mac $Revision: 1.8 $
See other macros in category: All
Description:
    Macros for a the use of a KEPCO,BOP 1000W 100-10 powersuppy
Documentation:
    DESCRIPTION
    The intrument pool power supply is a KEPCO,BOP 1000W 100-10 08/04/08 ,A98599,1.61b
    the string it answers is : KEPCO,BOP1KW 100-10 ,A98599, 2.04
    ID18`s power supply answers: KEPCO,BOP1KW 20-50 10-15-2009 ,E157846, 3.04
    Kepco's auto-crossover digital supplies can operate in either voltage mode with current limit, or current mode with voltage limit. The operating mode is determined by the voltage and current commands received, as well as the load. Each time voltage and current commands are received, the unit must evaluate the commands aand the load conditions to determine the necessary operating mode. Reducing the number of times this evaluation must be made is desirable because Kepco's digital auto-crossover supplies employ two separate feedback loops. Each time there is a potential mode change, there is always an uncontrolled period of a few milliseconds while the two feedback loops compete for control of the output. By changing only the active parameter (e.g., voltage for voltage mode), there is no doubt as to what the operating mode will be, so the unit is never uncontrolled, response is quick and no transients are possible

    To define a macro motor controller you must define a kepco motor controller in config, ADDR is the GPIB address.
       MOTORS       DEVICE    ADDR   <>MODE      NUM               <>TYPE
          YES       kepco      0:6                 1         Macro Motors
    


    Then declare a motor with that controller.

    Number: <>Controller        0: MAC_MOT
    Unit/[Module/]Channel              0/1
    Name                        Kepco Curr
    Mnemonic                          curr
    Steps per degree/mm              10000
    Sign of user * dial                  1
    Backlash [steps]                     0
    Steady-state rate [Hz]               1
    Base rate [Hz]                       1
    Acceleration time [msec]             1
    Motor accumulator                    0
    Restrictions <>                   NONE
    
    Dial = accumulator / steps
      High limit                    1.6000
      Current                       0.0000
      Low limit                    -1.6000
    User = sign * dial + offset
      Offset                        0.0000
      `High' limit                  1.6000
      Current                       0.0000
      `Low' limit                  -1.6000
    
    # hit `m` twice to move to the third motor config screen
    Number: <>Controller        0: MAC_MOT
    Unit/[Module/]Channel              0/1
    Name                        Kepco Curr
    Mnemonic                          curr
    
    Encoder steps per deg/mm
    Step mode (0=full,1=half)
    Linear/Rotary (1=rotary)
    Disable limit checks
    Readback slop [steps]              100
    Hardware read mode <>     PR + AL + NQ
    
    



    BUGS
    Bugs ? What bugs ??

Macros:
    kepco_debug
    Usage: kepco_debug
    toggle debug mode for the present macros.

    kepco_prot
    Usage: kepco_prot motor protection_voltage
    read or set the protection voltage

Internal Macros:
    KEPCO_config
    Usage: KEPCO_config (mnum, type, unit, mod, chan)
    Called by spec

    KEPCO_cmd
    Usage: KEPCO_cmd (mnum, key, p1, p2, p3)
    Called by spec

    KEPCO_par
    Usage: KEPCO_par (mnum, key, action, p1, p2)
    Called by spec

    __kepco_io
    Usage: __kepco_io (addr, cmd)
    Called by spec, write command to controller and read answer.

    __kepco_put
    Usage: __kepco_put (addr, cmd)
    Called by spec, write command to controller, no answer expected.

    __kepco_opc
    Usage: __kepco_opc (addr, cmd)
    Called by spec, here check if command complete

Filename: kepco_bop_mm.mac
Author: Holger (BLISS) for ID18.
Last mod.: 05/01/2016 17:14 by guilloud