TapHome

Zhong Sheng (XY) Hőmérséklet, páratartalom, barométer

Modbus TCP
Beküldő
Utoljára frissítve: 06. 2026
Zhong Sheng (XY) Hőmérséklet, páratartalom, barométer

A Zhong Sheng (XY) Hőmérséklet, páratartalom, barométer egy kínai három-az-egyben RS-485 Modbus érzékelő, amely a környezeti hőmérsékletet, a relatív páratartalmat és a légköri nyomást teszi elérhetővé. Ugyanabba az OEM családba tartozik, mint a jól ismert XY-MD02 hőmérséklet- és páratartalom-távadó, kiegészítve egy BMP osztályú nyomásérzékelő chippel — azonban e rebrand-változatra jellemző nem szabványos regiszterkiosztással.

A TapHome sablon Modbus TCP protokollon át kapcsolódik az érzékelőhöz egy Ethernet ↔ RS-485 átjárón keresztül, nem közvetlenül. Az átjáró a TapHome Core-t (LAN) köti össze az RS-485 buszsal, amelyen az érzékelő konfigurálható Slave ID-n ül. Három mérés érhető el — hőmérséklet, relatív páratartalom és légköri nyomás —, mindegyik egy telepítésfüggő kalibrációs offsettel (CORTE, CORH, CORBAR) kombinálva.

Hardveres csatlakoztatás

Az érzékelő Modbus RTU eszköz az RS-485 buszon. A TapHome Core hálózaton keresztül éri el egy Ethernet ↔ RS-485 átjárón át (bármely szabványos Modbus TCP ↔ RTU átjáró megfelel, pl. USR-TCP232, Waveshare vagy egyenértékű DIN-sínes átalakító).

1
2
3
4
┌─────────────┐            ┌───────────────────────┐            ┌──────────────────┐
│ TapHome Core│  Ethernet  │ Ethernet ↔ RS-485     │  RS-485    │ XY érzékelő      │
│             │ ─────────▶ │ átjáró (TCP port 502) │ ─────────▶ │ (Slave ID 1)     │
└─────────────┘            └───────────────────────┘            └──────────────────┘
RS-485 bekötés
RS-485 kábelek színkódolása hidegen préselt érintkezőkön

Az érzékelő hidegen préselt érintkezőkkel ellátott, négy eres kábelt használ a Seeed S-THP-01A referencia konvenciója szerint (azonos kiosztás a legtöbb XY-sorozatú érzékelővel):

Ér színeFunkció
PirosV+ (tápfeszültség, 4,5–18 V DC)
FeketeGND (tápellátás / jelföld)
SárgaRS-485 A+
FehérRS-485 B−

Csatlakoztasd az A+ és B− ereket az Ethernet ↔ RS-485 átjáró megfelelő sorkapcsaira, és oszd meg a GND-t az érzékelő, a tápegysége és az átjáró között, hogy elkerüld a közös módú problémákat.

RS-485 bekötés egy Ethernet ↔ RS-485 átjáróhoz (DataLogger példa)

A pontos érszínek gyártási szériánként kissé eltérhetnek — mindig ellenőrizd a kábelen lévő jelölést bekapcsolás előtt. A tápfeszültség fordított bekötése nem rongálja meg az érzékelőt (van fordított polaritás elleni védelme), de az érzékelő egyszerűen nem fog válaszolni.

~100 m-nél hosszabb busszakaszoknál használj árnyékolt sodrott érpárt A+ / B− számára, és helyezz el egy 120 Ω lezáró ellenállást a vezeték végén. Minden érzékelőt ugyanazon GND referencián tarts.

Modbus kommunikáció engedélyezése

Nincs szükség menüre vagy DIP kapcsolókra — az érzékelő gyárilag engedélyezett Modbus RTU-val érkezik. Az integráció csak az RS-485 busz bekötéséről, az átjáró konfigurálásáról és a TapHome import során két érték megadásáról szól.

RS-485 soros paraméterek (gyári alapértékek)

Az XY-sorozat és a Seeed S-THP-01A referencia ugyanazon soros beállításokkal hagyja el a gyárat. A TapHome sablon az alábbi alapértékeket feltételezi:

BeállításÉrték
Átviteli sebesség9600 bps
Adatbitek8
Paritásnincs
Stop bitek1
Slave cím1

