6,302
Views
9
CrossRef citations to date
0
Altmetric
Research Articles

An ECG simulator with a novel ECG profile for physiological signals

ORCID Icon, , , &
Pages 501-509 | Received 05 Jun 2018, Accepted 16 Dec 2018, Published online: 18 Feb 2019

Figures & data

Figure 1. Basic constitution of an ECG segment of physiological type with characteristic waves and spikes [Citation4]. The IBT toolbox [Citation10,Citation11] is capable of detecting 12 characteristic points (P0–P11) from which seven are of interest for this study. POI: Points of interest; Int: Interval; Seg: Segment; Comp: Complex.

Figure 1. Basic constitution of an ECG segment of physiological type with characteristic waves and spikes [Citation4]. The IBT toolbox [Citation10,Citation11] is capable of detecting 12 characteristic points (P0–P11) from which seven are of interest for this study. POI: Points of interest; Int: Interval; Seg: Segment; Comp: Complex.

Figure 2. Course of heart rate during a stress test ECG. The wide variety of frequencies covered is beneficial for approximating of the temporal ECG profile and therefore of interest for this study.

Figure 2. Course of heart rate during a stress test ECG. The wide variety of frequencies covered is beneficial for approximating of the temporal ECG profile and therefore of interest for this study.

Figure 3. Visual representation of ECG template generation. At the beginning, each individual ECG segment is identified based on its R-peak. Next, the associated heart rate (HR) is determined by inclusion of neighbouring R-peaks according to EquationEquation (1). Afterwards, all segments with equal heart rate are organised in the same group and aligned such that R-peaks are congruent. If at least 15 segments are contained in a respective group, ECG templates for that HR are obtained by averaging all segments, which attenuates high-frequency noise.

Figure 3. Visual representation of ECG template generation. At the beginning, each individual ECG segment is identified based on its R-peak. Next, the associated heart rate (HR) is determined by inclusion of neighbouring R-peaks according to EquationEquation (1)(1) HR(i)=60TRR(i−1)+TRR(i)2=120TRR(i−1)+TRR(i)[bpm](1) . Afterwards, all segments with equal heart rate are organised in the same group and aligned such that R-peaks are congruent. If at least 15 segments are contained in a respective group, ECG templates for that HR are obtained by averaging all segments, which attenuates high-frequency noise.

Figure 4. Heart rates (HR) of an individual during rest and workout. Motion artefacts introduce disturbances into the ECG recording that prevent correct R-peak detection. Thus, the change in HR from one beat to another is compared to the mean heart rate variability (MHRV) to indicate and exclude outliers from further processing.

Figure 4. Heart rates (HR) of an individual during rest and workout. Motion artefacts introduce disturbances into the ECG recording that prevent correct R-peak detection. Thus, the change in HR from one beat to another is compared to the mean heart rate variability (MHRV) to indicate and exclude outliers from further processing.

Figure 5. 3 D representation of all templates for one ECG recording overlaid with characteristic points from the IBT toolbox. As one can observe from the graph, the detectable points correlate with the minima and maxima (valleys and mountains). This depiction is referred to as 3 D ECG. (a) Top view for better legibility. HR: Heart rate.

Figure 5. 3 D representation of all templates for one ECG recording overlaid with characteristic points from the IBT toolbox. As one can observe from the graph, the detectable points correlate with the minima and maxima (valleys and mountains). This depiction is referred to as 3 D ECG. (a) Top view for better legibility. HR: Heart rate.

Figure 6. Depiction of timings for the waves and spikes within an ECG segment with respect to heart rate. Data from ECG recordings of the training set (group A) are depicted as points. Furthermore, polynomial fits of this work are compared with the square root and linear fits introduced by Burke & Nasor [Citation4,Citation7]. Thereby, deviations among the profiles are seen that are most obvious for the QRS-complex and the P- and T-waves, respectively. Bpm: Beats per minute.

