Self-Driven: Uber and Tesla

Self-driving cars have been in the news a lot in the past two weeks. Uber’s self-driving taxi hit and killed a pedestrian on March 18, and just a few days later a Tesla running in “autopilot” mode slammed into a road barrier at full speed, killing the driver. In both cases, there was a human driver who was supposed to be watching over the shoulder of the machine, but in the Uber case the driver appears to have been distracted and in the Tesla case, the driver had hands off the steering wheel for six seconds prior to the crash. How safe are self-driving cars?

Trick question! Neither of these cars were “self-driving” in at least one sense: both had a person behind the wheel who was ultimately responsible for piloting the vehicle. The Uber and Tesla driving systems aren’t even comparable. The Uber taxi does routing and planning, knows the speed limit, and should be able to see red traffic lights and stop at them (more on this below!). The Tesla “Autopilot” system is really just the combination of adaptive cruise control and lane-holding subsystems, which isn’t even enough to get it classified as autonomous in the state of California. Indeed, it’s a failure of the people behind the wheels, and the failure to properly train those people, that make the pilot-and-self-driving-car combination more dangerous than a human driver alone would be.

A self-driving Uber Volvo XC90, San Francisco.

You could still imagine wanting to dig into the numbers for self-driving cars’ safety records, even though they’re heterogeneous and have people playing the mechanical turk. If you did, you’d be sorely disappointed. None of the manufacturers publish any of their data publicly when they don’t have to. Indeed, our glimpses into data on autonomous vehicles from these companies come from two sources: internal documents that get leaked to the press and carefully selected statistics from the firms’ PR departments. The state of California, which requires the most rigorous documentation of autonomous vehicles anywhere, is another source, but because Tesla’s car isn’t autonomous, and because Uber refused to admit that its car is autonomous to the California DMV, we have no extra insight into these two vehicle platforms.

Nonetheless, Tesla’s Autopilot has three fatalities now, and all have one thing in common — all three drivers trusted the lane-holding feature well enough to not take control of the wheel in the last few seconds of their lives. With Uber, there’s very little autonomous vehicle performance history, but there are leaked documents and a pattern that makes Uber look like a risk-taking scofflaw with sub-par technology that has a vested interest to make it look better than it is. That these vehicles are being let loose on public roads, without extra oversight and with other traffic participants as safety guinea pigs, is giving the self-driving car industry and ideal a black eye.

If Tesla’s and Uber’s car technologies are very dissimilar, the companies have something in common. They are both “disruptive” companies with mavericks at the helm that see their fates hinging on getting to a widespread deployment of self-driving technology. But what differentiates Uber and Tesla from Google and GM most is, ironically, their use of essentially untrained test pilots in their vehicles: Tesla’s in the form of consumers, and Uber’s in the form of taxi drivers with very little specific autonomous-vehicle training. What caused the Tesla and Uber accidents may have a lot more to do with human factors than self-driving technology per se.

You can see we’ve got a lot of ground to cover. Read on!

Continue reading “Self-Driven: Uber and Tesla”

Self-Driving Cars Are Not (Yet) Safe

Three things have happened in the last month that have made me think about the safety of self-driving cars a lot more. The US Department of Transportation (DOT) has issued its guidance on the safety of semi-autonomous and autonomous cars. At the same time, [Geohot]’s hacker self-driving car company bailed out of the business, citing regulatory hassles. And finally, Tesla’s Autopilot has killed its second passenger, this time in China.

At a time when [Elon Musk], [President Obama], and Google are all touting self-driving cars to be the solution to human error behind the wheel, it’s more than a little bold to be arguing the opposite case in public, but the numbers just don’t add up. Self-driving cars are probably not as safe as a good sober driver yet, but there just isn’t the required amount of data available to say this with much confidence. However, one certainly cannot say that they’re demonstrably safer.

Continue reading “Self-Driving Cars Are Not (Yet) Safe”

A Quadcopter Controlled By A Pi Zero

Flight controllers for quadcopters and other drones are incredible pieces of engineering. Not only do these boards keep an aircraft level, they do so while keeping the drone in one place, or reading a GPS sensor and flying it from waypoint to waypoint. The latest of these flight controllers is built on everyone’s favorite $5 computer, the Raspberry Pi Zero.

The PXFmini controller and autopilot shield is the latest project from Erle Robotics that puts eight servo outputs on the Pi, barometer and IMU sensors, a power supply, and all the adapters to turn the Raspberry Pi Zero into a capable flight controller. Since the Pi Zero will have some computational horsepower left over after keeping a quadcopter level, there’s a possibility of some very cool peripherals. Erle Robotics has been working with depth cameras and Lidar on more than a few drones. This makes for some interesting applications we can only imagine now.

