Modbus TCP和Modbus RTU协议的区别
Modbus协(xie)议包括ASCII、RTU、TCP等(deng),并没有规(gui)定物理(li)层。此(ci)协议定义了控制器能够认识和(he)使用的(de)(de)消息结构,而不管它们是经(jing)过何(he)种网络进行通信的(de)(de)。标准(zhun)的(de)(de)Modicon控制器使用RS232C实现串行的Modbus。Modbus的(de)ASCII、RTU协议规定了消息、数据(ju)的结构、命令和就答的方式,数据(ju)通讯采用Maser/Slave方(fang)式,Master端发出数据请求消息,Slave端接收(shou)到正确消息后(hou)就可以发送数(shu)据(ju)到Master端以响(xiang)应(ying)请求;Master端(duan)也可以直接发消息修改Slave端的数据,实现双(shuang)向读写。
Modbus具(ju)有(you)以下几个特点:
(1)标准(zhun)、开放(fang),用户可以免费(fei)、放(fang)心(xin)地使(shi)用Modbus协议,不需要交纳许(xu)可(ke)证(zheng)费,也(ye)不会侵犯知识产权。目(mu)前,支持Modbus的厂(chang)家超过(guo)400家,支持Modbus的(de)产品(pin)超过600种(zhong)。
(2)Modbus可以(yi)支持(chi)多种(zhong)电气接口,如RS-232、RS-485等(deng),还可以在各(ge)种介质上传送,如双(shuang)绞线、光(guang)纤、无(wu)线等(deng)。
(3)Modbus的帧格式简(jian)单(dan)、紧凑,通俗易懂。用(yong)(yong)户使用(yong)(yong)容易,厂商开发简(jian)单(dan)。
Modbus rtu和(he)Modbus tcp两(liang)个协议的(de)本(ben)质都(dou)是MODBUS协(xie)议,都(dou)是靠MODBUS寄(ji)存器地址来交换数(shu)据(ju);但(dan)所用的硬(ying)件接口不一样(yang),Modbus RTU一(yi)般采用串口RS232C或RS485/422,而Modbus TCP一般采用(yong)以太网口。现在市(shi)场上有很多协议转换器,可以轻松(song)的(de)将这些不同(tong)的(de)协议相互转换。
实际(ji)上Modbus协议包括ASCII、RTU、TCP。
标准的Modicon控制(zhi)器使(shi)用RS232C实现(xian)串(chuan)行(xing)的Modbus。Modbus的(de)ASCII、RTU协议规定(ding)了消息、数据的结(jie)构、命令和就答的方式,数据通讯采用Maser/Slave方(fang)式。
Modbus协(xie)议需要对数据进行校(xiao)验(yan),串行协(xie)议中除(chu)有奇偶(ou)校(xiao)验(yan)外,ASCII模(mo)式(shi)采用LRC校验,RTU模(mo)式采用16位CRC校(xiao)验(yan)。
ModbusTCP模式没有(you)额外规定(ding)校验,因(yin)为(wei)TCP协(xie)议是一个面向连接的可(ke)靠协(xie)议。
TCP和RTU协议(yi)非(fei)常类(lei)似(si),只要把(ba)RTU协议(yi)的两个字节的校验码去(qu)掉,然后(hou)在RTU协议的开始加上5个0和一个(ge)6并通过TCP/IP网(wang)络协议(yi)发送出(chu)去即可。