首页 > 范文大全 > 正文

基于Profibus-DP现场总线通信接口设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Profibus-DP现场总线通信接口设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:Profibus-DP是一种开放性的国际现场总线,用于分散外部设备之间高速数据传输。SPC3是Profibus-DP专用智能通信协议芯片,集成了MAC和FDL层,实现了DP通信的处理,减轻了CPU的负担。采用MSP430单片机作为CPU,由于其具有高速率、低功耗的特点,能够很好地满足通信接口传输数据对速度的要求。概述了Profibus-DP总线协议,然后介绍Profibus-DP通信接口的硬件设计电路和软件设计。

关键词:Profibus-DP; SPC3; 通信接口; MSP430

中图分类号:TN919 文献标识码:A

文章编号:1004-373X(2010)11-0197-03

Design of Fieldbus Communication Interface Based on Profibus-DP

SONG Qing-kun, LIN Sen, FENG Jin-chao

(Automation School, Harbin University of Science and Technology, Harbin 150080, China)

Abstract: Profibus-DP is a kind of open international fieldbus standard, which is applied to high speed data transmission between dispersive peripheral equipments. SPC3 is an intelligent ASIC used for communication of Profibus-DP, integrates MAC and FDL layers, implements the communication handle of DP, and reduces the communication burden of CPU. MSP430 microcontroller is used as CPU for its hign-speed, low-power consumption characteristics, so the requirements on data transmission of communication interfacesfor speed can be fulfilled. The protocol of Profibus-DP is introduced, the hardware and software design of communication interface for Profibus-DP is discussed.

Keywords: Profibus-DP; SPC3; communication interface; MSP430

0 引 言

Profibus是开放的、与制造商无关、无知识产权保护的标准。因此世界上任何人都可以获得该标准并设计各自的软硬件解决方案。Profibus-DP通信接口的开发有两种方案选择:单片机+软件;单片机+Profibus通信芯片ASIC。

方案2中Profibus-DP协议完全由Profibus通信ASIC来实现,单片机主要处理用户程序。因此方案2开发周期相对少很多,本文将采用单片机+Profibus通信ASIC来实现Profibus通信接口的设计。

1 Profibus-DP基本特性

Profibus包括三个兼容系列:Profibus-FMS,Profibus-DP,Profibus-PA。FMS提供大量的通信服务用于完成以中等传输速度进行的循环和非循环的通信服务;DP是一种经过优化的高速廉价的通信连接,适用于实时性要求较高的场合,主要用于自动控制与分散式外设之间的通信;PA是专为过程自动化而设计,具有本质安全性,用于安全性要求较高的场合及总线供电的站点。

1.1 协议结构

Profibus-DP协议采用了ISO/OSI模型的第1层(物理层)、第2层(数据链路层),除去了3~7层,并自定义了用户接口层,这种协议结构保证了数据传输的快速有效。

1.2 报文结构

Profibus-DP数据编码采用异步不归零制,传输线的空载电平为“1”。为了避免数据传输中发生冲突而导致数据丢失,在每个请求报文发送前必须保证33位(同步时间)的空载状态。在单个字符间所有数据传送时没有间隙,即无缝。各种报文的格式如图1所示。

图1 报文格式

1.3 Profibus-DP从站状态机

图2为DP从站状态机的简单图示。各种椭圆表示不同的状态,带箭头的连线表示状态间的转换,连线上的文字表示状态转换所需满足的条件。

图2 DP状态从站状态机

只有在Power_on状态,从站可以接收来自二类主站的“Set_Slave_Address”报文,从而改变从站地址,从站应具有非易失性存储器来存储从站地址。内部启动后,从站进入Wait_Prm状态,等待“Wait_Prm”报文。参数化报文由用户组态时给定,包括一些标准的信息,如识别号、同步锁定能力,还包括了一些用户特别定义的数据,另外,在此状态从站还可以接收“Get_Cfg”报文、“Slave_Diag”报文,但拒绝处理其他报文,不能进行数据通信。如果Set_Prm正确,从站进入Wait_Cfg状态,等待“Check_Cfg”报文,该报文规定主站对它的配置信息,即数据交换中的输入输出字节数。此外,也可接收“Get_Cfg”报文、“Slave_Diag”的报文。当参数化与配置正确通信,在此状态,从站可以接收以下报文:Data_Exchange_Ok、Writing_outputs,Reading_Inputs,Global_Control,Slave_Diag,Get_Cfg等。从站接收主站的状态请求后,以高优先级的诊断报文作为应答。诊断信息包括了标准诊断信息和与用户有关的信息。

