在WINCC中使用WinSock控件进行TCP_IP通讯的例程

合集下载

mcgs与sTCP通信超级详细教程

mcgs与sTCP通信超级详细教程

m c g s与s T C P通信超级
详细教程
The latest revision on November 22, 2020
任务输入数字10 输出一个信号
1打开博途开始硬件组态
2将ip地址设置为路由器同网段内,路由器地址() plc地址()
双击plc的网口
如图设置即可。

3编写程序
点击下载后弹出
PG/PC端口选择自己连接的网卡用网线连接和无线连接的网卡不一样。

点击开始搜索
扫描到的plc会出现在列表中
点击装载即开始下载
点击这个监控
将 mw10的值改为10
写入数据到mw10 中确认程序无误,组态mcgs
在这里可以看到修改后的ip地址
这就算通信成功
打开mcgs
点击设备窗口弹出一个窗口后对着窗口内部点击右键点击设备管理
选择蓝色地区双击后出现在右边然后点击确认
在设备工具箱中就出现了西门子cp443-1以太网模块双击设备工具箱中的以太网模块
然后设备窗口中出现了之后双击此设备
出现此窗口后
修改ip地址
本地的ip地址可以通过cmd命令 ipconfig来获得
这就是我的本机地址刚才设置的plc的地址为远程地址就设置成
当这个数值为0 的时候就算通信成功
接着开始组态画面即可
对应plc的地址即可。

然后下载
先点击工程下载接着启动运行
弹出运行界面
在输入框输入10 为真灯泡点亮。

wincc如何与PLC网络连接完整版

wincc如何与PLC网络连接完整版

w i n c c如何与P L C网络连接标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]WINCC使用普通网卡通过TCP/IP连接PLC前提条件通过以太网实现PLC系统与WINCC6.0通讯的前提条件是PLC系统配备以太网模或者使用带有PN接口的PLC,以太网模块列表如下表所示:注:只有支持ISO通讯协议的模块才支持(Industrial Ethernet工业以太网)通讯,具体情况可察看STEP7中的模块信息。

本文档下列步骤应用CPU 315-2PN/DP型号的PLC,使用普通以太网卡连接。

组态过程1.STEP7硬件组态使用STEP7编程软件对PLC系统进行软件组态,在Hardware界面内插入实际的PLC 硬件,如下图3.1所示:图3.1在PN-IO槽双击弹出PN-IO属性对话框,如图3.2所示:图3.2点击图3.2属性对话框,弹出网络参数设置对话框,如图3.3所示:图3.3点击New按钮,新建一个工业以太网络,输入该PN模块的IP address(IP地址)和Subnet mask(子网掩码),在简单使用的情况下,不启用网关。

当您使用的是CPU+以太网模块通讯时,双击以太网模块,会自动弹出以太网模块的属性信息,设置以太网通讯模块的IP地址和子网掩码。

方法与PN-IO的属性设置相同,如下图所示:注意如果要使用TCPIP通讯方式,必须启动IP Protocol being used,设置IP地址与子网掩码,如图3.4所示:图3.4将组态下载到CPU,则PLC方面设置完成。

对于第一次使用以太网通讯,必须保证首先使用MPI或者PROFIBUS的通讯方式,将设置好参数的组态下载到目标PLC,此后即可通过以太网的方式进行程序监控和项目下载。

2.设置IP地址与通讯检测设置安装有WINCC计算机的windows操作系统的TCP/IP参数,将WINCC组态计算机的IP地址设置成为和PLC以太网通讯模块或者PN-IO的IP地址保证是一个网段,注意子网掩码的设置,如图3.5所示:图3.5通过在程序运行中键入CMD进入DOS界面,使用网络命令PING测试以太网通讯是否建立,PING的命令如下:ping 目标IP地址–参数如下图3.6所示:图3.6此例中,PN-IO的IP地址为192.168.0.100 子网掩码:255.255.255.0;组态计算机的IP地址为192.168.0.244 子网掩码:255.255.255.0,此处显示表示以太网通讯已经建立,并且状态良好。

