Web Interfacing Water Cooler System

135528-Thumbnail Image.png
Description
Abstract
This work details the process of designing and implementing an embedded system
utilized to take measurements from a water cooler and post that data onto a publicly accessible web server. It embraces the Web 4.0, Internet of Things, mindset of making

Abstract
This work details the process of designing and implementing an embedded system
utilized to take measurements from a water cooler and post that data onto a publicly accessible web server. It embraces the Web 4.0, Internet of Things, mindset of making everyday appliances web accessible. The project was designed to satisfy the needs of a local faculty member who wished to know the water levels available in his office water cooler, potentially saving him the disappointment of discovering an empty container. 


This project utilizes an Arduino microprocessor, an ESP 8266 Wi-Fi module, and a variety of sensors to detect water levels in filtered water unit located on the fourth floor of the the Brickyard Building, BYENG, at Arizona State University. This implementation will not interfere with the system already set in place to store and transfer water. The level of accuracy in water levels is expected to give the ability to discern +/- 1.5 liters of water. This system will send will send information to a created web service from which anyone with internet capabilities can gain access. The interface will display current water levels and attempt to predict at what time the water levels will be depleted. In the short term, this information will be useful for individuals on the floor to discern when they are able to extract water from the system. Overtime, the information this system gathers will map the drinking trends of the floor and can allow for a scheduling of water delivery that is more consistent with the demand of those working on the floor.
Date Created
2016-05
Agent

Exploring Computational Thinking in 9-12 Education: Developing a Computer Science Curriculum for Bioscience High School

135380-Thumbnail Image.png
Description
Bioscience High School, a small magnet high school located in Downtown Phoenix and a STEAM (Science, Technology, Engineering, Arts, Math) focused school, has been pushing to establish a computer science curriculum for all of their students from freshman to senior

Bioscience High School, a small magnet high school located in Downtown Phoenix and a STEAM (Science, Technology, Engineering, Arts, Math) focused school, has been pushing to establish a computer science curriculum for all of their students from freshman to senior year. The school's Mision (Mission and Vision) is to: "..provide a rigorous, collaborative, and relevant academic program emphasizing an innovative, problem-based curriculum that develops literacy in the sciences, mathematics, and the arts, thus cultivating critical thinkers, creative problem-solvers, and compassionate citizens, who are able to thrive in our increasingly complex and technological communities." Computational thinking is an important part in developing a future problem solver Bioscience High School is looking to produce. Bioscience High School is unique in the fact that every student has a computer available for him or her to use. Therefore, it makes complete sense for the school to add computer science to their curriculum because one of the school's goals is to be able to utilize their resources to their full potential. However, the school's attempt at computer science integration falls short due to the lack of expertise amongst the math and science teachers. The lack of training and support has postponed the development of the program and they are desperately in need of someone with expertise in the field to help reboot the program. As a result, I've decided to create a course that is focused on teaching students the concepts of computational thinking and its application through Scratch and Arduino programming.
Date Created
2016-05
Agent

RISC CPU Design

Description
This project's goal was to design a Central Processing Unit (CPU) incorporating a fairly large instruction set and a multistage pipeline design with the potential to be used in a multi-core system. The CPU was coded and synthesized with Verilog.

This project's goal was to design a Central Processing Unit (CPU) incorporating a fairly large instruction set and a multistage pipeline design with the potential to be used in a multi-core system. The CPU was coded and synthesized with Verilog. This was accomplished by building on the CPU design from fundamentals learned in CSE320 and increasing the instruction set to resemble a proper Reduced Instruction Set Computing (RISC) CPU system. A multistage pipeline was incorporated to the CPU to increase instruction throughput, or instructions per second. A major area of focus was on creating a multi-core design. The design used is master-slave in nature. The master core instructs the sub-cores where they should begin execution, the idea being that the operating system or kernel will be executing on the master core and the "user space" programs will be run on the sub-cores. The rationale behind this is that the system would specialize in running several small functions on all of its many supported cores. The system supports around 45 instructions, which include several types of jumps and branches (for changing the program counter based on conditions), arithmetic operations (addition, subtraction, or, and, etc.), and system calls (for controlling the core execution). The system has a very low Clocks per Instruction ratio (CPI), but to achieve this the second stage contains several modules and would most likely be a bottleneck for performance if implemented. The CPU is not perfect and contains a few errors and oversights, but the system as a whole functions as intended.
Date Created
2016-05
Agent

