线下实训
HOME
线下实训
正文内容
plc编程栈 PROFINET基础知识介绍,实例讲解西门子PLC通讯控制机器人!
发布时间 : 2024-10-05
作者 : 小编
访问数量 : 23
扫码分享至微信

PROFINET基础知识介绍,实例讲解西门子PLC通讯控制机器人!

工业以太网一般使用IEEE 802.3中定义的以太网标准。针对自动化系统的网络节点辅助采用了服务质量( QOS)机制。PROFINET作为工业以太网之一,它采用了三种不同的方法来实现。这样既满足了普通以太网的需求,又满足了工业系统对不同应用的实时性的要求。如下图1所示。

图1、PROFINET使用到的三种协议栈

① 使用了IEEE 802.3以太网标准和TCP/IP,报文结构如图2所示。大多数的PROFINET通信是通过没有被修改的以太网和TCP/IP包来完成。这使得可以无限制地把办公网络的应用集成到PROFINET网络中。

图2、TCP/IP报文结构

② RT的通信不仅使用了带有优先级的以太网报文帧(如下图3所示),而且优化掉了OSI协议栈的3层和4层。这样大大缩短了实时报文在协议栈的处理时间,进一步提高了实时性能。由于没有TCP/IP的协议栈,所以RT的报文不能路由。

图3、PROFINET RT报文结构

③ IRT通信是满足最高的实时要求,特别是针对于等时同步的应用。IRT是基于以太网的扩展协议栈,能够同步所有的通信伙伴并使用调度机制。IRT通信需要在IRT应用的网络区域内使用IRT交换机。在IRT域内也可以并行传输TCP/IP协议包,如图4所示。

图4、PN控制器和PN设备的分片处理机制

以PROFINET RT为例来理解在整个通信的过程中实时性能是如何来保证的。

从通信的终端设备(PN控制器和PN设备)来看,首先采用了优化的协议栈,这一点可以在图1的 ②看到。这样一来在终端的设备上数据报文被处理的时间大大的缩短,这是实时性能保证的一个方面。其次是终端设备上采用的分时间段处理机制,这一点可以在图5看到。这样保证了在每个通信的循环的周期内终端设备即可以处理RT的实时数据又可以处理TCP或UDP的数据。且在每个循环内优先处理RT的实时数据。这里需要强调的是每个PN终端设备只对自己的负责,需要发送的数据会按发送循环发送、对于由其他设备发到自己的数据会进行立即接收,且发送和接收是并行处理。

图5、RT的时间调度机制

从通信的传输设备(SCALANCE X交换机)来看,首先采用百兆全双工的交换网络,这样一来每个终端设备的每个端口都是独享带宽,且可以双向不间断的收发数据。其次是交换机支持802.1P或802.1Q的标准,使得发到交换机网络的PN的数据帧被优先处理和转发,如图6所示。这一点保证了PN在网络上的快速转发,也是实时性能保证的另一个方面。

图6、交换机802.1Q的工作机制

上面介绍的是PN RT的实时性能从机理上如何保证的。而从量化的角度去分析的话,PN RT完全是靠计算来精确保证每个发送循环所能发送的报文及对RT数据的时间的预留。

对于RT来说,在物理层上传输的最小报文帧来为88个字节,最大报文帧来为1488个字节。其中包括了12个字节的帧间隔,如下图7所示。

图7、RT的报文的长度

百以太网的传输速率 :

每个字节传输需要的时间:

最小的RT报文帧需要的传输时间 0.08

一个PN控制下带3个最小报文帧(40个字节的C_SDU)的PN设备,PN 控制器的发送循环为250 ,通信建立后在PN接口上抓报分析PN的通信可以分析出PN数据帧对时间调度的情况,如下图8所示。

图8、PN RT的时间调度机制

除了对PROFINET RT和IRT的通信调度的分析外,还对PROFINET的抗干扰性作了大量的研究。在对PROFINET推广的时候,很多用户很关心PROFINET是不是和PRROFIBUS一样,存在抗干扰的性能差的特点。我从理论和实际实验上验证了PROFINET的抗干扰性能优于PROFIBUS的抗干扰性能。PROFINET是基于IEEE 802.3的以太网标准。所以对PROFINET的抗干扰分析实质上是对工业以太网的抗干扰分析。

好吧!理论说完了,我们实例讲解一下吧!

今天带来的案例是博途PLC通过PROFINET连接库卡机器人!

网线连接至控制柜门上的KLI端口,另一端连接到交换机,PLC也连接到交换机(交换机无型号要求),交换机再连接到电脑。

首先将编程电脑、PLC、KUKA设置成统一网段,因KUKA的底层设置原因,最好不更改机器人IP地址

1:添加新设备 2:导入GSD文件

安装GSD,并把KUKA设备进行组态

在视图里面进行连接

删除安全模块、设置地址、设备名称

设置好以上后(包括PLC地址),接下来就可以编译下载到PLC。下载完成后PLC会报红灯,是因为下一级组件存在故障,即还没有设置机器人端,连接不到下一级组件,所以报错。也可以使用此方法判断是否连接成功。

WorkVisual对KUKA进行设置

激活、添加Profinet、DTM选择Profinet

双击Profinet进行设置

进行信号映射

首先生成代码,再下载到控制器,注意在控制器上做好确认工作