WINCC和与PLC之间的通讯方式

WINCC和与PLC之间的通讯方式

第四章S7-400与WINCC通讯连接技术本章讲述WINCC与可编程控制器间的通讯方式。

WINCC是目前工业现场应用较为广泛的可视化软件技术,能实现工业现场的模拟画面,使现场设备除了提供专用的通道,用于连接到SIMATIC 55/57/5505等系列的PLC外,还提供了如PROFIBUS DP/FMS,DDE(动态数据交换)和OPC(用于过程控制的OLE)等通用通道连接到第三方控制器。

此外,WINCC还以附加件(add-ons)的形式提供连接到其他控制器的通讯通道。

另外,还提供了一个CDK选件,可以用它来开发一些专用通讯通道。

4.1过程通讯原理4.1.1通讯术语下面列举了一些在通讯中应用的术语。

其中有关各种通讯网络的详细介绍已经在上章里详细介绍过,对于WINCC与PLC之间的通讯连接方式的掌握,熟悉下面几种通讯术语,能更好的加深对本章的了解和应用。

(1)通讯通讯用于描述两个通讯伙伴之间的数据交换。

(2)通讯伙伴通讯伙伴是指可以互相进行通讯的模块,也就是说它们可以互相交换数据。

它们可以是PLC中的中央处理器板和通讯处理器,也可以是PC中的通讯处理器。

(3)站站是可以作为一个单元与一个或多个子网连接的设备。

它可以是PLC,也可以是PC。

(4)子网、子网是用于描述一个通讯单元的术语。

该单元包含建立链接所必需的所有物理组件以及相关的数据交换方式。

(5)网络网络是由一个或多个互相连接的子网组成的单元,它包括所有可以互相通讯的站。

(6)通讯驱动程序在WINCC中通讯驱动程序也指通道。

它是一个软件组织,可在自动化系统和WINCC 中的变量管理器之间设置连接,以便能向WINCC变量提供过程值。

在WINCC中有很多通讯驱动程序,可通过不同的总线系统连接不同的自动化系统。

每个通讯驱动程序只需被集成到WINCC项目一次。

通讯驱动程序具有扩展名.chn,安装在系统中所有的通讯驱动程序可在WINCC安装目录下的子目录、bIN中查到。

WINCC服务器与客户端通信配置

WINCC服务器与客户端通信配置

WINCC服务器与客户端通信配置1.简介本章介绍WINCC服务器与客户端通信配置文档的目的、范围和相关术语定义。

1.1 目的本文档旨在指导用户配置WINCC服务器与客户端之间的通信,确保系统正常运行。

1.2 范围本文档适用于WINCC服务器与客户端通信配置,涵盖以下内容:网络配置、通信协议配置、安全设置等。

1.3 术语定义- WINCC服务器:提供数据存储和处理、远程连接等功能的服务器。

- 客户端:用于访问WINCC服务器的设备或电脑。

- 通信协议:WINCC服务器与客户端之间通信的协议,例如OPC、TCP/IP等。

- 安全设置:保护WINCC服务器与客户端通信安全的配置项,如防火墙、加密设置等。

2.网络配置本章介绍WINCC服务器与客户端之间的网络配置步骤和注意事项。

2.1 网络拓扑描述WINCC服务器与客户端的网络拓扑结构,包括网络设备、IP地质分配等。

2.2 网络连接配置WINCC服务器和客户端之间的网络连接,确保双方能够正常通信。

2.3 防火墙设置如有防火墙存在,需要配置防火墙规则,允许WINCC服务器和客户端通信。

3.通信协议配置本章介绍WINCC服务器与客户端之间通信协议的配置,包括OPC、TCP/IP等。

3.1 OPC配置配置WINCC服务器作为OPC服务器,允许客户端通过OPC协议访问WINCC服务器的数据。

3.2 TCP/IP配置通过TCP/IP协议实现WINCC服务器与客户端的通信,包括IP 地质、端口等设置。