Az átviteli sebesség és a slave cím szoftveresen konfigurálható közvetlenül az érzékelőn lévő holding regiszterek útján (lásd Seeed S-THP-01A user guide, 0x0200 / 0x0201 regiszterek, vagy XY-MD02 datasheet). A TapHome sablon szándékosan nem teszi elérhetővé ezeket a regisztereket — a TapHome-ból történő módosítás megszakítaná az aktív kapcsolatot.

Átjáró konfigurálása

Konfiguráld az Ethernet ↔ RS-485 átjárót Modbus TCP slave-ként (kiszolgáló) a 502-es TCP porton, amely az alatta lévő RS-485 buszra proxyzik 9600, 8-N-1 beállításokkal. Rendelj hozzá statikus IP-címet (vagy DHCP foglalást), hogy áramkimaradás után ne változzon.

Ha az átjáró több slave leképezést támogat, hagyd az érzékelőt Slave ID 1-en — ez egyszerűbb, mint az érzékelő címét átírni, és megfelel a sablon alapértékének.

TapHome import paraméterek

A sablon TapHome-ba történő importálásakor add meg a két értéket:

ParaméterAlapértékLeírás
IP-cím192.168.1.0Az Ethernet ↔ RS-485 átjáró IP-címe a LAN-ban
Slave ID1Az érzékelő Modbus címe az RS-485 buszon
Modulváltozók — kalibrációs offsetek

Importálás után a TapHome → Modulváltozók menüben három modulszintű változó érhető el a telepítésfüggő kalibrációhoz. Minden nyers mérésre rádődnek:

VáltozóAlapértékMértékegységCél
CORTE0,5°CHőmérséklet-offset, amely minden nyers hőmérséklet-értékhez hozzáadódik
CORH0,01%RHPáratartalom-offset, amely minden nyers páratartalom-értékhez hozzáadódik
CORBAR17hPaNyomás-offset, amely minden nyers nyomásértékhez hozzáadódik

A CORBAR = 17 telepítési helyre szabott tengerszint feletti magasságkorrekció — minden telepítésnél újra kell hangolni. Ha a gyári értéken hagyod, minden nyomásértéket +17 hPa-val eltorzít a valódi helyi légnyomáshoz képest. Indulj CORBAR = 0 értékkel, és hangold a telepítés magasságában egy ismert referencia-barométerhez. A CORTE és CORH értékeket is ellenőrizd az érzékelő mellé helyezett referencia hőmérő / higrométer alapján.

Eszközök képességei

A sablon három csak olvasható érzékelő eszközt tesz elérhetővé, mindegyik az átjárón keresztül olvas holding regisztereket:

Hőmérséklet

Levegő-hőmérséklet a beépített SHT osztályú chipből, a H:0 (uInt16) regiszterből olvasva, raw / 10 + CORTE szerint skálázva. °C-ban, 0,1 °C felbontással, tipikusan ±0,5 °C pontossággal jelenik meg.

Relatív páratartalom

Relatív páratartalom ugyanazon SHT osztályú chipből, a H:1 (uInt16) regiszterből olvasva, raw × 0,001 + CORH szerint skálázva. %RH-ban jelenik meg.

A páratartalom skálázási faktora gyanús. A ×0,001 szorzó azt jelenti, hogy a nyers regiszter 100 %RH-nál ≈ 100 000 értéket tartana, ami túlcsordul egy 16 bites regiszteren (max. 65 535). A referencia XY-MD02 /10-et használ, a Seeed S-THP-01A pedig /100-at. A legvalószínűbb helyes képlet a raw / 10 — összhangban az XY-MD02 konvenciójával. Valós hardveren ellenőrizd a mért értékeket, mielőtt megbíznál bennük; ha a jelentett páratartalom lecsíp vagy vadul tartományon kívüli, igazítsd a sablont vagy használj másik XY változatot.

Légköri nyomás

Légköri nyomás a beépített BMP osztályú chipből, a H:4 regiszterből 32 bites unsigned integerként olvasva (a H:4H:5 regiszterpáron át), raw / 100 + CORBAR szerint skálázva. hPa-ban, 0,1 hPa felbontással jelenik meg.

Az eszköz-szintű lekérdezési időköz az XML sablonban 1 000 ms a barométerre, ami túl agresszív — a légköri nyomás perces, nem másodperces nagyságrendben változik. Importálás után növeld a barométer lekérdezési időközét a TapHome → Eszközváltozók-ban 15 000–30 000 ms-ra, hogy csökkenteni tudd a busz terhelését bármilyen hasznos felbontás elvesztése nélkül. A hőmérséklet és páratartalom által már használt modulszintű 30 000 ms-os időköz jó kiindulópont a barométerhez is.

