Profibus基础知识学习——报文
转自:http://bbs.ednchina.com/BLOG_ARTICLE_3031246.HTM
Profibus DP通讯协议简单介绍
一、 首先,Profibus DP通讯协议是一种单一的、一致性通讯协议,用于所有的工厂自动化和过程自动化。
这种协议使用“主-从”模式:一个设备(主)控制一个或多个其他设备(从);
协议使用:“令牌”模式:“令牌”通过网络传递,具有令牌控制的站有权访问网络。
Profibus DP以三种版本存在:
DP-V0:Overall command structure循环数据交换
DP-V1:扩展到非循环数据交换等
DP-V2:进一步扩展到及时,时钟同步等。
一种单一的协议适应所有的应用
Profibus DP支持所有的DCS或控制器与单个的现场设备;
工厂设备和过程设备是直接地连接到Profibus DP;
过程自动化设备(PA),聚合在“PA簇”,通过连接器或链环连接到PROFIBUS DP;
Profibus总线访问协议(第二层)对三种Profibus版本(FMS/DP/PA)均相同;
这使得通讯透明和FMS/DP/PA网络区域容易组合;
因为FMS/DP使用相同的物理介质(RS-485/FO),因此他们能组合在同一根电缆上。
二、Profibus-总线访问协议的特征
混合总线访问协议:
主站间的逻辑令牌环
主从站间的主从协议
主站:
主动站在一个限定时间内(Token Hold Time)对总线有控制权。
从站:
从站只是响应一个主站的请求,他们对总线没有控制权。
三、Profibus-总线访问协议(FDL)的特点
主站或从站可以在任何时间点接入或断开,FDL将自动重新组织令牌环;
令牌调度确保每个主站有足够的时间履行它的通信任务;因此,用户必须计算全部目标令牌环的时间;
总线访问协议有能力发现有故障的站、失效的令牌、重复的令牌、传输错误和其他所有可能的网络失败。
所有信息(包括令牌信息)在传输过程中确保高度安全,以免传输错误。海明距离HD=4.
四、Profibus-令牌调度原理
在多主网络中,令牌调度必须确保每个主站有足够的时间完成他的通讯任务;
用户组织全部目标令牌循环时间(TTR)进入所有主站的通信任务账户;
每一个主站根据下列公式计算它接收令牌后完成它的通信任务的时间(TTH):
TTH=TTR-TRR
TTH=持有令牌的时间
TTR=目标令牌循环时间
TRR=实际令牌循环时间
五、Profibus报文结构
六、网络报文的抓取
网络通讯过程中的所有通讯报文的抓取和分析是一项重要的工作,PROFIBUS总线网络中通讯的数据报文该怎么抓取,又该怎么分析?PROFIBUS TESTER 5帮您解决了这个问题,他不仅能够对网络进行基本物理层的测试,包括线缆的短路、断路、交叉、屏蔽层破损等,信号波形、电平、信噪比等等;还能够抓取所有的报文,分析报文,将报文进行详细的解析,便于您的分析。这是一款性价比非常高的产品,本人用着很是不错,需要的可以联系我hxf@hkaco.com
下图是该软件下的几个简单的截图:
Profibus基础知识学习——报文的更多相关文章
- (转)Linux基础知识学习
Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过 ...
- AXAJ基础知识学习
AXAJ基础知识学习 博客首页 Ajax简介 ajxa全称是Asynchronous Javascript And XML ,就是异步的JS 和XML 通过Ajax可以再浏览器中向服务器发送异步请求, ...
- GCC基础知识学习
GCC基础知识学习 一.GCC编译选项解析 常用编译选项 命令格式:gcc [选项] [文件名] -E:仅执行编译预处理: -S:将C代码转换为汇编代码: -c:仅执行编译操作,不进行连接操作: -o ...
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
- Vue2基础知识学习
Vue2基础知识学习 01.初识 new Vue({ el: '#root', //用于指定当前Vue实例为哪个容器服务,值通常为css选择器符 data () { return { } } }); ...
- C#基础知识学习
C#基础知识整理 学习地址:http://blog.csdn.net/column/details/csarp.html
- 韩天峰博客 php基础知识学习记录
http://rango.swoole.com 写好PHP代码真的不容易,给大家几个建议: 慎用全局变量,全局变量不好管理的,会导致你的代码依赖于全局变量,而耦合度太高. 一定不要复制粘贴代码,可重用 ...
- 〖前端开发〗HTML/CSS基础知识学习笔记
经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...
- Linq的简介和基础知识学习
学习LINQ之前,我们要知道LINQ是干什么,解决什么问题的,怎样学习? 一.LINQ简介 1.什么是LINQ? 什么是LINQ?LINQ中文翻译为语言集成查询(Language Integrated ...
随机推荐
- 20155229 《信息安全系统设计基础》 Mypwd实现
Mypwd 内容 1 学习pwd命令 2 研究pwd实现需要的系统调用(man -k; grep),写出伪代码 3 实现mypwd 4 测试mypwd 学习pwd命令 通过man pwd查看 pwd命 ...
- 仙人掌&圆方树
仙人掌&圆方树 Tags:图论 [x] [luogu4320]道路相遇 https://www.luogu.org/problemnew/show/P4320 [ ] [SDOI2018]战略 ...
- 北京Uber优步司机奖励政策(4月25日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 一维码ITF 25简介及其解码实现(zxing-cpp)
一维码ITF 25又称交插25条码,常用在序号,外箱编号等应用.交插25码是一种条和空都表示信息的条码,交插25码有两种单元宽度,每一个条码字符由五个单元组成,其中二个宽单元,三个窄单元.在一个交插2 ...
- Git 解决添加到.gitignore的忽略项不生效的问题
今天又在.gitignore添加了一些忽略项,但是后来发现一些东西命名配置了忽略项却还是没起作用,so,分析原因,可能是在我添加忽略项之前,因为这些文件就早已经被提交了,所有他们已经在版本控制中,导致 ...
- setInterval只执行一次的原因
setInterval(arrow(),) 改为: setInterval(arrow,) 原因: arrow()这是一个函数调用,函数调用就会有返回值, 而arrow()没有返回值,所以这里的arr ...
- 洛咕 P2468 [SDOI2010]粟粟的书架
强行二合一啊... 前面直接二分最小值,二维前缀和.后面用主席树查最小值.注意要写\(nlogn\). // luogu-judger-enable-o2 #include<bits/stdc+ ...
- meterpreter lhost设置
如果要监听kali本地的话,设置 0.0.0.0
- [BZOJ4476][JSOI2015]送礼物[分数规划+单调队列]
题意 题目链接 分析 分数规划之后可以得到式子:\(max-min-r*mid+l*mid\geq k*mid\) . 贪心选择,肯定区间的端点是极小或者极大值.特殊处理区间长度 \(\leq L\) ...
- 一个针对string的较好的散列算发djb2
var djb2HashCode = function(key) { var hash = 5831; for(var i = 0; i < key.length; i++) { hash = ...