你好,游客 登录 注册

背景:
阅读内容

Modbus协议在工矿电机车上的应用--推荐论文

[日期:2015-07-22] 来源:  作者: [字体: ]

    导读:将Modbus 通信协议在工矿电机车系统应用,现场运行取得了良好的效果,证明通信的可靠性很高。

    引 言

    当前,工业控制已从单机控制走向集中监控、集散控制等,这就要求不同类型的自动化设备之间要互连通信,从而进行数据的交换和传递。串行通信由于其简单高效,易于编程实现,始终是各种自动化设备之间实现通信的主要方式之一。目前的智能仪表和测控系统为了实现与控制设备的连接,普遍都提供对串行通信的支持。基于串口的通信协议有很多,如:Modbus协议、CDT规约等,甚至许多厂家都定义了自己专用的通信协议。其中,Modbus协议因其简单规范,功能齐全,易于编程实现等优点,在串行通信中得到了广泛的应用。

 

    1 Modbus协议简介

    Modbus 协议是工业控制器的网络协议中的一种。Modbus协议是MoDICon公司于1978年发明的一种用于对电子控制器进行控制和通信的通信协议。

    通过此协议,控制器相互之间、控制器经由网络( 例如以太网) 和其他设备之间可以进行通信。Modbus协议的开放性、可扩充性和标准化使它成为一个通用工业标准。Modbus 协议并没有规定物理层,只定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。在实际应用中,可以使用RS-232,RS-485/422,MODEM加电话线,甚至TCP/IP来联网。所以,Modbus的传输介质种类较多,可以根据传输距离来选择。

    Modbus 通信采用主从方式,在同一个网络中有一个主设备及最多达255 台的从设备,从设备的地址编码为1耀255。通常情况下,主设备只与1台从设备通信,但当主设备发出的地址码为0 即采用广播方式时,可以将消息发送给所有的从设备。标准的Modbus使用RS-232C串行接口,因此,Modbus 通信也是以帧为单位,帧的数据结构与RS-232C帧相同。

    Modbus每次通信发送和接收的数据包由若干帧组成,协议正是定义了这些帧的意义,控制器只要按照协议解释其接收和发送的帧数据,就能与在同一网络中采用同样协议的控制器实现通信。

    Modbus通信方式有两种,一种是ASCII(美国标准信息交换码)方式,一种是RTU(Remote Terminal U原nit,远程终端装置)方式。一般来说,通信数据量少而且主要是文本的通信要采用ASCII方式,通信数据量大而且是二进制数值时,多采用RTU方式。

    2 工矿电机车控制系统的硬件组成

    如图1所示,工矿电机车控制系统主要由以下三部分组成:司机操纵台、牵引逆变器、交流牵引电机。

    司机操纵台安装有司机控制器和集中智能显示装置等。司机通过司机控制器给牵引逆变器发出命令(如:前进、后退、牵引、制动、速度给定等),对机车进行控制。机车的运行状态,如:牵引逆变器直流输入电压、牵引逆变器输出电流、电机转速、机车速度、里程、蓄电池电量以及故障报警和信息等,则要通过RS-485总线传递给集中智能显示装置;同时,集中智能显示装置也可以通过RS-485总线对牵引逆变器进行参数设置,以适应不同工况和不同用户对牵引逆变器提出的不同要求。

     

WER45

     

    3 通信系统的硬件实现

    工矿电机车串行通信是采用RS-485 总线进行架设的。牵引逆变器与集中智能显示装置上的串口电平都是TTL,为了在它们之间利用RS-485总线进行串行数据传输,需要把TTL 电平转换为RS-485电平,TTL 和RS -485 之间的电平转换芯片有MAX481等。图2是牵引逆变器与集中智能显示装置通信连接示意图。通信双方的DSP 芯片都采用TMS320F240芯片,因而电路是对称的,TXD、RXD引脚分别接DSP的TXD和RXD引脚,485_EN与一个IO口相连,如IOPA.3口。

     

ED456

     

    RS-485 数据信号采用两线制接线方式。两线制接线方式使用一对屏蔽双绞线,其中一线定义为A,另一线定义为B,如图2所示。在发送端TXD将串行口的TTL电平信号转换成两路差分信号A、B 输出,经传输后在接收端将差分信号还原成TTL 电平信号。通常情况下,发送驱动器A、B 之间的正电平在+2耀+6 V,是逻辑“0”状态,负电平在-2耀-6 V,是逻辑“1”状态。

    4 通信系统的软件设计

    工矿电机车的使用环境非常恶劣,灰尘比较大、现场干扰大。由于Modbus通信协议的可靠性非常强,所以软件的通信协议采用Modbus 通信协议,通信方式采用RTU方式。

    4.1 Modbus通信帧的设定

    一般的,基本Modbus通信帧如表1所列。

     

GHTY

     

    4.2 DSP通信初始化子程序

    DSP的初始化子程序很重要,引脚TXD、RXD的功能,通信波特率的大小,以及中断的优先级别都在此设定,程序编制的正确与否是能否正常通信的关键。现场的DSP通信初始化子程序如下。

    LDP #224

    SPLK #0037h,SCICCR

    (一个停止位,奇校验,SCI 通信,空闲线多处理器模式,8位字符长度)

    SPLK #0013h,SCICTL1

    (禁止接收错误中断,未选定发送特征,禁止休眠,使能TX、RX)

    SPLK #0000h,SCIHBAUD

    (晶振10 MHz,CPUCLK=20MHz,SYSCLK=CLKIN=10 MHz)

    SPLK #0040h,SCILBAUD

    (波特率设定为9 600 b/s)

    SPLK #0022h,SCIPC2

    (设置SCIRXD、SCITXD为发送和接收引脚)

    SPLK #0060h,SCIPRI

    (RX,TX皆为低优先级)

    从以上可以看出,本系统为单机通信,采用空闲多处理器模式,不使用SLEEP位。采用的通信格式为9 600波特率,8位数据位,1位停止位,无奇偶校验。其中,波特率采用公式(1)进行计算。

    SCIBAUD=系统时钟频率

    波特率伊8 -1 (1)


     往下看有更多相关资料

本网站试开通微、小企业商家广告业务;维修点推荐项目。收费实惠有效果!欢迎在QQ或邮箱联系!

为何要做网络广告       广告联系

推荐文章 收藏 推荐 打印 | 整理:gddq | 阅读:
本文评论   查看全部评论 (0)
表情: 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
专题文章
热门评论