Design of hospital patient tracking and positioning system based on ZigBee

Publisher:Lihua521Latest update time:2012-10-25 Source: 微计算机信息 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

introduction

With the development of science and technology and people's concern about medical health, wireless medical monitoring has received more and more attention. The ZigBee-based monitoring system [2] is a mobile wireless sensor network (WSN). It is built using the low-power, low-cost, low-complexity and highly anti-interference ZigBee technology. It realizes real-time monitoring of patients' physiological parameters, online diagnosis, centralized management and data analysis within the entire monitoring network coverage. The monitoring network has strong mobility, allowing patients to move freely within the monitoring network. However, since some diseases are sudden and require timely treatment from medical staff when they occur, it is of great significance to establish a wireless tracking and positioning system within the monitoring network. This paper intends to use ZigBee technology and wireless positioning engine to solve the problem of patient tracking and positioning in wireless monitoring systems. This design has the characteristics of simple equipment and construction, low cost, strong practicality, etc. It uses wireless methods and has good scalability. It can be applied to patient positioning and monitoring management in large and medium-sized hospitals. Its potential application prospects are very broad.

1 Introduction to ZigBee Technology

ZigBee technology[1] is an emerging short-range, low-power, low-cost, low-data-rate, and low-complexity two-way wireless communication technology. It is a wireless protocol developed based on the IEEE802.15.4 standard. The protocols above the network layer are developed by the ZigBee Alliance, and IEEE802.15.4 is responsible for the physical layer and link layer standards.

This design uses the CC2431 chip developed by TI to implement ZigBee communication and tracking and positioning functions. The RF part of CC2431 is basically the same as the function of TI's (CHIPCON) early product CC2420, but it adds a positioning engine based on RSSI technology authorized by Motorola. Its positioning accuracy is less than 3m and the positioning time is less than 40μs, which is much higher than the positioning accuracy of GPS. It can achieve more accurate positioning of patients in the monitoring system.

2 Wireless positioning algorithm

According to different positioning mechanisms, positioning algorithms are divided into two categories [3]: The first category is range-based positioning algorithms, which measure the distance or angle information between nodes and use triangulation, triangulation or maximum likelihood estimation to calculate the node position. Its positioning accuracy is relatively high. Commonly used ranging technologies include RSSI, TOA, TDOA and AOA. The second category is range-free algorithms that use the proximity relationship and connectivity between nodes to achieve positioning. Its positioning accuracy is relatively low, such as DV-hop algorithm, GPS-less LCO algorithm, etc.

RSSI (Received Signal Strength Indicator) refers to the strength of the wireless signal received by the node. In positioning based on received signal strength indication (RSSI), the transmission signal strength of the transmitting node is known. The receiving node calculates the signal propagation loss based on the strength of the received signal, converts the transmission loss into distance using theoretical and empirical models, and then uses the existing algorithm to calculate the node position. The received signal strength is a function of the transmission power and the distance between the transmitter and the receiver. The theoretical value of the received signal strength RSSI can be obtained by:


Among them, n represents the signal propagation constant, also called the propagation index; d represents the distance from the transmitter; and A represents the received signal strength at a distance of 1m. The attenuation of the signal is logarithmically related to the distance. The closer the distance between the node and the signal source, the smaller the absolute distance error caused by the deviation of the RSSI value; and when the distance is greater than a certain value, the absolute distance error caused by RSSI fluctuations will be large. An unknown node may receive signals from n reference nodes, so the first few reference nodes with large RSSI values ​​should be used for positioning calculations to avoid the expansion of positioning errors.

3 Patient Tracking and Positioning System

3.1 System Structure

The patient tracking and positioning system consists of blind nodes (nodes to be tested) worn by patients and positioning reference nodes. The monitoring network sends the patient's positioning information to the monitoring center through the ZigBee gateway. The system structure is shown in Figure 2:

The positioning reference nodes are multiple static nodes located at known locations, which can notify other nodes of their locations by sending data packets. The blind node carried by the patient receives the data packet signal from the reference node, obtains the reference node position coordinates and the corresponding RSSI value and sends it to the positioning engine, and then can read out its own position calculated by the positioning engine. The data packet sent by the reference node to the blind node contains at least the coordinate parameters of the reference node, the horizontal position X and the vertical position Y, and the RSSI value can be calculated by the receiving node.

3.2 Hardware Design

CC2431[5,6] is a system-on-chip (SoC) solution with a hardware positioning engine launched by TI. It integrates an RSSI-based positioning engine and can meet the application needs of low-power ZigBee/IEEE802.15.4 wireless sensor networks. In response to the requirements for MCU processing power when executing protocol stacks, networks, and application software, CC2431 includes an enhanced industrial standard 8-bit 8051 microcontroller core, running at a clock frequency of 32MHz. CC2431 also includes a DMA controller, which can be used to reduce the data movement operations of the 8051 microcontroller core, thereby improving the overall performance of the chip. The basic

hardware connection circuit of the system[5,6] is shown in Figure 2. The part connected to the 50Ω monopole antenna is composed of inductors and capacitors, among which inductors L1 and L2 also provide DC bias for the low-noise amplifier and power amplifier inside the chip. In Figure 2, XTAL1 is a 32MHz crystal with an equivalent series resistance (ESR) < 60Ω. R1 establishes a precise bias circuit for it. C1 and C2 are decoupling capacitors for power supply filtering and provide a stable core voltage to the voltage regulator.

