syntax = "proto3"; message MeterDataMO { int32 device_kind = 1; // Device kind identifier int64 meter_sn = 2; // Meter serial number int32 meter_total_power = 3; // Total power by the meter (Watts) int32 meter_phase_A_power = 4; // Power in phase A (Watts) int32 meter_phase_B_power = 5; // Power in phase B (Watts) int32 meter_phase_C_power = 6; // Power in phase C (Watts) int32 meter_factor = 7; // Meter factor int32 meter_total_energy = 8; // Total energy produced by the meter (Watt-hours) int32 meter_phase_A_energy = 9; // Energy produced in phase A (Watt-hours) int32 meter_phase_B_energy = 10; // Energy produced in phase B (Watt-hours) int32 meter_phase_C_energy = 11; // Energy produced in phase C (Watt-hours) int32 meter_total_consumed = 12; // Total energy consumed (Watt-hours) int32 meter_phase_A_consumed = 13; // Energy consumed in phase A (Watt-hours) int32 meter_phase_B_consumed = 14; // Energy consumed in phase B (Watt-hours) int32 meter_phase_C_consumed = 15; // Energy consumed in phase C (Watt-hours) int32 meter_fault = 16; // Meter fault code } message RpDataMO { int64 rp_sn = 1; // RP serial number int32 rp_signal = 2; // RP signal strength int32 rp_channel = 3; // RP channel number int32 rp_link_nub = 4; // RP link number int32 rp_link_status = 5; // RP link status } message PvDataMO { int64 pv_sn = 1; // PV serial number int32 pv_port = 2; // PV port number int32 pv_vol = 3; // PV voltage (Volts) int32 pv_cur = 4; // PV current (Amperes) int32 pv_power = 5; // PV power (Watts) int32 pv_energy_total = 6; // Total energy generated by PV (Watt-hours) int32 grid_vol = 7; // Grid voltage (Volts) int32 grid_vol_max = 8; // Maximum grid voltage (Volts) int32 grid_freq = 9; // Grid frequency (Hertz) int32 grid_p = 10; // Grid active power (Watts) int32 grid_q = 11; // Grid reactive power (VAR) int32 grid_i = 12; // Grid current (Amperes) int32 grid_pf = 13; // Grid power factor int32 pv_temp = 14; // PV temperature int32 pv_run_status = 15; // PV running status int32 pv_fault_num = 16; // PV fault number int32 pv_fault_cnt = 17; // PV fault count int32 pv_warning_cnt = 18; // PV warning count int32 pv_link_status = 19; // PV link status int32 pv_send_power = 20; // PV send power (Watts) int32 pv_receive_power = 21; // PV received power (Watts) int32 pv_time = 22; // PV time int32 pv_energy = 23; // PV energy (Watt-hours) int32 mi_signal = 24; // Modulation index signal } message RealDataReqDTO { string dtu_sn = 1; // DTU serial number int32 timestamp = 2; // Timestamp of the data int32 device_number = 3; // Device number int32 pv_number = 4; // PV number int32 package_number = 5; // Package number int32 current_package = 6; // Current package number int32 csq = 7; // Carrier Signal Quality (CSQ) repeated MeterDataMO meter_data = 8; // Meter data array repeated RpDataMO rp_data = 9; // RpDataMO data array repeated PvDataMO pv_data = 10; // PvDataMO data array int32 version = 11; // Version number } message RealDataResDTO { string time_ymd_hms = 1; // Timestamp in the format YMD_HMS int32 package_now = 2; // Package now int32 error_code = 3; // Error code indicator int32 offset = 4; // Offset value int32 time = 5; // Timestamp value }