Skip to content
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

adding ObstacleDetection and Adaptive Cruise control signals #770

Closed
wants to merge 4 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions spec/ADAS/ADAS.vspec
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,18 @@ CruiseControl.IsError:
type: sensor
description: Indicates if cruise control system incurred an error condition. True = Error. False = No Error.

CruiseControl.IsAdaptiveActive:
datatype: boolean
type: actuator
description: Indicates if adaptive cruise control system is active (i.e. actively controls speed).
True = Active. False = Inactive.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to clarify meaning of false? Like what should this signal show if cruise control is active but not in adaptive mode (i.e. it is in old fashioned mode were it keeps the speed until you press the brake pedal or crashes)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to my knowledge, there is either adapative or non adaptive cruise control. But it does not change. This signal would just provide the info of what is active in the vehicle...

Copy link
Contributor Author

@tguild tguild Sep 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We discussed this further on the Commercial Vehicles' insurance focused breakout call and looked over some of the other nearby (obstacle) signals that exist in production vehicles we would like to see in VSS. Specifically we were looking at left and right blind spot detection mentioned previously and rear cross traffic detection.

ObstacleDetection as it is presently exists in VSS could handle this if there are multiple leaf nodes and well known (defined locations) similar to how multiple tires, seats etc with some generalized optional attributes for
things like warning type, distance, timegap (desired but debatable). Vehicle.ADAS.ObstacleDetection.Front.Distance for example in place of ObstacleDetection.ForwardDistance as was in this PR.

WarningType can have various allowed values such as CROSS_TRAFFIC so that we know it is detecting a moving instead of stationary object at Vehicle.ADAS.ObstacleDetection.Rear.WarningType when Vehicle.ADAS.ObstacleDetection.Rear.IsWarning is True.

Vehicle.ADAS.ObstacleDetection.Left.WarningType=BLINDSPOT and Vehicle.ADAS.ObstacleDetection.Left.IsWarning=True would indicate the presence of a vehicle in the left blind spot as another example.

Instead of scrapping and proposing a new PR, hope to discuss on an upcoming VSS call as there may be other thoughts on how to represent these.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We also decided in CV call that we should focus on mainstream production vehicles with their existing sensors and leave aside more complex configurations of evolving AV/ADAS for the time being. We would be interested in participating in discussion on future proofing VSS signals.


CruiseControl.AdaptiveDistanceSet:
datatype: float
type: actuator
unit: m
description: Distance in meters to keep from lead vehicle

#
# Lane Departure Detection System
#
Expand Down Expand Up @@ -131,6 +143,18 @@ ObstacleDetection.IsError:
type: sensor
description: Indicates if obstacle sensor system incurred an error condition. True = Error. False = No Error.

ObstacleDetection.ForwardDistance:
datatype: float
type: sensor
unit: m
description: Distance in meters to forward detected object
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Is the idea that if ObstacleDetection.IsWarning == False then the value of this signal is not relevant, or do we need some special values (for example negative values) to represent that there is no obstacle present.
  • How is this signal supposed to behave when reversing? - reporting obstacles behind vehicle or not reporting obstacles at all?
  • Is it deliberately not specified how you calculate distances? Like if you are planning a turn (or the road turns), should it report the straight distance to the obstacle, or the distances you need to drive to hit the obstacle

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lidar (radar, camera, other) sensor distance data is of interest even when there isn't a warning (distance falls below OEM threshold). Distance would generally not be negative unless the vehicle rolls over the object, plausible and sub zero value would indicate impact or run over event occurred.

A vehicle in reverse is going backward, not forward so the distance would be increasing assuming the object in the forward direction is stationary, going forward or reversing slower than the vehicle.

Hoping for insight from OEM and Tier 1s on current state of forward distance sensors. Their adopted use is widespread with emergency braking assist and adaptive cruise control. The user is typically presented with simple incremental units for setting cruise control that presumably are car lengths. As car lengths are not a consistent unit of measure, meters are preferred and OEM calculation to convert is implementation specific unless the underlying sensor is already using meters.

We should discuss future proofing VSS as with ADAS/AV signals will be increasing with additional sensors and presumably different configurations per manufacturer detecting distance in various directions besides forward.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the initial comment made with this PR and this one, very interested in how we can accommodate multitude of direction sensors on existing advanced (SAE AV 4+) or experimental vehicles. As the configurations will vary we cannot use simple directions (front, left, left front, etc) but instead could use degrees with 0 being directly in front of the vehicle. This compares to degrees on a compass (Vehicle.CurrentLocation.Heading in VSS). Sensor type would be of interest as we are seeing a mix.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume the distance to object in front would relate to objects in the trajectory of the moving vehicle. So if there is a curve, stationary objects would not be relevant, if the trajectory is not hitting the object...


ObstacleDetection.ForwardTimeGap:
datatype: int32
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could be uint32, or do we intend to use negative values to represent cases like no foreseeable impact.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't need negative numbers so uint would indeed be better.

type: sensor
unit: ms
description: Time in milliseconds before potential impact to forward object


#
# Antilock Braking System
Expand Down