Skip to main content

Pacote para trabalhar com arquivos FK7 de medidores de energia elétrica.

Project description

fk7py

Conjunto de scripts python para leitura e interpretação de arquivos FK7 de acordo com a norma ABNT NBR 14522.

🎯 Objetivo

Este projeto tem como objetivo facilitar a leitura e interpretação de arquivos FK7. Os scripts deste projeto interpretam o arquivo FK7 de acordo com o que é apresentado na norma ABNT NBR 14522.

🖥️ QuickStart

pip install fk7py
from fk7py import FK7

caminho_do_arquivo_FK7 = 'C:/caminho/do/arquivo'

arquivo = FK7(caminho_do_arquivo)

# Imprime o número do medidor
print(arquivo.serial_medidor)  # Saída: 00000000

🧩 Interpretação dos Dados

Veja o progresso da interpretação dos dados no arquivo:

👉 Tabela de Dados Interpretados

🌟 Componentes Básicos

Atributos

caminho_arquivo -> string

String com o caminho do arquivo.

dado_bruto -> string

Dados do arquivo FK7 sem nenhum tratamento.

hex_blocos -> list

Dados do arquivo FK7 já convertidos em hexadecimais e separados em blocos de 256 octetos.

enum_blocos -> list

Lista de blocosdo arquivo FK7 já convertidos em hexadecimais. Cada bloco com sua posição enumerada de 1 até 256.

qtd_blocos -> int

Quantidade de blocos (de 256 octetos) encontrados no arquivo FK7.

bloco_presente -> dict

Verifica a presença de blocos específicos. O tipo do bloco é determinando pelo primeiro octeto, podendo ser uma das opções a seguir:

'20', '21', '22', '51', '23', '24', '41', '44', '42', '43', '45', '46', '25', '26', '27', '52', '28', '80', '14'

Este atributo vem em forma de dicionário, onde as chaves são os octetos e os valores são True/False, sendo True indicando que o bloco está presente no arquivo FK7.

print(arquivo.bloco_presente['20']) # Saída: True
serial_medidor -> int

Número serial do medidor.

data_hora_atual -> datetime

Data e hora encontrada no arquivo FK7.

Métodos

Interpretação de bloco

lerBlocos(bloco)

Recebe o bloco em formato de dicionário. Este argumento deve ser um item do atributo 'enum_blocos'.

Exemplo de uso:

arquivo = FK7('C:/caminho/do/arquivo')

dados = arquivo.lerBloco(arquivo.enum_blocos[0])

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

fk7py-0.1.2.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

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

fk7py-0.1.2-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file fk7py-0.1.2.tar.gz.

File metadata

  • Download URL: fk7py-0.1.2.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for fk7py-0.1.2.tar.gz
Algorithm Hash digest
SHA256 34bd8365233ac2fd5500483aa19603c3caee8ef3abffff3eb46d563e8edc3ae1
MD5 30c4fbd32f5e149a49d049201529dcb5
BLAKE2b-256 ea694ba2d3cd52e64a0a1a153f1f4d42441bcb2d2a9def7aac202ffe5fcecfc1

See more details on using hashes here.

File details

Details for the file fk7py-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: fk7py-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for fk7py-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 223f4a9c443809a5863d07c2bea04c445749928b87679cea3c43dad247b14106
MD5 9736cfcb5d0e6cafbad48d09c6b8e2b7
BLAKE2b-256 6ea4b991f18c3060cb4c1102c5c4bf75282afa95eec86f778bfad0b0eef56a01

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