欧姆龙PLC与三菱Q系列(xìliè)PLC协议(xiéyì)宏通信(tōng xìn)目录(mùlù)1 三菱Q系列(xìliè)PLC通信协议 11.1 MC协议概述 11.2 QnA兼容3C帧通信格式 21.2.1 数据通信的根本格式 31.2.2 QnA兼容3C帧格式,用格式1进行通信时 31.2.3 QnA兼容3C帧格式,用格式2进行通信时 51.2.4 QnA兼容3C帧格式,用格式3进行通信时 71.2.5 QnA兼容3C帧格式,用格式4进行通信时 91.2.6 帧格式中各个工程的说明 111.2.7 命令及响应字符局部说明 132 欧姆龙协议宏与三菱Q系列PLC协议宏通信实验 182.1 实验准备 182.2 通信电缆接线 182.3 PLC通信参数设置 202.3.1 欧姆龙SCU模块通信参数设置 202.3.2 三菱C24通信模块通信参数设置 202.4 串口调试工具测试 242.5 协议宏程序编写 252.6 监视通信状态——Trace功能 301 三菱Q系列(xìliè)PLC通信协议1.1 MC协议(xiéyì)概述三菱的Q系列(xìliè)PLC采用(cǎiyòng)列MELSEC通讯(tōngxùn)协议,即MC协议。
所谓MC通讯协议就是对方设备通过Q系列C24或者Q系列E71来进行PLC CPU软元件数据和程序的读出/写入的Q系列PLC用的通讯方式的名称MC协议采用帧的形式进行通讯,它包括以下几种帧格式:串行通信模块C24模块:A兼容1C帧,包括1-4种格式QnA兼容2C帧,包括1-4种格式;QnA兼容3C帧,包括1-4种格式;QnA兼容4C帧,包括1-5种格式;说明:格式5,用于采用二进制代码的通信如果以格式1为基准来考虑采用ASCII代码的4种通信格式就有如下不同:格式2:各文件上附加了编号的格式;格式3:用STX ETX 包围各文件的格式;格式4:各文件上附加了CR LF 的格式;详情请参考QnA兼容3C帧格式1~格式3的说明以太网通信模块E71:A兼容1E帧;QnA兼容3E帧Q系列(xìliè)C24模块串行通信(tōng xìn)模块时可以使用QnA兼容(jiān rónɡ)2C/3C/4C帧和A兼容(jiān rónɡ)1C帧,Q系列(xìliè)E71模块可以使用QnA兼容3E帧和A兼容1E帧本工程主要介绍Q系列C24模块使用QnA兼容3C帧格式3通信的实例各种数据通信帧的功能如下:1、QnA兼容3C帧、QnA兼容4C帧、QnA兼容3E帧:① 主要用于从对方设备访问Q/QnACPU的全部软元件和全部文件为目的帧;② 也能够访问A系列PLC CPU 的软元件。
2、QnA兼容2C帧:① 可以访问安装有Q系列C24的站的QCPU上位站和连接有多分支的Q/QnACPU 站的软元件存储器;② 与QnA 兼容3E/3C/4C 帧相比拟文件形式简单;③ 因为传送数据变少在对方设备侧进行的传输文件处理变得容易能够缩短文件的传送时间3、A兼容1C帧A兼容1E帧:① 与使用A系列的计算机链接模块或Ethernet接口模块访问PLC时的文件构成相同;② 可以利用编制的A 系列PLC 用的对方设备侧数据通讯软件用相同的帧访问多分支连接和网络连接的Q/QnACPU 和Q/QnACPU以外的PLC CPUMC协议进行数据通讯时的数据通信帧的命名规那么如下:数据通讯帧名用于表示与原先生产的模块的命令兼容性的对象PLC CPU、对应的原先生产的模块的帧和对象模块xxx 兼容 n * 帧,例如:QnA兼容3C帧、QnA兼容3E帧① xxx 表示与原先生产的模块的命令兼容性的对象PLC CPUA:A系列PLC CPU;QnA:QnA系列PLC CPU② n 对应的原先生产的模块的帧:n=1,2,3,41:对应于A系列计算机链接模块和Ethernet接口模块所支持的命令通讯帧;2:对应于QnA 系列串行通讯模块所支持的QnA简易帧;3:对应于QnA系列串行通讯模块所支持的QnA帧,QnA系列Ethernet接口模块所支持的通讯帧;4:对应于QnA系列串行通讯模块所支持的QnA扩展帧。
③ * 代表用该相应帧能够进行数据通讯的本手册的对象模块C:Q系列C24;E:Q系列E711.2 QnA兼容3C帧通信格式三菱Q系列PLC与外部设备进行数据交换,且三菱Q系列PLC作为从站,例如与上位机、其他厂家PLC进行数据交换,一般使用QnA兼容3C帧进行通信1 对方设备从PLC读数据时1〕 A 局部(júbù)表示(biǎoshì)从对方(duìfāng)设备向PLC CPU传送(chuán sònɡ)2〕 B 局部(júbù)表示从PLC CPU向对方设备传送3〕 编制对方设备的程序时要使得各数据按从左向右的顺序传送〔例A 局部时使得数据按从ENQ向右的顺序发送〕2 从对方设备向PLC写入数据时1〕C 局部表示从对方设备向PLC CPU 传送2〕B 局部表示从PLC CPU 向对方设备传送3〕编制对方设备的程序时各数据按从左向右的顺序传送〔例C 局部时使数据按从ENQ 向右的顺序发送〕1.2.1 数据通信的根本格式注:格式1~格式4,用于采用ASCII代码的通信格式5,用于采用二进制代码的通信如果以格式1为基准来考虑采用ASCII代码的4种通信格式就有如下不同:格式2:各文件上附加了编号的格式;格式3:用STX ETX 包围各文件的格式;格式4:各文件上附加了CR LF 的格式;〔参考?Q系列MELSEC通信协议参考手册?3.1.4,P66~74〕下面对QnA兼容3C帧格式使用格式1、格式3通信协议进行说明,其他兼容帧格式请参考?Q系列MELSEC通信协议参考手册?。
1.2.2 QnA兼容(jiān rónɡ)3C帧格式(gé shi),用格式(gé shi)1进行(jìnxíng)通信(tōng xìn)时1、对方设备读出上位站PLC CPU 的数据时2、对方设备向上位站PLC CPU 写入数据时1.2.3 QnA兼容(jiān rónɡ)3C帧格式(gé shi),用格式(gé shi)2进行(jìnxíng)通信(tōng xìn)时1、对方设备读出上位站PLC CPU 的数据时2、对方设备(shèbèi)向上位站PLC CPU 写入数据(shùjù)时1.2.4 QnA兼容(jiān rónɡ)3C帧格式(gé shi),用格式(gé shi)3进行(jìnxíng)通信(tōng xìn)时1、对方设备读出上位站PLC CPU 的数据时注意(zhù yì):起始码STX并不在和校验的范围(fànwéi)2、对方(duìfāng)设备向上位站PLC CPU 写入数据(shùjù)时1.2.5 QnA兼容(jiān rónɡ)3C帧格式(gé shi),用格式(gé shi)4进行(jìnxíng)通信(tōng xìn)时1、对方设备读出上位站PLC CPU 的数据时2、对方设备(shèbèi)向上位站PLC CPU 写入数据(shùjù)时1.2.6 帧格式(gé shi)中各个工程(gōngchéng)的说明(shuōmíng)帧识别(shíbié)编号所谓帧识别(shíbié)编号是指用于识别收发信文件是QnA 兼容3C帧还是QnA兼容4C帧的编号。
数据通信时指定的帧识别编号如下表所示:站编号C24单元的站地址,指定对方设备访问哪一个Q系列C24,通过GX Developer设置的Q系列C24 的站编号范围:00H~1FH〔0~31〕,请注意通信数据格式:ASCII时,2个的ASCII字符〔2个字节〕;二进制时,1个字节的十六进制网络编号、PLC编号网络(wǎngluò)编号、PLC编号(biān hào)说明(shuōmíng):1、只有网络(wǎngluò)编号为00H时才能(cáinéng)指定PLC编号FFH;2、经由MELSECNET/H 远程I/O站安装着的Q系列C24/E71访问其他站时网络编号FEH被忽略网络编号被指定为FEH 时访问用MELSECNET/H 远程I/O站的PLC 编号指定的其他站;3、通信数据格式:ASCII时,2个的ASCII字符〔2个字节〕;二进制时,1个字节的十六进制上位站编号1、用ASCII 代码进行数据通信时使用“00〞进行发送;2、用二进制代码进行数据通信时使用1个字节数值00H进行发送命令〔子命令〕是指定从对方设备对访问对象PLC进行读出写入等哪种内容的访问的命令软元件(yuánjiàn)成批读写命令码其他(qítā)详细命令码可参考?Q系列(xìliè)MELSEC 通信(tōng xìn)协议(xiéyì)参考手册?-3.2 QnA 兼容3E/3C/4C帧用命令和功能一览表,P102~108和数校验代码1、和数校验代码是指表示把成为文件中的和数校验对象范围的数据作为二进制数据进行加法运算的结果和的最低位1个字节8位的数值的代码;2、用GX Developer 进行的传送规格设置中如果和数校验的有无设置为有那么就需要附加和数校验代码。
例:用QnA兼容3C帧格式1读出数据时和校验实例(shílì)出错(chū cuò)代码所谓出错代码是对方(duìfāng)设备用于识别PLC CPU 侧对于对方设备发出的请求(qǐngqiú)的处理是否异常结束的代码1.2.7 命令(mìng lìng)及响应字符局部说明1、用ASCII代码进行通信时的字符局部的数据读出时写入时2、二进制代码时的数据局部的数据读出时写入时 其中(qízhōng)“*〞局部(júbù)请参考(cānkǎo)3.2、3.3章节关于(guānyú)格式1及格式(gé shi)3帧格式说明3、字符各局部说明子命令子命令是用于指定读出/写入的单位指定的软元件种类和读出数据的条件等的数据a 用ASCII代码进行数据通信时,把0000H(0)或下述数值变换为4位数的ASCII代码十六进制数后使用从高位数0起发送b 用二进制代码进行数据通信时使用0000H 或下述2个字节的数值发送c 子命令的指定内容如下所示:d 以下(yǐxià)情况(qíngkuàng)下子命令变为0000H/0001H选择无监视条件(tiáojiàn)指定和无软元件存储器扩展指定时;使用不能选择监视条件指定和软元件(yuánjiàn)存储器扩展指定的命令时。
软元件(yuánjiàn)代码用于识别读出/写入数据的软元件存储器的数据可以访问的软元件一览表〔Q/QnACPU〕起始软元件软元件是用于指定(zhǐdìng)读出/写入数据的软元件存储器的编号数据在指定(zhǐdìng)连续软元件存储器时指定软元件范围的起始编号软元件(yuánjiàn)点数是在执行各命令时用于指定(zhǐdìng)进行读出/写入的点数的数据(shùjù)指定软元件点数的数据是表示向指定软元件存储器写入的数据内容或者从指定软元件存储器读出的数据内容的数据数据的排列因处理单位字/字节而不同位访问点数是用于指定以位为单位进行访问的点数的数据设置/复位是用于指定向位软元件写入数据的数据用以下数值指定2 欧姆龙协议(xiéyì)宏与三菱Q系列(xìliè)PLC协议宏通信(tōng xìn)实验2.1 实验(shíyàn)准备1、硬件(yìnɡ jiàn)设备欧姆龙PLC系统:电源PA205R、控制器CJ2M-CPU35、串行通信模块CJ1W-SCU41-V1、端板三菱PLC系统:电源Q61p、控制器Q06HCPU、串行通信模块QJ71C24N-R2、基板Q312B其他:USB电缆、网线等2、软件欧姆龙:PLC编程软件:CX-Programmer;协议宏编程软件:CX-Protocol三菱:PLC编程软件:GX-Developer其他:串口调试工具、SUM校验工具Check SUM3、参考资料SYSMAC CX-Protocol 1.9 版操作手册〔样本编号W344-CN5-12〕Q 系列MELSEC 通信协议参考手册〔型号MC-PROTOCOL-R-CH,SH(NA)-080414C-A〕Q系列串行通信模块用户手册〔SH(NA)-080238C-B(0611)STC〕2.2 通信电缆接线1、欧姆龙串行通信模块CJ1W-SCU21-V1端口2 RS232端口引脚定义:欧姆龙SCU模块RS232端口引脚定义2、三菱串行通信模块QJ71C24N-R2端口1 RS232引脚定义:三菱C24串行通信(tōng xìn)模块(mó kuài)RS232端口引脚定义(dìngyì)3、欧姆龙RS232端口与三菱Q系列(xìliè)C24串行通信(tōng xìn)模块RS232端口连接接线如下:欧姆龙SCU模块RS232与三菱C24模块RS232串口连接线4、为了方便测试发送的协议是否正确,在测试时先使用串口调试工具发送指定的协议命令,确保通信格式正确后再进行测试。
计算机RS232串口与三菱C24模块RS232串口连接接线如下:PC机与三菱C24串口连接线2.3 PLC通信(tōng xìn)参数设置2.3.1 欧姆龙SCU模块(mó kuài)通信参数设置欧姆龙SCU串口通信模块(mó kuài)通信可通过CX-Programmer或者(huòzhě)CX-Protocol软件进行设置,考虑使用协议(xiéyì)宏进行通信,本例在CX-Protocol软件进行设置设置窗口如下:欧姆龙SCU模块通信参数设置2.3.2 三菱C24通信模块通信参数设置三菱C24通信模块〔本例QJ71C24N-R2〕通信参数设置可通过GX-Developer软件进行设置:翻开GX-Developerà参数(cānshù)àPLC参数(cānshù)àI/O分配(fēnpèi),选择通信(tōng xìn)模块所在的插槽,点击“选择(xuǎnzé)设定〞,进入通信参数设定界面选择智能模块类型及型号设置通信格式、波特率、通信协议等参数三菱C24模块通信(tōng xìn)参数设置方式一通信(tōng xìn)设置(shèzhì)必须和主站设置保持一致通信参数也可以通过开关(kāiguān)设置进行,与通信参数设置窗口设置的内容其实是一一对应的。
通信开关设置〔包括通信(tōng xìn)格式、通信速率、通信协议选择及站号设定〕通信参数设置方式二通信开关(kāiguān)设置开关(kāiguān)1〔CH1〕及开关(kāiguān)3〔CH2〕对应通信(tōng xìn)格式及通信速率:通信格式b7~b0,通信(tōng xìn)速率b15~b8通信格式设定:b7~b0通信传输格式设置通信速率设定b15~b8波特率设置通信协议设置:开关2〔通道1〕,开关4〔通道2〕通信协议设置(shèzhì)完成以上(yǐshàng)设置后,将修改后的设置下载到PLC2.4 串口调试工具(gōngjù)测试通信(tōng xìn)电缆连接及通信参数设置完成后,使用(shǐyòng)串口调试工具进行通信数据帧的测试这里以读取三菱D100~D104共5个软元件值为例,使用QnA兼容3C帧格式,使用格式3〔参考三菱Q系列PLC通信协议说明局部〕发送命令:STX F9 00 00 FF 00 0401 0000 D* 00100 0005 EXT 37STX识别码站编号网络编号PLC编号上位机编号命令子命令软元件代码起始软元件长度ETX校验码软元件STXF90000FF0004010000D*0001000005ETX07其中07为识别码到ETX的和校验码〔注意不包括STX〕。
响应代码:STX F9 00 00 FF 00 QACK 1111 2222 3333 4444 5555 ETX 4ASTX识别码站编号网络编号PLC编号上位机编号结束代码D100D101D102D103D104ETX和校验STXF90000FF00QACK11112222333344445555ETX4A2.5 协议(xiéyì)宏程序编写1、新建协议(xiéyì),选择(xuǎnzé)CS/CJ模式(móshì),命名(mìng míng)为三菱Q系列MC格式32、为新建协议设置(shèzhì)目标单元,〔本例SCU单元(dānyuán)号为2〕3、编写(biānxiě)发送命令(mìng lìng)及接收(jiēshōu)命令根据三菱Q系列MC协议格式3的命令格式,编写数据帧以读取三菱Q系列PLC软元件D2100~D2119共20个通道,存放在欧姆龙D2100开始的20个通道为例添加发送命令,命名为READ_D发送命令:STX F9 00 00 FF 00 0401 0000 D* 002100 0014 ETX 和校验码在欧姆龙协议(xiéyì)宏编程时,一些(yīxiē)特殊的ASCII字符(zì fú)不能直接输入,如STX、ETX等,需要(xūyào)以CODE的形式进行定义(dìngyì),起始码、结束码可以CODE格式进行定义。
欧姆龙协议宏软件内置了LRC、CRC、SUM等十多种校验工具,用户可根据实际情况进行选择使用三菱Q系列(xìliè)PLC MC协议(xiéyì)和校验应选择SUM〔1 Byte〕ASCII类型,校验(xiào yàn)范围为第2次字节(zì jié)开始添加接收(jiēshōu)命令,命名为READ_D’接收命令:STX F9 00 00 FF 00 QACK 响应内容 ETX 校验码其中QACK是正常响应的结束代码响应内容这里以变量来表示,即定义接收内容的保存区需对变量类型、变量区域及接收长度进行定义由于(yóuyú)读取的三菱Q系列(xìliè)PLC内容(nèiróng),反应(fǎnyìng)回来时先接收后面通道的数据再接收前面(qián mian)通道的数据,例如读取D1~D5的值,反应回来的内容为D5 D4 D3 D2 D1,且接收的数据即是实际十六进制的数据,因此变量类型选择Variable HEX Reverse〔同样,执行写命令1401时,对于变量类型也应设置此项〕 设置变量区域,对变量的读写属性、变量数据区等参数进行设置读写类型是指CPU与SCU的关系来定义的,Read,CPUàSCU〔CPU的值写入到SCU〕;Write,SCUàCPU〔SCU的值写入到CPU〕。
设置接收长度,由于接收过来的数据是ASCII格式的,1个字符占用1个字节,1个通道的值用4个字符表示,接收长度为20*4=80字节4、新建序列,同时在序列中添加步,然后在步中添加发送命令及接收命令5、在CX-Programmer中调用(diàoyòng)协议(xiéyì)宏指令PMCR功能块,执行(zhíxíng)SCU通信(tōng xìn)单元(dānyuán)已注册的通信序列PMCR指令简要说明由协议宏指定(zhǐdìng)接收或发送数据区,那么(nà me)PMCR指令中的发送(fā sònɡ)字、接收字直接设定#0000通信(tōng xìn)端口0~7允许(yǔnxǔ)标志位:A202.00~A202.07SCU端口协议宏执行标志位Port1:(n+9).15Port2:(n+19).15n = 1500 + 25 x unit number2.6 监视通信状态——Trace功能完成以上设置及编程,下载完毕后,执行PMCR指令,通过CX-Protocol Trace功能监视通信状态Trace监视结果如下:内容总结(1)计算机RS232串口与三菱C24模块RS232串口连接接线如下:PC机与三菱C24串口连接线2.3 PLC通信参数设置2.3.1 欧姆龙SCU模块通信参数设置欧姆龙SCU串口通信模块通信可通过CX-Programmer或者CX-Protocol软件进行设置,考虑使用协议宏进行通信,本例在CX-Protocol软件进行设置(2)Write,SCUàCPU〔SCU的值写入到CPU〕 可修改 欢送下载 精品 Word。