Regiszterösszegzés

RegiszterParaméterAdattípusSkála / offsetMértékegységLekérdezési időköz
H:0HőmérsékletuInt16/ 10 + CORTE (0,5)°C30 000 ms (modulszintű)
H:1PáratartalomuInt16× 0,001 + CORH (0,01) — ellenőrizni%RH30 000 ms (modulszintű)
H:4H:5Légköri nyomásuInt32/ 100 + CORBAR (17)hPa1 000 ms (túl agresszív)

A nyers uInt16 adattípus nem tudja nativan ábrázolni a negatív értékeket. Valós XY-MD02 hardveren a nulla alatti hőmérsékletek kettes komplemensű előjeles egész számként érkeznek. Ha az érzékelőt olyan környezetben telepíted, amely rendszeresen 0 °C alá csökken, valós hardveren ellenőrizd a negatív értékek helyes dekódolását, mielőtt megbíznál bennük.

Hibaelhárítás

Nincsenek értékek az importálás után
  1. Pingeld meg az átjáró IP-címét a TapHome Core-ral azonos alhálózatból — ha nem válaszol, a probléma a LAN vagy a tápellátás oldalán van, nem a Modbuson.
  2. Ellenőrizd, hogy az átjáró Modbus TCP szerverként van-e konfigurálva az 502-es porton, nem pedig átlátszó TCP hídként.
  3. Győződj meg róla, hogy az átjáró soros RS-485 beállításai 9600, 8-N-1 értékűek — az itteni eltérés csendben időtúllépéseket okoz mérések nélkül.
  4. Ellenőrizd, hogy az érzékelő Slave ID-je megegyezik a TapHome importáláskor megadott értékkel (alapértelmezett 1). Két, azonos című érzékelő ugyanazon a buszon ütközést okoz.
  5. Vizsgáld meg az RS-485 bekötést: A+ az A+-ra, B− a B−-ra, közös GND az érzékelő, a tápegység és az átjáró között.
Valószerűtlen páratartalom-értékek

Az XML sablon × 0,001 páratartalom-szorzót használ, ami nem egyezik az XY-MD02 családdal (/10) és a Seeed S-THP-01A referenciával (/100). Ha a páratartalom a nulla közelében beragad vagy soha nem ér el reális értékeket, a nyers regiszter valószínűleg az XY-MD02 konvenciót használja. Ellenőrizd a nyers regiszter értékét Modbus hibakereső eszközzel (pl. qModbus) egy referencia higrométerrel szemben; ha az 500 körüli nyers értékek ~50 %RH-nak felelnek meg, a képletnek /10-nek kell lennie, és a sablon javításra szorul.

Nyomásérték ~17 hPa-val eltolva

A sablon CORBAR = 17 alapértéke egy régi, telepítési helyre szabott magasságkorrekció. Ha a nyomás következetesen ~17 hPa-val magasabb, mint egy közeli referencia-barométer (pl. meteorológiai állomás), állítsd a CORBAR értéket 0-ra a TapHome → Modulváltozók menüben, és hangold a referenciához.

Magas buszterhelés / kommunikációs hibák

Növeld a barométer lekérdezési időközét 1 000 ms-ról 15 000–30 000 ms-ra a TapHome → Eszközváltozók-ban. Egy 1 Hz-es lekérdezés megosztott RS-485 buszon kevés sávszélességet hagy a többi slave-nek, és a barométernél semmilyen előnyt nem nyújt.

A negatív hőmérséklet hatalmas pozitív számként jelenik meg

A sablon uInt16-ként olvassa a hőmérsékletet. Valós XY hardver a negatív hőmérsékleteket kettes komplemensű előjeles egész számként adja vissza — egy 0xFF33 (≈ 65 331) nyers érték unsigned-ként dekódolva ≈ 6 533,1 °C, de −20,5 °C-ként kellene dekódolni. Ha az érzékelőt olyan környezetben telepíted, amely 0 °C alá eshet, valós hardveren ellenőrizd a viselkedést, és fontold meg a sablon előjeles Int16 változatra cseréjét, mielőtt megbíznál a fagypont alatti értékekben.

Elérhető eszközök

