M221做从站 Modbus通讯测试

合集下载

MODBUS协议调试总结

MODBUS协议调试总结

SmartPro系统与第三方设备采用MODBUS协议通讯调试总结首先在去现场之前必须从硬件和软件两个方面做好通讯调试准备,硬件方面:准备好RS485转RS232转换头,RS422转RS232转换头,因为很多第三方设备均为485口或者422口,而电脑串口为232口,必须经过转换。

软件方面装上串口测试工具软件,这方面的软件较多网上可以随便下载,我常用的是MODSCAN32(MODBUS主站模拟器),个人感觉比较方便与直观。

然后现场调试时,必须做好与第三方设备厂家的沟通工作,明确通讯参数。

必须明确以下内容:1、通讯协议:是MODBUS RTU 还是MODBUS ASCΠ2、传输波特率:是9600,19200还是其它。

3、数据位:一般为8位。

4、停止位:一般为1位。

5、奇偶校验:是奇校验,偶校验还是无校验。

6、设备地址:第三方设备的设备地址,就和我公司MACS里的MACSDEV10/11一样,不同的设备必须定义为不同的地址。

此地址由第三方设定。

7、各通讯点的寄存器地址。

根据MODBUS协议,有4种功能码,分别为:功能码1:对应寄存器地址为0XXXX功能码2:对应寄存器地址为1XXXX功能码3:对应寄存器地址为4XXXX功能码4:对应寄存器地址为3XXXX。

8、指定放大倍数定义量程。

一般情况下,MODBUS协议传送过来的信号均为码值,开关量为0---1,模拟量为0---32767等码值,因此为了能在DCS正常显示必须由第三方指定放大倍数,实际上就是定义量程。

可打印出如下格式的通讯参数表,调试组态前与第三方设备厂家沟通:同时需与第三方厂家沟通完成如下格式的通讯测点清单:明确以上内容后就右以着手进行具体的通讯调试,一般情况下第三方设备与我们的操作员站之间都有一定的距离,因此我们为了排除线路干扰等情况先应该用笔记本电脑在第三方设备地接上线进行调试。

以下以第三方设备通讯口为RS485,通讯协议为MODBUS RTU,通讯参数为:波特率9600,数据位8位,停止位1位,奇偶校验无,第三方设备地址为1为例:首先连好线。

ModBus

ModBus

ModBusModbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。

ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。

其系统结构既包括硬件、亦包括软件。

它可应用于各种数据采集和过程监控。

ModBus 网络只有一个主机,所有通信都由他发出。

网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。

采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。

基本信息•中文名:ModBus•英文名:Modbus protocol•定义:一个工业通信系统•发明时间:1979年•连接组成:带智能终端通过公用线路连接简介正在加载ModBus示意图为更好地普及和推动Modbus在基于以太网上的分布式应用,目前施耐德公司已将Modbus协议的所有权移交给IDA (Interface for Distributed Automation,分布式自动化接口)组织,并成立了Modbus-IDA组织,为Modbus今后的发展奠定了基础。

在中国,Modbus已经成为国家标准GB/T19582-2008。

据不完全统计:截止到2007年,Modbus的节点安装数量已经超过了1000万个。

Modbus协议是应用于电子控制器上的一种通用语言。

通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。

它已经成为一通用工业标准。

有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。

此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。

它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。

它制定了消息域格局和内容的公共格式。

当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。

MODBUS主站从站模拟器用法

MODBUS主站从站模拟器用法

MODBUS主站从站模拟器用法Modbus主站模拟器的使用1.1. 启动Modbus主站模拟器点击工具软件文件夹中的Modbus主站模拟器可执行文件“”,随之打开主界面。

1.2. 通讯基础设置点击菜单“Connection”,并点击“Connect”,在弹出的界面中配置通讯接口和通讯参数。

1.2.1.通讯接口选择串口当通讯接口是串口时需要确定现在具体使用的是PC机的哪个串口。

一般情况PC机集成配置的串口为COM1,通过USB接口扩展的为COM3或COM4(具体机器会有所不同)。

通讯参数的选择要与从站(PLC)中的设置一致,包括通讯速率、数据长度、奇偶校验和停止位。

其中的“rotocol Selection”选择默认的“RTU”模式。

LK PLC的COM1串口做以下设置:1.2.2.通讯接口选择网口当通讯接口是网口时,“IP Address”中应填写从站的IP地址。

(主机即PC的IP在PC的网络连接中设置)。

“Service”(端口)固定为“502”。

其中的“rotocol Selection”选择默认的“RTU”模式。

从站IPLK PLC的网口做以下设置(只需设置从站地址):1.3. 选择通讯寄存器1.3.1.填写从站地址在监视区的“Device Id”填写从站地址,需要与PLC中设置的一致。

如上例中应填写“1”。

1.3.2.选择寄存器类型在监视区的“MODBUS Point Type”中选择通讯的Modbus寄存器类型。

其中“01”为读写开关量类型(DO),可对PLC中Q区和M 区置位或复位操作。

“02”为读开关量类型(DI),可读取PLC中I区和M区位的状态。

“03”为读写WORD类型,可对PLC中Q区和M区进行字的赋值操作。

“04”为读WORD类型,读取PLC中I区和M区字的数值。

1.3.3.填写通讯数据的起始Modbus地址在监视区的“Address”中填写参与通讯的PLC变量地址(需要换算为Modbus地址)。

