UA-ModelCompiler 的编译和使用

    UA-ModelCompiler 是OPCFoundation的开源程序,它实现将NodeSet 的xml 文件编译成C# 的类,以便结合到UA Server 中。同时,它也能够将一种简便的模型xml 文档(ModelDesgin.xml) 转换成为NodeSet2.xml 。

最近的项目中要使用UA-ModelCompiler ,尝试它的编译和使用。

该项目的 GitHub :https://github.com/OPCFoundation/UA-ModelCompiler

   遇到问题   

     按照之前的方法,直接下载zip 然后解压下来,使用VS2022 编译没有上面问题,然后按照readme的方法使用发现出现:

UA-ModelCompiler 的编译和使用_第1张图片

 尝试很长时间无法解决。

解决方法

后来按照该文章操作

https://opcua.rocks/step-2-setup-ua-modelcompiler-with-visual-studio/#comment-920

使用Git 下载源代码

git clone https://github.com/OPCFoundation/UA-ModelCompiler.git
cd UA-ModelCompiler
git checkout 8817477c7b481fd6eb6e9cccc05b76e83c7329ba

下载 OPCFoundation UA-Nodeset 的子模型

我们知道OPCFoundation提供了标准的NodeSet ,它们在:

https://github.com/OPCFoundation/UA-Nodeset

      内容是基本的NodeSet 以及行业配套NodeSet,这些NodeSet 在编译ModelCompiler的时候是不需要的,但是在使用的时候是需要的,我上面遇到的问题可能就是没有这些NodeSet。

同样地,使用git下载这些:

PS C:\UA-ModelCompiler> git submodule update --init --recursive

UA-ModelCompiler 的编译和使用_第2张图片

 完成后发现多了一个Published 文件夹。

使用VS2022 打开ModelCompile项目,改为release 模式,生成。

项目属性中,配置改为release

UA-ModelCompiler 的编译和使用_第3张图片

 生成

UA-ModelCompiler 的编译和使用_第4张图片

成功

PS C:\UA-ModelCompiler\Bin\Release> .\Opc.Ua.ModelCompiler.exe compile -d2 E:\yao2023\Model/DemoModel.xml -cg E:\yao2023\Model/DemoModel.csv -o2 E:\yao2023\Model -version v104
PS C:\UA-ModelCompiler\Bin\Release>

在Model 文档中,看到了我想要的东西

UA-ModelCompiler 的编译和使用_第5张图片

 小结

    我并不清楚使用zip下载和git 下载的区别到底在哪里,但是它们确实不太一样。包括下载下列的文件夹都不同。

你可能感兴趣的:(OPCUA,工业4.0)