first commit -push

This commit is contained in:
dungtt
2025-10-15 15:15:53 +07:00
parent 674ae395be
commit a9577c5756
885 changed files with 74595 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public enum ActionStatus
{
WAITING,
INITIALIZING,
RUNNING,
PAUSED,
FINISHED,
FAILED,
}
public class ActionState
{
public string ActionType { get; set; }
[Required]
public string ActionId { get; set; }
public string ActionDescription { get; set; }
[Required]
public string ActionStatus { get; set; }
public string ResultDescription { get; set; }
}

View File

@@ -0,0 +1,15 @@
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
public class BatteryState
{
[Required]
public double BatteryCharge { get; set; }
public double BatteryVoltage { get; set; }
[Range(0, 100, ErrorMessage = "Value for BatteryHealth must be between 0 and 100.")]
public double BatteryHealth { get; set; }
[Required]
public bool Charging { get; set; }
public double Reach { get; set; }
}

View File

@@ -0,0 +1,19 @@
using RobotNet.RobotShares.VDA5050.Order;
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public class EdgeState
{
[Required]
public string EdgeId { get; set; }
[Required]
public int SequenceId { get; set; }
public string EdgeDescription { get; set; }
[Required]
public bool Released { get; set; }
public Trajectory Trajectory { get; set; }
}

View File

@@ -0,0 +1,29 @@
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public enum ErrorLevel
{
NONE,
WARNING,
FATAL
}
public class ErrorReferences
{
[Required]
public string ReferenceKey { get; set; }
[Required]
public string ReferenceValue { get; set; }
}
public class Error
{
[Required]
public string ErrorType { get; set; }
public ErrorReferences[] ErrorReferences { get; set; }
public string ErrorDescription { get; set; }
public string ErrorHint { get; set; }
[Required]
public string ErrorLevel { get; set; }
}

View File

@@ -0,0 +1,27 @@
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public enum InfoLevel
{
INFO,
DEBUG
}
public class InfomationReferences
{
[Required]
public string ReferenceKey { get; set; }
[Required]
public string ReferenceValue { get; set; }
}
public class Information
{
[Required]
public string InfoType { get; set; }
public InfomationReferences[] InfoReferences { get; set; }
public string InfoDescription { get; set; }
[Required]
public string InfoLevel { get; set; }
}

View File

@@ -0,0 +1,16 @@
using RobotNet.RobotShares.VDA5050.Factsheet;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public class Load
{
public string LoadId { get; set; }
public string LoadType { get; set; }
public string LoadPosition { get; set; }
public BoundingBoxReference BoundingBoxReference { get; set; }
public LoadDimensions LoadDimensions { get; set; }
public double Weight { get; set; }
}

View File

@@ -0,0 +1,20 @@
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
public enum MapStatus
{
Enabled,
Disabled,
}
public class Map
{
[Required]
public string MapId { get; set; } = string.Empty;
[Required]
public string MapVersion { get; set; } = string.Empty;
public string MapDescription { get; set; } = string.Empty;
[Required]
public string MapStatus { get; set; } = string.Empty;
}

View File

@@ -0,0 +1,30 @@
using RobotNet.RobotShares.VDA5050.Order;
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public class NodeState
{
[Required]
public string NodeId { get; set; }
[Required]
public int SequenceId { get; set; }
public string NodeDescription { get; set; }
[Required]
public bool Released { get; set; }
public NodePosition NodePosition { get; set; }
}
public class NodePosition
{
[Required]
public double X { get; set; }
[Required]
public double Y { get; set; }
public double Theta { get; set; }
[Required]
public string MapId { get; set; } = "";
}

View File

@@ -0,0 +1,20 @@
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
public enum EStop
{
AUTOACK,
MANUAL,
REMOTE,
NONE,
}
public class SafetyState
{
[Required]
public string? EStop { get; set; }
[Required]
public bool FieldViolation { get; set; }
}

View File

@@ -0,0 +1,61 @@
using RobotNet.RobotShares.VDA5050.Visualization;
using System.ComponentModel.DataAnnotations;
namespace RobotNet.RobotShares.VDA5050.State;
#nullable disable
public enum OperatingMode
{
AUTOMATIC,
SEMIAUTOMATIC,
MANUAL,
SERVICE,
TEACHIN,
}
public class StateMsg
{
[Required]
public uint HeaderId { get; set; }
[Required]
public string Timestamp { get; set; }
[Required]
public string Version { get; set; }
[Required]
public string Manufacturer { get; set; }
[Required]
public string SerialNumber { get; set; }
public Map[] Maps { get; set; } = [];
[Required]
public string OrderId { get; set; }
[Required]
public int OrderUpdateId { get; set; }
public string ZoneSetId { get; set; }
[Required]
public string LastNodeId { get; set; }
[Required]
public int LastNodeSequenceId { get; set; }
[Required]
public bool Driving { get; set; }
public bool Paused { get; set; }
public bool NewBaseRequest { get; set; }
public double DistanceSinceLastNode { get; set; }
[Required]
public string OperatingMode { get; set; }
[Required]
public NodeState[] NodeStates { get; set; } = [];
[Required]
public EdgeState[] EdgeStates { get; set; } = [];
public AgvPosition AgvPosition { get; set; } = new();
public Velocity Velocity { get; set; } = new();
public Load[] Loads { get; set; } = [];
[Required]
public ActionState[] ActionStates { get; set; } = [];
[Required]
public BatteryState BatteryState { get; set; } = new();
[Required]
public Error[] Errors { get; set; } = [];
public Information[] Information { get; set; } = [];
[Required]
public SafetyState SafetyState { get; set; } = new();
}