4.安全设置本章介绍WINCC服务器与客户端通信过程中的安全设置。

4.1 用户认证配置用户认证方式,限制非授权用户访问WINCC服务器。

4.2 数据加密设置数据加密方式,保护通信过程中的数据安全。

4.3 防止攻击配置防止攻击的措施,如IP过滤、登录失败锁定等。

5.附件本文档涉及的附件请参考附件部分。

6.法律名词及注释本文档涉及的法律名词及其注释请参考附件。

WINCC使用普通网卡通过TCPIP连接PLC

WINCC使用普通网卡通过TCPIP连接PLC

WINCC使用普通网卡通过TCPIP连接PLCWINCC使用普通网卡通过TCP/IP连接PLC通过以太网实现PLC系统与WINCC通讯的前提条件是PLC系统配备以太网模或者使用带有PN接口的PLC,以太网模块列表如下表所示:注:只有支持ISO通讯协议的模块才支持(Industrial Ethernet 工业以太网)通讯,具体情况可察看STEP7中的模块信息。

本文档下列步骤应用CPU 315-2PN/DP型号的PLC,使用普通以太网卡连接。

组态过程1.STEP7硬件组态使用STEP7编程软件对PLC系统进行软件组态,在Hardware界面内插入实际的PLC硬件,如下图3.1所示:在PN-IO槽双击弹出PN-IO属性对话框,如图所示:点击上图属性对话框,弹出网络参数设置对话框,如图所示:点击New按钮,新建一个工业以太网络,输入该PN模块的IP address(IP地址)和Subnet mask(子网掩码),在简单使用的情况下,不启用网关。

当您使用的是CPU+以太网模块通讯时,双击以太网模块,会自动弹出以太网模块的属性信息,设置以太网通讯模块的IP地址和子网掩码。

方法与PN-IO的属性设置相同,如下图所示:注意如果要使用TCPIP通讯方式,必须启动IP Protocol being used,设置IP地址与子网掩码,如图所示:2.设置IP地址与通讯检测设置安装有WINCC计算机的windows操作系统的TCP/IP参数,将WINCC组态计算机的IP地址设置成为和PLC以太网通讯模块或者PN-IO的IP地址保证是一个网段,注意子网掩码的设置,如图所示:通过在程序à运行中键入CMD进入DOS界面,使用网络命令PING测试以太网通讯是否建立,PING的命令如下:ping 目标IP地址–参数如下图所示:此例中,PN-IO的IP地址为192.168.0.100 子网掩码:255.255.255.0;组态计算机的IP地址为192.168.0.244 子网掩码:255.255.255.0,此处显示表示以太网通讯已经建立,并且状态良好。

WINCC使用普通网卡通过TCPIP连接PLC

WINCC使用普通网卡通过TCPIP连接PLC

WINCC使用普通网卡通过TCP/IP连接PLC前提条件通过以太网实现PLC系统与WINCC6.0通讯的前提条件是PLC系统配备以太网模块或者使用带有PN接口的PLC,以太网模块列表如下表所示:PLC系列以太网通讯模块S7-300CP343-1/CP343-1 Lean/CP343-1 Advanced-ITS7-400CP443-1/CP443-1 Advanced-IT注:只有支持ISO通讯协议的模块才支持(Industrial Ethernet工业以太网)通讯,具体情况可察看STEP7中的模块信息。

本文档下列步骤应用CPU315-2PN/DP型号的PLC,使用普通以太网卡连接。

组态过程1.STEP7硬件组态使用STEP7编程软件对PLC系统进行软件组态,在Hardware界面内插入实际的PLC硬件,如下图3.1所示:图3.1在PN-IO槽双击弹出PN-IO属性对话框,如图3.2所示:点击图3.2属性对话框,弹出网络参数设置对话框,如图3.3所示:图3.3点击New按钮,新建一个工业以太网络,输入该PN模块的IP address(IP地址)和Subnet mask(子网掩码),在简单使用的情况下,不启用网关。

当您使用的是CPU+以太网模块通讯时,双击以太网模块,会自动弹出以太网模块的属性信息,设置以太网通讯模块的IP地址和子网掩码。

方法与PN-IO的属性设置相同,如下图所示:注意如果要使用TCP/IP通讯方式,必须启动IP Protocol being used,设置IP地址与子网掩码,如图3.4所示:图3.4将组态下载到CPU,则PLC方面设置完成。

对于第一次使用以太网通讯,必须保证首先使用MPI或者PROFIBUS的通讯方式,将设置好参数的组态下载到目标PLC,此后即可通过以太网的方式进行程序监控和项目下载。

2.设置IP地址与通讯检测设置安装有WINCC计算机的windows操作系统的TCP/IP参数,将WINCC组态计算机的IP地址设置成为和PLC以太网通讯模块或者PN-IO的IP地址保证是一个网段,注意子网掩码的设置,如图3.5所示:图3.5通过在程序运行中键入CMD进入DOS界面,使用网络命令PING测试以太网通讯是否建立,PING的命令如下:ping 目标IP地址–参数如下图3.6所示:图3.6此例中,PN-IO的IP地址为192.168.0.100 子网掩码:255.255.255.0;组态计算机的IP地址为192.168.0.244 子网掩码:255.255.255.0,此处显示表示以太网通讯已经建立,并且状态良好。

基于Winsock控件的TCPIP以太网通信

基于Winsock控件的TCPIP以太网通信

基于Winsock控件的TCP/IP以太网通信要完成VB与PLC等设备的以太网通信要用到Winsock控件,在此有必要对该控件作较详细的说明。

Winsock是一个ActiveX控件,需要要手动添加许多项目,其步骤如下:(1)选择菜单的【工程】。

(2)选择【部件】。

(3)在弹出的对话框中做如图6的选择。

(4)如图7所示,在部件选项卡就会出现Winsock控件。

图7 Winsock控件7、Winsock控件的基本属性此控件对于用户在运行时不可见,提供了一个简单的途径访问TCP及UDP网络服务而无需了解底层细节,使用时你只需设置属性、在恰当的时候调用它提供的方法即可。

主要属性有:BytesReceived:返回当前缓冲区中的字节数量,我们可以使用GetData 方法以接收数据。

只读且设计时不可用。

LocalHostName:返回本机名字符串,设计时不可用。

