ambient light component can be eliminated. The AC
plus the DC components of the R and IR signals are
digitized in the FPGA in order to send this data to
the Rabbit RCM4510W.
3.2 FPGA
The FPGA used in this work is a Spartan 3E
equipped a XC3S500E chip. In this FPGA, a
MicroBlaze processor has been designed, with a
Delta Sigma AD converter IP Core included.
Xilinx Platform Studio (XPS) software was used
in this work. This software has been developed to
manage the probe and to obtain the received
information in the photodiode. These data are
processed in order to obtain the values of pulse and
SpO
2
. These values are sent to the parallel port of
the RCM4510W.
The information is processed in the FPGA and it
is sent to the Rabbit via parallel port. Rabbit
decrypts this information and prepares the packet in
order to send it to its destination. Both, pulse and
oxygen values are sent on real time to the Database
Server (DBS).
3.3 Rabbit RCM4510W
RCM4510W RabbitCore is the ZigBee hardware
used to transmit the pulse oximeter data to the
coordinator. It is equipped with an on-board
ZigBee/802.15.4 modem for wireless connectivity.
Features also include 512K flash memory and
SRAM, 40 general-purpose I/O, and up to 9 general-
purpose I/O, 4 of which can be set up as analog
inputs via the ZigBee module.
The RCM4510W has a Rabbit 4000 processor at
29.49MHz. Other features include hardware DMA,
auxiliary I/O, quadrature decoder, input capture,
GPIO lines shared with up to five serial ports, and
four levels of alternate pin functions that include
variable phase PWM.
3.4 Xbee USB Coordinator
The coordinator is the most important element of the
network and therefore there should be one in a
network. The main function is to monitor the state of
the network and establish the routes that devices
have to use in order to send the information.
Java library Xbee-api.lib has been used to extract
the information from the coordinator. XBee class is
the main communication interface between a module
XBee and gateway to the wireless network. This
class coordinates the sent and received data by
packages. After the instantiation of the Xbee class,
the system will start to manage the information of
the network. The coordinator XBee USB is
connected to the COM3 port at 9600 data rate.
The software for managing the network has been
successfully developed to receive data from the
probe, and, to send it to the DBS.
3.5 Database Server
The DBS is implemented using MySQL Server over
a Linux Machine. This database stores the following
information about patients:
• Patient name
• Sex
• Age
• Historical Pulse
• Historical % SpO
2
• Drug treatment
Future researches will allow further processing
of the information about patients. Thus, the system is
able to determine real time if any patient suffers
from a cardiac or respiratory problem. In this case,
an alarm will be generated to inform to the staff.
Other possibilities are to compare multiple histories
to study population responses; responses after
different drug treatment, etc.
4 RESULTS
The reliability of the network and the developed
pulse oximeter was tested with these experiments:
4.1 Packet Tests
To check the reliability in the communications, it
was developed a program to count the number of
packets received in the coordinator. The test was
carried out using 5 Routers, and 3 End devices.
Electromagnetic contamination with Bluetooth and
Wifi signals was introduced.
The first test starts with the previously presented
configuration and the number of transmitted packets
reached 100%.
The second test tries to eliminate the connection
between the End device associated to the pulse
oximeter and its parent node. When the route
crashes, the End device has to re-associate to another
router. This operation delays for approximately 2
seconds (Casilari, 2010). In this time, the node
cannot transmit to the coordinator, however it stores
data in a buffer to avoid the loss of data. When the
node re-associates to another parent, it sends the
DESIGN OF A WIRELESS PULSE OXIMETER USING A MESH ZIGBEE SENSOR NETWORK
403