From be48b6f013fe68c1d55743a10af67416819f4634 Mon Sep 17 00:00:00 2001 From: Hirek193 Date: Sun, 6 Sep 2026 00:59:46 +0200 Subject: [PATCH] Add engine voltage parameter --- hardware/registry/state_registry.cpp | 1 + vehicle/Train.cpp | 1 + vehicle/Train.h | 1 + 3 files changed, 3 insertions(+) diff --git a/hardware/registry/state_registry.cpp b/hardware/registry/state_registry.cpp index 916a2af5..bace0d34 100644 --- a/hardware/registry/state_registry.cpp +++ b/hardware/registry/state_registry.cpp @@ -125,6 +125,7 @@ state_registry::state_registry() add( "hv_current_1", value_type::float32, "A", -5000.0, 5000.0, []( state_snapshot const &s ) { return make_value( s, value_type::float32, s.train.hv_current[ 0 ], s.electric ); } ); add( "hv_current_2", value_type::float32, "A", -5000.0, 5000.0, []( state_snapshot const &s ) { return make_value( s, value_type::float32, s.train.hv_current[ 1 ], s.electric ); } ); add( "hv_current_3", value_type::float32, "A", -5000.0, 5000.0, []( state_snapshot const &s ) { return make_value( s, value_type::float32, s.train.hv_current[ 2 ], s.electric ); } ); + add( "engine_voltage", value_type::float64, "V", 0, 40000.0, []( state_snapshot const &s ) { return make_value( s, value_type::float64, s.train.enginevoltage, s.electric ); } ); add( "lv_voltage", value_type::float32, "V", 0.0, 200.0, []( state_snapshot const &s ) { return make_value( s, value_type::float32, s.train.lv_voltage ); } ); add( "distance", value_type::float64, "m", {}, {}, []( state_snapshot const &s ) { return make_value( s, value_type::float64, s.train.distance ); } ); diff --git a/vehicle/Train.cpp b/vehicle/Train.cpp index 8d2117c4..def4abe8 100644 --- a/vehicle/Train.cpp +++ b/vehicle/Train.cpp @@ -953,6 +953,7 @@ TTrain::state_t TTrain::get_state() const static_cast(mvPantographUnit->PantPress), fHVoltage, {fHCurrent[mvControlled->TrainType & dt_EZT ? 0 : 1], fHCurrent[2], fHCurrent[3]}, + mvOccupied->EngineVoltage, ggLVoltage.GetValue(), mvOccupied->DistCounter, static_cast(RadioChannel()), diff --git a/vehicle/Train.h b/vehicle/Train.h index 7627bbf8..0d88d63d 100644 --- a/vehicle/Train.h +++ b/vehicle/Train.h @@ -108,6 +108,7 @@ class TTrain { float pantograph_pressure; float hv_voltage; std::array hv_current; + double enginevoltage; float lv_voltage; double distance; std::uint8_t radio_channel;