可编程序控制器网络通讯及其程序设计研究之间的串行通信.pdf
《可编程序控制器网络通讯及其程序设计研究之间的串行通信.pdf》由会员分享,可在线阅读,更多相关《可编程序控制器网络通讯及其程序设计研究之间的串行通信.pdf(2页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微型电脑应用2002 年第 6 期 用 Delphi 实现计算机与 OMRON PLC 之间的串行通信 微型电脑应用2002 年第 6 期 用 Delphi 实现计算机与 OMRON PLC 之间的串行通信 同济大学 信控系 上海 200092 余振宏 蒋式勤 刁杰 谢威 摘要:摘要:以OMRON C200HG系列PLC为例介绍了用Delphi5.0实现上位机与PLC地通信,着重讨论了通信协议以及MSComm控件的属性设置、事件响应。关键词:串行通信,关键词:串行通信,Delphi5.0,PLC通信协议,通信协议,API函数函数 The Achievement of Serial Commun
2、ication between Computer and OMRON C200HG PLC by Using Delphi Abstract:Introduce the technology of serial communication between the computer and OMRON C200HG PLC by Using Delphi,mainly discuss the communication protocal,the protertiessetting and events response of MSComm by using the Delphi5.0 Key w
3、ords:serial communication,Delphi5.0,PLC communication protocol,API function 现代工业控制的监控系统及其他过程检测和控制系统,大多采用分布式监控系统的控制方式,要使其信息集中,功能分散的优点得以充分发挥,就必须进行上位机与下位机之间的数据通信。与此同时,可编程控制器(PLC)以其功能强大、通讯灵活、可靠性高、环境适应性好、编程简单、使用维护方便等优点而被作为下位机广泛应用于工业现场,而微机在数据处理及人机界面方面有得天独厚的优势,因此采用微机为上位管理机来进行工艺流程及工艺参数的显示、控制参数的修改等,这样不得不解决上位
4、管理机与下位控制机之间的通信问题。本文结合基于元胞自动机的电梯群控系统建模与仿真系统介绍如何运用delphi5.0实现上位机与OMRON C200HG PLC之间的通信。1 通信系统的硬件结构 1 通信系统的硬件结构 本仿真系统由一台通用PC(上位机)和OMRON C200HG PLC(下位机)组成。C200HG的CPU单元内带有RS-232C端口,其支持与PC串口的一对一串行通信。通过编制上位机的控制程序和相应的下位机程序就能实现上下位机之间数据的交互。2 上位机的串口通信 2 上位机的串口通信 用Delphi开发串口通信软件一般有两种方法:一是利用Windows的通信API函数,另一种是采
5、用Microsoft的MSComm控件。利用API编写串口通信程序较为复杂,需要掌握大量的通信知识,其优点是实现的功能强大,应用面广泛,适合于编写较为复杂的低层次通信程序。而利用MSComm控件则相对简单,该控件具有丰富的与串口通信密切相关的属性及事件,提供了对串口的各种操作。考虑到与下位PLC的通信比较简单,通信过程中并没有涉及到复杂的底层操作,所以本仿真系统就选用Microsoft的MSComm控件。MSComm控件是VB中的OCX控件,可以通过选择菜单Componentimport active control,在Import ActiveX页内选择Microsoft Comm Cont
6、rol,点击Install安装,即可将其添加到Delphi中使用。MSComm控件的主要属性及事件 MSComm控件的主要属性及事件 CommPort:设置或返回串行端口号,缺省值1。Settings:设置或返回串口通信参数,格式为“波特率,奇偶校验位,数据位,停止位”。例如:MSComm1.Settings:9600,o/e,8,1 PortOpen:打开或关闭串行端口,格式为MSComm1.PortOpen:True|False InBufferSize:设置或返回接收缓冲区的大小,缺省值为1024字节。InBufferCount:返回接收缓冲区内等待读取的字节数,可通过设置该属性为0来清
7、空接收缓冲区。RThreshold:该属性为一阀值,它确定当接收缓冲区内的字节个数达到或超过该值后就产生代码为CommEvReceive的OnComm事件。SThreshold:该属性为一阀值,它确定当发送缓冲区内的字节个数少于该值后就产生代码为 CommEvSend的OnComm事件。InputLen:设置或返回接收缓冲区内用Input读入的字节数,设置该属性为0表示Input读取整个缓冲区的内容。Input:从接收缓冲区读取一串字符。OutBufferSize:设置或返回发送缓冲区的大小,缺省值为512字节。OutBufferCount:返回发送缓冲区内等待发送的字节数,可通过设置该属性为
8、0来清空缓冲区。OutPut:向发送缓冲区传送一串字符。如果在通信过程中发生错误或事件,就会触发OnComm事件,并由CommEvent属性代码反映错误类型,在通信程序的设计中可根据该属性来执行不同的操作。CommEvent属性值很多我们主要用到的是CommEvReceive:值为2,接收缓冲区内字符数达到RThreshold指定的值。3 通信协议及上下位机的通信过程 3 通信协议及上下位机的通信过程 C200HG对通信端口有默认的标准设置,起动位:1 数据长度:7 停止位:2 奇偶校验:偶 波特率:9,600bps,也即MSComm1.Settings:9600,e,7,2 上下位机的链接通
9、信通过在上位机和PLC之间交换命令和应答实现。在一次交换中传输的命令或应答数据称为一帧,一个帧最多可包含131个数据字符。上位机的链接数据称命令帧,下位机返回的数据称应答帧。3.1命令帧格式 3.1命令帧格式 从上位机发送一个命令时,按下面的格式排列命令数据:图4-1 命令帧格式 识别码和正文取决于传输的上位机链接命令。当传送一个组合命令时,还将有第二个识别码(子识别码)。FCS(帧检查顺序)码由上位机计算并设置在命令帧中,有关计算方法在下面将详细叙述。命令帧可以有最多131个字符长,一个等于或大于132字符的命令必须分成若干帧。命令分段使用回车定界符,而不能使用终止符,终止符用在最后帧的结尾
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 控制器 网络通讯 及其 程序设计 研究 之间 串行 通信
限制150内