Imaginile produselor au caracter informativ si pot prezenta diferente minore, in functie de lot si de furnizor. Este posibil ca specificatiile si pretul produselor sa fie modificate fara preaviz. Facem tot posibilul sa adaugam in pagina produselor specificatii cat mai exacte si corecte dar este posibil ca acestea sa nu fie in totalitate corecte. in cazul in care identificati un astfel de caz, va rugam sa ne semnalati acest lucru.
Produsele noastre sunt destinate in principal dezvoltarii, prototiparii si proiectelor tehnice. Informatiile privind specificatiile, instructiunile si conformitatea sunt furnizate conform datelor disponibile de la producatori sau furnizori. Pentru integrarea in produse finale sau aplicatii comerciale, recomandam verificarea compatibilitatii si conformitatii in functie de utilizarea dorita.
Specificatiile tehnice mentionate (curent, putere etc.) reprezinta valori maxime admise in conditii ideale de functionare. Pentru o utilizare sigura si o durata de viata optima, recomandam exploatarea produsului in regim continuu la cel mult 50% din valorile maxime specificate.
Senzor de sol 7 in 1 (N, P, K, pH, EC, Umiditate, Temperatura), RS485, 5–30V
Monitorizeaza rapid parametrii esentiali ai solului pentru fertilizare si irigare precisa, masoara N, P, K, pH, EC, umiditate si temperatura intr-un singur dispozitiv, comunicatie RS485 Modbus RTU pentru integrare usoara in SCADA sau proiecte IoT, sonde din inox 316 si carcasa etansata IP68 pentru utilizare pe termen lung, alimentare larga 5–30V cu consum redus.
Adauga in cos produse in valoare de 130 Ron si ai livrare gratuita daca alegi sa platesti online
Produsele sunt expediate din stoc propriu
Primesti puncte la fiecare comanda, in valoare de 5%
Senzorul NPKPHCTH-S este o solutie completa de monitorizare a solului, integrind intr-un singur dispozitiv masurarea simultana a noua parametri: umiditate, temperatura, conductivitate electrica (EC), pH, azot (N), fosfor (P), potasiu (K), salinitate si TDS (total dissolved solids).
Cele cinci sonde din otel inoxidabil 316 asigura rezistenta la rugina, coroziune si electroliza prelungita, iar corpul senzorului este etansat complet cu rasina epoxidica ignifuga neagra, conferindu-i un grad de protectie IP68 adecvat pentru utilizare continua in medii agricole dificile sau in sol umed.
Transmisia datelor se realizeaza prin interfata RS485 folosind protocolul industrial Modbus RTU, ceea ce permite integrarea facila in sisteme SCADA, statii meteo automate sau proiecte IoT bazate pe microcontrolere precum ESP32, Arduino sau Raspberry Pi.
Pe linga iesirea digitala RS485, senzorul este disponibil si in variante cu iesire analogica 4-20 mA, 0-5 V sau 0-10 V, pentru compatibilitate cu o gama larga de sisteme de achizitie. Tensiunea de alimentare larga (4.5 – 30 VDC) si consumul redus (sub 0.5 W la 24 VDC) il fac compatibil cu instalatii alimentate din baterii sau panouri solare. Cablul de conectare are o lungime standard de 2 m, cu posibilitate de personalizare.

