Files

99 lines
3.7 KiB
Markdown
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- DataPRO/Modules/DatabaseImporter/DatabaseImport/DASConcepts/Test.Module.Channel.Sensor.SensorUnits.cs
- DataPRO/Modules/DatabaseImporter/DatabaseImport/DASConcepts/Test.Module.Channel.Sensor.Bridge.cs
- DataPRO/Modules/DatabaseImporter/DatabaseImport/DASConcepts/DigitalInputScaleMultiplier.cs
- DataPRO/Modules/DatabaseImporter/DatabaseImport/DASConcepts/LinearizationFormula.cs
generated_at: "2026-04-17T15:53:56.452748+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "d057a2503f607f02"
---
# Documentation: DatabaseImport DAS Concepts
## 1. Purpose
This module defines sensor-related data structures and parsing logic for a Data Acquisition System (DAS) database import facility. It provides enumeration types for sensor sensitivity units and bridge configurations, a class for transforming digital input values to arbitrary scales, and a comprehensive linearization formula system supporting multiple calibration formats (IRTracc variants and polynomial). These components are part of a larger `Test` class hierarchy representing channel and sensor configuration concepts.
---
## 2. Public Interface
### `Test.Module.Channel.Sensor.SensUnits` (enum)
**Location:** `Test.Module.Channel.Sensor.SensorUnits.cs`
Enumeration of sensitivity unit types for sensors.
| Member | Value | Description Attribute |
|--------|-------|----------------------|
| `NONE` | 0 | "NONE" - For polynomial sensors |
| `mV` | 1 | "mV" - Millivolts at capacity EU |
| `mVperV` | 2 | "mV/V" - Excitation proportional at capacity EU |
| `mVperVperEU` | 3 | "mV/V/EU" - Excitation proportional per EU |
| `mVperEU` | 4 | "mV/EU" - Millivolts per engineering unit |
---
### `Test.Module.Channel.Sensor.BridgeType` (enum)
**Location:** `Test.Module.Channel.Sensor.Bridge.cs`
Enumeration of bridge/sensor configuration types. Values are bit flags.
| Member | Value | Description Attribute |
|--------|-------|----------------------|
| `IEPE` | 1 (1 << 0) | "IEPE" |
| `QuarterBridge` | 2 (1 << 1) | "Quarter" |
| `HalfBridge` | 4 (1 << 2) | "Bridge-Half" |
| `FullBridge` | 8 (1 << 3) | "Bridge-Full" |
| `DigitalInput` | 16 (1 << 4) | "DigitalInput" |
| `SQUIB` | 32 (1 << 5) | "SQUIB" |
| `TOMDigital` | 64 (1 << 6) | "TOMDigital" |
| `HalfBridge_SigPlus` | 128 (1 << 7) | "Bridge-Half SigPlus" |
---
### `DigitalInputScaleMultiplier` (class)
**Location:** `DigitalInputScaleMultiplier.cs`
Transforms digital input data by mapping binary 0/1 values to arbitrary low/high display values.
**Nested Enum:**
```csharp
public enum Forms { ArbitraryLowAndHigh }
```
**Properties:**
- `Forms Form { get; set; }` — Default: `Forms.ArbitraryLowAndHigh`
- `double DefaultValue { get; set; }` — Value to display for digital 0 (OFF)
- `double ActiveValue { get; set; }` — Value to display for digital 1 (ON), default: `1.0`
**Constructors:**
```csharp
public DigitalInputScaleMultiplier() // Sets DefaultValue to 0.0
public DigitalInputScaleMultiplier(DigitalInputScaleMultiplier copy) // Copy constructor
```
**Methods:**
```csharp
public void FromDbSerializeString(string s)
```
Deserializes from a string format. Silently returns on null input. Throws `NotSupportedException` for invalid formats.
---
### `LinearizationFormula` (class)
**Location:** `LinearizationFormula.cs`
Holds linearization parameters for sensor calibration, supporting multiple formula styles.
**Properties:**
- `NonLinearStyles NonLinearStyle { get; set; }` — Default: `NonLinearStyles.IRTraccDiagnosticsZero`
- `double PolynomialSensitivity { get; set; }` — Default: `1.0`
- `double LinearizationExponent { get; set; }` — Default: `1.0`
- `double MMPerV { get; set; }` — Millimeters per volt (see Gotchas)
- `double MVAt0MM { get; set; }` — Millivol