第一范文网 - 专业文章范例文档资料分享平台

火电厂除灰阀门PLC控制系统的设计奥鹏

来源:用户分享 时间:2025/5/15 4:51:12 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

吉林大学 毕业论文 上位机也要有能力将操作人员发出的命令准确、无误、及时地传给现场的控制装置。根据集散控制系统的要求,可编程控制器与上位机的通信模块构成了系统的数据控制层。本设计是一个小型的PLC控制系统模型,因此采用了个人计算机作为上位机来监控可编程控制器。硬件的工作在论文第三章已经详细叙述过,本章节只讨论软件方面的工作。

4.2.1 FX系列可编程控制器的通信规程

在个人计算机中必须依据互联的PLC或PLC网络通信规程来编写通信程序,因此先介绍FX系列可编程控制器的通信规程。

(1)数据格式

FX系列可编程控制器采用异步通信格式,报文由1位起始位,7位数据位,1位停止位及1位奇偶校验位组成,波特率固定为9600 b/s,字符ASCII码,如图4-3所示。

1位起始位7位数据位偶校验1位起始位图4-3 通信数据格式

(2)通信命令

FX系列可编程控制器有4个通信命令,分别是读命令、写命令、强制通命令和强制断命令,如表4-1所示。表中:X—输入继电器;Y—输出继电器;M—辅助继电器;S—状态元件;T—定时器;C—计数器;D—数据寄存器。

表4-1 FX通信命令表

命令 读命令 ‘30H’ ‘1’即ASCⅠⅠ码写命令 ‘31H’ X,Y,M,S,T,C,D 把数据写入软继电器 命令代码 ‘0’即ASCⅠⅠ码X,Y,M,S,T,C,D 读取软继电器状态、数据 目标软继电器 功能 28

吉林大学 毕业论文 ‘7’即ASCⅠⅠ码强制通命令 ‘37H’ ‘8’ASCⅠⅠ码强制断命令 ‘38H’ X,Y,M,S,T,C, 强制某位 OFF X,Y,M,S,T,C, 强制某位 ON (3)通信控制字符

FX系列可编程控制器采用面向字符的传输规程,一共用到5个通信控制字符,它们的代码和功能如表4-2所示。

表4-2 FX控制字符表

控制字符 ENQ ACK NAK STX ETX ASCⅠⅠ代码 05H 06H 15H 02H 03H 功能 计算机发出请求 PLC对ENQ的确认回答 PLC对ENQ的否认回答 信息帧开始标记 信息帧结束标记 (4)报文格式

计算机向可编程控制器发送的报文。可编程控制器向计算机发送的应答报文。CMD为可编程控制器四种操作命令,SUMH和SUML是按字节累加和的高、低字节ASCII码,作为校验码使用。

(5)传输规程与数据段结构

个人计算机与FX系列可编程控制器采用应答方式通信,可编程控制器根据个人计算机的命令,在每个循环扫描结束END语句处组织自动应答报文,因此,用户无须对可编程控制器进行编程。其传输过程如图4-6所示。

29

吉林大学 毕业论文 个人计算机ENQ可编程控制器发送报文数据段321010161616161616ACK命令报文应答报文节数元件4位起地址字发送报文数据段....第1字节第1字节.高低高低高低 图4-6 传输规程 图4-7 数据段格式

计算机发送报文数据段与可编程控制器应答报文数据段的定义如图4-7所示。数据段中的每一字节全部使用ASCII码来表示,其中元件起始地址是一个16位的可编程控制器存储器地址,具体的装置地址必须与可编程控制器编程口地址一致。

4.2.2 PLC通信程序的流程

用户编写的通信程序只是针对个人计算机,因此该程序流程仅仅针对需要编程的个人计算机,程序流程一般有通信口初始化、发送请求、接收响应、发送报文、读取应答报文等模块。通信程序流程图如图4-8所示。首先程序必须对通信串口进行初始化,初始化工作主要包括通信串口的选择、波特率、校验位、数据位数和停止位数的设定、串口工作方式的确定等等;然后检查通信设备是否准备好,得到确认回答后向可编程控制器发送请求通信命令,采用查询方式接收正常的响应信号,当程序接收到响应信号后,就可以开始发送报文。在此过程中依然采用查询方式检查串口缓冲区,接收由可编程控制器发来的应答报文。程序循环执行,直至用户结束程序的运行为止。

30

吉林大学 毕业论文

图4-8 PLC通信程序流程图

4.2.3 PLC监控程序

Windows环境下进行串口编程一般有两种方法,即Windows API串口编程和串行通信控件编程。在Windows环境下编程的最大特征之一就是设备无关性,它通过设备驱动程序将Windows应用程序与不同的外部设备隔离。Windows本身封装了Windows通信机制,这种方式称为通信API,Windows程序员可利用Windows通信API进行编程,不用对硬件进行操作。但这种编程方法比较复杂,对计算机的硬件也必须有一定的了解。因此对串口编程常常采用第二种方法,即使用MSComm(串行通信)控件。串行通信控件通过串行端口 传输和接收数据,为应用程序提供串行通信功能图。它的使用非常简单,程序员不必花时间去了解较为复杂的API函数,在Visual C++与Visual Basic中均可方便地使用[18]。

可编程控制器通信程序就是采用Microsoft Visual C++ 6.0编写,考虑到编程的难度,未使用Windows API函数,而是采用了Microsoft公司编写的Microsoft

Communications Control,,version 6.0(串行通信控件)。串行通信控件是一个ActiveX控件,相对于Windows API函数,不需进行多线程编程,因而简单得多,而且功能也比较强大,性能安全可靠。该程序是一个基于对话框的MFC程序,由于在对可编程控制器的通

31

火电厂除灰阀门PLC控制系统的设计奥鹏.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c0tryv5g68l47le04lle8_9.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top