littlebot
Published on 2025-04-10 / 3 Visits
0

【源码】基于ESPIDF框架的OPC UA服务器项目

项目简介

本项目是运行在ESP32 - ISO开发板上的OPC UA服务器。该开发板配备以太网接口,并连接了BME280传感器和DHT22传感器。服务器通过GPIO 4和I2C从DHT - 22传感器和BME280传感器读取温度、压力和湿度数据。项目基于ESP - IDF环境构建,兼容FreeRTOS和xtensa - toolchain。

项目的主要特性和功能

  • 传感器数据读取:连接BME280和DHT22传感器,实时读取环境的温度、压力和湿度数据。
  • OPC UA协议支持:采用OPC UA协议进行数据传输,方便与其他系统集成。
  • 以太网通信:支持通过以太网进行通信,可实现远程数据交互。
  • 可扩展性:支持添加新节点、编辑OPC - UA缓冲区和修改idf.py菜单配置设置。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件。

安装步骤

  1. 构建ESP - IDF环境
    • 对于Ubuntu和Debian系统,执行以下命令: bash sudo apt-get install git wget flex bison gperf python3 python3-pip python3-setuptools sudo apt-get install cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 mkdir -p ~/esp cd ~/esp cd ~/esp/esp-idf ./install.sh ../export.sh
  2. 复制OPC - UA项目并构建bash cd ~/esp/esp-idf/examples/ cd opc-ua-with-bme280/ idf.py build
  3. 烧录和监控bash idf.py flash && idf.py monitor 注意:将ESP32通过USB和以太网电缆连接以获取IP和MAC地址。但不要同时将ESP32板与USB和POE以太网连接,这会导致反向电流流入PC。进行监控时请使用不带POE的USB电缆连接,或使用POE以太网连接但不连接USB。
  4. 连接OPC - UA客户端:完成上述步骤后,即可使用OPC - UA客户端连接到服务器进行数据交互。

额外设置

若需要添加新节点、编辑OPC - UA缓冲区或修改idf.py菜单配置设置,请参考:https://gitlab.hzdr.de/alqase03/opc-ua-with-bme280/-/blob/master/Extra_Setup.md 。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】