项目简介
本项目是运行在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菜单配置设置。
安装使用步骤
前提条件
假设用户已经下载了本项目的源码文件。
安装步骤
- 构建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
- 对于Ubuntu和Debian系统,执行以下命令:
- 复制OPC - UA项目并构建:
bash cd ~/esp/esp-idf/examples/ cd opc-ua-with-bme280/ idf.py build
- 烧录和监控:
bash idf.py flash && idf.py monitor
注意:将ESP32通过USB和以太网电缆连接以获取IP和MAC地址。但不要同时将ESP32板与USB和POE以太网连接,这会导致反向电流流入PC。进行监控时请使用不带POE的USB电缆连接,或使用POE以太网连接但不连接USB。 - 连接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】