# Scaler

## class Scaler[source]

Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.15)")

Convert a raw DAQ reading to a physical value and report the resulting units.

Scalers compose via `ScalerPipeline` (e.g. voltage-divider → thermocouple).
The pipeline’s reported `units` come from the last stage.

Attributes

| [`units`](https://dev.nominal.io/instro/ref/instruments/instro.daq.scaling.Scaler.md#instro.daq.scaling.Scaler.units "instro.daq.scaling.Scaler.units") | Physical units of the scaled output (e.g. `"V"`, `"degC"`, `"psi"`). |
| --- | --- |

Methods

| [`scale`](https://dev.nominal.io/instro/ref/instruments/instro.daq.scaling.Scaler.md#instro.daq.scaling.Scaler.scale "instro.daq.scaling.Scaler.scale") | Convert a raw DAQ reading to a physical value in [`units`](https://dev.nominal.io/instro/ref/instruments/instro.daq.scaling.Scaler.md#instro.daq.scaling.Scaler.units "instro.daq.scaling.Scaler.units"). |
| --- | --- |

### abstractmethod scale(raw: float) → float[source]

Convert a raw DAQ reading to a physical value in [`units`](https://dev.nominal.io/instro/ref/instruments/instro.daq.scaling.Scaler.md#instro.daq.scaling.Scaler.units "instro.daq.scaling.Scaler.units").

### abstract property units: str

Physical units of the scaled output (e.g. `"V"`, `"degC"`, `"psi"`).
