Skip to main content

Write meter readings to AEMO NEM12 and NEM13 data files

Project description

nem-writer

PyPI version Build Status Coverage Status

Write meter readings to AEMO NEM12 (interval metering data) and NEM13 (accumulated metering data) data files

Accumulated Data (NEM13)

from datetime import datetime
from nemwriter import NEM13

m = NEM13(to_participant='123')
ch = m.add_reading(nmi='123',
                    nmi_configuration='E1B1B2',
                    register_id='1',
                    nmi_suffix='E1',
                    previous_read=412,
                    previous_read_date=datetime(2017,1,1),
                    previous_quality_method='A',
                    current_read=512,
                    current_read_date=datetime(2017,2,1),
                    current_quality_method='A',
                    quantity=100,
                    uom='kWh'
                    )
output = m.output_csv(file_path='output.csv')

Will output:

100,NEM13,201701010101,,123
250,123,E1B1B2,1,E1,,,E,412,201701010000,A,,,512,201702010000,A,,,100,kWh,,,
900

Interval Data (NEM12)

from datetime import datetime
from nemwriter import NEM12

m = NEM12(to_participant='123')
readings = [
    # read end, read value, quality method, event code, event desc
    [datetime(2004, 4, 18, 0, 30), 10.1, 'A', 79, 'Power Outage Alarm'],
    [datetime(2004, 4, 18, 1, 0), 11.2, 'A'],
    [datetime(2004, 4, 18, 1, 30), 12.3, 'A'],
    [datetime(2004, 4, 18, 2, 0), 13.4, 'A'],
]

ch = m.add_readings(nmi='123',
                    nmi_configuration='E1B1B2',
                    nmi_suffix='E1', uom='kWh',
                    interval_length=30,
                    readings=readings)
output = m.output_csv(file_path='output.csv')

Will output:

100,NEM12,201701010101,,123
200,123,E1B1B2,,E1,,,kWh,30,
300,20040418,10.1,11.2,12.3,13.4,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,V,,,,
400,1,1,A,79,Power Outage Alarm
400,2,48,A,,
900

Alternatively, save as a compressed csv in a zip file.

output = m.output_zip(file_path='output.zip')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nemwriter-0.2.1.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nemwriter-0.2.1-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file nemwriter-0.2.1.tar.gz.

File metadata

  • Download URL: nemwriter-0.2.1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for nemwriter-0.2.1.tar.gz
Algorithm Hash digest
SHA256 82bd5ab7e7add30b911ff2730e5c0550075acf34c3d9cff6ee8cbf8cffc378dc
MD5 78c0457dcaa3c09125c1146290318653
BLAKE2b-256 a2dccd289a0efbe80b41d536a2428aa5950211a0e8b11e1949df928ef90a5392

See more details on using hashes here.

File details

Details for the file nemwriter-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: nemwriter-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for nemwriter-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d31d8addb4c908e4710d750703a9259d34414f4153667357132ea7022052c971
MD5 7b624cddbbcdfb3ee7b64f5ed68c0701
BLAKE2b-256 06612bb4f6a179c17a4463d77cd7100a68a108eca0053f700f492ebb2b6d62fe

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page