2012 Andean Region International Conference
ECG Signal Monitoring using Networked Mobile Devices Enrique V. Carrera Department of Electrical Engineering Ecuadorian Armed Forces University P. O. Box 17-15-231B, Sangolqui, Ecuador Email:
[email protected]
Pamela Morales Systems Engineering Department University San Francisco of Quito P. O. Box 17-12-841, Quito, Ecuador Email:
[email protected]
Important proposals in this direction have suggested the use of wireless sensor networks (WSNs) for implementing health care in the home [4]. WSNs can easily be coupled to several wireless communication technologies (e.g., Bluetooth, WiFi), resulting in extremely flexible systems with minimal impact on the lives and surrounding environment of the patients. However, there are still many problems to solve before having fully functional, reliable, secure and efficient remote health care systems. In fact, the potential value of WSNs in the health care field has not yet been fully exploited [5]. Significant research efforts are still required to determine, for instance, the most adequate WSN architecture for monitoring health conditions, the most reliable and secure communication technology for remote health care, the type of analysis that can be performed on the large amount of health-related data in order to support physician decision making. Based on that, this paper presents a working implementation of a system for monitoring health conditions. In particular, our prototype is focused on the remote monitoring of electrocardiogram (ECG) signals. The system design depends mainly on mobile devices, Web services and wireless communication technologies. Specifically, a smartphone receives a digital ECG signal using Bluetooth, processes the signal, and sends critical information to a server. The communication between the smarthphone and the server can be based on different communication technologies, according to its requirements. In addition, the server keeps the data and allows their visualization to physicians and patients. If some problems are detected, alert messages are also sent to the patient and its corresponding physician. The implemented system evolved into an experimental platform that allows to analyze several factors contributing to the reliability, safety and efficiency of a remote health care system. This prototype will also be the starting point for implementing networked portable devices oriented to the continuous monitoring of physiological and physical conditions (e.g., heartbeat rate, blood pressure and flow, temperature, oxygen saturation, physical activity, and even location). We hope that in the near future, systems like our prototype allow to adequately attend elderly or chronically ill patients,
Abstract—Aging populations and increasing rates of chronic diseases are overwhelming even the most efficient health care systems. Technology has the potential to move health care to a more proactive, consumer-centric model of care, capable of improving cost, quality, and accessibility of health care services. However, there are still many problems to solve before having fully functional, reliable, secure and efficient remote health care systems. Thus, this paper presents a working implementation of a system for monitoring health conditions using sensor networks and wireless communication technologies. Although, our prototype is focused on the monitoring of electrocardiogram signals, the proposal comprises an experimental platform to analyze several factors contributing to the reliability, safety and efficiency of remote health care structures. In addition, our proposal will be the starting point for implementing networked portable devices oriented to the continuous monitoring of elderly or chronically ill patients. Keywords-Sensor networks, mobile computing, remote health care, electrocardiogram monitoring.
I. I NTRODUCTION The global population is getting older. The worldwide population over age 65 is expected to more than double from 357 million in 1990 to 761 million by 2025 [1]. Thus, the length of time that people live with chronic diseases such as heart disease, cancer, Alzheimer’s, and other forms of dementia, is increasing. This circumstance places enormous demands on health care systems, not solely in terms of acute hospital care but also for routine monitoring and health maintenance on a massive scale. Providently, substantial efforts are being made to deploy IT (Information Technology) and other technologies into the clinical environment, particularly the hospital arena. Moreover, deployment of technology in support of at-home care has the potential to radically reduce the pressure on hospital resources. At-home care can potentially provide many advantages in terms of financial benefits, improved quality of life for patients, and more effective detection or monitoring of many long-term chronic diseases [2]. Consequently, medical devices, IT and communications have started to converge in order to revolutionize health care in the home. Also, advances in technology will make it possible for people to play a greater role in maintaining and monitoring their own health [3]. 978-0-7695-4882-1/12 $26.00 © 2012 IEEE DOI 10.1109/Andescon.2012.18
29 35
Figure 2. Figure 1.
Bluetooth SPP module connected to an Arduino-Mini board.
B. Wireless Sensor Networks The increasing use of wireless networks and the constant miniaturization of electronic devices has empowered the development of WSNs. In these networks, various tiny sensors monitor physical or environmental conditions and cooperatively pass their data through wireless channels to a main location [4]. A viable alternative for the developing of WSN is the Arduino platform. Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software [7]. In particular, the Arduino-Mini is a small (30 × 18 mm) board based on the 16-MHz ATmega328 microcontroller and intended for use on breadboards when space is at a premium. The board has 14 digital I/O pins and 8 analog inputs (10 bits of resolution). In addition, the microcontroller provides 32 KB of flash memory, 2 KB of SRAM and 1 KB of EEPROM. The ATmega328 also provides UART TTL serial communication, consequently a Bluetooth Serial Port Profile (SPP) module can be utilized through a Xbee shield (see Fig. 2). Bluetooth SPP modules are designed for transparent wireless serial connection setup. Current modules satisfy Bluetooth V2.0+EDR specification.
ECG components and intervals.
improving the quality of life of them and their families. Furthermore, this system design could also be used for assisting people doing special diet or physical activity (e.g., elite athletes). II. BACKGROUND A. The Electrocardiogram The ECG is a time-varying signal reflecting the ionic current flow caused by the cardiac fibers to contract and subsequently relax with every heartbeat. A surface ECG is obtained by recording the potential difference between two electrodes placed on the surface of the skin. A single normal cycle of the ECG can be approximately associated with the peaks and troughs of the waveform showed in Fig. 1. Extracting useful clinical information from a real (noisy) ECG requires reliable signal processing techniques in order to perform R-peak or QT -interval detection. 1) Heartbeat Rate: The RR-interval is the time between successive R-peaks, the inverse of this time interval gives us the instantaneous heartbeat rate. For an adult, a normal resting heartbeat rate ranges from 60 to 100 beats a minute. A series of RR-intervals is known as the RR tachogram and variability of these RR-intervals reveals important information about the physiological state of the patient [6]. In fact, heart rate variability (HRV) analysis provides an assessment of cardiovascular diseases. 2) Synthetic ECG Signals: Normally, it is difficult to infer how the performance of biomedical signal processing algorithms would vary in different clinical settings with a range of noise levels and sampling frequencies. Therefore, ECG waveform generator software is used to reduce overall development and testing time. For instance, ECGSYN generates a realistic synthesized ECG signal with usersettable mean heartbeat rate, sampling frequency, waveform morphology, and HRV. Using a dynamical model based on three coupled ordinary differential equations, this opensource code reproduces many of the features of human ECG [6]. The output of ECGSYN is generally employed to assess biomedical signal processing techniques which are used to compute clinical statistics from ECGs.
III. H EALTH M ONITORING S YSTEM An overview of the proposed monitoring system is shown in Fig. 3. As can be seen, the patient has one or more sensors attached on his clothing or even on his body. Those sensors create a wireless personal area network employing Bluetooth technology. Hence, sensors can directly or indirectly send biometric data to a mobile device with similar characteristics to current smarthphones or tablets. This local computing device (i.e., the smartphone) is responsible for concentrating and processing sensed data. The amount of local processing must be balanced to avoid prohibitive communication costs and response times involved in offloading computing and storage tasks to remote servers [8]. After data processing, the mobile device uses its communication capabilities to send critical information to a server. This communication could be by means of access networks such as WiFi or 3G. In fact, our implementation allows to send basic health information through SMS technology, since most GSM-based devices include this alternative communication mechanism. In the latter case, the server must have a GSM interface to receive the corresponding SMSs.
36 30
the access to Bluetooth, WiFi and GSM-based networks. In addition, intuitive graphical UIs can be created using several packages available in JME. C. Server
Figure 3.
The server was designed for receiving health-related data employing TCP/IP data connections or SMS. Each message must include a valid patient ID in order to insert its data in the patient’s database. The server additionally allows the management of physicians and patients according to control access policies based on authentication. Hence, user management is quite dynamic allowing to create, edit, delete or query both patients and physicians. Furthermore, authorized users can access the system to supervise or simply check the health related information of patients. In the meantime, besides historical data searching, real time monitoring of patient’s heartbeat rate is enabled in our system. The server can also send alerts through e-mail or SMS to registered users when health problems are detected in pre-selected patients. Current implementation sends an alert when patient’s heartbeat rate is not between 60 and 100 beats a minute, or when its HRV is more than 20 beats a minute. The server was implemented by means of the Netbeans IDE 7.1. The Java Enterprise Edition was used for servlet programming in the Glassfish application server and for accessing the MySQL database. The UI of the server is based on the JavaServer Faces technology.
Overview of the proposed health monitoring system.
Thus, the server keeps health information from several patients in order to be analyzed by physicians and even patients. Indeed, physicians can issue warnings or recommendations to patients through their monitoring mobile devices. The server can also run some diagnostic algorithms to detect patient’s health problems and to automatically issue emergency alerts, if needed. A. ECG Sensors In the future, sensors will perform a real ECG using electrodes attached to the patient’s body. However, our current implementation is based on synthetic ECG signals generated by an Arduino-Mini board. The ATmega328 microcontroller implements the algorithm utilized by ECGSYN [6], allowing to have ECG waveforms with varying heartbeat rates and sampling frequencies. The main idea behind this design is to facilitate the analysis of how some ECG factors influence the behavior of the whole system. The ECG sensors are being programmed in C by means of the open-source Arduino IDE (Integrated Development Environment) 1.0.1, because of the simplicity it lends to write the code and upload it to the board.
IV. E VALUATION The following results correspond to executions of our prototype using an Arduino-Mini board with an external Bluetooth v2.0 module, a Nokia 6101 cellphone supporting MIDP 2.0 and CLDC 1.1, and a server running Glassfish 3.1.2 on a Intel Core i7 at 3.4 GHz with 4 GB of RAM and Linux (kernel) 3.4.4.x86 64. In order to get accurate time measures, the Java code was instrumented for timing each evaluated task.
B. Mobile Device The concentration and processing device is intended for connecting to the ECG sensors through Bluetooth and then receiving the digital ECG signals sent by them. After storing the sampled values for 2 seconds, the mobile device calculates the RR-interval and its corresponding heartbeat rate. Next, the calculated heartbeat rate together to a patient ID is sent to the server. The patient ID and the time between consecutive messages to the server can be configured by means of the graphical UI (User Interface) of the application. In similar way, the default access network for exchanging information with the server can also be chosen through the application UI. Nevertheless, an automatic configuration option is also available for trying other network technologies when the default one fails. The mobile device was programmed using JME (Java Micro Edition) in the Netbeans IDE 7.1. JME facilitates
A. ECG Emulation One of the most critical parameters in ECG signal emulation is the sampling frequency. If the frequency is too high, the complexity of the operation prevents its realtime processing; while if it is too low, errors in heartbeat rate detection could be introduced. As table I shows, an appropriate sampling frequency is around 256 samples per second, since this value achieves a balance between its processing/transfer time and the accuracy of RR-interval detection. Note that in the extreme case of 2048 samples per second, the transfer time is 83% higher than the generation time (1 second), impeding the appropriated treatment of the signal in real time.
37 31
B. Communication Network
a communication over GPRS networks, and taking into account that a single value could transfer up to 128 bytes when network protocol headers are included, the 86400 messages would consume 11 MB, approximately. Transferring this amount of data denotes a cost that varies between US$5 and US$8 per month.
It is highly desirable to monitor patients 24/7 in the case of remote health care systems. Thus, the communication between the mobile device and the server could be implemented through any data network (i.e., WiFi, GPRS, etc.), or even SMS. The main advantage of using data networks is the usage of connection-oriented protocols, facilitating the transfer of large amounts of information and the inclusion of security mechanisms. The advantage but at the same time disadvantage of SMS is its asynchronous characteristic. SMS can transfer up to 140 bytes per message with communication delays of up to some minutes. As mentioned, SMS also requires a GSM communication interface on the server and the programming of the corresponding servlet. Both alternatives were implemented and evaluated in terms of communication latency and costs. 1) Total Latency: A critical element in health care systems is their ability to react quickly to emergencies; this implies a low communication latency between sensors and physicians. In order to determine the latency of the system, ECG signal amplitudes were abruptly reduced, and the time required for detecting a heartbeat rate of zero in the server is measured. Table II presents the different components that introduce delays when WiFi or text messaging (i.e., SMS) are used. We can see that SMS communication increases latency by 75% (11.3 vs 6.4 seconds), due mainly to the need of GSM network connection before sending a SMS, and the fact that there is another cellphone connected to the server to receive ans transfer SMSs. 2) Costs: Assuming that the mobile device is programmed to send the estimated heartbeat rate to the server once every 30 seconds, the number of transmitted values is 86400 a month. Additionally, considering that an SMS can easily combine up to 30 values, 2900 SMSs per month would be needed. This implies a text messaging plan that costs between US$9 and US$50 per month according to current rates (in Ecuador). On the other hand, if we consider
V. C ONCLUSION This paper shows a working implementation of a system for monitoring health conditions using sensor networks and wireless communication technologies. Implementations as the described here seek to detect and react to relevant health information in order to improve care and quality of life in patients. It has been shown that IT has enough capacity to deliver acceptable levels of performance in tasks related to remote medical assistance. However, there are still some problems to solve before we can have 24/7 highly-reliable health care systems. We expect to extend this prototype to monitor a wider set of vital signs incorporating new portable biomedical hardware. In addition, authentication schemes and mechanisms to ensure the reliability and integrity of data will be added to the system [9]. Finally, we want to include machine learning algorithms to automate the detection of diseases and the dispatching of alerts in response to patient’s health problems. R EFERENCES [1] T. J. Dishongh and M. McGrath, Wireless Sensor Networks for Healthcare Applications. Artech House, 2010. [2] M. A. Ameen and K. S. Kwak, “Social issues in wireless sensor networks with healthcare perspective,” Int. Arab J. Inf. Technol., vol. 8, no. 1, pp. 52–58, 2011. [3] H. Alemdar and C. Ersoy, “Wireless sensor networks for healthcare: A survey,” Computer Networks, vol. 54, no. 15, pp. 2688–2710, 10 2010. [4] B. Latr´e, B. Braem, I. Moerman, C. Blondia, and P. Demeester, “A survey on wireless body area networks,” Wirel. Netw., vol. 17, no. 1, pp. 1–18, Jan. 2011.
Table I P ROCESSING / TRANSFER TIME USING B LUETOOTH . Sampling frequency 2048 256 64
[5] J. Ko, C. Lu, M. B. Srivastava, J. A. Stankovic, A. Terzis, and M. Welsh, “Wireless sensor networks for healthcare,” Proceedings of the IEEE, vol. 98, no. 11, pp. 1947–1960, November 2010.
Transfer time 1.831 s 0.557 s 0.223 s
[6] P. E. Mcsharry, G. D. Clifford, L. Tarassenko, and L. A. Smith, “A dynamical model for generating synthetic electrocardiogram signals,” IEEE Transactions on Biomedical Engineering, vol. 50, no. 3, pp. 289–294, 2003.
Table II C OMMUNICATION DELAY BETWEEN SENSORS AND SERVER . Operation Bluetooth communication Local processing Post to the server Bluetooth communication Server reception Database update Data visualization Total
WiFi 557 ms 5 ms 5486 ms —NA— 6 ms 8 ms 306 ms 6448 ms
[7] A. D’Ausilio, “Arduino: A low-cost multipurpose lab equipment,” Behavior Research Methods, vol. 44, no. 2, June 2012.
SMS 557 ms 5 ms 10008 ms 411 ms 8 ms 8 ms 306 ms 11302 ms
[8] Q. A. Wang, “Mobile cloud computing,” Strategies, vol. 31, no. 6, pp. 624–628, 2011. [9] M. Al Ameen, J. Liu, and K. Kwak, “Security and privacy issues in wireless sensor networks for healthcare applications.” Journal of Medical Systems, vol. 36, no. 1, pp. 93–101, 2012.
38 32