DD.WellWorkover.Cloud/AsbCloudApp/Data/SAUB/TelemetryDataSaubDto.cs
2024-08-19 10:01:07 +05:00

235 lines
6.5 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data.SAUB;
/// <summary>
/// Сообщение получаемое по телеметрии и отправляемое в frontend
/// </summary>
public class TelemetryDataSaubDto : ITelemetryData
{
/// <summary>
/// метка времени данных
/// </summary>
[Required]
public DateTime DateTime { get; set; }
/// <summary>
/// Пользователь САУБ
/// </summary>
public int? IdUser { get; set; }
/// <summary>
/// Режим работы САУБ:
/// 0 - "РУЧНОЙ"
/// 1 - "БУРЕНИЕ В РОТОРЕ"
/// 2 - "ПРОРАБОТКА"
/// 3 - "БУРЕНИЕ В СЛАЙДЕ"
/// 4 - "СПУСК СПО"
/// 5 - "ПОДЪЕМ СПО"
/// 6 - "ПОДЪЕМ С ПРОРАБОТКОЙ"
/// 10 - "БЛОКИРОВКА"
/// </summary>
[Required]
public short Mode { get; set; }
/// <summary>
/// telemetry id
/// </summary>
public int IdTelemetry { get; set; }
/// <summary>
/// telemetry user
/// </summary>
public string? User { get; set; }
/// <summary>
/// Глубина забоя, м
/// </summary>
public float WellDepth { get; set; }
/// <summary>
/// Глубина долота, м
/// </summary>
public float BitDepth { get; set; }
/// <summary>
/// Талевый блок. Положение, м
/// </summary>
public float BlockPosition { get; set; }
/// <summary>
/// Талевый блок. Мин положение, м
/// </summary>
public float? BlockPositionMin { get; set; }
/// <summary>
/// Талевый блок. Макс положение, м
/// </summary>
public float? BlockPositionMax { get; set; }
/// <summary>
/// Талевый блок. Скорость, м/час
/// </summary>
public float? BlockSpeed { get; set; }
/// <summary>
/// Талевый блок. Задание скорости, м/час
/// </summary>
public float? BlockSpeedSp { get; set; }
/// <summary>
/// Талевый блок. Задание скорости для роторного бурения, м/час
/// </summary>
public float? BlockSpeedSpRotor { get; set; }
/// <summary>
/// Талевый блок. Задание скорости для режима слайда, м/час
/// </summary>
public float? BlockSpeedSpSlide { get; set; }
/// <summary>
/// Талевый блок. Задание скорости для проработки, м/час
/// </summary>
public float? BlockSpeedSpDevelop { get; set; }
/// <summary>
/// Давление, атм
/// </summary>
public float Pressure { get; set; }
/// <summary>
/// Давление при холостом ходе, атм
/// </summary>
public float? PressureIdle { get; set; }
/// <summary>
/// действующее задание давления, атм
/// </summary>
public float? PressureSp { get; set; }
/// <summary>
/// задание давления для роторного режима, атм
/// </summary>
public float? PressureSpRotor { get; set; }
/// <summary>
/// задание давления для режима слайда, атм
/// </summary>
public float? PressureSpSlide { get; set; }
/// <summary>
/// задание давления для проработки, атм
/// </summary>
public float? PressureSpDevelop { get; set; }
/// <summary>
/// ограничение макс перепада давления, атм
/// </summary>
public float? PressureDeltaLimitMax { get; set; }
/// <summary>
/// осевая нагрузка, т
/// </summary>
public float AxialLoad { get; set; }
/// <summary>
/// задание осевой нагрузки, т
/// </summary>
public float? AxialLoadSp { get; set; }
/// <summary>
/// ограничение макс. осевой нагрузки, т
/// </summary>
public float? AxialLoadLimitMax { get; set; }
/// <summary>
/// Вес на крюке, т
/// </summary>
public float HookWeight { get; set; }
/// <summary>
/// Вес на крюке на х.х., т
/// </summary>
public float? HookWeightIdle { get; set; }
/// <summary>
/// ограничение мин веса на крюке, т
/// </summary>
public float? HookWeightLimitMin { get; set; }
/// <summary>
/// ограничение макс веса на крюке, т
/// </summary>
public float? HookWeightLimitMax { get; set; }
/// <summary>
/// момент ротора, кН*м
/// </summary>
public float RotorTorque { get; set; }
/// <summary>
/// момент ротора на х.х., кН*м
/// </summary>
public float? RotorTorqueIdle { get; set; }
/// <summary>
/// задание момента ротора, кН*м
/// </summary>
public float? RotorTorqueSp { get; set; }
/// <summary>
/// ограничение момента ротора, кН*м
/// </summary>
public float? RotorTorqueLimitMax { get; set; }
/// <summary>
/// скорость ротора, об/мин
/// </summary>
public float RotorSpeed { get; set; }
/// <summary>
/// расход, л/с
/// </summary>
public float? Flow { get; set; }
/// <summary>
/// расход на х.х., л/с
/// </summary>
public float? FlowIdle { get; set; }
/// <summary>
/// ограничение макс расхода, л/с
/// </summary>
public float? FlowDeltaLimitMax { get; set; }
/// <summary>
/// id текущего критерия бурения
/// </summary>
public short? IdFeedRegulator { get; set; }
/// <summary>
/// Текущее состояние работы MSE
/// </summary>
public short? MseState { get; set; }
/// <summary>
/// MSE
/// </summary>
public float? Mse { get; set; }
/// <summary>
/// Расход. Буровой насос 1
/// </summary>
public float? Pump0Flow { get; set; }
/// <summary>
/// Расход. Буровой насос 2
/// </summary>
public float? Pump1Flow { get; set; }
/// <summary>
/// Расход. Буровой насос 3
/// </summary>
public float? Pump2Flow { get; set; }
}