2 通信接口硬件设计

本文选用的Profibus-DP的通信协议芯片为SPC3。SPC3集成了全部的Profibus-DP协议。SPC3在DP方式下将完成所有DP-SAP的设置。SPC3内部集成了1.5 KB的双口RAM,包括参数寄存器、方式寄存器、状态寄存器,中断控制器等。SPC3内部集成的看门狗定时器有3种工作状态:波特率检测、波特率控制和从站控制。内部的USART可实现并行数据流和串行数据流的相互转换。微顺序控制器控制整个工作过程。空闲定时器直接控制串行总线的时序。

考虑到Profibus对速率的要求本文选用高速率,低功耗的16位MSP430单片机,采用Intel工作方式。CPU与SPC3接口电路如图3所示。对于MSP430单片机而言,SPC3相当于它扩张的一个外部RAM。单片机可以通过访问外部RAM的方法访问SPC3的寄存器。RS 485驱动器的一端与SPC3相连,另一端通过9针D型插头与总线相连。RS 485驱动器选择SN75SLS176来满足高速的数据通信。

3 通信接口软件设计

软件设计是开发Profibus-DP通信接口的一个重要环节。由于SPC3集成了完整的DP协议,因此在进行通信时,MSP430单片机不用参与处理DP状态机。主要任务是根据SPC3产生的中断,对SPC3接收到数据转存,组织要通过SPC3发给的数据,并根据要求组织外部诊断。

图3 CPU与SPC3接口设计

主程序流程图如图4所示,在SPC3正常工作之前,需要进行初始化,以配置需要的寄存器,包括设置协议芯片的中断允许,写入从站识别号和地址,设置SPC3方式寄存器,设置诊断缓冲区,配置缓冲区,地址缓冲区,初始化长度,并根据以上初始值得出各个缓冲区的指针和辅助缓冲区的指针。根据确定输出缓冲区、输入缓冲区及指针,初始化流程图如图5所示,初始化包括:SPC3硬件复位、硬件模式、设置SPC3中断屏蔽寄存器、SPC3内部看门狗、设备标识号、缓冲区初始化。

中断程序流程图如图6所示,在Profibus-DP中最主要处理以下的中断事件:新的参数报文事件,全局控制命令报文事件,进入或退出数据交换状态事件,新的配置报文事件,新的地址设置报文事件,检测到波特率事件,看门狗事件。

图4 主程序流程图

图5 初始化流程图

图6 中断程序流程图

4 结 语

选用的MSP430单片机具有高速率、低功耗的特点,SPC3芯片则集成了Profibus-DP全部协议内容,整系统功能相对完善,使用方法简单。本方案用于Profibus-DP通信接口的开发,可以减少开发周期,实现开发的简化。

参考文献

[1]孙鹤旭.Profibus现场总线控制系统的设计与研发[M].北京:国防工业出版社,2007.

[2]李正军.现场总线与工业以太网及其应用系统设计[M].北京:人民邮电出版社,2006.

[3]郑晓倩,黄明琪.Profibus-DP技术及通讯转换接口技术[J].微计算机信息,2007,23(21):10-12.

[4]朱博,夏继强,周丽萍.基于FPGA的profibus-dp的从站的链路层控制器IP核的设计[J].微电子学与计算机,2007,24(1):102-105.

[5]SIEMENS. SIEMENS SPC3 user description[M]. : SIEMENS, 2002.

[6]郭彦青.基于Profibus-DP的智能从站开发[D].太原:中北大学,2006.

[7]张婕,王征,郭天乐.SPC3在现场总线智能从站设计中的应用[J].现代电子技术,2008,31(2):10-11.

[8]朱平,姚建国,徐娟.现场总线控制在过程控制中的应用[J].石油和化工设备,2008,12(3):9-10.

[9]宋清昆,王学伟.基于Profibus-DP的数据采集模块的设计[J].自动化技术与应用,2008,27(2):86-87.

[10]王学伟.Profibus-DP现场总线智能节点的设计[D].哈尔滨:哈尔滨理工大学,2008.