机器人侧的信号确认:

机器人侧即为映射时的IN(..),PLC侧则是在博图里对KUKA设备设置时的IO地址

PLC教学3——块操作指令及栈操作指令

块操作指令

1) 串联电路块的并联(块或操作指令)----OLD

两个或两个以上触点串联形成的支路叫串联电路块

OLD功能:用于串联电路块的并联连接

例 块或操作指令应用

使用说明:

(1)除在网络块逻辑运算的开始使用LD或LDN指令外,在块电路的开始也要使用LD或LDN指令。

(2)每完成一次块电路的并联时要写上OLD指令。

(3)OLD指令无操作数

2)并联电路块的串联连接指令(块与操作)----ALD

用于将以LD或LDN起始的并联电路块和另外的LD或LDN起始的并联电路块串联连接

例 块与(ALD) 指令的应用

使用说明:

在块电路开始时要使用LD或LDN指令。

在每完成一次块电路的串联连接后要写上ALD指令。

ALD指令无操作数

栈操作指令

S7-200系列PLC使用9层堆栈来处理所有逻辑操作,和计算机中的堆栈结构相同。堆栈是一组能够存储和取出数据的暂存单元,其特点是"后进先出"。每一次进行入栈操作,新值放入栈顶,栈底值丢失;每次进行出栈操作,栈顶值弹出,栈底值补进随机数。

(1)逻辑入栈指令(LPS)

逻辑入栈指令又称为分支电路开始指令。在梯形图的中的分支结构中,可以形象地看出,它生成一条新的母线,其左侧为原来的主逻辑块,右侧为新的从逻辑块,因此可以直接编程

从堆栈使用来上来讲,LPS指令的作用是把新的分支母线的状态压入堆栈栈顶。

2.逻辑读栈(LRD)逻辑读栈指令在梯形图分支结构中,当新母线左侧为主逻辑块时,LPS开始右侧的第一从逻辑块编程,LRD开始第二个以后的从逻辑块编程。

3.逻辑出栈指令(LPP)逻辑出栈指令又称为分支结束指令。在梯形图分支结构中,LPP用于LPS产生的新母线右侧的最后一个从逻辑块编程。弹出分支母线的状态出堆栈。

例 LPS、LRD、LPP应用举例

例 LPS、LRD、LPP应用举例

使用说明:

由于受堆栈空间的限制(9层堆栈),LPS、LPP指令连续使用时应少于9次

LPS、LPP指令必须成对使用,它们之间可使用LRD指令。

LPS、LPP、LRD指令无操作数。

相关问答

三菱plc进栈和出栈详解?

PLC(可编程逻辑控制器)的进栈和出栈操作是函数块或指令在执行过程中使用的一种存储数据的方式。进栈指的是将数据存储到栈顶,而出栈则是从栈顶取出数据。在三...

三菱plc特殊指令有哪些?

ANDANI触点的串联指令;;ORORI触点的并联指令;ORB串联电路的并联指令;ANB并联电路的串联指令;MPSMRDMPP进栈,读栈,出栈这个很少用;LDPLDF...

帮个忙老铁们有什么好的!plc控制柜?,PLC控制柜使用方便吗??

[回答]ORI:“或非”操作指令,表示并联一个常闭触点。ANB:块“与”操作指令,用于两个或两个以上触点并联在一起的回路块的串联操作。MRD:读栈指令。LD常开...

fx系列的PLC的取反指令是怎么运行的?_?

ri:并反指令(常闭触点)...and:串指令(常开触点)andani:串反指令(常闭触点)andinverseor:并指令(常开触点)orori:并反指令(常闭触点)orinverseor...

plc常见的特殊功能指令?

在三菱PLC中常用的功能指令有27条;LD开点\LDI闭点\OUT线圈触点及线圈输出指令;ANDANI触点的串联指令;;ORORI触点的并联指令;ORB串联电路的并联指...

PLC基本指令中,ANI,OR,ORI,ANB,MRD都是什么意思呢?

20个基本指令:LD:取指令(常开触点)LDI:取反指令(常闭触点)AND:串指令(常开触点)ANI:串反指令(常闭触点)OR:并指令(常开触点)ORI:并反指令(常闭...20个基本指...

C语言怎么样,好学吗?

C语言学起来还是比较简单的,关键字少;贴近硬件,学会编程的同时,还可以对计算机底层有初步的了解;对以后学习好其他的编程语言也是很有帮助的,比如说,什...对以...

mps运算完后可以执行什么?

MPS、MRD、MPP为多重输出指令MPS为进栈指令,MRD为读栈指令,MPP为出栈指令。PLC中有11个存储运算中间结果的存储器,称之为栈存储器。进栈MPS指令就是将运算...

很早就对编程感兴趣,可是不知道从哪里开始,有什么方法,它有什么用途?

编程可以干什么?处理数据,数据持久化是任何编程都要解决的问题,编程怎么处理数据呢?数据库引擎,比如Oracle、MySQL、PostgresSQL等关系型数据库,特点是各...

传感器网络接入方式有哪些?

4-20mA需要PLC模拟量输入端接一个采样电阻到地,需要确认是否有这样的采样电阻,根据PLC的模拟量最大输入电压,选择合适的电阻,如果最高支持3.3V,宜选用...无...

 家装智能系统  安卓移动应用开发 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部