Modbus通讯协议的几种实现方式(LabVIEW) 副本

Modbus通讯协议的几种实现方式(LabVIEW) 副本

Modbus通讯协议的几种实现方式(LabVIEW)1. Modbus简介Modbus是Modicon公司(现在已经被施耐德收购成为了施耐德旗下品牌)为其PLC通讯而开发的一种通讯协议,从1979年问世至今,已经成为工业通讯领域的业界标准(De facto),最初的Modbus通讯协议仅支持串口,分为Modbus RTU和ACSII两种信号传输模式(一般基于RS485串口通信媒介),而随着时代进步,Modbus也与时俱进,新增了Modbus TCP版本,可以通过以太网进行通讯,此外,Modbus还有一个Modicon专用的Modbus Plus (Modbus +)版本。

和其他工业通信协议相比,Modbus主要的优点包括内容公开没有版权要求,不用支付额外费用、硬件要求简单容易部署、使用广泛便于系统集成。

Modbus采用半双工的通讯方式,由1个子站和多个从站组成,允许多个设备连接在同一个网络上进行通讯。

2. LabVIEW实现Modbus通讯的方式针对Modbus的串口和TCP两种不同的方式,在LabVIEW中通常可以通过以下几种方法实现Modbus通讯。

其中一些实现方式需要安装LabVIEW 数据记录与监控(DSC)模块.Modbus RTU/ASCII的实现方式通过VISA直接进行串口操作实现通过LabVIEW DSC模块中的Modbus模块实现通过LabVIEW DSC模块中的OPC模块实现Modbus TCP通过LabVIEW标准的TCP模块实现通过LabVIEW DSC模块中的Modbus模块实现通过LabVIEW DSC模块中的OPC模块实现以下就几种实现方式进行示例与说明。

3. LabVIEW通过VISA实现Modbus串口通信VISA(Virtual Instrument Software Architecture,虚拟仪器软件架构),是美国国家仪器公司(NI)推出的通用串行通讯软件,最初用于NI公司LabVIEW等软件与串行设备进行通讯,现在已成为工业通讯的标准之一。

MODBUS测试操作

MODBUS测试操作

1.将流量计的串口与PC连接,并上电。

2.将M96设置为2. Modbus-I,流量计地址为10,打开modscan软件,将下图Device ID
设置为10,假如需要读当前每小时的瞬时流量,将下图Address 设置为0005,Length:设置为2,命令选项为。

3.然后点击“Connection”,选择下拉菜单“Connect”
4.出现下图选项:请选择正确的COM口和与流量计相对应的波特率。

然后点击“OK”。

5.连接成功如下图所示。

(此处显示当前的瞬时流量为100m3/h)
答疑:
(客户)问:能不能兼容我们的MODBUS。

答:模式是否是RTU模式,校验码采用是否是CRC-16-IBM(多项式为X16+X15+X2+1,屏蔽字为0xA001)
问:为什么连接不上。

答:地址:是否与流量计地址设置,波特率:是否设置与流量计一致,通讯模式:M96号菜单设置是否为2. Modbus-I。

假如客户以上问题设置都对,还是不能使用。

可以将我们的测试软件Modscan32.exe及测试方法发给客户,让他们先行测试,再调试他们的软件。

MODBUS通讯调试指导说明

MODBUS通讯调试指导说明

MODBUS一.通过串口调试助手发报文控制通过CRC计算得00BD,RTU报文低位在前,应为BD00CMD 操作码及对应意义01 READ COIL STATUS 读线圈寄存器02 READ INPUT STATUS 读状态寄存器03 READ HOLDING REGISTER 读保持寄存器04 READ INPUT REGISTER 读输入寄存器05 WRITE SINGLE COIL 写单线圈寄存器06 WRITE SINGLE REGISTER 写单保持寄存器15 WRITE MULTIPLE COIL 写多线圈寄存器16 WRITE MULTIPLE REGISTER写多保持寄存器2.JOG使能报文JOG使能01 06 10 23 00 01 BD 00取消使能01 06 10 23 00 00 7C C0JOG正转01 06 10 24 00 01 0C C1停止01 06 10 24 00 00 CD 01JOG反转01 06 10 25 00 01 5D 01停止01 06 10 25 00 00 9C C1接点位置下JOG正转01 06 10 26 00 01 AD 01取消01 06 10 26 00 00 6C C1反转01 06 10 27 00 01 FC C1取消01 06 10 27 00 00 3D 013.内部多段速Pn005=0030接点速度01 06 00 05 00 30 99 DF写入Pn316-322数值以设置7段速度,通过P-CON,PCL,NCL的状态切换速度Pn316 01 06 01 3C 00 C8 49 AC 1速设置200rpmPn317 01 06 01 3D 01 90 18 06 2速设置400rpmPn318 01 06 01 3E 02 58 E9 60 3速设置600rpmPn319 01 06 01 3F 03 20 B9 12 4速设置800rpmPn320 01 06 01 40 03 E8 89 5C 5速设置1000rpmPn321 01 06 01 41 04 B0 DB 56 6速设置1200rpmPn322 01 06 01 42 05 DC 2A EB 7速设置1500rpm01 06 01 42 2D 64 34 99 322设置-100 验证7速通过P-CON PCL NCL切换Pn516=1100对POT NOT取反7段速度可以通过三个输入信号直接切换,也可进行总线使能Pn512/Pn513=1111选择总线使能伺服MODBUS总线使能通讯地址0900hS-ON 01 06 09 00 00 01 4B 96S-1 01 06 09 00 00 81 4A 36S-2 01 06 09 00 00 41 4A 66S-3 01 06 09 00 00 C1 4B C6S-4 01 06 09 00 00 03 CA 57S-5 01 06 09 00 00 83 CB F7S-6 01 06 09 00 00 43 CB A7S-7 01 06 09 00 00 C3 CA 074.位置控制(内部接点)Pn005=00C0 01 06 00 05 00 C0 90 9B 位置控制(接点指令)Pn600 Pn601 为JPO0(轴的位置0)Pn600×1000+Pn601为P0的位置通过写入Pn600 Pn601-Pn630 Pn631可以设置16段位置,Pn632-Pn647为16段位置的配置速度通过Pn682 =[0]增量编程[1]绝对值编程Pn600=100 Pn601=1372 JPO0=1001372Pn602=500 Pn603=1372 JPO1=5001372Pn600 01 06 02 58 00 64 08 4APn601 01 06 02 59 05 5C 5B 08Pn602 01 06 02 5A 01 F4 A8 76Pn603 01 06 02 5B 05 5C FA C8Pn632=100 JPO0速度=100rpm 01 06 02 78 00 64 09 80Pn633=250 JPO1速度=250rpm 01 06 02 79 00 FA D9 E8通过PCON换步方式,来一次PCON上升沿即换步。

