CN105955103A - 基于s7协议的hmi与plc数据通信方法及设备 - Google Patents
基于s7协议的hmi与plc数据通信方法及设备 Download PDFInfo
- Publication number
- CN105955103A CN105955103A CN201610275663.3A CN201610275663A CN105955103A CN 105955103 A CN105955103 A CN 105955103A CN 201610275663 A CN201610275663 A CN 201610275663A CN 105955103 A CN105955103 A CN 105955103A
- Authority
- CN
- China
- Prior art keywords
- data
- plc
- hmi
- agreement
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23269—Program provides for communication protocol with device, equipment
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Communication Control (AREA)
Abstract
基于S7协议的HMI与PLC数据通信方法,包括HMI任务与PLC任务,所述HMI任务包括:等待接收数据;判断缓存数据是否为握手数据,并验证是否符合S7协议;在PLC端进行数据处理及数据交换;判断本步骤中的信号处理完成时间是否超时。所述PLC任务包括如下步骤:等待及接收HMI信号,将接收的数据发送到PLC端;等待PLC端数据是否超时,将数据拷贝到缓冲区,接收缓存数据。本发明还公开了一种基于S7协议的HMI与PLC数据通信设备。采用本发明所述基于S7协议的HMI与PLC数据通信方法及设备,解决了S7系列PLC设备与HMI通信之间的互联,实现不同网络之间的数据交换,无需独立的通信模块,降低了成本。
Description
技术领域
本发明属于电子通信领域,涉及一种数据交换方法及设备,具体涉及一种基于S7协议的HMI与PLC数据通信方法及设备。
背景技术
HMI是Human Machine Interface 的缩写,“人机接口”,也叫人机界面。人机界面(又称用户界面或使用者界面)是系统和用户之间进行交互和信息交换的媒介,在通信领域,HMI也常作为人机交互接口数据的简称。PLC,又称可编程逻辑控制器,是一种采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程,在通信中,PLC常指存储在可编程逻辑器件中的计算机数据。
在工业控制系统中,大部分系统都需要HMI与PLC做一个实时的人机交互界面,基于S7以太网协议开发的S7-1200/S7-300/S7-400系列产品由于速度快精度高而得到广泛运用,但基于S7协议的PLC不能与一般的HMI设备直接进行数据交换,在S7协议背景下,缺乏一种通用的解决PLC与HMI数据实时交换的方法及设备。
发明内容
为解决在S7协议背景下,缺乏一种通用的解决PLC与HMI数据实时交换的方法及设备的技术问题,本发明公开了一种基于S7协议的HMI与PLC数据通信方法及设备。
本发明所述基于S7协议的HMI与PLC数据通信方法,包括HMI任务与PLC任务,所述HMI任务包括如下步骤:
S11:初始化HMI端任务,等待PLC端任务初始化完成;
S12:等待接收数据;判断接收端是否为空,是则继续等待,否则进行步骤S13;
S13:将接收端数据拷贝到缓冲区,接收缓存数据;
S14: 判断缓存数据是否为握手数据,并验证是否符合S7协议;是则进入步骤S15;否则返回步骤S12;
S15:判断是否为数据交换报文,是则进入步骤S16,否则返回步骤S12;
S16:判断数据交换报文的V区设置,根据V区设置将数据分散存储在PLC的不同地址;
S17:在PLC端进行数据处理及数据交换;
S18:等待PLC端信号处理完成并判断本步骤中的信号处理完成时间是否超时;如果超时,继续判断超时次数是否满A1次,累计超时A1次之后,则返回步骤S11;如超时未满A1次,则将数据做相应的处理返回到HMI;同时回到步骤S12;
所述PLC任务包括如下步骤:
S21:初始化PLC端任务,连接PLC,绑定PLC的102端口;
S22:等待及接收HMI信号,将接收的数据发送到PLC端;
S23:等待及接收PLC端数据;
S24:判断等待PLC端数据是否超时,如果没有超时,则进入步骤S25;如果超时,则继续判断是否累计达A2次,如果累计达到A2次超时,就将返回步骤S21,如果超时但累计次数未达A2次,则返回步骤S22;
S25:将数据拷贝到缓冲区,接收缓存数据,接收完毕后返回步骤S22;
所述A1及A2为大于2的正整数。
优选的,所述A1=A2=5。
优选的,所述步骤S14 中对S7协议的验证方法为:等待S7协议的三次握手完成,三次握手完成,则符合S7协议。
本发明还公开了一种基于S7协议的HMI与PLC数据通信设备,其特征在于,包括中央处理器及与中央处理器连接的网络通信芯片和缓存器,所述网络通信芯片连接有多个数据接口,所述中央处理器中安装有能实现如前所述方法的软件程序。
优选的,所述数据接口为RJ45接口。
优选的,所述中央处理器为STM32F407VET6,所述网络通信芯片为IP175DLFI。
优选的,所述中央处理器和网络通信芯片间通过MII接口连接。
采用本发明所述基于S7协议的HMI与PLC数据通信方法及设备,解决了S7系列PLC设备与HMI通信之间的互联,实现不同网络之间的数据交换,无需独立的通信模块,降低了成本;从而为HMI与PLC互联用户带来更大的效益并节约了成本,为S7协议系列产品的应用开拓了更大市场。
附图说明
图1为本发明所述基于S7协议的HMI与PLC数据通信方法中HMI任务的一种具体实施方式流程示意图;
图2为本发明所述基于S7协议的HMI与PLC数据通信方法中PLC任务的一种具体实施方式流程示意图;
图3为本发明所述基于S7协议的HMI与PLC数据通信设备的一种具体实施方式结构示意图。
具体实施方式
下面结合附图,对本发明的具体实施方式作进一步的详细说明。
本发明所述基于S7协议的HMI与PLC数据通信方法,包括HMI任务与PLC任务,如图1所示的具体实施方式中,所述HMI任务包括如下步骤:
S11:初始化HMI端任务,等待PLC端任务初始化完成;
S12:等待接收数据;判断接收端是否为空,是则继续等待,否则进行步骤S13;
S13:将接收端数据拷贝到缓冲区,接收缓存数据;
所谓缓冲区为硬件系统提供,可以是专门的缓存器件如FLASH,也可以是在处理器的存储设备中单独临时划分出的某些存储区域。
S14: 判断缓存数据是否为握手数据,并验证是否符合S7协议;是则进入步骤S15;否则返回步骤S12;
S7协议包括很多自身信号特点,对这些特点进行验证即可判断出所接收的数据是否符合S7协议,一种优选实施方式为判断握手数据是否连续完成三次握手,是则进入下一步,如果缓存数据不是握手数据或不符合S7协议,例如不能完成三次握手,则重新回到步骤S12的等待状态。
S15:判断是否为数据交换报文,是则进入步骤S16,否则返回步骤S12;
S16:判断数据交换报文的V区设置,根据V区设置将数据分散存储在PLC的不同地址;
所谓V区设置是PLC数据交换的一个重要设置,根据不同的V区设置定义规则,数据交换报文中的数据被重新分散并存储在PLC的不同地址中。
S17:在PLC端进行数据处理及数据交换;
S18:等待PLC端信号处理完成并判断本步骤中的信号处理完成时间是否超时;如果超时,继续判断超时次数是否满A1次,累计超时A1 次之后,则返回步骤S11;如超时未满A1次,则将数据做相应的处理返回到HMI;同时回到步骤S12。
判断数据是否超时是对数据交换过程是否正常的常用方法,当连续出现信号处理时间超时时,则认为接收的数据存在问题或系统自身工作不正常,根据具体情况设置一个具体的超时次数A1,便于用户快速察觉各种不正常状态,通过重启系统回到步骤S11回归到正常的数据传递状态。如果只是偶然出现个别超时,未满足超时次数A1,则认为本次数据传递不正常,返回到步骤S12。
上述HMI任务可完成将HMI端接收的数据传递到PLC端的过程。
如图2所示的具体实施方式中,所述PLC任务包括如下步骤:
S21:初始化PLC端任务,连接PLC,绑定PLC的102端口;
102端口是PLC数据传输中的数据端口,绑定102端口是PLC数据传输的必须步骤。
S22:等待及接收HMI信号,将接收的数据发送到PLC端;
S23:等待及接收PLC端数据;
S24:判断等待PLC端数据是否超时,如果没有超时,则进入步骤S25;如果超时,则继续判断是否累计达A2次,如果累计达到A2次超时,就将返回步骤S21,如果超时但累计次数未达A2次,则返回步骤S22;
S25:将数据拷贝到缓冲区,接收缓存数据,接收完毕后返回步骤S22。
A1及A2至少为大于2的正整数,通常设置为5次。
采用本发明所述基于S7协议的HMI与PLC数据通信方法及设备,解决了S7系列PLC设备与HMI通信之间的互联,实现不同网络之间的数据交换,无需独立的通信模块,降低了成本;从而为HMI与PLC互联用户带来更大的效益并节约了成本,为S7协议系列产品的应用开拓了更大市场。
以上方法采用本领域常用的各种计算机语言编程实现,为更好的实现以上方法,本发明还公开了一种基于S7协议的HMI与PLC数据通信设备,包括中央处理器及与中央处理器连接的网络通信芯片和缓存器,所述网络通信芯片连接有多个数据接口,所述中央处理器中安装有能实现如前所述方法的软件程序。
在图3所示的具体实施方式中,中央处理器为由STM32F407VET6组成的嵌入式处理器,由IP175DLFI构成的网络通信芯片,FLASH模块及晶振电路、复位电路和指示电路,其中嵌入式处理器通过MII接口与网络通信芯片通信连接,MII接口数据传输速度快。FLASH模块与嵌入式处理器通信连接,晶振电路、复位电路和指示电路与嵌入式处理器信号连接。
在本实施例中,还包括用于驱动该转换器的电源处理模块,所述电源处理模块包括通信模块隔离电源,网络芯片线性电源,主控芯片线性电源,其中,所述通信模块隔离电源选用5V电源,隔离电压高达3000V,这样的设计使得电源输入和系统是始终处于隔离状态;所述网络芯片线性电源与IP175DLFI网络通信芯片电性连接,所述主控芯片线性电源与嵌入式处理器电性连接。
电源模块可以选用5V和3.3V电源作为主电源。其中,嵌入式处理器及网络通信芯片采用3.3V电源供电,其余部件模块采用5V电源供电,电源隔离电压高达3000V,可使电源输入和系统是始终处于隔离状态。
嵌入式处理器STM32F407VET6为32位处理器,网络通信芯片优选采用IP175DLFI,通过多个RJ45接口与PLC和HMI设备连接,STM32F407VET6与网络芯片IP175DLFI通过MII接口连接实现通信,软件程序存储在中央处理器STM32F407VET6中,在HMI任务中,STM32F407VET6接收到数据后将对数据进行相应的计算或移位处理,然后将转换后的数据转发给PLC,同样在PLC任务中,PLC接收到数据之后也会通过STM32F407VET6的数据处理流程并且将PLC的数据转发给HMI从而实现HMI与PLC的协议转换使得PLC和HMI进行数据交换。硬件中还可以设置由过流保护、过压保护、反接保护组成的电源保护模块,以提高系统整体安全系数。
采用本发明所述基于S7协议的HMI与PLC数据通信设备的上述具体实施方式,具备如下优越性:
一、STM32F407VET6嵌入式处理器和IP175DLFI网络通信芯片间通过MII接口连接,数据传输速度快。
二、采用隔离电源提供5V电压,保证了总线工作的独立性,减少了设备电源对总线的干扰;
三、STM32F407VET6嵌入式处理器采用采用独立的25M有源晶振,使系统更加稳定可靠;
四、由过流保护、过压保护、反接保护组成的电源保护模块,可以为电源模块提供保护保障,确保系统运行稳定,异常情况下不会造成损害。
前文所述的为本发明的各个优选实施例,各个优选实施例中的优选实施方式如果不是明显自相矛盾或以某一优选实施方式为前提,各个优选实施方式都可以任意叠加组合使用,所述实施例以及实施例中的具体参数仅是为了清楚表述发明人的发明验证过程,并非用以限制本发明的专利保护范围,本发明的专利保护范围仍然以其权利要求书为准,凡是运用本发明的说明书及附图内容所作的等同结构变化,同理均应包含在本发明的保护范围内。
Claims (7)
1.基于S7协议的HMI与PLC数据通信方法,包括HMI任务与PLC任务,其特征在于,所述HMI任务包括如下步骤:
S11:初始化HMI端任务,等待PLC端任务初始化完成;
S12:等待接收数据;判断接收端是否为空,是则继续等待,否则进行步骤S13;
S13:将接收端数据拷贝到缓冲区,接收缓存数据;
S14: 判断缓存数据是否为握手数据,并验证是否符合S7协议;是则进入步骤S15;否则返回步骤S12;
S15:判断是否为数据交换报文,是则进入步骤S16,否则返回步骤S12;
S16:判断数据交换报文的V区设置,根据V区设置将数据分散存储在PLC的不同地址;
S17:在PLC端进行数据处理及数据交换;
S18:等待PLC端信号处理完成并判断本步骤中的信号处理完成时间是否超时;如果超时,继续判断超时次数是否满A1次,累计超时A1次之后,则返回步骤S11;如超时未满A1次,则将数据做相应的处理返回到HMI;同时回到步骤S12;
所述PLC任务包括如下步骤:
S21:初始化PLC端任务,连接PLC,绑定PLC的102端口;
S22:等待及接收HMI信号,将接收的数据发送到PLC端;
S23:等待及接收PLC端数据;
S24:判断等待PLC端数据是否超时,如果没有超时,则进入步骤S25;如果超时,则继续判断是否累计达A2次,如果累计达到A2次超时,就将返回步骤S21,如果超时但累计次数未达A2次,则返回步骤S22;
S25:将数据拷贝到缓冲区,接收缓存数据,接收完毕后返回步骤S22;
所述A1及A2为大于2的正整数。
2.如权利要求1所述的基于S7协议的HMI与PLC数据通信方法,其特征在于,所述A1=A2=5。
3.如权利要求1所述的基于S7协议的HMI与PLC数据通信方法,其特征在于,所述步骤S14 中对S7协议的验证方法为:等待S7协议的三次握手完成,三次握手完成,则符合S7协议。
4.基于S7协议的HMI与PLC数据通信设备,其特征在于,包括中央处理器及与中央处理器连接的网络通信芯片和缓存器,所述网络通信芯片连接有多个数据接口,所述中央处理器中安装有能实现如权利要求1至3任意一项所述方法的软件程序。
5.如权利要求1所述的基于S7协议的HMI与PLC数据通信设备,其特征在于,所述数据接口为RJ45接口。
6.如权利要求1所述的基于S7协议的HMI与PLC数据通信设备,其特征在于,所述中央处理器为STM32F407VET6,所述网络通信芯片为IP175DLFI。
7.如权利要求6所述的基于S7协议的HMI与PLC数据通信设备,其特征在于,所述中央处理器和网络通信芯片间通过MII接口连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610275663.3A CN105955103A (zh) | 2016-04-29 | 2016-04-29 | 基于s7协议的hmi与plc数据通信方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610275663.3A CN105955103A (zh) | 2016-04-29 | 2016-04-29 | 基于s7协议的hmi与plc数据通信方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105955103A true CN105955103A (zh) | 2016-09-21 |
Family
ID=56916785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610275663.3A Pending CN105955103A (zh) | 2016-04-29 | 2016-04-29 | 基于s7协议的hmi与plc数据通信方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105955103A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110032137A (zh) * | 2019-04-26 | 2019-07-19 | 深圳市佳运通电子有限公司 | 用于油田加热炉管理系统的功能板卡及其应用方法 |
CN110535729A (zh) * | 2019-09-09 | 2019-12-03 | 杭州玖欣物联科技有限公司 | 一种基于s7工业协议兼容工业网关的兼容测试方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1818817A (zh) * | 2006-03-08 | 2006-08-16 | 天津成科自动化工程技术有限公司 | 总线式控制器装置 |
CN202120086U (zh) * | 2011-06-01 | 2012-01-18 | 威海华东数控股份有限公司 | 数控龙门机床电器控制装置 |
CN103019102A (zh) * | 2012-11-28 | 2013-04-03 | 河南科技大学东海硅产业节能技术研究院 | 半实物计算机仿真网络实验装置 |
JP2014060636A (ja) * | 2012-09-19 | 2014-04-03 | Mitsubishi Electric Corp | 通信インタフェース変換装置 |
CN104423954A (zh) * | 2013-09-04 | 2015-03-18 | 深圳市康必达智能科技有限公司 | 一种kemcs控制系统软件 |
-
2016
- 2016-04-29 CN CN201610275663.3A patent/CN105955103A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1818817A (zh) * | 2006-03-08 | 2006-08-16 | 天津成科自动化工程技术有限公司 | 总线式控制器装置 |
CN202120086U (zh) * | 2011-06-01 | 2012-01-18 | 威海华东数控股份有限公司 | 数控龙门机床电器控制装置 |
JP2014060636A (ja) * | 2012-09-19 | 2014-04-03 | Mitsubishi Electric Corp | 通信インタフェース変換装置 |
CN103019102A (zh) * | 2012-11-28 | 2013-04-03 | 河南科技大学东海硅产业节能技术研究院 | 半实物计算机仿真网络实验装置 |
CN104423954A (zh) * | 2013-09-04 | 2015-03-18 | 深圳市康必达智能科技有限公司 | 一种kemcs控制系统软件 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110032137A (zh) * | 2019-04-26 | 2019-07-19 | 深圳市佳运通电子有限公司 | 用于油田加热炉管理系统的功能板卡及其应用方法 |
CN110032137B (zh) * | 2019-04-26 | 2020-04-24 | 深圳市佳运通电子有限公司 | 用于油田加热炉管理系统的功能板卡及其应用方法 |
CN110535729A (zh) * | 2019-09-09 | 2019-12-03 | 杭州玖欣物联科技有限公司 | 一种基于s7工业协议兼容工业网关的兼容测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW203673B (zh) | ||
CN102231718B (zh) | 一种EtherCAT与CAN通信的网关及其通信方法 | |
CN103095538B (zh) | 一种多类工业以太网总线集成主站 | |
CN107980215A (zh) | 一种协议转换器及协议转换方法 | |
CN101132328A (zh) | 实时工业以太网EtherCAT通信控制器 | |
CN103095537A (zh) | 一种并行控制两类工业以太网总线从站设备的数控装置 | |
CN102710478A (zh) | Profibus-DP和Modbus集成化从节点装置 | |
CN102279827A (zh) | 一种多功能通讯转接盒 | |
CN105978896A (zh) | 一种工业以太网从站转Modbus主站的通信装置 | |
CN102291337B (zh) | EtherCAT协议与Profibus-DP协议通信转换的网关及其通信方法 | |
CN105094037B (zh) | 用于使用通用串行总线通信的可编程逻辑控制器的扩展模块 | |
CN110519138A (zh) | 一种Profibus-DP主站协议的实现方法及系统 | |
CN105955103A (zh) | 基于s7协议的hmi与plc数据通信方法及设备 | |
CN106657115A (zh) | 一种变频器控制系统及其协议转换卡 | |
CN106713325A (zh) | 一种通讯协议转换卡 | |
CN100459612C (zh) | 一种通讯传输控制装置及实现通讯协议控制的方法 | |
CN110401586A (zh) | 一种总线通信方法、装置、设备及可读存储介质 | |
CN102263709A (zh) | 一种EtherCAT与RS485通信转换的网关及其通信方法 | |
CN105630718A (zh) | 提供主机即时切换分享通用串行总线电子设备的电子装置 | |
CN207264382U (zh) | 现场可编程门阵列多版本配置的芯片及系统 | |
CN104077258B (zh) | SPI与Localbus的互通方法及其应用 | |
CN206100049U (zh) | 一种协议转换器 | |
WO2023208161A1 (zh) | 一种通信链路切换控制电路、通信链路和服务器 | |
CN109684251A (zh) | 一种芯片io数据的处理方法及一种芯片 | |
CN201820120U (zh) | 自适应多总线执行机构控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160921 |
|
WD01 | Invention patent application deemed withdrawn after publication |