PROFIBUS简介

1987年,德国SIEMENS公司等13家企业和5家研究机构联合开发出了PROFIBUS,1989年,成为德国工业现场总线协议标准,1999年,PROFIBUS成为国际工业现场总线协议标准IEC61158的组成部分 (TYPEIII)。

PROFIBUS 是一种国际化、开放式、不依赖于设备生产商的现场总线标准。广泛适用于制造业自动化、流程工业 自动化和楼宇、交通、电力等其他领域自动化。

PROFIBUS是一种工业现场总线,它是一种串行通信协议,用于连接自动化系统中的数字设备。PROFIBUS的主要优点是它可以在工业环境中使用,具有高可靠性和抗干扰性。PROFIBUS的速度可以达到12Mbps。

PROFIBUS由三个兼容部分组成,即PROFIBUS-DP(Decentralized Periphery)、PROFIBUS-PA(Process Automation)、PROFIBUS-FMS(Fieldbus Message Specification)。

  • PROFIBUS-DP:用于传感器和执行器级的高速数据传输,它以DIN19245的第一部分为基础,根据其所需要达到的目标对通信功能加以扩充,DP的传输速率可达12Mbit/s,一般构成单主站系统,主站、从站间采用循环数据传输方式工作
  • PROFIBUS-PA:具有本质安全特性,它实现了IEC61158-2规定的通信规程。 PROFIBUS-PA是PROFIBUS的过程自动化解决方案,PA将自动化系统和过程控制系统与现场设备,如压力、温度和液位变送器等连接起来,代替了4-20mA模拟信号传输技术。因此,PA尤其适用于石油、化工、冶金等行业的过程自动化控制系统
  • PROFIBUS-FMS:解决车间一级通用性通信任务,FMS提供大量的通信服务,用以完成以中等传输速率进行的循环和非循环的通信任务。由于它是完成控制器和智能现场设备之间的通信以及控制器之间的信息交换,因此它考虑的主要是系统的功能而不是系统响应时间,应用过程通常要求的是随机的信息交换 (如改变设定参数等)。可用于大范围和复杂的通信系统

Profibus通讯

Profibus DP通讯协议是一种单一的、一致性通讯协议,用于所有的工厂自动化和过程自动化。Profibus支持多主站系统,主站之间采用令牌传送方式,主站与从站之间采用主从方式。每个主站按时间分配其总线控制权,使用令牌(令牌帧协议)在主站之间传递信息,如果主站获得上一个主站传递来的令牌,则立即有对总线的控制权,当其令牌时间到达,则使用此电文将令牌传递给下一个主站。

  • 网络拓扑:线性总线,两端有有源总线终端电阻
  • 传输速率:9.6K bit/s~12M bit/s
  • 介质:屏蔽双绞电缆,也可取消屏蔽,取决于环境条件(EMC)
  • 站点数:不带中继每分段 32 个站,带中继最多 128个站
  • 插头连接: 9 针 D 型插头

当分段站超过 31个时,必须使用中继器用以连接各总线段,串联的中继器不超过 3 个.

中继器没有站地址,但因为也是一个负载,所以会被计入分段站数。

示例:

分段1:31站点+1中继器组成

分段1站点1分段1站点…分段1站点31中继器1

分段2:30个站点+2中继器

中继器1分段2站点1分段2站点…分段2站点30中继器2

分段3:30个站点+2中继器

中继器2分段3站点1分段3站点…分段3站点30中继器3

分段4:31站点+1中继器组成

中继器3分段4站点1分段4站点…分段4站点31

不同的通讯速率对应理论通讯距离如下:

通讯速率(Kbps)理论传输距离 (m)
9.61200
19.21200
45.451200
93.751200
187.51000
500400
1500200
3000100
6000100
12000100

PROFIBUS OSI模型

