Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Kilka czujników DS1820 na jednej lini

29 Paź 2004 00:20 4917 25
  • Poziom 13  
    Nie rozumiem jak komunikować sie z kilkoma czujnikami na jednej lini.
    Karzdy układ wiem ze ma swoj adres. Ale jak w programie ustalic ich adresy i jak sie zabierac do nich po koleji gdy jest ich kilka na lini? :?
  • VIP Zasłużony dla elektroda
    Na forum sporo bylo juz o obsludze tych ukladow. Idea jest prosta: po wpisaniu do pamieci numerow kazdego z czujnikow, mozesz np. kolejno je odpytywac... dokladne procedury sa na forum... poszukaj
  • Poziom 13  
    Niom naprawde swietna pomoc!

    Krąrzyłem niezarejstrowany wokól tego tematu. naprawde bylo, a raczej jest tego sporo. o tym czujniku. Ale nie moge wydobyć informacji tej ktora mnie najbardziej nurtuje.

    Dokumentacja producenta - cuż nie jestem biegły z angielskiego czesc zrozumialem. Natomiast nurtuje mnie temat komunikacji z kilkoma czujnikami. Probuje to wyłuskać z tego PDFa. Wiec jesli potrafisz mi w tym pomóc to bede bardzo wdzieczny.

    Jesli chodzi o konkrety to chce wykonac dwa urzadzenia.

    1. Regulator temperatury do pieca spalającego troty. (PID)
    tu potrzebyje jednego czujnika i wszystko mi sie wydaje jasne.

    2. Projekt z fizyki. "pomiar rozkładu temperatur przez sciane budowlaną".
    W tym projekcie chce urzyc 6 czujnikow. Wiec pomysl jest nastepujacy:
    - jeden przewod (2 lub 3 zylowy) do podlaczenia wszystkich czujnikow.
    - maly mikroprocek 2051
    - RS-232
    - komputer PC

    moje zlozenie Faza1
    rozpoznawanie ilosci rzytych czujnikow
    Faza2
    pomiar temperatur co 1s i wysylaniu szeregowo do komputera w ustalonej w fazie 1 kolejności

    nie wiem jak sie rozmawia z tyloma czujnikami na raz. :|
  • Poziom 29  
    Lekko, łatwo i przyjemnie zrobisz to w Bascomie, samem nie trać czasu na rozgryzanie protokołu (zejdzie ci do gwiazdki) choć to zabawa kształcąca. Prawdziwą skarbnicą wiedzy i gotowych rozwiązań są noty aplikacyjne producentów. Sprawdź Maxima, Philipsa, Atmela.
  • Poziom 42  
    szolek napisał:
    Karzdy układ wiem ze ma swoj adres. Ale jak w programie ustalic ich adresy i jak się zabierac do nich po koleji gdy jest ich kilka na lini? :?
    Masz wszystko napisane w specyfikacji, magistrale się przeszukuje i na to jest określony przepis który gwarantuje znalezienie każdego układu. A co do komunikacji, to wysyłasz rozkaz MatchROM, potem adres, a na końcu właściwą instrukcje do wykonania.
  • Poziom 13  
    elektryk napisał:
    Masz wszystko napisane w specyfikacji, magistrale się przeszukuje i na to jest określony przepis który gwarantuje znalezienie każdego układu.

    to jeszcze nie rozwiazuje mojego problemu ale wielkie dzieki. Mam nadzieje i punkt zaczepienia w moich poszukiwaniach.

    Preferuje jezyk c lub asemblera. Duzo z tego wiem. natomias bascoma nigdy nie uzywalem i musial bym sie nieco dokształcić. :wink:
  • Poziom 18  
    Witam!!!
    Nie chce mieszac :) ale mam pytanie.
    Niby z DS18B20 mozna wyciagnac dokladnosc do 0.0652 stopnia, jesdak producent okreslil blad pomiarowy i wynosi on +-0.5 (w zakresie temp jak dobrze pamietam od -10 do +85 stopni). Czy jezeli bedziemy mieli na 1 lini np 6 takich ds-ow..to jak bardzo beda sie roznily odczyty z poszczegolnych sensorow... bo jezeli wskazania beda mogly byc rozne o az 0.5 stopnia to klapa z precyzyjnymi pomiarami porownawczymi...moze ktos z Was to testowal?? ....ale to tak na marginesie

    Pozdr
  • Poziom 22  
    W takim wypadku zrób sobie tablicę zawierającą "ofsset" każdego z czujników (+/-) potem podczas pomiaru dodaj go do wartości odczytanej. Oczywiście najpierw musisz przeprowadzić procedurę kalibracji każdego z czujników.
  • Poziom 17  
    Po pierwsze 0,0625C jak podaje Dallas to jest rozdzielczość a nie dokładność. Rozdzielczość i dokładność to 2 różne rzeczy. Czujnik DS1820 (polecam DS18B20 bo DS1820 ma pewną wadę) jest w stanie wykryć różnice temperatury 0,0625C. Skoro podaje się dokłałność równą 0,5 stopnia to znaczy, że jeśli mamy temperaturę 20C to czujnik ma prawo pokazać wynik w zakresie od 19,5 do 20,5 stopnia z rozdzielczością 0,0625C. Aby poprawić dokładność można czujnik wykalibrować. Najprostrza metoda możliwa do zrealizowania w warunkach amatorskich polega na umieszczeniu czujnika w topniejącym lodzie (wzorcowa temperatura 0C) a następnie we wrzącej wodzie (wzorcowa temperatura 100C). Po umieszczeniu czujnika (lub wielu czujnków) w każdej z temperatur należy odczytać wskaywane przez nie temperatury. Mając te temperatury można wyliczyć współczynniki a i b, które potem wstawiamy do zwykłego równania liniowego y = ax + b. Dzięki temu równaniu potem przy normalnej pracyczujników otrzymamy dokładne (w miarę ) temperatury.
  • Spec od samochodów
    Kalibruj tylko lodem , wrząca woda nie ma 100 stopni, przy naszej wysokości nad poziomem morza.
  • Poziom 18  
    dzieki kekon. wlasnie o to mi chodzilo!!! :)

    pozdrawiam
    dosinsky

    ps. wiem co to blad pomiarowy i jaka jest roznica miedzy dokladnoscia a rozdzielczoscia.....przejezyczenie :D
  • Poziom 14  
    Witam
    na początek musisz znać adresy wszystkich czujników i zapamiętać je w jakieś zmiennej, a następnie komunikować się z konkretnym termometrem poprzez podanie jego adresu przechowywanego w zmiennej.
    Owocnego wysiłku
    Pozdrawiam
  • Poziom 23  
    szolek napisał:
    Niom naprawde swietna pomoc!
    2. Projekt z fizyki. "pomiar rozkładu temperatur przez sciane budowlaną".
    W tym projekcie chce użyć 6 czujnikow. Wiec pomysl jest nastepujacy:
    - jeden przewod (2 lub 3 zylowy) do podlaczenia wszystkich czujnikow.
    - maly mikroprocek 2051
    - RS-232
    - komputer PC

    Do tego projektu nie potrzebujesz mikrokontrolera, mozna czujniki podlaczyc na 2 zylowym przewodzie bezposrednio do pc przez rs'a.
    W google programik digitemp (linux, windows, dos).
  • Moderator
    Cześć !


    lopr_pol napisał:

    Do tego projektu nie potrzebujesz mikrokontrolera, mozna czujniki podlaczyc na 2 zylowym przewodzie bezposrednio do pc przez rs'a.
    W google programik digitemp (linux, windows, dos).


    Wydaje mi się , że trochę przeginasz . " mozna czujniki podlaczyc na 2 zylowym przewodzie bezposrednio do pc przez rs'a "

    Do LPT można , ale do RS-a ? Długo nie popracuje przy 12 V . Ale pewnie masz jakiś patent na przyłączenie bezpośrednio do RS-a , skoro piszesz że można .
    Będę wdzięczny za podanie pinów na RS-ie do których się przyłącza DS-a , bo już nie mam zdrowia do robienia interfejsów do RS-a :)
  • VIP Zasłużony dla elektroda
    No coz... jak dla mnie spelnia postawione przez ciebie warunki ;) a to ze moglem podac link czy wstawic grafike... moj blad ... ;) Pozdrawiam
  • Poziom 23  
    c2h5oh napisał:
    Cześć !
    Wydaje mi się , że trochę przeginasz . " mozna czujniki podlaczyc na 2 zylowym przewodzie bezposrednio do pc przez rs'a "


    Przeciez dobrze napisalem "bezposrednio do pc" a nie bezposrednio do rs'a :) to co naginasz rzeczywistosc i czepiasz sie slowek tak ja tez potrafie :)
  • Poziom 13  
    Pasuje dokonczyć ten temat :)
    Projekt już wykonałem. Powstały dwa urządzenia oparte na uP AT89S8252. Obydwa przyjete zostały z dość duzym uznaniem.

    W trakcie pierwszych rozmów na temat projeku pojawił sie wątek pracy autonomicznej. To urządzenie posiada na dzień dzisiejszy posiada kilka funkicji które można zrealizować bez konieczności podłaczenia do komputera. Samą akwizycję danych na dzień dzisiejszy nie można przeprowadzić bez podłaczenia do komputera ale projekt jest możliwy do rozszeżenia o pamięć na zapis wyników pomiarów. Dało by to możliwosć pracy jako rejestratora z którego wyniki można pózniej przesłąć do komputera i opracować. To jednak coś więcej niż czujniki połaczone z portem komputera.
    Pozostaje jednak tutaj wybór pamięci.
  • Poziom 12  
    witam
    DS18B20 mierzy temperature z dokładnością do +/-0,5°C
    a jaki z dokładnością do +/-0,1°C albo nawet +/-0,05???
    pozdrawiam
  • Poziom 13  
    Jak widzę szukasz czujnika PT100 lub jakiejś termopary. Zaletą czujników dallasa jest to że o przetwornik ty już sie nie martwisz. PT100 wymaga jednak tego przetwornika, który również bedzie miał swój wpływ na wynik pomiaru. A jeszcze jedno termopara z dokładnością 0.001% kosztuje mniej wiecej 12 tys. Wiec z tą dokładnością to jest pewien kompromis. Jeżeli ten termometr na stać tylko za oknem to bez przesady.

    Pozdrawiam.
  • Poziom 12  
    chodzi mi o jakiś cyfrowy
    żeby nie trzeba było robić żadnego przetwornika
  • Poziom 32  
    0,5 st C w DS18b20 to bład pomiarowy dopuszczalny przez producenta a rozdzielczosc pomiaru to 0,1 stC
    a dokładnie 0.0625 st C czyli 1/16 stopnia
  • Poziom 14  
    Witam

    Ja uzywam DS1822 - wskazania do 0.1°C i dwa czujniki kolo siebie maja identyczne wskazania wiec i z kalibracja daje sobe spokoj :-)

    Pozdrawiam
  • Poziom 13  
    W moim projekcie na 8 dallasach najwieksza różnica 2/16.