具有PROFIBUS-DP通信功能的接口设计解决方案
扫描二维码
随时随地手机看文章
目前国内对自动化产品(电器、仪表、驱动装置等)提出PROFIBUS通信功能要 求,主要于:
(1)国外生产设备及技术的引进,特别是从欧洲引进的成套设备通常采用PROFIBUS现场总线 ,因此对国内配套产品提出了现场总线PROFIBUS通信功能的技术要求;
(2)国内自动化系统厂家比较成功的、面向行业的控制系统,要求系统技术向现场总线技术 发展,同时也要求现场设备向智能化、网络化方向发展。
基于上述需求,嵌入式PROFIBUS-DP从站通信接口的设计为自主开发具有PROFIBUS-DP通信功能产品的用户提供了一种快速、高效的解决方案。?
1实现方法
(1)电路设计制作:使用PROFIBUS通信专用ASIC芯片SPC3实现协议相 关内容,选用合适的CPU,外围加带光电隔离的RS-485驱动;
(2)单片机+Firmware软件:需要在单片机中编程(Firmware软件),实现单片机与ASIC的结合;
(3)用户产品的CPU通过串行接口向PROFIBUS-DP从站通信接口板读/写输入/输出数据;PROFIBUS-DP从站通信接口板自动转换成PROFIBUS-DP协议与PROFIBUS主站通信;
(4)编写GSD文件,搭建一个调试与测试平台进行PROFIBUS系统配置。?
2硬件设计
嵌入式PROFIBUS-DP从站通信接口板(以下简称接口板)由CPU芯片、PROFIBUS 协议芯片SPC3及光隔RS?485驱动等电路组成,如图1所示。
接口板与用户模板采用串口连接,使用波特率选择开关可选择指定 的7种波特率(9600、19.2K、 38.4K、57.4K、115.2K、230.4K、460、8K)中的一种;接口板需要用户模板 提供2组5 V电源(VCC/GND150 mA和5 V/0V-100 mA),分别作为接口 板的电源及光隔外电源,由16针插座J1引 入。信号A、B、RTS及5 V、0 V可直接引到用户模板PROFIBUS的D型插 头上(使用PCB布线或软接线均可)。根据PROFIBUS产品测试技术规范,此接法引线或软接线 不宜过长,通常PCB引线不超过20 cm、软接线不超过10 cm。
如果PROFIBUS的D型插头与接口板之间需要更长的引线,可以从接口板上的10针插头J2引出 ,此时需要采用外接口转接板。
用户模板PROFIBUS插头为孔型(famel)D型插头,与接口板16针插座连接如图2 所示。接口板CPU芯片采用普通的51单片机即可,考虑到PROFIBUS对速率的要求,推荐使用 高速率、低功耗的8位AVR单片机作为接口板CPU。
3软件设计
3.1接口板与用户模板的串口通信设置
接口板与用户模板通过串口连接,Txd、Rxd为TTL电平,半双工通信。通信方式采 用应答方式:用户模板主动询问,接口板被动回答。设定每个字节用11 bits传送:1个启始 位、8个数据位、1个偶校验位、1个停止位,即51内核单片机的通信方式3。
3.2报文长度
接口模板的初始化报文(发送、接收)固定长度49字节;接口板与用户模板之间数 据交换报文(发送、接收),长度由用户在初始化报文中设定,最大为113字节;PROFIBUS输 入/ 输出数据量可自由设定,最大112字节输入+112字节输出。
3.3实现功能
(1)可实现PROFIBUS用户参数化功能:用户模板可将一次性设置的参数在主站配置 中设定,主站在与从站连接时一次将这些用户参数传送到从站,用户模板可利用这些参数实 现参数化;
(2)接口板与用户模板通信有字符偶校验和纵向报文校验和,保证数据安全性;
(3)接口板内设有备份I/O通信缓冲区,可保证实现PROFIBUS与串口通信数据的完整性(一致 性)和同步要求。
3.4用户模板的通信基本过程
3.4.1初始化
用户模板按接口板上波特率选择开关设置的波特率向接口板发初始化报文,然后等待接收接 口板的回答,如图3所示。接口板回答初始化成功后,进入数据交换状态。
3.4.2数据交换状态
初始化成功后接口板进入数据交换状态,反复进行数据交换。此时,用户模板主动 向接口板发送“输入数据报文”,其中包含PROFIBUS输入数据;接口板回答“输出数据报文 ”,其中包含PROFIBUS输出数据,如图4所示。
数据交换状态下接口板的程序流程见图5。
4系统配置
4.1关于GSD文件
(1)每一个PROFIBUS从站或一类主站有一个“设备描述文件”称为GSD文件,用来描 述该PROFIBUS-DP设备的特性;
(2)GSD文件包含了设备所有定义参数,包括:支持的波特率、支持的信息长度、输入/输出 数据数量、诊断数据的含义、可选模块种类等;
(3)无论使用什么样的系统配置软件,都要根据GSD文件来对设备配置。
(4)国际PROFIBUS组织PI提供了GSD文件编辑软件gsdedit.exe,该软件依照PROFIBUS技术标 准格式规定,对用户编辑的GSD文件进行格式检查。
4.2如何使用“用户参数user—prm”
4.2.1“用户参数user—prm”的选择
对于工业现场设备,常需要用户根据现场应用设定一些参数,其中有些参数不需要在设备运 行中实时改变,如变频器的电流上限保护与报警值、温度传感器的测量温度范围、热电偶选 型、输出4~20 mA/1~5 V选择等。如果这些参数作为PROFIBUS主站的I/O输出,将占 用PROFIBUS主站I/O资源和周期性轮循PROFIBUS从站的时间资源。
将这些参数处理成“用户参数”,将会缩短PROFIBUS主站通信时间、减小通信报文长度、提 高总线通信效率。使用“用户参数”技术,只需要在主站配置中做出参数选择,主站在与从 站连接时,一次性将这些参数传送到从站,从站就可以使用这些用户选择的参数对从站进行 参数化(初始化、参数设定)。
4.2.2确定“用户参数”类型、个数、字节长度
以一个4通道模拟量输入模块为例,假设需要用户设置的参数有:
·输入类型1~5 V、0~10 V、0~5 V、-10~+10 V、4~20 mA、0~20 mA共8种选择 ;占1个字节,以INPUT=0~7分别表示这8种输入类型;
·数据类型BCD(0000~9999)、无符号整型(0~65 535)、有符号整型(-32 767~+32 76 7)共3种选择;占1个字节,以VAR=0~2分别表示这3种数据类型;
·输入模式单端输入(4通道)、双端输入(2通道)共2种选择;占1个字节,以CHNO=0、1分 别表示这2种输入模式;
由此,用户参数长度User—Prm—Data—Len=3。
4.2.3带有“用户参数”描述的GSD文件
对上例,GSD文件中至少有如下关于“用户参数”的描述:
4.2.4在主站配置中选择用户参数
用户在系统中配置从站参数,完全靠GSD文件描述。在STEP 7的HARDWARE中配置从站,可设 定总线波特率及站地址,其中设定的站地址必须与用户模板上地址设置一致。
带有“用户参数”选择菜单的GSD文件,可在STEP7中生成更加友好的用户参数配置界面。