Over Relay Communication Aircraft
Status: In progress
Status: In progress
The problem I'm solving
Current fixed-wing UAVs are either fast to deploy OR capable, not both. ORCA is designed to be fully mission-ready from a single backpack in under 2 minutes, without sacrificing range, payload, or altitude performance.
Key design goals
Modular by design
Wings, comms, and payloads hot-swap without tools. One airframe, any mission configuration.
Sub-2 minute assembly
Snap-fit quick-connect joints designed for field use operable with gloves, no loose hardware.
1 backpack form factor
Mil-spec MOLLE compatible. Everything packs into a single carry system for one-person deployment.
The goal of this project was to make a hardware test bed for a quadcopter flight controller. The flight controller consist of a ESP32 micro controller with an Inertial Measurement Unit, Barometer, and Ultra wide bandwidth device.
A image of the following test bed can be see on the right.
After veryfing that all sensors worked properly, the schematic was then made replicated all the circuit design used in the hardware test bed. This include the voltage converters and all of the connections to the gpio and I2C pins on the microcontroller
Finally, the ESP32 flight controller was designed with a 4-layer board that includes a 2 signal planes a ground plane and a power plane.
Note: That the PCB design was done with collaboration with my friend Kent Fukada, who additionally added mosfets for brushed dc motors and also a footprint for GPS module.
Navigation in Indoor Denied Environments
For this project I implemented a indoor positioning system using Ultra-wide bandwidth (UWB) modules. UWB are radio modules that transmit a short radio pulse. These are the same things that are on apple tags and the purpose of them is if you have multiple UWB that are transmitting between eachother, you can get the time of flight and sense the distance from each module. Given that we know three distances and the position of three UWB modules (referred to as anchors), as shown in the right, you can find the position of the an agent (known as tag),shown on the left, within a defined local reference frame.
Note: I did not design the PCBs for the boards below : ) contribution soley software focused
Results
The results on the left shows the true position of the ground robot in red vs all the estimated positions that were taken by triangulating in the xy-plane in black.
The UWB is susceptible many factors such as line of sights and material deflections, thats why there are deviations from estimated position.
So whats next?
Currently, I am working on a Extended Kalman Filter that uses both the triangulated UWB data and an IMU w/ magnetometer. Given that I know the true position of the ground robot, I can compute the covariance matrices for the state estimations.
I will update this once its completed: )
I have worked on two cubesats designs, one of which was through my previous club Aeronautical and Astronautical Cubesat Team. My role within this club was to contribute towards the communication subsystem by make sure that the ground station was receiving packets from the satellites radio.
I was also in charge of doing all the test operations prior to our launch as well as handling and delivery.
The other design that I was apart of was through my senior project where my classmates and designed a 12U cubesat whos mission objective was to detect and track space debris. I worked on the attitude determination and control system (ADCS) and also the testbed for mitigating the satellites camera capability of tracking space debris
The streak test involves a camera and a laser, and the goal is to test the streak detection algorithm on our satellite by creating a streak in the cameras frame. The image on the left shows the test bed that I made that included having a controlled sweeps at a specified angular rate. This in itself made a streak as shown in the middle, in which was recognized and computed as shown in the right.
For this specific test, I used an integration time (this is the time the cameras sensor collects light to create an image) of 95ms and an angular rate of the servo motor of 50 deg/s.
On the image of the right shows the theoretical result. For an integration rate of 95ms and angular rate of 50 deg/s, an expected streak length is 800 pixels, which is close to our experimental results.
For the ADCS, I modeled the environmental disturbances of our cubesat in LEO orbit, and then proceeded on sizing the the actuators. First to make sure that the magnetorquers were capable of detumbling the satellite, I mapped earths magnetic field and simulated the spacecrafts angular rates
After 44 minutes the angular rates have decreased such that the star tracker could be used to reorient with solar panels facing solar.
This simulation consists of a omnidirectional robot that has meccanum wheels. For this simulation we use a model predictive controller (MPC) that handles the nonlinear coupled dynamics. Using the MPC controller we can impose constraints, such as deviation from path, velocity bias, and final state error.
The simulation shows the results of the simulation, compared to a Proportional, iterative controller.
Note: This project was done in collaboration with Luc Ureztha and Kevin Ma