Multifungsi AC Digital Meter 0-100A 80-260V Watt daya Volt Amp saat ini tes modul PZEM-004T UNTUK Arduino TTL COM2 \ COM3 \ COM4
Ikhtisar umum
Dokumen ini menjelaskan spesifikasi PZEM-004T modul komunikasi AC,
Modul ini terutama digunakan untuk mengukur tegangan AC, arus, daya aktif, frekuensi, daya
Faktor dan energi aktif, modul tanpa fungsi tampilan, data dibaca melalui TTL
Antarmuka.
PZEM-004T-10A: rentang pengukuran 10A (Shunt bawaan)
PZEM-004T-100A: rentang pengukuran 100A (transformator eksternal)
1. Fungsi deskripsi
Tegangan 1.1
Rentang pengukuran 1.1.1: 80 ~ 260V
1359 resolusi: 0.1V
0.5% akurasi pengukuran
1.2 saat ini
1.2.1 rentang pengukuran: 0 ~ 10A(PZEM-004T-10A); 0 ~ 100A(PZEM-004T-100A)
1.2.2 mulai mengukur arus: 0.01A(PZEM-004T-10A); 0.02A(PZEM-004T-100A)
Resolusi 1.2.3: 0,001a
· Akurasi pengukuran: 0.5%
1.3 Daya Aktif
1.3.1 rentang pengukuran: 0 ~ 2.3kW(PZEM-004T-10A); 0 ~ 23kW(PZEM-004T-100A)
1.3.2 daya ukur awal: 0.4W
Resolusi 1.3.3: 0.1W
1.3.4 format tampilan:
<1000W, menampilkan satu desimal, seperti: 999.9W
≥ 1000W, hanya menampilkan bilangan bulat, seperti: 1000W
Akurasi pengukuran 1,3.5: 0.5%
Faktor daya 1.4
00, 4 rentang pengukuran: 0.00 ~ 1.00
1.4.2 resolusi: 0.01
1.4.3 akurasi pengukuran: 1%
Frekuensi 1.5
1. Rentang pengukuran: 45Hz ~ 65Hz
1.5.2 resolusi: 0.1Hz
1.5.3 akurasi pengukuran: 0.5%
1.6 energi aktif
Rentang pengukuran: 0 ~ 9999.99kWh
1.6.2 resolusi: 1Wh
1,6,3 akurasi pengukuran: 0.5%
1.44 format tampilan:
<10kwh, unit tampilan adalah Wh(1kWh = 1000Wh), seperti: 9999Wh
≥ 10kWh, unit tampilan adalah kWh, seperti: 9999,99kwh
Energi Reset 26,5: Gunakan perangkat lunak untuk mereset.
1.7 lebih dari alarm daya
Ambang batas daya aktif dapat diatur, ketika daya aktif yang diukur melebihi ambang batas, itu
Alarm kaleng
1.8 antarmuka komunikasi
Antarmuka rs485.
2 protokol komunikasi
2.1 protokol lapisan fisik
Lapisan fisik menggunakan UART untuk antarmuka komunikasi rs485.
Tingkat Baud adalah 9600, 8 bit data, 1 stop bit, tidak ada paritas
2.2 protokol lapisan aplikasi
Lapisan aplikasi menggunakan protokol modbus-rtu untuk berkomunikasi. Saat ini, hanya
Mendukung kode fungsi seperti 0x03 (Baca daftar Holding), 0x04 (Baca daftar Input), 0x06
(Tulis daftar tunggal), 0x41 (kalibrasi), 0x42 (energi Reset). Dll.
0x41 kode fungsi hanya untuk penggunaan internal (alamat hanya 0xF8), digunakan untuk pabrik
Kalibrasi dan kembali ke acara pemeliharaan pabrik, setelah kode fungsi meningkat 16-bit
Kata sandi, kata sandi default adalah 0x3721
Kisaran alamat budak adalah 0x01 ~ 0xF7. Alamat 0x00 digunakan sebagai siaran
Alamat, budak tidak perlu menjawab master. Alamat 0xF8 digunakan sebagai umum
Alamat, alamat ini hanya dapat digunakan di lingkungan budak tunggal dan dapat digunakan untuk kalibrasi
Dll. Operasi.
2.3 membaca hasil pengukuran
Format perintah master membaca hasil pengukurannya adalah (total 8 byte):
Alamat cadangan + 0x04 + alamat Daftar Byte tinggi + alamat Daftar Byte rendah + nomor
Dari register Byte tinggi + jumlah register Byte rendah + CRC periksa Byte tinggi + CRC Periksa
Byte rendah.
Format perintah jawaban dari budak dibagi menjadi dua jenis:
Jawaban yang benar: alamat cadangan + 0x04 + jumlah Byte + daftar 1 Data Byte tinggi +
Daftar 1 Data Byte rendah +... + CRC cek Byte tinggi + CRC cek Byte rendah
Balasan kesalahan: alamat cadangan + 0x84 + kode Abnormal + periksa CRC cek byte + CRC tinggi
Byte rendah
Kode Abnormal dianalisis sebagai berikut (sama di bawah)
⚫0x01, fungsi ilegal
⚫0x02, alamat ilegal
⚫0x03, data ilegal
⚫0x04, kesalahan budak
Daftar hasil pengukuran disusun sebagai tabel berikut
Misalnya, master mengirimkan perintah berikut (kode cek CRC diganti dengan
0xHH dan 0xLL, sama di bawah)
0x01 + 0x04 + 0x00 + 0x00 + 0x00 + 0x0A + 0xHH + 0xLL
Menunjukkan bahwa master perlu membaca 10 register dengan alamat cadangan 0x01 dan awal
Alamat daftar adalah 0x0000
Jawaban yang benar dari budak adalah sebagai berikut:
0x01 + 0x04 + 0x14 + 0x08 + 0x98 + 0x03 + 0xE8 + 0x00 + 0x00 + 0x08 + 0x98 + 0x00 +
0x00 + 0x00 + 0x00 + 0x00 + 0x00 + 0x01 + 0xF4 + 0x00 + 0x64 + 0x00 + 0x00 + 0xHH + 0xLL
Data di atas menunjukkan
⚫Tegangan 0x0898, dikonversi ke desimal adalah 2200, tampilan 220.0V
⚫Saat ini adalah 0x000003E8, dikonversi ke desimal adalah 1000, menampilkan 1.000A
⚫Daya 0x00000898, dikonversi ke desimal adalah 2200, tampilan 220.0W
⚫Energi adalah 0x00000000, dikonversi ke desimal adalah 0, menampilkan 0Wh
⚫Frekuensi adalah 0x01F4, dikonversi ke desimal adalah 500, tampilan 50.0Hz
⚫Faktor daya adalah 0x0064, dikonversi ke desimal adalah 100, tampilan 1.00
⚫Status Alarm adalah 0x0000, menunjukkan bahwa daya arus lebih rendah dari daya alarm
Ambang batas
2.4 membaca dan memodifikasi parameter budak
Saat ini, hanya mendukung membaca dan memodifikasi alamat budak dan ambang batas alarm daya
Daftar diatur sebagai tabel berikut
Format perintah master untuk membaca parameter budak dan membaca pengukuran
Hasil yang sama (descrybed di rincian di bagian 2.3), hanya perlu mengubah kode fungsi dari
0x04 sampai 0x03.
Format perintah master untuk mengubah parameter budak adalah (total 8 byte):
Alamat cadangan + 0x06 + alamat Daftar Byte tinggi + alamat Daftar Byte rendah + Daftar
Nilai Byte tinggi + Nilai Daftar Byte rendah + CRC periksa Byte tinggi + CRC periksa Byte rendah.
Format perintah jawaban dari budak dibagi menjadi dua jenis:
Tanggapan yang benar: alamat cadangan + 0x06 + jumlah Byte + daftar alamat Byte rendah +
Daftar nilai tinggi Byte + daftar nilai rendah Byte + CRC periksa tinggi Byte + CRC periksa rendah
Bita.
Balasan kesalahan: alamat cadangan + 0x86 + kode Abnormal + periksa CRC cek byte + CRC tinggi
Byte rendah.
Misalnya, master menetapkan ambang alarm daya budak:
0x01 + 0x06 + 0x00 + 0x01 + 0x08 + 0xFC + 0xHH + 0xLL
Menunjukkan bahwa master perlu mengatur 0x0001 daftar (ambang batas alarm daya) ke 0x08FC
(2300W).
Diatur dengan benar, budak kembali ke data yang dikirim dari master.
Misalnya, master menetapkan alamat budak
0x01 + 0x06 + 0x00 + 0x02 + 0x00 + 0x05 + 0xHH + 0xLL
Menunjukkan bahwa master perlu mengatur 0x0002 daftar (alamat modbus-rtu) ke 0x0005
Diatur dengan benar, budak kembali ke data yang dikirim dari master.
2.5 ulang energi
Format perintah master untuk mengatur ulang energi budak adalah (total 4 byte):
Alamat cadangan + 0x42 + CRC cek byte tinggi + CRC cek byte rendah.
Jawaban yang benar: Alamat budak + 0x42 + CRC periksa byte tinggi + CRC periksa byte rendah.
Jawaban kesalahan: alamat cadangan + 0xC2 + kode Abnormal + periksa CRC cek byte + CRC tinggi
Byte rendah
2.6 kalibrasi
Format perintah master untuk mengkalibrasi budak adalah (total 6 byte):
0xF8 + 0x41 + 0x37 + 0x21 + CRC periksa byte tinggi + CRC periksa byte rendah.
Jawaban yang benar: 0xF8 + 0x41 + 0x37 + 0x21 + CRC periksa byte tinggi + CRC periksa byte rendah.
Jawaban kesalahan: 0xF8 + 0xC1 + kode Abnormal + CRC periksa byte tinggi + CRC periksa byte rendah.
Perlu dicatat bahwa kalibrasi memakan waktu 3 hingga 4 detik, setelah master mengirim
Perintah, jika kalibrasi berhasil, itu akan memakan waktu 3 ~ 4 detik untuk menerima respon dari
Budak itu.
Cek CRC 2.7
Pemeriksaan CRC menggunakan format 16bit, menempati dua byte, generator polinomial adalah X16 + X15 +
X2 + 1, nilai polinomial yang digunakan untuk perhitungan adalah 0xA001.
Nilai dari pemeriksaan CRC adalah data Kerangka membagi semua hasil memeriksa semua byte kecuali
Crc-cek nilainya.
3 diagram blok fungsional
5 instruksi lainnya
5.1antarmuka TTL dari modul ini adalah antarmuka pasif, memerlukan catu daya 5V eksternal, dengan
Ini berarti, ketika berkomunikasi, keempat Port harus dihubungkan (5V, RX, TX, GND), otherwis
E itu tidak dapat berkomunikasi.
5.2 suhu kerja
-20'C ~ + 60'C 。