LocalIP:返回以(,运行时只读。

LocalPort :本机使用接收端口可读写,设计时可用,Long型。

对于客户,如果无需指定端口,则用端口0发送数据。

在此情况下,控件将随机选择一个端口。

在一个连接确定后,为TCP的端口。

对于服务器,指用于监听的端口。

如设置为0,则用随机数。

在调用Listen 方法后,该属性自动包含用到的端口。

端口0总是用于在两计算机间建立动态连接。

客户希望通过端口0获得一个随机端口以”回调”连接服务器。

Protocol :套接字类型,为TCP或UDP二者之一,缺省为TCP类型。

设置为sckTCPProtocol表示TCP协议sckUDPProtocol表示UDP协议。

在此属性被重置之前需用Close方法关闭之。

RemoteHost:发送或接收数据的主机,你可提供主机名如:,或一IP地址串,例如“RemoteHostIP:远程主机的IP地址。

对于客户程序,在连接确定后使用Connect 方法,此属性包含远程主机的IP名串。

对于服务器程序,在引入连接需求后(Connection Request 事件),此属性包含IP串。

WINCC使用普通网卡通过TCP IP连接

WINCC使用普通网卡通过TCP IP连接

WINCC使用普通网卡通过TCP/IP连接PLC前提条件通过以太网实现PLC系统与通讯的前提条件是PLC系统配备以太网模块或者使用带有PN接口的PLC,以太网模块列表如下表所示:?图点击图属性对话框,弹出网络参数设置对话框,如图所示:图点击New按钮,新建一个工业以太网络,输入该PN模块的IP address(IP地址)和Subnet mask(子网掩码),在简单使用的情况下,不启用网关。

当您使用的是CPU+以太网模块通讯时,双击以太网模块,会自动弹出以太网模块的属性信息,设置以太网通讯模块的IP地址和子网掩码。

方法与PN-IO的属性设置相同,如下图所示:注意如果要使用TCP/IP通讯方式,必须启动IP Protocol being used,设置IP地址与子网掩码,如图所示:图将组态下载到CPU,则PLC方面设置完成。

对于第一次使用以太网通讯,必须保证首先使用MPI或者PROFIBUS的通讯方式,将设置好参数的组态下载到目标PLC,此后即可通过以太网的方式进行程序监控和项目下载。

2.设置IP地址与通讯检测设置安装有WINCC计算机的windows操作系统的TCP/IP参数,将WINCC组态计算机的IP地址设置成为和PLC以太网通讯模块或者PN-IO的IP地址保证是一个网段,注意子网掩码的设置,如图所示:图通过在程序?运行中键入CMD进入DOS界面,使用网络命令PING测试以太网通讯是否建立,PING的命令如下:ping?目标IP地址?–参数如下图所示:图此例中,PN-IO的IP地址为?子网掩码:;组态计算机的IP地址为?子网掩码:,此处显示表示以太网通讯已经建立,并且状态良好。

注意:如果此处不能Ping通PLC的PN端口或者以太网模块,则通讯不可能建立,后面的步骤就不用进行了,若要通讯成功,必须保证实际的物理以太网通讯保持正常。

3.添加驱动程序和设置系统参数打开WINCC工程在Tag Management-->SIMATIC S7 PROTOCOL SUITE->TCP/IP右键单击TCP/IP,在弹出菜单中点击System Parameter,,如图所示,弹出System Parameter- TCP/IP对话框,选择Unit标签,查看Logic device name(逻辑设备名称)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在WINCC中使用WinSock控件进行TCP/IP通讯的例程目录一、WinSock控件介绍(以VB语言表述) (1)1、WinSock控件的主要属性 (1)2、WinSock控件的主要方法 (2)3、WinSock控件的主要事件 (3)二、WinSock控件在WINCC中的使用 (3)1、WinSock控件注册 (3)2、在WinCC中添加WinSock控件 (4)三、服务器端程序介绍 (4)四、WinCC画面模板与结构变量的配合使用 (6)1、结构变量定义 (6)2、画面模板组态 (7)3、调用画面模板及修改变量前缀 (7)4、将画面模板中的对象连接到变量 (8)五、建立TCP/IP连接 (8)六、接收数据包的处理 (10)附:在VBS中进行数据处理的局限性及变通解决方法 (12)摘要:关键词:VB、VBS、WINCC、WINSOCK、DLL、UNICODE、ANSI、ASCII、画面模板、结构变量、数据转换。

该文档的软件环境:Microsoft Windows XP Professional 版本2002SP3SIMATIC WinCC V6.2 SP2 ASIA‘SIMATIC STEP7 V5.4+SP5+HF3 ChineseTCP&UDP测试工具V1.02目的:使用WINCC用户程序作为客户端程序,与服务器通讯,通讯协议为标准TCP/IP协议,取得服务器发送过来的数据包,按数据包格式文本规定,解析数据包数据,并将相关数据显示在用户程序画面中。

一、WinSock控件介绍(以VB语言表述)1、WinSock控件的主要属性1) Protocol属性通过Protocol属性可以设置WinSock控件连接远程计算机使用的协议。

可选的协议是TCP和UDP对应的VB的常量分别是sckTCPProtocol和sckUDPProtocol,Winsock控件默认协议是TCP。

注意:虽然可以在运行时设置协议,但必须在连接未建立或断开连接后。

2) SocketHandle属性SocketHandle返回当前socket连接的句柄,这是只读属性。

3) RemoteHostIP属性RemoteHostIP属性返回远程计算机的IP地址。

