Difference between revisions of "F12: Unified Wireless Health Monitoring System"

From Embedded Systems Learning Academy
Jump to: navigation, search
(Software Design)
(Software Design)
Line 227: Line 227:
 
*'''MySQL Database'''
 
*'''MySQL Database'''
 
:
 
:
 +
:Patient holds a table which comprises of temperature, pulse, comments, and time stamp. Every time a string of data is received,it gets parsed into their respective columns in the table. This table is shown below.
  
 
[[File:CmpE146_F12_UWHMS_Database-Table.jpg|center|frame]]
 
[[File:CmpE146_F12_UWHMS_Database-Table.jpg|center|frame]]
<div style="text-align: center;">'''Figure X:''' Database Table </div>
+
<div style="text-align: center;">'''Figure X:''' Records Table in MySQL Database</div>
  
  
  
 
*'''PHP Web Site'''
 
*'''PHP Web Site'''
:The PHP website is a bridge between the clients and the server. It allows the patient to view their temperature and heart rate along with tables and charts which display the corresponding data.
+
:The PHP website is a bridge between the clients and the server. It parses the necessary data from the MySQL Database. This process allows the patient to view their temperature and heart rate along with tables and charts which display the corresponding data. These diagrams are shown below.
  
 
[[File:CmpE146_F12_UWHMS_Table.jpg|center|frame]]
 
[[File:CmpE146_F12_UWHMS_Table.jpg|center|frame]]
Line 241: Line 242:
 
[[File:CmpE146_F12_UWHMS_Temp-chart.jpg|center|frame]]
 
[[File:CmpE146_F12_UWHMS_Temp-chart.jpg|center|frame]]
 
<div style="text-align: center;">'''Figure X:''' Temperature Chart </div>
 
<div style="text-align: center;">'''Figure X:''' Temperature Chart </div>
:
+
[[]]
 
[[File:CmpE146_F12_UWHMS_Pulse-chart.jpg|center|frame]]
 
[[File:CmpE146_F12_UWHMS_Pulse-chart.jpg|center|frame]]
 
<div style="text-align: center;">'''Figure X:''' Heart Rate Chart </div>
 
<div style="text-align: center;">'''Figure X:''' Heart Rate Chart </div>
:
+
 
[[File:CmpE146_F12_UWHMS_Software-flowchart.jpg|center|frame]]
 
[[File:CmpE146_F12_UWHMS_Software-flowchart.jpg|center|frame]]
 
<div style="text-align: center;">'''Figure X:''' Software Flowchart </div>
 
<div style="text-align: center;">'''Figure X:''' Software Flowchart </div>

Revision as of 05:59, 19 December 2012

Unified Wireless Health Monitoring System

Abstract

Our project will take in sensor data (pulse sensor + temperature sensor) through the LPC2148 submit it to an online database. The purpose of the project is to simplify health monitoring for patients while allowing them some mobility. Both the patient and their doctor will be able to see the patient's progress via a WEB GUI.

Objectives & Introduction

Show list of your objectives. This section includes the high level details of your project. You can write about the various sensors or peripherals you used to get your project completed.

Objectives

  • Create a mobile device that attaches to a user in order to retrieve health data from the user.
  • Use 2 health monitoring sensors to retrieve 2 different types of data.
  • Submit the sensor data wirelessly to an online database via Xbee & HTTP protocol.
  • Give verified users and their doctors access to their health data on the online database.
  • Display the health data from the online database to a WEB GUI, using charts to monitor progress.

Team Members

  • Gurpreet Singh
  • Michelle Chen
  • Hai Do

Roles & Responsibilities

Task Responsibility

Xbee Wireless Configuration

Gurpreet

Xbee UART driver for LPC2148

Gurpreet

PulseSensor A2D driver for LPC2148

Michelle

TMP102 I2C driver for LPC2148

Michelle

UART to SQL data conversion on PC-End

Hai

Online Database Configuration

Hai

Web GUI Configuration

Hai

Schedule

Show a simple table or figures that show your scheduled as planned before you started working on the project. Then in another table column, write down the actual schedule so that readers can see the planned vs. actual goals. The point of the schedule is for readers to assess how to pace themselves if they are doing a similar project.

Week Number Scheduled Items Actual

1

  • Create and test LPC2148 I2C driver for TMP102.
  • Create and test LPC2148 A2D driver for PulseSensor.
  • Create and test LPC2148 UART driver for Xbee.
  • I2C driver written to read in TMP102 data.
  • UART driver written to communicate with Xbee modules.
  • A2D driver written to read in voltage data from Pulse Sensor.