OSI模型PROFIBUS
7应用层DP-V0DP-V1DP-V2网络管理
6表示层////
5会话层////
4传输层////
3网络层////
2数据链路层FDL网络管理
1物理层EIA-485光纤MBP网络管理
  • 应用层:

    异步串口通讯:启始位(1bit)、数据位(8bit)、偶校验(1bit)和停止位(1bit)

    • DP-V0:循环式的数据交换,诊断功能。

    • DP-V1:循环式及非循环式的数据交换,警告处理。

    • DP-V2:时钟同步数据模式,从机和从机之间的数据广播。

  • 数据链路层(FDL):在PROFIBUS网路中,控制器或控制系统为主站,感测器及致动器为从站。

  • 物理层:支持RS485、光纤传输,以及MBP传输

    • 根据EIA-485规范(RS-485)的电气传输方式,会使用阻抗150欧姆的双绞线,波特率可以从9.6 kbit/s到12 Mbit/s。两台中继器之间的线长也有限制,随波特率的不同,上限从100米到1200米。这种传输方式主要配合PROFIBUS-DP使用

    • 光纤传输,可以使用星型、总线(bus)或是环型的网络拓扑,两台中继器之间的网络线长也可以到15千米,也可以使用环型网络拓扑以冗余的方式使用网络,即使网络中有一点损坏,仍然可以正常的运作

    • MBP (Manchester Coded Bus Powered) 曼彻斯特编码总线供电传输,在许多应用场景中,设备都需要由总线供电,该技术在总线电缆上提供10 - 15 mA的典型电源电流.网络上不但有信号,也可提供设备电源。因为这种传输方式可以减少设备消耗的功率,因此可以在防爆需求的场合下使用。其总线拓扑最长可以到1900米,而且允许有60米的网络枝连接到设备,其比特固定为31.25kbit/s,此传输方式特别为用在过程控制的PROFIBUS-PA所设计

    • 还有一些厂商产品可以在移动设备和无线传输中使用PROFIBUS,不过这些技术还没有对应的技术标准

DP-Master模式

每个主系统必须具有以下模式(基于标准)

  • Off-line

    • 初始化状态,无任何通讯
  • Stop

    • Token 交换
    • FDL 请求
    • class 2 通讯
    • 主从间没有通讯
  • Clear

    • 主站参数初始化和配置从站

    • 切换到数据交换(输出“0”)

  • Operate

    • 常规的应用驱动通讯

报文结构

令牌报文

SD4DASA

SD4 = 开始分界符4 Start Delimiter 4

DA = 目的地址 Destination Address

SA = 源地址 Source Address

FDL状态请求报文

用于主站对从站的查询,扫描在线站点

SD1DASAFCFCSED

SD1= 开始分界符1 Start Delimiter 1

DA = 目的地址 Destination Address

SA = 源地址 Source Address

FC = 功能码 Function Code

FCS = 帧检查顺序 Frame Check Sequence(DA+SA+FC的代数和)

ED = 结束分界符 End Delimiter(16H)

数据报文

SD2LELERSD2DASAFCDSAPSSAPDUFCSED

SD2= 开始分界符 Start Delimiter 2

LE = 长度 Length(报文长度,4-249字节,DA+SA+FC+DU)

LER = 重复长度 Repeated Length(报文长度,数值同上)

SD2= 开始分界符1 Start Delimiter 2

DA = 目的地址 Destination Address

SA = 源地址 Source Address(低7位标识实际地址,最高位0:无SSAP,1:有SSAP)

FC = 功能码 Function Code(见下文)

​ *DSAP = 目的服务存取点Destination Service Access Point

​ *SSAP = 源服务存取点 Source Service Access Point

DU = 数据单元 Data Unit(长度不定,最大246字节)

FCS = 帧检查顺序 Frame Check Sequence(DA+SA+FC+DSAP+SSAP+DU的代数和)

ED = 结束分界符 End Delimiter(16H)

FC 功能码

image-20230523233546643

RES:保留,默认0

Frame:应答帧=0,请求帧=1

FCB:帧计数,0、1交替(用于请求帧)

Stn-Type:站类型与FDL状态(用于应答帧)

B5B4描述
00从站
01未准备进入逻辑令牌环的主站
10准备进入逻辑令牌环的主站
11已进入逻辑令牌环的主站

