Skocz do zawartości

Arduino - podłączenie czujnika ciśnienia MPX2053GS


luki866

Pomocna odpowiedź

2 godziny temu, luki866 napisał:

czy pomiary będą się jakkolwiek różnić między sobą

Nie wiemy, bo nie wiemy jak zrobione jest przetwarzanie w samym czujniku. Nie wiadomo nawet ile to bitów i jaki typ ADC tam jest - gdy coś znajdziesz daj znać bo bez tego porównywanie jest przecież niemożliwe. Na pewno przetwornik wbudowany w chip jest dopasowany dokładnie do wymagań aplikacji i może więcej (w sensie lepszej precyzji, mniejszych szumów itp). Po drodze z czujnika do Twojego ADC może się wiele złego wydarzyć, choć w tym urządzeniu nie spodziewałbym się jakichś poważnych problemów. Środowisko jest raczej domowe więc dasz zwykły kabelek ekranowany stereo: w jednej żyle puścisz zasilanie, drugą dostaniesz sygnał analogowy a ekran będzie masą. Przetwornik w Arduino jest trochę zabawkowy i nie powinieneś liczyć na więcej niż 8-9 bitów znaczących. Przelicz to sobie na kwant ciśnienia jaki będziesz mógł odróżniać i zastanów się czy to wystarczy. To Ty projektujesz ten system i nie nam oceniać "czy któryś będzie lepszy/gorszy". Nie napisałeś na czym polega pomiar i jak chcesz wyniki z czujnika przetwarzać cyfrowo, za to dostajemy wciąż nowe pytania. Masz ochotę rozpisać się bardziej merytorycznie czy po prostu tego nie wiesz? Na pewno wielu by chętnie usłyszało jak mierzy się ludziom ciśnienie za pomocą sprzętu który projektujesz. Forum nie jest diodą przepuszczającą informacje tylko w jedną stronę, to działa też w drugą - więc jak?

Link do komentarza
Share on other sites

Przeanalizowałem datasheety i jeśli dobrze rozumiem, to w I2C zakres liczbowy jest 2^14. Zakres jest ucięty o 10% na dole i górze przedziału, a rozdzielczość wyjściowa to 12 bitów. 2^14*0,8/12=1092 kroki w zakresie ciśnienia pracy czujnika. Nic więcej o ADC w czujniku nie znalazłem.

Dla sygnału analogowego mamy zakres wyjściowy równy napięciu zasilania czyli dla nas 5V, tutaj również ucięty o 10% z góry i dołu. ADC w Arduino jest 10-bitowy, co daje 1024 kroki w pełnym zakresie, lub 0,049V na jeden krok. Dostajemy 5V*0,8/0,0049=816 kroków w zakresie ciśnienia pracy czujnika.

Z tych obliczeń wynika, że czujnik z I2C powinien być dokładniejszy.

Jeśli chodzi o pytania, na które nie odpowiadam to jeśli nie jestem pewien odpowiedzi wolałem nie mówić. Z tego co wiem (lub bardziej mi się wydaje) z czujnika odczytam ciśnienie w kPa, które wykorzystując odpowiedni mnożnik mogę bezpośrednio przeliczyć na milimetr wysokości słupa rtęci, czyli standardową jednostkę podawania ciśnienia krwi z ciśnieniomierzy (mmHg). Żadna dodatkowa przeróbka cyfrowa nie powinna być potrzebna. Bardziej potrzebne będzie wyłapywanie odpowiednich poziomów ciśnienia.

 

 

Link do komentarza
Share on other sites

16 godzin temu, luki866 napisał:

Z tych obliczeń wynika, że czujnik z I2C powinien być dokładniejszy

Z obliczeń wynika, że przetwornik w czujniku ma większą rozdzielczość. Nie ma to nic wspólnego z dokładnością.

A co do sposobu pomiaru ciśnienia krwi a właściwie dwóch ciśnień to koniecznie musisz poczytać o metodzie Korotkowa. W skrócie: to nigdy nie polegało i nie polega na statycznym odczycie jakiegoś ciśnienia. Musisz mieć pompowany (ręcznie lub elektrycznie) rękaw, czujnik ciśnienia w rękawie (lub doprowadzających rurkach, np. przy pompie) i zawór pneumatyczny. Sadzasz spokojnego człowieka, pompujesz ciśnienie do jakiegoś stałego, na tyle wysokiego poziomu by rękaw zablokował przepływ krwi w tętnicy promieniowej gościa, potem zawór otwierasz pozwalając na bardzo powolny wypływ powietrza (ta prędkość jest ważna - musisz dobrać przekroje otworów) i ciągle mierząc spadające ciśnienie poszukujesz dwóch punktów: gdy zaczynasz wyczuwać tętno (wahania ciśnienia zgodne z rytmem serca) i gdy przestajesz. Metoda jest słaba, podatna na rozrzuty spowodowane np. miejscem założenia rękawa (nawet jego wysokością w stosunku do serca), ułożeniem ciała pacjenta, jego stanem emocjonalnym, najedzeniem, używkami itp, ale chyba lepszej nie wynaleziono.

Hm, trochę dziwne podejście: robię urządzenie pomiarowe, wybieram już elementy, rysuję nawet schemat  a wciąż nie mam pojęcia co będę mierzył i jak 😟

Powinieneś mieć sterowanie silnikiem pompy i elektrozaworem. Policz jak waga LSB w konkretnym ADC przekłada się na ciśnienie podawane w mm Hg. Przy zakresie np. 5 psi (przelicz ile to jest "na nasze") będziesz korzystał tylko z niewielkiej części pełnej skali czujnika  a więc i liczby bitów ADC.

 

  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.