Merge pull request #30 from jk-5/sagemcom-t210-d
Added missing values for 3-phase sagemcom TD210-D meter
This commit is contained in:
		
						commit
						8582395017
					
				| @ -17,6 +17,7 @@ EQUIPMENT_IDENTIFIER = r'\d-\d:96\.1\.1.+?\r\n' | ||||
| CURRENT_ELECTRICITY_USAGE = r'\d-\d:1\.7\.0.+?\r\n' | ||||
| CURRENT_ELECTRICITY_DELIVERY = r'\d-\d:2\.7\.0.+?\r\n' | ||||
| LONG_POWER_FAILURE_COUNT = r'96\.7\.9.+?\r\n' | ||||
| SHORT_POWER_FAILURE_COUNT = r'96\.7\.21.+?\r\n' | ||||
| POWER_EVENT_FAILURE_LOG = r'99\.97\.0.+?\r\n' | ||||
| VOLTAGE_SAG_L1_COUNT = r'\d-\d:32\.32\.0.+?\r\n' | ||||
| VOLTAGE_SAG_L2_COUNT = r'\d-\d:52\.32\.0.+?\r\n' | ||||
| @ -24,6 +25,12 @@ VOLTAGE_SAG_L3_COUNT = r'\d-\d:72\.32\.0.+?\r\n' | ||||
| VOLTAGE_SWELL_L1_COUNT = r'\d-\d:32\.36\.0.+?\r\n' | ||||
| VOLTAGE_SWELL_L2_COUNT = r'\d-\d:52\.36\.0.+?\r\n' | ||||
| VOLTAGE_SWELL_L3_COUNT = r'\d-\d:72\.36\.0.+?\r\n' | ||||
| INSTANTANEOUS_VOLTAGE_L1 = r'\d-\d:32\.7\.0.+?\r\n' | ||||
| INSTANTANEOUS_VOLTAGE_L2 = r'\d-\d:52\.7\.0.+?\r\n' | ||||
| INSTANTANEOUS_VOLTAGE_L3 = r'\d-\d:72\.7\.0.+?\r\n' | ||||
| INSTANTANEOUS_CURRENT_L1 = r'\d-\d:31\.7\.0.+?\r\n' | ||||
| INSTANTANEOUS_CURRENT_L2 = r'\d-\d:51\.7\.0.+?\r\n' | ||||
| INSTANTANEOUS_CURRENT_L3 = r'\d-\d:71\.7\.0.+?\r\n' | ||||
| TEXT_MESSAGE_CODE = r'\d-\d:96\.13\.1.+?\r\n' | ||||
| TEXT_MESSAGE = r'\d-\d:96\.13\.0.+?\r\n' | ||||
| DEVICE_TYPE = r'\d-\d:24\.1\.0.+?\r\n' | ||||
|  | ||||
| @ -96,6 +96,7 @@ V5 = { | ||||
|         obis.CURRENT_ELECTRICITY_USAGE: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_ELECTRICITY_DELIVERY: CosemParser(ValueParser(Decimal)), | ||||
|         obis.LONG_POWER_FAILURE_COUNT: CosemParser(ValueParser(int)), | ||||
|         obis.SHORT_POWER_FAILURE_COUNT: CosemParser(ValueParser(int)), | ||||
|         # POWER_EVENT_FAILURE_LOG: ProfileGenericParser(), TODO | ||||
|         obis.VOLTAGE_SAG_L1_COUNT: CosemParser(ValueParser(int)), | ||||
|         obis.VOLTAGE_SAG_L2_COUNT: CosemParser(ValueParser(int)), | ||||
| @ -103,6 +104,12 @@ V5 = { | ||||
|         obis.VOLTAGE_SWELL_L1_COUNT: CosemParser(ValueParser(int)), | ||||
|         obis.VOLTAGE_SWELL_L2_COUNT: CosemParser(ValueParser(int)), | ||||
|         obis.VOLTAGE_SWELL_L3_COUNT: CosemParser(ValueParser(int)), | ||||
|         obis.INSTANTANEOUS_VOLTAGE_L1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_VOLTAGE_L2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_VOLTAGE_L3: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_CURRENT_L1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_CURRENT_L2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_CURRENT_L3: CosemParser(ValueParser(Decimal)), | ||||
|         obis.TEXT_MESSAGE: CosemParser(ValueParser(str)), | ||||
|         obis.DEVICE_TYPE: CosemParser(ValueParser(int)), | ||||
|         obis.INSTANTANEOUS_ACTIVE_POWER_L1_POSITIVE: CosemParser(ValueParser(Decimal)), | ||||
|  | ||||
| @ -87,6 +87,12 @@ class TelegramParserV5Test(unittest.TestCase): | ||||
|         assert isinstance(result[obis.LONG_POWER_FAILURE_COUNT].value, int) | ||||
|         assert result[obis.LONG_POWER_FAILURE_COUNT].value == 0 | ||||
| 
 | ||||
|         # SHORT_POWER_FAILURE_COUNT (1-0:96.7.21) | ||||
|         assert isinstance(result[obis.SHORT_POWER_FAILURE_COUNT], CosemObject) | ||||
|         assert result[obis.SHORT_POWER_FAILURE_COUNT].unit is None | ||||
|         assert isinstance(result[obis.SHORT_POWER_FAILURE_COUNT].value, int) | ||||
|         assert result[obis.SHORT_POWER_FAILURE_COUNT].value == 13 | ||||
| 
 | ||||
|         # VOLTAGE_SAG_L1_COUNT (1-0:32.32.0) | ||||
|         assert isinstance(result[obis.VOLTAGE_SAG_L1_COUNT], CosemObject) | ||||
|         assert result[obis.VOLTAGE_SAG_L1_COUNT].unit is None | ||||
| @ -123,6 +129,42 @@ class TelegramParserV5Test(unittest.TestCase): | ||||
|         assert isinstance(result[obis.VOLTAGE_SWELL_L3_COUNT].value, int) | ||||
|         assert result[obis.VOLTAGE_SWELL_L3_COUNT].value == 0 | ||||
| 
 | ||||
|         # INSTANTANEOUS_VOLTAGE_L1 (1-0:32.7.0) | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_VOLTAGE_L1], CosemObject) | ||||
|         assert result[obis.INSTANTANEOUS_VOLTAGE_L1].unit == 'V' | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_VOLTAGE_L1].value, Decimal) | ||||
|         assert result[obis.INSTANTANEOUS_VOLTAGE_L1].value == Decimal('230.0') | ||||
| 
 | ||||
