'Inteligenty' dom ze sterownikiem PLC

 Language:
Szukanie zaawansowane  

Aktualności:

Powrót do strony głównej: www.edom-plc.pl

Autor Wątek: Temperatura - DS18B20  (Przeczytany 17729 razy)

Wojtek_GR

  • Newbie
  • *
  • Wiadomości: 9
    • Zobacz profil
    • Fotki
Temperatura - DS18B20
« dnia: Marca 07, 2013, 02:36:18 pm »

Witam
Ostatnio zaciekawił mnie nowy temat na edom-plc.pl - pomiar
temperatury na DS18B20.
Myślałem o wykorzystaniu tych czujników w fazie wybierania
sterownika, ale niestety, żaden producent nie ma w ofercie kart
obsługujących powyższe. Wybrałem nie tanie rozwiązanie - karta AI16 +
PT1000. Podczas testów w obecnym mieszkaniu okazało się, że PT1000 jest
mało odporne na zakłócenia linii pomiarowej biegnącej wzdłuż innych
przewodów i z karty AI16 zrobiła mi się karta AI8, bo żeby ograniczyć
nieprawidłowe odczyty trzeba było podłączyć czujniki w 3-wire.
DS18B20 praktycznie wyklucza błąd pomiaru w zamian za interwał
czsu, co w aplikacjach domowych nie ma większego znaczenia.
Z powyższym czujnikiem spotkałem się jakieś 6-lat temu, gdzie od
początku bardzo mnie zaciekawił - nieskomplikowane aplikacje na Atmega.
Teraz, dzięki rozwiązaniu Wire-Chip od http://www.solidchip.eu
sytuacja mocno się zmienia: mogę mieć 64 punkty pomiaru temperatury za
600 zł, niż 16/8 (z błędami) za 2200 zł.
Rozwiązanie Admina na bazie Raspberry, jest dla mnie równie
inspirujące, ale niestety, komunikacja po ETH nie jest moją
najmocniejszą stroną.
Poruszyłem dzisiaj temat połączenia AC500-slave, Weintek-master i
WireChip-slave na magistrali MODBUS RTU z serwisantami ABB, Multiprojekt
oraz SolidChip i okazało się to zupełnie proste. Panel czyta pomiary z WireChip
 i zapisuje je w AC500.
Mam możliwość wymiany karty ABB AI16 na inną równoważną w cenie :-),
oraz kupienia WireChip z możliwością zwrotu.
Testy w przyszłym tygodniu. :-)

Wojtek

http://www.edom-plc.pl/forum/index.php?topic=86.0
http://www.edom-plc.pl/index.php?option=com_content&view=article&id=92%3Awojtekgr&catid=39%3Ainneprojekty&Itemid=76&lang=pl
Zapisane

marecki_0luk1

  • Newbie
  • *
  • Wiadomości: 41
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #1 dnia: Marca 07, 2013, 05:45:44 pm »

WireChip będziesz łączył po RS232 czy RS485 ?
Zapisane

Wojtek_GR

  • Newbie
  • *
  • Wiadomości: 9
    • Zobacz profil
    • Fotki
Odp: Temperatura - DS18B20
« Odpowiedź #2 dnia: Marca 07, 2013, 09:34:48 pm »