工业互联网安全测试技术:Modbus扫描

工业互联网安全测试技术:Modbus扫描

Modbus扫描实验原理此实验主要内容是掌握Modbus工控协议的基础知识,Modbus仿真软件的使用,以及利用Nmap通过扫描Modbus协议获取设备的信息,利用wireshark抓取并分析modbus协议的流量。

实验目标(1) 掌握Modbus协议的基本知识(2) 学会modbus仿真软件的使用(3) 学会使用Nmap对modbus协议进行扫描(4) 学会使用wireshark抓取并分析流量实验环境1.实验时硬件环境:4核CPU、4G内存、150G硬盘2.实验环境:windows虚拟环境(主机)、Modbus仿真软件虚拟化3.需要能够支持系统连接网络的网络环境建议课时数4个课时实验步骤任务一Modbus仿真软件的使用Modbus协议是在1979 年由Modicon公司设计的,目前被广泛使用,已经成为了事实上的标准,是全球第一个可真正用于工业控制的现场总线协议,也是目前使用最为广泛的工业控制通信协议之一。

Modbus 是一种应用层消息协议,它基于请求/应答的方式实现互连设备间的高效通信,并提供功能码规定的服务,工作在OSI 模型中的应用层。

Modbus 协议的普及和应用过程中,发展成为了几个适应特定需求的衍生变种,包括Modbus TCP、Modbus Plus 、Modbus RTU 与Modbus ASCII。

由于工业控制网络大多采用以太网的方式进行通信,所以本系统主要实现对于Modbus TCP 类型通信数据包的分析和检测。

步骤1. 使用modbus采集仿真软件设备制作modbus协议流量(1)打开modbus仿真软件modsim32。

这个软件是一个模拟modbus协议的仿真软件。

(2)配置modbus仿真软件的寄存器地址、长度、设备地址、命令类型后开启仿真软件的连接设置,Address是指寄存器地址设置为0001即可,Length是指长度设置为1,MODBUS Point Type设置为01:COIL STATUS。

施耐德电气Modicon M221逻辑控制器用户指南说明书

施耐德电气Modicon M221逻辑控制器用户指南说明书

I O 0000000981.02Modicon M221Logic Controller用户指南11/2020目录1Modicon M221 Logic Controller第I部分编程指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2Modicon M221 Logic Controller第II部分高级功能库指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3Modicon M221 Logic Controller第III部分硬件指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4Modicon TMH2GDB - 远程图形终端第IV部分用户指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5Modicon TMC2 - 扩展板第V部分编程指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6Modicon TMC2 - 扩展板第VI部分硬件指南. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .I O 0000003302.01Modicon M221Logic Controller编程指南02/2020本文档中提供的信息包含有关此处所涉及产品之性能的一般说明和/或技术特性。

ModBUS测试搭建说明

ModBUS测试搭建说明

