top of page
iqt logo

Founded and funded by the CIA, In-Q-Tel is a venture capital firm interested in promoting technological development that may benefit the US defense or intelligence communities. IQT Labs is a department within the larger organization that takes a hands-on approach to understanding the private sector and open-source technologies by "trying it themselves."

Microprocessor Programming and Networking

Custom PCB Design

Kalman Filtering

NonHolonomic Control

Autonomous Loitering Platform

IQT tasked my senior design group (myself, Owen Mitchell, Iris Renteria, and Gen Mehra) with building an autonomous, open-source vessel meeting certain functional requirements. They also requested we design and build three iterations, as their main goal was to understand the open-source ecosystem and engineering difficulties encountered, rather than actually use a final product. 

ezgif.com-crop (6).gif

Requirements

  • Operate autonomously for at least 6 weeks

  • Maintain C3 (Command, Control, and Communication) via Iridium Satellite network 

  • Support a payload 40 lbs, 4 cubic ft, and 40W constant supply

  • Survive rough sea states

  • Only use off-the-shelf parts (purchasable online without a quote)

Screenshot 2024-06-24 130525.png

Responsibilities 

I was solely responsible for all low-power electronics and computer design and assembly, as well as all navigation and control software. I also assisted in assembly of V1 and V2, as well as welding the entirety of V3. 

​

IMG_8589-ezgif.com-video-to-gif-converter.gif

Design Features - Hardware

My design featured an AT91SAM3X8E 32-bit ARM core running the primary software capabilities for the vehicle.  There were also 2 M9N GPS units, connected to independent nRF52840-based microcontrollers, with integrated LSM9DS1 IMUs for redundant pose estimation. The main board also communicated with a RockBLOCK+ for access to the Iridium satellite network and a local radio transceiver for communications when deploying or docking. I also designed the boat with 8 additional sensor hookups, to be integrated as the end user desired.   

​

The design ethos, centered around off-the-shelf purchasing, used all components in the Arduino form factor. Any type of multi-threading and redundancy was simply handled by adding another microcontroller and communicating over an I2C or UART connection. IQT loved this approach for its simplicity and intuitive usage, once the communication protocols were established. To streamline the assembly process, I learned how to design custom PCBs, which were primarily just sockets for Arduinos, and had them manufactured. 

pcb design_edited_edited_edited.jpg

Design Features - Software

The software contained extensive mode control logic, sensor filtering, navigation and propulsion algorithms, and communication protocols. 

​

An extended Kalman filter handled the estimation of vehicle position and orientation from the IMU and GPS.  This navigation protocol fed a course-over-ground vector into the control algorithm, which was compared against an intermediate-waypoint target, as determined by the guidance algorithm.  This then forwarded an error value into a PI controller with gain scheduling and integral term resets, to help direct the boat in the correct direction. 

​

In the communication protocols, all vehicle state values were simplified to standardized 32-byte strings with byte-level encoding.  These messages were designed to be consice and not subject to floating-point errors by using fixed-point interpretations.  All messages across I2C, UART, and satellite communication lines followed these conventions.

​

GitHub - tadeguzman/IQT_FINAL_VERSION_COMMENTED: Senior design project autonomous boat and electronics

2pt travel.png

Testing and Results

Since we made three iterations, there was not enough time to test on a full 6-week deployment, so representative testing was conducted instead. 

​

This included testing my navigation and control software over 1400 miles of road driving, a day-long field test on the water with the sponsor, and weeks of consecutive runtime on a benchtop. 

​

In the end, IQT Labs was very happy, and my team was awarded the best senior design project by a panel of ASME judges (and we all got As in the class!)

IMG_9168_edited.jpg
Convocation Award Ceremony

... Just a bit of senior spring autonomous boat surfing

© 2024 by Theo DeGuzman. Powered and secured by Wix

  • White LinkedIn Icon
  • GitHub
bottom of page