MODBUS RTU, czyli RS485 na tej samej linii z panelem Weintek.
Gdybym nie wymyślił sobie "wyspy" na ABB DC551-CS31, miałbym wolnego COM'a MODBUS z możliwością podpięcia drugiego MASTER'a, ale niestety "pies zjadł mydło". :-(
Z PC - RS232

Wojtek
« Ostatnia zmiana: Marca 07, 2013, 09:43:54 pm wysłana przez Wojtek_GR »
Zapisane

ciko

  • Newbie
  • *
  • Wiadomości: 5
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #3 dnia: Kwietnia 04, 2013, 03:22:35 pm »

Witam.

Mam problem bo chce zrobić na razie tylko internetowy termometr na Raspberry Pi i zrobiłem wszystko dokładnie tak jak w artykule
http://www.edom-plc.pl/index.php?option=com_content&view=article&id=97%3Apierwszekrokiisukcesy&catid=40%3A1wireandrpi&Itemid=77&lang=pl .
Wszystko działa ale gdy temperatura spada poniżej 0 wyskakuje mi błąd "Niepoprawny odczyt temperatury".
Co muszę poprawić aby mierzyć temperaturę ujemną?

Pozdrawiam i dziękuje za pomoc.
CIKO
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #4 dnia: Kwietnia 04, 2013, 03:38:48 pm »

Witam,

Potrzebuję trochę wiecej danych...  Gdzie pojawia się błąd "Niepoprawny odczyt temperatury"?  W przeglądarce?  W PLC? Kod w PLC jest mocno niedoskonały i pisany 'na szybko', ale zanim zacznę coś wymyślać, dobrze byłoby wiedzieć, że o to Ci właśnie chodzi.

Pozdrawiam,
« Ostatnia zmiana: Kwietnia 04, 2013, 03:46:15 pm wysłana przez admin »
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #5 dnia: Kwietnia 04, 2013, 03:44:12 pm »

hmmmm.. czy mógłbyś przesłać zawartość pliku

/sys/bus/w1/devices/ID_CZUJNIKA/w1_slave

czujnika, który mierzy negatywną temperaturę?

Problem leżeć będzie pewnie w
if (!preg_match('/t=([0-9]+)$/', $buff, $matches))

Zapisane

ciko

  • Newbie
  • *
  • Wiadomości: 5
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #6 dnia: Kwietnia 04, 2013, 08:56:07 pm »

Tak, błąd pojawia się w przeglądarce.
Podejrzewam że błąd jest gdzieś w tym miejscu co pisałeś.
Postaram się jak najszybciej przesłać wartość pliku.
Pozdrawiam,
CIKO
Zapisane

ciko

  • Newbie
  • *
  • Wiadomości: 5
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #7 dnia: Kwietnia 05, 2013, 07:15:52 am »

Niestety temperatur utrzymuje się koło 0 i to cały czas na plusie.
Dziś po pracy umieszczę czujnik w zamrażarce i prześlę wartość pliku.
Pozdrawiam,
CIKO
Zapisane

ciko

  • Newbie
  • *
  • Wiadomości: 5
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #8 dnia: Kwietnia 05, 2013, 05:09:41 pm »

Oto zawartość pliku:

71 ff 4b 46 7f ff 0f 10 6d : crc=6d YES
71 ff 4b 46 7f ff 0f 10 6d t=-8937

Pozdrawiam,
CIKO
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #9 dnia: Kwietnia 05, 2013, 08:36:53 pm »

Cześć,

myślę, że:

if (!preg_match('/t=(-?[0-9]+)$/', $buff, $matches)) {

w pliku OWireTherm.class.php

Powinno zadziałać.

Pozdrawiam,
Zapisane

ciko

  • Newbie
  • *
  • Wiadomości: 5
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #10 dnia: Kwietnia 06, 2013, 07:30:42 am »

Dziękuję bardzo.

Wszystko działa bez zarzutów.

Pozdrawiam,
CIKO
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #11 dnia: Kwietnia 06, 2013, 10:23:04 am »

Dzięki za zwrócenie uwagi i pomoc.

Pozdrawiam,
Zapisane

grzeniu666

  • Jr. Member
  • **
  • Wiadomości: 68
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #12 dnia: Kwietnia 23, 2013, 08:58:44 pm »

Hej. Na stronie AB electronics UK jest chyba gotowy upgrade 1-wire do Pi:
http://www.abelectronics.co.uk/products/3/Raspberry-Pi/27/1-Wire-Pi
Nie byłoby to dobre?
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #13 dnia: Kwietnia 26, 2013, 08:24:26 am »

Witam,

myślę, że jest super.  To prawie dokładnie to samo, co udało mi się sklecić za wyjątkiem rezystora R5 i kondensatora C7.   

Pozdrawiam,
Zapisane

celafon

  • Newbie
  • *
  • Wiadomości: 2
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #14 dnia: Czerwca 26, 2013, 05:57:24 pm »

Wybaczcie ignorancję, ale ...

Czy i jeżeli tak, to w jaki sposób RPi gada ze sterownikiem PLC. Przeczytałem sobie nową sekcję na stronie nt. RPi i podpinania 1-wire, ale nie widzę jak realizowana jest komunikacja RPi<->Wago.
Zapisane

admin

  • Administrator
  • Sr. Member
  • *****
  • Wiadomości: 313
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #15 dnia: Czerwca 26, 2013, 10:40:40 pm »

Witam,

Skrócony opis wykorzystania biblioteki WagoLibHttp_02.lib do rozmowy z RPi jest w drugiej części http://www.edom-plc.pl/index.php?option=com_content&view=article&id=97.

W międzyczasie sporo dodałem, ale... na opisanie tego potrzeba czasu, a za chwile urlop :)

Pozdrawiam,
Zapisane

ziutol

  • Newbie
  • *
  • Wiadomości: 11
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #16 dnia: Lutego 17, 2016, 10:34:37 pm »

Witam  mam [problem z  biblioteką Wagolibhttp_02    korzystam z przykładu  wado  nr 2  i pojawia mi się  błąd

16#80001002: TCP-ERROR: Could not convert servers IP address into dotted
 format'

adres mam poprawnie wpisany  nie mam pojęcia  co może  być  przyczyną. Może  ktoś z was miał podobny problem . Będę wdzięczny za  każdą wskazówkę.
Zapisane

bboson

  • Newbie
  • *
  • Wiadomości: 1
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #17 dnia: Marca 23, 2016, 11:31:38 pm »

Robiąc internetowy termometr na Raspberry Pi musisz mieć świadomość, że błędy na pewno będą się pojawiać. Ja odkąd zainstalowałem swój termometr na Raspberry Pi za każdym razem mam styczność z jakimś błędem, który towarzyszy przy ujemnej temperaturze. Jeżeli jest na plus, to wszystko jest ok. Chyba jest to normalne, że przy ujemnej temperaturze, komputer nie może jej dokładnie ocenić. Ważne, że z precyzją pokazuje temperaturę dodatnią, tym bardziej rzadko kiedy jest ujemna.

kamiKAC

  • Jr. Member
  • **
  • Wiadomości: 78
    • Zobacz profil
Odp: Temperatura - DS18B20
« Odpowiedź #18 dnia: Kwietnia 27, 2016, 04:13:06 pm »

Przepraszam, że odgrzewam stare kotlety, ale czy przypadkiem problem z odczytem ujemnych temperatur nie wynika z zastosowania typu UINT zamiast INT przy przekazywaniu wartości? Miałem ten sam problem przy odczycie temperatur poprzez MODBUS.

Pozdrawiam
--
kamiKAC
Zapisane