3.3 Software Design

Compared with software positioning methods, the advantages of CC2431's hardware positioning engine are: fast speed, high accuracy, and no processor time consumption. The main features of this positioning engine are as follows: the positioning estimation algorithm requires 3 to 8 reference nodes; the positioning estimation is in units of 0.5m; the time required to calculate the node position is less than 40μs; the positioning range is 64m; the positioning deviation is less than 3m; the positioning engine adopts a distributed computing method, which uses the RSSI information of known reference nodes for positioning. Distributed positioning calculations on nodes can avoid the large number of network transmission and communication delays caused by centralized computing methods. The operation process of the positioning engine [4] is shown in Figure 3:

Before the positioning engine runs, the fourth bit LOCENG.EN of the positioning engine register LOCENG must be enabled. When the positioning engine is to be stopped, write 0 to LOCENG.EN to turn off the engine clock signal, thereby reducing the power consumption of CC2431. The operation of the positioning engine is mainly the operation of the registers related to the positioning engine. When the positioning engine is running,

3 to 8 reference coordinates need to be input. The reference coordinate is in m, which represents the position of each reference node. Its value is between 0 and 63.75, with the highest accuracy of 0.25m, the lowest 2 bits are the decimal part, and the remaining 6 bits are the integer part. The reference coordinates are stored in the RF register REFCOORD. Before writing REFCOORD, the first bit LOCENG.REFLD of the LOCENG register must be written to 1 to indicate that a set of reference coordinates will be written. Once the coordinate writing process starts (LOCENG.REFLD=1), 8 pairs of coordinates must be written at once. When the positioning engine uses less than 8 reference coordinates, the unused reference coordinates must be written to 0.0. In addition to the reference coordinates, the positioning engine also requires a set of measurement parameters, which consists of 2 RF parameters and 8 RSSI values. The RF parameters are the values ​​A and n that describe the network operating environment. All measurement parameters should be written to the RF register MEASPARM. Before writing to MEASPARM, the second bit of the LOCENG register LOCENG.PARLD must be written to 1, indicating that a set of measurement parameters will be written. Once the parameter writing starts (LOCENG.PARLD=1), all 10 parameters must be written at once. The measurement parameters must be written to the MEASPARM register in the order [A, n, rssi0, rssi1, ..., rssi7], and any unused bits must be written to 0. After all 10 parameters are written, LOCENG.PARLD must be written to 0.

After the parameter coordinates and measurement parameters are written, the positioning estimate calculation is started by writing 1 to the 0th bit of the LOCENG register LOCENG.RUN. Usually, 1200 system cycles after LOCENG.RUN is set to 1, the third bit of LOCENG, LOCENGDONE, is set to 1. At this time, the estimated coordinates can be read from the LOCX and LOCY registers. The positioning engine does not generate any interrupt requests. The estimated coordinate values ​​in LOCX and LOCY remain valid until new results are calculated or the next restart.

3.4 Improvements to the positioning engine

The CC2431 positioning engine can handle X, Y values ​​up to 64m[4]. This area is too small for practical application in hospital monitoring systems, so it is necessary to expand the area. This can be solved by a simple software preprocessing algorithm: each node is represented by 2 bytes of X, Y. Because the accuracy is 0.25m, the maximum range is 16384m (2 14=16384). This range can already meet the needs of the monitoring system.

The positioning engine only obtains two-dimensional coordinates. How to distinguish different horizontal planes can only be handled by software methods. For example, the nearest reference node can be determined first and the horizontal value of this node can be read out. This horizontal value is assumed to be the layer where the blind node is located. After that, the blind node must ensure that only nodes on the same layer are input into the positioning engine. The horizontal layer is represented by a byte Z, and 256 different layers can be distinguished. In the application environment of the hospital monitoring system, the reference node of each floor adds the floor number Z to the broadcast data packet. The program is used to determine the node with a larger Z value as the reference point, and relatively accurate three-dimensional coordinates (plane coordinates XY floor Z) can be obtained to complete the accurate positioning of the patient.

4 Conclusion

This design implements the hardware node of the hospital patient tracking and positioning system, explains the characteristics and advantages of the hardware node, and focuses on the principle and software operation method of the CC2431 hardware positioning engine. The positioning engine solves the problem of tracking and positioning patients in the medical monitoring network. Experiments have proved that the positioning system can meet the requirements of low power consumption, transmission distance, accurate positioning, and anti-interference.

References:

[1] ZigBee Alliance, ZigBee Specification. http//:www.ZigBee.org

[2] Li Yongzheng, Gao Fei, Wu Xiaoming. Wearable Multi-Physiological Parameters WPAN Based on ZigBee[J]. Microcomputer Information, 2008, 8-2: 10-12

[3] Wang Yang. Research on positioning technology of wireless sensor networks[D]. Hefei, University of Science and Technology of China, 2007

[4] Song Baoye. Wireless positioning engine of CC2431 and its application improvement[J]. Microcontroller and Embedded System Application, 2008-2: 2-24.

[5] CC2430 PRELIMINARY Data Sheet (Rev.1.03), 2005.

[6] CC2431 PRELIMINARY Data Sheet (Rev.1.0), 2007.

Reference address:Design of hospital patient tracking and positioning system based on ZigBee

Previous article:Hitachi launches new device to measure changes in blood flow during saliva secretion
Next article:Application of wireless LAN wifi in medical equipment

Latest Medical Electronics Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号