User Tools

Site Tools


gama300

This is an old revision of the document!


Elgama electricity meters

One model has been tested with the help of custom protocols:

  • GAMA300

There are custom protocol versions for 7bit Mediator devices. Turn to your local representative for more information.

- example.lua
local USEBROADCAST = false -- sw on off broadcast mode
--- OBIS codes  --------------------------------------------------------------------
local obisCache = {                         
 
                                        -- Voltages
                    [3270] = { 0x5, 0x01, 0x02, 0x4F, 0x08 },-- фаза 1
                    [5270] = { 0x5, 0x01, 0x02, 0x50, 0x08 }, --фаза 2
                    [7270] = { 0x5, 0x01, 0x02, 0x51, 0x08 }, --фаза 3 
 
                                        -- Current
                    [3170] = { 0x05, 0x01, 0x02, 0x4b, 0x08 }, -- Ток фаза А 
                    [5170] = { 0x05, 0x01, 0x02, 0x4c, 0x08 }, -- Ток фаза В
                    [7170] = { 0x05, 0x01, 0x02, 0x4d, 0x08 }, -- Ток фаза с
 
					  -- Active power -- obis 15.7.0
                    [170] = { 0x05, 0x01, 0x02, 0x3A, 0x08 } , -- total активной мощности
 
                    [171] = { 0x05, 0x01, 0x02, 0x3F, 0x08 }, -- ph 1 
                    [172] = { 0x05, 0x01, 0x02, 0x43, 0x08 }, -- ph 2
                    [173] = { 0x05, 0x01, 0x02, 0x47, 0x08 }, -- ph 3
 
					-- Активная положительная энергия
		    [180] = { 0x05, 0x01, 0x02, 0x01, 0x08  } , -- суммарной 
 
					   -- Реактивной положительной энергии
                    [380] = { 0x05, 0x01, 0x02, 0x03, 0x08 }, 
 
					   -- Реактивной ОТРИЦАТЕЛЬНАЯ энергия - НОВОЕ
                    [480] = { 0x05, 0x01, 0x02, 0x04, 0x08 }, 
					-- ЧАСТОТА - НОВОЕ
                    [580] = { 0x05, 0x01, 0x02, 0x52, 0x08 }, 
					-- КОЭФ. МОЩНОСТИ 
					[581] = { 0x05, 0x01, 0x02, 0x3E, 0x08 }, 
 
						-- Реактивная мощность положительная
					[582] = { 0x05, 0x01, 0x02, 0x3C, 0x08 }, 
					  -- Реактивная мощность отрицательная 
					[583] = { 0x05, 0x01, 0x02, 0x3D, 0x08 }, 
 
 
                    [181] = { 0x05, 0x01, 0x02, 0x01, 0x20  } , -- Тариф Т1
                    [182] = { 0x05, 0x01, 0x02, 0x01, 0x38 } , -- Тариф Т2
                    [183] = { 0x05, 0x01, 0x02, 0x01, 0x50 } , -- Тариф Т3
                    [184] = { 0x05, 0x01, 0x02, 0x01, 0x68 } , -- Тариф T4
 
 
                    -- Время 
                    [100] = { 0x05, 0x06, 
                                            0x02, 0x68, 0x08, 
                                            0x02, 0x68, 0x18,
                                            0x02, 0x68, 0x20,
                                            0x02, 0x68, 0x28,
                                            0x02, 0x68, 0x30,
                                            0x02, 0x68, 0x38,
                            }, -- получение текущего времени 
                    --[[ 
                    -- Cos fi
                    [3370] = { 0x1, 0x0, 0x21, 0x7, 0x0, 0x0 }, --  фаза А
                    [5370] = { 0x1, 0x0, 0x36, 0x7, 0x0, 0x0 }, --  фаза В
                    [7370] = { 0x1, 0x0, 0x49, 0x7, 0x0, 0x0 }, --  фаза с
 
                    -- Углы 
                    [3371] = { 0x1, 0x0, 0x21, 0x7, 0x0, 0x1 },-- Запрос на получение угла между фазами А и В (ОБИС код- 1, 0, 33, 7, 0, 1;
                    [7371] = { 0x1, 0x0, 0x49, 0x7, 0x0, 0x1 }, -- получение угла между фазами А и C 
                    --]] 
                }
 
SRNMsample =     {0x7E, 0xA0, 0x0A, -- frame type and length
                        0x00, 0x00, -- upper HDLC address 
                        0x00, 0x00, -- lower dest address
                        0x21, -- source address (client) 0x01
                        0x93, -- frame type SNRM
                        0x00, 0x00, -- now CRC
                        0x7E -- HDLC frame closing  flag
                 } 
 
AARQsample = {0x7E, 0xA0, 0x3A, -- frame type and length
            0x00, 0x00, 0x00, 0x00, -- now dest address
            0x21, 0x10,
            0x0, 0x0, -- HEADER  CRC ВРЕМЕННО СТАВИМ ДЛЯ ПРОВЕРКИ Ф . !!! 0x67, 0x26,
            0xE6, 0xE6, 0x00, -- llc 
            0x60, 0x29, -- tag and length
            0xa1, 0x09, 0x06, 0x07, 0x60, 0x85, 0x74, 0x05, 0x08, 0x01, 0x02,
            0xa6, 0x0a, 0x04, 0x08, 0x45, 0x47, 0x4d, 0x30, 0x35, 0x38, 0x32, 0x39, 
            0xBE, 0x10, 0x04, 0x0E, 0x01, 0x0, 0x0, 0x0, 0x06, 
            0x5F, 0x1F, 0x04, 0x00, 0x1C, 0x1B, 0x20, 
            0x0, 0x80, --  
            0x0, 0x0, -- CRC
            0x7E}; 
 
DSCsample = {0x7E, 0xA0, 0x0A, -- frame type and length
            0x00, 0x00, 0x00, 0x00, -- now dest address
            0x21, 
            0x53,
            0x00, 0x00, -- now CRC
            0x7E};        
 
local err_cnt = 0;
local step_Ok = 0;
local alreadyRead = false;   -- флаг выполнения полного чтения 
local timeStmp = 0;          -- метка времени между полными чтениями 
local POLLTIME = 60; -- время опроса в секундах
 
--------------------------------------------------------------------
-- КЕШ ответов
 
local repliesCache = {}; -- сюда копируем ответы при полном чтении 
 
---------------------------------------------------------------------
function createDevices ()
  --                                                             OBIS code 
  addDevice({name = "R",  shift = 0, base = 10, xtraFields = {96, 1, 3, 0, 0}});  -- запрос о типе  счетчика 
end
gama300.1636455360.txt.gz · Last modified: 2021/11/09 10:56 by emozolyak

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki