触摸屏与PLC通讯

2018年9月14日11:21:40 发表评论 598 阅读

问题:请问编辑好WICC项目后要经过那些步骤才能与PLC通讯并完成我所要的功能?

通讯

通讯伙伴可以是网络中的任何单元,它能够与其他伙伴通讯和交换数据。在WinCC环境中,这些通讯伙伴可以是自动化系统(AS)中的中央模块或通讯模块,或者是PC的通讯处理器。
在通讯伙伴间传送的数据可满足完全不同的用途。在WinCC的情况下,有下列用途:

  • 控制过程
  • 请求来自过程的数据
  • 报告过程中的意外状况
  • 归档过程数据

WinCC允许访问自动化系统中的过程变量(外部变量)。然而,在WinCC中组态过程连接前,必须自行设计一个检查表来确认已满足下列先决条件。

  • 自动化系统必须安装通讯端口,该端口由WinCC通讯驱动程序支持。
  • 自动化系统中的端口必须要组态,这样控制程序能使用通讯调用来访问端口。通讯硬件配置参数必须是已知的。
  • WinCC能访问的变量地址必须是已知的。请注意所使用自动化系统的地址会有所不同。
  • 必须要在WinCC系统中安装合适的通讯硬件(通讯处理器、标准I/O端口、COMx、...)。在安装该硬件前,必须先安装硬件驱动程序。通讯处理器的硬件和软件设置必须是已知的。
  • 根据WinCC系统中所使用的通讯处理器不同,有可能要做其他的设置。例如,在工业以太网或PROFIBUS的情况下,用户也必须创建本地数据库。这些连接参数同样必须已知。

而且,运行系统中的操作需要WinCC和AS之间有物理连接,以便能够访问外部变量。

WinCC使用所谓的变量管理器来处理变量的集中管理。在此,项目中创建并且存储在项目数据库中的所有数据和变量在运行系统中由WinCC变量管理器记录和管理。所有应用程序,比如图形运行系统、报警记录运行系统或变量记录运行系统(全局脚本),必须以WinCC变量形式向变量管理器请求他们所需要的数据。

 WinCC和自动化系统(AS)之间的通讯

在工业通讯环境中,WinCC以变量和过程值的形式进行交换信息的通讯。为了采集过程值,WinCC通讯驱动程序发送任务消息给AS,然后AS把相应的包含有所请求的过程值的回复消息发送给WinCC。
首先,在WinCC和AS之间要有一个物理连接。连接的属性,比如传送媒体和通讯网络,限定通讯条件并且在WinCC中组态通讯时必须已知。

通讯驱动程序

通讯驱动程序是一个软件组件,它在AS和WinCC中的变量管理之间设置连接以便能向WinCC变量提供过程值。在WinCC中有很多通讯驱动程序,可通过不同总线系统用于连接不同自动化系统。每个通讯驱动程序只能被集成到WinCC项目一次。

WinCC中,通讯驱动程序也指“通道”并具有文件扩展名“*.chn”。安装在系统中所有的通讯驱动程序可在WinCC安装目录下的子目录“\bin”中查找到。通讯驱动程序有不同通道单元用于各种通讯网络。

 通道单元

每个通道单元只对一个下位硬件驱动程序用作端口,同样作为到PC上一个通讯处理器的端口。因此,每个使用的通道单元必须分配给相关的通讯处理器。一些通道单元需要附加的系统参数的组态。而且,对于在OSI模型的传输层(层面4)上工作的通道单元,用户也必须设置传输参数。

连接(逻辑)

一旦WinCC和AS正确物理连接,就需要WinCC的通讯驱动程序和相关的通道单元来建立或组态与AS的(逻辑)连接。该(逻辑)连接用于运行系统中数据的交换。
WinCC的连接是一个用于执行特定通讯任务的两个通讯伙伴之间已组态逻辑分配。每个连接有两个端点,包含用于对相应的通讯伙伴寻址的必要信息,以及建立连接所需的其他属性。在具有指定连接参数的通道单元下,组态每个连接。根据通讯驱动程序,在单个通道单元下有可能有多个连接。

外部变量

需要WinCC变量来访问AS中的指定数据。这些需要和AS连接的变量,是指外部变量。没有过程连接的变量,称为内部变量。

 数据类型和类型转换

当组态外部变量,除变量名称外,必须指定数据类型和类型转换(用于某些数据类型):
数据类型与WinCC中数据格式一致。类型转换决定从AS格式到WinCC格式的转换。类型转换适用于两个传送方向:

  • 在AS中:例如用于某一功能(如定时器数值/BCD显示)或通过要寻址的信息(如字节地址、在数据块或I/O范围中的字地址)
  • 在WinCC中:例如用于处理或计算模拟数值。
    一般而言,AS数据格式是固定的。下列选项用于选择WinCC格式:
  • WinCC数据格式可以与AS数据格式匹配。为此,选择类型转换,该转换在两端使用同样的格式并考虑WinCC数据类型的符号,如“WordToSignedWord”。如果用所选择的数据类型不能实现目的,那么在WinCC中改变它。
  • WinCC格式遵循WinCC中的数值处理。