Hőmérséklet, páratartalom, barométer Modul
Egyéni változók
CORBAR (numeric) = 17Légköri nyomás offset hPa-ban, minden nyers barométer értékhez hozzáadva — telepítési helyre szabott tengerszint feletti magasság / referenciaszint-korrekcióhoz
Adjust in TapHome → Module Variables after import. Start with 0 and tune against a known reference barometer at the installation altitude; +17 hPa is a legacy site-specific default and will bias pressure readings if left unchanged.
CORH (numeric) = 0.01Relatív páratartalom offset %RH-ban, minden nyers páratartalom értékhez hozzáadva — az egyes érzékelők driftjének kompenzálására
Adjust in TapHome → Module Variables after import. Typical factory calibration is within ±3 %RH; tune against a reference hygrometer.
CORTE (numeric) = 0.5Hőmérséklet offset °C-ban, minden nyers hőmérséklet értékhez hozzáadva — az egyes érzékelők driftjének kompenzálására
Adjust in TapHome → Module Variables after import. Tune against a reference thermometer placed next to the sensor.
Légköri nyomás Változó Csak olvasható

Légköri nyomás a beépített BMP osztályú chipből hPa-ban, a telepítésfüggő CORBAR offsettel

Regiszter: H:4 uInt32 Egység: hPa

Légköri nyomás

Olvasás
MODBUSR(H, 4, uInt32)/100 + CORBAR
Hőmérséklet Változó Csak olvasható

Környezeti levegő hőmérséklete a beépített SHT családú érzékelőből °C-ban, a telepítésfüggő CORTE offsettel

Regiszter: H:0 uInt16 Egység: °C

Hőmérséklet

Olvasás
MODBUSR(H, 0, uInt16)/10 + CORTE
Relatív páratartalom Változó Csak olvasható

Relatív páratartalom a beépített SHT családú érzékelőből %RH-ban, a telepítésfüggő CORH offsettel

Regiszter: H:1 uInt16 Egység: %RH

Relatív páratartalom

Olvasás
MODBUSR(H, 1, uInt16)*0.001 + CORH
Kapcsolat: Modbus TCP • Slave ID: $[SlaveId]
Lehetséges fejlesztések (10)
  • H:2 Dew Point — INT16 /100, °C — commonly exposed by SHT-family chips alongside temperature and humidity; not read by the current TapHome template.
  • H:3 Atmospheric Pressure (INT16 variant) — INT16 /10, hPa — alternative lower-resolution pressure register present on sister devices; this template uses the 32-bit variant at H:4 instead.
  • H:4 (frost point) Frost Point — INT16 /100, °C — useful for condensation prevention; register overlap with this template's barometer variant means it would only be available on firmware variants without the packed 32-bit pressure register.
  • H:5 (vapor pressure) Vapor Pressure / Wet Bulb / Vapor Concentration — Reference devices expose vapor pressure (/10, hPa), vapor concentration (/10, g/m³) and related psychrometric values; not known to be available on this specific Zhong Sheng (XY) rebrand.
  • H:0x0020 Temperature Unit Selector — UINT16 RW, 0=°C / 1=°F — configuration register for switching display units; not typically needed when the template fixes °C.
  • H:0x0200 Slave Address (writable) — UINT16 RW, 0..255 — would allow changing the Modbus slave ID from TapHome; intentionally left out because mis-writing it would break the connection.
  • H:0x0201 Baud Rate (writable) — UINT16 RW, 0..5 mapping to standard baud rates — same rationale as slave address: unsafe to expose in a user-editable template.
  • H:0x1000 Temperature (IEEE Float variant) — 32-bit IEEE float temperature at offset 0x1000; this template reads the cheaper uInt16 ×0.1 variant at H:0 instead.
  • H:0x1002 Humidity (IEEE Float variant) — 32-bit IEEE float humidity at offset 0x1002; this template reads the uInt16 variant at H:1 instead — consider switching to float if the uInt16 scaling proves wrong on real hardware.
  • H:0x1006 Atmospheric Pressure (IEEE Float variant) — 32-bit IEEE float pressure at offset 0x1006; alternative to the packed uInt32 this template uses at H:4.

Források

Talált problémát ezzel az eszközsablonnal?

Írja meg, mi nem működik, mi hiányzik, vagy hogyan kellene a sablonnak viselkednie. Visszajelzése segít, hogy a katalógus pontos maradjon.

TapHome által hitelesítve

Használni szeretnéd ezt a TapHome Core-odban?

Nyisd meg ezt a sablont az ügyfélportálon, hogy alkalmazd az otthonaid egyikére, vagy készíts egy módosítást és küldd vissza a katalógusba.

Megnyitás a portálon