2

  • Configure the Xbees to talk to each other.
  • Program the Pulse sensor to properly read in data.
  • Create Tasks for the I2C and A2D drivers, and use for sensors/Xbee.
  • Xbees configured to properly communicate with each other and tested with LPC2148 UART1.
  • Heart rate being read from PulseSensor.
  • Tasks created for Pulse Sensor ADC and Xbee User Interface.

3

  • Retrieve sensors data from LPC2148 and send to Xbee.
  • Receieve wireless UART data from Xbee and log to a Computer.
  • Convert UART data into SQL data for online database.
  • LPC2148 correctly sends UART data to Xbee.
  • UART to SQL Parser written and correctly sends data to XAMPP.
  • Successfully received wireless UART data from Xbee and parse to SQL.

4

  • Initialize and setup online database.
  • Test and log in Xbee UART data into SQL online database.
  • Local database created with proper tables and users.
  • SQL data logged and tested for multiple users.

5

  • Setup Web GUI interface for creating charts.
  • Call in Google Charts or Highcharts API for creating charts.
  • Properly display online database values in Web Gui.
  • Web interface set up and tested.
  • FusionCharts used to view data for temp. and pulse.
  • Data tables are properly displayed for each user.

6

  • Ensure project is fully tested and functioning properly for final demo.
  • None

Parts List & Cost

Give a simple list of the cost of your project broken down by components. Do not write long stories here.

Part Quantity Cost
Xbee Series 1 Module
2
$50
Xbee Breakout Board
2
$20
LPC2148 CPU + MP3 Development Board
1
$60
Mbed LPC1768 CPU
1
$50
Xbee USB Adapter
1
$25
Pulse Sensor
1
$28
I2C Digital Temperature Sensor
1
$3

Design & Implementation

The design section can go over your hardware and software design. Organize this section using sub-sections that go over your design and implementation.

Hardware Design

Discuss your hardware design here. Show detailed schematics, and the interface here.

Hardware Interface

In this section, you can describe how your hardware communicates, such as which BUSes used. You can discuss your driver implementation here, such that the Software Design section is isolated to talk about high level workings rather than inner working of your project.

Software Design

Show your software design. For example, if you are designing an MP3 Player, show the tasks that you are using, and what they are doing at a high level. Do not show the details of the code. For example, do not show exact code, but you may show psuedocode and fragments of code. Keep in mind that you are showing DESIGN of your software, not the inner workings of it.

  • MySQL Database
Patient holds a table which comprises of temperature, pulse, comments, and time stamp. Every time a string of data is received,it gets parsed into their respective columns in the table. This table is shown below.
CmpE146 F12 UWHMS Database-Table.jpg
Figure X: Records Table in MySQL Database


  • PHP Web Site
The PHP website is a bridge between the clients and the server. It parses the necessary data from the MySQL Database. This process allows the patient to view their temperature and heart rate along with tables and charts which display the corresponding data. These diagrams are shown below.
CmpE146 F12 UWHMS Table.jpg
Figure X: Health Records
CmpE146 F12 UWHMS Temp-chart.jpg
Figure X: Temperature Chart

[[]]

CmpE146 F12 UWHMS Pulse-chart.jpg
Figure X: Heart Rate Chart
CmpE146 F12 UWHMS Software-flowchart.jpg
Figure X: Software Flowchart

Implementation

This section includes implementation, but again, not the details, just the high level. For example, you can list the steps it takes to communicate over a sensor, or the steps needed to write a page of memory onto SPI Flash. You can include sub-sections for each of your component implementation.

Testing & Technical Challenges

Describe the challenges of your project. What advise would you give yourself or someone else if your project can be started from scratch again? Make a smooth transition to testing section and described what it took to test your project.

Include sub-sections that list out a problem and solution, such as:

Wifi Connection Issues

Many wifi connection issues were encountered. To solve this problem, a dedicated task was created to re-connect to wifi if the connection was ever lost.

Conclusion

Conclude your project here. You can recap your testing and problems. You should address the "so what" part here to indicate what you ultimately learnt from this project. How has this project increased your knowledge?

Project Video

Upload a video of your project and post the link here.

Project Source Code

Send me your zipped source code and I will upload this to SourceForge and link it for you.

References

Acknowledgement

Any acknowledgement that you may wish to provide can be included here.

References Used

List any references used in project.

Appendix

You can list the references you used.