现场总线协议设计技巧 点击:4302 | 回复:19



asic

    
  • 精华:8帖
  • 求助:0帖
  • 帖子:12帖 | 119回
  • 年度积分:0
  • 历史总积分:249
  • 注册:2003年6月15日
发表于:2004-06-06 10:10:00
楼主
现场总线协议设计技巧 尽管P057单片机中HDLC是基于主/从结构的标准化协议,我们仍然可以不受其限定而制定一个适合自己系统多主结构的简单通信协议。协议和标准有很大不同,任何人都可以建立或建议一个协议,用的人多了,就可以向标准化组织申请成为标准。很多协议是事实上的标准,像世界上正在使用中的现场总线(协议)有200多种,除了8大总线之外的大概都是企业、行业标准或事实标准了。最能说明问题的一个例子:TCP/IP就是应用广泛的事实标准(而不是国际标准)。真正的标准是由少数几个公认的国际化组织制定的,—–像IEEE802、HDLC等,它们是非常全面、完善的协议,并产生于一些有实力的公司,—–像IBM的令牌环标准、和通用汽车公司的令牌总线标准等。标准,是开放式系统的设计约定。一个系统是开放的,是指它可以与世界上任何地方遵守相同标准的任何系统通信。而我们为自己(本企业、单位、局部现场)的特定需要设计的分布式控制系统通常是封闭的,与其它系统或异构网络无关。在这个前提下,我们可以制定适合自己系统的简单协议。尤其是对于给定的系统,制定协议将非常方便。 以下协议供实际设计时参考。



dd2004

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 3回
  • 年度积分:0
  • 历史总积分:58
  • 注册:2003年11月03日
发表于:2004-06-08 09:13:00
1楼
我想了解一下你的具体协议,可以吗?

asic

  • 精华:8帖
  • 求助:0帖
  • 帖子:12帖 | 119回
  • 年度积分:0
  • 历史总积分:249
  • 注册:2003年6月15日
发表于:2004-06-08 22:25:00
2楼
协议是基于芯片的。例如你在CAN控制器基础上编制的任何协议都可以视为针对自己给定系统的应用层协议,它是你的独创,显示并可以尽情发挥你自己的聪明和与众不同。其中的任何问题都可以自己解决,任何高手的帮助都显得苍白。 P057是8051内核+网络适配器的单片机,与CAN不同的是,它的MAC是基于主从访问方式的,那就更简单了!比Profibus容易多了,用它实现Profibus的逻辑令牌环+主从轮询是小菜。关键它还有物理令牌环配置。要知道8个现场总线里没一个能实现物理令牌环。 正像CAN网络能够在应用层实现主从式访问一样,HDLC网络也能在应用层实现多主式访问。简单讲RS485总线上不一定是主从式访问,也可以实现多主站访问。我用P057仿真了Profibus, LonWorks, WordFip。没什么意思,程序不足1K。有兴趣我明天再讲国外的总线为什么程序要64K之多。LonWorks 还不止吧。

丫丫丫

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2004年6月08日
发表于:2004-06-08 22:52:00
3楼
我想了解一下关于PROFIBUS的具体协议,谢谢!

pen1st

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2004年6月09日
发表于:2004-06-09 11:32:00
4楼
与西门子的协议有冲突吗?请寄资料

sjjdg

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 25回
  • 年度积分:0
  • 历史总积分:124
  • 注册:2004年5月29日
发表于:2004-06-09 16:14:00
5楼
那么厉害?给我看看,好就支持!

asic

  • 精华:8帖
  • 求助:0帖
  • 帖子:12帖 | 119回
  • 年度积分:0
  • 历史总积分:249
  • 注册:2003年6月15日
