预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

VB与三菱PLC通信 VB源代码下载 PLC以卓越的可靠性和方便的可编程性广泛应用于工业控制领域。实现PC机与PLC通信的目的是为了示、窗 口技术等多种功能,为PLC提供良好的人机界面。本文详细介绍了FX系列PLC的通信协议,并现了PC机与FX 系列PLC之间的串行通信。本文对FX系列PLC的通信协议进行了详细的介绍,并以 1前言 PLC以卓越的可靠性和方便的可编程性广泛应用于工业控制领域。实现PC机与PLC通信的目的是为了示、窗 口技术等多种功能,为PLC提供良好的人机界面。本文详细介绍了FX系列PLC的通信协议,并现了PC机与 FX系列PLC之间的串行通信。 2PC机与PLC实现通信的条件 带异步通信适配器的PC机与PLC只有满足如下条件,才能互联通信: (1)带有异步通信接口的PLC才能与带异步通信适配器的PC机互联。还要求双方采用的总线标准一致 (2)双方的初始化,使波特率、数据位数、停止位数、奇偶校验都相同。 (3)要对PLC的通信协议分析清楚,严格地按照协议的规定及帧格式编写PC机的通信程序°PLC中 3PC机及与FX系列PLC的串行通讯 3.1硬件连接 ■; PC机与FX系列PLC不能直接连接,要经过FX—232AW单元进行RS232C/RS-422的 3.2FX系列PLC的通信协议 在PC机中必须依据互联的PLC的通信协议来编写通信程序,因此先介绍FX系列PLC的通信协议。 (1)数据格式 FX系列PLC采用异步格式,由1位起始位、7位数据位、1位偶校验位及1位停止位组成,波特率为9 (2)通信命令 FX系列PLC有4个通信命令,它们是读命令、写命令、强制通命令、强制断命令,如下表所示。表中X兀 件;T—定时器;C—计数器;D—数据寄存器。 (3)通信控制字符 精心整理 FX系列PLC采用面向字符的传输规程,用到5个通信控制字符,如下表所示。 *当PLC对PC机发来的ENQ不理解时,用NAK回答。 (4)报文格式 PC机向PLC发送的报文格式如下: 其中STX为开始标志:02H;ETX为结束标志:03H;CMD为命令的ASCII码;SUMH,于每字节十六进制数变为两字 节ASCII代码,故校验和为SUMH与SUML。 数据段格式与含义如下: *写命令的数据段有数据,读命令的数据段则无数据。 读/写字节数为01H〜40H(1〜64)个。 PLC向PC机发送的应答报文格式如下: *对读命令的应答报文数据段为要读取的数据,一个数据占两个字节,分上位下位: 孑厂i?打厂一•-丁 对写命令的应答报文无数据段,而用ACK及NAK作为应答内容。 (5)传输过程 PC机与FX系列PLC之间采用应答方式通信,传输出错则组织重发。其传输过程如下: PLC根据PC机的命令,在每个循环扫描结束处的END语句后组织自动应答,无需用户在PLC一方编 4利用VB6.0编写通信程序 下面以一个简单的例子来说明编写通信程序的要点。假设PC机要求从PLC中读入从D123开始的4个下(图略 可向作者索取): 命令报文中10F6H为D123的地址,04H表示要读入4个字节的数据。校验和SUM=30H+3 03H=174H,溢出部分不计,故SUMH为77Z,SUML为’4',相应的ASCII码为“3相应的ASCII码为8个字节,故 应答报文长度为12个字节。 根据PC机与FX系列PLC的传输应答过程编制出如下所示的通信程序流程图略。 利用VB的MSComm控件,按照流程图可以编写如下通信程序实现PC机与FX系列PLC之间的串行件驱动的方法 从端口获取数据。在这个例子中使用了轮询方法。 (1)通信口初始化 PrivateSubInitialize() 精心整理 MSommCommPo MSommSeff s= MSommBurSie=l0 MSommOuerSze=l MSomm MSommtMoomlntModeText MSommHaking=comNo MSommPotOpn=True EnSub (2)请求通信与确认 PrivateFuntionMakeHandShakin()AsBoolean DimlnPackaeAsStri MSComml.OuferC MSComml.BuerCont=0 () MSComml.Out=Chr&H5 Do DoEven opUnBufferCoun IMSComml.I acke=MSComml.nput nPahr(&H6)Then aki MaeHang=True El MaeHaaking=FalseEndI EndFun 精心整理 (