Heart Rate Detection from Ballistocardiogram



Similar documents
ECG SIGNAL PROCESSING AND HEART RATE FREQUENCY DETECTION METHODS

Feature Vector Selection for Automatic Classification of ECG Arrhythmias

Software Tool for Cardiologic Data Processing

Detection of Heart Diseases by Mathematical Artificial Intelligence Algorithm Using Phonocardiogram Signals

Hands On ECG. Sean Hubber and Crystal Lu

Efficient Heart Rate Monitoring

A MOBILE-PHONE ECG DETECTION KIT AND CLOUD MANAGEMENT SYSTEM

PURE TONE AUDIOMETER

MATLAB-based Applications for Image Processing and Image Quality Assessment Part II: Experimental Results

ELECTRICAL ENGINEERING

Fetal monitoring on the move, from a hospital to in-home setting

Spike-Based Sensing and Processing: What are spikes good for? John G. Harris Electrical and Computer Engineering Dept

Chapter 2 The Research on Fault Diagnosis of Building Electrical System Based on RBF Neural Network

How to Design 10 khz filter. (Using Butterworth filter design) Application notes. By Vadim Kim

SUMMARY. Additional Digital/Software filters are included in Chart and filter the data after it has been sampled and recorded by the PowerLab.

SAMPLE CHAPTERS UNESCO EOLSS DIGITAL INSTRUMENTS. García J. and García D.F. University of Oviedo, Spain

LINEAR MOTOR CONTROL IN ACTIVE SUSPENSION SYSTEMS

The Development of a Pressure-based Typing Biometrics User Authentication System

Diode Applications. by Kenneth A. Kuhn Sept. 1, This note illustrates some common applications of diodes.

An Application of Data Leakage Prevention System based on Biometrics Signals Recognition Technology

Electrocardiogram (ECG) Monitoring System using Bluetooth technology

LOW COST HARDWARE IMPLEMENTATION FOR DIGITAL HEARING AID USING

Transition Bandwidth Analysis of Infinite Impulse Response Filters

Frequency Response of Filters

Pressure Sensor Based Estimation of Pulse Transit Time

Lab 3: Introduction to Data Acquisition Cards

The Periodic Moving Average Filter for Removing Motion Artifacts from PPG Signals

Matlab GUI for WFB spectral analysis

TRANSMISSION OF ARM BASED REAL TIME ECG FOR MONITORING REMOTELY LOCATED PATIENT

AN INTERNET OF THINGS (IOT) BASED SECURITY ALERT SYSTEM USING RASPBERRY PI

Loop Bandwidth and Clock Data Recovery (CDR) in Oscilloscope Measurements. Application Note

Making Accurate Voltage Noise and Current Noise Measurements on Operational Amplifiers Down to 0.1Hz

Evaluation of Heart Rate Variability Using Recurrence Analysis

Simulation and Design of Printed Circuit Boards Utilizing Novel Embedded Capacitance Material

Automatic Fall Detector based on Sliding Window Principle

e-περιοδικό Επιστήμης & Τεχνολογίας e-journal of Science & Technology (e-jst) Design and Construction of a Prototype ECG Simulator

EP A2 (19) (11) EP A2 (12) EUROPEAN PATENT APPLICATION. (43) Date of publication: Bulletin 2012/35

Normally-Off Technologies for

Heart Rate Data Collection Software Application User Guide

PIEZO FILTERS INTRODUCTION

CTCSS REJECT HIGH PASS FILTERS IN FM RADIO COMMUNICATIONS AN EVALUATION. Virgil Leenerts WØINK 8 June 2008

A DESIGN OF DSPIC BASED SIGNAL MONITORING AND PROCESSING SYSTEM

AUDIO POINTER V2 JOYSTICK & CAMERA IN MATLAB

Title : Analog Circuit for Sound Localization Applications

PC BASED PID TEMPERATURE CONTROLLER

A LOW-COST WIRELESS HEALTHCARE MONITORING SYSTEM AND COMMUNICATION TO A CLINICAL ALARM STATION

SOFTWARE FOR GENERATION OF SPECTRUM COMPATIBLE TIME HISTORY

Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and

AN ULTRA-CHEAP GRID CONNECTED INVERTER FOR SMALL SCALE GRID CONNECTION