发表于:2004-06-09 17:36:00
6楼
Profibus基础——令牌总线网 令牌总线和令牌环按同样的原理进行操作,网络中各站点逻辑地组织成一个环,令牌绕环在它们之间接力传递。一个站点想要发送数据就必须等待令牌到达;但是在这里,各站点之间的通信是通过一条公共总线,如同以太网那样。重要的是,这种有序竞争的传输方式不会在总线上产生冲突。 令牌总线网络产生于美国通用汽车公司开发的制造自动化协议MAP;这是一个用于工厂计算机集成制造系统的网络协议。其中在要求实时性应用的场合,将令牌思想延用到总线拓扑结构中,定义了令牌总线协议,并成为IEEE802.4局域网标准。 令牌总线网络在工厂自动化、过程控制以及需要实时处理的应用中得到主要支持。公共总线结构可以实现生产流水线和产品装配线上的计算机设备节点接入,但是实时环境不适合采用CSMA/CD协议,一个节点数据无法预期的延迟,使流水线的流程没有确定性。令牌环网可以满足实时性和确定性要求,但是,物理环不符合流水线那样的线性组织结构;因此,解决方案就是在网络线性组织分布上采用逻辑环访问协议来使每个站点具有确定的令牌等待时间。 ……… 假定总线上的站点均由P057单片机构成,其站地址分别为01H、08H、23H、45H。系统不采用主从访问方式而采用令牌方式进行通信。逻辑环上相邻的编号站点,物理位置不一定相邻。例如,逻辑环顺序(按地址)可以为: 45H→23H→08H→01H→45H;也可以为: 08H→45H→01H→23H→08H。这与站点在总线上的物理位置无关。 与令牌环协议一样,获得令牌的站点得到发送权,它可以向其它站点发送数据,总线上其它站点都处在接收状态,与发送帧地址匹配的站点复制数据,是否需要应答,协议设计中均应规定: 1. 不要求接收站响应 …………… 2. 要求接收站响应 …………… 在现场总线中,由于传输可靠性很高,而实时性显得重要。因此,多使用……。获得令牌的站点发送完数据后,不等待接收站的响应,就将令牌传递给它的后继站。如果持有令牌的站没有数据要发送,它就直接将令牌传递给他的后继站,如此循环反复。 以下通过实验来理解令牌总线网的实际操作。 总线上的令牌 位于总线上的任一站点,要进行令牌接力,必须知道自己的前驱和后继,即自己的上游逻辑相邻节点和下游逻辑相邻节点。(谁传递给我,我传递给谁。)这一点与令牌环形网之间明显不同。因此,令牌总线逻辑环的操作比令牌(物理)环网络要多考虑一些细节。 ……… 实际上由于令牌技术算法的公平,无论逻辑顺序如何,环路中所有站点获得发送的机会相等。 回顾主-从访问机制,主站轮询从站时,相当于依次发给从站令牌,当一个令牌总线控制帧中,控制字节内容为10H时,表示该帧为令牌帧。在站点地址匹配条件下,令牌帧的接收者拥有令牌,允许发送数据或传递令牌。 以下实验演示一个令牌在总线上环绕的情景。由于逻辑环上的一个站点只需关心它的前驱和后继,与其它站点无关。因此,各站点的相关处理程序中只有3个不同地址,其他部分都一样。这3个地址是前驱地址PS、本站地址TS、后继地址NS。一个持有令牌的的站点TS必须知道自己的后继才可以把目的地址NS放入令牌帧中;一个TS站点必须知道自己的前驱才可能进行申请加入环或离开环这样的逻辑操作。 实验 令牌总线 图2是本实验自定义的令牌总线帧格式。(这可以看作是一个自我设计协议的内容。)帧中所有字段与HDLC基本帧相似,其中接收站目标地址DA相映于HDLC帧中的从站地址A;由于总线上所有站点是对等站点,不存在主站,因此必须指明发送站源地址SA;帧控制FC相映于HDLC帧中的控制字段C,SA在信息字段I中定义,FCS与HDLC基本帧中校验字段相映。 实验步骤: …………… 1. 01H站运行程序TBUS.ASM,将令牌投入逻辑环中。由各站点LED1可以观察到令牌轮转情况,逻辑环顺序为01H→45H→08H→23H→01H。 实验结束。 实验程序如下: …………… 小结 …………… 1. 实际令牌绕环轮转一周大约1ms。(注意不是Profibus。) 2. 一个逻辑环的顺序,仅由环中各站点的固定地址TS和后继NS决定。对于给定的系统,TS、NS容易确定。 对于动态变化的系统,完善的设计是建立一个包含多项不同顺序逻辑环的表格,系统运行中,根据不同条件查询表格,按表格所列相应项逻辑环进行循环。 Profibus把总线上一些智能程度高的节点(像PLC)设置为主站,智能程度低的节点(像仪表、执行器)设为从站。主站得到令牌后,对它所管辖的从站进行轮询,然后把得到的数据传递给下游主站。这是它与众不同的地方。这样做显然比所有节点都加入逻辑环的做法系统可靠性高。

