# devices.lakeshore:Lakeshore475


Class for controlling the Lakeshore 475 Gaussmeter.


Usage

``` python
devices.lakeshore:Lakeshore475(
    interface,
    **kwargs,
)
```


A class to interact with the Lakeshore 475 Gaussmeter, providing methods to read field and temperature values, set control parameters, configure analog outputs, and control probe settings.


## Methods

| Name | Description |
|----|----|
| [__init__()](#__init__) | Initialize the Lakeshore475 device. |
| [configure()](#configure) | Configure LS475 measurement parameters. |
| [configureAnalogOut()](#configureAnalogOut) | Configure analog output of the LS475. |
| [configureControl()](#configureControl) | Configure the control mode parameters. |
| [getField()](#getField) | Get the current magnetic field reading. |
| [getTemp()](#getTemp) | Get the current temperature reading. |
| [readSetpoint()](#readSetpoint) | Read the current control setpoint value. |
| [setSetpoint()](#setSetpoint) | Set the control setpoint value. |
| [zeroProbe()](#zeroProbe) | Zero the Hall probe or clear the zero setting. |

------------------------------------------------------------------------


### \_\_init\_\_()


Initialize the Lakeshore475 device.


Usage

``` python
__init__(
    interface,
    **kwargs,
)
```


#### Parameters


`interface: str`  
VISA resource name for the device

`**kwargs: dict`  
Additional keyword arguments for the VISA device


------------------------------------------------------------------------


### configure()


Configure LS475 measurement parameters.


Usage

``` python
configure(
    reset=False,
    autoRange=True,
    range_val=None,
    dcRes=None,
    fUnit=None,
)
```


#### Parameters


`reset: bool = ``False`  
If True, reset the instrument. Default is False.

`autoRange: bool = ``True`  
If True, enable auto range. Default is True.

`range_val: int = None`  
Range value between 1 and 5, where 1 is the smallest range and 5 the largest (probe dependent). Default is None.

`dcRes: int = None`  
DC resolution between 1 and 3, where 1 is 3 digits and 3 is 5 digits. Default is None.

`fUnit: int = None`  
Field unit: 1 (Gauss), 2 (Tesla), 3 (Oersted), 4 (Amp/meter). Default is None.


------------------------------------------------------------------------


### configureAnalogOut()


Configure analog output of the LS475.


Usage

``` python
configureAnalogOut(
    voltlimit,
    lowfield,
    highfield,
    bipolar=2,
    mode=4,
    manualOut=0,
)
```


Note: Function not tested.


#### Parameters


`voltlimit: int`  
Maximum voltage (1 to 10V)

`lowfield: float`  
Field value at which the analog output reaches -100% (0%)

`highfield: float`  
Field value at which the analog output reaches +100%

`bipolar: int = ``2`  
Analog output mode: 1 (unipolar) or 2 (bipolar). Default is 2.

`mode: int = ``4`  
Output mode: 0 (off), 1 (default), 2 (user defined), 3 (manual), 4 (control). Default is 4.

`manualOut: float = ``0`  
Manual output value. Default is 0.


------------------------------------------------------------------------


### configureControl()


Configure the control mode parameters.


Usage

``` python
configureControl(
    pValue,
    iValue,
    rampRate,
    maxVSlope,
    on=False,
)
```


Note: Function not tested.


#### Parameters


`pValue: float`  
Proportional gain (0.01 to 1000)

`iValue: float`  
Integral gain (0.0001 to 1000)

`rampRate: float`  
Ramp rate in units/minute (unit is given by measurement unit setting)

`maxVSlope: float`  
Maximum rate of voltage output change (0.01 to 1000 V/min)

`on: bool = ``False`  
If True, configures and turns on the control, otherwise just configures. Default is False.


------------------------------------------------------------------------


### getField()


Get the current magnetic field reading.


Usage

``` python
getField()
```


#### Returns


`float`  
Current magnetic field value


------------------------------------------------------------------------


### getTemp()


Get the current temperature reading.


Usage

``` python
getTemp()
```


#### Returns


`float`  
Current temperature value


------------------------------------------------------------------------


### readSetpoint()


Read the current control setpoint value.


Usage

``` python
readSetpoint()
```


#### Returns


`float`  
Current setpoint value


------------------------------------------------------------------------


### setSetpoint()


Set the control setpoint value.


Usage

``` python
setSetpoint(setpoint)
```


#### Parameters


`setpoint: float`  
The desired setpoint value


------------------------------------------------------------------------


### zeroProbe()


Zero the Hall probe or clear the zero setting.


Usage

``` python
zeroProbe(clear=False)
```


#### Parameters


`clear: bool = ``False`  
If True, clears the zero probe setting. If False, zeros the probe. Default is False.
