PC作为ProfibusDP单主站的实现-转贴 点击:963 | 回复:1



xiaolifeidao

    
  • 精华:28帖
  • 求助:0帖
  • 帖子:130帖 | 357回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2005-12-12 16:06:00
楼主
PC作为ProfibusDP单主站的实现 杨胜波 于春梅(四川绵阳西南科技大学) 摘 要:主要介绍Profibus现场总线的基本特性和通信协议,讨论了以PC作为ProfibusDP单主站实现的可行性,并给出了C语言实现的程序。 关键词:Profibus;单主站;PC机;通信 一、Profibus概述 Profibus是由SIEMENS公司推出的一种开放式现场总线标准,1989年成为德国标准DIN19245,1996年成为欧洲标准EN50170,1999年12月被接受为国际标准IEC61158的一部分。Profibus是目前欧洲乃至全球应用最广泛的总线系统,他速度快成本低,几乎所有的PLC产品和极多的自动化外设产品都提供Profibus接口。 Profibus根据不同的应用场合提供3个兼容版本:ProfibusDP,ProfibusFMS和ProfibusPA。 ProfibusDP适用于现场级分布式自动化外设之间的高速数据传输(DP的含义为分散的外围设备)。他的体系结构包括ISO/OSI参考模型第1,2层以及用户接口,传输技术使用RS485(称为H2),这种结构能保证通信的实时性和系统实现的低成本。在用户接口中使用了定义用户和系统使用的应用功能和描述现场设备行为的行规。 ProfibusFMS(Fieldbus Message Specification)是现场级和单元级通信的通用解决方案,主要解决单元级主站之间(PLC和PC)的互相通信,因此高级功能比快速性系统反应时间更重要。FMS使用了ISO/OSI参考模型第1,2,7层,第1,2层与ProfibusDP兼容,第7层包括了应用协议并向用户提供了广泛的通信服务功能。 ProfibusPA是在ProfibusDP的基础上通过优化、扩展而来,主要用于化工等对安全性要求高的场合,通信采用扩展的ProfibusDP协议。传输技术改用IEC11582(称为H1),可确保本质安全性并使现场设备通过总线供电,通过分段耦合器,能方便地和ProfibusDP,ProfibusFMS相连。 二、Profibus通信协议 Profibus通信协议通过ISO/OSI参考模型第2层实现,在Profibus中第2层称为FDL(Fieldbus Data Link)。 Profibus总线上的设备包括2类:主站和从站。主站在一个限定时间 (令牌持有时间TokenHoldTime) 内对总线有控制权,这时主站可以向从站发送数据或请求从站的数据。从站对总线没有控制权,只是响应一个主站的请求或确认主站发送的数据。因此Profibus通信协议包括主站之间的令牌传递协议和主、 从站之间的主从协议。 令牌传递协议确保每个主站有足够的时间履行他的通信任务,令牌在所有主站中循环一周的最长时间是一定的。主从协议保证主站在令牌持有时间内与从站的通信。 三、ProfibusDP单主站系统 ProfibusDP允许构成单主站或多主站系统。多主站配置中,主站与各自从站构成相互独立的子系统,涉及令牌的传递。而作为现场级总线系统,很多情况下是以PLC作为调节器和主站构成的单主站系统,这个系统如果不是封闭的(不与外界交换数据而独立运行),有可能通过ProfibusFMS或别的现场总线连接到车间单元级等更大规模的网络,除此之外极有可能是PLC通过串行RS232与上位PC机(监控层)通信,如图1所示。
在大多数温度控制、配料等系统中,传感器的采样速率一般>10 ms,从站数目较少,总线数据传输速度≤500 kb/s,完全可以用PC取代PLC作为调节器和主站,PC与ProfibusDP之间使用低成本的RS232/RS485转换器连接,以节省昂贵的PLC,如图2所示。在软件上,由于单主站系统不涉及令牌传递,可容易地在PC上编写兼容ProfibusDP协议的单主站程序。
四、软件实现 1、ProfibusDP单主站协议 主站读命令: $①①R②13 从站回应数据格式:=③③③13 主站写命令: $①①W②③③③13 从站确认格式: 6 13是回车键的ASCII码,6是ACK的ASCII码,$,R,W分别代表相应ASCII码,①①是代表地址的2个ASCII码,②是代表变量号的一个ASCII码,③③③是代表数据的3个ASCII码。 RS232只使用了TXD,RXD和GROUND三根信号线。每帧8个数据位,偶校验,1个结束位。数据传输速率9600 b/s。 2、作为下位机查询、设置各从站 程序框图如图3所示。
具体C语言程序程序实现如下:
3、作为调节器控制一个从站PID输出 该部分程序框图如图4所示,具体程序略。
作为过程监控层,也可使用循环轮询各从站,PID程序仅作为对其中一个从站的处理。软件当然也可使用Simatic WinCC组态、VC++6.0等编写图形界面PC应用程序,达到监控和控制双重功能。 五、结束语 程序在图2系统中的PC上运行通过,与使用ASIC协议芯片的ProfibusDP从站能很好通信,PID输出程序在皮带秤配料控制中达到了和PLC一样的精度,验证了在某些ProfibusDP单主站系统中以PC完成PLC功能的可行性。



loden

  • 精华:10帖
  • 求助:0帖
  • 帖子:43帖 | 782回
  • 年度积分:0
  • 历史总积分:1143
  • 注册:2001年3月11日
发表于:2005-12-12 19:07:00
1楼
不错,请大家支持

热门招聘
相关主题

官方公众号

智造工程师