Open Access. Powered by Scholars. Published by Universities.®

Computer Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 30 of 41

Full-Text Articles in Computer Engineering

Planr.: Planar Learning Autonomous Navigation Robot, Gabrielle S. Santamorena, Daniel Kasman, Jesus Mercado, Ben Klave, Andrew Weisman, Anthony Fortner Jun 2019

Planr.: Planar Learning Autonomous Navigation Robot, Gabrielle S. Santamorena, Daniel Kasman, Jesus Mercado, Ben Klave, Andrew Weisman, Anthony Fortner

Computer Engineering

PLANR is a self-contained robot capable of mapping a space and generating 2D floor plans of a building while identifying objects of interest. It runs Robot Operating System (ROS) and houses four main hardware components. An Arduino Mega board handles the navigation, while an NVIDIA Jetson TX2, holds most of the processing power and runs ROS. An Orbbec Astra Pro stereoscopic camera is used for recognition of doors, windows and outlets and the RPLiDAR A3 laser scanner is able to give depth for wall detection and dimension measurements. The robot is intended to operate autonomously and without constant human monitoring ...


A Basic, Four Logic Cluster, Disjoint Switch Connected Fpga Architecture, Joseph Prachar Jun 2018

A Basic, Four Logic Cluster, Disjoint Switch Connected Fpga Architecture, Joseph Prachar

Computer Engineering

This paper seeks to describe the process of developing a new FPGA architecture from nothing, both in terms of knowledge about FPGAs and in initial design material. Specifically, this project set out to design an FPGA architecture which can implement a simple state machine type design with 10 inputs, 10 outputs and 10 states. The open source Verilog-to-Routing FPGA CAD flow tool was used in order to synthesize, place, and route HDL files onto the architecture. This project was completed in terms of the spirit of the original goals of implementing an FPGA from scratch. Although, the project resulted in ...


Arm Mke1xf Mcu Replatform, Nathan Hong, Derek Lung, Japsimran Singh, Bevin Tang Jun 2018

Arm Mke1xf Mcu Replatform, Nathan Hong, Derek Lung, Japsimran Singh, Bevin Tang

Computer Engineering

After Cal Poly Racing’s electrical team began to hit the technical limits of the ADC and other I/O features of the current 8-bit Atmel AT90 microcontroller unit, it became clear that an upgrade was due. This replatforming project takes the functionalities of the old, 8-bit architecture, and aims to provide a 32-bit version using the ARM MKE1xF MCU. With the idea of having a working PCB as a stretch goal, the scope of the library development was limited to enable base functionality. Thus, the only libraries developed were for the Timer, ADC, SPI, UART, and CAN. Additionally, this ...


Real-Time Audio-Midi Controller, Brian Shino Balberchak Apr 2018

Real-Time Audio-Midi Controller, Brian Shino Balberchak

Computer Engineering

Most MIDI controllers used in music production use a regular keyboard to generate the MIDI notes that are sent to the synthesizer. This project aims to provide the user with a different way of generating MIDI data: by playing an instrument of their choice with a passive electronic pickup to generate MIDI notes that correspond with the fundamental frequency of the musical pitch being played. The pitch-detecting algorithm used in this application utilizes a modified form of auto-correlation.

As an embedded systems project that uses signal-processing techniques, the knowledge of topics from the following courses was essential:

EE 211: Op-Amp ...


Blend It Applications And Server, Rebecca Mckinley, Cory Mayer, Tyler Fox, Alex Bartlett, Aly Chapman Jun 2017

Blend It Applications And Server, Rebecca Mckinley, Cory Mayer, Tyler Fox, Alex Bartlett, Aly Chapman

Computer Engineering

No abstract provided.


Mr. Mix: The Automated Home Bartender, Brian Moore, Robert Hulbert Jun 2017

Mr. Mix: The Automated Home Bartender, Brian Moore, Robert Hulbert

Computer Engineering

No abstract provided.


Android Drone: Remote Quadcopter Control With A Phone, Aubrey John Russell Dec 2016

Android Drone: Remote Quadcopter Control With A Phone, Aubrey John Russell

Computer Engineering