Function:功能码

功能码请求帧应答帧
0确认
1用户出错
2无响应源
3SAP未激活
4SDN低
5
6SDN高
7SRD多播
8SRD低优先级响应
9带应答的FDL状态请求无响应
10SRD的高优先级响应
11
12SRD低SRD低优先级响应异常:无源
13SRD高SRD高优先级响应异常:无源
14带应答的ID请求
15

SC-E5短确认报文

SC(xE5)
  • SC = 0xE5

SD4-DC令牌报文

用于主站间令牌传递

SD4(0xDC)DASA
  • SD4 = 起始符 4 Start Delimiter 4 = 0xDC

  • DA = 目的地址 Destination Address

  • SA = 源地址 Source Address

SD1-10无数据的固定长度报文(常见于状态请求报文)

用于主站扫描在线的从站,通常会定时向从站发送此报文以确认从站是否在线

SD1(0x10)DASAFCFCSED
  • SD1= 起始符1 Start Delimiter 1 = 0x10

  • DA = 目的地址 Destination Address

  • SA = 源地址 Source Address

  • FC = 功能码 Function Code

  • FCS = 帧检查序列 Frame Check Sequence(DA+SA+FC的累加和,2字节)

  • ED = 结束符 End Delimiter = 0x16

SD3-A2数据的固定长报文(数据单元固定8字节长度)

