首页 三菱PLC与上位机通讯

三菱PLC与上位机通讯

举报
开通vip

三菱PLC与上位机通讯三菱PLC与上位机通讯 三菱PLC通讯 三菱PLC与上位机通讯 三菱PLC:FX1N + FX1N-232-BD FX2N + FX2N-232-BD 计算机:Windows XP中文企业版 + Visual Basic 6.0中文企业版 Windows 98中文版 + Visual Basic 6.0 中文企业版 两者之间连接使用的是FX-232CAB-1电缆线(2-3,3-2,4-6(8),5-5) 一(三菱PLC的设置 三菱FX PLC在进行计算机链接(专用协议)和无协议通讯(RS指令)时均须...

三菱PLC与上位机通讯
三菱PLC与上位机通讯 三菱PLC通讯 三菱PLC与上位机通讯 三菱PLC:FX1N + FX1N-232-BD FX2N + FX2N-232-BD 计算机:Windows XP中文企业版 + Visual Basic 6.0中文企业版 Windows 98中文版 + Visual Basic 6.0 中文企业版 两者之间连接使用的是FX-232CAB-1电缆线(2-3,3-2,4-6(8),5-5) 一(三菱PLC的设置 三菱FX PLC在进行计算机链接(专用 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 )和无协议通讯(RS指令)时均须对通讯 格式 pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载 (D8120)进行设定。其中包含有波特率、数据长度、奇偶校验、停止位和协议格式等。在修改了D8120的设置后,确保关掉PLC的电源,然后再打开。 此外,对于采用RS485形式1:N计算机链接的还必须对站点号(D8121)进行设定。设定的范围从00H到0FH(即0到15)。 在这里对D8120采用下述设置: b15 b0 0110 1000 1000 1110 6 8 8 E 即数据长度为7位,偶校验,2位停止位,波特率为9600bps,无标题符和终结符,采用计算机链接(RS-232C),自动添加和校验码,采用专用协议格式1。 同时设定站号为0。具体设定如下所示: FX PLC进行计算机链接时可用的专用协议有两种:格式1和格式4。两种格式的差别在于是否在每一个块上添加了CR + LF,其中添加了CR + LF的是格式4。在这里采用格式1。 二(上位机程序的编制 这里采用Microsoft公司的Visual Basic 6.0中文企业版编制上位机程序。 Visual Basic中提供了一个名为MSComm的通信控件便于 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 串行通信的程序。MSComm控件的主要属性有: 1( CommPort属性 CommPort属性用于指定所要使用的串行端口的号码。虽然Windows操作系统可以容纳最多256个串行通信端口,不过Visual Basic的MSComm控件则仅限于16个端口。 2( Settings属性 Settings属性用于设置初始化参数。以字符串的形式设置波特率、奇偶校验、数据位、停止位等4个参数。其格式为“BBBB,P,D,S”,其中BBBB 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示波特率,P表示奇偶校验位检查方式,D表示数据位数,S表示停止位数。一般情况下,欧美仪器习惯使用“9600,n,8,1”当成设置值;而日本仪器则习惯使用“9600,e,7,2”作为设置值。Settings设置完成之后,所传输及接受的字符串便以此设置为准,使用RS-232通信的双方,Settings必须完全一样,彼此才能顺利地通信,否则双方将无法正确接收到彼此所传输的信号。所以,该属性的设置必须和三菱PLC中D8120的相关设置保持一致。在这里,统一采用“9600,e,7,2”的设定。 三菱PLC通讯 3( PortOpen属性 PortOpen属性用于设置通信连接端口的状态。在使用串行端口之前必须先将要使用的串行端口打开。在上位机程序中应进行如下设定: Private Sub Form_Load() '窗体载入事件 MSComm1.CommPort = 1 '选择端口号 MSComm1.Settings = "9600,e,7,2" '设置端口属性 MSComm1.PortOpen = True '打开端口 End Sub 4( Output属性 MSComm控件的Output属性提供了发送的功能,当从计算机向可编程控制器写入数据或从可编程控制器读取数据时,上位机应当先发出以下格式(格式1)的指令字符串: ENQ 站号 PC号 命令 消息等待时间 字符区域A 和校验代码 其中站号为在D8121中的设定值,这里是:00,PC号对于FX系列为:FF。 因为ENQ,ACK,NAK等通信控制字符是不可见字符,所以先用Chr函数对其进行赋值: ENQ=Chr(5) ACK=Chr(6) NAK=Chr(&H15) 然后在上位机程序中写入以下代码即可发出指令: MSComm1.Output=ENQ &“00FF<命令><消息等待时间><字符区域A><和校验代码>” 5( Input属性 与Output属性相反,Input属性提供了接收数据的功能。它将对方传到输入缓冲区中的数据读进程序中,并清除缓冲区中已被读取的数据。 a. 如果是从计算机向可编程控制器写入数据时,接收到从可编程控制器返回的应该是以下格式的字符串: ACK 站号 PC号 或者 NAK 站号 PC号 错误代码 前一种表示可编程控制器已经正确接收到从计算机发来的指令,后一种表示可编程控制器未正确接收到从计算机发来的指令。 b. 如果是从计算机向可编程控制器读取数据时,接收到从可编程控制器返回的应该是以下格式的字符串: STX 站号 PC号 字符区域B ETX 和校验代码 或者 NAK 站号 PC号 错误代码 如果要连续读取数据可以利用Timer控件。将Output和Input放在Timer控件的Timer事件中即可。程序会以Timer控件的Interval属性中设置的间隔去发送指令和接收数据。 对于MSComm控件的其他一些属性使用VB的默认值即可。 在串行通信传输的应用中,经常使用的Visual Basic中的字符串处理函数如下: Chr函数:返回含有特定ANSI或DBCS字符码的字符串。 Asc函数:返回字符串第一个字符的ANSI或DBCS字符码。 Len函数:返回以字符数为单位的字符串长度。 Mid函数:取得字符串中特定数量的字符,可指定开始获取的位置和长度。 Left函数:取得字符串的左边固定字符数的字符串。 Right函数:取得字符串的右边固定字符数的字符串。 Val函数:把字符串转换为数值,可以将8进制或16进制的字符串转换为10进制。 Hex函数:返回以十六进制数值表示的字符串。 三菱PLC通讯 RS指令应用一 三菱PLC与计算机利用RS指令进行通讯(通讯手册9-14例) 三菱PLC:FX1N + FX1N-232-BD 计算机:Windows XP中文企业版 + Visual Basic 6.0中文企业版 Windows 98中文版 + Visual Basic 6.0中文企业版 两者之间连接使用的是FX-232CAB-1电缆线(2-3,3-2,4-6(8),5-5) 一(三菱PLC的设置 三菱FX PLC在进行计算机链接(专用协议)和无协议通讯(RS指令)时均须对通讯格式 (D8120)进行设定。其中包含有波特率、数据长度、奇偶校验、停止位和协议格式等。在 修改了D8120的设置后,确保关掉PLC的电源,然后再打开。 在这里对D8120采用下述设置: b15 b0 0000 0100 1000 1111 0 4 8 F 即数据长度为8位,偶校验,2位停止位,波特率为9600bps,无标题符和终结符,没有添 加和校验码,采用无协议。 PLC程序如下: 二(上位机程序的编制 完整程序代码及注释如下: Private Sub cmd1_Click() '发送按钮 lbl1.Caption = "" If txt1.Text = "" Then '若发送数据栏中未键入指令则提示键入指令 lbl1.Caption = "Please input data" Else MSComm1.Output = txt1.Text '发送指令 Timer1.Enabled = True '触发延时接收 End If 三菱PLC通讯 End Sub Private Sub Form_Load() '窗体载入事件 MSComm1.CommPort = 1 '选择端口号 MSComm1.Settings = "9600,e,8,2" '设置端口属性 MSComm1.PortOpen = True '打开端口 End Sub Private Sub Timer1_Timer() '延时500ms接收 NAK = Chr(&H15) If MSComm1.InBufferCount > 0 Then txt2.Text = "" a = MSComm1.Input txt2.Text = a '在接收数据栏中显示接收到的数据 Else lbl1.Caption = "No response" End If Timer1.Enabled = False End Sub RS指令应用二 三菱PLC与仪表之间通讯 三菱PLC:FX1N + FX1N-232-BD 仪表(称重器) 两者之间连线该仪表仅提供3线式的简化RS-232C口,即只有:RXD,TXD和GND,于是采用2-3,3-2,5-5的三线接法。 1( 对D8120进行设置并使其与仪表中的设置一致,对其中的控制线设置成使用无硬件握手 方式,即(b12,b11,b10)=(0,0,0)。根据仪表说明书上对通讯的要求,设置如下: b15 b0 0000 0000 1000 0110 0 0 8 6 2( 根据仪表说明书所述,该种仪表有两种工作方式:连续发送和指令状态。这里设置成指 令状态,即仪表根据发来的指令返回相应的数据。在此使用READ指令,根据指令协议, 输入的指令必须以确认。所以READ指令的ASCII输入为“52,45,41,44,0D,0A” 一共6个字符,将RS指令的发送数据点数设为k6。另外返回数据的格式是18个字符, 所以将RS指令的接收数据点数设为k18。通过 注:发送数据点数和接收数据点数必须按指令协议进行设置,否则通讯不能正常进行。 PLC程序如下: 三菱PLC通讯 参考资料 1(三菱FX通讯用户手册(RS-232C,RS485) 2(《Visual Basic与RS-232串行通信控制(最新版)》清华大学出版社
本文档为【三菱PLC与上位机通讯】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_995397
暂无简介~
格式:doc
大小:56KB
软件:Word
页数:8
分类:互联网
上传时间:2017-10-08
浏览量:223