The purpose of the “Android Drone” project was to create a quadcopter that can be controlled by user input sent over the phone’s Wi-Fi connection or 4G internet connection. Furthermore, the purpose was also to be able to receive live video feedback over the internet connection, thus making the drone an inexpensive option compared to other, equivalent drones that might cost thousands of dollars. Not only that, but the Android phone also has a host of other useful features that could be utilized by the drone: this includes GPS, pathing, picture taking, data storage, networking and TCP/IP, a ...


Isopropyl Alcohol Pump For Printed Circuit Boards Using An Arduino, Lawrence Zhu Dec 2016

Isopropyl Alcohol Pump For Printed Circuit Boards Using An Arduino, Lawrence Zhu

Computer Engineering

No abstract provided.


Teaching The Internet Of Things: Bridging A Path From Cpe329, Steven Han, Rafael Lopez Dec 2016

Teaching The Internet Of Things: Bridging A Path From Cpe329, Steven Han, Rafael Lopez

Computer Engineering

“The ability to connect, communicate with, and remotely manage an incalculable number of networked, automated devices via the Internet is becoming pervasive, from the commercial kitchen to the residential basement room to the arm of the fitness buff.” - WSO2

In this report, we will investigate procedures and technologies used in IoT. A variety of cloud platforms will be described to demonstrate its strengths and usage on IoT applications. Furthermore, demonstrate the most popular hardware being used in several of these applications. This report is aimed to give a good understanding on what it takes to put together an IoT application ...


Wearable Ekg, Cale Hopkins, Tanner Papenfuss, Travis E. Michael Jun 2016

Wearable Ekg, Cale Hopkins, Tanner Papenfuss, Travis E. Michael

Computer Engineering

No abstract provided.


Pinpoint: Location Beacon And Tracking, Ezequiel Lopez Iii Jun 2016

Pinpoint: Location Beacon And Tracking, Ezequiel Lopez Iii

Computer Engineering

The purpose of Pinpoint was to create a device that can collect and transmit location information for multiple users on a wireless network. The device would be used to keep track of and communicate with other users nearby. The final design includes a touchscreen display as a graphical user interface (GUI), an XBee RF module for wireless networking, a GPS receiver for location tracking, and a Programmable System on a Chip (PSoC) to control the modules.


Pet Food Monitor Using The Raspberry Pi, Kimberly Aguero Jun 2016

Pet Food Monitor Using The Raspberry Pi, Kimberly Aguero

Computer Engineering

Computer system built on a Raspberry Pi that will monitor the levels of food in a pet food bowl. If it detects that there is no food in the bowl, it will notify the user via email or text.


Senior Project: Control System For An Underwater Remotely Operated Vehicle, Tyler Mau, Joseph Mahoney Jun 2016

Senior Project: Control System For An Underwater Remotely Operated Vehicle, Tyler Mau, Joseph Mahoney

Computer Engineering

No abstract provided.


Microcontroller Application For Linear And Rotational Motion Sensing, Zachary Mintzer Dec 2015

Microcontroller Application For Linear And Rotational Motion Sensing, Zachary Mintzer

Computer Engineering

No abstract provided.


Printed Circuit Board For Introductory Animatronics Course, Preston Brown Jun 2015

Printed Circuit Board For Introductory Animatronics Course, Preston Brown

Computer Engineering

For many years, freshmen Computer Engineering students at California Polytechnic State University have taken a course that introduces them to the “processes of electronics manufacturing. They are lectured on concepts such as CAD/CAM design, Design for Manufacture (DFM), documentation requirements, prototyping and production planning”. The laboratory portion of the course allows students to “use hands-on techniques to solidify knowledge of project planning, soldering, automation, hand tool usage and production methods” by manufacturing their own power supply, starting with aluminum sheets, a bag of components, and and an unassembled printed circuit board (PCB).

While the project is popular among students ...


Oversubscribing Inotify On Embedded Platforms, Donald Percivalle, Scott Vanderlind Jun 2015

Oversubscribing Inotify On Embedded Platforms, Donald Percivalle, Scott Vanderlind

Computer Engineering

For most computers running the popular Linux operating system, the inte- grated kernel component inotify provides adequate functionality for monitor- ing changes to files present on the filesystem. However, for certain embedded platforms where resources are very limited and filesystems are very populated (like network attached storage (NAS) devices), inotify may not have enough resources to provide watchers for every file. This results in applications missing change notifications for files they have watched. This paper explores methods for using inotify most effectively on embedded systems by leveraging more la- tent storage. Benefits of this include a reduction in dropped notifications ...