The schematics for the PXFmini are open source in the best traditions of the RC and drone community and will be available soon. You can check out a video of the FXPmini flying around an office below.

Continue reading “A Quadcopter Controlled By A Pi Zero”

The Autopilot Shield For The Raspberry Pi

Navio

In the world of drones, quadcopters, and unmanned aerial vehicles, the community has pretty much settled on AVR microcontrollers for the low end, and ARM for the high performance boards. If the FAA doesn’t screw things up, there will soon be another market that requires even more computational power, and Navio, the autopilot shield for the Pi, is just the thing for it.

Where high end multicopter and autopilot boards like the OpenPilot Revolution use ARM micros, there’s a small but demanding segment of the hobby that needs even more processing power. Think of something like the Outback Challenge, where fixed-wing drones search the desert for a lost mannequin autonomously. You’re going to need OpenCV for that, and that means Linux.

Navio is a shield for the Raspberry Pi, complete with a barometric pressure sensor, gyros, accelerometer, and compass, and GPS. It’s designed to run a more real-time version of Linux, and has the ability to do some interesting telemetry configurations – putting a 3G modem on the Navio isn’t much of a problem, and since it’s a Raspi, doing image processing of a downward facing camera is just a matter of writing the code.

The Navio team is currently running an Indiegogo campaign, with the baseline version available for $145. That’s pretty close to the price of the OpenPilot Revolution. There’s also a version upgraded with the U-blox NEO-6T that allows for on-board processing of raw GPS data.

Sailing With An Autopilot

sailboat

After seeing an autopilot for a kayak a few days ago, [Mike] thought he should send in his version of a water-borne autopilot. Compared to something that fits in a one-man kayak, [Mike]’s creation is a monstrous device, able to keep a largeish sailboat on a constant heading.

To keep track of the ship’s bearing, [Mike] is using a very cool digital compass that uses LEDs to keep a steady heading. Also included is an amazingly professional and very expensive 6 axis IMU. To actually steer the ship, [Mike] is using a linear actuator attached to the tiller powered by a huge 60 Amp motor controller. The actuator only draws about 750 mA, but if [Mike] ever needs an autopilot for a container ship or super tanker, the power is right there.

For control, [Mike] ended up using an Arduino, 16-button keypad, and an LCD display. With this, he can put his autopilot into idle, calibration, and run modes, as well as changing the ship’s heading by 1, 10, and 100 degrees port or starboard.

From a day of sailing, [Mike] can safely say his autopilot works very well. It’s able to keep a constant heading going downwind, and even has enough smarts to tack upwind.

Videos below.

Continue reading “Sailing With An Autopilot”

Compass Guided Kayak Autopilot

logo

Last July, [Louis] bought a kayak off of Craigslist. It was a pedal-powered device with a hand-operated rudder, and he ended up enjoying his time on the water. [Louis] fishes, though, and it was a bit of a challenge to manage hands free fishing while maintaining a steady course. His solution was an Arduino-powered autopilot that allows him to troll for salmon and Arduino haters with just the push of a button.

In [Louis]’ system, a motor is attached to the steering lever along with a few limit switches. This motor is powered by an Arduino controlled with an LSM303 compass module from Sparkfun.

When the autopilot module is started up, it first checks to see if the compass module is enabled. If not, the system relies on two tact switches to change the position of the rudder. Enabling the compass requires a short calibration of spinning the kayak around in a circle, but after that the steering is dead on.

There are a few things [Louis] would like to add such as a heading display and a bluetooth module for remote control. This setup already landed him a 13 lb salmon, so we’re going to say it’s good enough to catch some dinner.

737 autopilot, courtesy of an Arduino

737

To start this off, no, we’re not looking at a piece of actual flight hardware. This is [Andrea Giudici]’s project to tie real-world hardware into Flight Simulator X. It’s an autopilot for simulated aircraft, so those of you looking at flying a 737 sometime in the near future need not worry about computers flying your plane. Airbus passengers, though…

[Andrea] didn’t want to dig around with the clunky point-and-click interface in FSX, so he created a virtual autopilot with a 2×16 LCD display and an Arduino to interact and set the most common autopilot settings such as altitude, speed, heading, and engagement. The physical interface is just three tact switches and a pot, while the interface to FSX is a custom driver that turns the USB out of the Arduino into actual flight commands.

It’s not a 737 cockpit in a garage, but it’s still a wonderful alternative to poking around in a completely computer-bound interface.

Video of the ‘duino in action after the break.

Continue reading “737 autopilot, courtesy of an Arduino”