In this newest episode of our series of blog posts on “ST Technologies in Universities”, we’ll look at a project by the University of Michigan-Dearborn (UM-Dearborn). Students had to design and prototype an autonomous remote-controlled car that could travel between two specific points on a map thanks to a GPS and inertial sensors. Under the supervision of Professor Riadul Islam and Professor Sridhar Lakshmanan, a team made of Lance Gurka, Alan Wu, Brandon Ley, and Carl Shearer, from the Electrical Engineering Department, worked on a daring prototype for eight months with the support of our engineers and managers at our offices in Livonia, Michigan. Just like the SensorTile capstone projects from UCLA, the STM32 embedded systems in assembly at the University of Maine, and the Automated Irrigation System by Cornell, this project not only reflects the students’ ingenuity but also gives us a glimpse of the future.
Indeed, driverless vehicles are no longer bound to the realms of science fiction. The first autonomous taxis are starting to hit the streets of Tokyo, Japan, in preparation for the summer Olympics of 2020, while Waymo, a subsidiary of Alphabet, the parent company of Google, just announced that its driverless fleet just reached nine million miles on public roads in 25 cities in the United States. Clearly, as autonomous vehicles gain ground, the project from UM-Dearborn is of vital importance as it tries to demystify some of the more complicated aspects of the various technologies that make autonomous vehicles possible, while also showing ways to bring costs down by using boards and components that are already widely available.
All The ST Parts Driving This Driverless Car
Since the vehicle relies heavily on GPS navigation, the students first chose the Teseo-LIV3F, a standalone Global Navigation Satellite System (GNSS) that stands out thanks to its tiny LCC 18-pin package of only 9.7 mm x 10.1 mm. The next step was to work on the brain of the system that would compute all the information as well as control the vehicle. The students thus needed something that would be reliable and reasonably easy to use, which is why they chose one of our SPC56B Discovery kit, as it gave them the necessary computational throughput and granted them access to the SPC5Studio, a free IDE based on Eclipse that greatly simplified developments. ST also provides libraries that use some of the hardware features of the SPC560B54L5 microcontroller (MCU) present on this Discovery kit to optimize specific calculations, thus further increasing the inherent benefits of this ecosystem.
However, the students couldn’t only rely on GPS data. In real life situations, it’s relatively common for drivers to lose a satellite connection because of environmental factors, such as an underground structure or a close arrangement of very tall buildings. The students thus had to design a dead-reckoning system that could continue to guide the car until the reappearance of the GPS signal. To achieve this, they first used SensorTile Development kits (STEVAL-STLKT01V1), which include all the inertial and environmental sensors necessary to detect the vehicle’s movements and thus continue to track its position on a map, even without the help of the GNSS module. Additionally, to avoid collisions with nearby objects, they installed four ST VL53L0X (two in front, one on each side).
Immersion in the ST Ecosystem
Beyond the hardware, this project made use of the entire ST ecosystem. As we sat down with the students from UM-Dearborn to better understand their journey, they told us how they utilized different ST tools to write their code faster. For instance, they worked with SW4STM32, the free System Workbench IDE for STM32, to more rapidly take advantage of all the features of the SensorTile platform. For instance, they used the toolchain to modify ST source files so the SensorTile module would send data over UART, instead of USB. They also employed our advanced motion libraries in X-CUBE-MEMS1 to increase the sensors’ accuracy and fusion data from multiple sources to optimize computations. Similarly, they used our BlueMS app for Android and iOS so the Bluetooth module of the SensorTile could help them perform routine functions like calibrate the compass or check for errors.
Students also faced tough challenges during their developments and prototyping phases. For instance, the team encountered some issues while working with the I2C interface of the SPC56B Discovery kit, which meant that the ToF sensors couldn’t send data to the MCU. However, it was a treat to hear how ST and UM-Dearborn collaborated to quickly conquer that hurdle and how our people from Livonia offered the assistance and support the students needed to ensure they could promptly proceed to the next step of their project. The prototype also suffered from errors that would miscalculate the angles of the wheel during a turn, which led to changes in the design and more precise computations. This project thus serves as a testament to the importance for faculty and students to choose tools and partners that will help them quickly solve problems to avoid massive discouragements.
A Really Ingenious Design
This project also highlights our desire to work with universities to help students take what they learned in the classroom and apply it to real-life projects. This, in turn, leads to the most creative and ingenious accomplishments. For instance, we must commend the students of UM-Dearborn for their original use of our Time-of-Flight sensors, which aren’t traditionally used for obstacle detection in driverless vehicles. However, they were able to obtain precise measurements, which led to impressive results, as shown in the video above. Teachers are now even thinking of using our ToF sensors to perform some 3D mapping. It may require a different sensor like our VL53L1X, a new ToF sensor with multiple regions of interests, but we can’t wait to see what they do with these components.
Another fantastic aspect of the UM-Dearborn design is the fact that the entire driverless system, including the steering servo motors, have such a low power consumption, they can just rely on the power generated by the electronic speed controller, which outputs a steady 6 V and 3 A. It’s even more impressive since such a low power consumption was not a requirement of the project. Yet, by using smart optimizations, students were able to go beyond their professors’ expectation. For instance, to significantly optimized computations, they utilized the STM32 MCU on the SensorTile to calculate the heading corrections based on the data from the inertial sensors, before sending the final results to an external Bolero board, thus saving considerable time and resources.
Previously on ST Technologies in Universities:
- Two Life Lessons from Learning Embedded Systems with SensorTile
- SensorTile Capstone Projects Bring Basketball to Machine Learning
- Programming Your STM32 Embedded System in… Assembly?!
- Automated Irrigation System, Smart Agriculture with Nucleo Boards and Sigfox