Projects
Table of Contents
- Minimum “Energy” embedding of a Tensegrity Structure
- Collaboration of Heterogeneous Multi-Agent Systems with Terrain-Dependent Mobility
- Robot Motion Planning and Localization
- Learning Machine Classifier Comparison
- Global Navigation Satellite System Software-Defined Radio
- Automated Flash Cable Cutter (Senior Capstone Project)
- Two Cart System System Identification and Control
- Amphibious Climbing Soft Robot
- Plastic Degradation Toggle Switch Research Proposal
- Robotic Path-Planning and Control Labs
- Automated Hanging Plant Rotator (Junior Design Project)
- Computational Modeling and Simulation
- Compressed Air Motor
Minimum “Energy” embedding of a Tensegrity Structure
Date: Spring Quarter 2024
Description: This project finds an embedding for a tensegrity structure comprised of springs (which can be compressed or extended) and rigid rods (which are difficult to compress) – represented as a graph, G = (V, E), in three-dimensional space (as we would like to consider a physical mechanical structure) – that minimizes the “energy” stored in the springs.
Collaboration of Heterogeneous Multi-Agent Systems with Terrain-Dependent Mobility
Date: Spring Quarter 2023
Description: This project studied the energy expenditure of heterogeneous robots – in the context of terrain-dependent mobility – with navigation tasks. In particular, we examined the impact of the Lie bracket operator on the vector fields that govern the controlled dynamics and solved an optimal control problem wherein robots can either work together (i.e., collaborate) or work independently.
Robot Motion Planning and Localization
Date: Spring Quarter 2021
Description: This project was two-folded. (1) Implemented one of the bug algorithms and the decomposition & search method algorithm to plan a robot’s path from any start point to any goal point in the free work space. (2) Implemented an extended Kalman filter (EKF) using relative range and bearing measurements for (i) robot localization and (ii) simultaneous robot localization and measurement beacon mapping.
Learning Machine Classifier Comparison
Date: Spring Quarter 2021
Description: This project studied the classification performance of several different learning machines, such as a feed-forward neural network (FFNN), k-nearest neighbors (K-NN), multi-class support vector machines (SVMs), and k-means clustering with principal component analysis (PCA), applied to the “wine data set” found on the “UCI Machine Learning Repository” which contains 13 wine attributes associated with three different wine classes.
Global Navigation Satellite System Software-Defined Radio
Date: Fall Quarter 2020
Description: This project was to create a global navigation satellite system (GNSS) software-defined radio (SDR) from scratch to successfully acquire and track different pseudorandom noise (PRN) codes from the different GNSS constellations. The GNSS SDR output the code error (in chips), phase error (in degrees), estimated Doppler frequency (in Hz), carrier-to-noise ratio (in dB-Hz), tracked in-phase and quadrature components, and code phase estimate (in meters). Moreover, the extracted navigation observables, in the form of pseudoranges, will need to be compensated for correctly (ionospheric and tropospheric delays) in order to obtain an accurate navigation solution for a stationary receiver using a nonlinear least squares estimator.
- Final Project Report [PDF]
Automated Flash Cable Cutter (Senior Capstone Project)
Date: Fall Quarter 2019 - Spring Quarter 2020
Awards: Best Technical Project in Mechanical Engineering & Best Project Pitch
Desciption: This was the senior capstone project assigned to a team of five mechanical engineers (including myself) sponsored by Strand Products Incorporated (Inc) as part of University of California Santa Barabara’s (UCSB) three quarter long capstone series. Strand Products Inc asked our team to automate the cable cutting process by developing an electromechanical system which can seamlessly integrate with an existing Ewald flash cutter. Typically the setup for cutting cable (e.g., machine preparation, cable measuring, cable dereeling, ect.) are arduously performed by a lab technician resulting in slow manufacturing cycle times. The developed autonomous cable cutting system is intended to mimic the lab technician’s hands during each cutting job by utilizing a suite of sensors, pneumatic actuators, stepper motors, and microcontrollers. Our team’s design solution contained a cable dereeler, feeder system, cable cutter, and extraction system. The final product was intended to be user friendly by having a simple touchscreen graphical user interface (GUI) such that individuals can easily specify their desired cable length and quantity for each cutting job, among other things, during the set up phase. The final design was intended to be safe to use with minimal supervision and robust to varying cable cutting job types (e.g., change of spool size, cable material, or cable sizes). Our team was able to successfully optimize Strand Products Inc’s time while being able to accurately and precisely cutting large amounts of cable.
Website: Strand Products C.G. Automation
- Design Packet (Final Product Report) [PDF]
- Mechanical Engineering Design Competition Slides [PDF]
- Printed Circuit Board (PCB) Schematic [PDF]
Two Cart System System Identification and Control
Date: Spring Quarter 2020
Description: This project was to perform system identification of a two cart system connected by a spring, then synthesis a closed-loop feedback controller for the identified model which satisfies several performance requirements. There were four parts: (1) expriment data collection, (2) system identification using nonparametric and parametric methods, (3) controller design, and (4) controller design testing.
- Final Project Report [PDF]
Amphibious Climbing Soft Robot
Date: Winter Quarter 2020
Description: This project was designed for a team of two people to fabricate a soft robot which can traverse 1 meter carrying a 100 gram mass. We decided to recreate an ampibious climbing soft robot (ACSR). This specific soft robot took many iterations of different silicone casting molds to successfully fabricate the correct air pathway configuration which creates a suction force required for a walking gait. The final iteration of the ACSR worm was able to move forwards and backwards but we were unable to design a method to change the worm’s heading (or yaw) angle.
- Final Project Report [PDF]
Plastic Degradation Toggle Switch
Date: Fall Quarter 2019
Description: This project involved writing a research proposal describing a potential biological computing problem, contains a literature review, and discusses the hypothesized solution’s impact on the environment. My project focused on a plastic degredation toggle switch which could break down the PET plastics floating throughout vast water ecosystems (e.g., rivers, oceans, seas, ect.). The challenge of this problem is to develop a plastic degrading enzyme which does not harm the ambient marine life in the environment.
- Research Proposal [PDF]
Robotic Path-Planning and Control Labs
Date: Fall Quarter 2019
- Two-Link Arm: Triangle Path Planning & Control
Description: This laboratory focused on tracing a triangle using a two-link arm. A MATLAB and simulink script utilized inverse kinematics for the trajectory planning and control of the robotic arm’s end effector coordinates. Forward kinematics were used to find the laser path from the angles outputted in simulink.
Lab Report [PDF]
- Two-Link Arm: Maze Path Planning & Control
Description: This laboratory focused on having a laser pointer reach the end a goal point within a maze as fast as possible without exiting the specified boundaries. A MATLAB and simulink script utilized inverse kinematics for the trajectory planning and control of the robotic arm’s end effector coordinates. Forward kinematics were used to find the laser path from the angles outputted in simulink.
Lab Report [PDF]
- Omnibot: Path Planning Square and Circle
- Description: This laboratory focused on coordinating a single omnibot to drive in a circle and square pattern. A MATLAB and simulink script utilized inverse kinematics for the trajectory planning and control of the omnibot. Forward kinematics were used to find the omnibot’s actual path from the angles obtained in simulink.
- Description: This laboratory focused on coordinating a single omnibot to drive in a circle and square pattern. A MATLAB and simulink script utilized inverse kinematics for the trajectory planning and control of the omnibot. Forward kinematics were used to find the omnibot’s actual path from the angles obtained in simulink.
Lab Report [PDF]
- Omnibot: Point Tracking & Control
- Description: This laboratory focused on having an omnibot trace a semicircle while a laser tracks a user-specified point. A MATLAB and simulink script utilized inverse kinematics for the trajectory planning and control of the omnibot. Forward kinematics were used to find the laser path from the angles outputted in simulink.
- Description: This laboratory focused on having an omnibot trace a semicircle while a laser tracks a user-specified point. A MATLAB and simulink script utilized inverse kinematics for the trajectory planning and control of the omnibot. Forward kinematics were used to find the laser path from the angles outputted in simulink.
- Pre-Lab Results [PDF]
- Lab Report [PDF]
Automated Hanging Plant Rotator (Junior Design Project)
Date: Spring Quarter 2019
Description: This was the junior design project that a team of five mechanical engineers (including myself) built over six weeks as part of the University of California Santa Barbara’s (UCSB) “Introduction to Mechanical Design” course. Our team built a device to autonomously rotate a hanging plant to evenly distribute sunlight to all sides of a plant throughout the day. A photoresistor is used to measure the ambient light intensity values which incentivizes the plant to rotate accordingly. The automated rotations were controlled using an Arduino Nano connected to a DC motor. A housing was created for the electrical devices from a strong polymer material where we made it robust by machining plastic stoppers to dampen vibrations and included evenly distributed holes to minimize the residual heat created from the electrical components.
- Final Report [PDF]
Computational Modeling and Simulation
Date: Spring Quarter 2019
- Bouncing Ball Simulation
- Description: This project aimed to capture the motion of a disk interacting with the walls of a closed container. The evolution for the disk’s center of mass was found using Euler’s scheme and Newton’s second law of motion for an ordinary differential equation.
- Description: This project aimed to capture the motion of a disk interacting with the walls of a closed container. The evolution for the disk’s center of mass was found using Euler’s scheme and Newton’s second law of motion for an ordinary differential equation.
Final Report [PDF]
- Upwind Advection Simulation
- Description: This project aimed to simulate the upwind scheme by solving the two-dimensional (2-D) advection equation to obtain the advection solution and the velocity field.
Final Report [PDF]
- Diffusion Simulation
- Description: This project aimed to solve the two-dimensional (2-D) diffusion equation for some concentration. The solution was found using Robin and Dirichlet boundary conditions. Moreover, the error between the exact and numerical cases were calculated for the two boundary conditions.
- Description: This project aimed to solve the two-dimensional (2-D) diffusion equation for some concentration. The solution was found using Robin and Dirichlet boundary conditions. Moreover, the error between the exact and numerical cases were calculated for the two boundary conditions.
Final Report [PDF]
- Oil Spill Concentration Simulation
- Description: This project aimed to simulate an oil spill using the two-dimensional (2-D) advection-diffusion equation over several hours of the day. The numerical solution produced the oil spill concentration’s evolution over time which was utilized to figure out when the unsafe concentration limit was surpassed. Furthermore, the maximum error was computed between the numerical and exact concentration values at the end of the simulation.
- Final Report [PDF]
Compressed Air Motor
Date: Fall Quarter 2018
Description: This project’s goal was to assemble a compressed air motor while adhering to specified dimension and tolerance values. Machine shop tools, such as the lathe, mill, band saw, hack saw, calipers, drills, and taps, were used to machine the different parts. My time was efficiently managed to machine, construct, and test the final design product within six weeks. My compressed air motor had a max RPM of 2300 and an idle RPM of 700 after testing.