Interface EMController

    • Method Detail

      • getDescription

        static java.lang.String getDescription()
      • getField

        double getField()
                 throws java.io.IOException,
                        DeviceException
        Returns the current field being produced by the electromagnet.
        Returns:
        Field, in Tesla
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon instrument error
      • setField

        void setField​(double field)
               throws java.io.IOException,
                      DeviceException,
                      java.lang.InterruptedException
        Ramps the electromagnet to the specified field at automatically determined ramping rates. Does not return until ramping is complete.
        Parameters:
        field - Field to ramp to, in Tesla
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon instrument error
        java.lang.InterruptedException - Upon waiting for ramping to complete being interrupted
      • getCurrent

        double getCurrent()
                   throws java.io.IOException,
                          DeviceException
        Returns the current currently being sourced by the controller.
        Returns:
        Current, in Amperes
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon instrument error
      • setCurrent

        void setCurrent​(double current)
                 throws java.io.IOException,
                        DeviceException,
                        java.lang.InterruptedException
        Ramps the electromagnet to the specified current at automatically determined ramping rates. Does not return until ramping is complete.
        Parameters:
        current - Current to ramp to, in Amperes
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon instrument error
        java.lang.InterruptedException - Upon waiting for ramping to complete being interrupted
      • turnOff

        void turnOff()
              throws java.io.IOException,
                     DeviceException,
                     java.lang.InterruptedException
        Safely turns off the electromagnet. Does not return until magnet is safely off.
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon instrument error
        java.lang.InterruptedException - Upon waiting for ramping down to complete being interrupted
      • getRampRates

        java.util.List<EMController.Ramp> getRampRates()
        Returns the rates being used to determine the ramping legs of each change in current.
        Returns:
        List of ramp rates and ranges.
      • setRampRates

        void setRampRates​(EMController.Ramp... ramps)
        Sets the rates at which the magnet should ramp for different current ranges.
        Parameters:
        ramps - Ramp rates
      • getRampForCurrent

        default EMController.Ramp getRampForCurrent​(double current)