项目需要,初次接触TwinCAT3,需要基于倍福TwinCAT3实现OPCUA通讯。过程中遇到很多问题,电脑也不知道怎么回事疯狂卡死蓝屏,倍福的相关软件程序都卸载之后就好了。调整心态,重新梳理并安装一次,希望这次可以顺利。
所用电脑:64位Win10,拯救者。
目录
一、软件安装顺序
二、TF6100-OPC-UA安装包
三、OPCUA常用的Client测试工具
四、配置流程
4.1TwinCAT3安装
4.2 TF6100-OPCUA安装
4.3新建PLC项目
4.4创建OPCUA服务
死机问题:
4.5客户端测试
SQLServer(如果需要的话)-->VS-->TwinCAT3-->function(eg:TF6100-OPC-UA)
软件安装的具体过程都可以找的到:TwinCAT 3 入门进阶 安装篇 - 知乎 (zhihu.com)
卸载顺序反过来就成了,卸载TwinCAT3时,建议双击安装包进行卸载,这样会卸载的干净一点。
TWinCAT3安装包,只有3.1.4020之后的版本才支持Windows10。
这个function在官网也可以找到,但是不是一个,是四个部分分开的,目录如下:
在参考安装文档中(2条消息) 基于倍福控制器的TwinCAT3 的OPC_UA通信_卷积神经网络的博客-CSDN博客,使用的是一个安装程序,暂时称其为“四合一”:
这里“四合一”安装完毕之后其中会多一个很有用的SampleClient,建议安装“四合一”,省事一点,这里的路径以及包含内容如下图所示:
首先是TwinCAT OPC UA sample Client,这个在安装上面所说的TF6100“四合一”之后,就会出现的软件,能够以匿名身份访问Server,可用于OPCUA通信测试。
第二个是UaExpert软件,这个OPC UA基金会提供的工具,当编写好server代码后并运行,可以使用UaExpert去和server进行通信,在UaExpert官网下载即可,而且UaExpert能够分不同用户登录访问,对于测试多用户权限比较方便,其界面如下所示:
这里电脑里已经有了VS2017,直接从倍福官网下TwinCAT3,这里注意:TWinCAT3安装包,只有3.1.4020之后的版本才支持Windows10。
TE1000 | TwinCAT 3 Engineering | Beckhoff Worldwide
我用的是:TC31-Full-Setup.3.1.4020.29.exe
(1) 在安装之前要配置一下主板的BIOS:
关闭 Hyper-Threading (Intel Core-i7 支持)的功能,打开 Intel VirtualizationTechnology Extensions (VT-x),功能。这个主要是因为关系到TC3在windows下实现实时内核的问题,网上这要求的,照着做就好了。
(2)安装过程中直接NEXT就行,默认是安装在C盘下,所以C盘要有2G以上的空间。
(3)我的电脑系统中已经装了vs2017,所以会显示下图,勾选2017后next就好了。
(4)这一步正常情况下应该是没有的,就是说VS里缺少一个建模组件(阅读时可以掠过)
解决方法一:在安装完重启之后在VS Installer中安装缺少的组件。
Modeling SDK for Visual Studio - 網域指定的語言 | Microsoft Docs
解决方法二:
Microsoft.VisualStudio.Modeling.Sdk.Diagrams.15.0.dll文件下载,金山毒霸dll修复工具帮您解决文件丢失导致“Microsoft.VisualStudio.Modeling.Sdk.Diagrams.15.0.dll找不到”的系统问题 (ijinshan.com)
(5)完成重启后,开机进入桌面后,会自动出现TC的画面,然后消失,这是正常开机自启动画面。桌面右下角会出现TC的图标。
(6)右击通过TwinCAT XAE(VS2017)界面之后,可以发现TC的实际界面其实就是VS的界面,安装TC相当于给VS加个插件。
基于PC在Twincat3环境下配置OPC UA,Server端需要安装TF6100,版本按实际情况,TF6100安装包使用上面提到的“四合一”,其安装流程如下所示:
右键以管理员身份运行,然后一直无脑next就可以了。
(1)新建项目
(2)授权激活
Order Information(Runtime):试用版和正版激活选项
Manager Licenses:可以手动勾选所需要的 licenses
Project Licenses:当前项目所用到的 licenses
Online Licenses:激活过的 licenses 或者曾经激活过的 licenses
每次授权可以使用七天,时间到了重新授权一遍就好了。然后将所需的Licenses勾选好,这里需要TC1200 PLC、TF6100 OPCUA的许可。
(3)建立PLC
(4)在main中声明变量
双击点开可以发现有上下两块,分别代表变量声明区和程序代码区。
PLC变量声明需要注意,在mian中声明变量,在需要只被OPC UA客户端访问到变量前加{attribute ‘OPC.UA.DA’:=‘1’} ,没加的则不能在OPC UA中访问到
在程序代码区中输入一个“;”(相当于return),如下图所示:
(5)编译
(6)在TwinCAT安装目录下找到win8settick.bat文件,右键选择管理员方式运行,可能会弹出命令窗口,也可能窗口闪退,不用管,然后重启电脑。
(7)激活并login
这里点login之后又卡死了...... 这里尝试一手,加几个核试一试
又卡死,重复一边(6)再试一次---这下不卡了,可以正常进行
(8)Target 设置
(1)首先新建一个OPC server项目,如下所示
(2)然后右键添加一个server项目,如下所示:
(3)在DataAccess中右键添加一个DeviceType:
(4) 首次配置时UA Endpoints选项打勾如下所示,即允许匿名访问、用户名访问,Sercurity验证方式也分成好几类都勾选上,否则匿名访问或者验证方式不对,客户端可能无法连接上。
这里的问题是,这里勾选了匿名,但是在下面选节点的时候也没有nono这个节点,不知道为什么但是不影响使用。--破案了,瞎按Security Access中的Users然后多次尝试连接啥的的就有了。
(5)需要注意的是,如果TwincAT3中没有添加服务的窗口,可在view(视图)—>tools(工具栏)中勾选,如下所示:
(6)视图加载之后,选择添加服务
OPC UA的默认端口号是4840,如果是本地PC的服务就填127.0.0.1:4840,然后按步骤添加,如下所示:
然后是选择Endpoint,理论上:“初次配置的时候,会有好几种验证方式,none是不加密验证的意思”,但是我这里没有NONE,只能是随便选一个。(--之前没有none节点的时候,也不影响使用)
(7)点击连接, 选择Anonymous
然后连着点四个“是”。
Q:这里Connect的操作不连接也可以用客户端搜到节点
Q:这里不知道为啥老是是空的:
重新到了这一步,死机问题也还是无法解决,只要TwinCAT3在后台运行,电脑就可能在任意时刻死机,比如打开qq、wps、vs等等。因为尝试过如果卸载软件之后,死机蓝屏不会再发生,所以排除系统的原因,这里尝试更换不同的TwinCAT3版本试一试--V3.1.4024.12。
TC3介绍及安装: TwinCAT3 历史版本下载合集 (beckhoff.com.cn)
--尝试了,没用,每次都卸载不干净,重复安了几遍c盘十几个g没了。换了旧版之后只要login必卡死,没办法又换回来了,换回来之后,在同一个局域网内不同电脑是可以通过程序读写,访问节点啥的,但是在同一个电脑上,如果通过TwinCAT3当UA服务器,再开一个vs调试的话,调试程序一启动必卡死......
这里使用OPCUA基金会的客户端UAExpert,心态崩了,还是老死机,不想写了,虎头蛇尾先这么结束吧。
上图中的问题是,还是没有那个none,没有锁的连接方法。但是不影响使用,连接了之后,在客户端证书的框里还是啥也没有。
连上之后,就能看到值,然后可以进行监控或者是进行修改也可以。
嗐,这b人生,累了学习容易?容易个P_哔哩哔哩_bilibili