lihaolihao

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:0
  • 历史总积分:26
  • 注册:2003年12月30日
发表于:2004-06-09 19:57:00
7楼
说得没错,不过太笼统了,现场总线,很流行的是PROFIBUS,可以吧这个好好的说说,我是搞现场的,不高研发,但是对PROFIBUS总线原理还是比较感兴趣得

大明

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 5回
  • 年度积分:0
  • 历史总积分:74
  • 注册:2004年6月09日
发表于:2004-06-09 20:54:00
8楼
哪儿有介绍RS-485,RS-232的书啊 我连这个都分不清

3C—好学

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:17
  • 注册:2003年8月18日
发表于:2004-06-10 10:46:00
9楼
说得好。支持,继续发!!!!!!!

LoveBus

  • 精华:1帖
  • 求助:0帖
  • 帖子:8帖 | 34回
  • 年度积分:0
  • 历史总积分:63
  • 注册:2004年3月16日
发表于:2004-06-12 21:12:00
10楼
我觉得现场总线协议和网络协议差不多! 现在困扰我的是没有看到协议源码! 有人认为,开发现场总线最好使用VC++,但是最近看java之后,我觉得用后者进行开发也可以的!毕竟传输的都是数据流吧了! 我想看看profibus协议的源码,不知道那位高手有啊!

asic

  • 精华:8帖
  • 求助:0帖
  • 帖子:12帖 | 119回
  • 年度积分:0
  • 历史总积分:249
  • 注册:2003年6月15日
发表于:2004-06-12 22:14:00
11楼
我可以提供Profibus协议源代码,但是不客气地说,厚厚一本看它干吗?研究吗?先准备拿出10年生命时光,但是有10天就自己做了。要和德国设备接口吗?既然有做得出能与德国设备接口的自己设备的水平,还要买德国设备吗? 既然不打算进行互操作,又何必浪费生命。

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2004-06-18 20:27:00
12楼
你的水平很一般呀,明远

jiere

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 3回
  • 年度积分:0
  • 历史总积分:22
  • 注册:2004年6月19日
发表于:2004-06-19 16:06:00
13楼
谁那有《Profibus实用宝典》,能否发给我一份电子版的。 我的邮箱:haisheng791228@yahoo.com.cn 谢谢

diver

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2004年6月23日
发表于:2004-06-23 23:26:00
14楼
很想了解关于swiftnet的协议 望不吝赐教 谢!

liuerfa

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 5回
  • 年度积分:0
  • 历史总积分:5
  • 注册:2008年8月31日
发表于:2008-10-11 19:04:28
15楼

谁那有《Profibus实用宝典》,能否发给我一份电子版的。我的邮箱:385309801@qq.com

谢谢了!!!

qq444

  • 精华:0帖
  • 求助:0帖
  • 帖子:13帖 | 424回
  • 年度积分:0
  • 历史总积分:2532
  • 注册:2004年10月20日
发表于:2008-10-13 20:59:43
16楼
收下了,谢谢

dengxiang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 3回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2007年6月19日
发表于:2008-10-14 10:11:58
17楼
回复内容:
对:lihaolihao 关于说得没错,不过太笼统了,现场总线,很流行的是PROFIBUS,可以吧这个好好的说说,我是搞现场的,不高研发,但是对PROFIBUS总线原理还是比较感兴趣得 内容的回复:


也不能这么说,PROFIBUS也只能算是在中国工控市场比较多,各总线的应用领域都不一样的

wukang576

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:0
  • 历史总积分:2
  • 注册:2009年3月17日
发表于:2009-03-18 12:11:50
18楼

请问下是P057吗,在网上怎么找不到阿

ts12345

  • 精华:3帖
  • 求助:0帖
  • 帖子:326帖 | 2215回
  • 年度积分:0
  • 历史总积分:3943
  • 注册:2008年2月13日
发表于:2009-05-07 13:31:16
19楼
学习中!谢谢!

热门招聘
相关主题

官方公众号

智造工程师