对于学习上位机开发,有一种通信方式是必须要了解的,那就是OPC是OLE for Process Control的简称,然而随着技术的不断发展,人们开始对它有了新的定义,比如Open Platform Communications,但是无论它怎么定义,它的初衷和目标始终没有改变,就是为了消除自动化软件与硬件平台之间的互操作性的障碍,说白了就是解决上位机与下位机之间的通信问题。本文以KepServer为例,跟大家介绍一下如何基于KepServer实现与S7-1200PLC之间的通信。

1. KepServer软件下载安装

KepServer软件是需要自行安装的,版本也有很多种,很早之前用的可能是4.X版本,但是随着OPCUA的发展,最新的KepServer版本已经达到了6.5,并且支持OPCUA,大家如何需要KepServer软件,可以通过微信搜索喜科堂官方公众号:dotNet工控上位机,发送关键词 KepServer即可。

软件下载之后,安装过程就不多说了,安装之前最好将相关软件退出,或者重启电脑后安装,这里要着重说明一下授权的过程,KepServer本身是商业软件,大家如果是项目使用,建议大家购买正版,如果是学习使用,可以参考授权,授权方式可以通过微信搜索喜科堂官方公众号:dotNet工控上位机,发送关键词 KepServer Crack即可。

2. KepServer配置1200PLC

(1)打开KepServer软件后,通过菜单新建一个项目,然后按照下图进行操作:

图表 1 添加通道

(2)添加设备:添加设备按照向导进行添加,这里的型号选择S7-1200,并设置正确的IP地址,其他默认下一步:

图表 2 添加设备

(3)添加组,如果变量较多,可以按照类型添加组进行分类:

图表 3 添加组

(4)添加标记:KepServer中的标记指的就是OPC变量,直接右击新建标记,然后按照说明填写即可,名称根据需要填写,地址需要按照说明填写,这里以布尔量为例,就填写DB1.DBX4.0这种格式,其他的数据类型根据提示编写。

图表 4 添加标记

(5)保存项目:添加完成之后,直接保存项目,然后通过菜单 >> 运行时 >> 连接实现与PLC之间的连接。

(6)监控变量:连接正常之后,通过点击Quick Client进行监控,点击相应的标记点,即可看到通信数值及通信状态。

图表 5 快速监控

3. 整体总结

本次主要针对基于KepServer实现与西门子S7-1200PLC之间的通信做了较为详尽的描述,其实更多的是配置的问题,大家只要按照步骤去做,一般是没问题的。对于其他不同的PLC或者协议,都是按照这样的步骤去配置即可。KepServer软件的目的是通过配置快速实现与下位机之间的通信,开发者只需要与KepServer服务器进行通信即可,对于一些复杂的协议或者开发者对底层协议不太了解,会有比较大的帮助。

