单片机和PLC实时控制系统的设计实现
2014-12-25孙传旗李文峰
孙传旗 李文峰 张 兵
(山东能源肥城矿业集团 白庄煤矿,山东 肥城 271623)
0 引言
在现在工厂控制系统中,PLC 作为过程控制的核心部件,工作稳定、运行可靠、强大的控制能力和成熟的技术使其具有很大的竞争优势。但PLC 也有其不足之处,操作过程缺乏交互性。现场工作人员无法直观地对其工作状态进行实时监控,修改运行参数必须由专业人员使用专用的编程器来完成,不但成本高昂,而且极为不便。对于一些需要经常更改工艺参数的应用场合控制系统,这些不足尤为突出。各PLC 公司专用的触摸屏交互性虽好,但价格较贵,兼容性差。
针对目前应用的问题,本文设计实现了基于单片机的PLC 实时控制系统。单片机利用PLC 必备的编程接口与之进行通信,采用LED显示PLC 程序执行状态,使用按键来设置工艺参数。
1 AT89 系列单片机介绍
AT89 系列单片机是美国ATMEL 公司生产的8 位Flash 系列单片机,与INTEL 公司生产的MCS-51 单片机兼容,是市场的主流产品。其特点如下:
1)片内含有Flash 程序存储器,开发编程方便;
2)全面兼容8051,引脚完全相同可直接取代8751;
3)具有静态时钟方式、降低系统功耗,适合便携式系统;
4)Flash 程序存储器可以多次快速擦写,适合学习、开发。
2 PLC 的介绍
可编程序控制器(Programmable Logic Controller),简称PLC,是一种专为工业环境应用而设计的电子系统.它采用可编程序的存储器,在内部存储执行逻辑运算、顺序控制、定时、计数和算术运算操作的指令,并通过数字式和模拟式的输入和输出,控制各种类型的生产过程.PLC 具有编程简单,使用方便,抗干扰能力强,在特殊的环境中仍能可靠地工作,故障修复时间短,维护方便,接口功能强等优点,因此在工业中得到了广泛应用。
3 单片机和PLC 实时控制系统的设计实现
3.1 单片机的硬件的系统总体结构
根据要求,设计系统的总体结构如图1 所示。由图中可以看出,设计的系统较为简单,采用单片机的最小系统即可满足要求,整个系统可以分为电源电路,时钟电路,复位电路,按键电路,显示电路,RS-232 通信电路等部分。
电源电路为单片机提供5V 电压,并保证从内部ROM 开始执行程序。
时钟电路为单片机提供正确的时钟频率,确保单片机正常工作。复位电路保证单片机执行程序发生错误时,能够回到初始状态重新执行程序。
按键电路和显示电路是单片机的输入输出部分,使用户可以和单片机进行交互。
通信部分利用了MAX-232 芯片,使单片机和PLC 可以以RS-232 标准进行通信。
3.2 通信接口电路及设置硬件连接
图1 系统总体框图
图2 主程序流程图
PLC 通过Host Link 协议与单片机进行1:1 上位链接通信,单片机作为上位机发送读写命令,实现的功能有:读写PLC 的运行状态,读写继电器区和数据区DM 的内容,读写定时器/计数器的设定值和当前值,对指定点或通道强迫置位/复位。上位机与PLC 通信,单片机是主动的,PLC 是被动的,每次通信由单片机主动发起,PLC 不需编写通信程序,但用户应遵循通信协议即命令帧、响应帧的要求,在单片机上设计通信程序。为了保证单片机与PLC 的正常通信,通信前,应保证单片机的通信参数(如帧格式、波特率、较验方法等) 必须和PLC 设置一致。
3.2.1 PLC 串行通信接口设置通信前,必须先在PLC 设置中正确设置如表1 所示的参数。
表1 通信参数设置
3.2.2 单片机串口设置
AT89S51 内部有一个全双工增强型UART 口,TXD(P3.1)为发端,RXD(P3.0)为接收端。它主要受两个特殊寄存器(SCON 和PCON)的控制,可用软件设置的四种工作方式。通信工作方式中,方式1 是标准的异步通信方式,此方式工作时,串行口为8 位异步通信接口,每帧信息包括10 位:1 个起始位、8 个数据位和1 个停止位。波特率可变,由定时器T1 的溢出率和SMOD 的状态决定,在CPU 的晶振为11.0592MHz 时,波特率采用9600bps。通信参数设置如下:置SCON 为01010000B(50H)(串口工作方式1,允许接收),置TMOD00100000B(20H)(定时器1 工作于模式2,做波特率发生器)。
3.3 通信协议
上位机链接通信使用的是OMRON 的Host Link 协议,在一次交换中传输的命令或应答的数据被称为一帧,一帧最多可包含131 个数据字符。当PLC 接收到从上位机发来的ASCII 码命令时,自动返回ASCII 码应答。单片机必须有一个能控制命令和应答的传送和接收的程序。
当点对点通信时,块中无设备号和校验码。一帧最多128 个字符。命令块单帧时的正文内容最多124 个字符,多于一帧时,由起始帧、中间帧、结束帧构成,起始帧正文内容最多125 个字符,中间帧正文最多127 个字符,结束帧正文最多126 个字符。响应块中包含有两位响应码,单帧时的正文内容为122 个字符,在多帧情况下,起始帧含有两位响应码,正文内容最多为123 个字符,中间帧正文最多127 个字符,结束帧正文最多126 个字符。
3.4 单片机和PLC 的通信编程
当PLC 使用Host Link 协议与单片机通信时,单片机具有传送优先权,单片机总是首先向PLC 发出命令并启动通信,发送过程结束后,PLC 立即作出响应,然后将执行结果返回单片机,单片机接收由PLC 发出的响应帧,二者以帧为单位轮流交换数据。PLC 处于被动通信,无需编制通信程序。单片机需要编制上位机通信程序,该程序可以发送命令帧和接收PLC 发出的应答帧。其中包括:发送命令子程序、接收响应子程序。AT89S51 单片机可以工作在查询方式也可以工作在中断方式下,单片机作为主站不繁忙时,可以采用查询方式;当主站任务繁忙时,则不宜采用查询方以免影响主站工作效率,需要采用在中断方式。
其中主程序流程图如图2 所示。
4 结论
PLC 与AT89S51 单片机之间的串行通信方法应用于现代控制系统中,不仅发挥了PLC 控制稳定可靠、抗干扰能力强的优势,而且发挥单片机扩展灵活、适应性强的优点,使两者优势互补。该方法简易实用、灵活方便、安全可靠、成本低廉,具有良好的社会效益和经济效益。
[1]公茂法,黄鹤松,杨学蔚,等编.MCS-51/52 单片机原理与实践[M].北京:北京航空航天大学出版社,2009,3:1-3,22-37,110-120,122-144.
[2]张仁忠,滕丽娟,韩雷,王建伟.PLC 与单片机的通讯方式[J].应用科技,2001,3,28(3).
[3]杨博,伍星,甄彩虹.基于单片机的PLC 实时控制系统[J].自动化与仪表,2009(5).
[4]朱壮志,姜开林.OMRON PLC 与上位机的通讯[J].电工技术,2003(6).