Top Level design

Motivation:

Health monitoring became a very popular topic within these years. However, how to properly monitoring health status for a kid can be challenging. One reason can be children sometimes aren’t cooperative and they can easily get distracted. Therefore, we can use an embedded system to address this issue. The system will use both heart rate and temperature sensor to measure the current health status. Besides these basic functionality, we also proposal to use a virtual pet displayed on a led matrix in order to attract attention while the system is doing measurement. The main functionality of the pet is to attract attention so the kids won’t get distracted. This virtual pet would display an expression corresponding to the current monitoring status. The kids can also interact with the pet as well. They can express their current mood by pressing different push buttons. The pet will also react appropriate expression corresponding to the current mood of the children.

 

Background and existing solutions:

One project that was related to my idea was from Adafruit learning system. [1] It is a virtual pet cube implemented 8×8 LED matrix to display the pet. A “Tap button” as well as a switch can do some basic interaction with the cube. The display had 4 different moods (Sad, Neutral, Happy, and Annoyed) It will “sing” a song corresponding to each mood. This project has a lot of similarities for the virtual pet part of our project. It gives us the background. We are going to need a pet that responds to different moods with pushbuttons.

Another example we found is using a pic controller to monitor heart rate and display it on a 3 digit seven segment display. [2] In his design, when the user put the finger on the sensor, the 7-segment display will display appropriate readings.  This solution gives us a brief overview of how to interact with heartbeat sensor using PIC controller. However, he build an analog heart rate detector where in our design, we are just going to use a purchased heartbeat sensor. Also, we won’t use the 7-segment display, instead, we will use a LCD to display the heart rate.

We also found another potential solution that covers our area of interest. This is an embedded system that can detect blood pressure as well as temperature. [3] An interesting feature is this system adds remote communication. This allows people can monitor the health all the time. If an emergency happens, they can get help immediately. This is an potential improvement we can expand if we have spare time. We can add an remote control module that can send status all the time. By adding this functionality, the health monitoring system will become more well-rounded

 

High Level Block Diagram:

This is the high level block diagram of our system. It is a fairly straight forward system that uses PIC to control a LED matrix, a heartbeat sensor, a temperature sensor as well as two pushbuttons. Both hardware and software detail will be discussed in later section. The LED matrix is the heart of the system because all the data will be display on the matrix. Each individual subsystem will be discussed in the following section.

 

System organization:

The design of the system is broken down into four pieces: Matrix display, heart rate reading, temperature reading as well as push button interaction. Individual subsystems will be discussed in the subsections below:

  • Matrix Display:

Matrix Display is the core of the whole system. Originally, we plan to use half of the matrix (32 x 8) to display the pet and an addition LCD screen to display the readings of the sensors as well as the current mood. However, as we start to integrating with the matrix drawing library, we found out that it is fairly impossible to draw on a such narrow display so we abandoned the LCD screen and decide to use the whole matrix.

The layout of the matrix is shown in the diagrams below. The left side is the simple diagram view of the matrix and the right side is the actual matrix itself. The heart rate readings and temperature readings are straightforward readings from the sensors, and the Pet will have different animation as well as different expression according to our current mood. The current mood is a facial expression which include happy, sad, neutral and angry. There will also be an animation from neutral to happy around every 15 second so that the pet will not just sit there at one mood.

  • Temperature sensor Reading

There is a temperature sensor that can read the surrounding temperature. It is control by the PIC and the value is converted using ADC. In our design, we also added a unit conversion that can convert from Fahrenheit to Celsius. When the temperature go higher than 26 celsius, it will enter “tired” state, which the pet will fell asleep.

  • Heart rate sensor reading

Heart rate sensor is another component included in our system. We also use an ADC on the PIC to convert to BPM. On the matrix, when the heart rate sensor is reading values, there will be a heart blinking. Also, when the heart rate reaches 125, the pet will start to moving around and enter a “excited” phase.

  • Button debounce and interaction

The are two buttons on our system. The first buttons can changes the current mood. The second button controls the unit conversion between Fahrenheit and Celsius. Both buttons are debounced properly so there will not be any absurd behavior when a user is pressing the button continuously.

 

Reference:

  1. “Adafriend the Virtual Pet Cube.” Project Overview | Adafriend the Virtual Pet Cube | Adafruit Learning System. Accessed October 22, 2017. https://learn.adafruit.com/adafriend/overview.
  2. “Heart rate measurement from fingertip.” Embedded Lab. October 24, 2016. Accessed November 05, 2017. http://embedded-lab.com/blog/heart-rate-measurement-from-fingertip/.
  3. Sudhindra.F., Annarao.S.J., Vani.R.M, and P.V. Hunagund. “A GSM Enabled Embedded System for Blood Pressure & Body Temperature Monitoring.” International Journal of Advanced Research in Electrical, Electronics and Instrumentation Energy. January 01, 1970. Accessed November 05, 2017. https://www.rroij.com/open-access/a-gsm-enabled-embedded-system-for-bloodpressure–body-temperature-monitoring.php?aid=41831.