An impressive project from Hackaday:
The picture above looks like a standard four-wheel drive (4WD) touring car. As one looks closer, a few strange things start to pop out. Where’s the motor? 4 electronic speed controls? What’s going on here? [HammerFET] has created this independent drive R/C car (YouTube link) as a research platform for his control system. The car started off life as a standard Schumacher Mi5 1/10th scale Touring Car. [HammerFET] removed the entire drive system. The motor, differentials, belt drive, and ESC all made for quite a pile of discarded hardware.
He replaced the drive system with 4 Turnigy brushless outrunner motors, installed at the chassis center line. To fit everything together, he had to 3D print new drive cups from stainless steel. The Mi5′s CVD drive shafts had to be cut down, and new carbon fiber suspension towers had to be designed and cut.
The real magic lies in [HammerFET's] custom control board. He’s using an STM32F4 ARM processor and an InvenSense MPU-6050 IMU which drone pilots have come to know and love. Hall effect sensors mounted above each motor keep track of the wheel speed, much like an ABS ring on a full-scale car.
[HammerFET's] software is created with MATLAB and SimuLink. He uses SimuLink’s embedded coder plugin to export his model to C, which runs directly on his board. Expensive software packages for sure, but they do make testing control algorithms much simpler. [HammerFET's] code is available on Github.
Since everything is controlled by software, changing the car’s drive system is as simple as tweaking a few values in the code. Front and rear power offset is easily changed. Going from a locked spool to an open differential is as simple as changing a value from 0 to 1. Pushing the differential value past 1 literally overdrives the differential. In a turn, the outer wheel will be driven faster than it would be on a mechanical differential, while the inner wheel is slowed down. Fans of drifting will love this setting!