Perangkat keras
Sentinel SNT-G1 berbasis modul ESP32-S3 dengan Ethernet W5500 dan PoE. Sensor dan modul pendukung disambung ke header GPIO modul itu.
Modul dan sambungannya
Section titled “Modul dan sambungannya”| Modul | Fungsi | Koneksi ke ESP32-S3-ETH |
|---|---|---|
| ESP32-S3-ETH + PoE | Controller, Ethernet W5500, daya dari PoE | GPIO9–14 dipakai W5500 |
| PZEM-004T 100A | Tegangan, arus, daya, energi, frekuensi, faktor daya | GPIO17 (RX) / GPIO18 (TX) lewat level shifter |
| DS18B20 (1–4) | Suhu, slot t1…t4; beberapa sensor berbagi satu kabel |
GPIO3, pull-up 4,7 kΩ ke 3V3 |
| SHT41 (opsional) | Suhu dan kelembapan ruang | I2C GPIO1 (SDA) / GPIO2 (SCL), sisi 3,3 V |
| LCD2004 I2C | Tampilan lokal 20×4 | I2C yang sama, lewat level shifter (LCD bekerja di 5 V). Alamat backpack (umumnya 0x27) dipilih otomatis atau lewat lcd_addr |
| PCF8574 (I/O expander) | Tombol sentuh dan output digital. Alamat I2C exp_addr (bawaan 0x21) |
I2C GPIO1 / GPIO2 langsung (sisi 3,3 V), INT ke GPIO39 |
| Touch TTP223 ×4 | UP / DOWN / BACK / OK, keluaran HIGH saat disentuh | PCF8574 P4 / P5 / P6 / P7 |
Output digital o1…o4 |
Dinyalakan lewat perintah output atau rules; semua MATI saat boot |
PCF8574 P0 / P1 / P2 / P3 |
Input digital d1…d4 |
Tipe diatur lewat konfigurasi | GPIO16 / GPIO38 / GPIO48 (lewat optocoupler UPS) / GPIO15, kabel satunya ke GND |
| Buzzer aktif | Alarm lokal dan identify | GPIO46 (active-HIGH) |
| Modul RS-485 (opsional) | Perangkat Modbus RTU | TX GPIO43, RX GPIO44, DE/RE GPIO40 (lihat Sumber Modbus) |
Pin yang tidak boleh dipakai: GPIO0 dan 45 (strapping), 4–7 (slot SD card), 21 (LED RGB onboard), 33–37 (PSRAM).
Catatan pemasangan
Section titled “Catatan pemasangan”- Pull-up I2C. Total pull-up SDA dan SCL di bus harus antara ±2 kΩ dan ±5 kΩ (3,3 V), dan satu pasang saja. Banyak modul PCF8574 membawa pull-up sendiri, kadang 1 kΩ; digabung dengan pull-up lain, bus jadi terlalu kuat, LCD tidak terdeteksi, dan pemindaian menunjukkan semua alamat menjawab. Lepas resistor pull-up di modul PCF8574 bila bus sudah punya pull-up.
- Tombol sentuh TTP223 tidak bisa mendeteksi sentuhan lewat pelat metal. Untuk casing metal, buat jendela berpanel akrilik atau plastik.
- Grounding. GND boleh disambung ke casing metal di satu titik dekat RJ45, sebaiknya lewat 1 MΩ paralel 10 nF/2 kV.
- DS18B20 butuh resistor pull-up 4,7 kΩ ke 3V3 pada jalur data. Tanpa itu pembacaan bisa putus-putus.
- Output PCF8574 hanya kuat menyerap arus: satu pin menyerap ±25 mA tetapi hanya menyuplai ±100 µA saat tinggi. LED kecil bisa langsung; beban lain butuh transistor, optocoupler, atau modul relay (Output digital).
- RS-485. Tanpa isolasi di papan; pakai modul RS-485 terisolasi, atau pastikan hanya perangkat dengan sisi komunikasi terisolasi yang tersambung. Beri terminasi 120 Ω di kedua ujung bus.
Alamat I2C
Section titled “Alamat I2C”| Perangkat | Alamat | Catatan |
|---|---|---|
| PCF8574 (tombol + output) | 0x21 (A0 ke VCC, A1 dan A2 ke GND) | exp_addr = 33. Tidak dideteksi otomatis; harus sama dengan pad A0…A2 di modul |
| Backpack LCD | 0x27 atau 0x3F | lcd_addr 0 = otomatis; tidak boleh sama dengan exp_addr |
| SHT41 | 0x44 | aktifkan dengan sht41 = true |
Alamat modul PCF8574 = 0x20 + (A2·4 + A1·2 + A0), dengan A = 1 bila pad itu ke VCC. Perintah serial i2cscan dan i2cdiag menunjukkan alamat yang menjawab (USB serial).
Catu daya
Section titled “Catu daya”Sentinel G1 dicatu dari PoE lewat kabel Ethernet; saat memprogram lewat USB-C, daya datang dari USB. Sediakan switch PoE di rak atau injector PoE.