用户在选择数据类型时必须遵守下列几点并且若有必要则进行类型转换:

  • 符号:是否在转换中考虑到?在操作期间能否出现负变量值?(例如,当规则中的区别以百分数显示)
  • 数值范围:操作中产生的变量值是否都在每种格式可用的数值范围内,或者在WinCC中或在自动化系统上数值是否有可能溢出范围?如果出现溢出,数值可能不会在终端显示或者可能导致在以后的处理中出错。
  • 具有相同数值范围的不同类型转换:数据类型的几种转换也许会有相同的数值范围,例如“ByteToUnsignedDword”和“ByteToUnsignedWord”的数值范围都是[0...127]。如果是上述情况,用户应该始终确定AS上的数据格式并检查该格式是否会超过尺寸,从而造成资源的浪费。(例如双字代替字)。
  •  如果AS所需的数值范围没有被所选的类型转换覆盖,在WinCC中改变数据类型。

WinCC数据类型和类型转换

下表显示哪种WinCC数据类型支持类型转换。
数据类型                    类型转换
二进制变量                      否
无符号8位数                     是
有符号8位数                     是
无符号16位数                    是
有符号16位数                    是
无符号32位数                    是
有符号32位数                    是
浮点数32位IEEE 754                           是
浮点数64位IEEE 754                           是
文本变量8位字符集               否
文本变量16位字符集              否
原始数据类型                    否
注意:
在使用类型转换时,确保来自AS的数据在所选择的类型转换中能被WinCC识别。如果WinCC不能识别该数据,出错信息将会记录在目录“..\Siemens\WinCC\Diagnose”下的文件“WinCC_sys_0x.log”中。

数字变量类型的线性标定

线性标定可与数字数据类型一起使用。在WinCC变量的指定数值范围可线性显示过程中数值的范围。
例如,一个过程能要求标称数值以单位[巴]输入,而WinCC应允许用户以单位[毫巴]输入该数值。使用线性标定,过程中的数值范围[0 ...1]可转换成WinCC变量的数值范围[0 ...1000]。

设置文本变量长度

必须使用数据类型“文本变量8位字符集”或“文本变量16位字符集”设置变量的长度。文本变量,稍后将占用10个字符,所以在“8位字符集”的情况下必须给它分配10位的长度,或在“16位字符集”的情况下分配20位的长度。

自动化系统中编址

将WinCC变量分配到AS中的数据区。这些变量必须在AS中以特殊的方式编址。编址类型取决于通讯伙伴的类型。

 如何创建新连接

引言

外部变量只能在与自动化系统连接的基础上创建。如果还没有需要的连接,必须首先创建该连接。
先决条件

  • 必须安装所需要的通讯处理器和相关的硬件驱动程序。
  • 还必须安装期望的通讯驱动程序,例如“SIMATIC S7 Protocol Suite”

步骤

1。 扩展“变量管理”中通讯驱动程序的视图。

2。 选择期望的通道单元,例如“PROFIBUS”。

3。在用于通道单元的弹出式菜单中,选择“新建驱动程序连接...”。

4。 在“常规”标签卡的“名称”域中,输入在项目范围内唯一的用于连接的名称。

5。 单击“属性”按钮,打开“连接参数”对话框。设置该连接所需的参数。有关详细信息,请参考各相应通道的帮助文档。

6。 通过单击“确定”,关闭所有的对话框。

 如何组态外部变量

引言
。创建变量的过程对于所有数据类型基本相似。
。然而,对某些数据类型进行特殊设置。(步骤5 - 7)。
先决条件

。必须安装所需要的通讯处理器和硬件驱动程序。
。还必须安装期望的通讯驱动程序,例如“SIMATIC S7 Protocol Suite”。
。为了使用通道单元,必须建立连接(例如“PROFIBUS”)。
步骤

1。 从所期望的连接的弹出式菜单中选择“新建变量”。“变量属性”对话框将打开。

2。 在“常规”标签卡上,“名称”域中,输入在WinCC项目范围内唯一的变量名,例如“WinCCTag_01”。
3。 设置变量的“数据类型”,例如 “浮点数64位IEEE 754”,在相关域中。
4。 单击“选择”打开“变量属性”对话框,在AS中设置变量的地址区域。
在二进制或8位变量的情况下,如果通道不支持按位/字节访问,在“变量属性”对话框前会显示“位/字节变量”对话框。
要获得更多信息,请参考“BinWrite机制”。
单击“确定”按钮,关闭“位/字节变量”或“变量属性”对话框。
5。 在数字变量的情况下,WinCC会在“类型转换”域中显示建议的类型转换。
按照不同需要,选择合适的的类型转换。转换以“X到Y”的次序显示,X是WinCC格式、Y是AS格式,例如“DoubleToDouble”。

6。 单击“线性标定”复选框使数字标签线性标定。输入“过程值范围”(在AS中)以及“变量数值范围”(在WinCC中)的上限和限。
7。 当使用文本变量工作,将激活“长度”域。在这种情况下,以字符形式输入文本变量的长度。
8。 单击“确定”关闭所有对话框。

 

weinxin
plc入门知识问答
所有PLC工程师都会关注的微信公众账号,只需输入您的问题,就会有答案

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: