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.1.0.tar.gz (52.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.1.0-py3-none-any.whl (85.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for py3comtrade-4.1.0.tar.gz
Algorithm Hash digest
SHA256 61025796de5001e416f72e6b52f15b81a4ddcdc762d09ed0e74e9bbc3009fc1d
MD5 cc1332f6b241246e520b245679631db7
BLAKE2b-256 a9d789b04a90ad86b1fb8de8e95705f4e8f030d844e331026c7005b6d87600e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for py3comtrade-4.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eaaa264ff847a18203d751ef760aa38f83ff61371f7f78c015ede82ea16ab945
MD5 0348db31e7bdaa05908dcb1f826bb0cd
BLAKE2b-256 008329f178694a423502f9e2e408cf09795212fe1bd75e479aaabe7b06856654

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