KepServer与S7-1200PLC之间的OPC通信配置的更多相关文章

  1. 基于KepServer实现与S7-1200PLC之间的通信

    对于学习上位机开发,有一种通信方式是必须要了解的,那就是OPC是OLE for Process Control的简称,然而随着技术的不断发展,人们开始对它有了新的定义,比如Open Platform ...

  2. OPC通信原理在数采中的应用

    OPC通信原理在数采中的应用 OPC是Object Linking and Embedding(OLE)for Process Control的缩写,它是微软公司的对象链接和嵌入技术在过程控制方面的应 ...

  3. 父窗口,子窗口之间的JS"通信"方法

    今天需要在iframe内做一个弹窗,但使用弹窗组件的为子窗口,所以弹窗只在子窗口中显示掩膜层和定位,这样不符合需求. 后来晓勇哥指点,了解到一个以前一直没关注到的东西,每个窗口的全局变量,其实都存在对 ...

  4. RPC 编程 使用 RPC 编程是在客户机和服务器实体之间进行可靠通信的最强大、最高效的方法之一。它为在分布式计算环境中运行的几乎所有应用程序提供基础。

    RPC 编程 使用 RPC 编程是在客户机和服务器实体之间进行可靠通信的最强大.最高效的方法之一.它为在分布式计算环境中运行的几乎所有应用程序提供基础.本文介绍 RPC 客户机和服务器之间基本的事件流 ...

  5. 安卓中不同APP之间的消息通信

    昨天在腾讯实习生招聘初试面试时面试官问道我关于两个APP之间相互通信的方式,当时自己回道到了contentProvider与BroadcastReceiver.但他接着问还有没有其它的方式,我跟他说可 ...

  6. Java与C之间的socket通信

    最近正在开发一个基于指纹的音乐检索应用,算法部分已经完成,所以尝试做一个Android App.Android与服务器通信通常采用HTTP通信方式和Socket通信方式.由于对web服务器编程了解较少 ...

  7. Handler主线程子线程之间的互相通信

    Handler主线程子线程之间的互相通信 package com.wyl.dansnote; import android.app.Activity; import android.os.Bundle ...

  8. 用vlan实现同一网段的的各部门之间有的可以通信有的不可以通信

    日前老师上课演示一个项目:实现公司同一网段的各个部门之间有的可以通信有的无法通信.我们用的是思科测试软件模拟操作,个人觉得很好用.       在刚开始做这个项目的时候我以为端口是对应的,如图,交换机 ...

  9. Android设备之间通过Wifi通信

    之前写过PC与Android之间通过WIFI通信(通过Socket,可以在博客里面搜索),PC作为主机,Android作为客户机,现在手头有一台仪器通过wifi传输数据,如果仪器作为主机发射WIFI热 ...

随机推荐

  1. 拉格朗日乘子法与KKT条件

    拉格朗日乘子法 \[min \quad f = 2x_1^2+3x_2^2+7x_3^2 \\s.t. \quad 2x_1+x_2 = 1 \\ \quad \quad \quad 2x_2+3x_ ...

  2. pytest文档58-随机执行测试用例(pytest-random-order)

    前言 通常我们认为每个测试用例都是相互独立的,因此需要保证测试结果不依赖于测试顺序,以不同的顺序运行测试用例,可以得到相同的结果. pytest默认运行用例的顺序是按模块和用例命名的 ASCII 编码 ...

  3. [leetcode] 周赛 211

    比赛题目:https://leetcode-cn.com/circle/discuss/luvHfG/ 两个相同字符之间的最长子字符串 题目:5543. 两个相同字符之间的最长子字符串. 开始理解错题 ...

  4. 【Luogu】P1613 跑路

    [Luogu]P1613 跑路 一.题目 题目描述 小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零.可是小A偏偏又有赖床的坏毛病.于是为了保住自己的工资 ...

  5. Linux系统快速搭建LAMP

    LAMP是 Linux + Apache + MySQL + PHP 的环境要求,即web服务器. 1.前置条件: (1)搭建Linux系统(参考博客:https://www.cnblogs.com/ ...

  6. go panic

    panic 抛出异常 通过recover捕获 类似 php python等语言的try catch package mainimport ( "fmt" "errors& ...

  7. xpath取其中几个使用position

    from lxml import etree html = ''' <!DOCTYPE html> <html lang="en"> <head> ...

  8. HTML5/HTML 4.01/XHTML

    HTML5/HTML 4.01/XHTML 元素和有效的 DTD 下面的表格列出了所有的 HTML5/HTML 4.01/XHTML 元素,以及它们会出现在什么文档类型 (DTD) 中: 标签 HTM ...

  9. 【应用服务 App Service】Azure App Service 中如何安装mcrypt - PHP

    问题描述 Azure App Service (应用服务)如何安装PHP的扩展 mcrypt(mcrypt 是php里面重要的加密支持扩展库) 准备条件 创建App Service, Runtime ...

  10. LIS初级推算(最长上升子序列问题)

    所谓LIS,就是Longest Increasing Subsequence问题 注意,子序列不一定是连续的,举个例子:对于序列10,9,2,3,5,4,7,9,101,18,其中的LIS就是2,3, ...