05-14-2023 12:50 PM
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.
Solved! Go to Solution.
05-14-2023 01:20 PM - edited 05-14-2023 01:54 PM
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?
05-14-2023 01:58 PM
05-14-2023 01:59 PM - edited 05-14-2023 02:28 PM
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.
05-14-2023 02:03 PM
Thank you for your reply, can you send me a screenshot because the version is later than the version of labview which I use.
05-14-2023 02:06 PM
@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.
05-14-2023 02:20 PM
05-14-2023 02:29 PM
Here's a 2019 version.
05-14-2023 02:53 PM
I don't know how to combine the elements of Linx with this program
05-14-2023 03:27 PM - edited 05-14-2023 03:37 PM
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!)