记使用kepserver模拟opcserver端,使用代码连接kepserver的过程。

记使用kepserver模拟opcserver端,使用代码连接kepserver的过程。

opc存小白,且用的还是不擅长的C#语言。
①下载Kepserver,不多赘述。

②配置OPCUA本地访问KepServer实现【匿名登陆】【https://blog.csdn.net/xiaochenXIHUA/article/details/117070003】
a:
在这里插入图片描述

b:打开【OPC UA 配置】界面编辑默认的服务端点url,如下图配置所示
在这里插入图片描述
c:打开KEPServerEX 6 Configuration软件进行如下设置
在这里插入图片描述
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/aeb9ca3f3e89441b8d3d2f657fc37390.png
d:重新初始化
在这里插入图片描述
③在代码中尝试连接,这段代码大家应该不陌生,直接用的OPC UA的连接方法。

/// <summary>
        /// 无用户名密码登陆,前提服务器登陆不需要用户名密码
        /// </summary>
        /// <param name="opcServerURL"></param>
        /// <returns></returns>
        public bool ConnectOpcServerWithNoPwd(string opcServerURL)
        {
            bool conStatus = false;
            opcUaClient.UserIdentity = new UserIdentity();
            Task t1 = opcUaClient.ConnectServer(opcServerURL);
            Task.WaitAll(t1);
            if (t1.Status == TaskStatus.RanToCompletion)
            {
                conStatus = true;
            }
            else
            {
                conStatus = false;
            }

            return conStatus;
        }

a:首次连接报错
Opc.Ua.ServiceResultException: ApplicationCertificate must be specified.解决必须指定应用程序证书问题。
不知道是不是需要证书。

我就用UaExpert软件尝试连接下KEPserver的服务器

在这里插入图片描述
这个是配置
在这里插入图片描述
b:然后第一次连接还是报错
在这里插入图片描述
添加完成后,UaExpert并未自动连接UA服务器,需要选中UA服务器并点击导航栏的连接图标,才会连接UA服务器。如UA服务器证书属于自签名证书,将弹出如下提示,点击信任服务器证书按钮,点击continue按钮即可。
c:完成后就可以正确访问到kepserver中的信息
在这里插入图片描述
④然后这时候去代码中访问kepserver的信息
此时显示代码可以连接到kepserver
在这里插入图片描述

结论:判断是因为没有kepserver证书属于自签名证书,需要本地信任,但是代码里面不清楚在哪里添加。使用UaExpert后给本地添加了信任文件,然后代码就可以访问了。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值