Updated: Jun 22, 2022
The intersection braking scenario was created as a way to implement a combination of systems designed by the Hardware, Software and Connectivity teams. This specific scenario is one that relates to the work done by the Connectivity team with their Intersection Control Algorithm (ICA).
The scenario sees two vehicles approach an intersection, with one vehicle being autonomously driven (StreetDrone) and the other driven by a human (Subaru Forester) which contains an emergency brake that triggers autonomously. The key requirements of the scenario were that:
The control algorithm designed for the intersection follows closely to the behaviour of the ICA.
Software should be written to signal the Subaru to brake at a given intersection if it was unsafe to enter.
“Unsafe to enter” is determined based on if another car (the StreetDrone) was approaching the intersection at a time in which a collision may occur if the Subaru enters.
A brake actuation system could be retro-fitted in the Subaru to respond to a brake signal sent from the control algorithm.
The brake actuation system consists of a DC motor, attached to a clamp which is secured onto the steering column of the Subaru. A metal plate is attached between the motor and the brake pedal in order to depress the pedal.
A connected ROS network.
The Subaru and its brake actuation system must be connected to the same ROS network as the StreetDrone to ensure there is vehicle to vehicle communication.
Lane Keeping and Cruise Control to run on the StreetDrone
These driver assistance features should allow the StreetDrone in the scenario to autonomously navigate past the intersection in a straight path.
Utilising CARLA, members of the Software team set up the scenario in simulation. This scenario has two cars travelling towards an intersection, with the StreetDrone having right of way.
The Subaru collects information:
It’s own position, speed and orientation.
The StreetDrone’s position, speed and orientation.
The intersection’s location, edges – used as safe stopping positions.
This was completed using waypoint data. The waypoints were identified as being part of an intersection or not, pictured by the red and green points in the image below.
Intersection Scenario with Waypoints
Through continuous prediction planning, the Subaru uses its and the StreetDrone’s positions, orientation and velocities, to predict if they will collide. This prediction was a tunable estimation based on parameters:
Safety radius: A radius around each vehicle, which can be made wider or smaller, changing the likelihood of a ‘crash’.
Lag Time: The time when StreetDrone has passed the intersection that is determined safe to enter, aimed to avoid tail-gating when the Subaru enters the intersection.
StreetDrone speed: to test the efficiency of crash prediction at higher vehicle speeds.
The StreetDrone make predictions as it approaches the Intersection
If a collision is predicted: The Subaru continues towards the intersection slowly activating it’s brake with the intent of safely stopping at the determined edge of the intersection (marked with a blue cross).
Subaru Stopped at the Intersection as the StreetDrone Passes
If not: The Subaru continues towards the intersection with the intent of entering it safely.
If the Subaru stopped at the intersection it then monitors when it is safe to enter based on:
If the StreetDrone is still approaching the intersection, in the intersection or has left the intersection.
Is there another car following the StreetDrone that would make it unsafe to enter?
Once the Subaru determines when it is safe, it enters the intersection safely, and initiates a Cruise Control algorithm.
The current design aims to resolve existing issues with spatial management, by providing a system with a lower profile. This is aimed to be accomplished by mounting the new actuator behind the brake pedal as opposed to in front of it. This is advantageous as it provides unimpeded access to the pedal for the driver if intervention is required.
During the design process, the most important factors which were considered were the durability and rigidity of the design, as well as the physical space which it takes up.
As seen in the figure, the clamp is attached to the steering column of the car. A pair of L-brackets and a metal plate is then used to attach the motor. Two alternatives to connect the motor to the pedal arm and thus depress the pedal were a metal rope, or, a metal plate. Both options were seen as viable solutions.
Electrical Design & Software
The control hardware for the actuation system consisted of a RoboClaw motor controller, which connected to a high torque DC motor. The motor controller received the actuation command via serial comms from a Raspberry Pi. The Raspberry Pi in turn, was running a ROS node to receive the actuation command.
In order to ensure the pedal was actuated to the correct position, a limit switch was utilised to ‘home’ the motor each time it was actuated. In addition, utilising the motors encoders a PID control loop was implemented to ensure the motor rotated to, and maintained, the correct position when braking.
Uses camera based lane segmentation
The output of the model then undergoes post processing, where the lane center offset is calculated
This offset is fed into a steering controller which directly outputs a steering angle to correct the vehicle's position.
LiDAR based clustering algorithm for a region of interest
Once an object is within a critical distance, braking is applied
This intersection braking scenario and demonstration helped integrate the work of the Software, Hardware and Connectivity teams.
It provided a basis for furthering the Connectivity team’s Intersection Control Algorithm by testing out more complex algorithms.
It provided proof of concept of connected vehicles communicating effectively on a road system.
This resulted in an actuated response iny the activation of the Hardware teams’ brake actuator over a ROS network.
Keep an eye out on the team’s social media platforms for a video demonstrating what was achieved with the brake actuator being fitted with the Subaru Forester.
The development of a control algorithm for this specific intersection will unlikely be utilised in the future ambitions of the MCAV team.
However the development and implementation of the solution where vehicles work within a connected network, aligns with the goals of MCAV in developing connected autonomous vehicles.
Integration of connecting vehicles through a ROS network.