Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Arduino + 5*DS18B20 zgłupiał

mateos2 28 Nov 2014 09:48 1317 10
  • #1
    mateos2
    Level 11  
    Witam,

    od kilku miesiecy dzialał mi poprawnie projekt na Arduino Mega + 5 sztuk ds18b20 (od 2m do 7m kabla) + oryginalna biblioteka OneWire

    Wczoraj zaczeło to świrowac i zwracać czasami dziwne temperatury - skoki od małych do wielkich wartości, na przyklad 1->4 40->180 stopni

    Zmieniałem opornik na inny (z 4,7k na 3,3k, później na 5,6k) ale nie ma różnicy, sprawdziłem stabilność zasilacza i jest ok ...

    Połączenia kabli sprawdziłem i nie znalazłem nic co mogłoby być podejrzane

    będe wdzięczny za szelkie sugestie
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
  • #2
    alsa
    Level 12  
    Zakłócenia na przewodach ? sprawdzasz CRC przy odczycie ?
  • #3
    mateos2
    Level 11  
    alsa wrote:
    Zakłucenia na przewodach ? sprawdzasz CRC przy odczycie ?


    Nic nie bylo zmieniane/dotykane w okolicach sterownika/okablowania ...
    CRC nie sprawdzałem, dołoze to dzisiaj do kodu, jednakże jesli coś chodziło poprawnie przez kilka miesięcy, a nagle przestało, to chciałbym wiedziec co sie mogło podziać

    Na razie z moich analiz i przemysleń wynika ze może byc jakiś problem z zasilaniem DS'ów , po jednym z restartów jeden długo zwracał 85 stopni

    do kodu doloze tez kontole CRC:

    Code: cpp
    Log in, to see the code
  • #5
    mateos2
    Level 11  
    dondu wrote:
    CRC to podstawa, schemat także :)


    topologia to niestety gwiazda - 4 czujniki po około 2 metry - kabel 3x0,5mm2 plus jeden 7m 3x0,5mm2

    zasilanie aktywne 5V, pull-up aktualnie 3,3 kOhm tez do 5V

    nabardziej boli, że to działało kilka miesięcy bez żadnej odchyłki :)
  • #6
    mateos2
    Level 11  
    Niestety - jak się okazało - kontrola CRC to mało - zdarza się, że wpadnie błąd mimo kontroli...

    Będę chyba musiał rozbić czujniki na 2 linie.
  • #7
    tmf
    Moderator of Microcontroller designs
    Lepiej się przyjrzyj tej "bilbiotece". Niestety większość tych gotowców do Arduino ma skandalicznie niski poziom i stąd błędy. Jest nieprawdopodobne, żeby przy tak małej magistrali były kłopoty z komunikacją. Chyba, że uszkodzeniu uległ jeden z Dów. Podobnie z CRC - jakkolwiek CRC nie eliminuje wszystkich błędów, to jednak ich odsetek powinien spaść do poziomu naprawdę trudnozauważalnego. Jeśli jest inaczej, to znaczy, że z całym softem jest coś mocno nie tak.
  • #8
    mateos2
    Level 11  
    soft wyglada OK,

    uszkodzenie DSa jest mozliwe, zaobserwowalem ze gdy wywala sie na CRC to odczyt z czujnika jest FF FF FF FF FF FF FF FF
    bledne odczyty zdarzaja sie z roznych czujnikow, nie z jednego

    co ktora enumeracja czujnikow pomija tez niektore czujniki - adres nie zgadza sie z zadnym ze zdefiniowanych
  • #10
    GSM
    Level 25  
    Błędy w bibliotece, zakłócenia na magistrali lub problemy z zasilaniem.
    Odpytaj wszystkie komendą sprawdzającą rodzaj zasilania, i czy zasilanie ich jest dobrze odfiltrowane.
    Schemat i kod by nie zaszkodziło udostępnić do wglądu.

    Pozdrawiamm
    GSM
  • #11
    emarcus
    Level 38  
    mateos2 wrote:
    soft wyglada OK,

    uszkodzenie DSa jest mozliwe, zaobserwowalem ze gdy wywala sie na CRC to odczyt z czujnika jest FF FF FF FF FF FF FF FF
    bledne odczyty zdarzaja sie z roznych czujnikow, nie z jednego

    co ktora enumeracja czujnikow pomija tez niektore czujniki - adres nie zgadza sie z zadnym ze zdefiniowanych


    Szukałbym przyczyny raczej w samej instalacji.
    Kiepskie lub luźne chwilowo połączenia mogą powodowac wszelkiego rodzaju błędy; począwszy od enumeracji a kończąc na rzekomo błędnym odczycie temperatury.
    Szczególnie jeżeli pokazuje się odczyt 85 st., który jest pierwszym odczytem po resecie zasilania, wskazywałby na tego rodzaju nieprawidłowości.
    Tymbardziej, jeżeli układ pracował poprawnie przez okres kilku miesięcy, to niezabezpieczone przed korozją, wilgocią i wpływami środowiska złącza mogą miec defekty.

    e marcus