智能差压变送器从站配置软件的开发

  摘要:介绍智能差压变送器嵌入 PROFIBUS-DP总线接口的上位机设计要求, 采用 Visual Bsica 6.0开发了相应配置软件 DPT-CFG, 使变送器能有效地在生产及使用过程进行参数标定、监视和组态。
  本文在智能差压变送器 PROFIBUS-DP从站的开发基础上 ,分析了智能差压变送器的参数测量要求,并根据需要设计了相应的配置软件 DPT-CFG, 使智能差压变送器在生产及使用过程中能够更有效率地进行参数标定及组态。

1、智能变送器参数数据封装:
  设计的智能差压变送器是一种多参数测量变送器 ,可以实现如:差压、静压、温度和介质温度等测量,不但可以进行生产过程中的差压测量 , 而且具有温度补偿以及质量流量测量等功能。 DP从站的主要作用就是在主站与变送器之间传输各种测量参数和计算所得参数 ,因此 ,需要传输的参数很多。根据实际变送器设计的要求 ,这些参数都可以按特性进行分组 ,每次发送命令后传输对应的参数, 命令号与对应的分组参数如表 1所示 。
表 1 命令号与对应分组参数

表 1 命令号与对应分组参数

续表

  由设计过程中对差压变送器提出的要求, 从站需要传输的参数包括以上共 26组参数命令, 共计约 162个参数 。但每次只要求传输一组命令参数。其中, 只有命令 1是需要周期性发送的实时测量数据, 而其他数据参数均为预先设定好的参数值。因此 ,根据所有发送的数据***大长度 ,可以确定一个公共的***大传输报文长度。 PROFIBUS-DP支持的单次***大报文长度是 244字节。而本应用中单次报文长度的***大字节数为 61个字节 ,另外加上 3个自定义的控制参数:控制标志变量 Ctrl Flag,命令号 Cmd Num,熵命令号 Aux num,总共 64个字节。因此, 在对 PROFIBUS-DP进行初始化配置时 ,应该将输入输出缓冲区定义为 64字节大小 ,并且在运行过程中不能小于 64字节。
  在数据传输过程中 ,具体参数的定义应该由变送器及主站软件来决定 。 PROFIBUS-DP并不需要对参数的内容进行解释,因此, 在进行数据结构定义时只需定义相应大小的数组变量即可 ,将 DPT的参数对象用结构体定义为
  typedefstruct{ union{  T CMD000 OBJobj000;  UBYTEcmd data[ CMD000LENGTH] ; }cmd000; union{  T CMD011 OBJobj011;  UBYTEcmd data[ CMD011LENGTH] ; }cmd011;…… union {  T CMD001 OBJobj001;  UBYTEcmd data[ CMD001LENGTH] ; }cmd001;}T DPT OBJ;

2、差压变送器的配置软件:
2.1、配置软件简介:

  为了使差压变送器在生产及使用过程中更有效率地进行参数标定及组态 ,特地针对差压变送器的特定情况, 用 Visual Bsica 6.0自主开发了配置软件 DPT-CFG, 并在操作系统 Windows XP环境下进行了调试 。
  智能变送器与现场总线网络的连接通过专用的PROFIBUS-DP网络接口卡, 其配置及参数定义按照PROFIBUS-DP通讯协议进行。 DPT-CFG软件已经将 PROFIBUS-DP协议进行了封装, 以友好界面的形式显示智能变送器从站的所有信息, 并能够进行配置、监视、组态、标定等操作。

2.2、工作模式:
  DPT-CFG配置软件只能运行在 PC机主站上。此时, PC主站作为 PROFIBUS-DP的 2类主站运行。网络采用主从式的总线工作模式, 在没有中继器的情况下网络***多接 32个站点 ,其中从站***多 31个 。
  每次设定参数时 ,主站必须在 DPT-CFG软件上指明从站地址,然后设定波特率 ,即可进行参数的设置与读取 。配置和智能变送器标定画面如图 1所示。
  下面是关于智能差压变送器的差压标定程序:If Istance In d=133 Then        //差压标定命令If Cll Na um<9 //取 9个有效标定点
图 1 配置软件标定画面
图 1 配置软件标定画面
  cmd133Write I.Enabled=FalsenCall Num=Call Num+1txt133Cal Pint.Text=CStr(Call No um) If Cll Na um<6 Then //正向标定值txt133Cal Val.Text=Format((Call Num-1)*Call Unit Cf(frmo 44.cbo133Call Unit.List Idex)*nCall Rnge/a 4, "#######0.0#######")//按浮点数形式格式化数据 Else //负向标定值txt133Cal Val.Text=Format((5-Call Num)*Call Unit Cf(frmo 44.cbo133Call Unit.List Idex)*CallnRange/ 4, "#######0.0#######") End Ifcmd133Write Num.Caption="第 "+CStr(Call Num)+"点确认 "//自动改变标定点 Else ICall Nf um=9 Then //标定完毕 cmd133Write Num.Enabled=False txt133Cal Pint.Text=""o txt133Cal Vl.Text=""a cmd133Write Num.Caption="第 " + " " + "点确认 " cmd133Write Out.Enabled=TrueElse cmd133Write I.Enabled=Falsen cmd133Write Num.Enabled=False cmd133Write Out.Enabled=FalseEnd If

3、结论:
  本文通过分析智能差压变送器的测量参数, 用VISUALBASIC语言开发了智能变送器配置软件 DPT-CFG,并用该软件和仪表进行了数据通讯 ,对系统进行了测试检验,达到了预期要求 ,并实现了计算机和对象仪表的通信以及配置功能。

相关新闻