Inhoudsopgave:
- Stap 1: Bepaal welke filters en versterkers u wilt gebruiken
- Stap 2: Bouw een instrumentatieversterker en test deze
- Stap 3: Bouw Notch-filter en test het
- Stap 4: Bouw een laagdoorlaatfilter en test het
- Stap 5: Combineer alle 3 componenten en simuleer een elektrocardiogram (ECG)
- Stap 6: DAQ-kaart instellen
- Stap 7: Open LabView, maak een nieuw project en stel de DAQ Assistant in
- Stap 8: Codeer LabView om componenten van het ECG-signaal te analyseren en de hartslag te berekenen
- Stap 9: Combineer het circuit en de LabView-componenten en maak verbinding met een echte persoon
Video: Virtuele gebruikersinterface voor ECG en hartslag: 9 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:19
Voor deze instructable laten we u zien hoe u een circuit kunt bouwen om uw hartslag te ontvangen en deze weer te geven op een virtuele gebruikersinterface (VUI) met een grafische uitvoer van uw hartslag en uw hartslag. Dit vereist een relatief eenvoudige combinatie van circuitcomponenten en de software LabView om de gegevens te analyseren en uit te voeren. Dit is geen medisch hulpmiddel. Dit is alleen voor educatieve doeleinden met behulp van gesimuleerde signalen. Als u dit circuit gebruikt voor echte ECG-metingen, zorg er dan voor dat het circuit en de circuit-naar-instrumentverbindingen de juiste isolatietechnieken gebruiken.
Materialen
Stroomkring:
- Breadboard:
- Weerstanden:
- Condensatoren:
- Op Amps:
- Circuitdraden (inbegrepen in Breadboard-link)
- Krokodillenklemmen
- Bananen akkoorden
- Agilent E3631A DC-voeding
- Functiegenerator
- Oscilloscoop
LabView:
- LabView-software
- DAQ-bord
- Circuit draden
- Geïsoleerde analoge ingang
- Functiegenerator
Stap 1: Bepaal welke filters en versterkers u wilt gebruiken
Om een ECG-signaal weer te geven, werden drie verschillende fasen van het circuit ontworpen en geïmplementeerd: een instrumentatieversterker, een notch-filter en een laagdoorlaatfilter. De instrumentatieversterker versterkt het signaal omdat het, wanneer het van een onderwerp wordt ontvangen, vaak erg klein en moeilijk te zien en te analyseren is. Het notch-filter wordt gebruikt om ruis bij 60 Hz te verwijderen omdat een ECG-signaal geen signalen bij 60 Hz bevat. Ten slotte verwijdert het laagdoorlaatfilter hogere frequenties om ruis uit het signaal te verwijderen en laat in combinatie met het notch-filter alleen de frequenties toe die in een ECG-signaal worden weergegeven.
Stap 2: Bouw een instrumentatieversterker en test deze
De versterker moet een versterking van 1000 V/V hebben en zoals te zien is, bestaat de versterker uit twee trappen. Daarom moet de versterking gelijkmatig over de twee trappen worden verdeeld, waarbij K1 de versterking van de eerste trap is en K2 de versterking van de tweede trap. We hebben vastgesteld dat K1 40 is en K2 25. Dit zijn acceptabele waarden vanwege het feit dat wanneer vermenigvuldigd, een versterking van 1000 V/V wordt verkregen, 40 x 25 = 1000, en ze zijn van vergelijkbare hoeveelheid, met een afwijking van 15 V/V. Met behulp van deze waarden voor de versterking kunnen vervolgens de juiste weerstanden worden berekend. Voor deze berekeningen worden de volgende vergelijkingen gebruikt:
Fase 1 winst: K1 = 1 + 2R2R1 (1)
Fase 2 versterking: K2 = -R4R3 (2)
We kozen willekeurig een waarde van R1, in dit geval was het 1 kΩ, en losten vervolgens op voor de waarde van R2. Als we die vorige waarden invoegen in de vergelijking voor de versterking van fase 1, krijgen we:
40 = 1 + 2R2*1000⇒R2 = 19, 500
Het is belangrijk om ervoor te zorgen dat bij het kiezen van de weerstanden ze in het kOhm-bereik liggen, vanwege de vuistregel dat hoe groter de weerstand is, hoe meer vermogen veilig kan worden afgevoerd zonder schade op te lopen. Als de weerstand te klein is en er een te grote stroom is, zal er schade aan de weerstand ontstaan en bovendien zal de schakeling zelf niet kunnen functioneren. Volgens hetzelfde protocol voor fase 2 hebben we willekeurig een waarde van R3, 1 kΩ gekozen en vervolgens opgelost voor R4. Als we de vorige waarden invoegen in de vergelijking voor de versterking van fase 2, krijgen we: 25 = -R4*1000 ⇒R4= 25000 Ω
Het minteken wordt genegeerd omdat weerstanden niet negatief kunnen zijn. Zodra u deze waarden hebt, bouwt u het volgende afgebeelde circuit. Test het dan!
De Agilent E3631A DC-voeding voedt de operationele versterkers met een uitgang van +15 V en -15 V naar pin 4 en 7. Stel de functiegenerator in om een hartgolfvorm uit te voeren met een frequentie van 1 kHz, een Vpp van 12,7 mV, en een offset van 0 V. Deze ingang moet naar pin 3 van de operationele versterkers in de eerste trap van het circuit zijn. De output van de versterker, afkomstig van pin 6 van de operationele versterker van de tweede trap, wordt weergegeven op kanaal 1 van de oscilloscoop en de spanning van piek tot piek wordt gemeten en geregistreerd. Om ervoor te zorgen dat de instrumentatieversterker een versterking van ten minste 1000 V/V heeft, moet de spanning van piek-tot-piek ten minste 12,7 V zijn.
Stap 3: Bouw Notch-filter en test het
Het notch-filter is nodig om 60 Hz-ruis uit het biosignaal te verwijderen. Naast deze eis, omdat dit filter geen verdere versterking hoeft te bevatten, is de kwaliteitsfactor ingesteld op 1. Net als bij de instrumentatieversterker hebben we eerst de waarden voor R1, R2, R3 en C bepaald met behulp van het volgende ontwerp vergelijkingen voor een notch-filter:R1= 1/(2Q⍵0C)
R2= 2Q/(⍵0C)
R3= R1R/(2R1 + R2)
Q = ⍵0/β
β= ⍵c2 -⍵c1
Waar Q = kwaliteitsfactor
⍵0= 2πf0= middenfrequentie in rad/sec
f0= middenfrequentie in Hz
β = bandbreedte in rad/sec
⍵c1, ⍵c2= afsnijfrequenties (rad/sec)
We kozen willekeurig een waarde van C, in dit geval was het 0,15 µF, en losten vervolgens op voor de waarde van R1. Als we de vorige waarden van de kwaliteitsfactor, middenfrequentie en capaciteit inpluggen, krijgen we:
R1= 1/(2(1)(2π60)(0.15x10-6))= 1105.25 Ω
Zoals hierboven vermeld bij het bespreken van het ontwerp van de instrumentatieversterker, is het nog steeds belangrijk om ervoor te zorgen dat bij het oplossen van de weerstanden dat ze in het kOhm-bereik liggen, zodat er geen schade aan het circuit wordt toegebracht. Als bij het oplossen van de weerstanden één te klein is, moet een waarde worden gewijzigd, zoals de capaciteit, om ervoor te zorgen dat dit niet gebeurt. Net als bij het oplossen van de vergelijking voor R1, R2 en R3 kan worden opgelost:
R2= 2(1)/[(2π60)(0.15x10-6)]= 289,9 kΩ
R3= (1105,25) (289,9x103)/[(1105,25) + (289,9x103)]= 1095,84 Ω
Los bovendien de bandbreedte op om deze als een theoretische waarde te hebben om later te vergelijken met de experimentele waarde:
1 = (2π60)/β⇒β = 47,12 rad/sec
Zodra u de weerstandswaarden kent, bouwt u een circuit op het breadboard.
Alleen deze fase van het circuit moet op dit punt worden getest, dus het mag niet worden aangesloten op de instrumentatieversterker. De Agilent E3631A DC-voeding wordt gebruikt om de operationele versterker van stroom te voorzien met een output van +15 V en -15 V naar pin 4 en 7. De functiegenerator is ingesteld om een sinusvormige golfvorm uit te voeren met een initiële frequentie van 10 Hz, een Vpp van 1 V en een offset van 0 V. De positieve ingang moet worden aangesloten op R1 en de negatieve ingang moet worden aangesloten op aarde. De ingang moet ook worden aangesloten op kanaal 1 van de oscilloscoop. De output van het notch-filter, afkomstig van pin 6 van de operationele versterker, wordt weergegeven op kanaal 2 van de oscilloscoop. Een AC-zwaai wordt gemeten en geregistreerd door de frequentie te variëren van 10 Hz tot 100 Hz. De frequentie kan worden verhoogd met stappen van 10 Hz tot een frequentie van 50. Daarna worden stappen van 2 Hz gebruikt tot 59 Hz. Zodra 59 Hz is bereikt, moeten stappen van 0,1 Hz worden genomen. Daarna, nadat 60 Hz is bereikt, kunnen de stappen weer worden verhoogd. De Vout/Vin-verhouding en fasehoek moeten worden geregistreerd. Als de Vout/Vin-verhouding niet kleiner is dan of gelijk is aan -20 dB bij 60 Hz, moeten de weerstandswaarden worden gewijzigd om deze verhouding te garanderen. Op basis van deze gegevens wordt vervolgens een frequentieresponsgrafiek en een faseresponsgrafiek geconstrueerd. De frequentierespons zou er zo uit moeten zien in de grafiek, wat bewijst dat frequenties rond de 60 Hz worden verwijderd, en dat is wat je wilt!
Stap 4: Bouw een laagdoorlaatfilter en test het
De afsnijfrequentie van het laagdoorlaatfilter wordt bepaald als 150 Hz. Deze waarde is gekozen omdat u alle frequenties in het ECG wilt behouden terwijl u de overtollige ruis, die met name bij hogere frequenties wordt aangetroffen, wilt verwijderen. De frequentie van de T-golf ligt in het bereik van 0-10 Hz, de P-golf in het bereik van 5-30 Hz en het QRS-complex in het bereik van 8-50 Hz. Abnormale ventriculaire geleiding wordt echter gekenmerkt door hogere frequenties, meestal boven 70 Hz. Daarom is gekozen voor 150 Hz als afsnijfrequentie om ervoor te zorgen dat we alle frequenties kunnen opvangen, zelfs de hogere frequenties, terwijl hoogfrequente ruis wordt afgesneden. Naast de afsnijfrequentie van 150 Hz wordt de kwaliteitsfactor K op 1 ingesteld omdat er geen verdere versterking nodig is. We hebben eerst de waarden voor R1, R2, R3, R4, C1 en C2 bepaald met behulp van de volgende ontwerpvergelijkingen voor een laagdoorlaatfilter:
R1= 2/[⍵c[aC2+sqrt([a^2 + 4b(K -1)]C2^2 - 4bC1C2)]
R2= 1/[bC1C2R1⍵c^2]
R3= K(R1+ R2)/(K -1) wanneer K > 1
R4= K(R1+R2)
C2 ongeveer 10/fc uF
C1 < C2[a2 + 4b(K -1)]4b
Waar K = winst
⍵c= afsnijfrequentie (rad/sec)
fc= afsnijfrequentie (Hz)
a = filtercoëfficiënt = 1,414214
b = filtercoëfficiënt = 1
Omdat de versterking 1 is, wordt R3 vervangen door een open circuit en wordt R4 vervangen door een kortsluiting waardoor het een spanningsvolger wordt. Die waarden hoeven dus niet te worden opgelost. We hebben eerst de waarde van C2 opgelost. Door de vorige waarden in die vergelijking in te voeren, krijgen we:
C2 = 10/150 uF=0,047 uF
Dan kan C1 worden opgelost met de waarde van C2.
C1 < (0,047x10^-6)[1.414214^2 + 4(1)(1 -1)]/4(1)
C1 < 0,024 uF= 0,022 uF
Nadat de capaciteitswaarden zijn opgelost, kunnen R1 en R2 als volgt worden berekend:
R1= 2(2π150)[(1.414214)(0.047x10-6)+([1.4142142 + 4(1)(1 -1)]0.047x10-6)2 - 4(1)(0.022x10-6)(0.047 x10-6))] R1= 25486,92 Ω
R2= 1(1)(0.022x10-6)(0.047x10-6)(25486.92)(2π150)2= 42718.89 Ω
Bouw met de juiste weerstanden de schakeling zoals te zien in het schakelschema.
Dit is de laatste fase van het algehele ontwerp en moet op het breadboard direct links van het inkepingsfilter worden gebouwd met de uitgang van het inkepingsfilter en de ingangsspanning voor het laagdoorlaatfilter. Dit circuit moet worden geconstrueerd met hetzelfde breadboard als voorheen, met de correct berekende weerstanden en capaciteiten, en één operationele versterker. Nadat de schakeling is opgebouwd met behulp van het schakelschema in figuur 3, wordt deze getest. Alleen deze trap moet op dit punt worden getest, dus deze mag niet worden aangesloten op de instrumentatieversterker of het notch-filter. Daarom wordt de Agilent E3631A DC-voeding gebruikt om de operationele versterker van stroom te voorzien met een output van +15 en -15 V naar pin 4 en 7. De functiegenerator is ingesteld om een sinusvormige golfvorm uit te voeren met een initiële frequentie van 10 Hz, een Vpp van 1 V en een offset van 0 V. De positieve ingang moet worden aangesloten op R1 en de negatieve ingang moet worden aangesloten op aarde. De ingang moet ook worden aangesloten op kanaal 1 van de oscilloscoop. De output van het notch-filter, afkomstig van pin 6 van de operationele versterker, wordt weergegeven op kanaal 2 van de oscilloscoop. Een AC-zwaai wordt gemeten en geregistreerd door de frequentie te variëren van 10 Hz tot 300 Hz. De frequentie kan worden verhoogd met stappen van 10 Hz totdat de afsnijfrequentie van 150 Hz wordt bereikt. Vervolgens moet de frequentie met 5 Hz worden verhoogd tot 250 Hz. Hogere stappen van 10 Hz kunnen worden gebruikt om de sweep te beëindigen. De Vout/Vin-verhouding en fasehoek worden geregistreerd. Als de afsnijfrequentie niet 150 Hz is, moeten de weerstandswaarden worden gewijzigd om ervoor te zorgen dat deze waarde in feite de afsnijfrequentie is. De frequentieresponsgrafiek zou eruit moeten zien als de afbeelding waar u kunt zien dat de afsnijfrequentie rond de 150 Hz ligt.
Stap 5: Combineer alle 3 componenten en simuleer een elektrocardiogram (ECG)
Verbind alle drie de fasen door een draad toe te voegen tussen het laatste circuitonderdeel van het vorige onderdeel en het begin van het volgende onderdeel. Het volledige circuit is te zien in het diagram.
Simuleer met behulp van de functiegenerator een ander ECG-signaal door. Als de componenten met succes zijn gebouwd en aangesloten, moet uw uitvoer op de oscilloscoop er zo uitzien op de afbeelding.
Stap 6: DAQ-kaart instellen
Hierboven is het DAQ-bord te zien. Sluit hem aan op de achterkant van de computer om hem op te starten en plaats de geïsoleerde analoge ingang in kanaal 8 van het bord (ACH 0/8). Steek twee draden in de gaten met het label '1' en '2' van de geïsoleerde analoge ingang. Stel de functiegenerator in om een ECG-signaal van 1Hz uit te voeren met een Vpp van 500mV en een offset van 0V. Sluit de uitgang van de functiegenerator aan op de draden die in de geïsoleerde analoge ingang zijn geplaatst.
Stap 7: Open LabView, maak een nieuw project en stel de DAQ Assistant in
Open de LabView-software en maak een nieuw project aan en open een nieuwe VI onder het vervolgkeuzemenu bestand. Klik met de rechtermuisknop op de pagina om een componentvenster te openen. Zoek naar ‘DAQ Assistant Input’ en sleep deze naar het scherm. Hierdoor wordt automatisch het eerste venster geopend.
Selecteer Signalen ophalen > Analoge ingang > Spanning. Hierdoor wordt het tweede venster geopend.
Selecteer ai8 omdat u uw geïsoleerde analoge ingang in kanaal 8 plaatst. Selecteer Voltooien om het laatste venster te openen.
Wijzig de acquisitiemodus in continue samples, de samples om te lezen in 2k en de snelheid in 1kHz. Selecteer vervolgens Uitvoeren bovenaan uw venster en een uitvoer zoals hierboven zou moeten verschijnen. Als het ECG-signaal omgekeerd is, verwisselt u eenvoudig de aansluitingen van de functiegenerator naar het DAQ-bord. Dit toont aan dat u met succes een ECG-signaal ontvangt! (Yay!) Nu moet je het coderen om het te analyseren!
Stap 8: Codeer LabView om componenten van het ECG-signaal te analyseren en de hartslag te berekenen
Gebruik de symbolen in de afbeelding in LabView
Je hebt de DAQ Assistant al geplaatst. De DAQ Assistant neemt het ingangssignaal, dat een analoog spanningssignaal is, ofwel gesimuleerd door een functiegenerator of rechtstreeks ontvangen van een persoon die is aangesloten op correct geplaatste elektroden. Vervolgens neemt het dit signaal en voert het door een A/D-converter met continue bemonstering en parameters van 2000 te lezen monsters, een bemonsteringsfrequentie van 1 kHz en met maximale en minimale spanningswaarden van respectievelijk 10V en -10V. Dit verkregen signaal wordt vervolgens in een grafiek weergegeven zodat het visueel kan worden gezien. Het neemt ook deze geconverteerde golfvorm en telt er 5 bij op, om ervoor te zorgen dat er een negatieve offset is, en wordt vervolgens vermenigvuldigd met 200 om de pieken duidelijker, groter en gemakkelijker te analyseren te maken. Het bepaalt dan de max en min waarde van de golfvorm binnen het gegeven venster van 2,5 seconden via de max/min operand. De berekende maximale waarde moet worden vermenigvuldigd met een percentage dat kan worden gewijzigd, maar is meestal 90% (0,9). Deze waarde wordt dan opgeteld bij de min-waarde en als drempel naar de piekdetectie-operand gestuurd. Als resultaat wordt elk punt van de golfvormgrafiek dat deze drempel overschrijdt, gedefinieerd als een piek en opgeslagen als een reeks pieken in de piekdetectoroperator. Deze reeks pieken wordt vervolgens naar twee verschillende functies gestuurd. Een van deze functies ontvangt zowel de piekarray als de golfvormuitvoer door de maximale waarde-operator. Binnen deze functie, dt, worden deze twee ingangen omgezet naar een tijdwaarde voor elk van de pieken. De tweede functie bestaat uit twee indexoperators die de locatie-uitgangen van de piekdetectiefunctie nemen en deze afzonderlijk indexeren om de locaties van de 0e piek en de 1e piek te verkrijgen. Het verschil tussen deze twee locaties wordt berekend door de min-operator en vervolgens vermenigvuldigd met de tijdswaarden verkregen uit de dt-functie. Dit geeft de periode of de tijd tussen twee pieken in seconden weer. Per definitie geeft 60 gedeeld door de periode BPM. Deze waarde wordt vervolgens door een absolute operand geleid om ervoor te zorgen dat de uitvoer altijd positief is en wordt vervolgens afgerond op het dichtstbijzijnde gehele getal. Dit is de laatste stap bij het berekenen en uiteindelijk uitvoeren van de hartslag op hetzelfde scherm als de uitvoer van de golfvorm. Uiteindelijk is dit hoe het blokschema eruit zou moeten zien als de eerste afbeelding.
Na het voltooien van het blokschema, als u het programma uitvoert, zou u de uitvoer in beeld moeten krijgen.
Stap 9: Combineer het circuit en de LabView-componenten en maak verbinding met een echte persoon
Nu voor het leuke gedeelte! Combineer uw mooie circuit en het LabView-programma om een echt ECG te maken en de hartslag te berekenen. Om het circuit aan te passen om te voldoen aan een mens en een levensvatbaar signaal te produceren, moet de versterking van de instrumentatieversterker worden teruggebracht tot een versterking van 100. Dit komt door het feit dat wanneer aangesloten op een persoon, er een offset is die verzadigt vervolgens de operationele versterker. Door de winst te verlagen, zal dit dit probleem verminderen. Eerst wordt de versterking van de eerste trap van de instrumentatieversterker gewijzigd in een versterking van 4, zodat de totale versterking 100 is. Vervolgens wordt met behulp van vergelijking 1 R2 ingesteld op 19,5 kΩ en wordt R1 als volgt gevonden:
4 = 1 + 2(19, 500)R1⇒R1= 13 kΩ Vervolgens wordt de instrumentatieversterker aangepast door de weerstand van R1 te veranderen in 13 kΩ zoals getoond in stap 2 op het eerder gebouwde breadboard. De hele schakeling is aangesloten en de schakeling kan getest worden met LabView. De Agilent E3631A DC-voeding voedt de operationele versterkers met een output van +15 V en -15 V naar pinnen 4 en 7. De ECG-elektroden zijn verbonden met het onderwerp met de positieve kabel (G1) die naar de linkerenkel gaat, de negatieve draad (G2) naar de rechterpols en de grond (COM) naar de rechterenkel. De menselijke invoer moet zijn op pin 3 van de operationele versterkers in de eerste trap van het circuit, waarbij de positieve kabel is aangesloten op pin 3 van de eerste operationele versterker en de negatieve kabel is aangesloten op pin 3 van de tweede operationele versterker. De grond sluit aan op de grond van het breadboard. De uitgang van de versterker, afkomstig van pin 6 van het laagdoorlaatfilter, is aangesloten op het DAQ-bord. Zorg ervoor dat u heel stil en stil bent en u zou een uitvoer in LabView moeten krijgen die lijkt op die op de afbeelding.
Dit signaal is duidelijk veel ruisiger dan het perfecte signaal dat door de functiegenerator wordt gesimuleerd. Als gevolg hiervan zal uw hartslag veel schommelen, maar moet deze fluctueren met een bereik van 60-90 BPM. En daar heb je het! Een leuke manier om onze eigen hartslag te meten door een circuit te bouwen en wat software te coderen!
Aanbevolen:
Het meten van uw hartslag is binnen handbereik: fotoplethysmografie-benadering voor het bepalen van uw hartslag - Ajarnpa
Het meten van uw hartslag is binnen handbereik: fotoplethysmografie Benadering voor het bepalen van de hartslag: Een fotoplethysmograaf (PPG) is een eenvoudige en goedkope optische techniek die vaak wordt gebruikt om veranderingen in het bloedvolume in een microvasculair weefselbed te detecteren. Het wordt meestal niet-invasief gebruikt om metingen aan het oppervlak van de huid uit te voeren, meestal
Arduino-hartslag met ECG-weergave en geluid - Ajarnpa
Arduino-hartslag met ECG-weergave en geluid: Hey jongens! Ik hoop dat je al genoten hebt van mijn vorige instructable "Arduino LIXIE Clock" en je bent klaar voor een nieuwe, zoals gewoonlijk heb ik deze tutorial gemaakt om je stap voor stap te begeleiden bij het maken van dit soort super verbazingwekkende goedkope elektronische projecten
Gebogen gebruikersinterface in Unity maken voor virtual reality: 4 stappen
Curved UI in Unity creëren voor Virtual Reality: Als u op zoek bent naar een gratis en gemakkelijke oplossing om een gebogen gebruikersinterface voor uw Virtual Reality-toepassing of VR-game te maken, bent u hier aan het juiste adres. In deze blog leer je om een gebogen ui-element in eenheid te maken met behulp van de Unity UI Extensions
Hoe maak je een ECG en hartslag digitale monitor: 6 stappen
Hoe een ECG en digitale hartslagmonitor te bouwen: Een elektrocardiogram (ECG) meet de elektrische activiteit van de hartslag om te laten zien hoe snel het hart klopt, evenals het ritme ervan. Er is een elektrische impuls, ook wel een golf genoemd, die door het hart reist om de hartspier te
Eenvoudige interactieve gebruikersinterface voor lesgeven en evalueren: 11 stappen
Eenvoudige interactieve gebruikersinterface voor lesgeven en evalueren.: Dit project is ontwikkeld als onderdeel van een universitaire klas, het doel was om een interactief systeem te maken om een bepaald onderwerp te onderwijzen en te evalueren. Hiervoor gebruikten we een Processing op een pc voor de interface en een Arduino NANO voor de arcade-knop en LED's, dus