Russian self-driving cars Yandex

236 阅读7分钟

Under the cut, I will tell you how we make simple cars unmanned: from the moment of buying a car and choosing a name to assembly and calibration, which, however, does not end there.

Russian search giant

Step 1. Buy a car

In 2019, Yandex and Hyundai Mobis signed a cooperation agreement: they agreed to join forces in the development of unmanned vehicles. Now all our cars are Hyundai Sonata 8th generation. Why did we choose this particular model? It is equipped with everything you need for software steering and acceleration. Hyundai Sonata, which we turn into self-driving, are no different from other cars of the same model. We buy them at a regular dealership. But we start preparing equipment — a computer, a set of sensors, wiring — much earlier. I will tell you about this stage in more detail later.

After purchase, all cars go through the standard registration procedure. They are given numbers and STS.

wmfm-tttm5x1z4kh8_qkqjrksuk.jpeg

Step 2. Choose a name for the car and enroll it in our fleet

To account for a car in our internal systems, we use two parameters: its VIN code and name. If translated into IT terms, VIN is the MAC address, and the machine name is FQDN. Yes, yes, each of our cars has its own name. The VIN code is too difficult to remember, and the license plate number may change.

At first we named the cars after the heroes of the TV series "The World of the Wild West": Takoda, Kohana, Akecheta. When the characters ended, a neural network came to our aid, which generated 60 thousand unique names. This is how Natalia, Keyro, and Onipa appeared.

If you meet our drone on the roads, you will easily find out what its name is. We always stick stickers with names in the same place: on the right, under the windshield.

An extensive database helps us manage a rather large fleet of drones. It stores information about each machine and the events that happen to it. This is a kind of ship's or laboratory log, where we carefully record logs of all trips: we note malfunctions, store photos, record changes, monitor metrics for each individual car and the entire fleet as a whole. I will turn to IT terms again - our database is very similar to an ERP system.

Step 3. Proceed to the assembly

The assembly must be managed somehow: count metrics, build supply chains, optimize resources. We did several approaches to this task, and the Scrum framework seemed to us the most effective of all. It turns out that it is suitable not only for software development.

Every Monday we plan tasks for the week ahead (in fact, we arrange sprint planning). The dev team is represented by mechanics and electricians; project managers are responsible for Scrum masters; customers are connected to prioritize tasks and work out hypotheses.

Then everything is also standard: we select tasks from the backlog and distribute them among the teams. Simultaneously with the assembly of the machine, the team conducts experiments: for example, improves the signal quality of modems. Or upgrades connectors for draining logs. Or optimizes the sensor cleaning system.

During the week, we regularly collect "on our feet" flyers in the workshop (daily standup). On Fridays we summarize the results. Story points were just not introduced: they did not take root with the mechanics. We measure everything in hours.

About technology in general

Each drone is assembled like a Rolls-Royce: manually, by the slipway method. This means that the machine stays in place all the time, all the necessary components and assemblies are delivered directly to it.

lxp8wqasn6dsfrts0vzjo2_ez7u.jpeg

We chose this approach consciously: we assemble a very small series, five cars each, so it is unprofitable to build even a semi-automatic conveyor. In addition, it is important for the conveyor that the configuration of the car does not change, but we are still experimenting and can change the arrangement of elements inside the car, add or exclude elements from the final configuration.

After buying and entering into the database, future drones are sent to our workshop in Moscow. The first thing we do with them is to cover them with a branded Self-driving car livery.

Next, we completely disassemble the entire interior, including the ceiling and trunk trim. To turn a car into a drone, it is necessary to stretch almost 200 meters of various wires from its computing brain to all devices and peripheral nodes. The equipment that is located on the roof (sensor box) is connected with optical cables, the camera is coaxial, we use UTP to transfer data between IP devices. Do not forget about the power wires: all parts of the drone need electricity.

At the same time, we increase the noise and vibration isolation of the trunk, at the same time we drown out the hum of the cooling system - a simple but very important improvement. We use drones as taxis, which means we have to take care of the comfort of customers.

ky0orwjuc7youa3sscshhjdlqxu.jpeg

Remember, I said that the assembly of the drone begins even before the purchase of a suitable car? To speed up the assembly, we prepare the components and assemble the main components even before the next Sonata arrives to us.

We develop most of the components ourselves. For rapid prototyping and experimentation, we manufacture some parts on our own: we have several 3D printers of different types and sizes, a lathe and a three-axis CNC milling machine. After a long series of tests, we order serial parts at external production sites with strict compliance with standards, regulations and quality control.

ktgaqgvkarjjfln_hkh3sbzx-v0.jpeg

There are a lot of electronic devices hidden under the skin of each car: cameras, lidars, radars, computers, cooling system, network equipment, electrical boards with various inputs and outputs.

We also develop cases for our own boards on our own, and we recorp some of the purchased boards. For example, one of the switches we need is supplied only in a large rack design. The board itself takes up 60% of the case. Replacing the shell in such situations helps us not only to save space (I remind you, we place all the equipment in the trunk of an ordinary car), but also to install additional cooling. There is little space, a lot of heat is released: the air should not stagnate inside the case. A nice bonus is that the equipment in the same laconic cases looks stylish.

