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 与多个变频器和单片机的同时通讯, 也可应用于其他工程的多机通讯系统中。该通讯方案已经成功应用于混合动力电动汽车的驱 动电机及发动机节气门的综合控制。
自建ISP编程器的DS18B20温度报警显示控制系统
Java会在不久的将来主导编程语言行业
基于5G通讯基础元器件生产企业
EtherCAT转Modbus网关连接TwinCAT3的配置方法
新基建激发千亿安全需求,“零信任”下产业新格局
支持RS485接口的PLC与单片机的通讯
清听声学携手天马微电子,屏幕定向发声技术亮相DIC
车载TBOX嵌入式设备软件的功能测试
阿尔泰科技——国内领先测控系统设备研制及解决方案提供商
算法需不需要共识
一致性哈希算法简介
OPPO成立新兴移动终端事业部,智能手表及耳机等AI+IoT技术产品或将发布
一加设计师晒木质背壳版一加6 木材加以帆布蓝让产品融入生活
经纬恒润助力新一代领克03首发亮相
双轨雷达波自动测流系统设计与运用
网络安全市场它真正需要的是什么
骁龙765G处理器详解,与骁龙865相同架构功耗降低35%
CRUD如何简化开发
如何运用MATLAB采用数字信号处理的优势?
将AI用于公共安全和安保