设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
控制专题
›
『数控/电机控制/运动控制/工业总线』
›
PROFINET工业以太网教程(7)——我要找到你(IO设备) ...
返回列表
发新帖
PROFINET工业以太网教程(7)——我要找到你(IO设备)
[复制链接]
68714
|
0
|
2024-8-10 02:15:04
|
显示全部楼层
|
阅读模式
前面的文章我们介绍了PROFINET IO系统包括IO控制器和IO设备,它们之间通常是通过交换机用PN网线相连。IO控制器(CPU)在冷启动/暖启动时,会根据其内部的硬件组态,查找相应的IO设备。那么它是通过怎样一种方式来查找IO设备呢?有经验的小伙伴可能知道,它是通过设备名(device name)的方式来查找IO设备的。那么设备名又是基于一种怎样的规则或者协议呢?为什么使用设备名就能找到相应的IO设备呢?今天这篇文章,我们就由浅入深,来聊聊查找IO设备的话题。本文包括如下几个部分:
什么是设备名?
怎样分配设备名?
PROFINET发现与基本配置协议(DCP)
1、什么是设备名?
设备名(device name)是IO设备的标识,它是IO控制器查找IO设备的依据,在整个网络中是唯一的。每一个IO设备在组态时,系统(硬件组态环境)会为其分配一个默认的设备名,比如下面这张图:
我之前曾写过一篇文章,介绍PROFINET的设备名,这里不再赘述,感兴趣的小伙伴点击下面的链接看下:
为什么Profinet的分布式模块要有设备名?
2、怎样分配设备名?
我们在硬件组态中配置好设备名,然后下载到CPU(IO控制器)中。此时,IO控制器已经知道自己要寻找的目标了。但是对于IO设备来说,它还不知道自己的名字。所以,我们要想办法告诉IO设备它叫什么名字。比如告诉某个设备它的名字是"张三",那么当IO控制器喊"张三"的时候,它就知道在喊它,因此,也就会做出应答。
那么怎么告诉IO设备它叫什么名字呢?
我们需要一些软件工具的。
比如,博途开发环境,或者PRONETA,或者PST(Primary Setup Tool)。
先来介绍下博途环境下如何分配设备名。
双击博途开发环境左侧项目树的【在线访问】节点,找到你使用的网卡,
双击【更新可访问的设备】,可以找到所有的PROFINET节点,如下图所示:
选中要分配设备名的节点,在其右侧的【功能】-【分配PROFINET设备名称】中设置新的设备名称,如下图所示:
关于PRONETA和PST工具,请看下面的视频和文章介绍:
西门子网络工具PRONETA使用介绍
推荐一个免费好用的西门子PLC调试工具
3、PROFINET发现与基本配置协议(DCP)
PROFINET DCP协议是一种集成于PROFINET软件工具、IO控制器和IO设备内部的一种协议,DCP是英文"Discovery and basic Configuration Protocol"的缩写,中文翻译为"发现与基本配置协议"。
通过DCP协议,IO控制器或者软件工具能够发现IO设备,分配IO设备的名称和IP地址。我们在使用软件工具发现IO设备后,可以只分配设备名。正确的分配设备名后,IO控制器就能找到该IO设备,随后会为其分配IP地址。
在调试的初期,要打通PROFINET网络,首要的任务就是分配设备名称。
曾经有小伙伴提出问题"为什么IO设备不通过分配IP地址的方式来寻址呢?"
其实,深层次的原因是因为DCP协议是一种位于数据链路层的协议,它在网络层(IP)以下,当然不会使用IP地址的。
PROFINET DCP协议和计算机网络中的DHCP协议很像。DHCP是英文"Dynamic Host Configuration Protocol"的缩写,中文翻译为"动态主机配置协议"。它主要通过IP地址的集中管理与分配,使网络环境中的计算机动态获得IP地址、网关地址、DNS服务器地址等信息。
不过,DHCP协议是传输层协议,它的帧结构与DCP协议帧的结构还是有很大不同。
好了,关于IO设备的查找就先讲到这里。
如果大家感兴趣,本系列下一篇文章将详细介绍下DCP协议。
我的微信视频号以视频的方式分享一些工控小知识,欢迎点击观看:
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
LYX000001
回复楼主
返回列表
『数控/电机控制/运动控制/工业总线』
『机器视觉/AI/IoT/机器人论坛』
『高级语言/组态软件/触摸屏』
『操作系统xp/xin7/win10/linux』