|         # INSTANTANEOUS_VOLTAGE_L2 (1-0:52.7.0) | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_VOLTAGE_L2], CosemObject) | ||||
|         assert result[obis.INSTANTANEOUS_VOLTAGE_L2].unit == 'V' | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_VOLTAGE_L2].value, Decimal) | ||||
|         assert result[obis.INSTANTANEOUS_VOLTAGE_L2].value == Decimal('230.0') | ||||
| 
 | ||||
|         # INSTANTANEOUS_VOLTAGE_L3 (1-0:72.7.0) | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_VOLTAGE_L3], CosemObject) | ||||
|         assert result[obis.INSTANTANEOUS_VOLTAGE_L3].unit == 'V' | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_VOLTAGE_L3].value, Decimal) | ||||
|         assert result[obis.INSTANTANEOUS_VOLTAGE_L3].value == Decimal('229.0') | ||||
| 
 | ||||
|         # INSTANTANEOUS_CURRENT_L1 (1-0:31.7.0) | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_CURRENT_L1], CosemObject) | ||||
|         assert result[obis.INSTANTANEOUS_CURRENT_L1].unit == 'A' | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_CURRENT_L1].value, Decimal) | ||||
|         assert result[obis.INSTANTANEOUS_CURRENT_L1].value == Decimal('0.48') | ||||
| 
 | ||||
|         # INSTANTANEOUS_CURRENT_L2 (1-0:51.7.0) | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_CURRENT_L2], CosemObject) | ||||
|         assert result[obis.INSTANTANEOUS_CURRENT_L2].unit == 'A' | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_CURRENT_L2].value, Decimal) | ||||
|         assert result[obis.INSTANTANEOUS_CURRENT_L2].value == Decimal('0.44') | ||||
| 
 | ||||
|         # INSTANTANEOUS_CURRENT_L3 (1-0:71.7.0) | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_CURRENT_L3], CosemObject) | ||||
|         assert result[obis.INSTANTANEOUS_CURRENT_L3].unit == 'A' | ||||
|         assert isinstance(result[obis.INSTANTANEOUS_CURRENT_L3].value, Decimal) | ||||
|         assert result[obis.INSTANTANEOUS_CURRENT_L3].value == Decimal('0.86') | ||||
| 
 | ||||
|         # TEXT_MESSAGE (0-0:96.13.0) | ||||
|         assert isinstance(result[obis.TEXT_MESSAGE], CosemObject) | ||||
|         assert result[obis.TEXT_MESSAGE].unit is None | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user