在客户端,当使用了控件的Connect 方法后,远程计算机的IP地址就赋给了RemoteHostIP属性,而在服务器端,当ConnectRequest 事件后,远程计算机(客户端)的IP地址就赋给了这个属性。

如果使用的是UDP协议那么当DataArrival事件后,发送UDP报文的计算机的IP才赋给了这个属性。

4) ByteReceived属性返回当前接收缓冲区中的字节数5) State属性返回WinSock控件当前的状态2、WinSock控件的主要方法1) Bind方法用Bind方法可以把一个端口号固定为本控件使用,使得别的应用程序不能再使用这个端口。

2) Listen方法Listen方法只在使用TCP协议时有用。

它将应用程序置于监听检测状态。

3) Connect方法当本地计算机希望和远程计算机建立连接时,就可以调用Connect方法。

Connect方法调用的规范为:Connect RemoteHost,RemotePort4) Accept方法当服务器接收到客户端的连接请求后,服务器有权决定是否接受客户端的请求。

5) SendData方法当连接建立后,要发送数据就可以调用SendData方法,该方法只有一个参数,就是要发送的数据。

6) GetData方法当本地计算机接收到远程计算机的数据时,数据存放在缓冲区中,要从缓冲区中取出数据,可以使用GetData方法。

GetData方法调用规范如下:GetData data,[type,][maxLen]它从缓冲区中取得最长为maxLen的数据,并以type类型存放在data中,GetData取得数据后,就把相应的缓冲区清空。

7) PeekData方法和GetData方法类似,但PeekData在取得数据后并不把缓冲区清空。

3、WinSock控件的主要事件1) ConnectRequest事件当本地计算机接收到远程计算机发送的连接请求时,控件的ConnectRequest事件将会被触发。

2) SendProgress事件当一端的计算机正在向另一端的计算机发送数据时,SendProgress事件将被触发。

SendProgress事件记录了当前状态下已发送的字节数和剩余字节数。

3) SendComplete事件当所有数据发送完成时,被触发。

4) DataArrival事件当建立连接后,接受到了新数据就会触发这个事件。

注意:如果在接受到新数据前,缓冲区中非空,就不会触发这个事件。

5) Error事件当在工作中发生任何错误都会触发这个事件。

二、WinSock控件在WINCC中的使用1、WinSock控件注册在WinCC中使用WinSock控件前,需要先进行注册。

注册方法如下:使用记事本新建一个后缀名为reg的文件,编辑文件,加入以下文本:[HKEY_CLASSES_ROOT\Licenses\2c49f800-c2dd-11cf-9ad6-0080c7e7b78d]@="mlrljgrlhltlngjlthrligklpkrhllglqlrk"保存文件退出。

先将mswinsck.ocx拷贝到system32下再将注册表文件添加到注册表然后\"运行\",输入\"regsvr32 MSWINSCK.OCX\",确定。

2、在WinCC中添加WinSock控件在WinCC图形编辑器中打开需要显示服务器数据的画面,选择“对象选项板”的“控件”选项卡,在选项卡中选择“添加/删除”,在“选择OCX控件”对话框中选择“Microsoft WinSock Control, version 6.0”进行注册。

在对象选项板中的WinSock控件拖入画面中。

三、服务器端程序介绍这里所要通讯的服务器端程序是运行于南车资阳机车有限公司生产的V280/285系列船用柴油机机旁控制屏监控系统程序。

以下是协议文本:通讯方式:TCP/IP侦听端口:9105机旁柜IP地址定义:由用户根据具体网络配置决定PAC数据采集周期:1秒上位机记取数据周期:1秒数据包格式定义如下:上位机发送命令到PAC的数据包定义:本数据包由上位机发送到PAC,PAC根据上位机发送的的命令执行,同时返回最新的采集数据到上位机。

数据长度:10字节。

数据类型:byte。

数据包详细定义:命令代码1字节+备用代码1字节+设定转速4字节(single)+备用1字节其中命令代码意义:1=“读数据”;18=“转速升”;19=“转速降”。

