@using RobotNet.RobotShares.VDA5050.State
Visualization
Localization
Initialized: @RobotStateSelected.AgvPosition.PositionInitialized
Quality: @RobotStateSelected.AgvPosition.LocalizationScore
DeviationRange: @RobotStateSelected.AgvPosition.DeviationRange
Battery
@($"Health: {Math.Round(RobotStateSelected.Battery.BatteryHealth, 1)}%")
@($"Voltage: {Math.Round(RobotStateSelected.Battery.BatteryVoltage, 1)}V")
@($"State: {Math.Round(RobotStateSelected.Battery.BatteryCharge, 1)}")
@($"Charging: {RobotStateSelected.Battery.Charging}")
Errors
@foreach (var error in RobotStateSelected.Errors)
{
@error.ErrorType
}
Notification
@foreach (var info in RobotStateSelected.Infomations)
{
@info.InfoType
}
@code {
private RobotInfomationDto RobotStateSelected = new();
private bool IsExpand = true;
public void ExpandedClick(bool value)
{
IsExpand = value;
StateHasChanged();
}
public void UpdateState(RobotInfomationDto data)
{
RobotStateSelected.Battery.BatteryVoltage = data.Battery.BatteryVoltage;
RobotStateSelected.Battery.BatteryHealth = data.Battery.BatteryHealth;
RobotStateSelected.Battery.BatteryCharge = data.Battery.BatteryCharge;
RobotStateSelected.Battery.Charging = data.Battery.Charging;
RobotStateSelected.AgvPosition.LocalizationScore = data.AgvPosition.LocalizationScore;
RobotStateSelected.AgvPosition.PositionInitialized = data.AgvPosition.PositionInitialized;
RobotStateSelected.AgvPosition.DeviationRange = data.AgvPosition.DeviationRange;
RobotStateSelected.AgvPosition.X = data.AgvPosition.X;
RobotStateSelected.AgvPosition.Y = data.AgvPosition.Y;
RobotStateSelected.AgvPosition.Theta = data.AgvPosition.Theta;
RobotStateSelected.AgvVelocity.Vx = data.AgvVelocity.Vx;
RobotStateSelected.AgvVelocity.Vy = data.AgvVelocity.Vy;
RobotStateSelected.AgvVelocity.Omega = data.AgvVelocity.Omega;
RobotStateSelected.Errors = [.. data.Errors];
RobotStateSelected.Infomations = [.. data.Infomations];
StateHasChanged();
}
}