SD3(0xA2)DASAFCDUFCSED
  • SD3= 起始符3 Start Delimiter 3 = 0xA2
  • DA = 目的地址 Destination Address
  • SA = 源地址 Source Address(低7位标识实际地址,最高位0:无SSAP,1:有SSAP)
  • FC = 功能码 Function Code(见下文)
  • DU = 数据单元 Data Unit(固定8字节
  • FCS = 帧检查序列 Frame Check Sequence(DA+SA+FC+DU的累加和,2字节)
  • ED = 结束符 End Delimiter = 0x16

SD2-68有数据的可变长报文(常见于数据传输报文)

SD2(0x68)LELERSD2DASAFC*DSAP*SSAPDUFCSED
  • SD2= 起始符2 Start Delimiter 2 = 0x68

  • LE = 长度 Length(报文长度,4-249字节,DA+SA+FC+DSAP + SSAP+DU )

  • LER = 重复长度 Repeated Length(报文长度,数值同上。因PROFIBUS的汉明距离(HD)为4,不在帧检验序列(FCS)检查范围内的数据需重复一次,因此重复LE内容)

  • SD2= 起始符2 Start Delimiter 2

  • DA = 目的地址 Destination Address

  • SA = 源地址 Source Address(低7位表示实际地址,最高位0:无SSAP,1:有SSAP)

  • FC = 功能码 Function Code(见下文)

  • ​ *DSAP = 目的设备服务点 Destination Service Access Point

  • ​ *SSAP = 源设备服务点(SAP) Source Service Access Point

  • DU = 数据单元 Data Unit(长度不定,最大246字节)

  • FCS = 帧检验序列 Frame Check Sequence(DA+SA+FC+DSAP+SSAP+DU的累加和)

  • ED = 结束符 End Delimiter = 0x16

FC 功能码
用于发送/请求报文

image-20230630232038040

  • Bit7-RES:0/1,保留位无需解析,默认0

  • Bit6-Frame:应答帧=0,请求帧=1

FCB 可以防止发起方报文丢失和响应方报文重复

  • Bit5-FCB:帧计数,0、1交替(用于请求帧)

  • Bit4-FCV:帧计数比特有效/无效(用于请求帧)

    0:FCB帧计数功能无效

    1:FCB帧计数功能有效

  • Bit5 Bit4-Stn-Type:站类型与FDL状态(用于应答帧)

Stn-Type:

Bit5Bit4描述
00从站对主站的响应
01主站未准备进入逻辑令牌环的主站
10主站准备进入逻辑令牌环的主站
11主站在令牌环中
  • Function:功能码
功能码Bit6=1 请求帧Bit6=0 应答帧
0/肯定确认:确认
1/否定确认:用户出错
2/否定确认:响应源
3/否定确认:SAP未激活
4SDN低/
5//
6SDN高/
7SRD多播/
8/SRD低优先级响应
9带应答的FDL状态请求否定确认:无响应
10/SRD的高优先级响应
11//
12SRD低SRD低优先级响应异常:无源
13SRD高SRD高优先级响应异常:无源
14带应答的ID请求/
15//
用于确认/响应报文

image-20230630233533211

image-20230630233544862

服务点(SAP)

除了SAP-55之外,其他服务点都是必备的

SAP(十进制)服务
默认值0循环数据交换(Write_Read_Data)
54主站至主站服务点(M-M Communication)
55更改从站地址(Set_Slave_Add)
56读取输入(Rd_Inp)
57读取输出(Rd_Outp)
58给DP从站的控制命令(Global_Control)
59读取配置(Configuration)数据(Get_Cfg)
60读取诊断数据(Slave_Diagnosis)
61写入参数设置数据(Set_Prm)
62检查配置数据(Chk_Cfg)

GSx文件

GSx文件命名格式

制造商名称+设备ID号.GSx

x可表示:

D=language independent
E=english
F=french
S=spain
I=italian
G=german

GSD文件内容

PROFIBUS-DP 上的每个从设备或支持class 1 的设备都需要有一个设备描述文件GSD, GSD 文件中描述设备的特性

GSD 文件由设备供应商创建,PROFIBUS 贸易组织提供了一个 GSD 编辑器,这使得创建 GSD 文件变得非常容易,GSD 编辑器包含一个 GSD 检查器,可确保 GSD 文件符合 PROFIBUS 标准

PROFIBUS GSD Editor - www.profibus.com

此编辑器需要有该组织会员的账号才能下载!

GSD文件是一个 ASCII 文本文件 由标识符#PROFIBUS-DP开始 随后指定此设备所支持的所有参数 如Vendor_Name(M),Revision(M),Protocol_Ident(M)等等。

这些参数有四种类型

  • M-必须的
  • O-可选的
  • D-可选的,如果此参数不存在,其缺省值为0
  • G-在一组值中至少选一个合适的值 (如波特率)

所有这些参数都应由设备制造商提供 并以电子设备数据单的形式交付给用户

GSD文件一般包含以下设备参数:

  • 支持的波特率
  • 支持的消息长度
  • 输入/输出数据数
  • 诊断消息的含义
  • 设备模块配置,如哪些模块可用
  • ……

GSD Examples PROFIBUS - www.profibus.com

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
;GSD文件中“;”作为注释符
;==========================================
; Date : 01.08.2005
; =========================================

;PROFIBUS-DP的GSD文件头
#Profibus_DP

GSD_Revision=1 ;GSD文件版本号
Vendor_Name="Pilot co.,ltd" ;设备制造商名称
Model_Name="PMAC801A" ;设备型号名称
Revision="V1.0" ;设备版本号
Ident_Number=0x0A0F ;设备标识号(十六进制)
Protocol_Ident=0 ;协议标识号,0表示DP协议
Station_Type=0 ;站点类型,0表示普通站点
FMS_supp=0 ;FMS,0表示不支持
Hardware_Release="HW1.0" ;硬件版本号
Software_Release="SW1.0" ;软件版本号

;支持的波特率,0表示不支持,1表示支持
9.6_supp=1
19.2_supp=1
93.75_supp=1
187.5_supp=1
500_supp=1
1.5M_supp=1
3M_supp=0
6M_supp=0
12M_supp=0

;对应波特率最大传输延时(微秒)
MaxTsdr_9.6=60
MaxTsdr_19.2=60
MaxTsdr_93.75=60
MaxTsdr_187.5=60
MaxTsdr_500=100
MaxTsdr_1.5M=150
MaxTsdr_3M=250
MaxTsdr_6M=450
MaxTsdr_12M=800

Redundancy=1 ;冗余支持,支持
Repeater_Ctrl_Sig=0 ;重复器控制信号,不使用
24V_Pins=0 ;24V引脚,没有
Implementation_Type="spc3" ;实现类型,使用SPC3芯片
Bitmap_Device="PM801A" ;位图设备,使用PM801A位图文件
OrderNumber="PM801A_DP" ;订货号
Freeze_Mode_supp=1 ;冻结模式,支持
Sync_Mode_supp=1 ;同步模式,支持
Auto_Baud_supp=1 ;自动波特率,支持
Set_Slave_Add_supp=0 ;设置从站地址,不支持
Min_Slave_Intervall=3 ;从站间列表最小周期间隔(毫秒)
Modular_Station=1 ;模块化站点,是
Max_Module=4 ;最大模块数,最多4个模块
Max_Input_Len=128 ;最大输入长度,最多128字节的输入数据
Max_Output_Len=128 ;最大输出长度,1最多128字节的输出数据
Max_Data_Len=244 ;最大数据长度,最多244字节的数据(输入+输出)
Modul_Offset=0 ;模块偏移量,没有偏移量
Fail_Safe=0 ;故障安全,不支持
Slave_Family=2 ;从站协议,DPV2协议
Max_Diag_Data_Len=6 ;最大诊断数据长度,最多6字节诊断数据
User_Prm_Data_Len=0 ;用户参数数据长度,没有用户参数数据


;模块定义:模块名称,模块代码(十六进制)
;模块类型的结束标志:EndModule
Module = "1 Byte Input" 0x90
EndModule
Module = "8 Byte Input" 0x97
EndModule
Module = "16 Byte Input" 0x9f
EndModule
Module = "32 Byte Input" 0x9f,0x9f
EndModule
Module = "64 Byte Input" 0x9f,0x9f,0x9f,0x9f
EndModule
Module = "8 Word Input" 0xD7
EndModule
Module = "16 Word Input" 0xDf
EndModule
Module = "32 Word Input" 0xDf,0xDf
EndModule
Module = "64 Word Input" 0xDf,0xDf,0xDf,0xDf
EndModule
Module = "1 Bytes Output" 0xA0
EndModule
Module = "8 Bytes Output" 0xA7

ProfiTrace简介

ProfiTrace 是用于PROFIBUS网络的分析仪,它将分析、示波器,条线图及DP-VO/V1主站集成一体。技术人员只需一套软硬件就可以对整个PROFIBUS网络进行检测和故障排除,减少了企业成本。

ProfiTrace拥有先进的USB硬件(ProfiCore Ultra),内含高速数字分析仪,最高可捕获12Mbps的总线信号,还可同时使用PA超级探针(ProbeUltra)用于PROFIBUS PA的安装系统。ProfiTrace 2对于维护,调试,故障排除及产品开发都是至关重要的。常见问题如噪音,反射,电压下降,终端问题,双地址,断线及组态等都可以很容易地检测出来。偶尔出现的过冲,错误报文,重试及诊断问题也很容易地被捕捉记录。ProfiTrace 2还可以将检测结果生成为工业界认可的报告

产品特点

  • 数据统计分析

    重试,掉线,报文损坏,诊断,循环时间,等等

  • 高速数字示波器

    压差,A线,B线,噪音,过冲,反射,触发器

  • 条形图

    每台设备与总线信号的平均值,最小和最大值

  • 报告生成

    自动生成工业界认可的报告

  • DP-V0/V1主站

    ProfiCaption 集成了众多特性

  • ProfiCore Ultra USB接口

    可用于PC平台,不需供电,分支线省略

  • DP和PA

    PA超级探针( Probe Ultra)实现了PA段的测量

  • 9,6 kpbs 到12Mbps的通讯速率

应用

  • PROFIBUS网络故障排除和维护(ProfiTrace, ScopeWare and ProfiCaptain)
  • PROFIBUS网络调试(ProfiTrace, ScopeWare and ProfiCaptain)
  • PROFIBUS产品测试和认证(ProfiTrace,ScopeWare and ProfiCaptain)
  • 无源电缆测试(ScopeWare and ProfiCaptain)
  • PROFIBUS设备IO测试(ProfiCaptain)
  • PROFIBUS设备地址设置(ProfiCaptain)

ProfiTrace安装

Procentec 官方下载页面最下方找到 ProfiTrace 软件进行下载

image-20230710091902110

下载后运行 Setup.exe ,点击Install开始安装

image-20230710092250994

安装完毕后并不会在桌面创建快件方式,需要在开始菜单或者安装目录下找到 Profitrace应用打开

ProfiTrace语言修改

点击菜单栏Settings -> Language,选择Chinese,重启应用生效

image-20230710145444259

许可证安装

ProfiTrace 选项卡下点击 启用ProfiCore Ultra,此时会提示无法找到许可证

image-20230710145628088

image-20230710145853691

确认后会弹出许可证安装的窗口,或可以在菜单栏选择帮助 -> 许可证信息工具打开该窗口

image-20230710145943564

联网安装许可证

联网状态下选择 下载和安装许可证,提示许可证安装正确表示许可证安装完成

image-20230718183450829

本地安装许可证

选择安装许可证文档,选择许可证文件即可

image-20230718183716954

选择后如图所示表示安装完成,可正常使用许可证允许的功能

image-20230718183728201

许可证默认存放地址C:\ProgramData\procentec\proficoreultra,复制许可证文件到该路径下亦可

ProfiCore许可证类型

  1. ProfiTrace 2

  2. ProfiTrace 2 + ScopeWare + Bar graph + Reporting

    image-20230712111842579

  3. ProfiTrace 2 + ScopeWare + Bar graph + Reporting + Topology scan

    image-20230712111907844

  • 上述3种组合+ProfiCaptain
  • 上述3种组合+CommDTM
  • 上述3种组合+OPC

*拥有的许可证:ProfiTrace 2 + ProfiCaptain

image-20230712111602112

image-20230712111935085

设备连接

初始化ProfiCore

ProfiTrace 选项卡下点击 启用ProfiCore Ultra

image-20230710145628088

出现波特率检查时点击取消(跳过检查,节省时间)

image-20230712104833605

切换到ProfiCaptain选项卡,上方有一些控制功能,左侧是GSD文件列表,下方显示设备的信息以及设备模块功能

1
网络表`中可以看到ProfiCore设备并延申出了一条`总线

image-20230712104902881

激活ProfiCore主站

双击网络表的ProfiCore图标,对主站(ProfiCore)进行配置,通常直接点击操作激活主站所有功能即可

image-20230712105232015

如果有特殊需求,如修改主站的主站地址、通讯波特率等,点击设置/自动检测总线参数进行配置

Live list视图显示当前接入ProfiCore设备总线的地址以及它们的状态,你可以根据设备已用地址分配一个不冲突的主站地址

image-20230712105506724

主站完全激活后可关闭此窗口

image-20230718183851276

添加GSD文件

1
设置` -> `添加GSD到目录` 。以PMAC801A为例添加后可在左侧GSD目录的开关设备中找到`PMAC801A

image-20231214144346093

image-20231214144359594

如图,拖拽PMAC801A名称到网络表

image-20231214144756743

image-20231214144808445

双击网络表中的PMAC801A设备,选中激活,并点击设置模块参数

image-20231214144911300

根据协议和所需,添加模块。PMAC801A 添加 32 Byte Input1Bytes Output (可双击模块快速添加)

image-20231214145004292

设备列表及其通讯状态

Live list

主站完全激活后,回到ProfiTrace选项卡

数字表示地址,数字颜色:

  • 红色,主站
  • 蓝色,从站

背景色表示的状态:

  • 绿色,设备处于数据交换中
  • 黄色,设备丢失
  • 红色,参数错误
  • 紫色,配置错误
  • 白色,在总线上但没有进行数据交换

如图,有1个主站,主站地址1;6个从站,从站地址2、3、4、5、6、7

Snipaste_2023-05-11_14-57-31

如图,有2个主站,主站地址1、2;六个从站,从站地址3、4、5、6、7、14

Snipaste_2023-05-11_15-29-04