Projects for ARVP
These are things I have worked on as a member of ARVP. I'm not going to go into too much detail, or include source files.
This August, I was voted in as electrical team lead, where I plan to redesign key components of the system for the new robot we are building this year, as well as start work on future, experimental projects.
I went to RoboSub 2019 as an electrical member, where I was responsible for maintenance on the robot, as well as doing sonar signal processing. I helped with drying out and verifying all of the electronics after the Auri flooded about midway through the competition. For sonar, I improved the automatic gain control firmware, as well as implemented an STFT algorithm in an attempt to improve DOA estimation.
This was a small board that fit on the GPIO headers of an NVIDIA Jetson TX2 development carrier board (I think that's what it's called?). I worked on it with David Herczeg and Purvish Jajal.
It has breakouts for I2C (w/ optional pullups) and CAN bus. The CAN bus uses some JST connectors, and was originally designed to use the TI TCAN1042. That chip didn't work for some reason, but there is a pin compatible Microchip equivalent available (MCP2562). As well it has a few indication LEDs.
As part of the 2018 new sonar rollout, I designed the peak detector portion of the board. This was required to do automatic gain control of the sonar system. It's a simple two opamp circuit with a capacitor in the middle and some feedback to hold the peak, as well as a resetting circuit.
Afterwords, I designed an ADC add-on board, that is meant to replace the BeagleBone Black + PruDAQ that is currently running to sample the signals. I have not done full board bringup yet, however I'm hoping to finish that by December.
Small Coding Projects
I added some averaging functions that Andrew Schroeder wrote to the internal environment sensor board (for pressure and temperature), as well as the battery monitering board.
I also added some libuavcan code to the battery monitering board.