It's time to install the power unit. The machine consumes up to 2 kW. The lion's share of electricity comes from the computer, which employs two server processors and three powerful graphics cards. In fact, each of our machines is a miniature data processing center. All calculations take place on board the car, it is completely autonomous.

6tbjhphsvmfruqw4nu9lnrdieps.jpeg

On-board computer in the trunk

In order for the unmanned part of the car to continue functioning for a long time, we complete the car with two additional batteries, from which the entire electrical network is powered. By the way, the energy consumption of all unmanned equipment is less than that of standard units and aggregates. We pack the wires into neat bundles and spread them all over the car. Connections are only detachable and designed specifically for the car: to withstand vibrations and repeated switching on and off.

The main thing in the car is safety.

All the lower—level electronics — including the device that gives control signals to the car - receive two independent power lines. We control both of them. In case of deviations in at least one line, the car simply will not be able to be taken offline.

We mount the pre-assembled nodes stored in the warehouse of finished products and connect them. We test all systems before returning the car to its usual appearance.

im6z0cgxrhsi9trbjddyk9o-q0q.jpeg

The car before and after installing the fender

lolo1eeetnpq3mzwan1ctfqv1o4.jpeg

xnexylhgw0pwake7fazam9uau_q.jpeg Fender device with side lidar

We complete the assembly by installing a sensor box on the roof of the car.

About sensor-box in particular

A large white trunk with a tower on the roof is the same sensor box. The largest number of "organs of vision" is collected inside it. In general, so that the drone can "see" everything that surrounds it, three types of sensors are installed on the car:

ln3gcakhg71ll0l_zt5nuh60jqi.jpeg

  1. Four lidars: a self-developed leader on the roof, equivalent to a 90-beam; two 16-beam on the wings; one 16-beam in the front of the car.
  2. Six radars: four on the roof in the sensor box; two on the wings.
  3. Cameras. There are ten of them on the car: four on the roof in the sensor box, three inside under the windshield, two on the wings and one in front under the radiator grille.

1xpro1xxwokdkbrb59zudercatq.jpeg

wmuig08unqojqtzwqabcjmsilxk.jpeg

Front lidar

The front lidar has a folding design and, in case of mechanical impact, goes into the interior of the car. In the drones of the previous generation, all these sensors were connected by wires to the computer. This was not a very practical solution: a large cable bundle appeared, which had to be dragged to the trunk through half a car. In the fourth generation, most of these wires are terminated already inside a sealed sensor box and connected to the trunk with a single optical cable.

o-42-tnw1s7pkgmqirndue71hx8.jpeg

The front lidar has a folding design and, in case of mechanical impact, goes into the interior of the car. In the drones of the previous generation, all these sensors were connected by wires to the computer. This was not a very practical solution: a large cable bundle appeared, which had to be dragged to the trunk through half a car. In the fourth generation, most of these wires are terminated already inside a sealed sensor box and connected to the trunk with a single optical cable.

Our designers managed to fit a compressor, a water tank, a compressed air cylinder, hydraulic and pneumatic tracks, which make up the cleaning system, in a sensor box on the roof of the car. And the designers tried to make it all look stylish.

4j4rxigfaspdwtowtip1cb3jioy.jpeg

21oy1onri3p05u7htn5texgmz5a.jpeg

  • Hermobox with electronics
  • Sensor cleaning system
  • Radars
  • Camera

Step 4. Calibrate

Calibration is an important stage in the creation of a drone. This is a procedure for finding some internal parameters of the sensor and/or its position relative to the machine or other sensor.

As I mentioned a little above, each car is equipped with a large number of very different sensors. All of them need to work synchronously, as one unit, supplying data to the computer, which determines the logic of the behavior of the machine. The leading "organ of vision" of the drone is lidar developed by Yandex. We calibrate all other sensors relative to it. And he himself is calibrated relative to the car body.

The calibration looks like this: the car moves around a large room with a lot of chess boards arranged in the shape of a circle and installed at different angles. When the drone accumulates enough frames of the surrounding space from different angles, the sensors, using this data, synchronize with each other.

0u7ifdkwqml23xfipdtythfiwjw.jpeg

Calibration process

Step 5. Certify

After all our interventions, the car can no longer be called an ordinary Hyundai Sonata. So, we need to make sure that the resulting model is reliable and meets the safety standards of production cars. Therefore, we send our machines for certification to the NAMI Foundation. There, drones are tested and issued a certificate of conformity, which allows them to be operated on public roads.

Step 6. Launch. Testing. On the way

It remains to "breathe life" into the car: install the operating system on the on-board computer and once again test all the components, assemblies and sensors. We use a UNIX-like OS.

Almost all. There are 400 km left until the moment when the drone can be released into the streets of the city. I drive this distance at our special training ground, the car is calibrated under the supervision of a test driver. Lidars "see" at more than 200 m, so it is impossible to perfectly fine-tune them indoors at speeds less than 40 km / h, refinement is required "in battle". At the same time, we once again check the reliability of all components and assemblies.

Only after completing all the tests, we consider the car fully ready to drive offline.

For more than three years, dozens of your self-driving cars have been driving at the Yandex landfill 24 hours a day, 365 days a year without a person at the wheel. They stop only to refuel. Additionally tested in the USA and Israel.

cef4c428ea2cc8a1b11088b99a6c44af.jpg