【PLC】KingView入门及组态开发

0 前言

  组态开发可以说是PLC控制中不可或缺的一部分,堪称PLC的灵魂之一。对于组态(Configuration)这个词,也不知道当时是怎么翻译的,个人粗浅的理解就是:组态实际上就是机器运行的状态,所以组态程序需要实现的功能就是采集工业现场运行的数据,能够监视机器运行状态(并做出报警等操作),同时提供一些控制接口给工业操作人员。其实质上就是工厂中使用的上位机
  这里使用的组态软件是国内比较流行的国产软件——组态王KingView,搭配OMRON NX1P系列PLC(实验室的配置)

1 前期教程

2 软件下载与安装

  安装软件肯定首选官网——http://www.kingview.com/,然后找到下载中心中的软件下载。在这里插入图片描述
然后找到组态王7.5(据说这个版本之后就不再更新了),点击下载。
在这里插入图片描述
安装的时候,如果没什么特别的需求,安装这两个即可:
在这里插入图片描述
  这个软件如果不购买授权每次只有两小时的使用时间,且每次重新进入软件都可以刷新时长,对于学习使用来说基本足够。

3 新建工程

  安装好软件之后,接下来就可以建立一个工程,为方便起见,如果与之配套的PLC只有一种型号,建议先建立一个工程模板,这样其他工程只需要复制该模板即可
  首先打开工程管理器,可以看到此时软件自带了两个Demo,可以打开学习一下。新建工程时,点击工具栏按钮“新建”,然后选择工程所在路径及工程对应的名称,建立完工程之后,就可以在列表中看到建立的工程“Test”,如下图所示。
在这里插入图片描述
然后选中该工程,点击工具栏按钮“开发”,此时会提示是否将该工程设置为当前工程,点击是即可,因为开发一个工程必须将其设置为当前工程,标志就是列表左侧有一个小旗帜。
  点击开发之后,会弹出一个授权配置的窗口,如下图所示。如果没有特殊需求,选择演示模式即可,也不要白费力气去找破解版了,一个是找不到(我试过),一个是没有必要,因为除了时长外无授权模式没有任何限制功能。
在这里插入图片描述
  进入开发系统之后,主要使用的功能就是左侧那一列按钮,但是如果只是入门的话,其实会使用到的比较少,如下图所示。
在这里插入图片描述
  其中,红色方框圈出来的比较常用,下面将分别介绍

4 常用功能介绍

4.1 添加设备

  建立一个组态工程,首先需要添加一个设备(或者多个),主要用于为这个组态工程提供数据和变量支持。或者说就是组态软件需要交互的PLC设备。
  添加设备时,单击COM1或COM2,然后点击右边出现的新建按钮,即可添加设备。
在这里插入图片描述
  需要注意的是,在添加设备前,需要设置串口格式。双击COM1或COM2,会弹出一个串口格式设置的窗口,建议和所使用的设备串口格式一致。
在这里插入图片描述

4.2 数据词典

  数据词典集合了整个组态工程所使用到的变量,包括内部变量和外部变量。新建一个变量时,首先点击数据词典进入变量列表,然后双击新建,如下图所示。
在这里插入图片描述
在这里插入图片描述
需要注意的是,这里的变量类型分为内存变量和IO变量,内存变量即组态王软件内部的变量,而IO变量即是和外部设备(如PLC)交互的变量,因此,如果定义IO变量,则需要指定连接设备、寄存器和数据类型(PLC中的数据类型),如下图所示。
在这里插入图片描述

补充一点:对于NX1P来说,寄存器的格式为 “REGxxx”,其中,xxx为变量在PLC中的名字,且该变量要设置为网络公开(通过Ethernet进行变量交互)

4.3 命令语言

  所谓命令语言,即是组态王运行期间所执行的程序。其语法和C语言差不多,对于已掌握C语言的人来说上手非常简单。点开命令语言的加号,可以看到有多种命令语言,但常用的主要是两种:应用程序命令语言和自定义函数命令语言,如下图所示。