ModBUS测试搭建说明:对于使用ModBus接口的项目,需要注意1、玻破输入点的命名必须使用“BP-”开头,例如:BP-22101-1车控室2、控制箱防拆输入点的命名必须使用“FC-”开头,例如:FC-221013、第三方平台对门禁的回控必须使用输出点,需要调试时在相应的输出点上作了组动作链接,一般有几个NC回路借用任意RC的输出点,输出点命名必须以“消防联动-”开头,例如:消防联动-22N01环境:布置:1、在运行门禁系统服务器程序的电脑上布置ModBus服务端;要求:数据库要有管理工具;如企业管理器、查询分析器;操作系统版本必须32位;2、在任意电脑上(也可于服务器上)ModBus客户端;操作系统版本必须32位,能访问服务器的SQL server,可以通过“Telnet 服务器IP地址1433”测试;3、第三方平台系统使用ModBus协议访问本系统的ModBus客户端,即,第三方平台访问的IP地址为ModBus客户端安装的机器的IP地址;4、布置顺序:服务端:————————,按顺序安装环境包;——(打开)——依次执行——忽略中途的报警,多次执行确认完成;将——下的两个文件拷至AxiomV系统程序Bin目录下,例如“D:\Program Files\RBH\AxiomV\Bin”修改System.ini文件:[DataSetup]ServerName=(local) ‘服务器名称DataBaseName=AxiomData ’数据库名称AxiomData=AxiomData ‘数据库名称AxiomLog=AxiomLog ’数据库名称SQLUserID=sa ‘数据库用户名SQLUserPassWord=password ‘数据库用户名口令AxiomUserName=rbhAxiomPassword=passwordAxiomBinPath=d:\Program Files\RBH\AxiomV\Bin运行至此,服务端搭建完毕ModBus客户端————————,按顺序安装环境包(若同在服务器端,则此布可略);修改——的INI文件,[Axiom]AxiomServerName=127.0.0.1 ’服务器IP地址或名字,注意不能写成“(local)”SqlUserName=sa ‘数据库用户名SqlPassword=password ‘数据库用户名口令AxiomUserName=rbhAxiomPassword=passwordAxiomFilePath=C:\Program Files\RBH\AxiomV\BinNetworkID=ALL ‘ModBus点位工作的车站网络号,如测试时只需要一个车站的信息,那么只配一个ID号即可。

H2U的modbus通讯标准测试流程

H2U的modbus通讯标准测试流程
-2-
半/全双工模式 由D8120的Bit10设 定* 半双工 半双工 半双工 半双工 半双工 半双工 半双工 半双工
通信格式 由D8120决定 固定 固定 固定 固定 固定 由D8120决定
COM1协议 RS指令 MODBUS RTU 指令 MODBUS-ASC 指令
D8126设定 10h 20h 30h
X1
〔RS
RS按MODBUS 指令模式进行通讯发 送和接收处理
D0
D1
D2
D10〕
R XD buf RegLen
H
Addr
L
Cmd
RegAddr
S1 为从机地址(高字节) 、通讯命令(低字节,按 MODBUS 协议定义) ; S2 为访问从站的寄存器起始地址号; n
欲读或写的数据长度; 决定。
D 为读或写数据的存放单元起始地址,占用后续地址单元,长度由 n
寄存器: 16 位或 32 位变量, 指 在本 PLC 中, 位变量包含 D, C0~199; 位变量为 C200~255。 16 T, 32 变量名称 D0~D8255 T0~T255 C0~C199 C200~C255 起始地址 0(0) 0xF000 (61440) 0xF400 (62464) 0xF700 (63232) 寄存器数量 8256 256 200 56 32 位寄存器 说明
半/全双工模式 由D8120的Bit10设 定* 半双工 半双工
通信格式
D8126=20H(RTU 模式),若 ACS 则设定为 30H,此处以 Modbus RTU 为例: D8120 设定通讯格式:数据位,停止位,校验,波特率; 如设定:波特率:9600;停止位:2 位;无校验;8 位数据位;则 D8120=10001001 B=89 H; 项目 数据位 设定位 Bit0 定义 0b-7Bits 1b-8Bits 00b-无校验(N) 校验位 Bit2~Bit1 01b-奇校验(O) 11b-偶校验(E) 0-1Bits 1-2Bits 0011b-300bps 0100b-600bps 0101b-1200bps 0110b-2400bps 波特率 Bit7~Bit4 0111b-4800bps 1000b-9600bps 1001b-19200bps 1010b-38400bps 1011b-57600bps 1100b-115200bps 0b-无 1b-(D8124) 0b-无 1b-(D8125) 0b-全双工 1b-半双工 RS指令适用 COM0端口说明 COM1端口说明 D8110 D8120 MODBUS-RTU从站协议及指令只支 持8位数据位,否则将造成通信出错

Modbus通讯参数的一种自动检测方法