Specificatii:
Tensiune de operare: 4.5 - 30 VDC
Consum maxim: 0.5 W (la 24 VDC)
Interfata: RS485 / 4-20 mA / 0-5 V / 0-10 V
Protocol: Modbus RTU
Domeniu masurare umiditate: 0 - 100% RH
Acuratete umiditate: ±2% (0 - 50% RH), ±3% (50 - 100% RH)
Stabilitate pe termen lung umiditate: ≤1% RH/an
Timp de raspuns umiditate: ≤4 s
Domeniu masurare temperatura: -40 - 80°C
Acuratete temperatura: ±0.5°C
Stabilitate pe termen lung temperatura: ≤0.1°C/an
Timp de raspuns temperatura: ≤15 s
Domeniu masurare conductivitate (EC): 0 - 20000 uS/cm
Acuratete conductivitate: ±3% (0 - 10000 uS/cm), ±5% (10000 - 20000 uS/cm)
Stabilitate pe termen lung conductivitate: ≤1 uS/cm/an
Timp de raspuns conductivitate: ≤1 s
Domeniu masurare pH: 3 - 9 pH
Acuratete pH: ±0.3 pH
Stabilitate pe termen lung pH: ≤5%/an
Timp de raspuns pH: ≤10 s
Domeniu masurare NPK: 1 - 1999 mg/kg
Rezolutie NPK: 1 mg/kg
Timp de raspuns NPK: ≤1 s
Lungime cablu: 2 m (personalizabil)
Material sonda: Otel inoxidabil 316
Material carcasa: Rasina epoxidica ignifuga neagra
Grad de protectie: IP68
Temperatura de operare: -40 - 80°C
Dimensiuni: 45 x 15 x 123 mm
Pinout Sonda:
| Pin | Culoare | Functie |
|---|---|---|
| 1 | Maro | VCC (4.5 - 30 VDC) |
| 2 | Negru | GND |
| 3 | Galben | RS485 A+ (Data+) |
| 4 | Albastru | RS485 B- (Data-) |
Registrii:
| Registru | Parametru | Unitate | Factor |
|---|---|---|---|
| 0x0000 | Umiditate | %RH | /10 |
| 0x0001 | Temperatura | °C | /10 |
| 0x0002 | Conductivitate | uS/cm | x1 |
| 0x0003 | pH | pH | /10 |
| 0x0004 | Azot (N) | mg/kg | x1 |
| 0x0005 | Fosfor (P) | mg/kg | x1 |
| 0x0006 | Potasiu (K) | mg/kg | x1 |
| 0x0007 | Salinitate | g/L | x1 |
| 0x0008 | TDS | mg/L | x1 |
Utilizare:
Introduceti sondele complet in sol pina la marcajul de pe corpul senzorului, evitind contactul cu pietre sau radacini.
Conectati firele conform tabelului pinout la modulul RS485 (MAX485 sau similar) sau direct la convertorul RS485-USB.
Alimentati senzorul cu o tensiune intre 4.5 si 30 VDC pe firul maro (+) si negru (GND).
Conectati firul galben la borna A+ si firul albastru la borna B- ale modulului RS485.
Configurati portul serial la urmatorii parametri: baud rate 4800, 8 biti de date, fara paritate, 1 bit de stop (4800 8N1).
Trimiteti comenzi Modbus RTU individuale catre adresa implicita 0x01 pentru fiecare registru dorit, conform tabelului de registri de mai sus.
Interpretati valorile primite aplicind factorul de scala corespunzator fiecarui parametru.
Dupa utilizare, curatati sondele cu apa curata si depozitati senzorul ferit de inghet.
Cod test cu ESP32 si Modul RS485:

