120 lines
6.8 KiB
Markdown
120 lines
6.8 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/ITriggerCheck.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IOptimizationValues.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/ITCDiagnosticResults.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/ICanDiagnosticResults.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IDiagnosticMessagesDevice.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/ICanDiagnosticResult.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IArmCheckActions.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IModuleDiagnosticsResult.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/ITriggerCheckResult.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/ITCDiagnosticResult.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IArmCheckResults.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IDiagnos.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IDiagnosticActions.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IBaseInputValues.cs
|
||
|
|
- Common/DTS.Common/Interface/DASFactory/Diagnostics/IDiagnosticResult.cs
|
||
|
|
generated_at: "2026-04-17T15:29:33.942610+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "2fd64d6b1583117e"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Diagnostics Interface Module Documentation
|
||
|
|
|
||
|
|
## 1. Purpose
|
||
|
|
|
||
|
|
This module defines the contract interfaces for the Data Acquisition System (DAS) diagnostics subsystem within the DTS framework. It provides abstractions for configuring, executing, and storing results of diagnostic operations including channel calibration, sensor verification, arm checks, trigger monitoring, CAN bus diagnostics, and thermocouple (TC) diagnostics. These interfaces enable a decoupled architecture where concrete implementations can vary across different DAS hardware platforms (e.g., TDAS Pro, SLICE Pro) while maintaining consistent diagnostic capabilities.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Public Interface
|
||
|
|
|
||
|
|
### `ITriggerCheck`
|
||
|
|
Simple container interface for trigger check results.
|
||
|
|
```csharp
|
||
|
|
ITriggerCheckResult TriggerCheckResult { get; set; }
|
||
|
|
```
|
||
|
|
|
||
|
|
### `ITriggerCheckResult`
|
||
|
|
Represents the state of trigger and start-record lines on a DAS unit.
|
||
|
|
| Property | Type | Description |
|
||
|
|
|----------|------|-------------|
|
||
|
|
| `IsStatusGood` | `bool` | Indicates if DAS status is good |
|
||
|
|
| `IsStartRecordActive` | `bool` | Indicates if start record line is currently active |
|
||
|
|
| `HasStartRecordBeenActive` | `bool` | Indicates if start record line was active at any point after arm |
|
||
|
|
| `IsTriggered` | `bool` | Indicates if trigger is currently active |
|
||
|
|
| `HasTriggered` | `bool` | Indicates if trigger line was active at any point after arm |
|
||
|
|
|
||
|
|
### `IOptimizationValues`
|
||
|
|
Stores optimization settings for real-time optimization (FB 6416).
|
||
|
|
```csharp
|
||
|
|
float TransferSpeed { get; set; }
|
||
|
|
```
|
||
|
|
|
||
|
|
### `IDiagnos`
|
||
|
|
The primary aggregating interface for all diagnostic operations and results.
|
||
|
|
| Property | Type | Description |
|
||
|
|
|----------|------|-------------|
|
||
|
|
| `ChannelDiagnostics` | `IDiagnosticActions[]` | Array of diagnostic action configurations per channel |
|
||
|
|
| `ChannelDiagnosticsResults` | `IDiagnosticResult[]` | Array of diagnostic results per channel |
|
||
|
|
| `ModuleDiagnosticsResults` | `IModuleDiagnosticsResult[]` | Module-level temperature diagnostics |
|
||
|
|
| `BaseInput` | `IBaseInputValues` | Base unit input/power values |
|
||
|
|
| `DASClockSyncStatus` | `IDictionary<InputClockSource, bool>` | Clock synchronization status per source |
|
||
|
|
| `ClockSyncInUTC` | `bool` | Whether clock sync is in UTC |
|
||
|
|
| `PTPDomainID` | `byte` | PTP domain identifier |
|
||
|
|
| `ArmCheckActions` | `IArmCheckActions` | Configuration of which arm checks to perform |
|
||
|
|
| `ArmCheckResults` | `IArmCheckResults` | Results from arm check operations |
|
||
|
|
| `OptimizationValues` | `IOptimizationValues` | Real-time optimization settings |
|
||
|
|
|
||
|
|
| Method | Description |
|
||
|
|
|--------|-------------|
|
||
|
|
| `void SetChannelDiagnosticActions(IDiagnosticActions[] actions, bool setInDb = true)` | Sets diagnostic action configurations |
|
||
|
|
| `void ClearChannelDiagnosticsResults(bool bClearDb = true)` | Clears all channel diagnostic results |
|
||
|
|
| `void SetChannelDiagnosticsResults(IDiagnosticResult[] results, bool setInDb)` | Sets channel diagnostic results |
|
||
|
|
|
||
|
|
### `IDiagnosticActions`
|
||
|
|
Configures which diagnostic tests to perform on a specific DAS channel.
|
||
|
|
| Property | Type | Description |
|
||
|
|
|----------|------|-------------|
|
||
|
|
| `DASChannelNumber` | `int` | Target channel number |
|
||
|
|
| `MeasureExcitation` | `bool` | Measure excitation voltage applied to sensor |
|
||
|
|
| `MeasureOffset` | `bool` | Measure sensor offset from zero |
|
||
|
|
| `CheckDigitalState` | `bool` | Check open/closed/low/high state of digital input |
|
||
|
|
| `MeasureInternalOffset` | `bool` | Measure internal offset |
|
||
|
|
| `RemoveOffset` | `bool` | Have firmware compensate for sensor offset |
|
||
|
|
| `MeasureNoise` | `bool` | Measure noise floor as percentage of full scale |
|
||
|
|
| `PerformShuntCheck` | `bool` | Perform emulated shunt check |
|
||
|
|
| `SquibFireCheck` | `bool` | Run squib fire check on channel |
|
||
|
|
| `PerformVoltageInsertCheck` | `bool` | Perform voltage insertion gain check (SLICE Pro) |
|
||
|
|
| `PerformCalSignalCheck` | `bool` | Perform calibration signal check |
|
||
|
|
| `MeasureBridgeResistance` | `bool` | Measure bridge resistance |
|
||
|
|
|
||
|
|
| Method | Description |
|
||
|
|
|--------|-------------|
|
||
|
|
| `bool AllActionsDisabled()` | Returns true if all diagnostic actions are disabled |
|
||
|
|
|
||
|
|
### `IDiagnosticResult`
|
||
|
|
Contains results from diagnostic operations on a single channel.
|
||
|
|
| Property | Type | Description |
|
||
|
|
|----------|------|-------------|
|
||
|
|
| `DASChannelNumber` | `int` | Source channel number |
|
||
|
|
| `EventNumber` | `int` | Associated event number |
|
||
|
|
| `ScalefactorMilliVoltsPerADC` | `double` | Scale factor for raw ADC to millivolts |
|
||
|
|
| `ScalefactorEngineeringUnitsPerADC` | `double` | Scale factor for raw ADC to engineering units |
|
||
|
|
| `ExpectedExcitationMilliVolts` | `double` | Factory excitation value |
|
||
|
|
| `MeasuredExcitationMilliVolts` | `double?` | Measured excitation voltage (null if not measured) |
|
||
|
|
| `NegativeExcitation` | `bool` | Flag for negative excitation reading (legacy TDC/TDAS compatibility) |
|
||
|
|
| `MeasuredOffsetMilliVolts` | `double?` | Measured sensor offset in mV |
|
||
|
|
| `MeasuredInternalOffsetMilliVolts` | `double?` | Measured internal offset in mV |
|
||
|
|
| `MeasuredOffsetEngineeringUnits` | `double?` | Measured offset in engineering units |
|
||
|
|
| `AutoZeroPercentDeviation` | `double?` | Deviation from zero during auto-zero |
|
||
|
|
| `FinalOffsetADC` | `short?` | Remaining offset after offset removal |
|
||
|
|
| `RemovedOffsetADC` | `int?` | Amount of offset removed |
|
||
|
|
| `RemovedInternalOffsetADC` | `int?` | Amount of internal offset removed |
|
||
|
|
| `NoisePercentFullScale` | `double?` | Noise as percentage of full scale |
|
||
|
|
| `ShuntDeflectionFailed` | `bool` | Whether shunt check failed |
|
||
|
|
| `CalSignalCheckFailed` | `bool` | Whether cal signal check failed |
|
||
|
|
| `MeasuredShuntDeflectionMv` | `double?` | Measured shunt deflection in mV |
|
||
|
|
| `TargetShuntDeflection
|