Windows环境下VBQPLC通信实现

摘要:本文分析了Windows环境下串行通信的编程技术,介绍了在Windows环境下用VB6.0语言编写串行通信程序,实现了PC机与三菱 Q00PLC 之间的串行通信,并提出了在实际应用中提高串行通信性能的方法。
关键词:VB;Win32API函数;串行通信;Q00PLC
一 概述
    在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道。由于串行通信结构简单、可靠性强、实现及使用成本低、通讯标准统一,因此在测控系统和工程中应用十分广泛。目前Windows在工业生产监控管理系统中已成为主流平台 ,Windows环境下的上、下位机之间的串行通信是设计与开发监控管理系统和集散控制系统的重要组成部分。
    Microsoft公司的VB++6.0是一种高级编程语言,它提供的串列通信控件封装了封装了Win32API中的标准通信函数,可以让开发者方便开发串列通信上位机程序。
 
    PLC是现在控制领域不可缺少的部分,已经非常普及,如何简便的与PLC交互已经成为众多厂商新的竞争战场。由此产生了人机界面、组态软件等产品。这些产品的产生大大简化了
对PLC的控制,操作,使用更方便。但也有共同的缺点:价格过高和开放性较差。VB作为“原始"的编程语言在这两方面无疑有着明显的优势。 
二 串行通信
    串行通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1或者为0。 
    2.1 串行通信的分类 
    串行通信可以分为同步通信和异步通信两类。同步通信是按照软件识别同步字符来实现数据的发送和接收,异步通信是一种利用字符的再同步技术的通信方式。 
    2.1.1 同步通信 
    同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。 
    它们均由同步字符、数据字符和校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1到2个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。 空军政治学院
2.1.2  异步通信 
    异步通信中,在异步通行中有两个比较重要的指标:字符帧格式和波特率。数据通常以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。 
    接收端检测到传输线上发送过来的低电平逻辑"0"(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。
    2.2 几种流行的串行通信协议
    RS-232、RS-422和RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)
制订并发布的,RS-232在1962年发布,后来陆续有不少改进版本,其中最常用的是RS-232-C版。 
    目前RS-232是PC机与通信工业中应用最广泛的一种串行接口。RS-232被定义为一种在低速率串行通信中增加通信距离的单端标准。RS-232采取不平衡传输方式,即所谓单端通信。标准规定,RS-232的传送距离要求可达50英尺(约15M),最高速率为20kbps。

图1 RS232端口的硬件握手和连接方式
    RS232的通讯信号电平为正负5~15V,这不同于数字电路的0~3V或0~5V,所以要以RS232的方式进行通讯,源信号不匹配时需要进行电压转换。清华大学校长顾秉林
    当进行数据传送时,只用一根数据线且只能进行单向传输的方式,称为单工方式; 当进行数据传送时,只用一根数据线利用不同时段进行双向传输的方式,称为半双工方式;当进行数据传送时,利用两根数据线同时进行发送和接收的方式,称为全双工方式。
代理服务器技术
公安部孙正良简介    由于RS-232存在传输距离有限等不足,于是RS-422诞生了。RS-422标准全称是“平衡电压数字接口电路的电气特性”,它定义了一种平衡通信接口,将传输速率提高到10Mbps,传输距离延长到4000英尺(约1219M),并允许在一条平衡总线上连接最多10个接收器。当然,RS-422也有缺陷: 因为其平衡双绞线的长度与传输速率成反比,所以在100kbps速率以内,传输距离才可能达到最大值,也就是说,只有在很短的距离下才能获得最高传输速率。一般在100M长的双绞线上所能获得的最大传输速率仅为1Mbps。另外有一点必须指出,在RS-422通信中,只有一个主设备(Master),其余为从设备(Salve),从设备之间不能进行通信,所以RS-422支持的是点对多点的双向通信。 
    为扩展应用范围,RS于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向
通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/RS-485-A标准。 
流动儿童    由于RS-485是从RS-422基础上发展而来的,所以RS-485许多电气规定与RS-422相仿,如都采用平衡传输方式、都需要在传输线上接终接电阻、最大传输距离约为1219M、最大传输速率为10Mbps等。但是,RS-485可以采用二线与四线方式,采用二线制时可实现真正的多点双向通信,而采用四线连接时,与RS-422一样只能实现点对多点通信,但它比RS-422有改进, 无论四线还是二线连接方式总线上可接多达32个设备。
   三菱的 Q00PLC 的通讯接口为RS232。
三 三菱 Q00PLC 的通讯方式
    3.1 通讯协议
郑州 大学    三菱的 Q00PLC 采用列 MELSEC 通讯协议,即 MC 协议。MC协议采用帧的形式进行通讯,它包括以下几种形式:

本文发布于:2024-09-23 01:36:19,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/46399.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:字符   串行   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议