PAC发送到上位机的数据包定义:数据长度:650个字节。

数据类型:BYTE。

数据包内容详细定义及代码示意如下:续:四、WinCC画面模板与结构变量的配合使用本用户程序需要实时采集显示三台同类型柴油机的运行数据,由于三台柴油机的数据采集和显示是相同的,而WinCC画面模板与结构变量配合使用可以在一个画面中根据条件显示具有相同类型参数的多个对象,避免反复组态相同画面布局的工作,减少项目后期某些细节部位的修改而带来的工作量,所以本用户程序采用画面模板与结构变量配合使用方法进行组态设计。

《WinCC中的画面模板》一文提出四种使用画面模板的方法,这里采用第三种方法,即“使用变量前缀的画面窗口”。

组态步骤如下所示:1、结构变量定义在WinCC中定义一个结构变量,结构变量名称为sDieselData。

结构变量包括64个FLOAT型变量(数据包上传80个模拟量,但实际使用只有小于64个,出于编程方便起见,使用8*8=64个单精度浮点变量),16个BIT型变量(只使用PAC的输入点、其它开关量不使用),1个SHORT变量(反映通讯状态)。

64个单精度浮点型变量的命名格式为:16个BIT型变量命名格式为biTag1、biTag2……biTag16。

1个SHORT型变量名称为TXStatus。

结构变量定义完成后,根据结构变量定义三个内部结构变量,分别命名为“CNB”、“YYB”、“SXB”。

2、画面模板组态新建一个画面,画面名称为pDieselMod.pdl,并在画面中加入一个WinSock控件、一些文字和输入/输入域,以及其它有些相关控件。

如下图如示:3、调用画面模板及修改变量前缀新建的画面模板需要在主画面的一个子画面窗口中显示。

主画面文件名称为“pMain.pdl”,子画面窗口名称为“pMainArea”。

在用户程序运行时,有一个界面中显示了三台柴油机的图标,点击某一个柴油机图标,子画面切换到相应的柴油机状态及参数界面。

图标的鼠标动作C代码如下:#include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName){#pragma option(mbcs)#define PIC_0 "pMain"#define PIC_1 "pDieselMod.PDL"上面代码中关健代码就是:SetPropChar(PIC_0,"pMainArea","TagPrefix","CNB.")。

该行语句设置了子窗口pMainArea的变量前缀为”CNB.”。

当子窗口设置了变量前缀后,画面窗口中的对象连接变量时,变量一般会自动加上前缀(连接包括动态对话框、变量、C脚本及VBS脚本)。

4、将画面模板中的对象连接到变量将画面模板中的对象连接到相应的变量,组态方法与常规组态相似,不同之处在于变更量名称需要去掉前缀,在脚本中所使用的变量同样不要带变量前缀,因为变量前缀会自动加上。

在组态时会提示变量不存在,忽略即可。

五、建立TCP/IP连接要求是在柴油机状态及参数画面显示时自动建立TCP/IP连接,如果连接没有建立,则将相应的结构变量清零,并且每隔两秒重建连接。

连接建立后,发送读数据命令数据包。

在画面对象属性的“显示”属性中加入如下VBS代码(触发器选择2s周期):六、接收数据包的处理当建立连接后,接受到了新数据就会触发这个DataArrival事件。

这里只对前64个模拟量数据、16个开关量输入数据、10条汉字报警信息进行解析,并将解析后的数据赋值给相应的变量,汉字报警信息直接在窗口中的S7FlatEditBox控件中显示。

DataArrival事件的VBS代码如下:附:在VBS中进行数据处理的局限性及变通解决方法在VBS中对数据进行转换解析处理,是一个比较普遍的应用问题,并不仅限于在WINCC中的应用,而VBS在进行数据处理时的局限,也使得单靠VBS自身无法圆满的处理,需要借助其它手段,而VBS结合外部动态链接库是一个合理的解决方案。

相关文档
最新文档