Skip to main content

解析comtrade中的cfg、dat、dmf等文件,提供配置文件中通道数量,的解析、数值计算和文件合并功能。

Project description

一、 py3comtrade项目介绍

本项目是采用python解析comtrade文件,可实现CFG、DAT、DMF文件的解析、数值计算和格式另存功能。暂未对2017版本中的CFF格式文件进行解析,后续会进行补充。

本项目采用uv进行管理,也可以根据pyproject.toml中配置的依赖进行安装。

二、py3comtrade模块介绍

序号 模块名 描述
1 model 配置文件类:配置文件头、通道数量、模拟量通道、开关量通道、采样点信息、采样段信息、故障时间和变比因子
2 reader comtrade文件读取模块,可读取cfg、dat、dmf文件,返回Comtrade对象
3 computation 计算模块:可进行傅里叶变换、向量值计算、有效值计算、角度计算、序分量计算、相量转序分量、阻抗计算、故障零时刻计算等
4 utils 工具模块:提供文件工具、角度计算、数据保存等工具

三、环境配置

  • python版本要求3.10以上,推荐使用3.12
  • 本项目采用uv进行项目管理,也可以使用其他工具进行管理,具体的依赖包见pyproject.toml

源代码仓库

3.1 配置模块开发环境

# 安装uv项目管理,如已安装,则跳过模块
pip install uv
# 拉取项目代码
git clone https://github.com/zhangsonggui/comtradeOfPython.git
# 进入项目目录
cd comtradeOfPython
#根据pyproject.toml创建虚拟环境,安装依赖包
uv venv

# 打包whl
uv build

3.2 模块使用

使用uv新建项目

    # 新建目录
    mkdir project_name
    # 指定项目使用的python版本,如果不指定,默认使用当前操作系统版本最高的python版本
    uv python pin 3.10
    # 初始化项目
    uv init
    # 安装模块,不在加版本号,默认安装最新版本
    uv add py3comtrade
    
    # 安装本地whl包
    uv pip install 本地目录\py3comtrade-4.0.5.1-py3-none-any.whl

原有系统安装依赖包

    # 使用pip安装
    pip install py3comtrade
    # 使用uv安装
    uv add py3comtrade
    # 安装本地whl包
    uv pip install 本地目录\py3comtrade-4.0.5.1-py3-none-any.whl

使用示例

from py3comtrade.reader.comtrade_reader import comtrade_reader
from py3comtrade.model.type.types import ChannelType, IdxType

# comtrade路径,包含后缀名
comtrade_file_path = 'comtrade_file_path'
# 默认读取comtrade所有类型的文件,如果只读取cfg文件,可以使用read_mode参数ReadMode.CFG
record = comtrade_reader(comtrade_file_path)

# 获取变电站名称
station_name = record.header.station_name
# 获取通道对象,可以通过模拟量通道的an标识或索引顺序号获取模拟量通道对象
analog = record.get_channel_obj(1, ChannelType.ANALOG, IdxType.CFGAN)
# 根据模拟量通道获取瞬时值,默认获取改通道全部采样点的数据
record.get_channel_instant_data_range()

五、参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

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

py3comtrade-4.2.3.tar.gz (61.1 kB view details)

Uploaded Source

Built Distribution

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

py3comtrade-4.2.3-py3-none-any.whl (93.2 kB view details)

Uploaded Python 3

File details

Details for the file py3comtrade-4.2.3.tar.gz.

File metadata

  • Download URL: py3comtrade-4.2.3.tar.gz
  • Upload date:
  • Size: 61.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.12

File hashes

Hashes for py3comtrade-4.2.3.tar.gz
Algorithm Hash digest
SHA256 f3b0054abbc3e6e8ee0b4140135e140c78bbb4e0226bf8448eef4d3f0a14ef10
MD5 9d9a56642798acc570aac38a83d905f6
BLAKE2b-256 f2bb33bb7644f7a530a45c5fa1e9e0dc565faaa7bd5ba76581404bcd9109569f

See more details on using hashes here.

File details

Details for the file py3comtrade-4.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for py3comtrade-4.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f1693169876252d3ad3846619a5c4f28d7e79e2b53263ad5112c5f0366e5e0c5
MD5 4e3589313f2869809598fa703cd898bb
BLAKE2b-256 ac21a9fea6d917a84f1bc5405fbf1e790ef28b95ea09f1013542ddfa7b64941d

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