COVESA / vehicle_signal_specification

Vehicle Signal Specification - standardized way to describe automotive data
Mozilla Public License 2.0
307 stars 157 forks source link

Representing signals in VSS tree #727

Open raksac opened 4 months ago

raksac commented 4 months ago

I am looking for some advice on representing engine ignition state in VSS consistently across the different Vehicle.Powertrain.Type {COMBUSTION, HYBRID, ELECTRIC}.

eg: Vehicle.PowerTrain.CombustionEngine.IsRunning indicates whether the ignition is currently on or off

erikbosch commented 4 months ago

Good question, what we have in VSS today is among others the signal below which maybe cover parts of what you are looking for.

LowVoltageSystemState:
  datatype: string
  type: sensor
  allowed: [
    'UNDEFINED', # State of low voltage system not known
    'LOCK',      # Low voltage system off, steering lock or equivalent engaged
    'OFF',       # Low voltage system off, steering lock or equivalent not engaged
    'ACC',       # Vehicle Accessories on/living
    'ON',        # Engine start enabled (e.g. ignition on, diesel pre-heating, electrical drive released)
    'START'      # Engine starter relay closed (not applicable for electrical vehicles)
    ]
  description: State of the supply voltage of the control units (usually 12V).

It was originally intended to mimic typical states for a physical ignition switch, but may roughly match "vehicle state" also for keyless vehicles and electrical vehicle. The CombustionEngine.IsRunning signal has a possibly different meaning as it indicates if the engine is rotating. For electrical motors we have no similar signal as of today, even if an app could create a similar conclusion by checking/comparing the motor speed (rpm). There is a related PR #725 where a time counter for electrical vehicles is proposed, in it current version if refer to "READY" state, but as of today we do not have any signal that indicates "READY"

Could you possible say something about your intended use-case. Do you want to monitor if a specific motor (or any motor) is rotating, or are you rather interested in if a specific motor (or any motor) is enabled/ready? Like if you are waiting at a red light with a hybrid vehicle, what information would you like to get? In that case possibly neither the electric motor not the combustion engine are rotating, but they might both be enabled/ready and ready to start delivering power as soon as you press the gas pedal.

erikbosch commented 4 months ago

MoM: Presented at VSS meeting