从RS-232串口到PROFIBUS-DP总线的转换接口设计

摘要:本文针对Profibus系统的特点和要求,剖析西门子PROFIBUS-DP智能从站协议芯片,提出了一种从RS-232到PROFIBUS-DP的协议转换接口的硬件设计思想及其实现过程。

关键字:现场总线    通信协议    接口    SPC3

分类号:TP273

0. 前言:

PROFIBUS是一种国际化、开放式、不依赖于设备生产商的现场总线标准,广泛适用于制造自动化、流程工业自动化和楼宇交通力等其他领域自动化。基于现场总线的控制系统要求及设备必须具有现场通信能力,而我国目前的实际情况是:多数传统现场设备并不具备现场总线接口,而完全使用国外进口设备将会使系统成本过。如何将大量的传统仪器设备连接到PROFIBUS总线上,实现PROFIBUS主站传统设备之间通信数据透明传送,成为广大用户急于要解决的问题。如:具有RS-232接口的现场测量设备及仪表等,如何使其成为PROFIBUS总线上的一个从站。本文所讲述的这个接口产品就是处理从RS-232到PROFIBUS-DP的协议转换,起到一个作用,我们称之为总线桥

1. PROFIBUS-DP络协议

PROFIBUS的网络协议是以ISO颁布的OSI标准七层参考基础的,只是对第三层到第六层进行简化。它的三种模块(FMS、DP和PA)可以适应不同的应用对象和通信速率方面的要求,开放性也好。但它们均使用一致的总线存取协议,该协议是通过OSI参考模型第二层(数据链路层)来实现的,它包括了保证数据可靠技术传输协议和报文处理。

数据链路层协议媒体访问控制(MAL)部分采用受控访问的令牌总线(Token Bus)和主从方式。其中令牌总线与局域网IEEE8024协议一致,令牌总线上的各主站间传递,持有令牌的主站获得总线控制权,该主站依照关系表与从站或与其他主站进行通信。主从方式用于主站和从站间通信,其工作特点是:总线上一个主站控制着多个从站,主站与每一个从站建立一条逻辑链路主站发出命令(Command),从站给出响应(response);从站可以连续发送多个,直到无信息发送、达到发送数量或被主站停止为止。数据链路中帧的传输过程分为三个阶段:数据链路建立、帧传输和链路释放。PROFIBUS-DP并未采用ISO/OSI的应用层,而是自行设置一用户层。该层定义了DP的功能规范扩展要求等。DP物理层与ISO/OSI参考模型的第一层相同,采用RS-485传输技术。

2. RS-232设备通信协议

RS-232只是设备通信物理层的一个标准,因此PROFIBUS主站必须向RS-232设备传送它能够理解的数据,这就是RS-232设备的通信协议。所以,为实现PROFIBUS主站与RS-232设备的有效数据通信,PROFIBUS主站编程人员应该了解RS-232设备的通信协议。RS-232设备的通信协议通常有以下两类:

(1)具有应答关系和若干通信指令的通信协议

这是应用比较广泛的通信式,通信数据可以是ASIIC或二进制数据。对于这种设备,既有发送又有接收。用户在主站编程,按照协议规定的报文格式将通信数据填入RS-232总线桥的PROFIBUS数据输出区,通过所产生的中断启动转换接口将通信数据发送到设备,然后总线桥自动转入接收状态。当总线桥数据全部接收完RS-232设备的回答报文数据后,将回答报文数据自动填入PROFIBUS数据输入区,这样,PROFIBUS主站可以在PROFIBUS数据输入区得到RS-232设备的回答报文数据。

(2)无应答关系、单纯接收或发送数据(ASIIC码或二进制数据)的通信协议

此类设备(如条码扫描器)只通过RS-232接口向PROFIBUS主站发送数据,也有的设备(如显示屏)只通过RS-232接收PROFIBUS主站发送的数据。PROFIBUS主站实现这类简单通信协议的原理与第一种协议相同,只是不会出现冲突,编程更为简单。

3. RS232总线桥硬件设计

RS232总线桥系统框图如图1所示:

图1:系统框图

Fig.1:Frame diagram of system

3.1 SPC3说明[1]

西门子公司提供的SPC3是用于DP智能从站的协议专用芯片,也是本设计的关键器件。SPC3具有1.5K字节的报文帧存储器、方式寄存器、状态寄存器、中断寄存器及缓冲区等,各部分地址分配如表1。

表1:SPC3内存单元地址分配

地址

功能

000H

内部参数(硬件相关)

锁/寄存器

(共21个字节)

内部工作单元

016H

组织参数

(用户组织,共42个字节)

040H

DP通信缓冲区:

Dout-buer(3)          Din-buffer(3)

Diagnostics-buffer(2)   Config-buffer(2)

Param-buffer(1)         SSA-buffer(1)

Auxiliary-buffer(2)

   

SPC3需外接48MHZ晶振,能自动检测波特率从9.6K到12M。总线访问是由硬件驱动的,与应用对象之间通信采用数据接口,因此数据的交换独立于总线周期。SPC3的方式寄存器0用于设置PROFIBUS-DP的操作方式,如minTSDR、SYNC、FREEZE等,方式寄存器1设置

上一篇:

下一篇:

相关文章