Part of my time on the Hyperloop project has been spent working closely with the electrical team, a necessity to ensure that the electrical, controls, and software aspects of the project come together smoothly. One of the projects we’ve always wanted to have, but haven’t necessarily needed was an elegant way to detect navigation stripes on the interior of the Hyperloop tube.
There are many ways to detect these markers when traveling at low speeds, however, detection of these 4 inch wide markers becomes a bit more nuanced when at 200mph. Add on the fact that we have an amazing IMU that is able to accurately navigate us through the 1-mile long tube with minimal error, and it becomes more of a risk than a benefit to complicate the vehicle’s control system with fiducial navigation.
To do this right, we needed a self-contained strip counting system, a system that provided strict real-time guarantees and minimal overhead and burden on the rest of the control system. We did this with separate AVR micro-controllers and sensors from the rest of the system. It also gave me the chance to build my first board.
The PhotoSensor board is essentially an ATmega32U4 micro-controller with 2 IR emitter and receivers for redundancy and an RS485 interface for communications. It is a very simple board but was a monumental task for a first board.
Through this project, I learned how to make schematics and layouts in the open source KiCad EDA. I spent hours learning about the day-in-the-life of an EE from my roommate, my friends, and from Dave Jones’s EEVBlog. In the end, I had a mostly working board that performed did all of the essential functions but wasn’t without its snafus along the way. I’ve got future iterations on this design in the works, with the hope of integrating a more robust processor and modern communications solution in the future.