Termopara typu "T" na płytce Max31856

witam jak uruchomić płytkę Max31856 tzn mam problem jak podłączyć kabelki “CLK”???

Przechwytywanie

chciałbym uruchomić w ESPHome

MAX31856 Czujnik temperatury termopary — ESPHome

Masz płytkę od Adafruit

czy jakąś inną?

Jaką masz płytkę prototypową ESP?

płytka MAX31856 ← → płytka ESP

  • VIN ← → 5V (jeśli masz jakiś większy zasilacz 5V to wszystkie płytki zasilasz z niego)
  • GND ← → GND
  • SCK ← → CLK (SPI clk_pin)
  • SDO ← → MISO (SPI miso_pin)
  • SDI ← → MOSI (SPI mosi_pin)
  • CS ← → dowolne zdrowe GPIO, które zdefiniujesz jako CS
  • + ← → termopara+
  • - ← → termopara-
    kilka słów komentarza do magistrali SPI - sugeruję użyć pinów domyślnych jednej z dostępnych magistral SPI (zależy jaki masz MCU), czasem ten “zdrowy” pin też jest określony w dokumentacji (w przypadku wielu Slave na tej samej magistrali dla każdego używamy inny pin CS/SS

Nieużywane

  • 3Vo
  • FLT
  • DRDY

Różne zastępcze skróty oznaczeń powszechnie stosowanych w SPI (to są skróty opisów funkcji danego pinu z jęz. amerykańskiego/angielskiego) są w tym poście

mam płytkę od Adatruit ale ja chciałem na ESP8266 Nodemcu V3 to uruchomić i mnie zastanawiają te piny GPIO18 co w pisać tzn. jak to powinno wyglądać ???tzn da radę to uruchomić na płytce ESP8266

# Example configuration entry
spi:
  ****brak na płytce**????** **CLK**
  clk_pin: GPIO18  ?????? #wcięcia w YAML nie mogą być błędne, tu brakowało spacji 
  miso_pin: GPIO19??????
  mosi_pin: GPIO23??????

sensor:
  - platform: max31856
    name: "BBQ Temperature"
    icon: "mdi:hamburger"
    cs_pin: GPIO17


jak widać są 2 magistrale SPI na domyślnych pozycjach, ta po lewej jest zarezerwowana (dla flasha i nie zaleca się jej używać do innych celów, hmm jeśli masz czas na eksperymenty… ale raczej oszczędź sobie czasu), więc użyj tej po prawej stronie obrazka

na tym obrazku pin dla CLK jest opisany SCLK

a płytkę zdefiniuj sobie tak

esp8266:
  board: nodemcuv2

i piny użyj od D5 do D8 opinając tak jak opisałem (aby zadziałały aliasy Dx zamiast GPIOyy musi być prawidłowa definicja płytki)

źródło

PS już w styczniu pisałeś, że masz płytki (nieco inne, ale to nie rzutuje, bo po stronie ESPHome konfiguruje się je przecież tak samo), czemu nie podbiłeś tamtego wątku skoro sobie z tym nie poradziłeś?

Skoro masz tyle płytek max31856 (i termopar), to dołączasz je równolegle do magistrali, tylko dla każdego kolejnego używasz kolejny pin GPIO na następne CS, niestety na tyle układów to braknie “zdrowych” pinów, ale bezpieczne są jeszcze D1 i D2 od biedy D3 (oraz TX jeśli wyłączysz sprzętowy logger).
ESP32 byłby lepszy - tam jest więcej “zdrowych” GPIO do wykorzystania (a jeśli lecisz budżetowo, to można pomyśleć czy ESP32-C3 nie dałby rady).

sensor:
  - platform: max31856
    name: "BBQ Temperature 1"
    icon: "mdi:hamburger"
    cs_pin: GPIOaa
  - platform: max31856
    name: "BBQ Temperature 2"
    icon: "mdi:hamburger"
    cs_pin: GPIObb
  - platform: max31856
    name: "BBQ Temperature 3"
    icon: "mdi:hamburger"
    cs_pin: Dx # tu przykład aliasu czyli tego co jest nadrukowane na PCB np. D1
  - platform: max31856
    name: "BBQ Temperature 4"
    icon: "mdi:hamburger"
    cs_pin: Dy

z tą ikonką hamburgera to przesada :stuck_out_tongue:

Edit: poniższe dotyczy max31865 + PT100/PT1000
Chińskie klony musisz skonfigurować do czujników 2-żyłowych (skoro takie masz) - trzeba wlutować obie zworki (2/3pin oraz 2pin).

coś nie działa wrrrwrrr

ja teraz kupiłem płytkę taką dosłownie
Przechwytywanie
tamta płytka była do PT100 ale się okazało ze nie mam czujników PT100 tylko termo parę
a na tej płytce nie ma pniu CLK ??? jest SCK

Czujniki nie da rady już zdemontować i podmienić jutro zamówię ESP32 koniec na dziś

Faktycznie czeski błąd tam jest max31865, ale konfiguruje się go niemal identycznie - też jest SPI i też można kilka płytek użyć z jednym MCU (wręcz na jednej magistrali mógłbyś mieć oba rodzaje płytek pod różne termopary).

Nie wiem ile płytek naraz chcesz używać, bo 4-5 się powinno dać na jednym ESP8266 (nie mogę obiecać - oczywiście trzeba popróbować, bo nie miałem nigdy tylu niewolników na jednej magistrali).

Jak już przygotujesz YAMLa to go wrzuć (obojętnie czy będzie już działający czy napotkasz problem).

Przeczytaj to co napisałem wyżej, te literki to skróty od CLocK CLK, albo Serial ClocK SCK albo Serial CLocK SCLK (ewentualnie od SPI CLocK itp. itd.) czyli masło maślane, nazwy tworzone od funkcji, tak samo jak Master Input Slave Output, czy Master Output Slave Input, te nazwy tłumaczą jasno co z czym masz połączyć
Master (“Pan”/właściciel/zarządca) to nasz “procesor” czyli MCU (mikrokontroler) a Slave to “niewolniki” - urządzenia podrzędne, w ramach odmurzyniania języka w ogóle zaproponowano likwidację terminów Master i Slave, bo się źle kojarzą i teraz są zalecane jakieś inne, ale nie będę o nich pisał, bo dopiero będzie bałagan…

I np. na płytkach podrzędnych (niewolnikach) DIN Data INput to to samo co SI Slave Input albo SDI Slave Data Input czy SIMO (tu już sobie wymyśl… i dlaczego to trzeba podłączyć do MOSI

Na anglojęzycznej wiki jest zajebisty opis, tylko poczytaj go w oryginale, bo translator jest w stanie zniszczyć sens wszystkiego (“bezpłatny pin” na screenshocie z translatora w poście na górze po prostu mnie rozjechał, normalnie jakbym czytał chiński opis techniczny tłumaczony maszynowo na polski choćby na Aliexpressie, tu akurat da się domyślić, że chodzi o free pin, czyli wolny, nieużywany pin, a nie żaden darmowy, choć free ma wiele znaczeń, ale na Aliexpress czy Amazon muszę często przełączać na angielski, bo nie da się rozszyfrować opisu tłumaczonego na polski)

tak przy okazji mains_filter należy ustawić na 50 Hz, bo domyślne filtrowanie przydźwięku jest ustawione na Amerykę… (a może być istotne, bo ten model czujnika to grubsza magia w środku).

nie działa ???
xxx
tak wpisane
na płytce ESP32-WROOM-32D

Płytka prototypowa ESP32-WROOM-32D WiFi/Bluetooth - Sklep, Opinie, Cena w Allegro.pl
esp32:
podpisałem tak
board: esp32dev

dziwne bo bez czujnika mam taki komunikat
bez czujnika

A podłączyłeś termoparę do wejścia przetwornika? (we właściwą stronę)

YAML, logi itd. wrzucaj przede wszystkim jako tekst (prawidłowego formatowania się nauczysz w 5 sek. - dodatkowe linijki z ``` przed i po wklejonym tekście - ta są trzy odwrotne apostrofy spod “klawisza tyldy”).

???

kombinowałem zamieniałem i to ale mnie zastanawia 2 sprawy

  1. to czemu jak mam odłączoną termo parę to mam taki sam komunikat jak jest podłączona
  2. sprawa mam dwie termo pary koło siebie i podpiąłem 6m przewodu żeby przedłóż przewody i ciekawe czy to ma wpływ ???

zastanawiam się nad kupnem jakiejś innej płytki uniwersalnej do termo pary

Płytka działa tzn. konfiguracja wszystkiego jest dobra podłączył czujnik temperatury ale ale ale PT100
ciekawe jaki mam rodzaj czujnika zamontowany ??? jak to sprawdzić np jakiś miernik ???

jest coś działa tzn płytkę podpoiłem bezpośrednio do czujnika temperatury (wywaliłem to 6m przewodu ) i wyskoczyło mi temperatura 128C tyle na pewno nie ma hmmmm ale coś już jest przepnę zaraz do innego czujnika tam tam spodziewam się temperatury z 30c ciekawe ile pokaże ??? teraz mam podpiętego czujnika w ziemi wiec z 4C max 10C powinno pokazywać następny czujnik mam w dachu zamontowany to z 30C powinien pokazać
działa

Podstawa DIY to zrozumienie podstaw działania danego urządzenia.

Czujnik PT100 (czy tam PT1000 zasada działania ta sama, parametry inne), to po prostu rezystor RTD (element zmieniający opór jest metalowy, PTxxx są z elementem platynowym stąd nazwa, a cyfra to opór w omach przy zerze Celsjusza) o rezystancji zależnej od temperatury, jego rezystancja rośnie wraz z temperaturą (podobnie jak dla półprzewodnikowych PTC, dla NTC jest odwrotnie), więc przetwornik go wykorzystujący mierzy rezystancję (a ma 4 zaciski, bo służą one do kompensacji długości przewodów oraz wpływu zmiany ich rezystancji przy zmianie temperatury, jak podpinasz “na krótko” i przy niskiej temperaturze mierzonej, to wystarczą 2 - po to zworki na płytce przetwornika).
Tu masz kalkulator rezystancja - temperatura

Termopara działa zupełnie inaczej, ona wytwarza napięcie, ale

  • jest o znikomej obciążalności (więc połączenie nie może mieć dużej upływności)
  • jest ono o bardzo małej wartości (dlatego przewody powinny być raczej krótkie, bo w grę wchodzą zakłócenia od sieci elektrycznej - dlatego pisałem żebyś włączył filtr przeciwzakłóceniowy dla 50Hz, dodatkowo na wejściu przetwornika, na zaciskach wejściowych tych dla termopary możesz wpiąć kondensator o pojemności w okolicach 10nF do 100nF - będzie on dodatkowo tłumił zakłócenia).

Rodzaj termopary możesz rozpoznać po charakterystyce (np. mierząc napięcie, przy danej temperaturze np. 100 stopni C).

Oczywiście jeśli masz multimetr rozróżnienie między PTxxx a termoparą jest możliwe - termopara generuje napięcie rzędu od miliwoltów do pojedynczych woltów, a PTxxx zmienia rezystancję, więc zacznij od zmierzenia napięcia, potem zmierz rezystancję przy znanej temperaturze ośrodka mierzonego.

Więc lepiej pociągnij za język tego, który to zamontował (ja stawiam w ciemno na PT100 lub PT1000, termopary mają większy sens przy pomiarach temperatur znacznie wyższych niż wrzenie wody, chociaż w sumie PT1xxx też się przecież nadaje).

PS Więcej pytajników nie pomoże w rozwiązaniu problemu, popracuj trochę nad uporządkowaniem tekstu - minimalnie poprawiłem czytelność posta (jeśli wylistowujesz cokolwiek, to cyfra z kropką w nowej linii tworzy ładne czytelne listy)

PPS Jakbyś zajrzał chociaż na wiki…