高会新
摘 要:在当前的自动化控制系统中,智能仪表与PLC之间的通讯越来越多,也越来越重要。本文主要研究了S7-200 PLC与智能无纸记录仪的通讯实现,通过现场验证,通讯稳定可靠,此方式可推广至其他智能仪表。
关键词:PLC;智能无纸记录仪;通讯
DOI:10.16640/j.cnki.37-1222/t.2019.11.120
0 引言
PLC是工业自动化的重要支柱,应用越来越广泛。在工业生产中,通常我们要对仪表数据进行采集,然后通过控制电缆接至PLC去做数据显示和逻辑处理。而智能仪表具备普通仪表实现不了的功能,可以实时的在现场显示工艺生产数据和状态等,因此應用越来越广泛。智能仪表一般都具有标准的RS-232/ RS-485接口,方便与PLC进行通讯。本文介绍了S7-200 PLC与无纸记录仪的通讯设计实现方法,该方法可推广至其他智能仪表。
1 PLC自由口通讯技术
1.1 PLC通讯端口的工作模式
S7-200 CPU的RS485通讯端口往往有一个或者两个,这两个通讯接口用在自由端口通讯或者PPI/MPI上。PPI具有通讯限制,这种通讯协议基于令牌环式机制。自由端口通讯是一种基于RS-485的半双工通讯方法,这种通讯模式允许用户与PLC之间进行通讯。
1.2 PLC特殊寄存器以及自由口通讯指令
专用寄存器和通讯指令是S7-200自由端口通讯的核心。在自由端口通讯模式下,用户可以对S7-200上的所有RS485端口进行控制,同时用户还有权限与任何有已知协议的通讯设备进行通讯。S7-200的寄存器用来定制通讯协议,同时提供了相关中断事件以及通讯指令[1]。对于S7-200来说,主要有两个重要的通讯指令,一个是接受指令,即(RCV),另一个指令是发送指令,即(XMT)。
1.3 PLC自由口通讯工作方式
自由端口通讯的基本步骤是,首先对数据进行分析,分配数据缓冲区,之后对写控制字符进行初始化操作,指定端口1以及端口0的工作模式,并对通讯时的基本参数进行设置;自由端通讯端口开始执行发送指令,发送区域中的数据被发送到通讯的另一侧;连接发送完成的中断事件26或者中断事件9,进行中断事件的输入;执行接受指令过程,同时将自由端口所接收到的数据在接收数据的缓冲区进行写入操作。用户的程序可以对接收数据缓冲区当中的所有接收数据进行直接处理。
2 通讯协议的设计
2.1 通讯协议
S7-200 CPU的通信口可以设置为自由口模式。选择自由口模式后,用户程序就可以完全控制通信端口,通讯协议也完全受用户程序控制。所谓的自由口通讯,就是通讯协议是由用户自己定义的。
2.2 无纸记录仪的通讯协议
无纸记录仪的通讯协议为主从扫描式通讯协议,每次通讯过程均由主机发起,然后从机进行响应,回传规定的信息,完成一次通讯过程[2]。根据生产要求,需读取压力、温度、流量数值。
3 PLC通讯程序设计
3.1 程序设计流程
PLC与无纸记录仪通讯程序由主程序、中断程序和3个子程序组成。主程序的任务是把要发送的数据放到发送区,并接收数据到接收区。然后进行初始化设置,SMB130.0数据重置为初始值1,定义结束字符,并同时设置控制字节的参数。之后对接收中断完成和发送进行设置:当发送信号上升沿跳变之后,执行XMT指令,并对数据进行处理;之后将这些数据发送至无纸记录仪,执行接收定时中断,中断的时间置为50ms。完成数据字符的接收过程之后,对所接收到的字符数据进行处理,并等待下一个传输信号。
3.2 程序运行分析
以部分程序为例,列举出实现过程。图1所示为50ms发送数据一次。
图2所示为声明发送完和接受完中断。
3.3 上位机显示
上位机应用WINCC组态软件进行监控、报警、控制、报表统计等程序。本文需要显示无纸记录仪的温度、压力、流量等数据。
4 结语
随着智能仪表在自动检测和控制中应用越来越广泛,与PLC的结合使用是发展趋势。因此,两者之间的稳定可靠的通讯尤为重要。本文主要实现了基于S7 200 PLC与无纸记录仪的通讯设计,通过利用自由端口通讯和无纸记录仪通讯协议的分析,设计了它们之间的串行通讯。此通讯系统已在干熄焦项目上投入使用,其运行稳定可靠。
参考文献:
[1]毛亚黎,朱超.西门子S7-200PLC自由口串行通讯应用[J].自动化技术与应用,2016(06).
[2]李如甲,董林.基于RS-485的智能仪表与PLC串行通讯[J].仪表技术与传感器,2016(08).