Design of a Portable Multi-Parameter Health Monitor Based on Embedded Systems
2026-04-06 06:01:02··#1
In recent years, people have paid increasing attention to health issues, and life and health monitoring has become an important topic. Previous life and health monitoring devices were typically large and expensive, mainly used in hospital wards for patient monitoring. To meet the monitoring needs of the general population outside of hospitals, such as at home or in the wild, a portable multi-parameter health monitoring system was designed. This system has advantages such as small size, ease of use, and powerful functions. It can be carried around to detect certain important physiological parameters of the human body and display them in real time. 1 System Overall Design The system uses specialized sensors to collect human body temperature parameters, pulse waves, and electrocardiogram (ECG) signals. After amplification, filtering, and A/D conversion of these signals, the data processing system calculates and displays important physiological parameters of the human body in real time. These parameters include blood oxygen saturation, heart rate, blood viscosity, and body temperature. In addition, the system can also display the human body's ECG waveform and pulse waveform. The overall system block diagram is shown in Figure 1. The system mainly consists of two parts: a signal acquisition module and a data processing module. The signal acquisition module mainly consists of front-end ECG, pulse, and body temperature sensors, acquisition circuits, A/D conversion, and a serial port transmission unit. The sensors acquire physiological signals from the human body. The acquisition circuit performs analog amplification, simple filtering, and A/D conversion on the physiological signals, and transmits the data to the data processing system via serial port according to the instructions of the data processing system. The data processing module performs software filtering on the acquired signals and calculates the required physiological parameters based on the filtered waveform data using appropriate algorithms, displaying the results on the LCD in real time. 2 System Design 2.1 Chip Selection The core of this system is the data processing module, which mainly performs software filtering on the waveforms and calculates the required physiological parameters. Its computational load is large, and the software design is complex. The signal acquisition module needs to acquire two signals in a time-division multiplexing manner and perform amplification, filtering, and A/D conversion. To simplify the hardware circuit design and software system programming, a dual-CPU design is adopted. The signal acquisition module uses the TI 16-bit microcontroller MSP430F149, and the data processing module uses the Samsung ARM chip S3C44B0X. The MSP430 features a normal operating mode and four low-power operating modes. Its high level of integration includes a multi-channel 12-bit A/D converter, an on-chip precision comparator, multiple timers with PWM functionality, a beveled A/D converter, an on-chip USART, a watchdog timer, an on-chip digitally controlled oscillator (DCO), numerous I/O ports, and a large-capacity on-chip memory. A single MSP430 can meet the needs of most applications. The MSP430F149 boasts rich on-chip peripherals and is a high-performance microcontroller. It not only greatly simplifies the system hardware circuitry but also significantly improves the system's cost-effectiveness. Its extremely low power consumption is ideal for the application environment of this system. This system utilizes the microcontroller's built-in A/D conversion unit to complete signal conversion and communicates with other modules via the on-chip serial port. The S3C44B0X microprocessor is a high-performance and cost-effective microcontroller solution provided by Samsung for portable devices. It uses a 32-bit low-power RISC core, ARM7TDMI. Furthermore, based on the ARM7TDMI core, the S3C44B0X expands upon it with a complete set of general-purpose peripheral devices, minimizing system cost and the number of peripherals. These functional components mainly include a CPU unit, a system clock management unit, a memory unit, and a system function interface unit. In this system, the S3C44B0X handles waveform data processing and calculation, and drives the LCD, among other functions. 2.2 System Hardware Circuit Design 2.2.1 Hardware Design of Signal Acquisition Circuit Because this system uses the highly integrated single-chip microcontroller MSP430, the peripheral circuit design is relatively simple. The signal acquisition hardware circuit mainly includes a front-end analog circuit design, a light source control circuit, a level conversion circuit, and an opto-isolation circuit. As mentioned above, the analog signal is converted into a digital signal by the built-in A/D converter of the MSP430. The front-end analog circuit uses two-stage amplification and low-pass filtering to process the signal. The light source control circuit uses a dual-pulse drive circuit to sequentially illuminate red and infrared LEDs to achieve photoelectric measurement of the pulse wave. To enhance system safety, a dedicated opto-isolation circuit is used to achieve electrical isolation, ensuring the absolute safety of the user when using the instrument. The temperature measurement section uses the DS1820 high-precision digital temperature sensor from Dallas Semiconductor. This sensor uses a single-wire interface and can directly transmit the acquisition results serially to the MSP430F149 in 9-bit digital form, from which the temperature value can be calculated. The circuit of this module is shown in Figure 2. 2.2.2 Hardware Design of the Data Processing Module The core of the data processing module is the ARM chip S3C44B0X. This system needs to collect a large number of signals and store a large amount of data. The system utilizes the S3C44B0X storage unit to design a three-layer storage architecture: on-chip cache, off-chip main memory, and off-chip secondary memory. Additionally, it stores the boot code in linear flash memory. The specific design is shown in Figure 3. The S3C44B0X integrates a large number of application resources. The system design utilizes its internal LCD controller and serial communication UART interface, simplifying the peripheral circuit design. The system has four buttons for user control command input. The button functions are to collect ECG, pulse signals, and body temperature, and display the relevant parameters on the LCD. The LCD driver circuit drives the LCD touchscreen. 2.3 System Software Design The system's operation is as follows: The user selects the desired function via buttons. After receiving the command, the ARM processor sends a command to the MSP430 microcontroller to collect the corresponding signal via serial port. After the microcontroller completes the acquisition, it sends the collected data back to the ARM processor via serial port for data processing. This monitoring system is a complex multi-tasking system. To achieve real-time performance and fully utilize the capabilities of the 32-bit CPU, an embedded real-time multi-tasking software design approach is adopted. Embedded application software development is performed on a Real-Time Operating System (RTOS) platform. μC/OS-II is selected as the system's embedded RTOS, which is ported to the ARM-based S3C44B0X hardware platform. The kernel multi-tasking management mechanism of μC/OS-II is utilized to better complete the software system development. The system's software design can be divided into two parts: the μC/OS-II-based software design and the MSP430 microcontroller software design. The μC/OS-II-based software is the main part of the system, used for command input, software filtering of signals, parameter calculation, and display. This part is implemented by the S3C44B0X processor. The signal acquisition software implements signal acquisition and transmission, which is implemented by the MSP430F149 microcontroller. 2.3.1 Software Design Based on μC/OS-II Before starting μC/OS-II, the system software initializes the system hardware and operating system, then enters the main system task, waiting for keyboard response. When a key is pressed, the system sends a command to the microcontroller to collect the corresponding physiological signals and waits to receive the collected data. After receiving the data, it enters the data processing subroutine to calculate the required physiological health parameters and display them. The system software flowchart is shown in Figure 4. During data processing, the data collected by the microcontroller is first filtered by software. In the detection and amplification of ECG signals, 50Hz interference and high-frequency noise interference are the most serious. This system designs an integer coefficient IIR digital filter to facilitate fast execution in a 32-bit processor. Its mathematical model is as follows: Y(n) = 2Y(n-1) - Y(n-2) + X(n) - 2X(n-10) + X(n-20) Where: X(n) represents the signal before filtering, and Y(n) represents the signal after filtering. In the processing of pulse wave signals, the 7-point averaging method is used for filtering. The filtering formula is: Y(n) = (X[n-3] + X[n-2] + X[n-1] + X[n] + X[n+1] + X[n+2] + x[n+3]/7. Practical application has proven that this method can effectively filter, providing a guarantee for the next step of waveform analysis and calculation of physiological parameters. The system calculates heart rate parameters based on the acquired electrocardiogram waveform, and calculates blood oxygen saturation and blood viscosity parameters based on the pulse waveform. The algorithm for calculating the required parameters based on the waveform is the difficulty and key of software writing. Considering the chip's computing speed and real-time requirements, the algorithm adopts the threshold discrimination method. Such algorithms have been applied in references [3] and [4]. This system has improved the algorithm to better complete the required functions. 2.3.2 Software design of signal acquisition This software design mainly acquires the corresponding physiological signals according to the obtained instructions, and sends them to the data processing module through the serial port after A/D conversion. Its process is shown in Figure 5. 3 After debugging, the system can display the collected pulse wave and electrocardiogram waveform on the LCD in real time, and simultaneously display the calculated parameters. In actual tests, the accuracy of the physiological parameters calculated by this system can reach more than 90%. Therefore, as a monitoring instrument, the system can detect the health status of the human body in a timely manner. Users can respond promptly to some symptoms according to the prompts of the system. The system has achieved the expected results.