Novedad: el cortafuegos de IA supervisa toda la plataforma y explica cada incidente con palabras sencillas. Vea cómo funciona

Oğuz Özkan

oguz59

@oguz-ozkan · Se unió el mayo 2025

Recién llegado

Akıllı şehir mühendisi · su ve atık su

Temas
5
Respuestas
36
Puntos
0
Recién llegado10 puntos para Miembro

Respuestas de foro creadas

Viendo 15 entradas – de la 1 a la 15 (de un total de 36)

setInsecure ile bağlanır belki ama sertifikayı hiç doğrulamadığın için önerilmez. Asıl sorun IP ile bağlanman. Hermetry’de SNI zorunlu, TLS el sıkışmasında host adını göndermen gerekiyor, IP ile gidince el sıkışma kuruluyor ve kopuyor, PubSubClient de bunu -2 (bağlantı kurulamadı) olarak görüyor. Saha cihazlarında bunu ben de yaşadım.

Düzeltilmiş hali:

WiFiClientSecure net;
net.setCACert(ROOT_CA_PEM);        // sunucu sertifikası genel bir CA'dan, onun kök sertifikası
PubSubClient mqtt(net);
mqtt.setServer("<Connection details'teki host>", 8883);
mqtt.setKeepAlive(60);
mqtt.setBufferSize(1024);           // varsayılan 256 bayt, büyük JSON sessizce gitmez
mqtt.connect("esp32-atolye", TOKEN, NULL);

Kullanıcı adı token, şifre boş. Bağlandıktan sonra v1/telemetry‘ye QoS 1 ile gönder. Aynı token ile iki cihaz çalıştırma, ikinci bağlantı birincisini düşürür.

Bir de saat: ESP32 TLS için tarih kontrolü yapıyor, configTime() ile NTP alıp sonra bağlan, yoksa sertifika «henüz geçerli değil» görünebilir. Bağlantı kuralları burada: MQTT.

Solución aceptada♥ 9

Kondansatörler ve adaptör değişince çöp bitti diyebilirim, iki gündür tek bozuk satır yok. Regex’i de ekledim, artık grafikte 9999 görmüyorum. Selim Bey teşekkürler, Gamze Hanım sizin tahmininiz de doğruymuş.

♥ 1

O zaman sebep zener. Su şebekesinde benzer basınç noktalarında aynı hatayı yaptık. 3.3V’luk BZX55’in kırılma bölgesi keskin değil, 2.5V civarından itibaren akım çekmeye başlıyor. 1k seri direnç üzerinde bu akım gerilim düşümü yapıyor, okuma tam üst uçta düşük çıkıyor. Doğrusal değil, sıcaklıkla da değişir; kalibrasyonla düzeltmek zor.

Bizim kullandığımız:

  • Seri direnç kalsın (1k-4.7k).
  • Zener yerine girişten 3.3V’a ve GND’ye Schottky çift diyot (BAT54S). Normal çalışmada sızıntısı çok düşük, ADS1115’in sınırı olan VDD + 0.3V’u aşan darbeyi beslemeye ve şaseye atıyor.
  • Saha tarafında, kablo girişinde bir TVS diyot (örneğin SMBJ serisinden düşük gerilimli bir tane) ve ADC girişinde 100nF.
  • Şöntü kartın üstünde, ADS1115’e yakın tutun.

3.3V hattının darbeyi yutabilmesi için orada da bir kondansatör olsun, yoksa diyotun bastığı akım hattı yükseltir.

Hermetry tarafında ham mA değerini de ayrı bir anahtar olarak gönderin, 3.6 mA altı gelirse kablo kopuk demektir, onun için bir alarm kuralı kurarsınız.

Solución aceptada♥ 9

Traducido del Türkçe por IA ·

Ese cierre es clásico: tres topics rechazados cierran la sesión en un minuto. A nosotros nos pasó lo mismo el primer día.

♥ 2

Traducido del English por IA ·

Esto se parece bastante a lo que tenemos: dos pozos y seis estaciones de bombeo que se ven todas iguales. ¿Necesito seis diagramas?

♥ 0

Traducido del Türkçe por IA ·

Si te refieres a un estándar, no conozco ningún «estándar IoT offline» único. Todos usan MQTT local, Modbus TCP o HTTP. Pero estoy seguro de que la solución a tu segunda pregunta es una pasarela (gateway).

♥ 0

Traducido del Türkçe por IA ·

La mayoría de estos enchufes llevan un HLW8012 o su clon BL0937, 8 patas, y los pines que describes coinciden exactamente. Yo usé los mismos módulos con este chip en los paneles de las bombas de agua del ayuntamiento, y así funciona:

  • CF (tu pin 5): salida de pulsos cuya frecuencia es proporcional a la potencia activa.
  • CF1 (pin 4): según el pin SEL, un pulso proporcional a la corriente o a la tensión.
  • SEL (pin 6): pin de selección que va de la placa lógica al chip. En el HLW8012, SEL=1 es corriente; en el BL0937 es al revés, y si los confundes, los valores salen absurdos.

Es fácil de leer: conecta los dos pines a una interrupción y cuenta los pulsos en una ventana de 1 segundo. Para la potencia, a grandes rasgos:

volatile uint32_t cfPulses = 0;
void IRAM_ATTR onCF() { cfPulses++; }

// setup:
attachInterrupt(digitalPinToInterrupt(PIN_CF), onCF, RISING);

// every second:
noInterrupts(); uint32_t n = cfPulses; cfPulses = 0; interrupts();
float power_w = n * powerFactor;     // kalibrasyonla bulunacak
energy_wh += power_w / 3600.0;

Encuentra el valor de powerFactor con una carga conocida: conecta un calentador de 100 W o una bombilla incandescente y divide los pulsos contados entre la potencia real. Para la tensión, haz lo mismo cambiando SEL y usando CF1.
Seguridad: al cargar el código, desenchufa la toma de la red, programa el ESP32-C3 por USB, luego desconéctalo y vuelve a enchufarlo. Conectar a la red con el USB conectado equivale a conectar tu ordenador a la red. Haz la calibración viendo el log por Wi-Fi.
Envía a Hermetry un contador energy_wh que crezca, junto con power_w; obtener después el consumo diario a partir del contador es mucho más limpio.

Solución aceptada♥ 6

Traducido del Türkçe por IA ·

Esra, muchas gracias, exactamente así fue. Importé los 60 dispositivos mediante CSV y cargamos los tokens del archivo descargado en las cajas según el número de serie. Ayer quitamos el fusible a propósito y lo volvimos a poner, y todos se conectaron limpiamente en 15 segundos, sin ningún takeover en el Log.También cambiamos el AP: para llegar a 200 lo estamos dividiendo en tres APs de techo.

♥ 0

Traducido del Türkçe por IA ·

Con una carga equilibrada del motor el resultado es aproximadamente correcto, pero cuando el compresor pasa de vacío a carga, el cosφ cambia y corriente × tensión no te da la potencia real de todos modos. Para una estimación aproximada sirve.

♥ 0
Viendo 15 entradas – de la 1 a la 15 (de un total de 36)