Produs destinat utilizarii in proiecte electronice, automatizari, prototipare, educatie si cercetare.
Produsul trebuie utilizat numai conform specificatiilor tehnice mentionate in descriere si/sau in documentatia produsului.
Avertismente generale de siguranta:
Acest produs este destinat utilizarii in proiecte electronice, automatizari, prototipare, educatie, cercetare si aplicatii tehnice similare. Produsul trebuie utilizat doar conform specificatiilor tehnice mentionate in pagina produsului si/sau in documentatia disponibila.
Utilizarea incorecta, depasirea valorilor maxime admise de tensiune, curent, temperatura sau conectarea gresita pot duce la defectarea produsului, deteriorarea altor echipamente sau la riscuri de siguranta.
Produsul nu este jucarie si nu este destinat copiilor. Montajul, testarea si utilizarea trebuie realizate de persoane cu cunostinte minime in domeniul electric/electronic. Se recomanda utilizarea produsului in montaje protejate, carcase adecvate sau sisteme care respecta normele de siguranta aplicabile.
Identificare produs:
Denumirea produsului, codul/SKU-ul si caracteristicile tehnice sunt mentionate in pagina produsului si/sau pe eticheta ambalajului.
Producator / Importator / Distribuitor:
Sigmanortec S.R.L.
Calea Bucuresti nr. 9, Targu Jiu, Gorj, Romania
E-mail: [email protected]
Website: www.sigmanortec.ro
Persoana responsabila in UE:
Sigmanortec S.R.L.
Calea Bucuresti nr. 9, Targu Jiu, Gorj, Romania
E-mail: [email protected]
// NPKPHCTH-S - 9-parameter soil sensor | ESP32 + ThingSpeak
// RS485 module connected to Serial1 (RX=17, TX=16), RE/DE pin=4
// Baud rate: 4800, 8N1, sensor default address: 0x01
// Data is uploaded to ThingSpeak every 10 minutes
#include "WiFi.h"
#include "ThingSpeak.h"
#define RE 4
#define RXD2 17
#define TXD2 16
const char* ssid = "YOUR_SSID";
const char* password = "YOUR_PASSWORD";
unsigned long channelID = 0; // your ThingSpeak channel ID
const char* writeAPIKey = "YOUR_KEY"; // your ThingSpeak write API key
WiFiClient client;
// Modbus RTU requests - one register each (address 0x01, function 0x03)
const byte humi[] = {0x01, 0x03, 0x00, 0x00, 0x00, 0x01, 0x84, 0x0A};
const byte temp[] = {0x01, 0x03, 0x00, 0x01, 0x00, 0x01, 0xD5, 0xCA};
const byte cond[] = {0x01, 0x03, 0x00, 0x02, 0x00, 0x01, 0x25, 0xCA};
const byte phph[] = {0x01, 0x03, 0x00, 0x03, 0x00, 0x01, 0x74, 0x0A};
const byte nitro[] = {0x01, 0x03, 0x00, 0x04, 0x00, 0x01, 0xC5, 0xCB};
const byte phos[] = {0x01, 0x03, 0x00, 0x05, 0x00, 0x01, 0x94, 0x0B};
const byte pota[] = {0x01, 0x03, 0x00, 0x06, 0x00, 0x01, 0x64, 0x0B};
const byte sali[] = {0x01, 0x03, 0x00, 0x07, 0x00, 0x01, 0x35, 0xCB};
const byte tds[] = {0x01, 0x03, 0x00, 0x08, 0x00, 0x01, 0x05, 0xC8};
byte values[7];
int readRegister(const byte* request, uint8_t len) {
digitalWrite(RE, HIGH);
delay(10);
for (uint8_t i = 0; i < len; i++) Serial1.write(request[i]);
Serial1.flush();
digitalWrite(RE, LOW);
delay(100);
unsigned long t = millis();
uint8_t idx = 0;
while (millis() - t < 300 && idx < 7) {
if (Serial1.available()) values[idx++] = Serial1.read();
}
if (idx < 5) return -1;
return int(values[3] << 8 | values[4]);
}
void setup() {
Serial.begin(115200);
Serial1.begin(4800, SERIAL_8N1, RXD2, TXD2);
pinMode(RE, OUTPUT);
digitalWrite(RE, LOW);
delay(1000);
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client);
Serial.println("NPKPHCTH-S ready.");
}
void loop() {
if (WiFi.status() != WL_CONNECTED) {
Serial.print("Connecting to WiFi...");
while (WiFi.status() != WL_CONNECTED) {
WiFi.begin(ssid, password);
delay(5000);
}
Serial.println(" connected.");
}
int raw;
float val[9];
const byte* reqs[] = {humi, temp, cond, phph, nitro, phos, pota, sali, tds};
uint8_t lens[] = {sizeof(humi), sizeof(temp), sizeof(cond), sizeof(phph),
sizeof(nitro), sizeof(phos), sizeof(pota),
sizeof(sali), sizeof(tds)};
float scales[] = {10.0, 10.0, 1.0, 10.0, 1.0, 1.0, 1.0, 1.0, 1.0};
const char* names[] = {"Humidity","Temperature","EC","pH",
"Nitrogen","Phosphorus","Potassium","Salinity","TDS"};
const char* units[] = {"%","deg.C","uS/cm","","mg/kg",
"mg/kg","mg/kg","g/L","mg/L"};
for (uint8_t i = 0; i < 9; i++) {
raw = readRegister(reqs[i], lens[i]);
val[i] = (raw >= 0) ? raw / scales[i] : -1;
Serial.print(names[i]); Serial.print(": ");
if (raw >= 0) { Serial.print(val[i], (scales[i] > 1) ? 1 : 0);
Serial.println(units[i]); }
else Serial.println("read error");
delay(200);
}
// Upload to ThingSpeak (8 fields max per free channel)
ThingSpeak.setField(1, val[0]); // humidity
ThingSpeak.setField(2, val[1]); // temperature
ThingSpeak.setField(3, val[2]); // EC
ThingSpeak.setField(4, val[3]); // pH
ThingSpeak.setField(5, val[4]); // nitrogen
ThingSpeak.setField(6, val[5]); // phosphorus
ThingSpeak.setField(7, val[6]); // potassium
ThingSpeak.setField(8, WiFi.RSSI());
int status = ThingSpeak.writeFields(channelID, writeAPIKey);
Serial.println(status == 200 ? "Upload OK." :
"Upload failed, HTTP " + String(status));
Serial.println("----------------------------------");
delay(600000); // 10 minutes
}