Pre-R: Making Healthcare Healthier, Timothy Acorda, Ryan Foletta, Winifred Lee, Thomas Nguyen, Isabella Sarmiento, Brian Truong, Marek Zhang Jun 2015

Pre-R: Making Healthcare Healthier, Timothy Acorda, Ryan Foletta, Winifred Lee, Thomas Nguyen, Isabella Sarmiento, Brian Truong, Marek Zhang

Computer Engineering

No abstract provided.


Team Omnimouse, Derek J. Halman, Josh B. Porter, Steven A. Silver, Ian S. Stemper Jun 2014

Team Omnimouse, Derek J. Halman, Josh B. Porter, Steven A. Silver, Ian S. Stemper

Computer Engineering

INFORMATION, DATA, FIGURES AND DRAWINGS EMBODIED IN THIS DOCUMENT ARE STRICTLY CONFIDENTIAL AND ARE SUPPLIED ON THE UNDERSTANDING THAT THEY WILL NOT BE DISCLOSED TO THIRD PARTIES WITHOUT THE PRIOR WRITTEN CONSENT OF QUALITY OF LIFE PLUS.


Designing A Modular Dsp Core For Real-Time Audio Performance, Kevin Richard Brewer Jun 2014

Designing A Modular Dsp Core For Real-Time Audio Performance, Kevin Richard Brewer

Computer Engineering

This project provides an overview for building a Digital Signal Processing (DSP) core on a Digilent Nexys2 FPGA board. The DSP core is designed to give Cal Poly students interested in DSP and its applications to audio engineering a usable platform to perform signal processing and analytics. The processes of the DSP core are modular, allowing students to design their own implementations of various adder and multiplier functions. Infinite impulse response (IIR) filters and finite impulse response (FIR) filters using both cascade and parallel implementations are the primary processing tools in the core, and all output can be visually and ...


Design Of Cpu Simulation Software For Armv7 Instruction Set Architecture, Dillon Tellier Jun 2014

Design Of Cpu Simulation Software For Armv7 Instruction Set Architecture, Dillon Tellier

Computer Engineering

Simulations have long been a part of the engineering process in both the professional and academic domain. From a pedagogic standpoint, simulations allow students to explore the dynamics of engineering scenarios by controlling variables, taking measurements, and observing behavior which would be difficult or impossible without simulation. One such tool is a CPU simulator used in Cal Poly’s Computer Architecture classes; this software simulates an instruction accurate operation of a computer processor and reports statistics regarding the execution of the supplied compiled machine code. For the last several years Cal Poly’s computer architecture classes have used a previous ...


Chromium Os On Freescale I.Mx6q, Pushpal Sidhu Jun 2014

Chromium Os On Freescale I.Mx6q, Pushpal Sidhu

Computer Engineering

This projects intention is to get Chromium OS running on a Freescale i.MX6q processor, a processor based on the ARM® Cortex™-A9 architecture. The development board I used is the Ventana GW5400 by Gateworks. This project inherently meant using Chromium OS's development system which meant I created a board specific package for the Ventana single board computer. This project is a proof of concept that can mean extending Chromium OS to various implementations of the ARM® Cortex™-A9 architecture.


Ecs Game Engine Design, Daniel Masamune Hall Jun 2014

Ecs Game Engine Design, Daniel Masamune Hall

Computer Engineering

Game programming design and organization can be difficult and complicated. To simplify the development process, frameworks with an array of tools and utilities known as game engines are used. The main goal of this project is to explore game engine designs and develop a design for a modular and expandable game engine. The designs covered in this paper are Object Oriented Programing (OOP) and two Entity Component System (ECS). OOP designs, commonly used in computer science, use a hierarchy of objects to share functionality. ECS designs are based off of the concepts Composition over inheritance in which objects contain features ...


Implementing A Robust Data Storage Software System For Cp9, Stuart Andrew Weickgenant Jun 2014

Implementing A Robust Data Storage Software System For Cp9, Stuart Andrew Weickgenant

Computer Engineering

