images/avatar.jpg

Nick Neisen

HMI Sensor Network

Measure and report environment data using XBEE nodes and a browser based graphical user interface.

The nodes

This project was my senior design project for my last year of school at South Dakota School of Mines & Technology. My partner and I created shield boards for XBEE wireless modules. These shields made it easy to attach sensors for temperature, lighting, and humidity along with an indicator LED. The XBEE network used a self healing mesh network which made it easy to add new nodes or compensate for a missing node. The node’s signal needed to go through brick walls and so pro modules were the ideal candidates. Basic XBEE modules were also used in the network due to their availability.

Image Stitching

Most cameras and cell phones today have the ability to combine multiple images or create on panoramic view. To be able to stitch images together, they must be transformed into the same frame. This is done by finding the same points in each image and creating a homography matrix to relate the points from one image to the other. Once the homography matrix is found, it can be used to morph one image into the same frame as the other and then combine the images.

Space Invaders

An RTOS based game running on a PIC32 microcontroller.

One of the projects in my RTOS class involved making games for an embedded device. The first part of the lab was to fix a simple pong game that had small issues such as the ball sometimes going through the paddle or not keeping score. The second part of the lab was to create our one game. My partner and I chose to create a classic space shooter game.

Edge Detection

The goal of this project was to create my own mathematical functions for doing edge detection. I started with the functions that were built into Matlab which I later replaced with my own versions. I chose a picture from the internet t use for testing my functions.

/images/edge-detection/subaru-brz.jpg
Original image

Gradient Function

The first function was the gradient function. This function creates two arrays the same size as the original image. It then iterates over the original image and finds the derivative of the image with respect to x and y. The derivatives are placed into the newly created arrays.