logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[PicoLog][I2C][Sht11] - Pomiar wilgotności - Zbieranie pomiarów

Resires 09 Lip 2013 14:12 3123 12
REKLAMA
  • #1 12502955
    Resires
    Poziom 9  
    Używam loggera typu PicoLog 1000. Chcę, aby współpracował on z czujnikami wilgotności typu SHT11. Wykorzystany by był do tego protokół I2C.


    W programie 'PicoScope6' używam narzędzia 'Dekodowanie szeregowe', jednak nie potrafi się on skomunikować z moim czujnikiem. Otrzymuję taki komunikat: 'Brak wystarczających danych dla dekodowania szeregowego'


    Nie mam dużego doświadczenia z I2C. Co może być przyczyną?
  • REKLAMA
  • #2 12503032
    Sparrowhawk
    Poziom 22  
    Nie potrafi się skomunikować z twoim czujnikiem, bo PicoLog nie jest do tego przeznaczony. On jest jedynie w stanie podsłuchiwać magistralę I2C, a nie ją symulować. Nie otrzymujesz żadnych wyników, bo na twojej magistrali nic się nie dzieje.
  • REKLAMA
  • #3 12503078
    Resires
    Poziom 9  
    Czyli nie da się połączyć PicoLoga z czujnikami SHT?

    Wobec tego potrzebny będzie jakiś przetwornik C/A ?
    Nie znam się na nich - czy są jakieś gotowe rozwiązania, czy trzeba zaprogramować mikrokontroler?

    Będę używać około 30 czujników.
  • REKLAMA
  • #5 12508500
    Resires
    Poziom 9  
    Czyli rozumiem, że jedyny sposób to zaprogramowanie mikroprocesora, który będzie cały czas odpytywał czujnik, przeliczał to liniowo i przekazywał do PicoLoga wartość anologową?

    Nie ma do tego gotowego rozwiązania?
  • #6 12509366
    charwer
    Poziom 15  
    Cześć.
    SHT11 jest niestety nieliniowy. O ile linearyzację temperatury da się zrobić na liczbach całkowitych, to wilgotność wymaga juz użycia liczb zmienno przecinkowych. Jeżeli chcesz odpytywać czujnik i przeliczać wartości w uC to wybierz odpowiedni procesor. Wygodniej byłoby odpytać czujniki, a wartości przesłać do PC do przeliczenia i prezentacji danych.

    Poprawcie mnie jezeli źle mówię, ale chyba nie odpalisz 30 czujników SHT11 na jednej magistrali ponieważ czujniki mają stały zafiksowany adres "000" na bitach A0, A1 i A2 bez możliwości fizycznej jego zmiany. Sensora nie zaadresujesz przy pomocy I2C (odsyłam do noty ptk. 2.1 i 3.1).

    Znalazłem kiedyś gotowe biblioteki do SHT11 na AVR. Wymagają niewielkiej przeróbki w zakresie zmiany funkcji odczytującej dane, która zawiera "delay_ms" na funkcję nieblokującą.

    Pozdro.
  • #7 12510134
    Resires
    Poziom 9  
    Zdaję sobie sprawę ze stałości adresu tego czujnika. Dlatego planowałem, aby każdy czujnik miał swój mikroprocesor, który by go odpytywał i na wyjściu dawałby wartość analogową. Te wartości z kolei byłyby zbierane przez PicoLog.

    Czy takie rozwiązanie ma sens? Sądzę, że lepsze byłoby jakieś gotowe rozwiązanie (odczyt czujnika dający na wyjściu wartość analogową), jednak nie mogę nic takiego znaleźc.
  • REKLAMA
  • #8 12512620
    charwer
    Poziom 15  
    IMO nie ma to sensu. Tworzysz znaczny narzut sprzętu i zwiększasz stopień skomplikowania przy takim rozwiązaniu podnosząc tym samym koszty. Koniecznie upierasz sie przy tym SHT11? On ewidentnie nie pasuje do tego rozwiązania. Tobie przydałby się czujnik wilgotności z wyjściem napięciowym, które możesz podłączyć do karty. Rozwin może co chcesz mierzyć, opisz dokładnie co chcesz zrobić.

    Nie widzę również sensu przekształcania wartości cyfrowej, zmierzonej przez czujnik, ponownie na wartość analogową. Dalej znowu kowersja A/C, nie jest to dobra praktyka. Utracisz część informacji. Skoro czujnik udostępnia Ci wartość cyfrową to operowałbym tą wartością.
  • #9 12524193
    Resires
    Poziom 9  
    Niestety jestem ograniczony co do sprzętu, ponieważ pracuje na tym co jest już w firmie. Jakiś czas temu zamówiono tego PicoLoga oraz kilkadziesiąt czujników SHT11. Wynika to faktu, że sprzedawca policił mojemu poprzednikowi właśnie taki sprzęt jako współpracujący.


    Dotarłem do informacji, że tego typu czujniki działają również na Sigma Delta Modulacji. Jeżeli to prawda to wystarczyłby chyba filtr dolno przepustowy?
  • #10 12524911
    charwer
    Poziom 15  
    SHT 11 ma tylko cyfrowe wyjście. Może chodzi Ci o SHT 21? On będzie działać w takiej konfiguracji.
  • #11 12800640
    Resires
    Poziom 9  
    Mam następujący proglem z loggerem Picolog 1000.

    Potrzebuję generować nim na wyjściu sygnał prostokątny o częstotliwości około 2s.

    Chciałbym do tego wykorzystać jedno z jego digital outputs.
    Jedyne co mogę znaleźć to ustawienie na stałe 1 lub 0 (2,5 V lub 0 V) lub PWM o częstotliwości 1,8 ms. To zdecydowanie za mało. Jak można zwiększyć tę częstotliwość?
  • #12 12803552
    Sparrowhawk
    Poziom 22  
    Jednostką częstotliwości jest Hz, a nie s.

    I raczej chcesz zmniejszyć częstotliwość. Jeśli PicoLog nie umożliwia zmiany częstotliwości PWM, to pozostaje zastosować oddzielny dzielnik częstotliwości.
  • #13 12803650
    Resires
    Poziom 9  
    Faktycznie, miałem na myśli okres, a nie częstotliwość.

    Jak można zrobić taki dzielnik częstotliwości? W oparciu o ukła 555?
REKLAMA