This project focuses on the continuation of the CP9 CubeSat project, specifically the software which will be running on the satellite when it goes into space. This project mostly goes into designing a robust system which stores the data collected from the sensors on board CP9, whose purpose is to collect vibrations data from its launch vehicle during its ascent into space, into an easy to analyze system once the data is downlinked to PolySat’s ground station after launch. One other thing this system does is to prevent CP9 from collecting unnecessary data after launch. Testing was done on ...


Bluelock: A Secure Bluetooth Operated Padlock, Trever Mckee Jun 2013

Bluelock: A Secure Bluetooth Operated Padlock, Trever Mckee

Computer Engineering

For this project a secure, battery operated, Bluetooth operated padlock was created. The project included both the hardware to integrate with a padlock and an Android application used to interface with the hardware. In order to make the padlock secure both AES encryption and challenge response authentication were used for secure message passing between the device and the Android phone. The project also included power consumption and sustainability tuning including exploring Arduino sleep states and integrating the project with a solar charging unit.


Set-Top Box Simulator, Philip Tyler Jun 2013

Set-Top Box Simulator, Philip Tyler

Computer Engineering

This report presents a python-based Set-top box simulation program utilizing a Simulation library called SimPy (See Appendix 1) to simulate real-time operation of a Set-top Box, or DVR. A graphical user interface, designed with PyQt4, allows a user to customize many simulation parameters such as hard drive speeds, buffer sizes, length of simulation, etc. The GUI also shows the user any errors that occur during the simulation such as buffer overflows/underflows. The results of this simulator lie within 85%-95% accuracy depending on the user-input parameters. With this simulation program, a Set-top box hardware or firmware developer can interchange ...


Implementing A Matlab Based Attitude Determination Algorithm In C Within The Polysat Software Architecture, Dominic Bertolino Mar 2013

Implementing A Matlab Based Attitude Determination Algorithm In C Within The Polysat Software Architecture, Dominic Bertolino

Computer Engineering

This project focuses on one component within a complete attitude determination and control system (ADCS) for a small satellite. The component consists of porting the algorithm that determines the current attitude of the satellite developed by AERO students / team members. The original algorithm has been developed in MATLAB code. The actual algorithm will be simulated and tested in MATLAB by the AEROs. The porting consisted of integrating the pieces into the custom PolySat software environment in C. Testing was done to verify the ported component corresponded to the original MATLAB component as well as verify its runtime on the PolySat ...


Roborodentia Scoring System, Justin Kikuchi Jun 2012

Roborodentia Scoring System, Justin Kikuchi

Computer Engineering

Every year at Cal Poly there is a robotics competition called Roborodentia . Roborodentia is sponsored by various industry leaders to provide a valuable and fun learning experience for Cal Poly students and alumni. The competition is held during the Cal Poly open house and draws a large number of spectators. In order to provide the spectators with a fun experience, it is necessary to present them with a live scoreboard, with visual and auditory effects.

The objective of this senior project was to design and build a fully functional scoreboard and tournament bracket with real-time scoring and timer. The project ...


A Web-Based Approach To Music Library Management, Jason Young Jun 2012

A Web-Based Approach To Music Library Management, Jason Young

Computer Engineering

This application utilizes modern standards developing in web browsers to create a desktop-like application for managing a music library online. The server side application is written in a model-view-controller style using Python backed by a MySQL database. The client side JavaScript was designed around a modular concept interfacing several third-party frameworks and libraries. By taking advantage of developing browser features such as persistent local storage, this web application was designed to handle a large library of music.


Isus - An Autonomous Off-Road Balancing Robot - High Level Software And Components Implementation, Kent Williams Jun 2012

Isus - An Autonomous Off-Road Balancing Robot - High Level Software And Components Implementation, Kent Williams

Computer Engineering

The ISUS Mobile Robot is a balancing off-road mobile robotic vehicle capable of driving while balancing on two wheels in rough and changing terrain. The robot can be operated over WI-FI via a computer.


Frg Turbojet, Tyler Vitti Jun 2012

Frg Turbojet, Tyler Vitti

Computer Engineering

Members of the Cal Poly SLO campus club FRG work together with students of several different disciplines to build a functional turbojet engine. Engineering approaches include design, fabrication, testing, and computer sensing, control, and integration. The goal of the project is to produce a running turbojet engine monitored and controlled by embedded hardware and specialized PC software. This project is to be used by later groups for further research and development.