U-CIF02
U接口欧姆龙 PLC编程电缆,带通信指示灯连接 CPM1 、 CPM1A/2A 、 CQM1 、 C200HS 、 C200HX/HG/HE 和 SRM1系列,长度3米
CQM1-CIF02
RS232 接口的欧姆龙PLC编程电缆,RS232/ 外设口,电缆长度3 米。适用PLC 同
CQM1-CIF01
OMRON CPM1A/CQM1用的编程电缆,长度为3米(串口为25针)
U-CN226
U接口欧姆龙CQM1H/CPM2C外设口编程电缆, 长度 2 米
PC-CN226
RS232接口欧姆龙CQM1H/CPM2C外设口编程电缆, 电缆长度 2 米
XW2Z-200S-VH
RS232 接口的欧姆龙PLC编程电缆,适用欧姆龙CQM1H/CPM2C系列RS232口的PLC编程电缆,电缆长度3 米
U-XW2Z-200S-VH
U 接口的欧姆龙PLC编程电缆,适用欧姆龙CQM1H/CPM2C系列RS232口的PLC编程电缆,电缆长度3 米
U-CIF31
真正的 U 到 RS232 (DTE 接口)转换电缆,带通信指示灯。支持 RS232 接口的各种 PLC 编程电缆,长度1米.
计算机通信论文计算机算论文:
基于VB通信控件MSComm实现计算机与欧姆龙PLC串行通信编程的研究与应用
摘要:主要阐述了如何在VB(Visual Basic)编程下利用MSComm通信控件实现计算机与欧姆龙PLC进行串行通信的编程技术。
关键词:MSComm控件;串行通信
0引言
计算机串行通信是计算机与控制设备(PLC)进行数据传送的一种通信,也是实现工业自动控制经常用到的通信。每一种通信都严格约定了与其对应的通信协议。要确保计算机与P L C之间能正常通信,就必须遵照PLC通信协议编写通信程序。本文将围绕如何使用VisualBasic(简称VB)的MSComm通信控件编写计算机与欧姆龙PLC串行通信程序进行阐述。
1串行通信
串行通信在工业控制的范畴中一直占据着极其重要的地位,串行端口(RS-232)是计算机上的配置,常用于连接调制解调器来传输数据,在计算机的硬件设备器中可以看到,定义为COM1、COM2等。常用的串行通信有两种,分别是RS-232和RS-485,本文以RS-232为例进行介绍。
2 VB集成中MSComm通信控件的使用与设置
2.1 Visual Basic集成
V B采用了面向对象的程序设计思想。它的基本思路是把复杂的程序设计问题分解为一个个能够完成功能的相对简单的对象,所谓“对象"就是一个可操作的实体,如窗体、窗体中的命令按钮、标签、文本框等。面向对象的编程就好像搭积木一样,程序员可根据程序和界面设计要求,直接在屏幕上“画\"出窗口、菜单、按钮等不同类型的对象,并为每个对象设置属性。
2.2串行通信控件MSComm的使用和设置
VB提供了支持串行通信的可编程组件MSComm,用户只需要将其加载到应用程序中,对其进行简单的属性设置即“可使用。现将控件的加载及属性设置进行介绍。
2.2.1将MSComm控件加载到应用程序中
在VB集成(IDE)中选择“工程"选项卡中的“部件"子菜单进入控件选择页面。
在控件选择页面中选上Microsoft Comm Cotrol 6.0控件加载项,单击“确定"按钮完成MSComm控件的加载。
当完成MSComm控件的加载后,在IDE中的常规控件栏即可看到MSComm控件,此时就可使用此控件了。
2.2.2 MSComm控件属性设置
当应用程序成功添加MSComm控件后,就可在其属性设置页面完成其属性的设置,如图4所示。在一般的串行通信应用程序中只需要对MSComm控件的如下几个属性进行设置。
CommPort:通信程序使用的串口序号,根据计算机的串口硬件配置进行选择,可以为1、2等。
Settings:属性设置字符串,属性有:波特率、奇偶校验、字节数据位数、字节停止位数。可以为9600、e、7、2。也可在程序中动态设置,属性设置程序代码如下:
3 PLC通信数据帧介绍
计算机与P L C通信时,按应答进行。由计算机发给PLC一组ASCII码字符数据,这一组数据成为命令帧。P L C对收到的命令帧进行校验,并将校验结果返回给计算机,P L C返回给计算机的这一组数据称为响应帧,只有当校验正确时P L C才按照命令执行。计算机和P L C通信时,PLC是被动的,必须先由计算机给PLC发出命令帧,PLC再给计算机发出响应帧,每帧多由1 3 1个字符组成。下面将命令帧与响应帧的组成结构介绍如下:
3.1命令帧
帧结构解析:
@:在起始处必须放置;
节点号:有效值为00~31,表示PC机多可同32台PLC通信;
头代码:PLC的命令代码;
发送文本:P C机发送的命令参数;
FCS(Frame Check Sequence):
帧检查顺序代码(帧校验码);帧校验码是2位(Bit)十六进制数。它是由帧数据包含的所有字符的ASCII码进行位异或运算的结果。
终止符:“*"号和回车符“CR"。
3.2响应帧
帧结构解析:
@:返回命令头;
节点号:有效值为00—31,返回数据的PLC节点号
头代码:PLC的命令代码;
尾代码:返回命令完成状态码;
接收文本:在有数据时返回的数据;
FCS:帧检查顺序代码;
终止符:“*"号和回车符“CR"。
3.3 FCS(帧数据冗余校验码)的计算
为了串行通信的误码率,在接收和发送端都必须对数据进行校验,常用的是进行F C S校验。对帧数据进行冗余校验计算时,应对帧数据中各个字符的ASCII码进行位异或运算,然后将结果转为2位十六进制字符。
4计算机与PLC串行通信程序实例
4.1通信主程序的设计架构
设计通信主程序的主要功能是:实现计算机对PLC的运行控制和状态,即构成一个闭环监控。
4.2打开串行通信端口
打开通信端口,对端口进行初始化设置,程序设计流程。
4.3写PLC数据
将计算机发出的命令写入PLC,实现计算机对PLC的控制功能。程序设计流程
4.4读PLC数据。
从PLC中读取数据,PLC的运行状态,程序设计流程。