Innholdsfortegnelse:
- Trinn 1: Funksjon
- Trinn 2: Innføring i maskinvare
- Trinn 3: Deteksjonsprinsipp
- Trinn 4: Utviklingstrinn
- Trinn 5: Arduino LCD -prosjektets implementeringsprosess
- Trinn 6: Generer konfigurasjonsfil
- Trinn 7: Effekten kan sees på følgende bilde:
Video: Puls på STONE LCD: 7 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
For en tid siden fant jeg en pulssensormodul MAX30100 i shopping på nettet. Denne modulen kan samle inn oksygen- og pulsdata fra brukere, som også er enkel og praktisk å bruke.
I følge dataene fant jeg ut at det er biblioteker med MAX30100 i Arduino -biblioteksfilene. Det vil si at hvis jeg bruker kommunikasjonen mellom Arduino og MAX30100, kan jeg ringe Arduino -biblioteksfilene direkte uten å måtte omskrive driverfilene. Dette er bra, så jeg kjøpte modulen til MAX30100. Jeg bestemte meg for å bruke Arduino til å verifisere hjertefrekvensen og blodets oksygeninnsamlingsfunksjon på MAX30100.
Trinn 1: Funksjon
Kjøp lenke til modul MAX30100:
item.taobao.com/item.htm?spm=a230r.1.14.69.c0c56556o8wH44&id=559690766124&ns=1&abbucket=2#detail
Merk: Denne modulen er som standard bare med 3,3 V nivå MCU -kommunikasjon, fordi den som standard bruker IIC -pinnen, trekker opp motstanden på 4,7 K til 1,8 V, så det er ingen kommunikasjon med Arduino som standard hvis du vil kommunisere med Arduino og trenger to 4,7 K av IIC pin pull-up motstand koblet til VIN pin, vil dette innholdet bli introdusert bak i kapitlet.
Funksjonelle oppgaver
Før jeg startet dette prosjektet, tenkte jeg på noen enkle funksjoner: Pulsdata og blodets oksygendata ble samlet inn
Puls og oksygendata i blodet vises via en LCD -skjerm
Dette er de eneste to funksjonene, men hvis vi ønsker å implementere det, må vi gjøre mer
tenker:
Hvilken master MCU brukes?
Hva slags LCD -skjerm?
Som vi nevnte tidligere, bruker vi Arduino for MCU, men dette er et Arduino LCD -skjermprosjekt, så vi må velge riktig LCD -skjermmodul. Jeg planlegger å bruke LCD -skjermen med en seriell port. Jeg har en STONE STVI070WT -skjerm her, men hvis Arduino trenger å kommunisere med den, er det nødvendig med MAX3232 for å gjøre nivåkonverteringen. Deretter bestemmes de grunnleggende elektroniske materialene som følger:
1. Arduino Mini Pro utviklingstavle
2. MAX30100 hjertefrekvens og blod oksygen sensor modul
3. STONE STVI070WT LCD -seriell portvisningsmodul
4. MAX3232 -modul
Trinn 2: Innføring i maskinvare
MAX30100
MAX30100 er en integrert løsning for pulsoksymetri og pulsmåler. Den kombinerer to lysdioder, en fotodetektor, optimalisert optikk og lydløs analog signalbehandling for å oppdage pulsoksymetri og pulssignaler. MAX30100 driver fra 1.8V og 3.3V strømforsyninger og kan slås av via programvare med ubetydelig standby -strøm, slik at strømforsyningen kan forbli tilkoblet hele tiden. applikasjoner
● Bærbare enheter
● Fitness Assistant -enheter
● Medisinske overvåkingsenheter
Fordeler og funksjoner
1 、 Komplett pulsoksymeter og hjertefrekvenssensor forenkler design
Integrerte lysdioder, fotosensor og høyytende analog front -slutt
Liten 5,6 mm x 2,8 mm x 1,2 mm 14-pinners optisk forbedret system-i-pakke
2 、 Ultra-Low-Power-drift Øker batterilevetiden for bærbare enheter
Programmerbar prøvehastighet og LED -strøm for strømsparing
Ultralav avstengningsstrøm (0,7µA, typ)
3, Avansert funksjonalitet Forbedrer måleytelsen
Høy SNR gir robust motstand mot artefakter
Integrert omgivelseslysavlysning
Høy prøvehastighet
Rask datautmatningsevne
Trinn 3: Deteksjonsprinsipp
Bare trykk fingeren mot sensoren for å estimere puls oksygenmetning (SpO2) og puls (tilsvarer hjerteslag).
Pulsoksymeteret (oksimeteret) er et minispektrometer som bruker prinsippene for forskjellige røde celleabsorpsjonsspektre for å analysere oksygenmetningen i blodet. Denne sanntids og hurtige målemetoden er også mye brukt i mange kliniske referanser. Jeg vil ikke introdusere MAX30100 for mye, fordi disse materialene er tilgjengelige på Internett. Interesserte venner kan slå opp informasjonen til denne pulsmålingsmodulen på Internett, og ha en dypere forståelse av deteksjonsprinsippet.
STEN STVI070WT-01
Introduksjon til displayet
I dette prosjektet vil jeg bruke STONE STVI070WT til å vise puls og blodets oksygendata. Driverchippen er integrert inne i skjermen, og det er programvare som brukerne kan bruke. Brukere trenger bare å legge til knapper, tekstbokser og annen logikk gjennom de designede brukergrensesnittbildene, og deretter generere konfigurasjonsfiler og laste dem ned til skjermbildet for å kjøre. Displayet til STVI070WT kommuniserer med MCU gjennom uart-rs232 signal, noe som betyr at vi må legge til en MAX3232 chip for å konvertere RS232 signal til et TTL signal slik at vi kan kommunisere med Arduino MCU.
Hvis du ikke er sikker på hvordan du bruker MAX3232, kan du se følgende bilder:
Hvis du synes nivåkonverteringen er for plagsom, kan du velge andre typer STONE-visere, hvorav noen kan sende uart-ttl-signal direkte. Det offisielle nettstedet har detaljert informasjon og introduksjon: https://www.stoneitech.com/ Hvis du trenger videoopplæringsprogrammer og opplæringsprogrammer for bruk, kan du også finne den på det offisielle nettstedet.
Trinn 4: Utviklingstrinn
Tre trinn i utviklingen av STONE -skjermbildet:
Design skjermlogikken og knappelogikken med programvaren STONE TOOL, og last ned designfilen til skjermmodulen.
MCU kommuniserer med STONE LCD -skjermmodul gjennom seriell port.
Med dataene innhentet i trinn 2, gjør MCU andre handlinger.
Installasjon av programvare for STONE TOOL
Last ned den nyeste versjonen av STONE TOOL -programvaren (for tiden TOOL2019) fra nettstedet, og installer den. Etter at programvaren er installert, åpnes følgende grensesnitt:
Klikk på "File" -knappen i øvre venstre hjørne for å lage et nytt prosjekt, som vi vil diskutere senere.
ArduinoArduino er en åpen kildekode elektronisk prototypeplattform som er enkel å bruke og enkel å bruke. Den inkluderer maskinvaredelen (forskjellige utviklingstavler som samsvarer med Arduino -spesifikasjonen) og programvaredelen (Arduino IDE og relaterte utviklingssett). Maskinvaredelen (eller utviklingskortet) består av en mikrokontroller (MCU), Flash -minne (Flash) og et sett med universelle inngangs-/utgangsgrensesnitt (GPIO), som du kan tenke på som et mikrodatamaskin hovedkort. Programvaredelen består hovedsakelig av Arduino IDE på PC, relatert brettpakke (BSP) og et rikt tredjeparts funksjonsbibliotek. Med Arduino IDE kan du enkelt laste ned BSP knyttet til utviklingskortet og bibliotekene du trenger å skrive programmene dine. Arduino er en åpen kildekode -plattform. Så langt har det vært mange modeller og mange avledede kontrollere, inkludert Arduino Uno, Arduino Nano, ArduinoYun og så videre. I tillegg støtter Arduino IDE nå ikke bare utviklingskortene i Arduino -serien, men legger også til støtte for populære utviklingskort som som Intel Galileo og NodeMCU ved å introdusere BSP. Arduino registrerer miljøet gjennom en rekke sensorer, kontrollerende lys, motorer og andre enheter for å mate tilbake og påvirke miljøet. Mikrokontrolleren på brettet kan programmeres med et Arduino -programmeringsspråk, samles i binære filer og brennes inn i mikrokontrolleren. Programmering for Arduino er implementert med Arduino programmeringsspråk (basert på ledninger) og Arduino utviklingsmiljø (basert på prosessering). Arduino-baserte prosjekter kan bare inneholde Arduino, så vel som Arduino og annen programvare som kjører på PC, og de kommuniserer med hver andre (for eksempel Flash, Processing, MaxMSP).
utviklingsmiljø Arduino utviklingsmiljø er Arduino IDE, som kan lastes ned fra Internett. Logg deg på det offisielle nettstedet til Arduino og last ned programvaren https://www.arduino.cc/en/Main/Software?setlang=cn Etter at du har installert Arduino IDE, vil følgende grensesnitt vises når du åpner programvaren:
Arduino IDE lager to funksjoner som standard: oppsettfunksjonen og sløyfefunksjonen. Det er mange Arduino -introduksjoner på Internett. Hvis du ikke forstår noe, kan du gå til Internett for å finne det.
Trinn 5: Arduino LCD -prosjektets implementeringsprosess
maskinvaretilkobling
For å sikre at det neste trinnet i å skrive kode går greit, må vi først bestemme påliteligheten til maskinvareforbindelsen. Bare fire stykker maskinvare ble brukt i dette prosjektet:
1. Arduino Mini pro utviklingstavle
2. STONE STVI070WT tft-lcd-skjerm
3. MAX30100 hjertefrekvens- og oksygensensor i blodet
4. MAX3232 (rs232-> TTL) Arduino Mini Pro utviklingskort og STVI070WT tft-lcd-skjerm er koblet til via UART, som krever nivåkonvertering gjennom MAX3232, og deretter er Arduino Mini Pro utviklingskort og MAX30100 modul koblet til via IIC grensesnitt Etter å ha tenkt klart, kan vi tegne følgende ledningsbilde:
Sørg for at det ikke er noen feil i maskinvaretilkoblingen, og fortsett til neste trinn.
LCD-TFT brukergrensesnittdesign Først og fremst må vi designe et UI-skjermbilde, som kan designes av PhotoShop eller andre bildedesignverktøy. Etter å ha designet UI -skjermbildet, lagre bildet i-j.webp
Fjern bildet som ble lastet inn som standard i det nye prosjektet, og legg til brukergrensesnittet som vi designet. Effekten er som følger:
tekstvisningskomponentadresse: Tilkoblingsstatus: 0x0008
Puls: 0x0001
Oksygen i blodet: 0x0005
Hovedinnholdet i brukergrensesnittet er som følger:
Tilkoblingsstatus
Pulsvisning
Blodoksygen viste seg
Trinn 6: Generer konfigurasjonsfil
Når UI -designet er fullført, kan konfigurasjonsfilen genereres og lastes ned til STVI070WT -skjermen.
Utfør først trinn 1, sett deretter inn USB -flash -stasjonen i datamaskinen, og disksymbolet vises. Klikk deretter "Last ned til u-disk" for å laste ned konfigurasjonsfilen til USB-flash-stasjonen, og sett deretter inn USB-flash-stasjonen i STVI070WT for å fullføre oppgraderingen.
MAX30100MAX30100 kommuniserer via IIC. Arbeidsprinsippet er at hjertefrekvensens ADC -verdi kan oppnås gjennom infrarød leddbestråling. MAX30100 -registeret kan deles inn i fem kategorier: statsregister, FIFO, kontrollregister, temperaturregister og ID -register. Temperaturregisteret leser temperaturverdien til brikken for å korrigere avviket forårsaket av temperaturen. ID -registeret kan lese brikkens ID -nummer.
MAX30100 er koblet til Arduino Mini Pro utviklingskort gjennom IIC kommunikasjonsgrensesnitt. Fordi det er ferdige MAX30100 biblioteksfiler i Arduino IDE, kan vi lese hjertefrekvens og blodets oksygendata uten å studere registrene til MAX30100. For de som er interessert i å utforske MAX30100-registeret, se MAX30100-databladet.
Endre MAX30100 IIC pull-up motstand
Det skal bemerkes at 4,7k pull-up-motstanden til IIC-pinnen på MAX30100-modulen er koblet til 1,8v, noe som ikke er et problem i teorien. Imidlertid er kommunikasjonslogikknivået til Arduino IIC -pinnen 5V, så den kan ikke kommunisere med Arduino uten å endre maskinvaren til MAX30100 -modulen. Direkte kommunikasjon er mulig hvis MCU er STM32 eller en annen 3.3v logisk nivå MCU. Derfor er følgende endringer må gjøres:
Fjern de tre 4,7k -motstandene som er merket på bildet med et elektrisk loddejern. Sveis deretter to motstander på 4,7k på pinnene på SDA og SCL til VIN, slik at vi kan kommunisere med Arduino. Arduino Åpne Arduino IDE og finn følgende knapper:
Søk etter "MAX30100" for å finne to biblioteker for MAX30100, klikk deretter på last ned og installer.
Etter installasjonen kan du finne demonstrasjonen av MAX30100 i LIB -bibliotekmappen til Arduino:
Dobbeltklikk på filen for å åpne den.
Denne demoen kan testes direkte. Hvis maskinvaretilkoblingen er ok, kan du laste ned kodesamlingen til Arduibo -utviklingskortet og se dataene til MAX30100 i det serielle feilsøkingsverktøyet.
Trinn 7: Effekten kan sees på følgende bilde:
For å lære mer om prosjektet klikk her.
Ta kontakt med oss hvis du trenger en fullstendig kode:
Jeg svarer deg innen 12 timer.
Anbefalt:
DIY Fitness Tracker Smart Watch med oksymeter og puls - Modulære elektroniske moduler fra TinyCircuits - Minste arkade: 6 trinn
DIY Fitness Tracker Smart Watch med oksymeter og puls | Modulære elektroniske moduler fra TinyCircuits | Minste arkade: Hei, hva skjer, gutter! Akarsh her fra CETech. I dag har vi med oss noen av sensormodulene som er veldig nyttige i vårt daglige liv, men i en liten versjon av seg selv. Sensorene vi har i dag er veldig små i størrelse sammenlignet med tra
Hvordan vise puls på STONE LCD -skjermen med Ar: 31 trinn
Hvordan vise puls på STONE LCD Med Ar: kort introduksjon For en tid siden fant jeg en pulsmåler modul MAX30100 i shopping på nettet. Denne modulen kan samle inn oksygen- og pulsdata fra brukere, som også er enkel og praktisk å bruke. I følge dataene fant jeg ut at det
Puls (volumaktiverte lysdioder): 7 trinn (med bilder)
Puls (volumaktiverte lysdioder): Har du noen gang ønsket å bygge noe med lysdioder, men var ikke sikker på hvor du skulle begynne? Denne guiden gir deg noen enkle trinn for å designe din egen volumvisualiserende kode for adresserbare LED-lys. Dette er en morsom stasjonær støymåler, rave de
EKG og puls virtuelt brukergrensesnitt: 9 trinn
EKG og hjertefrekvens virtuelt brukergrensesnitt: For denne instruksen vil vi vise deg hvordan du bygger en krets for å motta hjerteslag og viser den på et virtuelt brukergrensesnitt (VUI) med en grafisk utgang av pulsen din og pulsen din. Dette krever en relativt enkel kombinasjon
EKG og puls digital monitor: 7 trinn (med bilder)
EKG og puls digital monitor: Et elektrokardiogram, eller EKG, er en veldig gammel metode for måling og analyse av hjertes helse. Signalet som leses fra et EKG kan indikere et sunt hjerte eller en rekke problemer. En pålitelig og nøyaktig design er viktig fordi hvis EKG -signalet