LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Blood pressure using Arduino

Solved!
Go to solution

IMG-20230514-WA0061.jpg

 Hi everyone, I need help, I'm working on a blood pressure project with arduino and labview (linx) but it's not working and I don't know the reason because it's my first experience with labview, so the pump is controlled by pin 2, the valve with pin 3 and the signal is read by analogread A0.

0 Kudos
Message 1 of 24
(2,171 Views)
Solution

It is typically a bad ideas to have loops within loops. Have a look into a state machine instead.

 

As a first step, leave out all the hardware and replace it with a simulation so everybody can run it easily. Once the logic is worked out, it will be trivial to add the hardware IO.

 

Explain exactly each step of the program. 

 

You also need to familiarize yourself with the details of dataflow. For example, your valve never turns off! The inner loop can only stop once the boolean is TRUE and that output can never be false! Right!

 

We also prefer to see the VI instead of a picture. can you attach it?

Message 2 of 24
(2,158 Views)
Solution

See if this can give you some ideas....

 

 

Message 3 of 24
(2,135 Views)

Fil BP.vi

 


@altenbach  a écrit :

C'est généralement une mauvaise idée d'avoir des boucles dans des boucles. Jetez plutôt un coup d'œil à une machine d'état .

 

Dans un premier temps, laissez de côté tout le matériel et remplacez-le par une simulation afin que tout le monde puisse l'exécuter facilement. Une fois la logique élaborée, il sera trivial d'ajouter le matériel IO.

 

Expliquez précisément chaque étape du programme. 

 

Vous devez également vous familiariser avec les détails du flux de données. Par exemple, votre vanne ne s'éteint jamais ! La boucle interne ne peut s'arrêter qu'une fois que le booléen est VRAI et que la sortie ne peut jamais être fausse ! Droite!

 

Nous préférons également voir le VI au lieu d'une image. pouvez-vous le joindre?



 


Les astuces de la réalisation de mon projet sont :

 

1) commander la pompe pour gonfler le brassard à une pression de 170mmhg

 

2) ordonner à la valve de dégonfler le brassard et prendre la mesure de pression à l'aide du capteur de pression pour chaque -5mmhg, et comparer la valeur actuelle à la valeur précédente pour avoir la pression systolique (c'est la première petite valeur de pression détectée) et aussi la pression diastolique (il s'agit de la dernière petite valeur de pression détectée)

 

 

 

j'en suis à la première étape j'ai réussi à afficher mon signal ms je n'ai pas pu continuer les autres étapes, j'ai essayé plusieurs programmes mais aucun résultat

 

 

 

Merci beaucoup pour votre réponse.

 

0 Kudos
Message 4 of 24
(2,133 Views)

Thank you for your reply, can you send me a screenshot because the version is later than the version of labview which I use.

0 Kudos
Message 5 of 24
(2,122 Views)
Solution

@User002 wrote:

Fil BP.vi 


You can attach your VI right here. No need for external hosting services. (most users don't click on external links, even though Google drive is quite safe). The problem is that you can change the code even after we downloaded it, so our answer might no longer be relevant to the code others are seeing later. we need predictability!

 

I also recommend to keep everything in one language.

Message 6 of 24
(2,120 Views)
0 Kudos
Message 7 of 24
(2,096 Views)
Message 8 of 24
(2,074 Views)

I don't know how to combine the elements of Linx with this program

0 Kudos
Message 9 of 24
(2,059 Views)
Solution

The orange shift register and random generator can be deleted, because you now measure the pressure. Just read the pressure and do the comparisons!

Serial communications are necessarily sequential, no need to do both digital IOs in separate trains and close twice.

 

(... and please, do not maximize the diagram and front panel to the screen. It is very annoying to stare at mostly whitespace, preventing us from looking at other windows, such as the help or this website!)

 

Message 10 of 24
(2,046 Views)