基于RS485接口Modbus协议的PLC与多机通讯

发布时间:2010-12-8 20:54    发布者:designer
关键词: MODBUS , PLC , RS485 , 多机通讯
1 引言

在自动控制领域,PLC单片机都受到广泛应用。PLC 具有稳定可靠,抗干扰能力强, 功能强大且使用方便等特点,单片机具有成本低廉,使用灵活,功能多样等特点。PLC 与 单片机结合,互相联系,互相通讯,将扩展控制功能,更好的控制复杂的系统。

在研究混合动力电动汽车驱动系统时, 采用PLC 作为主控制器,控制电机变频器和发 动机节气门控制器,实现对电机和发动机功率的 综合控制。因为PLC 和变频器均是艾默生公司 的产品,均支持RS485 接口和MODBUS 协议, 所以控制系统统一采用RS485 接口和MODBUS 协议。而发动机节气门控制器采用89C51 单片 机,所以要通过建立PLC 与单片机的通讯,实 现控制。





图1 通信系统结构框图

2 硬件设计

通讯系统的结构框图如图1 所示。

2.1 信号转换电路

单片机支持 TTL 电平,可以采用MAX485 芯片来实现RS485 与TTL 之间的信号转换 (如图2)。MAX485 芯片采用单一电源+5 V 工作,额定电流为300 μA,采用半双工通讯方式,内部含有一个驱动器和接 收器。RO 和DI 端分别为接收 器的输出和驱动器的输入端, 分别与单片机的RXD 和TXD 相连;RE 和DE 端分别为接收 和发送的使能端,当RE 为逻 辑0 时,器件处于接收状态; 当DE 为逻辑1 时,器件处于 发送状态,因为MAX485 工作 在半双工状态,所以只需用单 片机的一个管脚控制这两个 引脚即可;PLC 里RS485 总线的A 端和B 端分别为接收和发送的差分信号端,当A 引脚的 电平高于B 时,代表发送的数据为1;当A 的电平低于B 端时,代表发送的数据为0。在A 和B 端之间加匹配电阻,一般可选100Ω 左右的电阻。





3 软件设计

控制系统采用单主机/多从机的组网方式,PLC 为主机,电机变频器和单片机为从机。 艾默生公司的PLC 和电机变频器之间已经建立了采用RS485 总线,MODBUS 协议的通讯 ,为了实现PLC 与单片机的通讯,须先了解PLC 与电机变频器的通讯特点,然后建立 连接通讯。

3.1 PLC 与电机变频器的通讯特点

采用RTU 方式的Modbus 协议,帧格式如图3 所示。 波特率为9600bps,数据格式为1-8-N-2,字符间间隔少于 1.5 个字符时间(1.72ms),RTU 帧的最大帧长度是256 个 字节。帧之间的空闲时间取命令码设定和Modbus 内部约 定值中的较大值。Modbus 内部约定的最小帧间空闲如下: 帧头和帧尾通过总线空闲时间不小于3.5 个字符时间 (4ms)来界定帧。帧之间的总线空闲不需要累加起始和 结束空闲。数据采用CRC16 校验,整个信息参与校验, 校验和的高低字节需要交换后发送。





图3 RTU 方式

RS485 是异步半双工的通讯总线。主机处于主导和支 配地位,定时发出监控命令,等待从机的应答。从机处于 侦听状态,不能主动往总线发送数据,在接收到主机发送 的一帧信息后,首先判断地址码是否本机地址,如果此帧 信息的地址码和本机地址相同,则继续处理命令码和数 据,如果此帧信息的地址码和本机地址不同,则忽略。接收完一个主机监控命令后,先进行校验,如果校验正确则执行接收的监控命令,并根据命令回送相应的应答帧。任何时刻只能有一个从机处于发送状态,但主机发送时所有从机都必须 处于接收状态。

上位机PLC 的通讯流程图如图4 所示。





图4 上位机PLC 的通讯流程图

3.2 PLC 与单片机通讯的实现

表 1 PLC 与单片机通讯的帧字节数





单片机进行通信时工作在“方式一”的状态下。 因为PLC 发出的数据帧第一个字符为地址数据,所 以单片机在接收数据时要区分接收到的数据是否是 帧的第一个字符。根据单片机每接收完一个字节数 据RI 就置1,而且帧间间隔4ms 以上,字符间隔少 于1.72ms, 可以通过计时的方式来判断帧的第一个 字符。当RI 置1,开始计时,到下一次RI 置1,计 时结束,当时间间隔大于4ms,则后一次RI 置1 时 接收的字符是帧的第一个字符,当时间少于1.72ms, 则不是。

为了简化程序,可以协议好PLC 与单片机通讯 的帧字节数为6 个字节,如表1。单片机根据地址字 符数据判断是否是本机地址,如果是,则接收处理 后面的5 个字节数据,计算前四个字节的CRC 校验 码,并与接收到的两个字节CRC 校验,进行核对, 如果不相同,则不反馈数据给PLC,也不执行数据 包含的指令,如果相同,则反馈数据给PLC,执行 数据包含的指令。下位机单片机程序的流程图如图5 所示。





4 结束语

本文作者创新点:在艾默生 PLC 与其变频器的 通讯基础上加入了基于RS485 接口Modbus 协议的 PLC 与单片机的多机通讯,该通讯方案硬件接口简 单,软件和通信协议有很好的通用性,可以拓展为PLC 与多个变频器和单片机的同时通讯, 也可应用于其他工程的多机通讯系统中。该通讯方案已经成功应用于混合动力电动汽车的驱 动电机及发动机节气门的综合控制。
本文地址:https://www.eechina.com/thread-45283-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表