-
Notifications
You must be signed in to change notification settings - Fork 130
Extension by HMI-, ADAS- and Dynamic-Values #286
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 26 commits
4312db9
3a843fa
9b6a571
229d818
41dda82
91dc773
cd52750
b287f06
c6c8247
4121c8c
efcfc0d
5f40263
14c3c27
43610bd
faa515f
acb2819
171b784
b95cdbf
33eb6b1
136a017
d174ff6
4bd9444
6b291b3
3da08fc
5bc4710
23b0b81
c964ef5
b0819ed
c04e1b0
a5c4503
08db67f
faa06f1
724b8b6
37460cc
94a7934
550d812
9397b9b
a243522
5497acd
c21be51
554382a
dc36283
a44a354
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,123 @@ | ||
| syntax = "proto2"; | ||
|
|
||
| option optimize_for = SPEED; | ||
|
|
||
| import "osi_common.proto"; | ||
| import "osi_common_extension.proto"; | ||
|
|
||
| package osi3; | ||
|
|
||
| // | ||
| // \brief An Interface to describe the communication of an ADAS-function. | ||
| // This proto is in far parts complementary to the osi_driver_inputs.proto. | ||
| // The inputs are divided into states and requests. | ||
| // | ||
| // The first set of signals are states the function sets internally | ||
| // and are relevant for the vehicle state. | ||
| // | ||
| message FunctionStates | ||
| { | ||
| // States of an ADAS-Function (SAE Level 3). | ||
| // | ||
| optional AdasSAELevel3 adas_saelevel3 = 1; | ||
|
|
||
| // States of the longitudinal control. | ||
| // | ||
| optional LongitudinalControl longitudinal_control = 2; | ||
|
|
||
| // States of the lateral control. | ||
| // | ||
| optional LateralControl lateral_control = 3; | ||
|
|
||
| // States of function Emergency-Brake-Assistant. | ||
| // | ||
| optional EmergencyBrakeAssistant emergency_brake_assistant = 4; | ||
|
|
||
| // Request that the driver has to take over. | ||
| // 0=Off; 1=On | ||
| // | ||
| optional bool driver_take_over_request = 5; | ||
|
|
||
| // Color of the steering wheel (e.g. to show the driving mode). | ||
| // See osi_common_extension. | ||
| // | ||
| optional ColorformatRGB steering_wheel_lighting_color = 6; | ||
|
|
||
| // Requested state of the blindspot-lights (often in the side mirrors). | ||
| // | ||
| enum BlindSpotWarning | ||
| { | ||
| // No warning. | ||
| // | ||
| BLIND_SPOT_WARNING_NONE = 0; | ||
|
|
||
| // Left warning. | ||
| // | ||
| BLIND_SPOT_WARNING_LEFT = 1; | ||
|
|
||
| // Right warning. | ||
| // | ||
| BLIND_SPOT_WARNING_RIGHT = 2; | ||
|
|
||
| // Warning on both sides. | ||
| // | ||
| BLIND_SPOT_WARNING_BOTH = 3; | ||
| } | ||
| } | ||
|
|
||
| // | ||
| // \brief An Interface to describe the communication of an ADAS-function. | ||
| // This proto is in far parts complementary to the osi_driver_inputs.proto. | ||
| // The inputs are divided into states and requests. | ||
| // | ||
| // The first set of signals are states the function sets internally | ||
| // and are relevant for the vehicle state. | ||
| // | ||
| message FunctionRequests | ||
|
||
| { | ||
| // All information about the trajectory the vehicle should follow. | ||
| // See osi_common_extension. | ||
| // | ||
| optional Trajectory trajectory = 1; | ||
|
|
||
| // Angle, angle-speed and torque. | ||
| // See osi_common_extension. | ||
| // | ||
| optional Steeringwheel steeringwheel = 2; | ||
|
|
||
| // Factor to scale the steeringtorque of the function output. | ||
| // 0-1 (0 = no force of the function, 0.5 = half the force, 1 = 100% Torque). | ||
| // | ||
| optional double steering_override_factor = 3; | ||
|
|
||
| // Acceleration-, brakepedal and clutch. | ||
| // See osi_common_extension. | ||
| // | ||
| optional Pedalry pedalry = 4; | ||
|
|
||
| // Position of the handbrake. | ||
| // 0-100 (percentage of position: Released - fully pressed) | ||
| // | ||
| optional double handbrake = 5; | ||
|
|
||
| // This is a description of the possible indicatorstates. | ||
| // | ||
| enum Indicators | ||
ThomasNaderBMW marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| { | ||
| // No indicator. | ||
| // | ||
| INDICATORS_NONE = 0; | ||
|
|
||
| // Left-indicator. | ||
| // | ||
| INDICATORS_LEFT = 1; | ||
|
|
||
| // Right-indicator. | ||
| // | ||
| INDICATORS_RIGHT = 2; | ||
|
|
||
| // Warning lights. | ||
| // | ||
| INDICATORS_ALL = 3; | ||
| } | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Way too specific in my opinion. If we start putting in something like this, you can basically argue to put in any system separately that any autonomous vehicle of any manufacturer might have, e.g. CyclistWarningAssistant, SpeedLimitAssistant, ActiveSideCollisionPreventionAssistant and so on. That has to be done in a better way, maybe by some dynamic content that is filled depending on configuration, with a set of possible values that we can define in OSI.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a good point. The dynamic-way could be a good solution. Sth that has to be discussed also with @CarloVanDriestenBMW and @pmai