Modbus通讯参数的一种自动检测方法
卢文俊, 冷杉, 杨建军 ^ 基于 3ABMD; 协议的控制器远程监控系统 ^ 电 [收稿日期: !""#^!^$a ]
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
(上接第 !! 页)
译过程如下图所示。
能 其 &’( 中 断 , 然 后 )*’ 只 需 置 位 寄 存 器 &’(+,!- .)*’(/01 即可触发 )*’ 子系统的 &’( 中断。 &23 子系统通 过 以 下 步 骤 使能 &23 子系统的 &’( 中断: ! 置位 +’*2,%- .(1开中断; "为 &’( 中 断 设 置 中 断 级 别 寄 存 器 .(425(265$71; # 清 除 (05289 ,$7.&’(1 以 清 除 所 有 的 未 处 理 的 &’( 中 断 ; $ 清 除 3&*:5(05289,$7- .&’(1 使 能 &’( 中 断 。 )*’ 触 发 &23 的 &’( 中断:
4I HQ4& SJS67?LH OJKO%KJH6& HQ6 $J%#N J &6H "R S"&&4$K6 O"55%I4OJH4"I SJV O%776IH !"#$%&?FH KJ&H 5"I4H"7& JI# J%H"NO"IR4P%7JH4"I
介绍了 !"#$%& 通讯参数自动检测的一种方法。它先通过信号捕获的方法直接测量出一位数据的宽度,计算出波特 率; 然后分别对几种可能出现的通信 参 数 逐 一 进 行 设 置 和 测 试 , 直到与总线通信完全匹配为止; 最后通过监视和分析总线 上足够数量的数据帧来完成通信地址自动配置。该方法简单有效, 无须主机提供特殊字符, 不干扰正常通讯。 信号捕获, 通讯参数自动检测, 地址自动配置 关键词: !"#$%& , 在一个 !"#$%& 网中添加仪表, 需要了解并正确配置这些通 讯参数。 如果仪表中安装的 !"#$%& 通讯软件能自动识别网络中 的波特率、 通讯模式和字节帧, 并找出网络中空余通信地址, 实现 自动设置, 将给实际使用带来便利。具有 !"#$%& 通讯参数自动 检测功能的通讯软件由自动识别模块和正常通讯模块组成。在自 动识别时, 只接收网络中数据而不发送任何信息。识别模块首先 测量出波特率, 然后根据可能出现的 ’ 种情况, 用试差法确定通 信参数, 设置其中一组参数, 进入接收测试, 通过单片机串口模块 的错误自动检测标志位来检验当前设置是否正确,如果完全匹 配, 则进入地址自动配置部分, 找出空余地址并置地址后, 完成 即可进入正常通讯模块。 !"#$%& 通讯参数的设置, ! 波特率的自动检测方法 如图 ( 所示, 用信号捕获的方法测量波特率, 需增加使用一 个捕获通道,即把接收引脚 )* 引入 !+,-./0(-1 的一个捕获 输入引脚 23* 。 宽的概率为 /?A (可以是低电平或高电平) , 如果多次取样这些相 邻跳变的时间差,获得一个以上仅仅包含一个位宽的时间差的 几率将增加。 本文采用连续采样 (@ 个捕获时间, 得到 (( 个时间 差, 其中包含有一个位宽的时间差的概率为 11?1A(B 。 考虑到实际的波特率变化范围较大,以及字节帧之间的空 闲阶段的存在, 相邻 @ 个跳变之间的时间差变化范围较大, 会超 过 24567:3 计 时 周 期 C<?@ 毫 秒 D 而 产 生 误 差 , 因 此 把 (’ 位 宽 的 定 时 器 扩 展 成 .@ 位 C 计 时 周 期 为 A.8 秒 D, 其 中 低 (’ 位

艾而特--ModbusTcp通讯测试

艾而特--ModbusTcp通讯测试

艾⽽特--ModbusTcp通讯测试⼀,连接控制器,读取数据1,查看艾尔特控制器⽹络设置,设置电脑IP。

设置完成后,点ModbusPoll的“OK”,会⾃动连接2,查看连接状态3,根据“艾⽽特的⼿册”,参照5.6参数表,根据需求设置读取的地址和长度4,拧紧结束后,就能读取实时控制器的值了。

⼆,写⼊数据(选择任务,参数)我们先看说明,感觉说明描述跟实际测试有点区别:测试开始:1,⽤Modbus Poll测试【1】选择任务【2】选择参数:【3】以上发送完,就选择了任务2,参数2.2,⽤USR-TCP232-Test测试软件调试记录:测试1,选择参数步骤:当前:任务3,参数1【1】发送选择参数2:00 00 00 00 00 06 01 06 00 31 00 02切换到了:任务3,参数2测试2,选择任务步骤(需要发送2次指令):【1】发送选择任务2:00 00 00 00 00 06 01 06 00 30 00 02还是:任务3,参数2【2】发送选择参数1:00 00 00 00 00 06 01 06 00 31 00 01切换到了:任务2,参数1备注:如果只是选择1个任务,是没有反应的。

要先选择任务再选择参数。

测试3,忘记重启了⼏次之后,只⽤发送⼀次选择任务的指令就可以选择任务步骤(只⽤发送⼀次指令):【1】发送选择任务00 00 00 00 00 06 01 06 00 30 00 04切换到了:任务400 00 00 00 00 06 01 06 00 30 00 03切换到了:任务300 00 00 00 00 06 01 06 00 30 00 02切换到了:任务2备注:选择了任务或参数后,控制器上没有显⽰变化的,实际启动⼯具后是有反应的。

modbustcp测试方法

modbustcp测试方法

modbustcp测试方法嘿,朋友们!今天咱就来聊聊 ModbusTCP 测试方法。

这可真是个有意思的事儿呢!你想想,ModbusTCP 就像是一个信息的大通道,数据在里面跑来跑去。

那怎么知道这个通道是不是顺畅无阻呀?这就得靠测试啦!首先呢,你得有个合适的测试工具。

这就好比战士上战场得有把趁手的兵器一样。

找到那个能帮你探测通道情况的好帮手,才能更好地展开工作呀。

然后呢,设置好各种参数。

就像给这个通道设定规则,让它知道该怎么走,该怎么传递信息。

这可不是随随便便就能搞定的,得仔细着点儿呢。

接下来,就可以开始发送数据啦!就好像给这个通道投递信件一样,看看能不能准确无误地到达目的地。

这时候可得瞪大眼睛瞧好了,稍有差错都不行啊。

在测试的过程中,你得像个侦探一样,仔细观察每一个细节。

有没有数据丢失呀?传输速度够不够快呀?要是出了问题,那可得赶紧找原因。

这就好像医生看病似的,得找到病根儿才能治好病呀。

你说要是数据传输得慢吞吞的,那不就像蜗牛在爬一样,急死人啦!要是数据还丢三落四的,那可就乱套了呀。

所以这测试可太重要啦,一点儿都不能马虎。

有时候啊,测试可能会遇到一些小麻烦,就像路上遇到了小石子一样。

别着急,别慌张,慢慢去解决。

说不定解决了一个小麻烦,还能让你学到不少新东西呢!哎呀,这 ModbusTCP 测试方法真的是很有讲究的呢。

只有认真去对待,才能让这个信息通道畅通无阻,为我们的工作和生活带来便利呀。

总之呢,要做好 ModbusTCP 测试,就得有耐心、细心和决心。

别嫌麻烦,别嫌累,等你看到测试成功的那一刻,就会觉得一切都值啦!加油吧,朋友们,让我们一起把这个信息通道打造得更加完美!。

ModBus通信详解,可收藏!

ModBus通信详解,可收藏!

ModBus通信详解,可收藏!导语:ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。

其系统结构既包括硬件、亦包括软件。

它可应用于各种数据采集和过程监控。

ModBus网络只有一个主机,所有通信都由他发出。

网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。

采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。

了解Modbus通讯协议是怎么回事,在现场就可以用各种第三方的小软件做通讯测试了。

Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。

此协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。

标准的Modicon控制器使用RS232C实现串行的Modbus。

Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和就答的方式,数据通讯采用Maser/Slave方式,Master端发出数据请求消息,Slave端接收到正确消息后就可以发送数据到Master 端以响应请求;Master端也可以直接发消息修改Slave端的数据,实现双向读写。

Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。

另外,Modbus采用主从方式定时收发数据,在实际使用中如果某Slave 站点断开后(如故障或关机),Master端可以诊断出来,而当故障修复后,网络又可自动接通。

因此,Modbus协议的可靠性较好。

对于Modbus的ASCII、RTU和TCP协议来说,其中TCP和RTU 协议非常类似,我们只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可。

1通讯传送方式:通讯传送分为独立的信息头,和发送的编码数据。

modbus测试步骤

modbus测试步骤

MODBUS 测试结构图WINXP 主机运行的是MASTER,配置如下,起一个连接。

要起多个连接要分别打开。

注意有时候连接失败要把进程disconnect,然后refresh建立两个连接如下:要和客户端保持一制。

Address是0100 就是从40100开始;Device id 是要不同的。

ModScan1 是要在(11-20)有效,ModScan2是要在(0-10)有效。

如果两个都在其中的(0-10)或(11-20)只有一个会正常。

这是由于TS的两个端口取不同的地址结果。

如果TS不分地址默认的是(0-255),就会只有一个能通讯。

客户端WINXP 用COM1和TS port1连接。

Deviced id 范围(0-10)客户端WIN98用com1和ts的PORT2连接。

Deviced ID取值范围是(11-20)TS 配置,从浏览器就可以配置。

先把设备恢复出厂值,然后用IA向导配置。

串口设置从设备,每个串口选择不同的地址段。

把网络设置为主。

假如选择地址为0-11,11-20。

那么11这个地址只在前面0-11起作用。

# PortServer TS 2 Version 82000747_R1 10/13/2005set config dhcp=offset config myname="" domain=""set config ip=10.20.100.197 submask=255.255.255.0set config gateway=10.20.100.1set config realport=771 securerealport=1027 sockets=2000 redirect=ignore tbreak=std set config optimize=throughputset keys prevcmd=^P nextcmd=^N forwchar=^F backchar=^Bset config boothost=0.0.0.0 bootfile="" tftpboot=noset config pmtelnet=offset config rpkeepalives=onset ethernet speed=auto duplex=halfset config rarp=onset config ping-arp=onset ping_watchdog state=off dest_ip=0.0.0.0 interval_secs=600 missed=6 action=reboot set web timeout=300set profile range=1 profile=iaset profile range=2 profile=iaset line range=1 parity=N csize=8 error=ignoreset line range=1 baud=9600 stopb=1 break=ignore inpck=off istrip=off onlcr=off otab=off set flow range=1 ixon=off aixon=off ixoff=off ixany=off itoss=off altpin=off forcedcd=offset flow range=1 dtr=off cts=off dcd=off dsr=off ri=offset flow range=1 rts=off pre-delay=0 post-delay=0set keys range=1 xon=^Q xoff=^S xona=^Q xoffa=^S lnext=^Vset line range=2 parity=N csize=8 error=ignoreset line range=2 baud=9600 stopb=1 break=ignore inpck=off istrip=off onlcr=off otab=off set flow range=2 ixon=off aixon=off ixoff=off ixany=off itoss=off altpin=off forcedcd=offset flow range=2 dtr=off cts=off dcd=off dsr=off ri=offset flow range=2 rts=off pre-delay=0 post-delay=0set keys range=2 xon=^Q xoff=^S xona=^Q xoffa=^S lnext=^Vset snmp run=on auth_trap=off login_trap=offset snmp cold_start_trap=off link_up_trap=offset snmp curr_thresh_exc_trap=off temp_thresh_exc_trap=offset snmp location="" name="" contact=""set device name="gendialer" baud=no dialer=genmdm chat=noset buffers range=1 size=32 state=offset buffers range=2 size=32 state=offset port range=1 dev=ia sess=4 termtype="vt100" edelay=1 auto=off bin=offset port range=1 uid=none group=none dport=noneset port range=1 dest=noneset port range=1 scriptname=noneset port range=1 keepalive=off flushstchar=default autoservice=defaultset port range=1 idletime=0set port range=2 dev=ia sess=4 termtype="vt100" edelay=1 auto=off bin=offset port range=2 uid=none group=none dport=noneset port range=2 dest=noneset port range=2 scriptname=noneset port range=2 keepalive=off flushstchar=default autoservice=defaultset port range=2 idletime=0set socketid range=1 state=off string="SOCKETID"set socketid range=2 state=off string="SOCKETID"set ia table=1 name=table1set ia table=1 addroute=1 active=on protocol=modbusrtuset ia table=1 route=1 protaddr=0-10 type=serial port=1set ia table=1 addroute=2 active=on protocol=modbusrtuset ia table=1 route=2 protaddr=11-20 type=serial port=2set ia master=1 active=on protocol=modbustcp transport=tcp ipport=502 table=1 set ia master=1 chartimeout=50ms messagetimeout=2500ms idletimeout=0msset ia master=1 permit=all priority=mediumset ia master=1 errorresponse=on broadcast=replace fixedaddress=autoset ia master=1 exttimeout=disabledset ia serial=1 protocol=modbusrtu type=slave table=1set ia serial=1 messagetimeout=2500ms slavetimeout=1sec chartimeout=20msset ia serial=1 lineturndelay=0msset ia serial=1 errorresponse=off broadcast=replace fixedaddress=autoset ia serial=1 exttimeout=disabledset ia serial=2 protocol=modbusrtu type=slave table=1set ia serial=2 messagetimeout=2500ms slavetimeout=1sec chartimeout=20msset ia serial=2 lineturndelay=0msset ia serial=2 errorresponse=off broadcast=replace fixedaddress=autoset ia serial=2 exttimeout=disabledset udpserial range=1 rmax=1024 rtime=100 closetime=0 overflow=forward strip=off set udpserial range=1 delimiters=""set udpserial range=2 rmax=1024 rtime=100 closetime=0 overflow=forward strip=off set udpserial range=2 delimiters=""set secureaccess ssh=onset secureaccess ssh-keyauth=onset secureaccess ssh-pwdauth=onset secureaccess telnet=onset secureaccess http=onset secureaccess rlogin=onset secureaccess rsh=onset secureaccess realport=onset secureaccess reversetcp=onset secureaccess reversetelnet=onset secureaccess snmp=onset secureaccess securerealport=onset secureaccess securesockets=onset secureaccess https=onset secureaccess lpd=onset secureaccess reversessh=onset logport ra=1 state=offset logport ra=1 mode=syslogset logport ra=1 udpport=514set logport ra=1 rmax=1024set logport ra=1 rtime=100set logport ra=1 pri=134set logport ra=1 strip=offset logport ra=1 delim=""set logport ra=2 state=offset logport ra=2 mode=syslogset logport ra=2 udpport=514set logport ra=2 rmax=1024set logport ra=2 rtime=100set logport ra=2 pri=134set logport ra=2 strip=offset logport ra=2 delim=""set consmenu ra=1 state=offset consmenu ra=1 break=standardset consmenu ra=2 state=offset consmenu ra=2 break=standardset sharing range=1 clients=1 control=shared timeout=0 wrpolicy=all set sharing range=2 clients=1 control=shared timeout=0 wrpolicy=all。

modbus实验心得

modbus实验心得

modbus实验心得modbus是一种常见的通信协议,广泛应用于工业自动化领域。

在进行modbus实验后,我对这个协议有了更深入的了解和体会。

modbus具有简单、易操作的特点。

通过modbus协议,设备之间可以进行快速、可靠的数据通信。

在实验中,我使用了modbus协议进行了数据传输的测试。

通过编写简单的代码,我成功地实现了设备间的通信,并且能够准确地读取和写入数据。

这表明modbus 协议具有良好的可用性和易用性,适用于各种工业设备之间的通信。

modbus具有高效的数据传输能力。

在实验中,我测试了modbus 协议在不同环境下的通信速度。

结果显示,modbus协议在传输大量数据时仍能保持较高的传输速度,保证了数据的及时性和准确性。

这对于工业自动化系统来说非常重要,可以提高生产效率和降低成本。

modbus协议还具有良好的兼容性。

在实验中,我测试了不同厂家生产的设备之间使用modbus协议进行通信的情况。

结果显示,这些设备能够正常地进行数据传输,说明modbus协议具有良好的兼容性,可以与不同厂家的设备进行互联互通。

这为工业自动化系统的搭建提供了更大的灵活性和选择性。

modbus协议还具有较好的安全性。

在实验中,我测试了modbus 协议在数据传输过程中的安全性。

通过加密算法和数据验证,modbus协议能够有效地防止数据被非法篡改和窃取。

这对于工业自动化系统来说非常重要,可以保护敏感数据的安全性和机密性。

总结起来,通过这次modbus实验,我对这个通信协议有了更深入的了解和认识。

modbus具有简单、易操作、高效的数据传输能力、良好的兼容性和较好的安全性等特点。

在工业自动化领域,modbus协议发挥着重要的作用,为设备之间的通信提供了一种可靠、高效的解决方案。

我相信,在未来的工业自动化发展中,modbus协议将发挥越来越重要的作用,为工业自动化系统的建设和应用提供更多可能性。

MODBUS通讯详细说明

MODBUS通讯详细说明

MODBUS通讯教程本篇主要讲解如何使用SKWorkshop(一下简称SK)实现MODBUS通讯。

首先介绍一下SK支持的MODBUS类型,在通讯口属性中连接服务选择modbus,如图1-1:图1-1Modbus RTU Master: 触摸屏做modbus主站,设备做从站(即常规modbus);Modbus RTU Slave: 触摸屏做modbus从站,设备做modbus主站;Modbus ASCII Master: 触摸屏做modbus主站,设备做从站(ASCII通讯);Modbus ASCII Slave: 触摸屏做modbus从站,设备做主站(ASCII通讯);Modbus RTU Special: 触摸屏做modbus主站,设备做从站(写数据使用的功能码是0x10,不管写入数据长短);Modbus ASCII Special: 触摸屏做modbus主站,设备做从站(写数据使用的功能码是0x10,不管写入数据长短,ASCII通讯);Modbus Master TCP/IP: 触摸屏做modbus主站,设备做从站(TCP/IP通讯);Modbus Slave TCP/IP: 触摸屏做modbus从站,设备做主站(TCP/IP通讯)。

选择“参数”选项如图1-2图1-2通讯参数:设置串口参数(波特率、数据位、校验、停止位);触摸屏站号:做从站时设置触摸屏地址(主站时没有用);PLC站号:设置下位设备的地址;地址模式:标准模式(一主一从模式),扩展模式(一主多从模式);PLC连续地址间隔:一次最多读取的连续地址个数(在与单片机设备或者变频器设备通讯时需要注意,如果设备的寄存器地址不是连续的或者寄存器地址不是32的整数倍,比如开发的单片机地址只有20个时,此处可以改成1)。

可操作寄存器及其地址范围寄存器名称 地址格式 输入范围 备注 支持功能码 0x ddddd 0~65535 位:输出线圈 01、051x ddddd 0~65536 位:输入线圈,只读 023x_Bit ddddd.DD 0.00~65535.15 位:16位输入寄存器的位,只读 044x_Bit ddddd.DD 0.00~65535.15 位:16位输出寄存器的位 03、06、103x ddddd 0~65535 字:16位输入寄存器,只读 034x ddddd 0~65535 字:16位输出寄存器 03、06、103x_D ddddd 0~65535 双字:输入寄存器,与3x双字高03、06、10低16位颠倒,只读4x_D ddddd 0~65535 双字:输出寄存器,与4x双字高03、06、10低16位颠倒MODBUS通讯样例:1、触摸屏做主站与多个MODBUS设备同时通讯:新建工程,命名为:MODBUS一主多从样例,设备服务选择MODBUS Modbus RTU Master,参数选项地址模式改为扩展模式,其他参数采用默认。

MODBUS从站通讯应用

MODBUS从站通讯应用

MODBUS从站通讯应用PLe程序中,将上述几个寄存器配置完毕,当相应通讯口有MODBUS主站发送给本机地址的通讯帧时,PLC系统程序即会根据通讯要求,自动组织MODBUS通讯帧进行应答,无需用户程序的参与。

MODBUS从站支持的操作TH系歹IJPIe作为MODBUS从站时,支持MoDBUS的0某。

1,。

某03,0某05,0某06,0某Of,。

某10等通讯操作命令;通过这些命令,可读写PLC的线圈有M,S,T,C,某(只读),Y等变量;寄存器变量有D,T,CoMODBUS通讯主机在访问(读取或改写)PLC从机的内部变量时,必须遵循如下的通讯命令帧定义,以及变量地址索引方法,才能进行正常的通讯操作。

1.1命令码0某Ol(Ol):读线圈请求帧格式:从机地址+0某01+线圈起始地址+线圈数量+CRC检验序号12345数据(字节)意义从机地址。

某Ol(命令码)线圈起始地址线圈数量CRC校验字节数量1个字节1个字节2个字节2个字节2个字节说明取值1~247,由D8121设定读线圈高位在前,低位在后,见线圈编址高位在前,低位在后(N)高位在前,低位在后响应帧格式:从机地址+0某01+字节数+线圈状态+CRC检验序号数据(字节)意义字节数量12345从机地址1个字节说明取值1~247,由D8121设定读线圈值:[(N+7)∕8]0某Ol(命令码)1个字节字节数线圈状态CRC校验1个字节每8个线圈合为一个字节,最后一个若不足8位,[(N+7)∕8]未定义部分填0。

前8个线圈在第一个字节,最地个字节址最小的线圈在最低位。

为OFF,256为0N.2个字节高位在前,低位在后错误响应:见错误响应帧1.2命令码0某03(03):读寄存器请求帧格式:从机地址+0某03+寄存器起始地址+寄存器数量+CRC检验序号12345数据(字节)意义字节数量从机地址1个字节0某03(命令码)1个字节寄存器起始地址2个字节寄存器数量2个字节CRC校验2个字节说明取值1~247,由D8121设定读寄存器高位在前,低位在后,见寄存器编址高位在前,低位在后(N)高位在前,低位在后响应帧格式:从机地址+0某03+字节数+寄存器值+CRC检验序号12345数据(字节)意义从机地址。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档