Skocz do zawartości

Kurs Raspberry Pi - #15 - czujnik temperatury DS18B20


Pomocna odpowiedź

  • 1 miesiąc później...
Cytat

linię danych należy koniecznie połączyć przez rezystor 4,7kΩ z zasilanie (3,3V).

Powyższa zasada dotyczy ogólnie szyny 1wire?

Czy potrzebuję rezystor przy każdym czujniku? Bo jeżeli tak to, dodanie kolejnego urządzenia będzie skutkowało zmniejszaniem się rezystancji (połączenie równoległe) między szyną danych a zasilaniem.

Poza tym w powyższym zadaniu jest literówka w wyrazie "zasilaniem".

@BartBuilder zasada tyczy się całej szyny 1-wire, nie należy dodawać kolejnych rezystorów podczas podłączania nowych czujników - wystarczy jeden.

Dziękuję za zgłoszenie literówki - już poprawione.

  • 1 miesiąc później...

Witam! Bardzo fajny kurs. Wszystko wyjaśnione "łopatologicznie", ale dla pewności brakuje mi schematów elektrycznych połączeń. Na zdjeciu nie widać tych połączeń jak one przebiegają i czasami mam wątpliwości. Czy możecie zamieścić takie schematy lub zdjęcia płytki z drugiej strony, żeby było widać połączenia?

  • Lubię! 1

@gkras, witam na forum 😉 Widzę, że to Twoje pierwsze kroki na Forbocie, oto najważniejsze informacje na start:

  • Chcesz przywitać się z innymi członkami naszej społeczności? Skorzystaj z tematu powitania użytkowników.
  • Opis najciekawszych funkcji, które ułatwiają korzystanie z forum znajdziesz w temacie instrukcja korzystania z forum - co warto wiedzieć?
  • Poszczególne posty możesz oceniać (pozytywnie i negatywnie) za pomocą reakcji - ikona serca w prawym dolnym rogu każdej wiadomości.

4 minuty temu, gkras napisał:

Witam! Bardzo fajny kurs. Wszystko wyjaśnione "łopatologicznie", ale dla pewności brakuje mi schematów elektrycznych połączeń. Na zdjeciu nie widać tych połączeń jak one przebiegają i czasami mam wątpliwości.

Cieszę się, że kursy są pomocne - miło słyszeć! W tym kursie zdecydowaliśmy się na takie opisy słowne i schematy montażowe, bo w przypadku Raspberry Pi większość projektów spotykanych w internecie jest opisywanych w taki sposób. Nie zawsze pojawiają się schematy ideowe połączeń. Dzięki temu projekty są łatwiejsze w zrozumieniu dla osób, które nie są związane typowo z elektroniką. Aktualnie nie planujemy dodawania takich schematów do tej serii, ale nie wykluczone, że w przyszłości się pojawią. Jeśli masz jakieś problemy to pytaj na forum, zawsze ktoś sprawdzi Twój układ i wskaże ewentualny błąd 😉

  • Lubię! 1
2 godziny temu, Treker napisał:

Cieszę się, że kursy są pomocne - miło słyszeć...

Dzięki. Dopatrzylem się na zdjęciach płytek kolorowych linii oznaczajacych połączenia, także wszystko w porządku.

  • 5 miesiące później...

@michalk121 witamy na forum! Poruszyłeś fajny temat, właśnie dużą zaletą tych czujników jest możliwość łatwego łączenia.

for sensor in    W1ThermSensor.get_available_sensors():

Fragment ten przechodzi po liście widocznych czujników, możesz równie dobrze w momencie inicjalizacji pobrać tę listę i zapisać w zmiennej.

Nie zagłębiłem się za mocno w metody klasy czujnika ale na pewno jest tam pole .id które pewnie oznacza adres, możesz zatem zrobić słownik? (Pythonową strukturę podobna do hashmapy gdzie przyporządkujesz adres id do obiektu czujnika). Następnie w dowolnym momęcie będziesz mógł sprawdzić wartość czujnika odwołując się do klucza w słowniku i odczytując pole z klasy czujnika.

(edytowany)

Witam,

w nocy doszedłem do błędu jaki popełniałem. Tutaj wklejam kod z dwoma termometrami prosto z Pythona:

import time
import RPi.GPIO as GPIO
from w1thermsensor import W1ThermSensor #import w1thermsensor

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)

GPIO.setup(21, GPIO.OUT)
GPIO.output(21, GPIO.LOW)


czujnik = W1ThermSensor(W1ThermSensor.THERM_SENSOR_DS18B20,"041721503bff")
temp= czujnik.get_temperature ()
print(temp)


czujnik2 = W1ThermSensor(W1ThermSensor.THERM_SENSOR_DS18B20,"0417214febff")
temp2= czujnik2.get_temperature ()
print(temp2)

zmienna temp i temp2 bezpośrednio zawierają temperaturę. 

Edytowano przez Gieneq
Zachęcam do używania bloku kodu
  • Lubię! 1
  • 5 miesiące później...

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...