Wi-Fi Enabled Message Transmission: An Implementation

135078-Thumbnail Image.png
Description
The Internet of Things has spread Wi-Fi connectivity to household and business devices everywhere. It is important that we understand IoT's risks and capabilities as its popularity continues to grow, and that we recognize new and exciting uses for it.

The Internet of Things has spread Wi-Fi connectivity to household and business devices everywhere. It is important that we understand IoT's risks and capabilities as its popularity continues to grow, and that we recognize new and exciting uses for it. In this project, the ESP8266 Wi-Fi controller, powered by a lithium battery, is used to transmit messages from a user's browser or mobile phone to an OLED display. The ESP8266 is a system on a chip (SOC) which boasts impressive features such as full TCP/IP stack, 1 MB of flash memory, and a 32-bit CPU. A web server is started on the ESP8266 which listens at a specific port and relays any strings from the client back to the display, acting as a simple notification system for a busy individual such as a professor. The difficulties with this project stemmed from the security protocol of Arizona State University's Wi-Fi network and from the limitations of the Wi-Fi chip itself. Several solutions are suggested, such as utilizing a personal cellular broadband router and polling a database for stored strings through a service such as Data.Sparkfun.com.
Date Created
2016-12
Agent

Big Data Network Analysis of Genetic Variation and Gene Expression in Individuals with Breast Cancer

135041-Thumbnail Image.png
Description
The advent of big data analytics tools and frameworks has allowed for a plethora of new approaches to research and analysis, making data sets that were previously too large or complex more accessible and providing methods to collect, store, and

The advent of big data analytics tools and frameworks has allowed for a plethora of new approaches to research and analysis, making data sets that were previously too large or complex more accessible and providing methods to collect, store, and investigate non-traditional data. These tools are starting to be applied in more creative ways, and are being used to improve upon traditional computation methods through distributed computing. Statistical analysis of expression quantitative trait loci (eQTL) data has classically been performed using the open source tool PLINK - which runs on high performance computing (HPC) systems. However, progress has been made in running the statistical analysis in the ecosystem of the big data framework Hadoop, resulting in decreased run time, reduced storage footprint, reduced job micromanagement and increased data accessibility. Now that the data can be more readily manipulated, analyzed and accessed, there are opportunities to use the modularity and power of Hadoop to further process the data. This project focuses on adding a component to the data pipeline that will perform graph analysis on the data. This will provide more insight into the relation between various genetic differences in individuals with breast cancer, and the resulting variation - if any - in gene expression. Further, the investigation will look to see if there is anything to be garnered from a perspective shift; applying tools used in classical networking contexts (such as the Internet) to genetically derived networks.
Date Created
2016-12
Agent

Voice Reconfigurable Networks

135018-Thumbnail Image.png
Description
The software element of home and small business networking solutions has failed to keep pace with annual development of newer and faster hardware. The software running on these devices is an afterthought, oftentimes equipped with minimal features, an obtuse user

The software element of home and small business networking solutions has failed to keep pace with annual development of newer and faster hardware. The software running on these devices is an afterthought, oftentimes equipped with minimal features, an obtuse user interface, or both. At the same time, this past year has seen the rise of smart home assistants that represent the next step in human-computer interaction with their advanced use of natural language processing. This project seeks to quell the issues with the former by exploring a possible fusion of a powerful, feature-rich software-defined networking stack and the incredible natural language processing tools of smart home assistants. To accomplish these ends, a piece of software was developed to leverage the powerful natural language processing capabilities of one such smart home assistant, the Amazon Echo. On one end, this software interacts with Amazon Web Services to retrieve information about a user's speech patterns and key information contained in their speech. On the other end, the software joins that information with its previous session state to intelligently translate speech into a series of commands for the separate components of a networking stack. The software developed for this project empowers a user to quickly make changes to several facets of their networking gear or acquire information about it with just their language \u2014 no terminals, java applets, or web configuration interfaces needed, thus circumventing clunky UI's or jumping from shell to shell. It is the author's hope that showing how networking equipment can be configured in this innovative way will draw more attention to the current failings of networking equipment and inspire a new series of intuitive user interfaces.
Date Created
2016-12
Agent

Bridging the Gap Between Secondary Education and College Level S.T.E.M. Education

