项目简介
本项目是基于ACAP(Axis Camera Application Platform)和OPC UA(Unified Architecture)的仪表读数系统。利用视频分析技术(借助OpenCV)读取模拟仪表数值,通过内置OPC UA服务器以百分比形式将数值暴露。适用于工业环境中无法添加数字传感器的场景,能通过IP摄像头和基本视频分析自动捕获数字读数并反馈到工业系统。
项目的主要特性和功能
- 视频分析:利用OpenCV进行图像处理,自动读取模拟仪表数值。
- OPC UA服务器:内置OPC UA服务器,将读取数值暴露给外部系统。
- 自动化监控:支持将仪表读数集成到SCADA或PLC系统,实现自动化监控与控制。
- 调试功能:可将视频分析过程中的图像保存到磁盘,便于调试与分析。
- 灵活配置:能通过摄像头的Web界面或脚本配置,如设置仪表校准点和OPC UA服务器端口。
安装使用步骤
1. 构建项目
使用ACAP SDK构建容器和Docker进行项目构建,可通过Makefile简化:
sh
make dockerbuild
或使用并行构建:
sh
make -j dockerbuild
若无Makefile,可直接用Docker命令构建:
sh
DOCKER_BUILDKIT=1 docker build --build-arg ARCH=armv7hf -o type=local,dest=. .
DOCKER_BUILDKIT=1 docker build --build-arg ARCH=aarch64 -o type=local,dest=. .
2. 调试模式
构建时设置DEBUG_WRITE
变量,将视频分析图像保存到磁盘:
sh
DEBUG_WRITE=y make -j dockerbuild
或用Docker命令:
sh
DOCKER_BUILDKIT=1 docker build --build-arg DEBUG_WRITE=y --build-arg ARCH=armv7hf -o type=local,dest=. .
DOCKER_BUILDKIT=1 docker build --build-arg DEBUG_WRITE=y --build-arg ARCH=aarch64 -o type=local,dest=. .
3. 安装和配置
手动安装和配置
- 通过摄像头的Web界面上传ACAP文件(
.eap
扩展名):Apps->Add app。 - 安装后启动ACAP。
- 在Web界面打开ACAP设置页面,设置仪表校准点。
脚本化安装和配置
使用摄像头的applications/upload.cgi
接口上传ACAP文件:
sh
curl -k --anyauth -u root:<password> \
-F packfil=@OPC_UA_Gauge_Reader_<version>_<architecture>.eap \
https://<camera hostname/ip>/axis-cgi/applications/upload.cgi
启动ACAP:
sh
curl -k --anyauth -u root:<password> \
'https://<camera hostname/ip>/axis-cgi/applications/control.cgi?package=opcuagaugereader&action=start'
使用param.cgi
接口设置校准点和OPC UA服务器端口:
sh
curl -k --anyauth -u root:<password> \
'https://<camera hostname/ip>/axis-cgi/param.cgi?action=update&opcuagaugereader.port=4842'
4. 使用
将OPC UA客户端连接到ACAP设置的端口,客户端即可读取仪表数值及其时间戳。ACAP会将仪表数值记录在摄像头的syslog中。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】