libiec61850 安装和配置指南
### 项目介绍libiec61850 是一个开源的 IEC 61850 协议库,用于实现 IEC 61850 标准的客户端和服务器应用程序。该库支持多种协议,包括 MMS、GOOSE 和 SV,适用于嵌入式系统和 PC 上的 Linux、Windows 和 MacOS 操作系统。该库已在许多商业软件产品和设备中成功使用。### 主要编程语言libiec61850 主要使用 C 语言编写,
libiec61850 安装和配置指南
1. 项目基础介绍和主要编程语言
项目介绍
libiec61850 是一个开源的 IEC 61850 协议库,用于实现 IEC 61850 标准的客户端和服务器应用程序。该库支持多种协议,包括 MMS、GOOSE 和 SV,适用于嵌入式系统和 PC 上的 Linux、Windows 和 MacOS 操作系统。该库已在许多商业软件产品和设备中成功使用。
主要编程语言
libiec61850 主要使用 C 语言编写,遵循 C99 标准,以确保最大程度的可移植性。此外,该项目还提供了 C#/.NET 的 API,方便开发者使用 C# 语言进行开发。
2. 项目使用的关键技术和框架
关键技术
- MMS (Manufacturing Message Specification): 用于设备之间的通信
- GOOSE (Generic Object Oriented Substation Event): 用于快速传输数据
- SV (Sampled Values): 用于传输采样数据
- TLS (Transport Layer Security): 提供安全的通信通道
- R-session 协议: 支持 R-GOOSE/R-SMV(测试版)
- SNTP 客户端: 简单网络时间协议客户端(测试版)
框架
- mbedTLS: 用于实现 TLS 支持
- SQLite: 用于日志服务的实现
- WinPcap: 在 Windows 上支持 GOOSE 功能
3. 项目安装和配置的准备工作和详细安装步骤
准备工作
3.1 Linux 系统准备
sudo apt-get update
sudo apt-get install build-essential cmake
3.2 Windows 系统准备
- 下载并安装 Visual Studio
- 下载并安装 CMake
- 下载并安装 WinPcap
详细安装步骤
3.3 下载项目源码
git clone https://gitcode.com/gh_mirrors/li/libiec61850.git
cd libiec61850
3.4 构建项目
3.4.1 Linux 系统构建
mkdir build
cd build
cmake ..
make
3.4.2 Windows 系统构建(使用 Visual Studio)
mkdir build
cd build
cmake -G "Visual Studio 16 2019" .. -A x64
3.5 构建示例程序
在项目根目录执行:
make examples
3.6 安装库和 API 头文件
3.6.1 Linux 系统安装
sudo make install
默认安装路径为 /usr/local,可以通过设置 INSTALL_PREFIX 环境变量来修改安装路径:
make INSTALL_PREFIX=/usr/local install
3.6.2 Windows 系统安装
在 Visual Studio 中,选择 INSTALL 项目并进行构建。默认安装路径为 C:\Program Files (x86)\libiec61850,可以通过修改 CMAKE_INSTALL_PREFIX 变量来更改安装路径。
3.7 TLS 支持配置
3.7.1 使用 mbedTLS 2.28
下载 mbedtls-2.28 并放置到 third_party/mbedtls 文件夹中,然后执行:
make WITH_MBEDTLS=1
3.7.2 使用 mbedTLS 3.6
下载 mbedtls-3.6.0 并放置到 third_party/mbedtls 文件夹中,然后执行:
make WITH_MBEDTLS3=1
3.8 Windows GOOSE 支持配置
- 下载并安装 WinPcap,确保 WinPcap 驱动在启动时加载
- 重启系统
- 下载 WinPcap 开发包并解压
- 将
Lib和Include文件夹复制到third_party/winpcap目录
4. 验证安装
安装完成后,可以运行示例程序来验证安装是否成功:
cd examples/server_example_basic_io
sudo ./server_example_basic_io
在 Windows 上,可以在 Visual Studio 中运行示例程序。
5. 使用 SQLite 日志服务
libiec61850 提供了 IEC 61850 日志服务的支持,并包含一个使用 SQLite 的日志驱动。要使用该功能,需要将 src/logging/drivers/sqlite/log_storage_sqlite.c 文件包含到应用程序构建中。
在 Ubuntu Linux 上,安装 SQLite 开发包:
sudo apt-get install libsqlite3-dev
对于其他操作系统,可以从 SQLite 官网 下载源码并复制到 third_party/sqlite 文件夹。
6. C# API 使用
C#/.NET 包装器和示例位于 dotnet 文件夹中。这些示例和 C# 包装器 API 可以在 .NET 或 Mono 上构建和运行。
7. Python 绑定
实验性的 Python 绑定可以使用 SWIG 和 cmake 创建。要启用绑定,需要使用 ccmake 或 cmake-gui 选择 Python 配置选项。
总结
通过以上步骤,您已经成功安装并配置了 libiec61850 库。现在可以开始使用该库来开发符合 IEC 61850 标准的客户端和服务器应用程序。该库提供了丰富的功能和灵活的配置选项,能够满足各种工业自动化应用的需求。
openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。
更多推荐



所有评论(0)