Lecture 24. Inductance and Switching Power Supplies (how your solar charger voltage converter works)

Android based Alcohol detection system using Bluetooth technology

Ultrasound Distance Measurement

CHAPTER 3 MODAL ANALYSIS OF A PRINTED CIRCUIT BOARD

RF Measurements Using a Modular Digitizer

POTENTIAL OF STATE-FEEDBACK CONTROL FOR MACHINE TOOLS DRIVES

Design of Medical Information Storage System ECG Signal

ε: Voltage output of Signal Generator (also called the Source voltage or Applied

A PHOTOGRAMMETRIC APPRAOCH FOR AUTOMATIC TRAFFIC ASSESSMENT USING CONVENTIONAL CCTV CAMERA

GETTING STARTED WITH LABVIEW POINT-BY-POINT VIS

Department of Electrical and Computer Engineering Ben-Gurion University of the Negev. LAB 1 - Introduction to USRP

See Horenstein 4.3 and 4.4

Analog signals are those which are naturally occurring. Any analog signal can be converted to a digital signal.

Principles of Medical Ultrasound. Pai-Chi Li Department of Electrical Engineering National Taiwan University

The Study and Design Of a Wireless ECG Monitoring System

Design of Bidirectional Coupling Circuit for Broadband Power-Line Communications

REMOTE ELECTROCARDIOGRAM MONITORING BASED ON THE INTERNET

KALMAN Filtering techniques can be used either for

ECE 533 Project Report Ashish Dhawan Aditi R. Ganesan

ONLINE HEALTH MONITORING SYSTEM USING ZIGBEE

Depth and Excluded Courses

Sophomore Physics Laboratory (PH005/105)

Advanced Ensemble Strategies for Polynomial Models

Efficient on-line Signature Verification System

Anomaly Detection Toolkit for Integrated Systems Health Management (ISHM)

The Design of DSP controller based DC Servo Motor Control System

FREQUENCY RESPONSE OF AN AUDIO AMPLIFIER

Maximum Likelihood Estimation of ADC Parameters from Sine Wave Test Data. László Balogh, Balázs Fodor, Attila Sárhegyi, and István Kollár

MOBILE SYSTEM FOR DIAGNOSIS OF HIGH VOLTAGE CABLES (132KV/220KV) VLF-200 HVCD

Electroencephalography Analysis Using Neural Network and Support Vector Machine during Sleep

Lab 5 Operational Amplifiers

Analysis of the use of measurement systems using computers in a school science laboratory at primary schools in the Czech Republic

Accurate Measurement of the Mains Electricity Frequency

APPLICATION NOTES POWER DIVIDERS. Things to consider

Experiment teaching of digital electronic technology using Multisim 12.0

Various Technics of Liquids and Solids Level Measurements. (Part 3)

Doppler. Doppler. Doppler shift. Doppler Frequency. Doppler shift. Doppler shift. Chapter 19

RLC Series Resonance

WAVELET ANALYSIS BASED ULTRASONIC NONDESTRUCTIVE TESTING OF POLYMER BONDED EXPLOSIVE

EXPERIMENT NUMBER 5 BASIC OSCILLOSCOPE OPERATIONS

SIGNAL GENERATORS and OSCILLOSCOPE CALIBRATION

GPIB Instrument Control

Final Year Project Progress Report. Frequency-Domain Adaptive Filtering. Myles Friel. Supervisor: Dr.Edward Jones

Design of Strong-motion Monitoring System for Dam-reservoir D s e i s gn of Stro r ng-mo m tion Monito t ri r ng Syst s em

Convention Paper Presented at the 112th Convention 2002 May Munich, Germany

Network Intrusion Detection System and Its Cognitive Ability based on Artificial Immune Model WangLinjing1, ZhangHan2

Transcription:

POSTER 212, PRAGUE MAY 17 1 Heart Rate Detection from Ballistocardiogram Jakub PARAK 1 Dept. of Circuit Theory, Czech Technical University, Technicka 2, 166 27 Praha, Czech Republic parakjak@fel.cvut.cz Abstract. The heart rate detection from the ballistocardiography signal is described in this article. The ballistocardiography is a technique for recoding of repetitive motions of the human body in form of the ballistocardiogram (BCG). Caused by the sudden ejection of blood into the great vessels with each heart beat, the body motions are in turn causing movements in a suspended supporting structure equipped with piezoelectric sensors. The signal is amplified and filtered by simple electronic measurement circuit. The pre-processed analog signal is sampled on the measuring card. The second lead of electrocardiography (ECG) signal is sampled synchronously with BCG and is used as a reference. The sampled BCG signal is processed by digital filters. Three heart rate detection methods were proposed and tested on BCG signal. Similarity of processed signal allowed us to use methods based on heart rate detection from ECG signal. Proposed methods were tested on the BCG measurements from several persons. According to the results the optimal methods for the heart rate detection are the algorithms based on the autocorrelation and on the thresholding of the signal energy. Due to their simplicity, proposed algorithms are suitable for the real-time BCG signal processing and heart rate calculation. Keywords Ballistocardiogram, piezoelectric sensor, signals processing, heart rate detection. 1. Introduction The ballistocardiography is one of the noninvasive methods for monitoring heart activity. The main research methods began in 5th of the 2th century [1]. The ballistocardiography is a measure of ballistic forces on the heart. The BCG curve is a graphical representation of repetitive motions of the human body arising from the sudden ejection of blood into the great vessels with each heart beat [2]. Robust BCG acquisition is suitable for home vital sign monitoring. Long-term monitoring during sleep can help in detecting hidden heart defects. One of the biggest advantage of this measurement is that monitored person has no wires around his body [3] [4]. The measurement is done mainly by electromechanical film (EMFi) sensors which transfer mechanical energy to electrical signal and vice versa. These sensors can be integrated in bed or chair [5] [6]. The next possibility is to use optical fibers. If an optical fiber is inserted in the bed s mattresses, its length is changed by heart and breathing activity. By using optical interferometer, it is possible to measure the length of the fiber and to obtain signal that includes information about the heart activity [7]. The BCG signal can be measured by radar system waves on very high frequencies as well. It is truly non-contact measurement of vital signs [8]. The heart rate from the BSG signal can be detected by various methods. The first method is signal segmentation with template beat wave model matching [9]. The next possible method is to use adaptive beat to beat estimation based on component analyses [1]. The neural networks algorithms on FPGA are the next possibility how to detect heart beats from BCG [11]. A disadvantage of the algorithms mentioned above is relatively high computing demand. It means it is difficult to implement those methods in real-time systems. It is also difficult to use the radar system or optical fiber sensors for common measurement tasks. The piezoelectric sensor pad which was used for described measurement is very similar to EMFi sensor. The heart rate detection methods described in this article are robust, but still enough simple, ideal for implementation into the real-time systems. 2. Measurement system The hardware of the ballistocardiography measurement system consists of following main parts: a piezoelectric sensor pad and an analog signal processing circuit. A reference ECG signal is measured on the special unit. The BCG and ECG signals are synchronously sampled on measuring card which is connected to the PC. 2.1 Piezoelectric sensor pad The piezoelectric sensor measures ballistic forces from the heart and converts them to electric impulses. The sensor pad which is used for measurement is taken from a baby monitor. The baby monitor was originally designed

2 JAKUB PARAK, HEART RATE DETECTION FROM BALLISTOCARDIOGRAM for monitoring infant breathing during sleeping. The sensor pad has very high sensitivity and therefore can be used for measurement of the BCG. During the measurement a person lies with his back on the pad. The pad equipped with piezoelectric sensor is displayed on the Fig 1. The signal is used for computing the reference heart rate. The ECG signal measurement unit is displayed on the Fig. 3. Fig. 3. The ECG signal measurement unit Fig. 1. Piezoelectric sensor pad 2.2 Analog signal preprocessing circuit The analog BCG from piezoelectric pad has to be preprocessed on the analog circuit before it is sampled on measuring card. The analog circuit consists of three parts: an impedance separation, a low pass filter and a signal amplifier. At the beginning there is important to determine the input resistance of the sensor pad by resistors. The voltage follower is used as an impedance separation. Next part is the low pass passive filter with the cut-off frequency 3 Hz. At the end of the circuit there is a non-inverting amplifier with adjustable gain. The amplifier gain was empirically set on the value 6. The electric circuit schema is shown on the Fig. 2. 3. Digital signal processing Digital signal processing for BCG has been designed in Matlab. The raw BSG is displayed on the Fig 4. The signal is measured using measuring card with the analog preprocessing circuit which was described above. Voltage [V] 4 3 2 1-1 BCG - Source signal from measuring card -2-3 1 2 3 4 5 6 7 8 9 1 Fig. 4. RAW BCG from measuring card Block schema of digital signal processing and filtering is displayed on the Fig. 5. Fig. 2. Analog signal preprocessing circuit schema 2.3 ECG signal measurement unit The reference ECG signal is measured on the unit which is based on professional electrocardiography device [12]. This unit is described in detail in the [13]. As the reference signal the second lead of the ECG is used. Fig. 5. BCG Digital signal processing block schema At the beginning the mean value is removed and signal is normalized for the maximum amplitude of the unit. The network interference at 5 Hz is not filtered because the analog low pass filter is set to 3 Hz. The first filter wanders the baseline. The filter is fourth order

POSTER 212, PRAGUE MAY 17 3 Butterworth high pass filter with cut off frequency 1 Hz. The next filter filters BCG. This filter is fourth order Butterworth low pass filter with cut off frequency 12 Hz. The filtrated signal is displayed on the graph on the Fig. 6..12.1 BCG - filtrated periodic rhythm waves - signal energy U 2.8.6.4 BCG - Filtrated signal Energia [-].8.6.4 Voltage [-].2 -.2.2 1 2 3 4 5 6 7 8 9 1 -.4 -.6 1 2 3 4 5 6 7 8 9 1 Fig. 6. Filtrated BCG signal For the heart rate detection purposes it is appropriate to use a filter of periodic heart rhythm waves that are between 1 Hz and 12 Hz in BCG. Highest peaks of these waves correspond to periodic R-peaks in the ECG signal. These waves are filtered by fourth order Butterworth high and low pass filters with cut off frequencies 1 Hz and 12 Hz. These filters were selected because they gave better results than one band pass filter. The filtered signal is display on the graph on the Fig. 7. Voltage [-].15.1.5 -.5 BCG - Filtrated periodic heart rhythm waves -.1 1 2 3 4 5 6 7 8 9 1 Fig. 7. Filtrated periodic heart rhythm waves of BCG In the next step, the energy of the signal is calculated (1). The signal energy is shown on the Fig. 8. E( t) ( ) 2 = u t (1) Fig. 8. Signal energy of filtrated periodic heart rhythm waves The reference ECG signal processing could be divided into following steps: 1. Normalization and mean value removing, 2. 5 Hz power supply noise removing, 3. Base line wandering, 4. R-Peaks filtering, 5. Energy computing. Digital signal processing and filtering of the reference EGG signal is described in detail in the [14]. 4. Heart rate detection algorithms The BCG and ECG signals are very similar. Therefore heart rate detection from BSG is made on the redesigned algorithms. These algorithms were originally designed for computing heart rate from the ECG signal. The original designs of the algorithms are described in the [14] and [15]. All the algorithms compute heart rate from signal energy. In the algorithms there were changed only the smoothing integrator and the peak detector constants for BCG processing. All three algorithms were compared during their design with original heart rate detection from ECG. 4.1 Signal energy autocorrelation function The first algorithm computes heart rate frequency using mathematical statistic autocorrelation function. The algorithm is based on the assumption that BCG is a periodic signal like the ECG. In the Fig. 1 the autocorrelation functions of BSG and ECG signal energy are displayed with computed hear rate value.

4 JAKUB PARAK, HEART RATE DETECTION FROM BALLISTOCARDIOGRAM U[-] U[-] BCG - Heart rate calculated by autocorrelation function of signal energy - 64.94 bpm.8 Signal energy autocorrelation function.6 Autocorrelation function maximums.4.2 1 2 3 4 5 6 7 8 9 1 Samples ECG - Heart rate calculated by autocorrelation function of signal energy - 64.24 bpm 2 Signal energy autocorrelation function 15 Autocorrelation function maximums 1 5 1 2 3 4 5 6 7 8 9 1 Samples Fig. 1. BSG and ECG signal energy autocorrelation function 4.2 Signal energy thresholding The second algorithm computes heart rate frequency by using the energy signal thresholding. The threshold is computed according to the equation (2). The equation was derived empirically. TH = 2 E( t) (2) In the Fig. 11 the BCG signal energy, threshold, peaks timestamps and the calculated heart rates are displayed. Energy [-] BCG - Peaks of periodic waves and threshold in signal energy.2 Signal energy.1 Threshold Peaks timestamps 1 2 3 4 5 6 7 8 9 1 BCG - Heart rate calculated by signal energy thresholding - average 65.78 bpm 2 Heart rate in peaks timestamps 1 1 2 3 4 5 6 7 8 9 1 ECG - Heart rate calculated by signal energy thresholding - average 64.91 bpm 7 Heart rate in R-peaks timestamps 6 5 1 2 3 4 5 6 7 8 9 Fig. 11. BSG peaks timestamps, threshold in signal energy and calculated heart rate frequencies. Energy [-].5 BCG - Peaks of periodic waves in signal energy envelope Signal energy envelope Peaks timestamps 1 2 3 4 5 6 7 8 9 1 BCG - Heart rate calculated by peaks in signal energy envelope - average 84.66 bpm 2 Heart rate in peaks timestamps 1 1 2 3 4 5 6 7 8 9 8 6 Heart rate in R-peaks timestamps 4 1 2 3 4 5 6 7 8 9 ECG - Heart rate calculated by peaks in signal energy envelope - average 65.45 bpm Fig. 12. BSG peaks timestamps in signal energy envelope and calculated heart rate frequencies. 5. Measurements and results Experimental measurements were made on 4 persons. During the measurement every person lay on the sensor pad which was placed under person s back. All persons didn t move during the measurement. This position simulated sleeping and lying in bed. Every person has been measured three times for 1 minute. The ECG signal for reference heart rate computing was measured synchronously. Heart rate from BCG was computed with all three algorithms for all 12 measurements. The reference heart rate acquired from ECG signal was calculated using peaks detected in signal energy envelope. This method was used for all 12 measurements. The method was chosen as reference method due to the experiment results which are described in [14]. For every measurement and method absolute deviation from reference heart rate was calculated. The deviation was calculated from average heart rate from whole 1 minute measurement. In the graph (see the Fig. 13) there are displayed absolute deviation calculated for all measurements and methods. Deviation from heart rate calculated by autocorrelation function from signal energy Deviation from heart rate calculated by signal energy thresholding Deviation from heart rate calculated by peaks detection in signal energy envelope 4.3 Peaks in signal energy envelope The third algorithm uses the integrator filter. Firstly the energy signal is smoothed by this filter. The peaks from the signal energy are well highlighted. Moreover the energy signal envelope is made. The peak detector is used to find the peaks in the signal envelope. Heart rate frequency is computed from peaks difference. BCG signal energy smoothed by integrator filter, peaks timestamps and calculated heart rates are shown in the Figure 8. Deviation from ECG signal reference heart rate Absolute deviation of BCG heart rate from ECG signal heart rate 35 3 25 2 15 1 5 1 2 3 4 5 6 7 8 9 1 11 12 Number of measurement

POSTER 212, PRAGUE MAY 17 5 Fig. 13. Absolute deviation of BSG heart rate from ECG signal heart rate In the Tab. 1 there is written the mean values of the heart rate absolute deviations computed for all measurements and methods. Mean values of hear rate absolute deviations Computing method Value Autocorrelation function from signal energy 7.8934 Signal energy thresholding 6.6772 Peaks detection in signal energy envelope 1.7647 Tab. 1. Mean values of heart rate absolute deviations Based on the results it may be argued that the autocorrelation function algorithm and the thresholding algorithm are the most suitable for the heart rate computing from the BCG signal. 6. Conclusion The heart rate detection algorithms were designed and tested on several persons. Reliability of the algorithms was verified by the heart rate values calculated from the reference ECG signal. The most reliable algorithms were selected. Based on the simplicity of the digital signal processing and heart rate detection algorithms they can be easily implemented into embedded hardware systems. In the future, similar measuring systems with piezoelectric pads will be integrated in assistive technology system inside a smart home. Measured BSG signal and computed heart rate value will be used for real-time classification of life threatening situations. Acknowledgements This work has been supported by the grant No. SGS12/143/OHK3/2T/13 of the Czech Technical University in Prague and also has been supported by the research program No. MSM 6847712 of the Czech Technical University in Prague (sponsored by the Ministry of Education, Youth and Sports of the Czech Republic). [4] INAN, O. T., ETEMADI, M. WIARD, R. M.., GIOVANGRANDI, L., KOVACS, G. T. A. Robust ballistocardiogram acquisition for home monitoring. Physiological Measurement. 29, vol. 3, no. 2, p. 169 185. [5] FRIEDRICH, D., AUBERT, X.L., FUḦR, H., BRAUERS, A. Heart rate estimation on a beat-to-beat basis via ballistocardiography - a hybrid approach. In Proceedings of the 32nd Annual International Conference of the IEEE Engineering in Medicine and Biology Society. Buenos Aires, (Argentina), 21, p. 448 451. [6] JUNNILA, S., AKHBARDEH, A., VARRI, A., KOIVISTOINEN, T. An EMFi-film sensor based ballistocardiographic chair: performance and cycle extraction method. In Proceedings of the IEEE Workshop on Signal Processing Systems Design and Implementation 25. Athens (Greece), 25, p. 373 377. [7] S PRAGER, S., DONLAGIC, D., ZAZULA, D. Monitoring of basic human vital functions using optical interferometer. In Proceedings of the 1th IEEE International Conference on Signal Processing 21. Beijing (China), 21, p. 1 4. [8] LU GUOHUA, WANG JIANQI, YUE YU, JING XIJING. Study of the Ballistocardiogram signal in life detection system based on radar. In Proceedings of the 29th Annual International Conference of the IEEE Engineering in Medicine and Biology Society. Lyon (France), 27, p. 2191 2194. [9] SHIN, J. H., CHOI, B. H., LIM, Y. G., JEONG, D. U., PARK, K. S. Automatic ballistocardiogram (BCG) beat detection using a template matching approach. In Proceeding of the 3th Annual International Conference of the IEEE Engineering in Medicine and Biology Society. Vancouver (Canada), 28, p. 1144 1146. [1] BRUSER, C., STADLTHANNER, K., DE WAELE, S., LEONHARDT, S. Adaptive Beat-to-Beat Heart Rate Estimation in Ballistocardiograms. IEEE Transactions on Information Technology in Biomedicine. 211, vol. 15, issue 5, p. 778 786. [11] XINSHENG YU, DENT, D. Neural networks in ballistocardiography (BCG) using FPGAs. In Proceedings of the IEE Colloquium on Software Support and CAD Techniques for FPGAs 1994. London (UK), 1994, p. 7/1 7/5. [12] DANĚK, J. (21, March) CARDIOLOGY, ECG basic information.[online] Available: http://noel.feld.cvut.cz/vyu/x31let/ Lectures/5_EKGDanek.pdf [13] PARÁK, J. Device for Long Term Measurement of Heart Rate (Master thesis), Prague: FEE CTU, Department of Circuit Theory, 211. [14] PARÁK, J., DVOŘÁK, J., HAVLÍK, J. Device for Long Time Measurement of Heart Rate. In Proceedings of the 4th International Symposium on Applied Sciences in Biomedical and Communication Technologies. Barcelona (Spain), 211, [15] PARÁK, J., HAVLÍK, J. ECG signal processing and heart rate frequency detection methods. In Proceedings of the 19th Annual Conference Technical Computing Prague 211. Prague (Czech Republic), 211, p. 91 96. References [1] DEUCHAR, D. C. Ballistocardiography. British Heart Journal 1967, vol. 29, no. 3, p. 285 288. [2] NATIONAL AERONAUTICS AND SPACE ADMINISTRATION, Ballistocardiography, a bibliography, Washington DC: U.S. Government Printing Office, 1965. [3] MACK, D. C, PATRIE, J. T., FELDER, R. A., SURRAT, P. M., MAID, A. Sleep Assessment using a Passive Ballistocardiography- Based System: Preliminary Validation. In Proceedings of the 31st Annual International Conference of the IEEE Engineering in Medicine and Biology Society. Minneapolis, Minnesota (USA), 29, p. 4319 4322. About Author Jakub PARAK was born in Bratislava, Slovakia. In 211 he graduated in biomedical engineering at the FEE CTU in Prague. He is currently a PhD-student at the same university at the Department of Circuit Theory at the FEE. Main topics of his research are classification of life threatening situations and vital function monitoring. He is interested in signal processing and embedded hardware applications.