目录
一、HMI变量与连接
1.1 概述
HMI只是显示设备,并非控制设备,因此,要显示PLC的状态或控制PLC,需要通过本地的变量完成,至于如何实现本地变量与远程PLC的通信,就不是HMI编程要解决的问题了,西门子的平台软件会解决此问题。当然,为了简化应用程序的开发,西门子提供了一套把HMI变量映射到PLC变量的方法和机制,HMI界面程序可以方便地获取PLC的变量信息,也可以通过界面程序方便控制PLC的状态,至于如何HMI程序是如何基于西门子的上述机制进行用户界面编程。
1.2 HMI变量的类型:PLC变量与自主变量
在HMI编程中,常常涉及到与PLC(可编程逻辑控制器)和自主变量的操作和交互。
下面来详细解释一下PLC变量和自主变量:
-
PLC变量:PLC变量是与PLC控制器连接并与其通信的变量。它们通常用于与PLC进行数据交换和控制操作。PLC变量包括PLC输入变量(Input Variable),PLC输出变量(Output Variable)和PLC内部变量(Internal Variable)。
-
输入变量(Input Variable):这些变量用于接收来自PLC的输入信号,例如传感器数据、按钮状态等。HMI可以读取和显示输入变量的状态,并根据其值进行操作或显示。
-
输出变量(Output Variable):这些变量用于向PLC发送输出信号,并控制外部设备,如驱动器、开关、执行器等。通过HMI,可以修改和设置输出变量的值,以控制相关设备的状态和行为。
-
内部变量(Internal Variable):这些变量是PLC内部操作和逻辑运算过程中使用的中间变量。它们通常不直接与外部设备交互,而是用于PLC程序的内部计算和控制逻辑。
-
-
自主变量:自主变量是在HMI设备上自主创建和使用的变量,不直接与PLC通信。自主变量主要用于在HMI界面中存储和操作一些临时或计算相关的数据。
-
人机交互的显示变量(Display Variable):这些变量用于在HMI界面中显示和呈现特定的数据。例如,温度、计数、状态等。显示变量通常由HMI的图形元素(如文本框、数字显示等)使用,并可以手动或自动修改其值。
-
人机交互的控制变量(Control Variable):这些变量用于支持HMI上的控制操作。例如,按钮状态、开关状态等。控制变量可以与HMI上的控制元素(如按钮、开关、选择器等)关联,用于响应用户输入和触发特定的操作或事件。
-
人机交互的逻辑变量(Logical Variable):这些变量用于支持编程逻辑和条件运算。例如,布尔逻辑变量(True/False)或枚举类型的变量(如模式选择)。逻辑变量通常用于条件判断和状态管理。
-
PLC变量和自主变量在HMI编程中扮演不同的角色,对于与PLC通信和控制系统集成的应用来说,PLC变量是非常重要的。而对于一些独立于PLC的本地控制和显示功能,自主变量则起到更为关键的作用。具体选择何种变量类型取决于您的应用需求和系统架构。
二、HMI变量映射
2.1 场景映射方式
在PLC和HMI的集成中,变量映射是将PLC变量与HMI变量相互关联的过程。
通过变量映射,HMI可以读取和写入PLC的数据,实现数据交换和控制操作。
下面是常见的PLC和HMI变量映射的方式:
-
直接映射(Direct Mapping):这是最简单和最常用的映射方式。通过直接映射,HMI变量与PLC变量一一对应。当一个变量在PLC中发生变化时,相应的HMI变量也会更新。这种映射方式可以实现数据的实时同步。
-
间接映射(Indirect Mapping):在某些情况下,HMI和PLC之间的变量结构可能不完全相同。通过间接映射,可以在HMI和PLC之间进行数据格式和数据结构的转换。通过编写适当的逻辑和转换表达式,可以实现不同数据类型、数据结构的变量之间的映射。
-
手动映射(Manual Mapping):在一些特殊的情况下,PLC和HMI之间的变量映射可能需要手动配置。这涉及到手工设置HMI和PLC变量之间的关联关系,通常在配置软件或集成环境中进行操作。手动映射需要确保正确的变量名称、数据类型和地址等信息配置。
-
标签映射(Tag Mapping):标签映射是一种基于标签的映射方式。标签是为PLC和HMI中的变量提供的唯一标识符。通过在PLC和HMI中创建相应的标签,并将它们关联起来,可以实现更灵活的变量映射和重用。标签映射提供了更好的可维护性和可扩展性。
具体的变量映射方式取决于所使用的PLC和HMI品牌、型号以及配置软件。对于某些集成环境,可能提供图形化的工具来帮助配置变量映射。建议参考PLC和HMI的用户手册、编程手册或厂商文档,以了解具体的映射方式和配置方法。
2.2 映射示例
以下是一个将PLC变量映射到HMI的案例示例:
-
假设我们有一个温度控制系统,PLC用于接收和处理温度传感器的数据,并控制加热器的输出。
-
在PLC中创建一个名为"Temperature"的变量,用于存储当前温度值。
-
在HMI软件中创建一个数字显示元素,用于显示当前温度值。
-
在HMI软件中与PLC建立通信,并设置PLC变量和HMI变量的映射。
-
在映射配置中,将HMI的数字显示元素与PLC的"Temperature"变量进行映射。这样,HMI将从PLC获取温度值,并显示在数字显示元素上。
-
保存并上传HMI程序到HMI设备。
-
运行HMI程序并连接到PLC,即可在HMI上实时显示从PLC获取的温度值。
通过此映射示例,HMI将能够获取PLC中的温度数据,并将其显示在界面上,实现对温度值的实时监控。此外,在HMI中还可以添加控制元素,如按钮或滑块,用于手动控制加热器的输出,并通过HMI向PLC发送控制信号。
请注意,在实际应用中,变量映射的配置方法和软件界面可能因HMI品牌和型号而有所不同。具体的步骤和操作请参考相关的HMI软件文档和用户手册。
2.3 映射步骤
设置PLC变量和HMI变量的映射通常涉及以下步骤:
-
找到并打开HMI软件:使用适用于您的HMI品牌和型号的软件,例如Siemens WinCC,Rockwell FactoryTalk View,或Schneider Electric Vijeo Designer。
-
创建HMI变量:在HMI软件中创建要与PLC变量关联的HMI变量。这些变量可以是数字、布尔、字符串等不同类型。
-
建立PLC和HMI之间的通信连接:通过HMI软件设置PLC和HMI之间的通信连接。这通常涉及指定PLC型号、通信接口、连接参数、PLC地址等。
-
打开变量映射配置:在HMI软件中,找到变量映射或标签映射配置的界面。具体的配置界面名称和位置取决于使用的HMI软件。
-
添加映射关系:在变量映射配置界面中,将PLC变量和HMI变量关联起来。可以使用图形化界面或文本编辑器手动添加映射关系。
-
配置映射规则和数据类型:根据PLC和HMI变量的数据类型和格式,配置适当的映射规则。这包括数据类型转换、映射地址、数据长度等。
-
验证映射设置:在HMI软件中,提供测试或仿真功能以验证映射设置的正确性。可以模拟PLC数据的变化,观察HMI界面上对应变量的反应。
-
保存和上传配置:在完成变量映射配置后,保存配置并将HMI程序上传到HMI设备中。
重要提示:具体的变量映射设置步骤和操作方式会因HMI软件品牌、型号和版本而有所不同。请参考相应的HMI软件文档、用户手册或厂商提供的指南,以获取准确的配置示例和操作指导。
2.4 如何为HMI添加映射关系
在西门子PLC中,为HMI(Human Machine Interface)添加映射关系通常通过编写控制表达式来实现。控制表达式定义了HMI中的变量,并将其映射到PLC中的变量或标记。以下是添加HMI映射关系的一般步骤:
-
在Step 7软件中创建并编程PLC控制逻辑。确保您定义了所有必要的变量和标记,这些变量和标记在HMI中需要进行映射。
-
创建HMI项目并将HMI连接到PLC。在WinCC软件中创建HMI项目,并确保已配置好与PLC连接的通信设置。这样,HMI和PLC之间就可以进行数据交换。
-
在WinCC软件中添加控制表达式。打开WinCC软件,并在HMI项目中添加控制表达式。在这里,您需要为每个需要映射的变量和标记定义一个控制表达式。例如,您可以为PLC中的一个标记定义一个控制表达式,并将其映射到HMI上面的一个文本框。当PLC中的标记值发生更改时,将自动刷新HMI文本框以反映这个变化。
-
配置HMI中的控件属性。在HMI中,您需要为每个映射到的控件配置相应的属性。例如,在上面的例子中,您需要为文本框控件配置其显示文本和对应的控制表达式。
-
编译和加载HMI项目。编译HMI项目,并将其加载到目标HMI设备中。在编译时,WinCC将生成对应的控制表达式,并将其映射到PLC上相应的变量和标记。
以上是添加HMI映射关系的一般步骤。请注意,具体的步骤可能因不同的HMI软件版本而有所不同。因此,在进行任何修改之前,请确保阅读相关的文档或咨询相关的技术支持,以确保正确地添加映射关系。