This article was developed in the course of a little project in FabLab Pisa. The system described here was called OpenPhysio and is commonly used by FACETeam for the analysis of affective-emotional interaction between humans and robots.
The stress of a person can be estimated through the analysis of parameters related to the heartbeat and the dermal conductance. These signals can now be captured using simple sensors and acquisition platform open source as Arduino.
This kind of system could allow to detect a stress index of subjects that will interact simply by placing his hands on suitable contact points. Imagine your alarm clock when you go to set the system clock tell if you are stressed or not and maybe make you sleep 10 minutes more... (if you do not have to go to work...)
Today we will see how to realize a simple system based on Arduino for reading physiological signals useful to the analysis of the stress level of a subject. We'll also see how to analyze the data acquired with open systems!
Arduino: UNO, Diecimila, duemilanove...
e-Health sensor platform: electronic board that allows the real-time acquisition of physiological data from nine different sensors connected to a person. In this case we have used only two sensors: sensor ECG and GSR sensor. Thanks to these signals is possible to derive the parameters related to the degree of stress of the patient.
ECG sensor: allows to derive the electrocardiogram of the patient. With this system, it is possible to measure the electrical functionality and muscle of the heart. This sensor consists of three electrodes, two of them is measured between the potential difference (positive and negative electrode) and the third acts as a reference (neutral).
From the analysis of the e-health, we noted that the measurement of ECG and GSR creates problems of electrical interference; we decided to use only 2 electrodes then: the positive electrode and the negative..
GSR sensor: measures the electrical conductance of the skin between two points. As you can see from the sensor consists of two electrodes, one is placed on the index finger and on the other the average of the non-dominant hand.
What to do
The e-Health platform, equipped with the two sensors must be connected to the Arduino board as a common shield for Arduino (e-Health can also be used with Raspberry PI). This board must be connected to the PC, via USB, and you must verify the correct communication through the serial port.
Firmware ArduinoĀ Arduino_EHealth_ECG_GSR
It is necessary to connect the sensors to the e-health platform as indicated in the documentation and in the figure. In our case the electrode N has not been connected.
The two sensors ECG and GSR can not acquire signals simultaneously when used as described in the card documentation e-Health as they affect one another. As you can see from the graphs, the GSR signal if purchased alone is of good quality (block left of the image), but if you connect the three electrodes of the 'ECG, the signal is noisy, but especially the GSR signal is fixed to zero (central block of the image below). If you acquire the ECG signal by itself this is of good quality. (right side of image).
Note: If only served to acquire the ECG signal is recommended to use the three-channel configuration suggested by cooking-hacks, reconnecting the electrodes N.
Instead acquiring the signals without connecting the neutral electrode, it is possible to measure an ECG signal quite noisy (the central block of the image), but can be used for the purpose of extracting the heart rate. The signal conductance dermal turns instead of good quality.
To analyze the data acquired by the sensors must be saved in a. Txt file and import them into Matlab. In this case was used the serial terminal Putty which allows the direct loging file on the data received through the serial port.[...]
In the figure is shown the result of the analysis.
The dermal conductance can be processed instead importing data in LedaLab free software based on Matlab that allows the extraction of various features from the signal GSR.
Via and Source: FabLab Pisa