在这里插入图片描述
这两者的关系可以理解为一个是主程序,一个是供调用的自定义函数。
  进入命令程序语言,可以看到有三个选项和一个时间,如下图所示。
在这里插入图片描述
不难理解,启动时就是初始化时执行的程序,运行时就相当于是while(1)死循环中执行的程序,而每3000毫秒即是程序每个循环之后延时的时间,这个值必须大于等于55。如果觉得字体难看,还可以点击上面那个“字”,来修改字体。
  此外,还需要提一下自定义函数命令语言。
在这里插入图片描述
如上图所示,自定义函数时,返回值类型只能为VOID,LONG,FLOAT,BOOL,STRING,同样,参数类型也只能支持这几种!!! 虽然在数据词典中定义变量时可以定义INT类型的数据,但是自定义函数却不允许。另外,函数的参数名及函数中出现的变量名都不能和数据词典中的变量相冲突!!! 这里不区分局部变量和全局变量!!!

4.4 画面

  所谓画面,就是在组态王运行起来时显示的界面,可以有多个画面。在点击画面,再点击右边的新建,即可得到一个画面。一般只需要增加画面名称即可。
在这里插入图片描述
这个窗口还可以在建立完画面之后在画面右键,然后点击画面属性打开。
在这里插入图片描述
值得一提的是,每个画面也可以添加命令语言,在属性界面,点击命令语言,即可进入到和上面命令语言相似的界面。
在这里插入图片描述
这个命令语言和上面的那个的区别只在于这个命令语言只在本画面运行期间执行,如果工程中只有一个画面的话,那两者基本没有区别。

  建立好画面之后,接下来就是利用工具箱图库来设计画面,其中图库可以按F2打开;工具箱可以用F10切换隐藏或显示。
工具箱
在这里插入图片描述
设计好画面后,点击画面菜单栏“文件”,选择“全部存”和“切换到View”。即可运行。
在这里插入图片描述

补充:对于NX1P来说,运行组态前要打开Sysmac Gateway。

4.5 设置运行系统

  画面建立完毕后,每次运行(切换到View)时还需要打开画面,比较麻烦。这里可以在设置运行系统中选择默认打开的主画面。
在这里插入图片描述
此外,“特殊”页面中还可以设置运行系统的基准频率和时间变量更新频率,如下图所示。
在这里插入图片描述
对于这个设置我试过好像影响不大,所以个人不建议修改这个设置,保持默认即可。

不过与之有关的是数据词典中定义变量时设置的更新频率,建议修改得高一点。

4.6 总结

  根据上面的表述,可以将组态设计的过程总结为下图:
在这里插入图片描述

5 画面设计【重点!】

  根据以上表述,可以看出,一个组态工程的关键就在于画面的设计,即能够显示的东西。因此下面将挑一些常用的功能进行讲述。【这一部分也会随着学习不断更新

5.1 指示灯

  首先在图库中添加一个指示灯
在这里插入图片描述
然后双击即可添加其关联的变量
在这里插入图片描述

5.2 动画连接

  所谓动画连接,即是能让一些控件实现动画显示,而不再是静态的。进入动画连接最简单的方式就是双击控件,但有些控件得到的缺是和上面指示灯类似的界面,即只需要关联一个变量即可。动画连接设置如下图所示。
在这里插入图片描述
可以发现,对于不同的控件,其动画连接中可以选的属性也不同,比如上面这个是一个矩形方块,因此有水平、垂直移动,而如果是管道,则可以添加流动属性,如果是文本,可以添加模拟值输出的属性。
  下面以水平和垂直移动为例来演示动画连接的使用方法。点击水平移动连接,得到下图
在这里插入图片描述
这几个选项的意思是:表达式对应值为“最左边”(0)时,那么该方块在当前位置向左移动0;表达式对应值为“最右边”(100)时,该方块在当前位置向右移动100个像素;如果表达式的值介于两者直接,则用线性比例确定(类似于map函数);如果表达式的值小于0或大于100,方块仍处于最左边和最右边,相当于限位

