top of page

Knight Industries Two Thousand!

If you got the title of this post, you are the proud winner of one million internet dollars! And if you are someone who is slightly younger, then here's a clip of the show theme with the music.


I gorged on this TV show back in the days and was fascinated by K.I.T.T., the car with a personality. The fascination of watching the steering wheel turn by itself and the gear shift lever move by itself has never worn off. Even today, I get a kick out of watching the steering wheel turn when I use my Comma3.


This post is about self-driving cars, or autonomous cars. We break down some definitions and concepts and then we get to understanding how autonomous driving works. This would be a pre-read to where I get to talk about how I used a commercial/open-source tool to augment my driving experience.


It's useful to understand the definition of self-driving, or to use the correct terminology, autonomous driving. There are 6 levels that represent the capabilities of an autonomously driven vehicle.

  • Level 0: no driving automation of any kind

  • Level 1: one of driving, braking or acceleration assistance, e.g. adaptive cruise control that can use the brakes/accelerator to maintain a set distance from the vehicle ahead

  • Level 2: combination of lane centering and adaptive cruise control that allows the vehicle to maintain a safe trajectory in specific situations. The human driver is still expected to be in control at all times and supervise the operation of the vehicle. Tesla FSD is technically (and legally) classified as a Level 2. As are offerings like Highway Driving Assist on Hyundai/Kia/Genesis vehicles, or BlueCruise on Ford vehicles.

  • Level 3: this is the first level where a human operator is not needed to be supervising at all times. The system make request for a human operator who must then take over. DrivePilot is the first Level 3 system in production in the US/North American.

  • Level 4: this is where an autonomous vehicle can operate without human intervention in specific situations/environments. e.g. a shuttle bus at an airport that moves between terminals. Components like pedals and steering wheels may be absent.

  • Level 5: similar to Level 4 but where a vehicle can operate in any environment.

Once you get past the hype and marketing, for now it is pretty much Level 2 most of the time.


The next concept to wrap our heads around is that of a car as a collection of computers talking to each other.


When cars had only basic electrical components (lights, starter motor, pump) they were connected to the power source (battery, alternator) by direct wiring, and all was good. Over the years more conveniences and automation were added to the cars, e.g., power doors and windows, automatic headlights, climate control, rain-sensing wipers. The fuel and engine control systems became more sophisticated and relied on software for their operation. This resulted in two major consequences:

  • a connectivity architecture/design that could handle this complexity, and a mechanism to help for diagnostics and troubleshooting. This resulted in something called CAN bus (for Controller Area Network) which is a type of wiring and connectivity for the different electronic components inside a vehicle.

  • the development of a port or connector called OBD (for On-Board Diagnostics). Most cars today have one or more CAN buses inside the car and every gasoline powered vehicle has an OBD port to connect external devices like laptops and other hardware for diagnostics.

The way an automated system works is by the computer(s) sending messages to each other and the components on the CAN bus. To use the example of a cruise control, a computer monitors the speed and when it senses that the car is slowing down it then sends a message to open up the throttle that then cause the car to speed up. Cars with adaptive cruise control have a radar or camera facing the front. A computer then determines the distance to a car/object ahead and sends the corresponding signals to the braking or engine computers to slow down or speed up. It is also possible for an 'external' system to send these signals. There are appropriate protections and security mechanisms to mitigate malicious actions, but it is still possible when done the right way.

That sets the stage for 'third party' devices like Comma.ai to come into play. Essentially, it's a self-contained device that mounts on your windshield and plugs into the car's CAN bus network using the OBD port. With compatible cars it can then augment/complement/extend the existing capabilities of the car to enhance the overall driving experience. It's important to note that autonomous driving requires a basic underlying capability, e.g., without cruise control or steering control it's not going to be possible to reliably add autonomous. Sure, one can hack their way but not in a way that's generally acceptable.

In the next post I shall share my experience in the area to use as an example of evolutionary learning and how technology has progressed.


Commenti

Valutazione 0 stelle su 5.
Non ci sono ancora valutazioni

Aggiungi una valutazione
bottom of page