From d3c321ddbfdcdcb2958bdbf8dd77158524fc7930 Mon Sep 17 00:00:00 2001 From: Erik Jaegervall Date: Fri, 24 May 2024 16:10:06 +0200 Subject: [PATCH] Add signals for Motion Management Signed-off-by: Erik Jaegervall --- docs-gen/content/_index.md | 1 + docs-gen/content/catalog/_index.md | 16 +++ .../catalog/vehicle_motion_management.md | 121 ++++++++++++++++++ spec/Vehicle/MotionManagement.vspec | 34 +++++ spec/Vehicle/MotionManagement/Brake.vspec | 60 +++++++++ .../Vehicle/MotionManagement/Brake/Axle.vspec | 48 +++++++ .../MotionManagement/Brake/Axle/Wheel.vspec | 49 +++++++ .../MotionManagement/ElectricAxle.vspec | 115 +++++++++++++++++ spec/Vehicle/MotionManagement/Steering.vspec | 34 +++++ .../MotionManagement/Steering/Axle.vspec | 51 ++++++++ .../Steering/SteeringWheel.vspec | 71 ++++++++++ spec/VehicleSignalSpecification.vspec | 2 + 12 files changed, 602 insertions(+) create mode 100644 docs-gen/content/catalog/_index.md create mode 100644 docs-gen/content/catalog/vehicle_motion_management.md create mode 100644 spec/Vehicle/MotionManagement.vspec create mode 100644 spec/Vehicle/MotionManagement/Brake.vspec create mode 100644 spec/Vehicle/MotionManagement/Brake/Axle.vspec create mode 100644 spec/Vehicle/MotionManagement/Brake/Axle/Wheel.vspec create mode 100644 spec/Vehicle/MotionManagement/ElectricAxle.vspec create mode 100644 spec/Vehicle/MotionManagement/Steering.vspec create mode 100644 spec/Vehicle/MotionManagement/Steering/Axle.vspec create mode 100644 spec/Vehicle/MotionManagement/Steering/SteeringWheel.vspec diff --git a/docs-gen/content/_index.md b/docs-gen/content/_index.md index 316d39ada..8cf64f1d0 100644 --- a/docs-gen/content/_index.md +++ b/docs-gen/content/_index.md @@ -14,5 +14,6 @@ about what the specification is all about, what's in and out and how to quickly * [Governance](/vehicle_signal_specification/governance/)
Introduction to VSS governance model and change log. * [Rule Set](/vehicle_signal_specification/rule_set/)
Get familiar with the rule set behind the specification, the structure, the format and concepts. +* [VSS Catalog](/vehicle_signal_specification/catalog/)
Information on content and design decisions related to the VSS catalog. * [License](/vehicle_signal_specification/license/)
Information on the VSS license. * [Ecosystem](/vehicle_signal_specification/ecosystem/) How to use the specification? Check out the existing tools and standards to transform or make use of VSS. diff --git a/docs-gen/content/catalog/_index.md b/docs-gen/content/catalog/_index.md new file mode 100644 index 000000000..22eb1cc60 --- /dev/null +++ b/docs-gen/content/catalog/_index.md @@ -0,0 +1,16 @@ +--- +title: VSS Catalog +weight: 25 +chapter: true +--- + +# VSS Catalog + +The source for the COVESA VSS Catalog can be found in `*.vspec` files in the [COVESA VSS Repository](https://github.com/COVESA/vehicle_signal_specification). +Released versions of the catalog in various formats can be found at [release artifacts](https://github.com/COVESA/vehicle_signal_specification/releases). + +Each signal in the VSS catalog has a `description` field and they may have a `comment` field. In some cases that is not sufficient to explain the rationale for the signal and how it is intended to be used. This section of the VSS documentation gives additional information on selected signal. + +## VSS Catalog Concepts + +* [Vehicle Motion Management](/vehicle_signal_specification/catalog/vehicle_motion_management) Information on the VSS concept for motion management. diff --git a/docs-gen/content/catalog/vehicle_motion_management.md b/docs-gen/content/catalog/vehicle_motion_management.md new file mode 100644 index 000000000..f1d15d9ac --- /dev/null +++ b/docs-gen/content/catalog/vehicle_motion_management.md @@ -0,0 +1,121 @@ +--- +title: "Vehicle Motion Management" +date: 2019-08-04T12:46:30+02:00 +weight: 7 +--- + +## Introduction + +In modern vehicles multiple electronic controlled systems are interacting to realize the overall vehicle motion in all physical directions. +Typically, the driver gives input e.g. using the steering wheel and the accelerator and brake pedals, but additional vehicle functions may have also requests towards the motion actuators. +One example is that a traction control system may want to limit the performance due to slippery road conditions or that the emergency braking system requests braking. + +A number of signals have been added to VSS related to powertrain (eAxle), steering and braking. +These signals may be used to define actuator interfaces to support a highly flexible functional deployment on different electronic control units. +Vehicle motion functions like driver brake request, cooperative regenerative braking and traction control system may request target values for longitudinal control on vehicle, axle and wheel level. +Therefore, generic interface signals for the braking systems are introduced which support an arbitration of the requested target values by minimum and maximum values. +The signal definitions for powertrain and steering are based on state-of-the art interfaces which are widely used in the automotive industry. +VSS does not specify the implementation of the interface signals and the arbitration cascade, but possible examples are given below. + + +## Definitions and Assumptions + +If nothing else is specified, the following definitions and assumptions apply + + +* The specified data types are chosen based on state-of-the art interfaces for vehicle internal communication between chassis ECUs. + All datatypes int/uint may represent decimal numbers, therefore additional computational methods could be specified in upcoming VSS releases. + +* Main guiding units for vehicle motion brake control: + * Vehicle level: Force requests + * Axle level: Torque requests + * Wheel level: Torque requests, omega limits (wheel-spin velocity according to ISO 8855) + + Brake forces on vehicle level are defined by the sum of all wheel forces that control the vehicle along the driving path. + Brake torques on axle level are defined as the sum of torques on all wheels on that axle. + Brake torques and omega limits on wheel level are defined for each individual wheel of the vehicle. + +* Signal orientation brake system: + Requests are positive in desired path direction of the vehicle. + The desired path direction is defined by the intended driving selection (P,R,D,N). + This means that a positive value indicates acceleration, a negative value deceleration with respect to the intended driving selection. +* Omega limits for brake system defined as relative to actual driving direction. This means that omega is never negative. +* Torque and Force distribution signals (between front/rear axle or left/right wheel) are based on the assumption that all wheels/axles exercise torque in the same direction, i.e. a single axle/wheel cannot fulfil more than 100% of the total request. + +* Signal orientation steering system: + Requests are defined according to ISO 8855. + For steering related signals, a positive request on the front axle unless otherwise stated yields to steer the vehicle to the left. + +* Signal orientation eAxle system: + Requests are defined according to ISO 8855. + This means that a positive torque yields to a force in vehicle forward direction and a negative torque yields to a force in backward direction. + Omega limits for eAxle system defined according. Positive sign for rotation in forward direction, negative sign for rotation in backward direction. + So the sign of current omega of a eAxle indicated the current driving direction. + +* All signals are defined in an automotive safety context, i.e. ISO 26262 has to be considered while using specified signals in vehicle applications. + +----------------------- + +## Sensors vs. Actuators + +The type `actuator` is selected to define that the signal may be used as a "request" by vehicle systems/services towards the actuator. +The type `sensor` is selected for signals that are processed by the actuator and may be used as actuator feedback towards the requesting vehicle systems/services. + +## Braking System +The defined braking signals are the main signals for interacting between vehicle motion features and the braking system including the arbitration of longitudinal vehicle requests. +The interface signals are specified on vehicle-, axle- and wheel-level and the arbitration concept supports a flexible integration of vehicle motion features on different ECUs. +The arbitration of multiple vehicle motion features can result in a sophisticated arbitration logic to ensure the vehicle stability and driver safety, which is not part of VSS signal catalogue. +However, the specified vehicle signals shall support different arbitration logics. +The following section shows some hypothetical examples for arbitration. + +### Example 1 - vehicle force requests (`Vehicle.MotionManagement.Brake.VehicleForceMaximum`) +Driver request via brake pedal -2000N. +Advanced driving assistance system for automated emergency brake has a request of -3000N. +As a result, a vehicle force of -3000N would be applied, to ensure maximum deceleration. + +## Example 2 distribution request (`Vehicle.MotionManagement.Brake.VehicleForceDistributionFrontMinimum`/ `Maximum`) + +Vehicle force request of -3000N of example 1. + +A vehicle energy function requests a AxlePercentRangeDistributionFrontMaximum of 100% to be most energy efficient. +The vehicle stability function could limit this distribution of 20% < x < 80% due to the current driving situation. +As a result, only 80% axle distribution would be arbitrated, e.g. -600N force (braking) on rear axle and -2400N force (braking) on front axle. + + +## Powertrain System (Electrical Axle) + +A vehicle may have an arbitrary number of electrical axles. Rotational speed and torque for an electrical axle refer to the axle coming out of the electrical axle unit. +There may be a transmission/gearbox between the electrical axle and the actual wheels served by the electrical axle. + +There are two operation modes of an eAxle: torque control or speed control. + +### Torque Control +A torque request (e.g. 50Nm) is realized by the eAxle. In addition, limit for the rotational speed can be defined, e.g. -5000 rpm ... +5000 rpm. These limits are useful to avoid too high wheelspin when the vehicle is on a slippery road. This mode is used most of the time, when the eAxle is active. + +### Speed Control +A rotational speed request (e.g., 1000rpm) is realized by the eAxle. This mode is useful for low speed till standstill, because so the vehicle can be controlled easier to a standstill, especially on a rough road. + +## Steering System + +The defined steering signals are the main signals for interacting between vehicle motion features and the steering system on the front axle and are widely used in automotive industry. +These signals are specified in a generic way to support various steering systems like electric power steering as well as Steer-by-Wire. Therefore, not all signals must necessarily be available/applicable. +The signal specification supports requests on steering wheel (torque and angle) and the steering rack position which is linked to the steered wheels of the vehicle. +The signal requests are further divided in "offset" and "target" signals, where an offset value is used additive to the functionality of the steering system and a "target" value is used as absolute external set-point for steering actuation. +The different requests are controlled by dedicated "mode" signals for enabling and disabling the steering requests. + +Examples: Driving in a left curve and applying external requests to steering system. +Based on the stationary driving without external request (config 1) the principle effects of the different steering interface signals are explained for each interface signal exlusively (config 2...6). +Depending on the concrete use case a combination of parallel requested interface signals is applicable. + +Config | Current.SteeringWheelTorque (Torque Applied by Driver) | Current.SteeringWheelAngle | Current.RackPositionFrontAxle | Result/Comment +-------------------------------------------------------------------------|--------------------------------------------------------|-----------------------------|--------------------------------|---- +`1`: Regular turn - No external request | 3 Nm | 20 degree | 4 mm | "Steering support" (e.g. power steering) require driver to apply 3 Nm to continue turning with same radius. +`2`. Lane Assist Intervention - `SteeringWheelTorqueOffsetTarget = 2 Nm` | 5 Nm* | 20 degree | 4 mm | Driver torque needs to be increased to continue turning with same radius +`3`. Torque Target Changed - `SteeringWheelTorqueTarget = 2 Nm` | 2 Nm* | 20 degree | 4 mm | Required driver torque set to 2 Nm (e.g. external steering feel for steer by wire), offset ignored. +`4`. Autonomuos Driving - `SteeringWheelAngleTarget = 0 deg` | ---** | 0 degree | 4 mm | Steering wheel set to 0 deg (e.g. automated driving with steer by wire and fixed steering wheel) +`5`. Stability intervention - `RackPositionOffsetFrontAxleTarget = 3 mm` | 3 Nm | 20 degree | 7 mm | Rack position increased by 3mm (e.g. vehicle stability intervention with steer by wire) +`6`. Autonomuous Driving - `RackPositionFrontAxleTarget = 3 mm` | ---** | 0 degree | 3 mm | Rack position set to 3 mm (e.g. automated driving), offset ignored + +`*` Assumption is that driver is holding the steering wheel at the same position as without external request + +`**` Steering wheel torque depending on driver input. Target request may be ignored if driver is applying torque (driver override). diff --git a/spec/Vehicle/MotionManagement.vspec b/spec/Vehicle/MotionManagement.vspec new file mode 100644 index 000000000..aa39a0b6c --- /dev/null +++ b/spec/Vehicle/MotionManagement.vspec @@ -0,0 +1,34 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# Motion Management concerns how steering, electrical axles and steering can be managed to +# control vehicle motion like accelaration adn deacceleration and assuring that the vehicle move +# in the wanted direction +# +# Please see vehicle_motion_management.md in documentation for more information + +MotionManagement: + type: branch + description: Motion Management Information. + +MotionManagement.ElectricAxle: + type: branch + instances: + - Row[1,2] + description: MotionManagement for a specific electric axle. +#include MotionManagement/ElectricAxle.vspec MotionManagement.ElectricAxle + +MotionManagement.Brake: + type: branch + description: MotionManagement related to braking (both frictions brakes and contribution from electric axles). +#include MotionManagement/Brake.vspec MotionManagement.Brake + +MotionManagement.Steering: + type: branch + description: MotionManagement related to steering. +#include MotionManagement/Steering.vspec MotionManagement.Steering diff --git a/spec/Vehicle/MotionManagement/Brake.vspec b/spec/Vehicle/MotionManagement/Brake.vspec new file mode 100644 index 000000000..636c860d6 --- /dev/null +++ b/spec/Vehicle/MotionManagement/Brake.vspec @@ -0,0 +1,60 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# See vehicle_motion_management.md for more info + +VehicleForceMaximum: + type: actuator + datatype: int16 + unit: N + max: 0 + description: Maximum longitudinal brake force request (FxWhlSum). + Sum of all tyre longitudinal forces. Brake Force < 0N. + +VehicleForceElectricMinimumArbitrated: + type: sensor + datatype: int16 + max: 0 + unit: N + description: Brake system internally calculated regenerative force limit at vehicle level for eAxle actuation. Brake Force < 0N. + +VehicleForceElectric: + type: actuator + datatype: int16 + max: 0 + unit: N + description: Regenerative brake force request (FxWhlSum). Sum of all tyre longitudinal forces. Brake Force < 0N. + +VehicleForceDistributionFrontMaximum: + type: actuator + datatype: uint16 + unit: percent + min: 0 + max: 100 + description: Maximum distribution range request of FxWhlSum to front axle. + 0% = Complete longitudinal brake force shall be shifted to rear axle. + 50% = At most 50% shall be shifted to front axle. + 100% = Complete longitudinal brake force may be shifted to front axle. + +VehicleForceDistributionFrontMinimum: + type: actuator + datatype: uint16 + unit: percent + min: 0 + max: 100 + description: Minimum distribution range request of FxWhlSum to front axle. + 0% = Complete longitudinal brake force may be shifted to rear axle. + 50% = At least 50% shall be shifted to front axle. + 100% = Complete longitudinal brake force shall be shifted to front axle. + +Axle: + type: branch + instances: + - Row[1,2] + description: MotionManagement for brake actuation for a specific electric axle. +#include Brake/Axle.vspec Axle diff --git a/spec/Vehicle/MotionManagement/Brake/Axle.vspec b/spec/Vehicle/MotionManagement/Brake/Axle.vspec new file mode 100644 index 000000000..82126f035 --- /dev/null +++ b/spec/Vehicle/MotionManagement/Brake/Axle.vspec @@ -0,0 +1,48 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +TorqueElectricMinimum: + type: actuator + datatype: int16 + max: 0.0 + unit: Nm + description: Limit for regenerative brake torque at given axle. Brake Torque < 0Nm. + +TorqueFrictionDifferenceMaximum: + type: actuator + datatype: uint16 + unit: Nm + description: Maximum absolute wheel torque difference between left and right wheel for friction brake. + +TorqueDistributionFrictionRightMaximum: + type: actuator + datatype: uint16 + unit: percent + min: 0 + max: 100 + description: Maximum distribution range of the friction brake request on the axle to the right wheel. + 0% = Complete friction torque shall be shifted to the left wheel. + 50% = At most 50% friction torque may be shifted to the right wheel. + 100% = Complete friction torque may be shifted to the right wheel. + +TorqueDistributionFrictionRightMinimum: + type: actuator + datatype: uint16 + unit: percent + min: 0 + max: 100 + description: Minimum distribution range of the friction brake request on the axle to the right wheel. + 0% = Complete friction torque may be shifted to the left wheel. + 50% = At least 50% friction torque shall be shifted to the right wheel. + 100% = Complete friction torque shall be shifted to the right wheel. + +Wheel: + type: branch + instances: ["Left","Right"] + description: MotionManagement signals for a specific wheel. +#include Axle/Wheel.vspec Wheel diff --git a/spec/Vehicle/MotionManagement/Brake/Axle/Wheel.vspec b/spec/Vehicle/MotionManagement/Brake/Axle/Wheel.vspec new file mode 100644 index 000000000..fc769727a --- /dev/null +++ b/spec/Vehicle/MotionManagement/Brake/Axle/Wheel.vspec @@ -0,0 +1,49 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# See vehicle_motion_management.md for more info + +Torque: + datatype: int16 + max: 0 + unit: Nm + type: sensor + description: Estimated friction brake torque. Brake Torque < 0Nm. + +TorqueArbitrated: + datatype: int16 + max: 0 + unit: Nm + type: sensor + description: Brake system internally calculated friction brake torque target. Brake Torque < 0Nm. + +TorqueFrictionMaximum: + type: actuator + datatype: int16 + max: 0 + unit: Nm + description: Maximum wheel torque request for friction brake. Brake Torque < 0Nm. + +TorqueFrictionMinimum: + type: actuator + datatype: int16 + max: 0 + unit: Nm + description: Minimum wheel torque request for friction brake. Brake Torque < 0Nm. + +OmegaUpper: + type: actuator + datatype: uint16 + unit: rad/s + description: Upper wheel speed limit request controlled by friction brake. ISO 8855 wheel-spin velocity. + +OmegaLower: + type: actuator + datatype: uint16 + unit: rad/s + description: Lower wheel speed limit request controlled by friction brake. ISO 8855 wheel-spin velocity. diff --git a/spec/Vehicle/MotionManagement/ElectricAxle.vspec b/spec/Vehicle/MotionManagement/ElectricAxle.vspec new file mode 100644 index 000000000..27076e956 --- /dev/null +++ b/spec/Vehicle/MotionManagement/ElectricAxle.vspec @@ -0,0 +1,115 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# See vehicle_motion_management.md for more info + +Torque: + type: sensor + datatype: int16 + unit: Nm + description: Axle torque, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueTarget: + type: actuator + datatype: int16 + unit: Nm + description: Target axle torque in torque control mode, positive sign for torque in forward direction, + negative sign for torque in backward direction (ISO8855). + +TorqueMaximum: + type: sensor + datatype: int16 + unit: Nm + description: Maximum momentarily available eAxle torque, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueMinimum: + type: sensor + datatype: int16 + unit: Nm + description: Minimum momentarily available eAxle torque, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueLongTermMaximum: + type: sensor + datatype: int16 + unit: Nm + description: Maximum long-term available eAxle torque, default time horizon = 10 sec, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueLongTermMinimum: + type: sensor + datatype: int16 + unit: Nm + description: Minimum long-term available eAxle torque, default time horizon = 10 sec, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueShortTermMaximum: + type: sensor + datatype: int16 + unit: Nm + description: Maximum short-term available eAxle torque, default time horizon = 1 sec, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueShortTermMinimum: + type: sensor + datatype: int16 + unit: Nm + description: Minimum short-term available eAxle torque, default time horizon = 1 sec, positive sign for torque in forward direction, + negative sign for torque in backward direction. + +TorqueMaximumLimit: + type: actuator + datatype: int16 + unit: Nm + description: Maximum allowed eAxle torque in rotation speed control mode, positive sign for torque in forward direction, + negative sign unused. + +TorqueMinimumLimit: + type: actuator + datatype: int16 + unit: Nm + description: Minimum allowed axle torque in rotation speed control mode, positive sign unused, + negative sign for torque in backward direction (ISO8855). + +RotationalSpeed: + type: sensor + datatype: int16 + unit: rpm + description: Rotational speed for the specified axle, + positive sign for rotation in forward direction, negative sign for rotation in backward direction. + +RotationalSpeedTarget: + type: actuator + datatype: int16 + unit: rpm + description: Target axle rotational speed in rotation speed control mode, + positive sign for rotation in forward direction, negative sign for rotation in backward direction. + +RotationalSpeedMaximumLimit: + type: actuator + datatype: int16 + unit: rpm + description: Maximum allowed axle rotational speed in torque control mode, positive sign for rotation in forward direction, + negative sign for rotation in backward direction. + +RotationalSpeedMinimumLimit: + type: actuator + datatype: int16 + unit: rpm + description: Minimum allowed axle rotational speed in torque control mode, positive sign for rotation in forward direction, + negative sign for rotation in backward direction. diff --git a/spec/Vehicle/MotionManagement/Steering.vspec b/spec/Vehicle/MotionManagement/Steering.vspec new file mode 100644 index 000000000..2024966c9 --- /dev/null +++ b/spec/Vehicle/MotionManagement/Steering.vspec @@ -0,0 +1,34 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# See vehicle_motion_management.md for more info + +# Steering related info divided into two branches +# Rationale is that there in some vehicles may be multiple steerable axis, and then +# MotionManagement.SteeringRack may be instanstiated with multiple axles. + + +SteeringWheel: + type: branch + description: MotionManagement related to steering wheel. +#include Steering/SteeringWheel.vspec SteeringWheel + +Axle: + type: branch + instances: + - Row[1,1] + description: MotionManagement related to a specific axle. +#include Steering/Axle.vspec Axle diff --git a/spec/Vehicle/MotionManagement/Steering/Axle.vspec b/spec/Vehicle/MotionManagement/Steering/Axle.vspec new file mode 100644 index 000000000..0a8b9755f --- /dev/null +++ b/spec/Vehicle/MotionManagement/Steering/Axle.vspec @@ -0,0 +1,51 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# See vehicle_motion_management.md for more info + +RackPositionOffsetTarget: + datatype: int16 + type: actuator + unit: mm + description: Rack position offset request to the axle steering actuator (for steer-by-wire), + added to the actuator internal calculated set-point. + Positive values without internal calculated set point change lead to a left movement of the vehicle (based on ISO8855). + +RackPositionOffsetTargetMode: + datatype: uint8 + type: actuator + description: Mode used for controlling rack position offset interface of axle steering actuator. + 0 indicates interface disabled. Other values activate vehicle specific modes. + +RackPosition: + datatype: int16 + type: sensor + unit: mm + description: Represents the current position of the steering rack on axle steering actuator. + Positive values leads to a left turn of the vehicle (based on ISO8855). + +RackPositionTarget: + datatype: int16 + type: actuator + unit: mm + description: Rack position request to the axle steering actuator (external set-point). + Positive values lead to a left turn of the vehicle (based on ISO8855). + +RackPositionTargetMode: + datatype: uint8 + type: actuator + description: Mode used for controlling rack position interface of axle steering actuator. + 0 indicates interface disabled. Other values activate vehicle specific modes. diff --git a/spec/Vehicle/MotionManagement/Steering/SteeringWheel.vspec b/spec/Vehicle/MotionManagement/Steering/SteeringWheel.vspec new file mode 100644 index 000000000..ed054d790 --- /dev/null +++ b/spec/Vehicle/MotionManagement/Steering/SteeringWheel.vspec @@ -0,0 +1,71 @@ +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# Copyright (c) 2024 Contributors to COVESA +# +# This program and the accompanying materials are made available under the +# terms of the Mozilla Public License 2.0 which is available at +# https://www.mozilla.org/en-US/MPL/2.0/ +# +# SPDX-License-Identifier: MPL-2.0 + +# See vehicle_motion_management.md for more info + +Angle: + datatype: int16 + type: sensor + unit: degrees + description: Represents the current input angle of the steering system, + typically corresponds to angle applied by driver on the steering-wheel. + Positive for angle in counterclockwise direction (based on ISO8855). + +AngleTarget: + datatype: int16 + type: actuator + unit: degrees + description: Steering-wheel angle request to the steering actuator (external set-point for steer-by-wire). + Positive sign for angle in counterclockwise direction (based on ISO8855). + +AngleTargetMode: + datatype: uint8 + type: actuator + description: Mode used for controlling Steering-wheel angle interface. 0 indicates interface disabled. + Other values activate vehicle specific modes. + +TorqueOffsetTarget: + datatype: int16 + type: actuator + unit: Nm + description: Steering-wheel torque offset request to the steering actuator, added to the actuator internal calculated target value. + Positive sign for torque in counterclockwise direction (based on ISO8855). + +TorqueOffsetTargetMode: + datatype: uint8 + type: actuator + description: Mode used for controlling steering-wheel torque offset interface. 0 indicates interface disabled. + Other values activate vehicle specific modes. + +TorqueTarget: + datatype: int16 + type: actuator + unit: Nm + description: Steering-wheel torque request to the steering actuator (external set-point for steer-by-wire). + Positive sign for torque in counterclockwise direction (based on ISO8855). + +TorqueTargetMode: + datatype: uint8 + type: actuator + description: Mode used for controlling Steering-wheel torque interface. 0 indicates interface disabled. + Other values activate vehicle specific modes. + +Torque: + datatype: int16 + type: sensor + unit: Nm + description: Represents the current input torque for steering system, typically corresponds to torque applied by driver on the steering wheel. + Positive for torque in counterclockwise direction (based on ISO8855). diff --git a/spec/VehicleSignalSpecification.vspec b/spec/VehicleSignalSpecification.vspec index 9f85acb54..b8f02e8f0 100644 --- a/spec/VehicleSignalSpecification.vspec +++ b/spec/VehicleSignalSpecification.vspec @@ -206,3 +206,5 @@ Vehicle.Connectivity: #include Vehicle/Connectivity.vspec Vehicle.Connectivity #include Vehicle/Diagnostics.vspec Vehicle + +#include Vehicle/MotionManagement.vspec Vehicle