APM/Assets/Scripting/VDA5050/RobotVDA5050State.cs
2025-11-17 15:02:30 +07:00

289 lines
8.1 KiB
C#

using Newtonsoft.Json;
using System;
public class SendState
{
[JsonProperty("headerId")]
public uint HeaderId { get; set; }
[JsonProperty("timestamp")]
public string Timestamp { get; set; }
[JsonProperty("version")]
public string Version { get; set; }
[JsonProperty("manufacturer")]
public string Manufacturer { get; set; }
[JsonProperty("serialNumber")]
public string SerialNumber { get; set; }
[JsonProperty("maps")]
public Map[] Maps { get; set; }
[JsonProperty("orderId")]
public string OrderId { get; set; }
[JsonProperty("orderUpdateId")]
public int OrderUpdateId { get; set; }
[JsonProperty("zoneSetId")]
public string ZoneSetId { get; set; }
[JsonProperty("lastNodeId")]
public string LastNodeId { get; set; }
[JsonProperty("lastNodeSequenceId")]
public int LastNodeSequenceId { get; set; }
[JsonProperty("nodeStates")]
public NodeState[] NodeStates { get; set; }
[JsonProperty("edgeStates")]
public EdgeState[] EdgeStates { get; set; }
[JsonProperty("driving")]
public bool Driving { get; set; }
[JsonProperty("paused")]
public bool Paused { get; set; }
[JsonProperty("newBaseRequest")]
public bool NewBaseRequest { get; set; }
[JsonProperty("distanceSinceLastNode")]
public float DistanceSinceLastNode { get; set; }
[JsonProperty("agvPosition")]
public AgvPosition AgvPosition { get; set; }
[JsonProperty("velocity")]
public Velocity Velocity { get; set; }
[JsonProperty("loads")]
public Load[] Loads { get; set; }
[JsonProperty("actionStates")]
public ActionState[] ActionStates { get; set; }
[JsonProperty("batteryState")]
public BatteryState BatteryState { get; set; }
[JsonProperty("operatingMode")]
public string OperatingMode { get; set; }
[JsonProperty("errors")]
public Error[] Errors { get; set; }
[JsonProperty("information")]
public Information[] Information { get; set; }
[JsonProperty("safetyState")]
public SafetyState SafetyState { get; set; }
}
public class CancelConfirmationData
{
[JsonProperty("headerId")]
public int HeaderId { get; set; }
[JsonProperty("timestamp")]
public string Timestamp { get; set; }
[JsonProperty("version")]
public string Version { get; set; }
[JsonProperty("manufacturer")]
public string Manufacturer { get; set; }
[JsonProperty("serialNumber")]
public string SerialNumber { get; set; }
[JsonProperty("actionStates")]
public ActionState[] ActionStates { get; set; }
}
public class Map
{
[JsonProperty("mapId")]
public string MapId { get; set; }
[JsonProperty("mapVersion")]
public string MapVersion { get; set; }
[JsonProperty("mapDescription")]
public string MapDescription { get; set; }
[JsonProperty("mapStatus")]
public string MapStatus { get; set; }
}
public class NodeState
{
[JsonProperty("nodeId")]
public string NodeId { get; set; }
[JsonProperty("sequenceId")]
public int SequenceId { get; set; }
[JsonProperty("nodeDescription")]
public string NodeDescription { get; set; }
[JsonProperty("released")]
public bool Released { get; set; }
[JsonProperty("nodeStatus")]
public NodePosition NodePosition { get; set; }
}
public class EdgeState
{
[JsonProperty("edgeId")]
public string EdgeId { get; set; }
[JsonProperty("sequenceId")]
public int SequenceId { get; set; }
[JsonProperty("edgeDescription")]
public string EdgeDescription { get; set; }
[JsonProperty("released")]
public bool Released { get; set; }
[JsonProperty("trajectory")]
public Trajectory Trajectory { get; set; }
}
public class AgvPosition
{
[JsonProperty("x")]
public float X { get; set; }
[JsonProperty("y")]
public float Y { get; set; }
[JsonProperty("theta")]
public float Theta { get; set; }
[JsonProperty("mapId")]
public string MapId { get; set; }
[JsonProperty("mapDescription")]
public string MapDescription { get; set; }
[JsonProperty("positionInitialized")]
public bool PositionInitialized { get; set; }
[JsonProperty("positionStatus")]
public float LocalizationScore { get; set; }
[JsonProperty("deviationRange")]
public float DeviationRange { get; set; }
}
public class Velocity
{
[JsonProperty("vx")]
public float Vx { get; set; }
[JsonProperty("vy")]
public float Vy { get; set; }
[JsonProperty("omega")]
public float Omega { get; set; }
}
public class Load
{
[JsonProperty("loadId")]
public string LoadId { get; set; }
[JsonProperty("loadType")]
public string LoadType { get; set; }
[JsonProperty("loadPosition")]
public string LoadPosition { get; set; }
[JsonProperty("boundingBoxReference")]
public BoundingBoxReference BoundingBoxReference { get; set; }
[JsonProperty("loadDimensions")]
public LoadDimensions LoadDimensions { get; set; }
[JsonProperty("weight")]
public float Weight { get; set; }
}
public class BoundingBoxReference
{
[JsonProperty("x")]
public float X { get; set; }
[JsonProperty("y")]
public float Y { get; set; }
[JsonProperty("z")]
public float Z { get; set; }
[JsonProperty("theta")]
public float Theta { get; set; }
}
public class LoadDimensions
{
[JsonProperty("length")]
public float Length { get; set; }
[JsonProperty("width")]
public float Width { get; set; }
[JsonProperty("height")]
public float Height { get; set; }
}
public class ActionState
{
[JsonProperty("actionId")]
public string ActionId { get; set; }
[JsonProperty("actionType")]
public string ActionType { get; set; }
[JsonProperty("actionDescription")]
public string ActionDescription { get; set; }
[JsonProperty("actionStatus")]
public string ActionStatus { get; set; }
[JsonProperty("resultDescription")]
public string ResultDescription { get; set; }
}
public class BatteryState
{
[JsonProperty("batteryCharge")]
public float BatteryCharge { get; set; }
[JsonProperty("batteryVoltage")]
public float BatteryVoltage { get; set; }
[JsonProperty("batteryHealth")]
public float BatteryHealth { get; set; }
[JsonProperty("charging")]
public bool Charging { get; set; }
[JsonProperty("reach")]
public float Reach { get; set; }
}
public class Error
{
[JsonProperty("errorType")]
public string ErrorType { get; set; }
[JsonProperty("errorReferences")]
public ErrorReference[] ErrorReferences { get; set; }
[JsonProperty("errorDescription")]
public string ErrorDescription { get; set; }
[JsonProperty("errorHint")]
public string ErrorHint { get; set; }
[JsonProperty("errorLevel")]
public string ErrorLevel { get; set; }
}
public class ErrorReference
{
[JsonProperty("referenceKey")]
public string ReferenceKey { get; set; }
[JsonProperty("referenceValue")]
public string ReferenceValue { get; set; }
}
public class Information
{
[JsonProperty("infoType")]
public string InfoType { get; set; }
[JsonProperty("infoReferences")]
public InfoReference[] InfoReferences { get; set; }
[JsonProperty("infoDescription")]
public string InfoDescription { get; set; }
[JsonProperty("infoLevel")]
public string InfoLevel { get; set; }
}
public class InfoReference
{
[JsonProperty("referenceKey")]
public string ReferenceKey { get; set; }
[JsonProperty("referenceValue")]
public string ReferenceValue { get; set; }
}
public class SafetyState
{
[JsonProperty("eStop")]
public string EStop { get; set; }
[JsonProperty("fieldViolation")]
public bool FieldViolation { get; set; }
}
public class Trajectory
{
[JsonProperty("degree")]
public int Degree { get; set; }
[JsonProperty("knotVector")]
public float[] KnotVector { get; set; }
[JsonProperty("controlPoints")]
public ControlPoint[] ControlPoints { get; set; }
}
public class ControlPoint
{
[JsonProperty("x")]
public float X { get; set; }
[JsonProperty("y")]
public float Y { get; set; }
[JsonProperty("weight")]
public float Weight { get; set; }
}