You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻找可将IEEE C37.118标准PMU原始数据转换为DataFrame的Python解析器或PIP包

解析IEEE C37.118 PMU原始数据到DataFrame的Python工具推荐

问题背景

用户提供了遵循IEEE C37.118标准的PMU设备输出的以太网原始报文样本:

15:28:59,420,551 ETHER |0 |f4|03|43|3e|e0|18|00|45|1d|62|5f|f9|08|00|45|00|00|4e|a7|88|00|00|3c|06|35|d3|c0|a8|84|85|0a|14|52|0d|12|68|ee|2c|08|1d|21|f6|27|9a|9b|fa|50|18|20|00|7e|06|00|00|aa|01|00|26|00|06|60|21|58|bb|ff|06|68|20|08|04|f2|48|d7|b1|00|00|00|00|fe|3c|fb|47|fe|37|fb|46|00|04|ff|ff|f2|db|
15:28:59,440,855 ETHER |0 |f4|03|43|3e|e0|18|00|45|1d|62|5f|f9|08|00|45|00|00|4e|a7|8c|00|00|3c|06|35|cf|c0|a8|84|85|0a|14|52|0d|12|68|ee|2c|08|1d|22|1c|27|9a|9b|fa|50|18|20|00|a5|d5|00|00|aa|01|00|26|00|06|60|21|58|bb|ff|06|b6|00|08|04|f2|4d|d7|b0|00|00|00|00|fe|3c|fb|47|fe|37|fb|46|00|04|ff|ff|7d|02|

希望找到Python工具将这些数据转换为结构化的DataFrame。

可行的工具方案

我刚好知道几个适配IEEE C37.118标准的Python工具,完全能满足你的需求:

  • pypmu:这是专门为C37.118协议打造的库,支持解析UDP/TCP传输的PMU原始报文,能直接提取相量、频率、相位、状态字等核心数据。安装方式很简单:

    pip install pypmu
    

    使用时只需要把十六进制报文转换成字节流(比如bytes.fromhex(hex_str)),传入库的解析器,就能得到结构化数据,再把这些数据映射到DataFrame里就搞定了。

  • pmu-tools:这个工具集不仅包含命令行工具,还有Python API可以直接调用。它支持解析C37.118格式的数据,还能做数据转换和可视化。安装命令:

    pip install pmu-tools
    

    它的解析模块会返回字典或者类对象形式的结构化数据,你可以轻松把这些数据转成pandas DataFrame。

  • 基于Scapy的自定义解析:如果上面的库不能完全匹配你的需求,你可以用Scapy先拆解以太网、IP、TCP/UDP层的报文,提取出C37.118应用层的payload,再根据IEEE C37.118的帧格式(帧头、数据块、相量单元等)自己编写解析逻辑。安装Scapy:

    pip install scapy
    

    这种方式灵活性最高,能适配一些自定义的PMU报文变种。

小提示

针对你给出的样本数据,记得先把报文中的非十六进制部分(比如时间戳、"ETHER |0 |"这些)去掉,只保留纯十六进制字符串,再转换成字节流传给解析工具哦。

内容的提问来源于stack exchange,提问作者Hrvoje

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 07:37:37