Introduction

With the use of high performance and fault tolerant wireless devices, conditions like temperature, electrocardiogram (ECG) and blood pressure can be taken automatically from patients and stored in computers. These data can also be sent to remote computers where medical consultants could monitor remotely. A wireless body sensor network (WBSN) in a medical central should therefore be established to eliminate medical errors and reduce workload and increase the efficiency of hospital staff, and improve the comfort of patients. There has been increased interest among research groups in developing wireless recording and monitoring for real-time physiological parameters (e.g. ECG, electroencephalography, electrooculography, electromyography, neural, pulse oximetry, blood flow, blood pressure etc.) from the human body [110]. Most of the current effort has mainly been focused on the devices that are monitoring sensor signals only from a single patient’s body. Monitoring many physiological signals from a large number of patients at the same time is one of the current needs in order to deploy a complete wireless sensor network system in medical centers. Such an application presents some challenges in both software and hardware designs. Some of them as follows: reliable communication by eliminating collisions of two patients’ signals and interference from other external wireless devices, low-cost, low power consumption, and providing flexibility to the patients so that patients can be relocated anytime.

This work presents a heterogeneous sensor network system that has the capability to monitor physiological parameters from multiple patient bodies, by means of Medical communication standard Medical Implant Communication Service (MICS). Existing wireless systems for physiological data collection use standards such as wireless local area networks (WLANs) [1], ZigBee (IEEE 802.15.4) [24], mobile networks (e.g. GSM) [5] or Bluetooth (IEEE 802.15.1)[6, 7]. Instead of applying those available wireless standards, we designed our own hardware operating at the MICS band for data collections from sensors. This medical band was particularly chosen in our design to eliminate the strong interference from other devices as reliable communication and accurate monitoring are very crucial for patients’ lives (http://www.wirelessis.com)[11, 12]. The project targets both implanted and on-body (i.e. external) nodes.

Previously we reported a MICS based WBSN in [8, 9] that has the capability of simplex communication and only allows one patient’s condition to be monitored locally (i.e. a single body sensor network). In this work we present a multi-patient monitoring system with data transfer ability over a network or the internet to a remote computer. We developed our own hardware and software designs to reach our goals. A media access layer (MAC) has been successfully implemented to support multi-patient monitoring facility. Moreover, data accessibility has been successfully extended to a remote computer that maybe located within a local area network (i.e. LAN) or to the internet. Hardware modules have been designed to support both indoor and outdoor environments, which means that a patient can be either in a medical center or in his/her house, or an outside location that is close to the internet or a mobile communication network.

Multi-patient body sensor network systems

Hardware electronics and software programs are developed for two scenarios in the proposed WBSN as shown in Fig. 1. The first scenario targets an individual use in a medical center or can be used privately in a patient’s house [9]. This wireless body sensor network comprises of sensor nodes, a Central Control Unit (CCU) that transmits data to a local PC and a receiver station (i.e remote PC) at a medical center. After obtaining raw data from a human body, sensor nodes transmit those data to the CCU via the wireless RF link using the MICS band. The CCU then re-packages the data and transmits to the local PC. The data collected at the local PC is transferred to a remote PC across the network in a medical center or through internet if it is at a different location than the medical center. In the second scenario, more than one patient can share a CCU box that is attached to a local PC in the room. The local PC transfers data to other remote PCUs via Ethernet cables. This arrangement can both be used for one room or more in a medical center.

Fig. 1
figure 1

A wireless network system for medical monitoring, a when the device is used individually, or b for multi-patient monitoring in medical centers

In case of a single patient, the CCU box can be worn around a patient’s waist to offer a better mobility. For the patients with limited mobility, the CCU will be replaced at an accessible location with a distance of up to 10 meter in a room (Fig. 1a and b). The CCU is connected to a local PC that displays the real-time information received from the sensor nodes and records the information locally. The stored information can be sent via internet to the database of the medical center (i.e. the remote PC) on a periodic basis. When more than one patient is accommodated in a room as in the case of a hospital, the necessary software packages indicated in Fig. 1 are installed in the CCU and in the local PC in order to obtain physiological signals from sensors of each patient. Data gathering by the remote PC can be performed at some certain time intervals assigned to a local PC and its CCU in each room when the WBSN in Fig. 1b is used for more than one room.

Two pieces of software were created in this project. The software residing at the local PC is named “GATEWAY”. The job of GATEWAY is to gather data from the CCU through a RS232 cable and forwards it to the remote PC through the Ethernet Sockets. The software residing at the Remote PC is named “BSN App”. The BSN App will collect data from the local PC, interpret them and store them onto the remote PC to be analyzed later by health professionals. The receiver station (i.e. the remote PC) is capable of displaying all the received data on a User Display Graphic (graphic user interface, GUI) and is also capable of storing all the data in the database system of a medical center. These GATEWAY and BSN firmware packages are also explained later in “Data base, software programs and monitoring”.

A number of MAC protocols have been proposed for medical sensor networks [14, 15]. Main requirements of a MAC protocol of a medical wireless sensor network are reliability, flexible transmission mechanism and high channel efficiency. Mainly three classes of MAC protocols have been considered for medical applications. They are Time Division Multiple Access (TDMA), polling protocol, and the contention based protocol also known as the random access protocol [1518]. The TDMA and polling protocols are entirely contention free but centralized in nature. The TDMA protocol introduces a strict synchronization requirement whereas a polling network introduces a high overhead of polling message transmission. TDMA and polling based networks introduces a fixed delay due to the use of fixed frame structure and the cycle time respectively. In addition to above, two protocols do not scale well. The contention based protocols such as ALOHA and Carrier Sense Multiple Access (CSMA) have been proposed for some sensor network applications. These protocols are distributed in nature and do not require any centralized control signal from the CCU. They are also dynamic in nature and offers minimum packet transfer delays when operating under low to moderate load conditions. The performance of a contention based protocol could degrade when total traffic load increases significantly, which is an unlikely scenario in a medical sensor network applications.

Considering the issues explained above we have decided to use the CSMA/CA (CSMA with Collision Avoidance) MAC protocol to transmit sensor data from multiple patient to the CCU. The CSMA/CA MAC protocol is used by the IEEE802.11 based WiFi and the IEEE802.15.4 based WPAN (Wireless Personal Area Network) standards. This MAC protocol is most likely to be adopted by the IEEE802.15.6 WBAN (Wireless Body Area Network) standard [14, 18]. The CSMA/CA protocol is a contention based protocol which could offer lower delay and reliable transmission of packets in small size networks like a wireless body area network. When the CSMA/CA protocol is compared with a polling protocol it can be seen that the CSMA/CA protocol also introduces lower overhead and can reduce power consumption of a CCU by reducing the number of control packet transmissions. Sensor nodes of a polling network require permission of the CCU for every transmission. On the other hand, CSMA/CA being a distributed protocol offers the flexibility of on demand packet transmission from sensor nodes without waiting for any permission from the CCU.

The CSMA/CA operates in two different modes. One of the modes of transmission is the contention mode where a transmitter can initiate a packet transmission on its own by checking the status of the transmission channel. The other mode uses the contention avoidance mode by using the RTS/CTS (Ready to Send/Clear to Send) messages. The RTS/CTS messaging technique improves the reliability of data transmission as well as reduces the probability of collisions and packet losses.

In order to make the data acquisition fully automatic and to allow sensor nodes to send the crucial physiological signals without any interruption, corruption and collusions, we developed a Media Access layer protocol that allows a multi patient monitoring. Figure 2 shows the details of the MAC protocol used to coordinate a transmission of multiple sensors, multiple patients and the CCU. The MAC protocol uses the CSMA/CA packet transmission technique with the RTS/CTS messages. It is incorporated in the firmwares at both the sensor nodes and the CCU to provide a bi-directional communication, to control the wireless transmission and to prevent collision between sensor nodes. When a sensor node wants to transmit a packet the station (i.e. CCU), first it checks the status of the transmission channel as shown in Fig. 2a. If the channel is free i.e. no carrier signal is present, then the CCU wait for a certain time period and then transmits a packet if the channel remains free for a specified period as shown in the Figure. If the CCU senses the channel busy then it backs off a random time and reschedules its transmission attempt at a later time as shown in Fig. 2b.

Fig. 2
figure 2

MAC protocol between CCU-Sensors

The RTS packet contains the ID of the transmitter and the receiver so that the transmitter and the receiver can pair up for a packet transmission. After the RTS transmission, the transmitter node moves into the wait state expecting a CTS packet from the CCU. The CCU will transmit a CTS after the short wait period known as the SIFS (Short Interframe Spacing). Other sensor nodes in the network can read the RTS/CTS packet transmissions and will refrain from further packet transmission by calculating the channel occupancy period. This process can avoid collisions and can improve the packet transmission reliability. When a sensor node receives the CTS packet, it initiates a data packet transmission which would be followed by an ACK or a negative ACK (NACK) packet by the receiver. The ACK or NACK responses are generated by the transmitter after performing a packet error-check mechanism using the checksum field of the data packet. If the checksum fails, the receiver will ask for retransmission using the NACK packet else an ACK packet is transmitted. A packet might be corrupted either due to the transmission error caused by low SNR or due to a collision when two or more transmissions overlap in time. During a RTS/CTS packet transmission or a data packet transmission if any collision happens the transmitter either receives a NACK packet or its times out initiating a retransmission using the RTS/CTS procedures. The time out procedure allows a sensor node to come out of the wait state if the ACK or NACK packet goes missing due to transmission errors. Above discussions show that the CSMA/CA based protocol can efficiently support transmission of physiological data packets in a medical networking environment.

Sensor nodes and CCU hardware designs

Pulse rate and temperature are two physiological signals from the human body selected to be monitored in our prototype system to demonstrate a wireless multi patient network. Sensor nodes are designed to collect raw signals from a human body. The signal from the human body is usually weak and coupled with noise. First, the signal should go through an amplification process to increase the signal strength. It then passes through a filtering stage to remove unwanted signals and noise. After which, it will go through an Analog to Digital conversion (ADC) stage to be converted into digital for digital processing. The digitized signal is then processed and stored in the microprocessor. The micro-processor (i.e. microcontroller) will then pack those data and transmit over the air via a transmitter (see Fig. 3).

Fig. 3
figure 3

Block diagram of a pulse rate sensor node

The overview of the Pulse Rate Sensor Node is shown in Fig. 3 [9]. As can been seen, the pulse rate sensor node comprises of several blocks including the pulse detector, the low-noise op-amp stage, filtering, ADC, signal processing by the microcontroller and the transmitter. Microcontroller PIC16F877 and the transceiver AMIS-5210 [13] are selected in the project because of the following reasons: overall cost saving, low-power consumption, size, and the suitability operating at the MICS band and for the physiological data processing. The PIC controller has 10-bit and 8-bit ADC built in, which eliminates the need for an external off-shelf ADC. Figure 4 shows the hardware implementation of sensor nodes. Both temperature and pulse rate sensor nodes were built on a common PCB circuit so that the electronics can be used interchangeable. The antennas for this project are designed as a loop printed around the prototyping boards (See Fig. 4).

Fig. 4
figure 4

Hardware design of sensor nodes

The primary function of the CCU is to collect all data from each sensor node via the wireless MICS band link and forward these data to the local PC for further processing. The processed data is then transmitted it to a data collection center in the medical environment via the Internet (or using a mobile communication network). In case of using internet facilities, the data is transferred to the local PC using the serial communication cable RS232. The CCU also requires a micro-controller and a wireless transceiver to coordinate all activities similar to the sensor nodes. The CCU hardware consists of the wireless link (AMI52100 IC) from AMI semiconductor and the microcontroller PIC16F87 [9]. The targeted wireless distance between sensors and the CCU (the MICS link) is 1–10 m. The CCU can thus be located at the waist of the patient or at an easily accessible place.

Specifications of our devices with comparison to other proposed medical networks are summarized in Table 1. Majority of the existing wireless systems for medical monitoring use standards such as ZigBee (IEEE 802.15.4), WLANs, and Bluetooth (IEEE 802.15.1) [17]. These technologies operate at 2.4 GHz ISM band and may have interference issue when they are located in the same environment [19, 20]. The low rate IEEE 802.15.4 technology has been the most popular among all the short-range standards for medical monitoring due to its low transmitter power [16, 17]. It however suffers from the strong interference by WLANs because WLANs use the same multi-access and transmit bigger signal power [21]. Installing an interference free medical network in a hospital may thus be quite challenging since there exist a lot of other wireless system using the 2.4 GHz band. The MICS band has low emission power (25 μW) and lower power consumption, and will thus provide one of the most suitable medical monitoring systems [11].

Table 1 Comparison: Our devices vs other technologies

Data base, software programs and monitoring

Since all sensor nodes of a body are communicating with the same CCU, the data is prefixed with an identifier that is used to identify the source of data. As mentioned earlier, to reduce collisions further between data sent, a firmware (MAC protocol) is written to control data transmissions. The communication between the sensors and the CCU is bi-directional as to support a multi user (i.e. multi-patient) communications. To illustrate a multi user implementation, we need at least two users (i.e. patients) with two sensors (each user uses two sensors) and one CCU for the test and demonstrations of the extensive software packages developed. The experimental setup is given in Fig. 5.

Fig. 5
figure 5

Set up of the wireless multi-patient body sensor network system

The software GATEWAY developed at the local PC is communicating with the CCU to get readings from sensors and then forward them through the network/internet to an application on a remote PC (at a medical center). While performing this task, the GATEWAY also verifies the data integrity and schedules retransmission if required. Another software program is developed at the remote PC (called BSN) who gets readings from GATEWAY via the network/internet. These readings are stored in the remote PC for analysis. The program is also able to display readings for multiple users. Interaction between software programs is depicted in Fig. 1. Figure 6 shows a GUI at the local PC that is designed to configure the source and destination socket and port numbers for data transfer on the Ethernet. This GUI ensures the portability if BSN application or GATEWAY need to be relocated, it can be configured to work without additional changes in the codes. Both the data received from the CCU and the data sent to the BSN can also been shown here in a text format. The physiological signals of patients can be accessed by medical staff anywhere in the medical center as long as their computers are connected to the local area network in the building.

Fig. 6
figure 6

GATEWAY menu: remote monitoring via internet

The BSN application is designed so as to collect and store readings automatically so that no person is required to be stationed at the application. It undertakes the administration of patients’ particulars such as assigning new sensor ID to patients, segregating sensor readings from different patients and storing them into the data base. The GUI also allows the medical personnel to enter the patient’s information (Fig. 7). It can also display the live monitoring graphs on the screen. An example of live monitoring from our set up is shown in Fig. 8. It displays temperature and pulse rate information of two patients at the same time. The graph allows up to 20 readings to be displayed. Every sensor device has a unique Sensor ID and must be registered under a patient name before they are used. In the event that an unregistered sensor node is used, all its readings received will be discarded by the BSN application.

Fig. 7
figure 7

Example of a graphical menu registering new patients

Fig. 8
figure 8

Live monitoring of multi-patients (physiological data presented in a graphical form at the remote PC

Performance evaluation

In [9], we used a polling architecture for the communication protocol to collect data from sensor nodes. As explained earlier, in a polling structure, the CCU becomes centralized between sensor nodes. The CCU initiates the sensor node in a pre-defined order to perform a measurement only when it is necessary. Sensor nodes that wish to transmit data will have to wait for their turn to be polled by the CCU. Thus, there is no collision of signals from sensor nodes, and however the nodes cannot send any information even if it is urgent. The polling structure can be very power efficient and can be used for the sensor nodes such as temperature where the data collection is not necessary all the time. By using a polling structure, we can keep the power consumption of the sensor nodes significantly low so that the battery life can last several years [9]. Thus such a mechanism will allow the sensor nodes collecting crucial physiological data (i.e. ECG) to CCU without any collision, loss and delay.

Figure 9 compares the performance of the CSMA/CA MAC protocol with the polling MAC protocol for a body area network. The figure presents the analytical delay results for both protocols. It shows that the packet transmission delay linearly increases with the number of nodes. The polling protocol is contention free but nodes need to wait for a poll message before it can initiate a packet transmission. In a polling network, the average packet transmission delay will be a cycle time for low traffic volume. The cycle time in a polling network consists of frame transmission time, polling message transmission time and the ACK packet transmission time [9, 15]. On the other hand, the packet transmission delay of the CSMA/CA protocol consists of contention delay, RTS/CTS and data frame transmission delay and the ACK packet delay. A CSMA/CA based sensor node can immediately transmit a packet without waiting for its turn unlike a polling network. The delay of a CSMA/CA network could rise very rapidly if the number of sensor nodes controlled by each CCU increases significantly. In medical applications, it is unlikely that each CCU will control more than 10 sensor nodes. Following analytical result shows that the selected CSMA/CA protocol is suitable for the medical monitoring where low delay and high reliability is necessary.

Fig. 9
figure 9

Packet transmission delay in a body area network for different number of nodes

A test was conducted to evaluate the bit-error rate (BER) performance of the wireless transmission with the distance. The BER indicates the reliability of a channel. For the test, 625,000 bytes (5 × 106 bits) of data were sent continuously from a sensor node to the CCU. If any bit of the received data is in error, the whole 8 bits in the byte were considered to be in error. The BER versus the distance is shown in Fig. 10. As the distance increases the error rate increases since the transmitter signal is getting weak. The effect of this error has been eliminated in the system by incorporating an error checking mechanisms (i.e. Checksum). This way the CCU will only accept the data package that is not corrupted. A retransmission is provided via Checksum if a corrupted reading (sensor information) is received.

Fig. 10
figure 10

BER with distance

Another measurement shown in Fig. 11 has been done to evaluate the throughput performance of the network. With the 1,000 bytes of data sent in the measurement, the throughput of the MAC layer is measured as the number of readings in a second. Figure 11 shows the graph of throughput versus distance with four different configurations; single patient-CCU communication with and without error checking, and two patients-CCU communication with and without error checking algorithms.

Fig. 11
figure 11

Throughput vs distance

Throughput for one user under the MAC is slightly higher than that with two users. The throughput with Checksum is also slightly lower than that without Checksum as additional checksum transmitted incur more transmission time and thus a lower result. The throughput for two patients without Checksum is reducing with the distance due to collisions of two users that causing more errors. Figure 11 shows that physiological parameters of two-patients can be monitored at the same time without significant performance reduction.

The transmitter power for the MICS band is limited by the regulation which can be chosen maximum 25 μW (i.e. EIRP = −16 dBm) [11, 12]. In the prototype system, transmission range is measured for a range of transmitter power as shown in Fig. 12. The range is basically limited by the receiver sensitivity of the AMIS transceiver [13]. The sensor nodes are able to transmit data to the CCU up to 12 m range with a −17.3 dBm EIRP. This is the radiated power at the output of the transmitter antenna used in our setup. The sensors are calibrated for data accuracy before usage. The temperature sensor is calibrated with a Mini-Logger (GL500) while the pulse rate sensor is calibrated with a commercial pulse rate sensor approved by health authorities. Under the Live-Monitoring Mode (i.e. continuously obtaining readings from sensors), the total current consumption of the sensor hardware with both sensors attached is 126 mA. Using a battery of 560 mAh (coin battery CR2450), the battery last 4.44 h. The power consumption is further reduced by keeping sensor nodes in sleep mode for longer durations (i.e. increasing off-time) [9].

Fig. 12
figure 12

Measured transmission range for different transmitter power

Conclusion

A wireless sensor network system for monitoring physiological parameters from a patient body has been developed. A prototype system that is able to acquire readings from multiple patients has been presented. A CSMA/CA MAC communication protocol has been used to provide sensor nodes to send physiological signals whenever the channel is available. It has been shown that after obtaining data from sensors, the data can be transferred to a remote PC through a local area network or the internet for further analysis. Such a wireless body sensor network system is very suitable to be used in hospitals environments. Human errors will be reduced and health professionals will spend their time more on other important issues. With a multi-patient monitoring capability, health professionals no longer have to perform the routine and tedious checks on the patients in medical centers. In addition, such systems result in an increase in patients’ comfort level as they no longer need to be wakening up for periodic checks in the hospital environments. Another advantage is that patients can stay in their home while their conditions can still be monitored by medical staff. More wards could thus be available to patients in medical centers.

Future work also involves in including more sensors to monitor other vital signs such as blood pressure, oxygen saturation level, ECG, etc. The system can also include the evaluation of physiological parameters by the software package at the local pc before transmitted to the medical center. There is also possibility to extend the capability to automate alerts which can get attention of the health professional as soon as they are needed.