Figure 6. Depiction of timings for the waves and spikes within an ECG segment with respect to heart rate. Data from ECG recordings of the training set (group A) are depicted as points. Furthermore, polynomial fits of this work are compared with the square root and linear fits introduced by Burke & Nasor [Citation4,Citation7]. Thereby, deviations among the profiles are seen that are most obvious for the QRS-complex and the P- and T-waves, respectively. Bpm: Beats per minute.

Figure 7. Flowchart of the signal generation including optical readout and physical output. MATLAB software generates the synthetic ECG signal or outputs recorded data from a database. The selected signal is shown on-screen within the GUI and output through the sound card via the “sound” command. An external USB sound card converts the digital signal into an analogue signal before it reaches the external circuit board. Depending on the switch position, ECG or common-mode (CM) signals are available for system-testing. Calibration (Cal) uses switch position 1.

Figure 7. Flowchart of the signal generation including optical readout and physical output. MATLAB software generates the synthetic ECG signal or outputs recorded data from a database. The selected signal is shown on-screen within the GUI and output through the sound card via the “sound” command. An external USB sound card converts the digital signal into an analogue signal before it reaches the external circuit board. Depending on the switch position, ECG or common-mode (CM) signals are available for system-testing. Calibration (Cal) uses switch position 1.

Figure 8. Circuit board to convert sound card signals to physiological ECG signals. (a) The circuit diagram of the board with three output options, adjustable with a switch (see for details). (b) The manufactured circuit board with its outputs ‘1’ and ‘2’. Potentiometers allow for precise adjustment of attenuation/ amplification factors.

Figure 8. Circuit board to convert sound card signals to physiological ECG signals. (a) The circuit diagram of the board with three output options, adjustable with a switch (see Table 1 for details). (b) The manufactured circuit board with its outputs ‘1’ and ‘2’. Potentiometers allow for precise adjustment of attenuation/ amplification factors.

Table 1. Switch positions and associated modes of the circuit board.

Table 2. Correlation results for the training ECG recordings in group A.

Figure 9. Determination of the accuracy between recorded ECG signals with the profiles of this work and the profile suggested by Burke & Nasor [Citation4,Citation7]. To achieve an unbiased result, only the test set (group B) is evaluated for this comparison.

Figure 9. Determination of the accuracy between recorded ECG signals with the profiles of this work and the profile suggested by Burke & Nasor [Citation4,Citation7]. To achieve an unbiased result, only the test set (group B) is evaluated for this comparison.

Table 3. Curve-fitting results for the third-order polynomials according at the function at bottom of the table (equivalent to EquationEquation (3)).

Figure 10. The entire ECG simulator system. Signals are selected (#1), or adjusted for synthetic ECG generation (#2–#6), via a MATLAB GUI. The computer running the software outputs these signals via the external sound card. Finally, the circuit board converts the signal intensities to physiological levels. The configuration above shows an oscilloscope (Rohde & Schwarz, HMO 1002) for demonstration purposes. For real ECG testing, the system under test is connected to the circuit board directly. The MATLAB display (#7) and the physical signal output are synchronised. The signal shown above is a synthetic ECG with 60 bpm, 50 Hz noise and baseline wander. An enlarged view of the GUI is included in the online supplement.

Figure 10. The entire ECG simulator system. Signals are selected (#1), or adjusted for synthetic ECG generation (#2–#6), via a MATLAB GUI. The computer running the software outputs these signals via the external sound card. Finally, the circuit board converts the signal intensities to physiological levels. The configuration above shows an oscilloscope (Rohde & Schwarz, HMO 1002) for demonstration purposes. For real ECG testing, the system under test is connected to the circuit board directly. The MATLAB display (#7) and the physical signal output are synchronised. The signal shown above is a synthetic ECG with 60 bpm, 50 Hz noise and baseline wander. An enlarged view of the GUI is included in the online supplement.