Description
This research ventures to adjust the Algebra 2 Core Standards set by the Arizona Department of Education so that computer science concepts may be taught in parallel with the mathematical concepts in Algebra 2 in order to facilitate a better

This research ventures to adjust the Algebra 2 Core Standards set by the Arizona Department of Education so that computer science concepts may be taught in parallel with the mathematical concepts in Algebra 2 in order to facilitate a better understanding of both subjects. The close relation to computer science and mathematics make this course possible. Students will be more prepared for university level education when they understand how technology works rather than simply how to use it. The solution is to create an online set of modules that can be taught alongside the high school mathematics course, Algebra 2. The solution contains a set of five modules that parallel with the Arizona core standards of the class. There are several obstacles that needed to be overcome in order to create online modules that would fit the needs of schools, students and teachers. This solution will reach students quickly as the hope is that it will become a requirement according to the Arizona Department of Education core standards. The course will be easily accessible to students as it is online and the course will fit into the existing education system, which would not require state laws to be passed in order to require the teaching of computer science. The goal is to bridge the gap between secondary education and college level S.T.E.M. education specifically in reference to computer science so that students start college with a strong understanding of how technology works in order to help them become more successful in the future.
Date Created
2016-12
Agent

Coldfire Processor Modeling

136728-Thumbnail Image.png
Description
This project was centered around designing a processor model (using the C programming language) based on the Coldfire computer architecture that will run on third party software known as Open Virtual Platforms. The end goal is to have a fully

This project was centered around designing a processor model (using the C programming language) based on the Coldfire computer architecture that will run on third party software known as Open Virtual Platforms. The end goal is to have a fully functional processor that can run Coldfire instructions and utilize peripheral devices in the same way as the hardware used in the embedded systems lab at ASU. This project would cut down the substantial amount of time students spend commuting to the lab. Having the processor directly at their disposal would also encourage them to spend more time outside of class learning the hardware and familiarizing themselves with development on an embedded micro-controller. The model will be accurate, fast and reliable. These aspects will be achieved through rigorous unit testing and use of the OVP platform which provides instruction accurate simulations at hundreds of MIPS (million instructions per second) for the specified model. The end product was able to accurately simulate a subset of the Coldfire instructions at very high rates.
Date Created
2014-12
Agent

Evaluating Enjoyment of Game Mechanics

136654-Thumbnail Image.png
Description
Many psychology-rooted studies into the games industry seek to identify emotions players experience during gameplay. However, there is a need to extend this kind of research beyond the realm of emotion into more long-term concepts, like satisfaction. This experiment tested

Many psychology-rooted studies into the games industry seek to identify emotions players experience during gameplay. However, there is a need to extend this kind of research beyond the realm of emotion into more long-term concepts, like satisfaction. This experiment tested whether a specific game mechanic was enjoyable. Other literature has established a way to describe and quantify enjoyability. Using a survey based on that work, this study evaluated the addition of a 'gel gun' to a platforming game. The fun was found to significantly increase players' affective experiences, concentration, and sense of control, all being components of an enjoyable experience. It also exposed some conflicts within the survey that merit investigation. It was concluded that the 'gel gun' feature increased gameplay enjoyability without significantly diminishing any other enjoyable factors. Future work may explore the connections between this feature and specific elements of enjoyment.
Date Created
2014-12
Agent

Raspberry Pi Radio: Programming a Multiple Source Music Player

136364-Thumbnail Image.png
Description
The purpose of this project was to program a Raspberry Pi to be able to play music from both local storage on the Pi and from internet radio stations such as Pandora. The Pi also needs to be able to

The purpose of this project was to program a Raspberry Pi to be able to play music from both local storage on the Pi and from internet radio stations such as Pandora. The Pi also needs to be able to play various types of file formats, such as mp3 and FLAC. Finally, the project is also to be driven by a mobile app running on a smartphone or tablet. To achieve this, a client server design was employed where the Raspberry Pi acts as the server and the mobile app is the client. The server functionality was achieved using a Python script that listens on a socket and calls various executables that handle the different formats of music being played. The client functionality was achieved by programming an Android app in Java that sends encoded commands to the server, which the server decodes and begins playing the music that command dictates. The designs for both the client and server are easily extensible and allow for any future modifications to the project to be easily made.
Date Created
2015-05
Agent