Lucas Murray ME 305 Portfolio
Lucas Murray ME 305 Portfolio

Introduction

My name is Lucas Murray, this is my ME 305 Intro to Mechatronics Portfolio. This portfolio documents and demonstrates all the code written throughout this quarter, culminating in the final project, the ball balancing platform. To access each different lab and homework page, please look below and clock the desired link.

Lab 1

Created a program to change the output of an LED light when a button is pressed
See https://lmurray03.bitbucket.io/_page1.html for complete description

Lab 2

Wrote code to read and update the position of an encoder, being able to gather positional data as well as perform other simple functions.
See https://lmurray03.bitbucket.io/_page2.html for complete description

HW 0x02

To model the ball balancing system, we analyzed the linkages as a 2D model, creating a set of matrices that fully describe the system response.
See https://lmurray03.bitbucket.io/_page3.html for the complete analysis

Lab 3

Wrote a program to run both motors on our board simultaneously and added their functionality to the primary taskUser function created in lab 2.
See https://lmurray03.bitbucket.io/_page4.html for the complete description

HW 0x03

To complete the model of the ball balancing system, we simulated the system response using MATLAB to see how it would react under specific conditions.
See https://lmurray03.bitbucket.io/_page5.html for the complete analysis

Lab 4

Wrote a program that will use closed loop control that will continuously update the motor velocity while trying to reach a set velocity using an error feedback loop.
See https://lmurray03.bitbucket.io/_page6.html for the complete description

Lab 5

Created a class and task that can read usable data from an IMU and can calibrate or continuously update along with other tasks.
See https://lmurray03.bitbucket.io/_page7.html for the complete description

Lab 0xFF: Term Project

The goal of this project was to code a platform with an MCU, IMU, and a resistive touch panel that could balance a ball on top for an extended period of time. The project utilizes closed loop control to balance the platform and ball actively using the data from the IMU and touch panel.
See https://lmurray03.bitbucket.io/_page8.html for the complete description

Source Code

To directly access the source code for this portfolio, please click the link below. The source code for each file is also provided at the bottom of its respective page on this website.
https://bitbucket.org/lmurray03/me305_lucas_murray/src/master/

Author
Lucas Murray
Date
March 18, 2022