Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。
OPC UA(Unified Architecture,统一架构)是下一代的OPC 标准,通过提供一个完整的,安全和可靠的跨平台的架构,以获取实时和历史数据和时间。
OPC UA基于OPC基金会提供的新一代技术,提供安全,可靠和独立于厂商的,实现原始数据和预处理的信息从制造层级到生产计划或ERP层级的传输。通过OPC UA,所有需要的信息在任何时间,任何地点对每个授权的应用,每个授权的人员都可用。这种功能独立于制造厂商的原始应用,编程语言和操作系统。 OPC UA是目前已经使用的OPC 工业标准的补充,提供重要的一些特性,包括如平台独立性,扩展性,高可靠性和连接互联网的能力。
以上是简要介绍相关背景知识,下面讲解如何在linux上安装Qt5.12以及使用qtopcua源码,qtopcua源码基于 OPC UA 规范的C语言开源实现元源码open62541基础上进行在Qt上的二次开发过程,会针对源码中的实例进行展示。
1. 安装Qt5.12
首先需要熟悉自己linux的版本,然后下载qt-opensource-linux-x64-5.12.0.run文件,链接如下:
https://download.qt.io/archive/qt/5.12/5.12.0
打开文件所在目录,改变执行权限,进行安装:
出现安装引导界面,点击 Next,设置安装目录 /opt/Qt5.12.0
继续点击Next 会进行安装,等待安装完成。
安装完成后需要设置环境变量,在终端中执行如下命令:
在文件最后添加如下内容:
最后让修改生效:
- 编译源码qtopcua
在终端分别执行如下指令:
git clone https://code.qt.io/qt/qtopcua.git
cd qtopcua
git checkout 5.12
mkdir build && cd build
qmake ..
make
sudo make install
操作如下:
至此,就可以直接使用qtopcua源码部分,使用qtcreator 打开qtopcua目录下的qt项目:
使用快捷前 Ctrl + R 进行编译。
- 运行源码自带项目
构建子项目opcuaviewer,运行结果如下
构建子项目simulationserver,运行
再然后opcuaviewer进行连接,可以看到实现了opcua 客户端和服务端。
构建子项目waterpump-qml,运行(先运行simulationserver)