5.3 实时趋势曲线

  显示某些变量随时间变化的曲线。
在这里插入图片描述

5.4 XY曲线控件

  用于显示任意两个变量之间的关系曲线。
在这里插入图片描述
具体使用方法可以参考下面的参考链接。

6 其他问题

6.1 变量无法删除?

  之前编辑一个工程时,发现删除一个变量时,提示该变量正在使用,然后我去画面中删掉和它相关的代码和控件后,再删除变量发现仍然报相同的错误,最后找到原因:没有更新变量
  首先关闭正在编辑的画面,如下图所示。
在这里插入图片描述
然后回到主界面,在菜单栏中选择“工具”,点击更新变量计数,如下图所示,这样即可更新变量,然后再删除未使用的变量就不会报错了。
在这里插入图片描述

7 参考链接

SuperCx 是面向过程监控与工业自动化的 HMI/SCADA 软件开发平台(俗称组态软件),运行于Windows系统上,可以广泛应用于需要数据采集、对象控制、过程监视与控制等的各种应用中,如:石油、化工、钢铁、电力、环保、机械、楼宇自动化等行业。 丰富的图形系统 先进的图形绘制技术 包括矩形、菜单、按钮、定时器、曲线、报警表等近20种基本图形组件,支持插入各种格式图片。 图形对象均是 COM 对象,均能通过脚本控制,并能触发事件。 图形能以任意点为中心、任意角度旋转,可以相对不同位置水平和垂直方向缩放。 具备包括过渡色等多达 23 种填充风格,水平、垂直方向能分别指定不同的填充方向和填充百分比。 画面窗口分为 30 个层,每个图形对象在其中一层,层可以锁定和隐藏。 支持使用图像文件作为画面背景。 按钮对象可以在常规、鼠标掠过、按下、禁止等四种状态下显示不同的图片。 支持随意绘制3D管道,并具有液体流动效果。 趋势曲线支持多笔、多坐标轴,能显示实时和历史数据,具备缩放、滚动,在线添加或删除画笔等操作。 报警表能同时显示多个数据节点的报警记录,具备过滤、排序、确认报警等功能。 兼容第三方ActiveX控件 可以使用属性编辑器修改控件属性。 支持对控件属性进行动画连接。 允许脚本调用控件。 控件事件能触发脚本动作。 可由用户完全自由扩展的图库 图库由符号和模块两种不同形式的复合元素组成。 符号和模块均能由用户创建并进行管理。 支持用户扩展符号属性。 用户制作好的符号可以直接拖放到符号库中保存。 可以把制作好的画面以模块的形式保存到模块库重用。 高效全面的动画实现 全部类型对象的所有属性均能连接动画。 数据源可以是变量,更可以是复杂的表达式。 数据源表达式中用到的变量可以是标签变量,也可以是画面中的局部变量。 支持表格、线性、表格、直接等四种不同的动画连接方式。 优化的动画刷新,效率更高。 强大的脚本语言 强大的功能 使用VBScript作为脚本语言,VBScript脚本语言是微软VBA的一个子集。VBScrip易学易懂,功能强大,广泛使用于web动态网页的开发中。 VBScript具备丰富的函数库,可以轻松与第三方基于COM模型的软件系统交换,如使用ADO访问数据库,调用Excel等。 强大的编辑器 支持事件响应函数框架自动生成。 结合上下文列出方法和属性表帮助用户输入。 提示函数参数。 根据语法彩色显示文本。 伸缩显示代码块。 语法错误定位。 灵活的报表系统 报表生成向导能快速生成常用格式报表。 不仅可以打印SuperCx内置历史数据库,更可以打印第三方关系数据库。 类似水晶报表式的报表格式编辑,功能更加强大,可灵活定义输出格式,如报警数值特殊颜色显示等。 支持毫秒级时间打印。 支持直接调用Excel输出报表。 标签:SuperCxHMI
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

记录无知岁月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值