 |
AutoDrive Architecture Design
|
Introduction
This document has been developed by the engineering contractor to define the
software architecture of the AutoDrive system. The architecture document is
based on the requirements document mentioned in the references section.
Intended Audience
The intended audience for this document is:
- Subsystem design teams for the subsystems specified here.
- AutoDrive Inc.
References
Architecture Design
The software implementing the AutoDrive system will be divided into the
following four subsystems:
- Inter Vehicle Signaling
Subsystem will completely handle the Inter Vehicle Signaling protocol.
It will provide the Automatic Driving Subsystem (ADS) with information about
neighboring vehicles.
- Obstruction Detection Subsystem
will interact with the Radar and inform ADS about obstructions on the
road.
- Position Mapping Subsystem will
obtain the current GPS position and it will plot it on the map and give
information about lane curvature and speed limits. It will provide a driving
path information to ADS.
- Automatic Driving Subsystem is
the heart of the system. It obtains information from other subsystems and
uses it to operate the steering, brakes and the accelerator (gas paddle)
The software architecture and the interactions between the subsystems are
shown in the figure below.
.
The roles played by the subsystems in the above figure are described in terms
of inputs and outputs of the subsystem.
Inputs
- Inter Vehicle Signaling information obtained from other vehicles
- Current GPS position is obtained from the Position Mapping Subsystem to
keep track of neighboring vehicles
- Lane and speed change requests from the Automatic Driving Subsystem for
transmission to other vehicles
Outputs
- Neighboring vehicle information is passed to the Obstruction Detection
Subsystem.
- Lane and speed change requests to other vehicles
- The following outputs are passed to Automatic Driving Subsystem:
- Neighboring vehicle information
- Lane and speed change requests from other vehicles
Inputs
- Radar feed is obtained from the vehicle radar. This information
corresponds to the 360 degree sweep around the vehicle.
- Current GPS position is obtained from the Position Mapping Subsystem to
keep track of neighboring obstructions
- Neighboring vehicle information is obtained from the Inter Vehicle
Signaling Subsystem. This information is used to filter out IVS vehicles
from the obstruction list sent to Automatic Driving Subsystem. This way the
system will never confuse a vehicle with an obstruction.
Outputs
- Current obstruction list is passed to the Automatic Driving Subsystem.
Inputs
- Current GPS position is obtained from the GPS Receiver
- Map updates and weather feeds are obtained over the internet. Mapping
information is used to compute a path for the vehicle. This is done by
plotting the current position on the map and following the detailed lane
level map
Outputs
- Current GPS information is made available to the IVS and Obstruction
Detection Subsystems
- Travel path and plan with complete information about direction changes,
speed changes etc. is passed to Automatic Driving Subsystem
Inputs
- Lane and speed change requests from the IVS Subsystem. This information
will be used to control the brakes, steering and accelerator to implement
the request.
- Obstruction List is obtained from the Obstruction Detection Subsystem.
This information is used to steer clear off any unexpected obstructions on
the highway.
- Travel path and plan obtained from the Position Mapping Subsystem. This
information will be used to keep the vehicle in the center of its lane while
traveling towards the destination. Lane changes will also be made to exit or
enter highways.
Outputs
- Accelerator (Gas Paddle) is instructed to speed the vehicle
- Brakes are applied to slow down or stop the vehicle
- Steering is used to change vehicle direction
- Dashboard is kept updated with AutoDrive actions. This is to keep the
passengers posted about the functioning of the AutoDrive system.
|